BigEd wrote:
Feels to me that the internal pullups are not going to be connected until configuration is complete. So perhaps the answer is:
- use external pullups for safety during config, on reset lines and output enables.
- don't configure the internal ones if you already have external ones
- drive to logic 0 and 1 as usual - don't use Z as a 1 condition in mission mode.
Sounds good. This will be an almost exclusively through hole board (the FPGAs (there are two) are PLCC84), so I guess I better get some resistor arrays. I'm not using internal pull-ups. The question logically following is what value to use, and for that I haven't much idea.
Quote:
It might be that a reset controller would help here, by producing and stretching a reset condition, but I'd only have thought about reset inputs, not about output enables. It feels like it defeats the purpose a bit to have logic chips to deal with reset, when you're aiming for an FPGA design.
Yes. I've pondered reset generators too. My initial idea was that /RESET should be a FPGA signal (whereby the FPGA could generate resets via a watchdog-mechanism), with a pull-down to hold it low whilst the FPGA is being programmed. I suspect simply attaching it to the "Configuration done" line is a much simpler approach, with a system reset being triggered by a FPGA reprogram signal, as per MichaelM's suggestion.
MichaelM wrote:
... These PUs may or may not be enabled during the period of time that the configuration is being loaded into the FPGA. Post configuration, these PUs are completely under the control of the developer. Therefore, the Xilinx parts have either pins dedicated to the purpose of enabling these PUs during configuration, i.e. nPUDC, or they have dedicated configuration mode pins for the same purpose. The latter case is true for Xilinx parts from the same generation as the Altera 10k family of FPGAs.
In the config phase the outputs are tri-state, with no way to change that. That's the case for the Flex 10K, which is a 15 year old part. Unsure about newer Altera's.
I think I have enough info now, thanks! The only thing missing is to figure out a reasonable pull-up resistor value.