3.1.2 A/D功能实现
多路模拟信号的同步采样一般有两种实现方法:一种为多个A/D转换器同时进行转换;另一种为仅有一个A/D转换器,各通道同时采样,然后分时转换。针对该系统,AD9942的像素时钟可以达到40 MHz,且为双通道同时转换,故采用分时转换即可实现系统要求,且可以节省成本。实际应用中将CCD的16通道分成上下两个半帧,上半帧8个通道分时复用AD9942的A通道进行A/D转换,下半帧8个通道分时复用B通道进行A/D转换。
硬件电路实现时,需要将CCD输出的每一路模拟信号通过采样保持电路,对模拟输入信号准确采样,并将采样结果保持一定时间,通过两个8选1模拟开关,分别送到A/D变换器的A通道和B通道。分时复用实现原理图如图3所示。
根据采样保持电路的时钟可以将该电路工作分为采样和保持两个阶段。在采样阶段,采样得到的电压以电荷的形式存储在采样电容上,输出端处于短路状态,采样阶段即将结束的时候,输入端处于开路状态,存储电荷不再改变;在保持阶段,输入采样信号通过保持电容转移到输出端,由FPGA控制模拟开关分时选通每一路CCD信号,从而通过两个阶段的交替完成A/D变换全过程。
VCCD512H每一路的有效像元数为128×64。由于每行有8个过扫描像元(用于行箝位),故设计中要保证使每行最少输出72个像元,则上下半帧的像元数都为128×576个。由此可以确定AD9942的主时钟CLI_X(CLI_A,CLI_B)即像素时钟为40 MHz,行同步信号HD_X,帧同步信号VD_X,并由FPGA分频产生其波形。它的时序图如图4所示。
3.1.3 高速A/D与FPGA接口实现
AD9942采样率达到40 MHz,由FPGA提供像素时钟、行同步、帧同步信号,但是这么高的时钟在线路板中是一个潜在的威胁,它既容易干扰其他器件,又容易被其他器件干扰。AD9942的数字输出属于并行,2个40 MSPS、12位数据流,如此高速数据传输与存储容易使数字系统中出现竞争冒险和亚稳态,因此首先在A/D的数据输出引脚和FPGA的输入引脚之间串联100 Ω的电阻,用来削弱高速数据线在0,1之间变换产生的毛刺和数据线之间的干扰。其次,在FPGA内部对A/D的数据线和锁存时钟的使用应严格按照器件手册上的建立时间和保持时间来设计,否则容易产生亚稳态。
3.2 FPGA实现A/D控制、数据缓存
3.2.1 FPGA器件选择
现场可编程门阵列FPGA(Field Programmable Gate Array)集采样控制、处理、缓存、传输控制、通信于一个芯片内,编程配置灵活,开发周期短,系统简单,具有高集成度、体积小、功耗低、高速、I/O端口多、在线系统编程等优点,在只需要简单数据处理的情况下,FP-GA能够提供比专用高速DSP更好的解决方案,并且特别适用于对时序有严格要求的高速多通道数据采集系统。特本设计在实际应用中以FPGA作为数据采集的控制核心,实现CCD多通道模拟信号的采集和处理。为实现系统控制与数据缓存一体化的设计,该系统采用的XQ2V3000是Xilinx公司推出的Virtex-Ⅱ系列的FPGA,它内部有丰富的资源,包括三百万个门,448 Kb的分布RAM,96个乘法器,96×18 Kb的Block RAM,12个数字时钟管理器(DCM),720个可配置I/O引脚,最高内部工作频率达300 MHz。