l 高速A/D与FPGA接口的实现
本文采用的AD转换器是ADI公司的AD9481,AD9481是一款典型的高速AD转换器,其高达250MSPS的采样率,适用于高速数据采集的场合。因为AD9481需要250M的基于PECL标准的差分时钟才能工作在250MSPS,因此本设计采用摩托罗拉公司的MCl00LVEL16这一时钟芯片来提供250M的差分时钟,它只需要输入单端CMOS电平的250M时钟便可以输出符合AD9481要求的250M差分时钟。单端时钟由FPGA的锁相环对有源晶振输入的时钟进行倍频输出。但是这么高的时钟在线路板中是一个潜在的威胁,它既容易干扰其他器件,又容易被其他器件干扰。AD9481的数字输出属于并行接口,2个250MSPS,8位数据输出组合形成125MSPS,16位的数据流,如此高速的数据传输与存储容易使数字系统中出现竞争冒险和亚稳态,因此首先在AD的数据输出引脚和FPGA的输入引脚之间串联100欧姆的电阻,用来削弱高速数据线在O,1之间变换产生的毛刺和数据线之间的干扰。其次,在FPGA内部对AD的数据线和锁存时钟的使用应严格按照器件手册上的建立时间和保持时间来设计,否则容易产生亚稳态。
该设计选用的FPGA是EP2C5Q208,它是ALTERA公司的CYCLONE2系列的一款低成本FPGA,适用于中小型设计。拥有多达4608的逻辑单元,119808 bit的内部RAM,支持ALTERA公司的SOPC,NIOSII,本设计通过EP2C5Q208的内部RAM来做AD高速数据传输的缓冲,AD过来的高速数据通过锁存时钟完成对FIF0的写操作。如图2所示,AD_DB[15..O]是AD的数据线,ADB_DCOB是AD的锁存时钟。