《Xilinx 7系列FPGA内置ADC XADC获取模拟信号.docx》由会员分享,可在线阅读,更多相关《Xilinx 7系列FPGA内置ADC XADC获取模拟信号.docx(7页珍藏版)》请在第一文库网上搜索。
1、OSiM1OMZstAKMU4tUi19*umIaab1AX14StrHW(*dCmt*11tMutPrt一BmJ1GArkitcrAa1*SiFaIwOrIiMtXi1inx7系列FPGA内置ADCXADC获取模拟信号XiIinX7系列FPGA全系内置了一个ADC,称呼为X义C。这个XADC,内部是两个ImbPS的ADC,可以采集模拟信号转为数字信号送给FPGA内部使用。XADC内部可以直接获取皿结温和FPGA的若干供电电压(7系列不包括VCCO),用于监控FPGA内部状况。同时提供了17对差分管脚,其中一对专用的模拟差分输入,16对复用的模拟差分输入,不使用的时候可以作为普通的UserI0
2、o关于XADC具体的结构,功能和各个参数的含义,请参考相关文档。这里不做详细描述。另外有两点需要注意。1 .关于参考电压的设置,会影响误差范围及采样值的计算公式。2 .模拟差分输入对模拟信号幅值有要求,需要外边模拟电路进行一定程度的转换。假设现在需要用XADC来获取几个模拟信号的信息,那么应该如何操作呢。下面解释一种个人偏爱设置方式。BbbbcAKA1vraiCIubmISewfirStBMry)Cmtiiwesc1*4O1VaatM41twtCUmmIS1tMBCUfrMBcyICOOM0mIxm(QX)C14rTt1iMAKC10Frewanr(Bh)*2500注意红框中的几点:1 .使用
3、DRP端口获取数字信号,这样控制似乎更简单一些。2 .使用连续采样模式,ADC一直工作在数据采集模式,采集后就可以进行输出。3 .使用Channe1Sequencer模式,由于只有两个XADC而需要采样的数据过多,所以让XADC依次陆续进行采样。4 .设置好DRP端口的时钟频率OSetupA1armsCKaime1SequencerSummarySequencerModeContinuousADCCa1ibrationChaxme1AveragingSupp1ySensorCa1ibrationIIADCOffsetCa1ibrationIISensorOffsetCa1ibration0AD
4、COffsetandGainCa1ibration0SensorOffsetandGainCa1ibration叼EnabIeCA1IBRAnOMAveragingExterna1Mu1tip1exerSetupIIExterna1Mu1tip1exerChaime1forMUXVpVn知多1IEnab1emuxaddr-outportPCHaYDnvnntCnUIP设置第二页,主要是设置Ca1ibration、平均值和外部MUX。这几个可以暂时跳过,等熟悉XADC的使用后在进行深入了解。第三页设置告警参数,可以不用。如果需要的话,可以设置一下,便于使用。BasicAICStupA1anBSC
5、kaB1SwacrSubbvCktnn1EnbvrgEnn1Bipo1arcV1SXtM1T1BCa1ibrjjiohTDIPBRATirM0VCC11T0VcCAInVCCCTAM0VPA10R1FPVMP1rvawcpvuxn团vtup1vuxn10vwcp2vawca20awcp3vMXn3vtwcp4vux4)r*o1n1ooA-o91atDz020Vaw,8T1r“ASnBOVJ1fJTAGTAPContro11erDRP至于模拟差分输入1n,直接送到顶层的相对应管脚即可。注意ViVado工具可能需要对复用的模拟Pin进行电平约束,根据VCCO的电压值选择相应的Ivcmos即可,例如
6、1.8V的VCCO就选择Ivcmos18即可。这样就可以获取对应的模拟采样数据了。由于绝大部分情况下需要检测的模拟信号变化相对较慢,使用XADC是足够用于检测的。涉及到XADC的使用问题还有MIGIPoMIG是MemoryInterface的IP,也就是DDR3之类的DDR存储器IP。由于此类接口一般速率过高,会需要温度信息对接口做一定的矫正。在M1GIP的配置中,会默认启动XADC。XADCInstantiationThm*oryintrfC4ussthtprtrr“dinfroth*XADCb1ocrtoprformt*mp*rturcopns*tiontndkpIreadDQScenteredinthedatawindvThereisOneXADCb1ockperdeviceIftheXADCisnotcurrent1yusednyvherthedesign,enab1ethisoptiontohavetheb1ockinstantiated.1theXADCisa1readyused,disab1ethisMIGoption.usristhnrequiredtoProVid*thetep*raturva1uetothetop1v112itdevict_tep_ii