This website uses cookies. By using this site, you consent to the use of cookies. For more information, please take a look at our Privacy Policy.
Home > FPGA Technical Tutorials > FPGA-Based Prototyping Methodology > Which platform? (1) build-your-own > System reliability management

TABLE OF CONTENTS

Xilinx FPGA FPGA Forum

System reliability management

FONT SIZE : AAA

As with any other design and test equipment, the reliability of the prototyping system is of critical importance to the user. A reliable system should have built-in protection from faults to the greatest extent possible and provide the user with warnings, should a fault occur. The types of faults typical to such large systems relate to power supply and thermal management. 

Power supply monitoring

Proper operating voltage should be supplied to all FPGA and other components by design. However, power supply faults still may occur for variety of reasons, such as main power supply failure, unintended excessive current draw, or even accidental shorts on the power lines. 

While such faults cannot be automatically repaired, it’s important the user is aware if such a fault has occurred. Therefore it is recommended that each power supply circuit has a power monitor circuit that continuously measures the voltage level and asserts a fault signal when the voltage is outside the monitoring range. 

In addition to the on-board power monitoring, current generation FPGAs have a built-in system monitor circuit that can monitor all on-chip voltages and external voltages, as we shall see below. Since such voltage monitoring circuits are available “for free” in the FPGA it is recommended to use them. 

Once a power failure is detected, the system management circuit can do one or all of the following: 

• Set a visible indication of the fault, such as an LED. A more sophisticated system may have the fault monitoring circuit linked to a host computer, such that its status can be read by a program available to the user. Such a feature is critical when the system is housed in an enclosure, or located at a remote location away from the user. 

• Assert a global reset signal to reduce operating current draw. 

• De-configure all FPGAs, to ensure they consume the least amount of power. This will also serve the purpose of alerting a remote user that a system fault has occurred. 

Temperature monitoring and management

As FPGA devices became larger and faster, so did their appetite for power, despite the shrinking node geometries. Current generation FPGAs with high utilization levels, running at high clock rates, may generate more heat than their package can dissipate to free air. Overheating die may result in malfunction and may cause irreversible damage to the FPGA and the PCB. In addition, when the prototyping system is enclosed in a box where the ventilation is marginal, FPGA temperature can rise to damaging levels. In either case thermal management circuitry should be considered and thermal requirements must take into account these worst case scenarios. 

As introduced above, the FPGA’s system monitor” is highly programmable and has multiple modes of operation, but importantly it can also monitor the FPGA die’s average junction temperature. Monitored data is available at the JTAG port and also via the FPGA-resident design if the system monitor module is instantiated in the design. This could be a part of the FPGA-specific chip support block mentioned in chapter 4. 

Figure 56 shows the system monitor circuit available at the core of the Virtex®-5 FPGA. As shown, in addition to the voltage monitoring, the system monitor has a temperature sensor with an associate alarm signal that is activated when the junction temperature exceeds its acceptable level. Such a signal can be used to implement a system-level power and temperature monitoring circuit, and alert the user to a fault in the system. 

Figure 56: FPGA System Monitor

FPGA System Monitor.png

Once an over-temperature alarm is set, the system management circuit may do some or all of the following: 

• Set a visible alarm, like an LED. 

• Turn on fans to remove the excess heat. 

• Put the system in reset condition. 

• De-configure all FPGAs, to make sure they will consume the smallest amount of power. 

• An example of how temperature could be monitored from a host is shown in Figure 57 . This is a screen shot of a PC-hosted utility called CONFPRO which is connected to a supervisor microcontroller running locally on a HAPS board (actually running on a Microblaze CPU embedded in an FPGA on the board). The screen shows the values read from the system monitors of six Virtex ® -6 devices and any mitigation steps in progress e.g., controlling fans mounted on each FPGA. The same microcontroller also controls the FPGA clocks, resets and configuration so each of the above mitigation techniques can be automated locally or under control of the user. 

In addition to the on-chip temperature monitoring, it’s recommended the system also includes a number of temperature sensors placed close to where temperature is expected to be higher than other parts of the system, typically close to the FPGAs. Such devices are typically programmable and can produce an alarm signal when temperature is higher than their programmed value. Connecting these devices 

Figure 57: monitor in CONFPRO

monitor in CONFPRO.png

together and combining them with the on-chip temperature sensors/alarms will create a well monitored system.

FPGA cooling

To improve heat dissipation, it’s recommended to install a heat sink to each FPGA. There are many such heat sinks that come with self-adhesive film, so installation is fairly simple. If a heat sink alone is not adequate enough to remove the heat from the FPGAs, a small fan over the heat sink or a fan with a heat sink combination can be placed on each FPGA to significantly improve the heat dissipation. To accommodate these fans, the necessary power supply and connectors should be incorporated into the main board. The fans need not be on all the time but could be controlled by a small loop making use of the FPGA’s temperature monitor. 

In the long run, boards run with FPGAs having not heat sink or fan cooling might receive temperature stress and prove to be less reliable. 

  • XC3S4000-4FGG1156C

    Manufacturer:Xilinx

  • FPGA Spartan-3 Family 4M Gates 62208 Cells 630MHz 90nm Technology 1.2V 1156-Pin FBGA
  • Product Categories:

    Lifecycle:Obsolete -

    RoHS:

  • XC4020XLA-09BG256I

    Manufacturer:Xilinx

  • FPGA XC4000XLA Family 20K Gates 1862 Cells 227MHz 0.35um Technology 3.3V 256-Pin BGA
  • Product Categories:

    Lifecycle:Obsolete -

    RoHS: No RoHS

  • XC3042-70PC84C

    Manufacturer:Xilinx

  • FPGA XC3000 Family 3K Gates 144 Cells 70MHz 5V 84-Pin PLCC
  • Product Categories: FPGAs

    Lifecycle:Obsolete -

    RoHS: No RoHS

  • XC3042-7PQ100I

    Manufacturer:Xilinx

  • Xilinx QFP
  • Product Categories:

    Lifecycle:Any -

    RoHS: -

  • XC5204-5PQG160C

    Manufacturer:Xilinx

  • FPGA XC5200 Family 6K Gates 480 Cells 83MHz 0.5um Technology 5V 160-Pin PQFP
  • Product Categories:

    Lifecycle:Obsolete -

    RoHS:

Need Help?

Support

If you have any questions about the product and related issues, Please contact us.