基于CPLD的CCD相机图像信号模拟器的设计

2007-06-18 10:53:39来源: 微计算机信息
1 引言

  多年来CCD 器件以体积小、重量轻、功耗小、工作电压低和抗烧毁等优点以及在分辨率、动态范围、灵敏度、实时传输、自扫描等特性,广泛地应用于摄像器材、气象、航天航空、军事、医疗以及工业检测等众多领域。

  在对某多通道高速CCD相机输出图像信号的采集系统设计过程当中,我们需要对此系统在正式使用之前进行调试,来测试它能否正常工作。本文利用CPLD和LVDS严格对CCD相机的输出接口进行了模拟,并且以LVDS方式输出图像信号。

2 相机系统输出接口信号及Camera link 接口

  此CCD 相机最终的输出信号符合camera link 接口标准,每个通道输出3072个像元后,接着输出1024个零电平像元,数据采用LVDS差分输出,每通道的输出信号包括:控制信号:像元时钟DCLK,行同步信号LVAL和外触发信号DTRG;数字图像信号(8位并行输出)DATA。各信号波形大致如图1 所示:


图1

  ·DCLK像元时钟频率为31MHz,由62MHz晶振产生后二分频得到。以LVDS信号输出。

  ·行同步信号LVAL在输出3072个像元和1024个零电平像元时,LVAL为低电平,在两个有效行中间会跳变几个无效的像素点,跳变无效像素点时,LVAL为高电平。跳过的像素点的数目未定,初步设为固定4个像素。以LVDS信号输出。

  ·外触发信号DTRG是用来触发采集卡的工作,它与LVAL信号下降沿对齐,高电平宽度为像元时钟一个周期的宽度。

  为提高传输效率以及降低传输成本,CCD相机将以上图像信号按Camera Link 标准转换成低电平差分信号(LVDS)输出。系统采用与CCD 相机相匹配的National semiconductor芯片组DS90C031W/ML 来完成TTL电平信号和LDVS信号之间的转换,转换接口芯片如图2 所示,一个接口转换芯片可以将4个信号转换成4对符合TIA/EIA-644 标准的LVDS 数据流。另外还有两个使能端,在工作时,EN接低电平, 接高电平。此芯片的最大传输速度可达77.7MHz,供电电压为+5V,符合系统需要。最后输出信号接到图像采集系统的输入端。在本文的设计当中,只用到驱动芯片,接收芯片放在图像采集系统电路中。

3硬件结构

  本设计的硬件电路主要由三部分组成,结构框图如图3所示。包括晶振电路、

  CPLD、输出接口(9片DS90C031)。整个电路的核心部分是CPLD,采用ALTERA公司的MAX7000S系列中的EPM7128SLC84-15芯片。它除了产生控制信号外,还要模拟一个灰度图象的数据源。62MHz晶振用来产生CPLD工作所需要的时钟。DSC90C031用来把CPLD产生的图像信号和控制信号(TTL信号)转化成LVDS信号,并输出。其中每两片能产生一个通道的8位的图像输出信号,共有4个通道,第9片用来转换控制信号并输出。

  在电路设计过程中,为了提高系统的可靠性,要注意以下问题:1、CPLD器件的每个供电电压管脚都要外接0.1μ电容来进行滤波。CPLD输出信号也要进行滤波之后再接到DSC90C031。2、在输出端,要使用终端电阻实现对差分传输线的最大匹配,阻值一般在90——130?之间,系统也需要此终端电阻来产生正常工作的差分电压。必要时也可使用2个阻值各为50?的电阻,并在中间通过一个电容接地,以滤去共模噪声。

4 CPLD程序设计

  因为考虑到设计后期还要在CPLD前端加单片机对图像信号的变化进行各种控制,所以要用到大约50个I/O口的操作,所以选用了ALTERA公司的MAX7000S系列中的EPM7128SLC84-15芯片,该芯片共有84个引脚,内部集成了6000门,其中典型可用门为2500个,有128个逻辑单元,60个可用I/O口,可单独配置为输入、输出及双向工作方式,2个全局时钟及一个全局使能端和一个全局清除端。它支持多电压工作,其传输延时为7.5ns,最高工作频率高达125MHz。我们采用ALTERA公司的第三代开发软件Max plus II进行仿真、综合和下载。

  整个程序分三个模块:u1,u2,u3,其中u1是分频模块,用4输出计数器对输入的62M主时钟(mclk)进行2分频,u2是图像数据产生模块,用8位的计数器来产生灰度图象数据。u3模块是利用13位的计数器来产生控制信号,严格按照要求的时序关系,分别产生像元时钟(DCLK)、行同步信号(LVAL)、外触发信号(DTRG)。部分源程序如下:
begin

  u1:fenpin port map(mclk,clr0,set,clk);? //引用分频模块

  u2:count8 port map(clk,clr1,set,countout8);//引用8位计数器

  u3:count13 port map (clk,clr2,set,countout13);//引用13位计数器

  set<='1';

  clr1<='0';

  dclk<=clk;

  process(clk)

  begin

  if(clk'event and clk='1')then

  if (countout13>=4096 and countout13<=4099)then

  lval<='1';

  data<=countout8;

  else

  lval<='0';

  end if;

  if(countout13=4099)then

  dtrg<='1';

  clr2<='1';

  else

  dtrg<='0';

  clr2<='0';

  end if;

  

if(countout13>=0 and countout13<=3071)then

  data<=countout8;//输出有效像元

  end if;

  if (countout13>=3072 and countout13<=4095)then

  data<=0;//输出零像元

  end if;

  end if;

  end process;

  end rtl;

  时序仿真图如下图所示:

5总结

  编译仿真通过后,在顶层用原理图进行综合实现,然后烧入芯片进行实验,并根据实际运行情况,对设计进行改进。如根据实际器件的延时特性,在设计中某些地方插入适当的延迟单元以保证各时延一致。

  根据本文介绍的设计方案,采用CPLD技术设计的多路CCD图像信号模拟器结构简单,实现方便,易于修改。在图像采集卡的测试过程中,发挥了重要作用。

关键字:接口  通道  输出  电平

编辑: 引用地址:http://www.eeworld.com.cn/designarticles/fpgaandcpld/200706/14178.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
接口
通道
输出
电平

小广播

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 医疗电子 工业控制

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved