采用FPGA进行SDI输入输出时钟同步设计

模块综述


    目前SDI传输系统的视频传输都需要进行时钟恢复和去抖,导致每一级都耗费了较大的成本,而且不利于板卡的布局布线。因此该设计的优点在于每一级传输不需要si5324等芯片的费用,FPGA内部不同通道的数据也会同步到同一个主时钟上,节省了时钟资源。此外,该模块仍然遵循BT1120的数据协议。不足之处在于,在输出SDI端需要进行帧缓存,否则这种异步传输方式无法直接输出,需要重新生成标准SDI的BT1120格式才可。

采用FPGA进行SDI输入输出时钟同步设计_第1张图片

  如图所示为顶层模块的模块关系图,数据流的工作过程如下描述。该模块分为两个独立的子模块,编码模块和解码模块。对于编码模块sdi_encoder,外部BT1120数据流首先进入sdi_resync进行时域转换,转换后的时钟(本地时钟)必须与原来基本同频,譬如源时钟为74.2500MHz(A时域),本地时钟为74.2499MHz(B时域),基本需要保持在200ppm以内的误差。同步完成之后进入sdi_nrzi_encoder进行非归零反转码的编码。编码完成之后可由FPGA的serdes发送出去,当然发送参考时钟需要和编码后的时钟同源,即需要为本地时钟。
  若为解码,则将待解码数据先进入sdi_nrzi_decoder模块进行非归零反转码的解码,然后进入sdi_framer模块进行TRS数据字对齐,输出结果到sdi_resync模块再次同步到本地时钟。
从上述的描述来看,无论是在B时域的输出还是C时域的输出都不是标准的SDI格式BT1120数据流,即每一行的消隐区的长度会不一致。对于A

你可能感兴趣的:(系统架构,计算机视觉,图像处理,fpga开发,嵌入式硬件)