Re: Basic FPGA question about Reset
- From: Allan Herriman <allanherriman@xxxxxxxxxxx>
- Date: Thu, 17 Jan 2008 13:26:53 +1100
On Wed, 16 Jan 2008 10:22:39 -0800, austin <austin@xxxxxxxxxx> wrote:
G.
How one starts the configuration process is a different problem that how
the device after configuration, starts up.
The first problem is often caused by people "not trusting" the internal
Power On Reset circuits in the FPGA: bad. We spend an immense amount
of time making sure the POR circuits work under all sequences, and all
ramps from 2us to 50ms. Mess with this, and then you have to do all the
engineering for three power supplies to make it work at least as well as
we already did. Not a smart move. Why would anyone want to re-invent
this wheel?
There are a few reasons why you would want to re-invent that wheel in
a practical product:
1. "all ramps from 2us to 50ms"
It may be impossible to guarantee the 50ms end of that, particularly
in mains powered circuits. If there is a slow brownout, an external
reset generator with accurate thresholds *will* result in a more
reliable design.
2. I find that my designs rarely contain just an FPGA. I have a
whole host (sorry about the pun) of items on the board that need to be
reset at the same time.
2b. Sometimes (particularly when I have a host processor on the board
that configures the FPGA) I want to have different parts of the board
reset based on different criteria.
3. I also have extra voltage rails that need to be monitored, and
these rails aren't connected to the FPGA. An external reset generator
is required to monitor those rails.
If FPGAs had an on-die reset generator that
- was guaranteed to work for all ramp rates
- was guaranteed to work for non-monotonic ramps
- could monitor 3-4 additional voltages
- had a guaranteed 2% voltage tolerance or better
- had threshold voltages I can set (or determine by resistor ratios)
- had a dedicated reset output to drive other parts of the board,
I would use it. Until then, I will use cheap, reliable, external
reset generator devices.
Regards,
Allan
After the product has loaded the configuration, and has completed the.
start-up sequence, then everything is in a known state, so a reset isn't
even required (it is implicit in the starting values you placed in the
registers in your VHDL or verilog code, and was part of the loaded
bitstream).
If at some time later, you want to return to a 'known good state', which
we will call "reset" for no better reason than it describes the action
you want to take, then the applications note (or the old Tech X) details
all kinds of ways to do this, that work.
Austin
- Follow-Ups:
- Re: Basic FPGA question about Reset
- From: Mike Treseler
- Re: Basic FPGA question about Reset
- From: Hal Murray
- Re: Basic FPGA question about Reset
- From: Allan Herriman
- Re: Basic FPGA question about Reset
- References:
- Basic FPGA question about Reset
- From: jey
- Re: Basic FPGA question about Reset
- From: Symon
- Re: Basic FPGA question about Reset
- From: jey
- Re: Basic FPGA question about Reset
- From: jey
- Re: Basic FPGA question about Reset
- From: ghelbig
- Re: Basic FPGA question about Reset
- From: austin
- Basic FPGA question about Reset
- Prev by Date: help definining a secure SMARTCARD CHIP BASED, USB UNIT
- Next by Date: Re: Quartus II Incremental compilation?
- Previous by thread: Re: Basic FPGA question about Reset
- Next by thread: Re: Basic FPGA question about Reset
- Index(es):
Relevant Pages
|