ZYNQ7035 PL Cameralink回环例程

简介: 本文主要介绍说明XQ6657Z35-EVM评估板Cameralink回环例程的功能、使用步骤以及各个例程的运行效果。(基于TI KeyStone架构C6000系列TMS320C6657双核C66x 定点/浮点DSP以及Xilinx Zynq-7000系列SoC处理器XC7Z035-2FFG676I设计的异构多核评估板,由核心板与评估底板组成。评估板CameraLink功能支持2路Base输入、或者2路Base输出、或者1路Full 输入或输出)

本文主要介绍说明XQ6657Z35-EVM评估板Cameralink回环例程的功能、使用步骤以及各个例程的运行效果。
(基于TI KeyStone架构C6000系列TMS320C6657双核C66x 定点/浮点DSP以及Xilinx Zynq-7000系列SoC处理器XC7Z035-2FFG676I设计的异构多核评估板,由核心板与评估底板组成。评估板CameraLink功能支持2路Base输入、或者2路Base输出、或者1路Full 输入或输出)

ZYNQ7035 PL Cameralink回环例程
1.1.1例程位置
ZYNQ例程保存在资料盘中的Demo\ZYNQ\PL\base_cameralink_loop\prj文件夹下。

1.1.2功能简介
Cameralink回环例程将J3、J4当作两个独立的Base Cameralink接口使用,一个接收,另一个发送。
Cameralink接收端,利用Xilinx ISERDESE2原语进行串/并转换,将LVDS串行数据转换成28bit的cameralink并行数据。解串后的并行数据通过ila进行在线分析和查看,并实时检测并行数据是否有误码。
Cameralink发送端,利用Xilinx OSERDESE2原语进行并/串转换,将本地28bit cameralink并行数据串行化为LVDS数据发送出去。
1.1.3Cameralink接口时序说明
1.1.3.1Cameralink三种配置模式
图片1.png

Base模式:只需一根Cameralink线缆;4对差分数据、1对差分时钟;
Medium模式:需要两根Cameralink线缆;8对差分数据、2对差分时钟;
Full模式:需要两根Cameralink线缆;12对差分数据、3对差分时钟。
各种模式下,统一都包含一组控制口和一组串口。控制口有4根信号,用于图像采集端对相机的IO控制;串口用于图像采集端对相机参数的配置。

1.1.3.2单路差分数据与时钟之间时序关系
单路Cameralink差分数据与随路的差分像素时钟之间的时序关系如下图所示:
图片2.png

一个时钟周期内传输7bits串行数据,首先传输串行数据的最高位,最后传输串行数据的最低位。7bits数据起始于像素时钟高电平的中间位置,即数据的最高位在Clock高电平的中间时刻开始传输。
Clock高电平时间比Clock低电平时间多一个bit位。

1.1.3.3通道传输数据与图像数据映射关系
1路差分数据通道上,一个Clock像素时钟周期传输7bits串行数据,那么4路差分数据通道总共就是4*7bits=28bits,我们称这28bits数据为并行数据,为了方便描述,这28bits数据记为TX/RX27~0。Cameralink Base模式下,这28bits数据与图像行/场同步/数据有效标记、图像数据的映射关系如下图所示:
图片3.png

TX/RX24映射为行同步标记LVAL,TX/RX25映射为场同步标记FVAL,TX/RX26映射为图像数据有效标记DVAL,TX/RX23未使用,其余位对应图像数据。

1.1.3.428位并行数据与4路差分数据传输通道之间的映射关系
上述28位并行数据是如何通过4路差分数据传输通道进行传输的呢?28位并行数据映射到4路差分数据传输通道各个时刻点的位置关系如下图所示:
图片4.png

1.1.4管脚约束
ZYNQ PL工程管脚约束如下图所示:
图片5.png

1.1.5例程使用
1.1.5.1连接Cameralink线缆
使用Cameralink线缆将J3、J4两个接口连接在一起:
图片6.png

1.1.5.2加载运行ZYNQ程序
1.1.5.2.1打开Vivado工程
打开Vivado示例工程:
图片7.png

工程打开后界面如下图所示:
图片8.png

1.1.5.2.2下载ZYNQ PL程序
下载bit流文件base_cameralink_loop.bit,并且配套base_cameralink_loop.ltx调试文件,如下图下载界面所示:
图片9.png

1.1.5.3运行结果说明
ZYNQ PL端提供的ILA调试窗口,可以实时抓取采集Cameralink并行信号以及错误检测信号的时序波形。
hw_ila_1调试界面抓取Cameralink并行发送数据,是一个28bits的累加数:
图片10.png

hw_ila_2调试界面抓取Cameralink并行接收数据、接收误码统计以及接收误码实时标识信号,如下图所示:
图片11.png

cameralink_rx_err_num显示有数值,则说明Cameralink接收过程中存在误码。可能在开始通信初始化期间存在误码现象,导致cameralink_rx_err_num误码统计累加。待程序下载完毕后,如果Cameralink通信正常的话,cameralink_rx_err_num误码统计应该不会再累加。如果cameralink_rx_err_num误码统计继续不断累加,则通过触发camera_rx_error信号可以捕捉到误码具体发生时刻。

1.1.5.4 退出实验
Vivado调试界面Hardware Manager窗口,右键单击localhost(1),在弹出的菜单中点击Close Server,断开ZYNQ JTAG仿真器与板卡的连接:
图片12.png

最后,关闭板卡电源,结束。

相关文章
|
存储 负载均衡 网络协议
看完就会使用Nacos-服务发现
看完就会使用Nacos-服务发现
298 0
|
Ubuntu 编译器 芯片
FFmpeg开发笔记(十):ffmpeg在ubuntu上的交叉编译移植到海思HI35xx平台
FFmpeg开发笔记(十):ffmpeg在ubuntu上的交叉编译移植到海思HI35xx平台
FFmpeg开发笔记(十):ffmpeg在ubuntu上的交叉编译移植到海思HI35xx平台
|
6月前
|
数据安全/隐私保护
PEM燃料电池启停控制策略优化的simulink建模与仿真
本课题针对PEM燃料电池启停控制策略优化进行Simulink建模与仿真。质子交换膜燃料电池(PEMFC)将化学能直接转化为电能,具备高效率、低排放等优势,但其功率受温度、压力及老化等因素影响,长时间运行或不当操作会降低性能。优化启停策略可减少启动时间与能耗、降低压力损失并延长电池寿命。研究通过MATLAB 2022a实现核心程序与模型开发,系统仿真结果验证了策略的有效性。优化目标涵盖启动阶段(预充、加热、加湿、加载)和停止阶段(卸载、冷却、排水、关断),为提升PEMFC性能和寿命提供重要支持。
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用
【10月更文挑战第7天】本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。首先,通过 Spring Initializr 创建 Spring Boot 项目并配置 Spring Security。接着,实现后端 API 以提供菜单数据。在前端部分,使用 Ant Design Pro Vue 脚手架创建项目,并配置动态路由和菜单。最后,启动前后端服务,实现高效、美观且功能强大的应用框架。
258 2
|
11月前
|
测试技术 持续交付 开发工具
Git版本控制在团队协作中具有重要作用
Git版本控制在团队协作中具有重要作用
159 1
|
机器学习/深度学习 人工智能 PyTorch
Transformers 4.37 中文文档(三十二)(1)
Transformers 4.37 中文文档(三十二)
237 0
|
Java iOS开发 芯片
解决macos14.4升级后导致idea崩溃问题
解决macos14.4升级后导致idea崩溃问题
300 2
|
存储 安全 编译器
跟着iLogtail学习无锁化编程
锁是解决这些问题的传统方法,而无锁化编程是一种更高级但复杂的技术,它能够在某些情况下提供更优的性能和可扩展性。正确选择和实现适合应用场景的并发策略,是高效多线程编程的关键。本文由作者带着大家一起学习无锁化编程。
|
IDE 编译器 开发工具
瑞萨IDE:CS+ for CC下载、安装和基础使用
本篇博文将介绍:CS+ for CC安装和基础使用(本篇文章以:RH850 系列MCU为例)。
|
Java 程序员 API
IDEA插件开发(一)
IDEA插件开发
3279 0