基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

 

前言

CameraLink协议

CameraLink协议是一种专门针对机器视觉应用领域的串行通信协议,它使用低压差分信号(LVDS)进行数据的传输和通信。CameraLink标准是在ChannelLink标准的基础上多加了6对差分信号线,其中4对用于并行传输相机控制信号,另外2对用于相机和图像采集卡之间的串行通信(本质就是UART的两根线)。

CameraLink标准的视频传输模式分为三种:Base模式、Medium模式、Full模式。其中每个端口为8位数据,CameraLink标准的规定标准时钟频率最大为85MHz。

 

 

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

 

图1

CameraLink + FPGA架构视频采集系统

采用CameraLink + FPGA架构的视频采集与传输系统,既可实现符合CameraLink协议的数字相机,采集卡之间的通信与控制,同时实现对图像数据采集、转换、缓存、实时处理、输出等。该架构系统稳定性可靠,精度高,不易受干扰,具有较强的通用性、实用性和扩展性,灵活性也大大增强。CameraLink技术现已广泛应用于航空航天、军事、医疗、交通等领域。

 

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

 

图2

 

创龙科技(Tronlong)的Kintex-7、Zynq-7045/7100等FPGA板卡已实现CameraLink视频采集与处理方案。本文将为您分享基于Kintex-7 FPGA评估板的CameraLink视频开发案例。

 

1 硬件平台

本文基于创龙科技TLK7-EVM评估板进行演示。

TLK7-EVM是一款基于Xilinx Kintex-7系列FPGA设计的高端评估板,由核心板和评估底板组成。核心板经过专业的PCB Layout和高低温测试验证,稳定可靠,可满足各种工业应用环境。

评估板接口资源丰富,引出FMC、SFP+、PCIe、SATA、HDMI等接口,方便用户快速进行产品方案评估与技术预研。

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

 

图3 TLK7-EVM评估板

 

开发案例主要包括:

Ø CameraLink、SDI、HDMI、PAL视频输入/输出案例

Ø 高速AD(AD9613)采集+高速DA(AD9706)输出案例

Ø AD9361软件无线电案例

Ø UDP(10G)光口通信案例

Ø UDP(1G)光口通信案例

Ø Aurora光口通信案例

Ø PCIe通信案例

 

案例源码、产品资料(用户手册、核心板硬件资料、产品规格书)可点击http://site.tronlong.com/pfdownload获取。

 

找厂家可申请TLK7-EVM评估板进行快速评估tronlong.com/Product/show/93.html,免费哦!

 

2 案例功能

案例功能:评估板通过FMC视频模块TLCameraLinkF的CameraLink接口进行分辨率为1280x1024的视频采集,并通过TLCameraLinkF模块的HDMI接口将采集到的视频进行输出。

 

 

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

 

图6 程序功能框图

 

3 案例演示

本案例支持三款CameraLink相机,具体说明如下。

厂家

相机型号

支持模式

相机性能

Microview

(北京微视)

RS-A5241-CM107-S00

(黑白CameraLink相机)

Full

全幅面2560*2048下,帧率可达107fps

Base

RS-A5241-CC107-S00

(彩色CameraLink相机)

Full

全幅面2560*2048下,帧率可达107fps

Base

MVC1381SAM-CL60-S00

(黑白CameraLink相机)

Base

全幅面1280*1024下,帧率可达60fps

Full模式硬件连接方法

如采用Full模式,创龙科技的TLCameraLinkF模块连接至评估板FMC2接口,评估板J1跳线帽选择1.8V档位,以配置FMC IO的BANK电压为1.8V。

将CameraLink相机的CL0通过数据线连接至TLCameraLinkF模块的CameraLink1接口,将CameraLink相机的CL1通过数据线连接至TLCameraLinkF模块的CameraLink2接口,将HDMI显示屏通过数据线连接至TLCameraLinkF模块的HDMI OUT接口。

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

图7

 

Base模式硬件连接方法

如采用Base模式,将创龙科技的TLCameraLinkF模块连接至评估板FMC2接口,评估板J1跳线帽选择1.8V档位,以配置FMC IO的BANK电压为1.8V。

将CameraLink相机的CL0通过数据线连接至TLCameraLinkF模块的CameraLink1接口,将HDMI显示屏通过数据线连接至TLCameraLinkF模块的HDMI OUT接口。

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

图8

 

下面对三款不同型号的CameraLink相机在Full/Base模式下的操作进行演示。

(1) 黑白CameraLink相机RS-A5241-CM107-S00,Full模式

请运行Full模式程序,即可看到串口调试终端打印如下信息。请先输入"1"选择相机型号为RS-A5241-CM107-S00,再输入"1"选择为Full模式。配置完成后,即可看到HDMI显示屏输出黑白图像。

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

图9

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

图10

(2) 彩色CameraLink相机RS-A5241-CC107-S00,Full模式

请运行Full模式程序,即可看到串口调试终端打印如下信息。请先输入"2"选择相机型号为RS-A5241-CC107-S00,再输入"1"选择为Full模式。配置完成后,即可看到HDMI显示屏输出彩色图像。

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

图11

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

 图12

备注:由于彩色CameraLink相机RS-A5241-CC107-S00无白平衡功能,故图像颜色偏绿。

(3) 黑白CameraLink相机RS-A5241-CM107-S00,Base模式

请运行Base模式程序,即可看到串口调试终端打印如下信息。请先输入"1"选择相机型号为RS-A5241-CM107-S00,再输入"2"选择为Base模式。配置完成后,即可看到HDMI显示屏输出黑白图像。

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

图13

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

图14

(4) CameraLink相机RS-A5241-CC107-S00,Base模式

请运行Base模式程序,即可看到串口调试终端打印如下信息。请先输入"2"选择相机型号为RS-A5241-CC107-S00,再输入"2"选择为Base模式。配置完成后,即可看到HDMI显示屏输出彩色图像。

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

 图15

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

图16

 

备注:由于彩色CameraLink相机RS-A5241-CC107-S00无白平衡功能,故图像颜色偏绿。

 

(5) 黑白CameraLink相机MVC1381SAM-CL60-S00,Base模式

请运行Base模式程序,即可看到串口调试终端打印如下信息。请输入"3"选择相机型号为MVC1381SAM-CL60-S00。配置完成后,即可看到HDMI显示屏输出黑白图像。

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

图17

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

图18

 

4 关键代码(MicroBlaze)

MicroBlaze裸机源码为"sw\baremetal_demo\project\cameralink_display\src\",关键代码说明如下。

(1) main函数。

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

图19

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

 

图20

 

 

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

 

图21

 

(2) 初始化VDMA,将采集到的视频数据缓存至DDR,再进行HDMI视频输出。

 

 

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

 

图22

 

(3) 初始化Sil9022A。

 

 

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

 

图23

 

(4) 初始化AXIS Switch IP核。

 

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

 图24

 

 

初始化Sensor Demosaic IP核,以将彩色CameraLink相机的Bayer格式视频数据转化为RGB格式。

 

 

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

 

图25

 

(5) 初始化Video Mixer IP核。

 

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

 图26

 

 

备注:关于Vivado工程说明及模块/IP配置详细内容,可下载产品资料进行查看。

 

5 技术交流群

Kintex-7 FPGA交流群:311416997、101245165

Zynq-7000交流群:645235672、193393878

 

6 更多推荐

新品推荐:TL6678ZH-EVM评估板(TI TMS320C6678 + Xilinx Zynq-7045/7100)

 

基于Kintex-7 FPGA的CameraLink视频开发案例|Kintex-7/ZYNQ,支持Base与Full模式

上一篇:Numpy库基础


下一篇:VMware-workstation-full-16安装