CameraLink图像采集接口电路1(2)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CameraLink 图像采集接口电路
1.Camera Link标准概述
Camera Link 技术标准是基于 National Semiconductor 公司的 Channel Link 标准发展而来的,而 Channel Link 标准是一种多路并行 LVDS 传输接口标准。
低压差分信号( LVDS )是一种低摆幅的差分信号技术,电压摆幅在 350mV 左右,具有扰动小,跳变速率快的特点,在无失传输介质里的理论最大传输速率在 1.923Gbps 。
90 年代美国国家半导体公司( National Semiconductor )为了找到平板显示技术的解决方案,开发了基于 LVDS 物理层平台的 Channel Link 技术。
此技术一诞生就被进行了扩展,用来作为新的通用视频数据传输技术使用。
如图1 所示, Channel Link 由一个并转串信号发送驱动器和一个串转并信号接收器组成,其最高数据传输速率可达 2.38G 。
数据发送器含有 28 位的单端并行信号和 1 个单端时钟信号,将 28 位 CMOS/TTL 信号串行化处理后分成 4 路 LVDS 数据流,其 4 路串行数据流和 1 路发送 LVDS 时钟流在 5 路 LVDS 差分对中传输。
接收器接收从 4 路 LVDS 数据流和 1 路 LVDS 时钟流中把传来的数据和时钟信号恢复成 28 位的 CMOS/TTL 并行数据和与其相对应的同步时钟信号。
图1 camera link接口电路
2.Channel Link标准的端口和端口分配
2.1 .端口定义
一个端口定义为一个 8 位的字,在这个 8 位的字中,最低的 1 位( LSB )是 bit0 ,最高的 1 位( MSB )是 bit7 。
Camera Link 标准使用 8 个端口,即端口 A 至端口 H 。
2.2 .端口分配
在基本配置模式中,端口 A 、 B 和 C 被分配到唯一的 Camera Link 驱动器 / 接收器对上;在中级配置模式中,端口 D 、 E 和 F 被分配到第二个驱动器 / 接收器对上;在完整配置模式中,端口 A 、 B 和 C 被分配到第一个驱动器 / 接收器对上,端口 D 、 E 和 F 被分配到第二个驱动器 / 接收器对上,端口 G 和 H 被分配到第三个驱动器 / 接收器对上(见图2 )。
表1 给出了三种配置的端口分配, Camera Link 芯片及连接器的使用数量情况。
表1 3种配置模式的端口分配
每一个 Camera Link 驱动器都有标注着从 TX0 至 TX27 的 28 个数据输入引脚,相应的接收器有标注着从 RX0 至 RX27 的 28 个数据输出引脚。
2.3 .端口的位分配
从表2 中我们可以看出在 3 种 Camera Link 配置模式中,图像数据位是怎样分配到端口的。
这种位分配方式已经被应用于市场上最流行的相机上了。
如果只用端口 D 和 G ,那么它们与器件的连接方法与端口 A 相同。
同样,如果使用端口 E 和 H ,它们与器件连接方法同端口 B 的相同,端口 F 的与端口 C 的相同。
如果相机在每个周期内仅输出 1 个像素,那么就使用分配给像素 A 的端口;如果相机在每个周期内输入 2 个像素,那么使用分配像素 A 和像素 B 的端口;如果在每个周期内输出 3 个像素,那么使用分配给像素 A 、 B 和 C 的端口;依次类推至相机每周期输出 8 个像素,那么分配给 A ~ H 的 8 个端口都将被使用。
3.图像采集接口电路的具体实现
对于XX可见光相机时序控制FPGA软件测试设备技术项目,仿真fpga将处理完的cmos 数据保存到ddr2中,根据V4传给V5的24组I2C数据,确定将要片面读取DDR2中处理好的CMOS图像的片面地址,然后将所要选取的cmos图像数据从ddr2中读取出来,并且通过5路cameralink显示出来;对于XX可见光信号处理FPGA软件测试设备技术项目,因为tlk2711的处理频率为100mhz,而DS90CR287的主要工作频率为85mhz,所以经过V4处理过的5路图像数据先要保存进ddr2,然后再通过缓存将图像读出来并通过cameralink显示出来,从上面可以看出,两个项目的cameralink接口是相似的,都是从ddr2的控制器mig软核的用户端写入地址,然后在时钟使能的驱动下,将图像数据读取出来,然后通过cameralink接口传至上位机进行显示,因为DS90CR287的输入数据位为28位,而DDR2的数据位为64位,所以需要设计一个数据读取及分发模块以及一个cameralink数据缓冲输出模块,具体软件流程框图如图3:
图1 cameralink图像采集软件流程框图
当数据从cameralink数据缓冲模块输出后进入DS90CR287,然后28位数据在时钟的控制下变为4路LVDS信号,然后再通过DS90CR288输出变为28位的CMOS数据,传至cameralink图像采集卡,最后通过图像采集卡传至上位机,其cameralink硬件流程框图如图2所示:
Cameralin k数据缓冲单元
DS90CR287
Lvds_data_1
Lvds_data_2
Lvds_dat a_3
Data_a_[7:0]
Data_b_[7:0]
Data_c_[7;0]
Fval
Dval
Lval
Spare
DS90CR288
Lvds_data_4
Lvds_clock
Cameralink
图像采集卡
Data_out
上位机
Transmit_clock_in
Data_a_out_[7:0]Data_b_out_[7:0]Data_c_out_[7;0]
Fval Dval Lval
Receive_clock 图2 cameralink图像采集硬件流程框图
28位数据信号中包括三个数据端口:A口(8位)即data_a_[7;0]、B口(8位)即data_b_[7;0]、C口(8位)即data_c_[7;0],和四个控制信号FVAL(帧有效)、DVAL(数据有效)、LVAL(行有效)、SPARE(空,暂时未用),另外DS90CR287还有一个85mhz时钟输入,经过Camera Link芯片转换后的时钟信号是整个cameralink图像采集电路的同步驱动信号,数据控制信号都和该时钟信号同步,其时序图如图3所示:
图3 DS90CR287的工作时序图
各端口的配置和信号类型如下表;。