基于CPLD 的CCD 采集系统设计

作者: 吴建文, 程念平   发布日期:2006-10-11 14:22   查看数:0
中文摘要:

  介绍CCD 驱动信号的V HDL 语言设计方法。应用CPLD 构建CCD 采集系统的核心,由1 片EPM7128S 产生整个系统的时序逻辑,包括CCD 时序信号发生、模拟开关切换信号、A/ D 转换控制信号、数据存储读 写控制信号。

CCD(Charge Coupled Devices) 即电荷耦合器件,是20 世纪70 年代初开始发展起来的半导体器件。作为一种高 灵敏光电传感器,在科学、天文、工业等领域有广泛的应 用。本文采用线阵CCD ,研制一种眼镜自动检测仪器。 复杂可编程逻辑器CPLD(Complex Programmable Logic Device) 规模大、集成度高;可以替代几十甚至上百 块通用IC 芯片,实际上构成一个子系统部件,并且具有系 统在线编程能力( ISP) ,为系统的调试和升级提供了保证。 用户可以根据逻辑功能的需要设计构造自己的数字集成 电路系统。正如Altera 公司所宣扬的“专用集成电路能 做到的,我们能做得更好”。在该公司的集成开发环境 MAXPLUSII 下,通过VHDL 语言编写程序,编译后即可 下载到CPLD 芯片中,完成时序逻辑设计。MAXPLUSII 是一个完全集成化的可编程逻辑设计环境;具有开放的界 面,与结构无关,多平台,有丰富的设计库,模块化工具,并 且支持各种硬件描述语言( HDL) 。
2  时序逻辑的VHDL 设计
     CCD 所需的驱动时序如图2 、图3 所示,RAM 的读写 时序如图4 所示, A/ D 转换控制时序如图5 所示;VHDL 设计的时序逻辑仿真如图6 所示。 根据CCD 对脉冲沿的要求,信号经过7414 取反后再 驱动CCD ,因此在V HDL 程序中,CCD 信号是取反的。 图5  RAM读写时序要求 用VHDL 产生频率大致相同的脉冲信号比较容易, 比如 CCD 驱动信号中的RS、BT、φ1 、φ2 (仿真图中的d1 、d2) 以 及A/ D 转换信号等;而要产生频率差别很大的脉冲信号 却比较困难,比如,本文中需要同时产生SH、ICG、RS、BT 以及A/ D 转换、RAM 的地址写信号等。有一个方法就是 使用计数器来分频系统的时钟输入信号。下面的程序即 可实现分频,多次分频就可以得到想要的频率信号。
结 语
     可编程逻辑器件(CPLD) 精简的系统,灵活的在线编 程代表着大规模控制电路的发展方向。本文介绍了应用 可编程逻辑器件作为CCD 图像采集控制系统, 结合 VHDL 语言实现时序信号,不需要处理器的参与就可以 完成信号的采集与存储,系统简单可靠。软硬件稍作修改 即可以用于其他CCD 系统。 VHDL,CPLD,CCD,MAXPLUSII