Zynq UltraScale+ MPSoC智能视频平台1:Camera Link接收IP

       Camera Link是一种串行通信协议标准,基于美国国家半导体公司的Channel-link,设计用于摄像机接口应用,目的是规范科学和工业视频而设计的产品包括相机、电缆和框架。Camera Link使用1到3个通道链路收发芯片,根据通道的多少分为Base、Mediaum和Full模式。每个通道有4个7位串行器。Camera Link 在Base模式下使用28bit来表示数据和信号,其中24位图像数据,3位视频同步信号(“数据有效”、“帧有效”和“行有效”),1位备用位。Camera Link标准要求这28位通过4个串行差分对传输。并行数据时钟与数据一起传输,数据被序列化成7:1,数据流和时钟在五个LVDS对上传输,接收器解析这五对差分信号。为了传输或接收串行视频,PLL或SERDES块必须生成一个7x时钟。为了对数据进行反序列化,可以使用移位寄存器和计数器。移位寄存器捕获每个序列化的位,然后在数据计数器达到其最终值时,将数据转换到并行时钟域。

       Camera Link在实际设计中会采用解串芯片恢复出并行数据,这无疑会增加硬件成本以及板子面积。另外一种方式是使用FPGA内部逻辑解析串行数据,可以避免这些缺点,使设计出的板子更加的简洁,而且解串的逻辑也不会消耗太多资源。下图是Camera Link的时序,串行时钟占空比3:4,FPGA在检测到时钟呈现1100011的波形时,同时采集图像数据,共28bit。根据每个bit代表含义及数据位置解析出一个时钟的数据,从而恢复出完整图像。

        Camera Link的在Zynq UltraScale+ MPSoC的解串过程设计到几个FPGA原语,IDELAY3、ISERDESE3和IDELAYCTRL。时钟通路有两个功能,一个功能是通过PLL或MMCM备频时钟得到7x的串行时钟、解析数据的7x/8并行时钟和7x/4的ISERDES时钟,另外一个功能是通过IDELAYE3和ISERDESE3得到经过延时的数据,这个数据可以用于检测1100011的时钟序列,将其他数据对齐,并通过Gearbox差速器从8bit的数据转换为7bit的数据。时钟通路IDELAYE3原语用到的模式为TIME模式,需要IDELAYCTRL逻辑输入Ready信号。再恢复出7bit数据之后按照每个bit的对应关系得到场有效、行有效和24bit有效数据。

       Camera Link输入解析逻辑使用Vivado工具打包成IP,方便发布以及不同的工程调用。场有效Vactive在图像的像素传输周期都为高,行有效Hactive代表每一行的有效数据,根据这两个信号可以将其送入其他模块,加上输出时钟Pclk,构成了解析完Camera Link之后的后端输出逻辑。

       下一节讲IP核的调用,配合VDMA送入DDR,从内存导出数据,利用图像查看软件可以看到采集到的图像。

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值