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时钟。为了对数据进行反序列化,可以使用移位寄存器和计数器。移位寄存器捕获每个序列化的位,然后在数据计数器达到其最终值时,将数据转换到并行时钟域。

Zynq UltraScale+ MPSoC智能视频平台1:Camera Link接收IP_第1张图片

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

Zynq UltraScale+ MPSoC智能视频平台1:Camera Link接收IP_第2张图片

Zynq UltraScale+ MPSoC智能视频平台1:Camera Link接收IP_第3张图片

        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有效数据。

Zynq UltraScale+ MPSoC智能视频平台1:Camera Link接收IP_第4张图片

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

Zynq UltraScale+ MPSoC智能视频平台1:Camera Link接收IP_第5张图片

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

你可能感兴趣的:(4EV智能视频平台,嵌入式硬件)