2024年4月8日发(作者:)
Xilinx 7系列 XADC功能介绍和应用指南(UG480 )
一、XADC功能介绍
XADC是内嵌在Xilinx 7系列FPGA芯片和Zynq7000可编程SOC芯片中的的高速AD转换器模块。
10 位可靠精度),采样速率达到每秒 1兆次。XADC可测量多该模块内有两个 12 位 AD转换器(确保
达 17 个外部模拟通道的输入信号,同时还能对芯片的温度和供电电压进行监测和报警。XADC能自动
循环扫描所有的模拟输入通道,大大地减轻了主机的负担。特别是Zynq7000芯片内部集成了2个ARM9
处理机芯片、FPGA 逻辑和 AD转换器,丰富的资源构成完整的信号采集和处理系统,特别适合对精度
要求不是太高但对成本又较敏感的测控仪器仪表等方面的应用,既可简化设备又可提高性价比,因
此很受业界欢迎。
有关 XADC 的官方资料主要包含在
Xilinx
的“
7
Series
FPGAs
XADC
Guide
(
UG480
)”和“
XADC
Wizard
v3.3
LogicCORE
IP
Product
Guide
(
PG091
)”等技术文档中。这些资料内容丰富,但也比
较庞杂,用户需要耗费大量时间才能消化理解。同时已有资料对应用实例的介绍又不太详尽。笔者
主要对这两份资料的内容进行了梳理和精简,省略了仿真和 JTAG方面的内容,重点放在介绍和理解
XADC控制寄存器的操作方式。最后展示了在 Vivado和 SDK开发环境下的一个简单 XADC应用实例。
希望此文能帮助有兴趣的读者能在较短时间内能掌握和应用 XADC。
UG480
图1-1XADC原理框图
本文的参考资料主要来自
Xilinx
的
UG480
和
PG091
等技术文档,为便于读者对照原文查阅更详
细的信息,本文引用的表格或插图仍采用原文的编序。
1
的属性介绍
内含两个12位、每秒1兆采样(1MSPS)的AD转换器ADCA和ADCB。
XADC含片上温度传感器,可测试和监控芯片的温度,实现超温报警(OT)。默认的超温报警温
度是125°C,用户可以在发生过热报警时及时切断芯片供电以避免损失。用户还可以设定自己
定义芯片工作温度范围,当芯片温度超出用户设定的界限时予以报警。
XADC内含6个芯片供电电压传感器,可对芯片供电电源监测和报警。(PL是FPGA逻辑电路,
PS是CPU系统)被监测的电源电压如下:
VCCINT:
VCCAU:
VCCBRAM:
VCCPINT:
VCCPAUX:
VCCO_DDR:
PL内核电压(1.0V)
PL辅助电压(1.8V)
PLBRAM电压(1.0V)
PS内核电压(1.0V)
PS辅助电压(1.8V)
DDRRAM电压(1.5V)
用户可以为这些电压设定上、下限,当电压超出用户设定的界限时报警。
XADC有一路专用的差分模拟输入通道Vp/Vn,如果不使用Vp/Vn时,应该将Vp/Vn连接到GNDADC
引脚。
XADC另有16路辅助模拟输入通道。这些输入通道与Vp/Vn不同之处是,他们的引脚是模拟/数
字复用引脚。如果其中某个引脚被用做模拟输入,该引脚的数字I/O功能就不可再用。如果辅
助模拟输入通道所在的BANK中混合有模拟和数字I/O,该I/OBANK必须由满足所用数字I/O
标准所需的电压供电。
辅助模拟输入通道既可以设置成单极性输入,也可以设置成双极性输入。但所有片上传感器(温
度和电压)都采用单极性工作模式。
XADC可对ADC转换结果自动计算和输出平均值,以抑制信号和PCB板上的噪音。用户可从无平
均值计算、16个样本平均,64个样本平均或256个样本平均等四个选项中选取。
XADC允许延长采样充电时间,将采样充电时间从4个ADCCLK延长至10个ADCCLK。当信号源内
阻或模拟通道多路器内阻过大影响采样电容获得的信号精度时,加长采样时间可以提高精度。
XADC内部含有1.25V的参考电压源。将VREF_P0接模拟地GNDADC就能启用片上参考电压。如果
希望得到更高的精度,可以将VREF_P0连接外部精密电压参考IC。
XADC可基于已知的参考电压源对传感器、ADCA和ADCB的偏移和增益偏差进行校准计算,得
到的校准系数存储在XADC的只读状态寄存器中。随后可以利用这些系数对ADC转换结果进行补
偿。
2


发布评论