XADC介绍
首先看XADC的框图
XADC内部包含2个12位1MSPS的ADC
所有XADC相关的引脚都在bank0上,推荐种配置方式:
-
Vccaux(1.8V)和外部1.25V作为参考源
-
使用片上电压作为参考
外部模拟输入
所有的模拟输入均为差分输入,输入引脚位于bank15和35
模拟输入的IO引脚命名有ADxP 或 ADxN前缀
XADC例化
在不例化XADC的情况下,只有通过Jtag的方式访问XADC,用户逻辑想访问XADC则必须在设计中例化XADC IP或原语
从框图上可以分为五类端口
-
DRP端口
-
控制与时钟端口
-
外部输入端口
-
报警端口
- 状态端口
时钟与复位
ADC所有的时钟都是基于DRP Clock,其中ADCCLK是通过对DRP时钟进行分频实现的。
注意文档中关于busy信号与DCLK信号之间关系的描述
连续采样时序
捕获阶段 Acquisition Phase
ADC在捕获阶段对电容进行充电,充电所需的时间与ADC通道的输入源端阻抗相关。ADC有独立的track-and-holder 放大器,所以在进行转换的时候,可以进行下一次的捕获操作。
ADC的充电时间可以设定到10个ADCCLK,在源端阻抗大于10KΩ的时候,非常有用。
转换阶段 Conversion Phase
在捕获周期后的4-10个时钟周期,开始执行转换操作。
转换需要22个ADCCLK
触发采样时序
触发采样模式中DCLK必须一致工作,CONVST的上升沿触发XADC进行采样
XADC工作模式
极性
单极性模式
已输入的采样电压范围从0~1V为例进行说明
此处需要注意的是,在使用单极型模式的时候,XADC的有效电压输入范围被限制在1V以内
双极性模式
双极性模式下, XADC的差分输入电压绝对值在0.5V以内,对地的工模电压在0.25V到0.75V之间。
采集模式
Single Channel Mode
单通道工作模式
Automatic Channel Sequencer
配置用户希望使用的通道及对应通道的设置,XADC自动顺序分时采集每通道的数据
每个通道可以独立配置进行多个样片进行算术平均
通道之前的切换延迟最小为4个ADCCLK
Sequencer Mode
External Multiplexer Mode
采用外部复用的方式,FPGA XADC实际只使用一对FPGA的模拟输入,通过外部的模拟切换开关实现通道的切换