0
\$\begingroup\$

Are there any methods by which one could measure the current being drawn by an FPGA in real time i.e., when it is actually deployed in a working system? Where can I get some information about them?

\$\endgroup\$
4
  • \$\begingroup\$ I'm not aware of any FPGA specific ways, but would a generic way such as a current shunt / ADC to measure be on the cards? Maybe if you just want to measure a few prototype systems some sort of place to insert the shunt and a generic data acquisition system would be OK. \$\endgroup\$
    – PeterJ
    Commented Jul 28, 2013 at 12:23
  • \$\begingroup\$ Where can I learn more about it? \$\endgroup\$ Commented Jul 28, 2013 at 12:29
  • 1
    \$\begingroup\$ The new FPGAs from Xilinx have an integrated ADC that can be used to check the power, but for that you need to have a resistor in series on all the power sources of the FPGA. IF you just want to get an estimate on how much your board is consuming, I would measure the current of the board before the FPGA is loaded (or when it is reset) and then load the FPGA with your code and measure the current of the hole board, the difference between the 2 is your FPGA power consumption. \$\endgroup\$
    – FarhadA
    Commented Jul 28, 2013 at 17:36
  • 1
    \$\begingroup\$ Is this any different than measuring current in the general case? \$\endgroup\$
    – Phil Frost
    Commented Jul 29, 2013 at 18:49

3 Answers 3

2
\$\begingroup\$

The standard way to check power being drawn by a component on a PC board in a system is to open up the DC power paths to the FPGA and then insert a known resistance resistor in series between the FPGA and its power source. You then measure the voltage drop across this resistor through two wires that you connect on each side of the resistor and bring out of the system to a current meter. Two things to consider, the resistor value has to be really low in the less than 100 milliohm range so that the resulting voltage drop does not put the FPGA into an invalid operating scenario. You also need to carefully consider the wattage rating of the resistor used so it does not burn or change values due to heating.

If you have access to advanced test equipment there are clamp on probes that can measure current in a conductor. If you have that then you can simply replace the series resistor as described above with a short loop of wire. Then clip on the probe. I've used probes that are able to measure DC as well as AC current.

\$\endgroup\$
1
\$\begingroup\$

See there are many possible ways of measuring power(current) used by FPGA. Taking the example of Altera's Cyclone and Arria series, comes with Early Power Estimator excel sheet to calculate the power that will be utilized by FPGA, when implementing a particular code. It asks you about the approximate number of LUT's and internal modules like (GXB Transceivers, DDR interface etc.) being used. But to have the accurate amount of the power consumption even Altera recommends to first develop your code and run it using their Evaluation Board. Using the Altera Quartus II(power estimator built in) for Arria(an example) check the power being consumed. Generate the .csv file, import in the Early Power Estimator(EPE), to check which particular module is using exact amount of current. Using this recheck the toggle rates usually 12.5%(but can change), you will get to know about the exact amount of power being consumed by FPGA.

\$\endgroup\$
0
\$\begingroup\$

The easiest way is to make the power supply into the FPGA connect through a current sense chip. Allegro has a number of nice, Hall effect based sensors that have very little power loss. You can buy them pre-mounted to carrier boards from places like Pololu.com, or you can get the raw chips and design into your own PCB.

The ACS714 senses +/- 5A: http://www.robotshop.com/pololu-5a-acs715-current-sensor.html The ACS715 senses +/- 30A: http://www.robotshop.com/pololu-30a-acs715-current-sensor.html

The output is analog, which means you can easily put it on the 'scope to see variations in draw.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.