您的位置 首页 培训

Xilinx 7系列FPGA内置ADC XADC获取模拟信号

Xilinx 7系列FPGA内置ADC XADC获取模拟信号-XADC内部可以直接获取芯片结温和FPGA的若干供电电压(7系列不包括VCCO),用于监控FPGA内部状况。同时提供了17对差分管脚,其中一对专用的模拟差分输入,16对复用的模拟差分输入,不使用的时候可以作为普通的User I/O。

Xilinx 7系列FPGA全系内置了一个ADC,称号为XADC。

这个XADC,内部是两个1mbps的ADC,能够收集模仿信号转为数字信号送给FPGA内部运用。

XADC内部能够直接获取芯片结温文FPGA的若干供电电压(7系列不包括VCCO),用于监控FPGA内部情况。一起供给了17对差分管脚,其间一对专用的模仿差分输入,16对复用的模仿差分输入,不运用的时分能够作为一般的User I/O。

关于XADC详细的结构,功用和各个参数的意义,请参阅相关文档。这儿不做详细描述。别的有两点需求留意。

1.关于参阅电压的设置,会影响差错规模及采样值的计算公式。

2.模仿差分输入对模仿信号幅值有要求,需求外边模仿电路进行必定程度的转化。

假定现在需求用XADC来获取几个模仿信号的信息,那么应该怎么操作呢。下面解说一种个人偏心设置办法。

Xilinx 7系列FPGA内置ADC XADC获取模仿信号

留意红框中的几点:

1.运用DRP端口获取数字信号,这样操控好像更简略一些。

2.运用接连采样形式,ADC一向作业在数据收集形式,收集后就能够进行输出。

3.运用Channel Sequencer形式,因为只要两个XADC而需求采样的数据过多,所以让XADC顺次连续进行采样。

4.设置好DRP端口的时钟频率。

Xilinx 7系列FPGA内置ADC XADC获取模仿信号

IP设置第二页,首要是设置Calibration、平均值和外部MUX。这几个能够暂时越过,等了解XADC的运用后在进行深化了解。

第三页设置告警参数,能够不必。假如需求的话,能够设置一下,便于运用。

Xilinx 7系列FPGA内置ADC XADC获取模仿信号

第四页设置需求运用的通道,这儿挑选温度和三个供电电压,并挑选一个专用的模仿输入通道和前三个复用的模仿输入通道。

终究一页是Summary,能够看看设置是否有问题,没有需求设置的当地。

这个时分最基本的一个多通道获取数据的XADC设置好了,至于设置中没有细说的当地,能够等娴熟运用之后进行研究,找出最合适的运用形式。

下面是怎么运用这个生成的IP。因为运用DRP端口来读取数据,所以需求规划一个DRP读写操控器。不过因为XADC自身就供给了一些信号,所以这个规划其实十分简略。

.di_in(di_in),

.daddr_in(daddr_in),

.den_in(den_in),

.dwe_in(dwe_in),

.drdy_out(drdy_out),

.do_out(do_out),

.dclk_in(dclk_in),

首要理一下DRP端口,首要7个信号。因为只是是读取数据,所以输入部分没有运用的必要。

.di_in (16‘b0),

.dwe_in (1’b0),

时钟信号衔接DRP所运用的时钟即可,留意频率需求和XADC IP中的设置相同。

.daddr_in ({2‘b00,CHANNEL_OUT}),

.den_in (EOC_OUT),

.do_out (DO_OUT),

.drdy_out (DRDY_OUT),

.eoc_out (EOC_OUT),

.channel_out (CHANNEL_OUT),

余下四个DRP端口,两个输出两个输入。两个输出直接引出来,其间do_out便是终究需求的数据。这个端口是16bit,取高12bit即可(对应XADC中声称的12位)。

XADC的IP端口中还有两个,名为eoc_out和channel_out。将eoc_out衔接到DRP端口的den_in端口,意义是当多路采样的某一路完结采样后,则发动DRP端口操作,开端进行读取数据。将channel_out补两位之后送入daddr_in作为DRP端口操作的地址信号。这样就完结了DRP的读写操作。

不过这样输出的数据,会周期性的在几个端口数据之间改变。所以通常在后端加一个过滤设置,详细行为是,当代表DRP操作完结的drdy_out拉高的时分,依据channel_out的值来判别是哪一个通道的。

always @(posedge clk)begin

if(DRDY_OUT == 1’b1 && CHANNEL_OUT ==5‘d0)begin

Temperature end else begin

Temperature end

end

关于每个采样通道的详细地址,能够参阅手册

Xilinx 7系列FPGA内置ADC XADC获取模仿信号

至于模仿差分输入Pin,直接送到顶层的相对应管脚即可。留意Vivado东西或许需求对复用的模仿Pin进行电平束缚,依据VCCO的电压值挑选相应的lvcmos即可,例如1.8V的VCCO就挑选lvcmos18即可。

这样就能够获取对应的模仿采样数据了。因为绝大部分情况下需求检测的模仿信号改变相对较慢,运用XADC是满足用于检测的。

涉及到XADC的运用问题还有MIG IP。MIG是Memory Interface的IP,也便是DDR3之类的DDR存储器IP。因为此类接口一般速率过高,会需求温度信息对接口做必定的纠正。在MIG IP的装备中,会默许发动XADC。

Xilinx 7系列FPGA内置ADC XADC获取模仿信号

此刻的XADC只是需求供给温度信息就能够了。当需求供给更多信息,就需求独立装备XADC,这样工程中就会生成两个XADC;或许例化了两个MIG IP,这样各自就会需求一个XADC。因为硬件中只要一个XADC模块,当发现工程中需求多个XADC模块的时分,东西就会提示犯错。

解决计划也十分简略,MIG IP中去掉XADC。然后在规划中独立例化XADC IP。依据上文的做法获取温度信息后送往MIG。MIG IP去掉XADC后会生成一个温度端口用来接纳数据。这样就不会发生冲突。

别的一个十分快捷的获取温度信息的计划便是运用Hardware Manager。在Hardware Manager中翻开XADC就能看到温度信息。

Xilinx 7系列FPGA内置ADC XADC获取模仿信号

其实XADC一切通道数据都能够经过这个办法获取。

Xilinx 7系列FPGA内置ADC XADC获取模仿信号

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/changshang/peixun/90559.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部