王连华 北京航空航天大学自动化科学与电气工程学院
基于FPGA和高速串行接口AD转换器AD7476的接口应用
王连华 北京航空航天大学自动化科学与电气工程学院
在科学研究、工程应用、工业生产中,数据采集系统的设计与实现对数据的通信接口提出了要求。基于FPGA与高速串行接口AD转换器AD7476,本文论述了线性序列机的设计方法,实现了储罐底板三维漏磁检测器的数据采集方案。实践证明该方法简单、实用,为工程应用提供了支持。
线性序列机,FPGA,数据采集,接口
高速串行接口(HSSI),是由Cisco System和T3plus Networking公司共同推出的串行接口标准。 FPGA作为可编程逻辑器件, 以其高性能和灵活性广泛应用在接口逻辑,数据通信,信号处理等领域。将FPGA编程的灵活性和高速串行接口的可靠性结合, 实现AD7476的数据采集功能。
12位AD7476是逐次逼近式ADC,模拟输入范围为0V~电源电压,其吞吐率高达1MSPS而功耗仅15mW,采用6针脚的SOT-23封装。数字接口通过高速串行接口与外围器件连接,与SPI[1]、QSPIMICROWIRE和DSP兼容。AD7476接口时序如图1所示。它的工作方式是:在使能信号CS保持低电平的状态下,数据由Vin输入,在输入时钟SCLK的上升沿由移位寄存器移动到SDATA信号线[2],经过16次的时钟信号,完成16位数据的传输[3]。
高速串行接口适用于主芯片与从芯片的连接, 在系统设计中,可编程芯片FPGA作为主芯片, AD7476芯片作为外围从芯片通过高速串行接口连接至FPGA芯片。该系统选用Altera公司的FPGA芯片,该公司的产品芯片功能全面,性价比高。 AD7476支持高速串行接口与外围器件连接。通过硬件电路设计实现高速串行接口的物理连接。器件连接原理如图2所示[4]。
FPGA内部高速串行控制电路采用Verilog HDL语言编程,基于线性序列机的思想,完成AD7476的接口设计。软件发起控制命令后,产生AD_START脉冲信号,标志开始采集,计数器开始计数。与计数器相配合,根据AD7476的时序要求发出相应的控制信号。在时序控制电路的作用下,将16位串行总线的数据移位到AD_DATA上,完成AD转换和数据采集。其时序控制电路设计流程如图3。
图1 AD7476接口时序图
ModelSim是优秀的HDL语言仿真软件,提供友好的仿真环境,个性化的图形界面和用户接口,为用户调试提供强有力的手段[5]。本文采用Verilog HDL语言编写testbench文件在Modelsim进行测试。时序仿真结果如图4所示,基于线性序列机思想,实现了AD芯片的使能信号的开关,时钟信号的产生和数据信号的传输,验证了设计方案的可行性。仿真结果中有一定的延时, 这是在实际工程中也会出现的情况。
基于FPGA与高速串行口AD转换器AD7476,本文论述了线性序列机的设计思想,实现了数据的可靠通信。经仿真结果验证,该接口的设计正确、可行。高速串行接口适合于高速数据采集系统与主机进行数据通信,为储罐底板漏磁检测系统提供了方便、快捷和可靠的接口解决方案。
[1] 苏旭武,吴斌方,杨光友,程良明.基于FPGA的SPI接口AD转换器TLV2543的接口应用[J].软件导刊,2006(13)∶74-76.
[2] 李志刚,李强,陈雪峰.基于FPGA和SPI接口DAC在某导航雷达前端控制中的应用[J].信息化研究,2012(5).
[3] 王珏文,金伟信,蔡一兵,颜莉萍.基于FPGA的SPI总线接口的实现[J].现代电子技术,2010, 33(14)∶102-104.
[4] 何丹,李树国SD存储卡接口SPI模式的FPGA实现[J].微电子学,2014(2).
[5] 于斌,谢龙汉.MODELSIM电子系统分析及仿真[M].北京:电子工业出版社,2014.
图2 FPGA与AD7464连接原理框图
图4 时序仿真结果
图3 时序控制电路设计流程图
TP21