CameraLink接口时序控制
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CameraLink接口
1.CameraLink接口简介
1.1CameraLink标准概述
Camera Link 技术标准是基于 National Semiconductor 公司的 Channel Link 标准发展而来的,而 Channel Link 标准是一种多路并行 LVDS 传输接口标准。
低压差分信号( LVDS )是一种低摆幅的差分信号技术,电压摆幅在 350mV 左右,具有扰动小,跳变速率快的特点,在无失传输介质里的理论最大传输速率在。
90 年代美国国家半导体公司( National Semiconductor )为了找到平板显示技术的解决方案,开发了基于 LVDS 物理层平台的 Channel Link 技术。此技术一诞生就被进行了扩展,用来作为新的通用视频数据传输技术使用。
如图所示, Channel Link 由一个并转串信号发送驱动器和一个串转并信号接收器组成,其最高数据传输速率可达。数据发送器含有 28 位的单端并行信号和 1 个单端时钟信号,将 28 位 CMOS/TTL 信号串行化处理后分成 4 路 LVDS 数据流,其 4 路串行数据流和 1 路发送 LVDS 时钟流在 5 路 LVDS 差分对中传输。接收器接收从 4 路 LVDS 数据流和 1 路 LVDS 时钟流中把传来的数据和时钟信号恢复成28 位的 CMOS/TTL 并行数据和与其相对应的同步时钟信号。
图 camera link接口电路
1.2CameraLink端口和端口分配
1.2.1端口分配
在基本配置模式中,端口 A 、 B 和 C 被分配到唯一的 Camera Link 驱动器 / 接收器对上;在中级配置模式中,端口 D 、 E 和 F 被分配到第二个驱动器 / 接收器对上;在完整配置模式中,端口 A 、 B 和 C 被分配到第一个驱动器 / 接收器对上,端口 D 、 E 和 F 被分配到第二个驱动器 / 接收器对上,端口 G 和 H 被分配到第三个驱动器 / 接收器对上。表给出了三种配置的端口分配, Camera Link 芯片及连接器的使用数量情况。
表 3种配置模式的端口分配
图各种配置下的端口连接关系
1.2.2端口的位分配
从表中我们可以看出在 3 种 Camera Link 配置模式中,图像数据位是怎样分配到端口的。这种位分配方式已经被应用于市场上最流行的相机上了。
表 Camera Link 接口的端口分配
如果只用端口 D 和 G ,那么它们与器件的连接方法与端口 A 相同。同样,如果使用端口 E 和 H ,它们与器件连接方法同端口 B 的相同,端口 F 的与端口 C 的相同。
如果相机在每个周期内仅输出 1 个像素,那么就使用分配给像素 A 的端口;如果相机在每个周期内输入 2 个像素,那么使用分配像素 A 和像素 B 的端口;如果在每个周期内输出 3 个像素,那么使用分配给像素 A 、 B 和 C 的端口;依次类
推至相机每周期输出 8 个像素,那么分配给 A ~ H 的 8 个端口都将被使用。2.CameraLink接口模块设计
2.1功能描述
该模块主要根据被测FPGA发来的图像地址信号将DDR2中的指定图像数据读取出来,并且分五路发送给CameraLink接口,由CameraLink图像采集卡接收并传给上位机显示。
2.2接口描述
CameraLink图像采集端口模块的接口信号如图所示:
图 CameraLink图像采集端口示意图
表各端口的接口定义
CameraLink接口信号时序如图所示:
图 CameraLink图像采集电路的时序图
2.3功能实现
Cameralink图像采集接口电路主要包含两个子模块,如图所示,数据读取分发模块负责从DDR2中读取处理好的CMOS图像,并按指定的数据编排要求分发给5
路CAMERALINK数据缓冲输出模块,数据缓冲输出模块完成5路CAMERALINK数据的缓冲,并按指定时序要求发送给DS90CR287。
图 CameraLink图像采集软件流程框图
2.3.1数据读取分发模块
数据读取分发模块负责在帧行同步信号的控制下,按照地址使能和地址信号从DDR2中读取处理好的CMOS图像数据,并按指定的数据编排要求发送给cameralink 数据缓冲输出模块。
该模块也分为两个子模块:地址映射模块和读取DDR模块。地址映射模块的主要功能是根据被测FPGA给的行地址转化成对应DDR的行起始地址,转化完成后把DDR地址发给DDR读取模块,DDR读取模块负责把该行的10240个像素(12bit)全部读取到五路缓冲模块中。
2.3.2数据缓冲输出模块
缓冲模块总共有五路,把一行图像数据平均分到五路缓冲后输出。每路CameraLink缓冲模块包括2个双口RAM,采用乒乓读写的工作模式,一个双口RAM 读DDR数据的同时另一个双口RAM发送数据。双口RAM配置为两端口独立时钟模式,以隔离DDR时钟和CamerLink数据域的时钟。另外,两端口可以配置为不同的数据位宽,以方便实现DDR2数据位宽64位到16位数据位宽的变换。由于CamerLink输出时12位的,因此在款冲模块处还要有一个16位位宽转换位12位位宽的子模块来完成位宽的转换。
2.4modelsim仿真结果
图 modelsim仿真结果
如图,被测FPGA每来一个行同步,CameraLink模块获取行地址后读取DDR2中的数据写入缓存模块,等到下一个行同步来的时候把所读的数据从缓存模块中输出。实际要求的是每个行同步来后要读取一行数据,大小为2048x12bit,为了缩小仿真时间,仿真时没一行的数据长度为:80x12bit。
图五路CameraLink仿真输出
如图,当下个行同步来的时候缓存数据输出,输出的数据时连续的。