Today let's talk about the XADC function in FPGA. XADC is a collection of ADC modules, temperature sensors, and voltage sensors integrated in Xilinx's FPGA. In the 7 series FPGA, except for a few low-end FPGAs of the spartan series that do not have XADC, all other 7 series FPGAs have XADC modules.
The XADC contains 2 channels of analog differential input, and the sampling rate of each channel is 1MSPS. Its functional modules are shown in the following figure:
As can be seen from the above figure, XADC monitors the temperature and all voltages in the FPGA by default, and can also receive analog differential signals from the FPGA-specific analog differential management VP_0/VN_0, as well as other common digital/analog mixed pins VAUXP/ 16 analog differential inputs of VAUXN[15:0], so the XADC can process up to 17 external analog signals.
The output of XADC can be directly read by the FPGA development tool and monitored in real time through the JTAG port, and the XADC IP core can also be generated with the help of the Xilinx CORE Generator, loaded into the FPGA logic code, and the user can read the temperature, voltage and other information of the FPGA at any time. .