基于VHDL的彩色线阵CCD驱动电路设计
- 格式:doc
- 大小:1.93 MB
- 文档页数:18
目录1 技术指标 (1)2 设计方案及其比较 (1)2.1方案一 (1)2.2方案二 (2)2.3方案三 (2)2.4方案比较 (3)3 实现方案 (3)3.1 CPLD驱动板介绍 (3)3.2 TCD2252D简介 (4)3.3 最终实现方案 (4)4 调试过程及结论 (7)5 心得体会 (10)6 参考文献 (10)基于CPLD的彩色线阵CCD驱动信号的设计1技术指标查TCD2252D芯片手册分析各驱动信号的时序关系,结合CCD学习套件,能够基于QuartusII软件平台使用HDL语言编写逻辑时序,驱动线阵CCD正常工作,并能够实现外部信号控制驱动频率的变化,通过示波器能够观测到输出如图1的图像。
图1 CCD线阵驱动时序图2设计方案及其比较2.1方案一方案一为单片机驱动方法。
因为大多是CCD系统里都含有单片机,所以很自然的会联想到单片机的并行锁存输出口所需的驱动脉冲信号,实现对CCD的控制。
单片机靠指令产生I/O口的输出来实现。
由于线阵CCD的典型复位脉冲为1MHz,所以对单片机还是有一定的最低要求。
简易连接图如图2所示。
图2 单片机简易连线图为了获得精确的CCD驱动,最好不要使用循环制性程序。
因为转移指令是要根据某种条件产生的程序分支,而分支程序在不同条件下之行的指令周期数是不同的,因而造成CCD的驱动时序不准确。
但是对于成千的像元的CCD来说,一个工作周期往往需要好多好多字节的程序存储器。
略有麻烦。
2.2方案二方案二为EPROM驱动方法。
所需的器件TCD1208AP的时序如图3所示。
SH为光积分脉冲信号;1、2为时钟脉冲信号;RS为复位脉冲信号;SP为采样保持脉冲信号。
由图3中的时序可以看出:在这5个信号中,最窄的是AB段,即SP和RS两个信号的高电平部分,各个信号的任何部分都是AB段的倍数。
根据这一特点,将这组信号以AB段为基本单位划分为若干个等时间间隔,称为状态。
时钟波形电平变化发生在一定状态变化时刻,这样任意一路信号都被分为上万个状态,处于某一状态时,各路信号或1或0,构成一个状态的数据,将数据依次装入可擦除只读存储器EPROM中,只要等时间间隔地依次输出这些数据就形成了CCD所需的各路波形。
2014年《仪器光电综合实验》实验报告姓名学号实验名称:彩色线阵CCD传感器实验及驱动电路设计报告实验日期:2014年10 月17日第一部分彩色线阵CCD传感器实验报告(实验一、实验二、实验三、实验四)实验一、线阵CCD原理2.驱动脉冲相位的测量2)用CH1 探头测量转移脉冲SH。
用CH2 探头分别观测驱动脉冲F1与F2。
SH-F1SH-F2对比两图,发现F2、F1的相位相反,并且均进入采集状态早于SH脉冲,离开采集状态晚于SH脉冲,从而保证了充分采集电子。
3)用CH1 探头测量F1 信号。
CH2 探头分别测量F2、RS、CP、SP 信号。
F1-F2F1-SPF1-RSF1-CPF2与F1相位相反,SP脉冲迟于F1,RS略迟于SP,CP略迟于RS,即在F1高电平期间,先采样保持,后复位,再篏位,从而输出稳定的图像。
4)用CH1 探头测量CP 信号。
CH2 探头分别测量RS、SP。
CP-RSCP-SP可见篏位信号CP滞后于采样保持信号SP和复位信号RS。
5) 将以上所测的相位关系与TCD2252D 的驱动波形相对照。
实验结果与之完全符合。
3.驱动频率和积分时间测量将实验仪的频率设置恢复为“0”档,同时确认积分时间设置为“00”档。
用CH1 做观测FC信号的同步(示波器扫描频率调至2ms 左右,便于观察)。
用CH2 测量SH 信号。
发现SH和FC信号周期相同。
4) 保持CH1 探头不变,增加积分时间,用CH2 探头分别测量UG、UR 和UB 信号,观测这三个信号在积分时间改变时的信号变化。
积分时间0档02 R积分时间0档02 G 积分时间0档02 B积分时间0档05 R 积分时间0档05 G积分时间0档05 B 积分时间0档08 R积分时间0档08 G积分时间0档08 B5)展开SH 信号,观测SH 波形和CCD 输出波形之间的相位关系。
R GB6)重复上述步骤观测FC 波形和CCD 输出波形之间的相位关系。
基于Verilog的课程设计多路彩灯控制器指导老师:瓮嘉民李小魁班级:0941电子科学与技术成员:周俊冉200910711103李静200910711108马庆蒙200910711110目录1.EDA简介2.彩灯控制器的设计方案3.程序设计和源程序4.波形仿真分析5.硬件测试引脚锁定图6.电路模块图7.实物图8.心得体会9.扩展思路10.参考文献1.EDA简介EDA技术(即Electronic Design Automation技术)就是依赖强大的计算机,在EDA工具软件平台上,对以硬件描述语言HDL(Hardware Description Language)为系统逻辑描述手段完成的设计文件,自动的完成逻辑编译、化简、分割、综合、布局布线以及逻辑优化和仿真测试,直至实现既定的电子线路系统功能。
他在硬件实现方面融合了大规模集成电路制造技术、IC版图设计、ASIC测试和封装、FPGA(Field Programme Gate Array)CPLD(Complex Programme Logic Device)编程下载和自动测试等技术:在计算机辅助工程方面融合了计算机辅助设计(CAD),计算机辅助制造(CAM),计算机辅助测试(CAT),计算机辅助工程(CAE)技术以及多种计算机语言的设计概念;而在现代电子学方面则容纳了更多的内容,如电子线路设计理论、数字信号处理技术、数字系统建模和优化技术及长线技术理论等。
硬件描述语言HDL是EDA技术的重要组成部分,常见的HDL主要有VHDL、Verilog HDL、ABEL、AHDL、System Verilog和System C。
其中VHDL、Verilog HDL和现在的EDA设计中使用最多,并且我们学习的是Verilog的编程方法及实用技术。
2.彩灯控制器的设计方案彩灯控制器的核心设计部分是分频器的使用,显示部分相对比较容易。
分频器的设计方法多种多样,我们设计的是比较常见的一种。
微 处 理 机M I CROPROCESS ORS基于VHDL 的彩色线阵CC D 驱动时序设计郭艳平,丁万山(南京航空航天大学,南京210016) 摘 要:分析了彩色线阵CCD -TCD2558D 驱动时序信号,选用复杂可编程逻辑器件CP LD 作为硬件设计平台,使用VHDL 语言对其驱动时序进行硬件描述,采用MAX +P LUS Ⅱ对所设计的驱动时序进行仿真,仿真结果表明产生的驱动脉冲与彩色线阵CCD -T CD2558D 所需驱动脉冲的时序关系完全吻合,能够达到CCD 的驱动时序要求。
关键词:可编程逻辑器件;VHDL 语言;电荷耦合器件;驱动时序中图分类号:T N79 文献标识码:A 文章编号:1002-2279(2008)05-0141-03D esi gn of Color i zed L i n er CCD D r i v i n g Sequence Ba se on VHDLG UO Yan -p ing,D I N G W an -shan(College of A uto m ation Engineering,N anjing U niversity of A eronautics and A stronautics,N anjing 210016,China ) Abstract:By analyzing the driving sequential signal of col orized liner CCD -T CD2258D,carrying out CP LD as the hardware designing p latfor m ,using VHDL language t o p r ocess hard ware descri p ti on and adop ting MAX +P LUS Ⅱt o make si m ulati on analysis t o its driving sequence,the result which shows that ti m e sequence are exactly match bet w een the generating driving pulse and that required by col orized liner CCD -T CD2258D,s o that can p r ove the design method can meet the working require ment of CCD.Key words:CP LD;VHDL Language;CCD;D riving sequence1 引 言CCD (Charge Coup led Devices,电荷耦合器件)具有光电转换、信息存储等功能,而且集成度高、动态范围大、信噪比高,在图像传感和非接触测量领域得到广泛的应用[1]。
线阵CCD图像传感器驱动电路的设计上传者:卤煮火烧浏览次数:7131引言电荷耦合器件(CCD.Charge(Couple Device)是20世纪60年代末期出现的新型半导体器件。
目前随着CCD器件性能不断提高.在图像传感、尺寸测量及定位测控等领域的应用日益广泛.CCD应用的前端驱动电路成本价格昂贵,而且性能指标受到生产厂家技术和工艺水平的制约.给用户带来很大的不便。
CCD驱动器有两种:一种是在脉冲作用下CCD器件输出模拟信号,经后端增益调整电路进行电压或功率放大再送给用户:另一种是在此基础上还包含将其模拟量按一定的输出格式进行数字化的部分,然后将数字信息传输给用户,通常的线阵CCD摄像机就指后者,外加机械扫描装置即可成像。
所以根据不同应用领域和技术指标要求.选择不同型号的线阵CCD器件,设计方便灵活的驱动电路与之匹配是CCD应用中的关键技术之一。
本文以TCD1501C型CCD图像传感器为例.介绍了其性能参数及外围驱动电路的设计.驱动时序参数可以通过VHDL程序灵活设置.该电路已成功开发并应用于某型非接触式位置测量产品中。
2 CCD工作原理CCD是以电荷作为信号,而不同于其他大多数器件是以电流或者电压为信号,其基本功能是信号电荷的产生、存储、传输和检测。
当光入射到CCD的光敏面时.CCD首先完成光电转换.即产生与入射光辐射量成线性关系的光电荷。
CCD的工作原理是被摄物体反射光线到CCD器件上.CCD根据光的强弱积聚相应的电荷.产生与光电荷量成正比的弱电压信号,经过滤波、放大处理,通过驱动电路输出一个能表示敏感物体光强弱的电信号或标准的视频信号。
基于上述将一维光学信息转变为电信息输出的原理,线阵CCD可以实现图像传感和尺寸测量的功能。
图1为CCD 光谱响应曲线。
3 驱动电路的实现线阵CCD TCD1501C的主要技术指标如下:像敏单元数为5 000;像元尺寸为7μm×7μm;像元中心距为7μm;像元总长为35 mm;光谱响应范围为400 nm-1000 nm.光谱响应峰值波长为550 nm,灵敏度为10.4 V/lx.s~15.6 V/lx.s。
目录1 技术指标 (2)1.1 实验目的 (2)1.2 实验要求 (2)2 实验所需设备及实验原理 (2)2.1实验设备 (2)2.2 CPLD驱动基本原理 (2)2.3 CCD驱动时序要求 (5)3 实验内容及步骤 (8)3.1实验内容 (8)3.2实验步骤 (8)4 实验过程分析 (9)4.1 变频部分 (9)4.2 SH信号与Φ1、Φ2信号部分 (9)4.3 SP、CP、RS信号部分 (12)5实验结果分析及调试过程 (14)5.1 软件仿真结果分析 (14)5.2 测试结果分析 (15)5.3 调试过程 (17)6 心得体会 (17)7 参考文献 (18)1基于VHDL的彩色线阵CCD驱动电路设计1 技术指标1.1 实验目的1、了解线阵CCD驱动时序要求;2、学会QuartusII软件基本使用方法;3、学会使用VHDL语言编写基本逻辑时序并设计出线阵CCD驱动电路。
1.2 实验要求1、能够独立使用QuartusII软件编写时序;2、能够使用CPLD驱动板让线阵CCD正常工作。
2 实验所需设备及实验原理2.1实验设备1、CPLD驱动板一块(附带下载线一条)以及12V电源;2、双踪示波器一台(带宽50MHZ以上);3、计算机一台以及QuartusII软件一套。
2.2 CPLD驱动基本原理CPLD驱动板分布图如图1所示:2图1 CPLD驱动板分布CPLD驱动板主要包括电源模块、时钟输入模块、JTAG下载模块、主芯片、驱动信号处理模块、CCD模块、测试区以及扩展I/O口。
各模块内容以及功能如下:电源模块:包括12 V电源输入和12V转5V电路,实验板有三个电源开关,分别为NO1、NO2、NO3,NO1为实验板电源输入开关,闭合此开关12V转5V 电路工作;NO2为5V电源开关,闭合此开关实验板有5V电源输入;NO3为CCD电源开关,闭合此开关CCD模块有12V电源输入。
时钟输入模块:时钟输入模块为50MHZ有源晶振提供,可以在CPLD模块中分频和倍频得到不同的频率时钟。
JTAG下载模块:该模块是程序JTAG下载口,通过该模块实现程序下载。
CPLD模块:该模块包涵一块CPLD芯片和I/O口。
驱动信号处理模块:该模块包涵十二路非门电路,实现对驱动信号的处理,提高驱动信号的驱动能力。
测试点:该模块包涵各路信号的检测点。
3CCD模块:该模块包涵CCD芯片以及外围电路,该模块与CPLD下载板通过一条20芯排线连接。
基于CPLD的CCD驱动原理图如图2所示:图2基于CPLD的CCD驱动原理图图中左边clk是时钟输入程序模块,中间CCD模块是VHDL编写的CCD 驱动程序形成的bdf程序模块,右边输出的是CCD驱动信号输出。
452.3 CCD 驱动时序要求图3 CCD 驱动信号的时序6如图3所示,整个CCD 的驱动信号的各个支路的相互关系已经给出。
其中具体要求如图4所示。
图4 各个支路的相互关系其中驱动时序中各个时间参量的要求和各个信号的时钟特性分别如表1、表2所示。
表1 驱动信号中各个时间参量的要求表2 驱动信号中各个信号的时钟特、特性要求73 实验内容及步骤3.1实验内容(1)使用QuartusII软件进行编程实验,完成分频程序、延时程序和CCD驱动时序的编程并进行仿真,与实验要求比较是否合格;(2)使用QuartusII软件下载程序至CPLD驱动板,用双踪示波器测试各个信号是否符合实验要求;(3)使用CPLD驱动板驱动线阵CCD芯片,用双踪示波器观测CCD是否正常工作。
3.2实验步骤(1)基本编程,打开QuartusII软件,建立新工程,建立新vhdl文件和波形文件并保存在相应工程内,编写分频程序并仿真,比较仿真结果和自己理论结果是否一致,按照理论结果调试程序直到仿真结果符合理论要求;(2)下载文件,打开CPLD驱动板电源(即NO1和NO2开关),使用QuartusII 软件和JTAG下载线下载工程文件,下载完毕后用双踪示波器观察相应管脚输出波形是否正确,若有问题请指导老师检查;(3)编写CCD驱动程序,打开QuartusII软件,建立新工程,建立新vhdl 文件和波形文件并保存在相应工程内,编写程序并仿真,比较仿真结果是否符合驱动要求,按照驱动要求调试程序直到仿真结果符合驱动要求。
(4)下载CCD驱动程序,按照第二步下载CCD驱动程序文件至CPLD驱动板,用双踪示波器观测Q1\Q2\SH\CP\RS\CP管脚输出波形是否正确,若有问题请指导老师检查;(5)驱动CCD芯片,在第四步成功的基础上打开CCD电源开关(即NO3开关),用双踪示波器观察CCD是否正常工作,若有问题请指导老师检查。
8(6)关闭示波器;(7)关闭CPLD驱动板电源。
4 实验过程分析根据设计要求编写程序,分以下几个步骤4.1 变频部分首先将50MHz的CLK信号分至25MHz、12.5MHz、6.25MHz等。
利用触发信号使一个整数变量增加或减少。
整数的数值对应不同的驱动频率,利用此原理即可实现2到5个频率(或更多)的切换。
本实验中利用更为简单的方法实现2个频率的相互切换。
利用高低电平的变换改变驱动频率,不仅效果良好,而且节省寄存器资源。
process(clk,ad)beginif(clk'event and clk='1')then if (ad='0') thenclkin<=clk1;elseclkin<=clk2;end if;end if;end process;4.2 SH信号与Φ1、Φ2信号部分对于控制SH信号和Φ1信号的相互关系有下列程序给出。
Φ2由Φ1取反得到。
Φ1、Φ2效果如图5所示。
SH信号和Φ1信号相互关系如图6所示。
process (clkin)variable count:integer:=0;variable q:integer:=0;beginif(clkin'event and clkin='1')thenif (count < N) thenif (count >= A and count <= B)or( count > C and count <D) then9SH0<='0';SH1<='0';elsif (count > B and count <=C) thenSH0<='1';SH1<='0';elseSH0<='0';SH1<='1';end if;if (q=12 )thenq:=0;clks <= not clks ;end if;if (count=0) thenq:=0;clks <='1';end if;count:=count+1;q:=q+1;elsecount:= 0 ;end if ;end if;end process;1011图6 SH 信号和Φ1信号的相互关系效果图 图5 Φ1、Φ2效果图4.3 SP、CP、RS信号部分由于三路信号结构类似,所以只写出其中一个SP信号,然后通过延时实现另外两路信号.在编写Φ信号是,对于其中的一个计数器的值q进行判断来获取另外一路信号CP。
程序如下所示。
case q iswhen P=> SP <= '1';when otheCP=> SP <= '0';end case;CP的实现由下面延时程序实现。
RS信号的实现与之类似,不予叙述。
Φ1与SP的效果图如图7所示。
SP与CP的相互关系效果如图8所示process(SP)beginif(clkin'event and clkin='1')thenD <=CP;CP <= D;end if;end process;1213图7 Φ1与RS 的效果图图8 RS 与CP 的效果图整个时序图的仿真效果如图9所示。
其中信号经过反相。
图9 整个时序图的仿真效果5实验结果分析及调试过程结果分析分为软件仿真结果分析和测试结果分析两个部分。
1. 利用Quartus软件在计算机上进行仿真,观察结果图形的正确与否来改写程序,得出最后仿真结果图,如图9所示。
2. 将正确的程序通过JTAG下载线下载入CPLD模块中,利用双踪示波器观察SH、Φ1、Φ2、SP、CP、RS等相应管脚输出波形是否正确,以及观察CCD 是否正常工作。
5.1 软件仿真结果分析对第一次仿真得到的图像进行观察后,发现有一下问题。
如表3所示表3 软件仿真后的问题及解决办法145.2 测试结果分析根据TCD225D时序图的要求进行编程,写好相应的程序代码后,按要求分配管脚。
通过数据线将编译好的程序下载到芯片中,接通电源观察CCD效果。
出现以下问题。
如表4所示表4 测试遇到的问题及解决办法调整完毕后,将一棒状物遮在CCD上时,出现预期现象,其中标准频率的现象效果如图10所示。
变低频信号后的现象效果如图11所示。
1516图10 标准频率的输出效果图11变频信号的输出效果5.3 调试过程及程序代码第一次去实验室测试时,程序成功下载到CPLD模块中,通过双踪示波器观察各个引脚的输出波形大致是正确的。
打开CCD电源开关,用遮挡物遮住CCD 的一部分,示波器中显示的波形有预期的变化。
但是,由于程序编写原因导致采样脉冲时间过长,使得波形与实验要求还是有一定的差别,从而重新编写改善程序。
在第二次实验室的测试过程中,一开始由于电脑原因导致程序未能成功下载到CPLD模块中。
双踪示波器观察各个引脚的输出波形状中,SH短脉冲脉冲是朝下的,并不符合实验要求,并且通过示波器同时观察Q1和Q2两个信号脉冲时第二个脉冲波形横向来回晃动,很不稳定。
且打开CCD电源开关后,示波器没有观测到CCD的波形情况,说明此次调试没有成功驱动CCD。
改善程序后,我们去实验室进行第三次测试。
运行良好。
结果正确,现象如图10和图11所示。
程序代码:略。
6 心得体会CCD驱动设计程序的开放性实验即将结束,这次课外设计性实验对我们而言受益匪浅。
由于是上学期学习了光电技术课程,所以在对线阵CCD驱动程序的设计过程中碰到了些许困难。
然而我们深知CCD在光电技术中是很注重应用的,所以我们认为这是一个非常好的能够让我们充分学习CCD和它的驱动电路知识的机会。
在此次开放性实验中我们回顾了线阵CCD驱动原理和它的脉冲时序及相位关系,掌握了二相线阵CCD的基本工作原理,理清了其中的思路。