Forum Discussion
Cyclone3 Power Up level doesn't work
A design with an EP3C40F324I7 has the pin U18 as an registered output.
This pin is used to control another dcdc's nSHDN (Shutdown negativ logic) The fpga is configured via epcs. this dcdc is under control of a custom ip and is only powered up when needed as this is a battery powered design. During power up, as soon as the voltages are stable the pin goes to high and the dcdc starts. the fpga gets its configuration from the epcs. when the configuration is done the pin goes to low as this is the default level of this pin. i want that this pin is low after power up until the custom ip sets it to high to enable the dcdc. this is done as soon as the fpga is in user mode but not during configuration. The pin U18 is a Column IO and the PLL4_CLKOUTp. Quartus has an option Power Up Level and it is used as set_location_assignment PIN_U18 -to 3VEnable set_instance_assignment -name POWER_UP_LEVEL LOW -to 3VEnable But this does not help. Quartus reports Warning: Pin "3VEnable" has no register for Power-Up Level option but this is my verilog code sniped reg Enable_3V; always @ ( posedge gls_clk or negedge gls_reset_n ) if ( !gls_reset_n ) Enable_3V <= 1'b0; the register Enable_3V goes to top level and there it is connected to output pin 3VEnable if i am not wrong, then this is a register but why does quartus think it is not a register ? But more important how can i force my pin to low during power up. please notice that there is a pull down on that pin. it is a resistor devider 100k + 560k with a 47nF cap in parallel to the 560k. this will give ~2,5v maximum and a smooth softstart to reduce the startup durrent. any ideas ? thanks in advance. Michael EDIT : it is Pin U1815 Replies
- Altera_Forum
Honored Contributor
The Design now works as expected.
Thanks for all comments. - Altera_Forum
Honored Contributor
@ gambit
in my first posting i mentioned "the register Enable_3V goes to top level and there it is connected to output pin 3VEnable" @ jake no matter if low or high, you gave me a realy good hint and i must find some time to read those manuals again. unfortunately it seems that there won't be a working solution with parts available in 0402, the startup current is too high so i must decide between no running dcdc between startupwith a too high power up current in normal operating or a short dcdc start but a smal current ramp .... - Altera_Forum
Honored Contributor
I just wonder is 3VEnable and Enable_3V connected? You have the pin as 3VEnable, but the reg as Enable_3V. In this regard, the synthesis tool does not know you have a register at the output pin.
- Altera_Forum
Honored Contributor
I appologize. I initially misunderstood and thought you were trying to power-up high. Not low.
Jake --- Quote Start --- @Daixiwen @ Jake i tried different ways //verilog 1995 reg Enable_3V /* synthesis altera_attribute = "-name POWER_UP_LEVEL LOW" */; // Verilog 2001 (* altera_attribute = "-name POWER_UP_LEVEL LOW" *) reg Enable_3V; as well as reg Enable_3V = 1'b0; but none of them works. between power on and until the fpga starts to work in user mode the pin is 1 as soon as the user mode is reached, this pin goes to 0 so it seems that it is realy impossible ... i can't go to 2k pull down as this will disable the soft start function of the dcdc --- Quote End --- - Altera_Forum
Honored Contributor
You can expect about 100 ohm output resistance at LVTTL3.3V 4 mA respectively 50 ohm at 8 mA. Additionally, the 4 mA setting causes current limit at about 18 mA.
- Altera_Forum
Honored Contributor
yes thats true FvM, thats what i had done now.
i looked into the datasheets again and with the following conditions that must be met Vio FPGA 3,0V Voff nSHDN < 0,4V Von nSHDN >2,5V i changed the resistors to 180 and 1100 Ohm So i get 0,39V and 2,57V @ nSHDN The C will be something between 1 - 10uF depending on availability the divider with 180 and 1100 ohm will have current of ~2mA @ 3,0Vio what if i set currrent strength to 2mA for that pin, would that have a negative side effect or could this limited slew rate help ? EDIT : Current Strength minimum is 4mA - Altera_Forum
Honored Contributor
I guess, you can calculate, that 470 ohms and 10 uF would also enable the originally intended softstart function. The capacitor value is available down to 0402, if required.
- Altera_Forum
Honored Contributor
Yes that's a solution. Or as I said you can still create a RRC filter with a total resistance of 2k and create a PWM output to have the soft start feature.
- Altera_Forum
Honored Contributor
The PCB is already produced :-(
The designs works fine execpt for the power up when this dcdc is started during configuration. currently all i can do is change something on quartus side or change the values of the divider and the cap. there is a 100k from that pin to the 560k in parallel to the 47n and the nSHDN is connected between 100k and 560k. so your 2k pull down could be done if i change the softstart due to the RC to a non softstart with just the 2k pull down and a 0 ohm instead of the 100k - Altera_Forum
Honored Contributor
No wait... why can't you have both the pull down and the soft start?
You can still have your divider and capacitor in parallel with the pull down, can't you?