Xilinx AXIS to Video Out IP (PG044) 详细介绍
概述
Xilinx AXI4-Stream to Video Out LogiCORE™ IP 核(PG044)是一个用于将 AXI4-Stream 接口信号转换为标准并行视频输出接口的视频处理模块。它支持将符合 AXI4-Stream 视频协议的输入流转换为带有标准视频时序信号(如 Vsync、Hsync、Vblank、Hblank 和像素时钟)的并行视频输出,适用于连接到外部视频接收器(如 DVI PHY 或 HDMI 接口)。该 IP 核与 AMD Video Timing Controller (VTC) IP 核配合使用,以生成视频格式的时序信号,广泛应用于视频处理系统中。
主要特性
- 输入接口:支持 AXI4-Stream 视频协议,符合 AXI Reference Guide (UG761) 定义。
- 输出接口:标准并行视频输出,包含 Vsync、Hsync、Vblank、Hblank、DE(数据有效)信号和像素时钟。
- 数据宽度:可配置输出数据宽度(8-64 位),支持多种视频数据格式(如 DVI、单色数据等)。
- 时钟域转换:内置异步时钟域转换,处理 AXI4-Stream 时钟域与视频时钟域之间的差异。
- 设备支持:支持多种 AMD FPGA 系列,包括 Artix-7、Kintex-7、Virtex-7、Zynq-7000 等。
- 设计工具:兼容 Vivado Design Suite 和 ISE Design Suite。
- 源代码:提供源代码,允许用户定制以支持非标准视频信号。
- 性能:
- 支持 1080p60 像素时钟速率(所有支持的设备系列)。
- 支持 4Kx2K@24Hz(高性能设备)。
应用场景
-
视频处理流水线:
- 将 AXI4-Stream 格式的视频数据(来自视频处理 IP,如颜色空间转换器或测试图案生成器)转换为标准视频输出,连接到外部显示设备(如显示器、投影仪)。
- 常用于视频采集、处理和显示系统中,如视频监控、医疗影像处理等。
-
嵌入式视频系统:
- 在 Zynq-7000 或 Zynq UltraScale+ MPSoC 平台上,将处理器生成的视频流通过 AXI4-Stream 转换为视频输出,用于嵌入式多媒体设备(如数字标牌、机顶盒)。
-
HDMI/DVI 输出:
- 与 HDMI 发射子系统或 DVI PHY 结合,提供高质量视频输出,适用于消费电子产品或工业显示设备。
-
实时视频处理:
- 用于需要低延迟的实时视频处理场景,如无人机视频传输、汽车辅助驾驶系统中的视频显示。
-
广播和专业视频设备:
- 支持高分辨率视频格式,适合广播设备、视频切换器或专业视听系统。
使用指南
设计流程
-
IP 配置:
- 在 Vivado IP Integrator 中添加 AXI4-Stream to Video Out IP 核。
- 配置输出数据宽度(根据视频格式需求,如 RGB 24 位或 YUV 16 位)。
- 设置 FIFO 深度和滞后水平(Hysteresis Level),以优化时序对齐和避免 FIFO 欠流。
- 启用或禁用同步器(Output Synchronizer),根据是否需要严格时序对齐。
-
时序控制:
- 搭配 Video Timing Controller (VTC) IP 核,用于生成视频时序信号。
- 配置 VTC 为“主模式”或“从模式”:
- 主模式:VTC 控制时序,适用于无外部时序源的场景。
- 从模式:IP 核根据外部视频流时序调整,适用于有外部时序输入的场景。
-
连接外部接口:
- 将 IP 输出连接到外部视频接收器(如 HDMI TX 或 DVI PHY)。
- 确保像素时钟与目标视频格式匹配(如 1080p60 需要 148.5 MHz 时钟)。
-
时钟管理:
- 使用时钟向导(Clocking Wizard)生成 AXI4-Stream 时钟和视频时钟。
- 确保 AXI4-Stream 时钟频率足以支持输入数据带宽(如 150 MHz 用于 1080p60)。
-
验证与调试:
- 使用 Vivado 仿真工具验证视频流和时序信号。
- 检查状态寄存器(如滞后计数或锁定位),以诊断 FIFO 欠流或时序不对齐问题。
示例设计
以下是一个典型的视频处理流水线设计:
- 输入:Test Pattern Generator (TPG) IP 生成 AXI4-Stream 视频流(RGB,1080p60)。
- 处理:通过 AXI4-Stream Color Space Converter IP 转换为 YUV 格式。
- 输出:AXI4-Stream to Video Out IP 转换为并行视频信号,连接到 HDMI TX 子系统。
- 时序:VTC IP 生成 Vsync、Hsync 等时序信号。
- 控制:通过 AXI GPIO 或处理器控制 IP 参数(如分辨率、帧率)。
使用注意事项
-
时序对齐:
-
FIFO 欠流问题:
-
时钟配置:
- AXI4-Stream 时钟和视频时钟必须独立且稳定。异步时钟域转换可能引入延迟,需优化时钟频率。
- 确保像素时钟支持目标分辨率和帧率(如 4K@24Hz 需要高性能设备)。
-
数据宽度匹配:
- 确保 AXI4-Stream 输入数据宽度与 IP 配置的输出数据宽度一致,避免数据截断或填充错误。
- 对于非标准视频格式,可能需要修改提供的源代码。
-
仿真与验证:
-
性能优化:
-
文档与支持:
常见问题与解决方法
-
问题:输出同步器无法锁定(Locked 信号未置位)。
-
问题:视频输出无数据(TValid 信号低)。
-
问题:非标准视频格式不支持。
- 原因:默认配置不支持自定义信号。
- 解决:修改 IP 核源代码,添加对非标准信号的支持。
结论
Xilinx AXI4-Stream to Video Out IP (PG044) 是一个功能强大且灵活的视频处理模块,适用于从 AXI4-Stream 到标准视频输出的转换。其与 VTC IP 核的配合以及对多种视频格式的支持,使其在嵌入式视频系统、实时视频处理和专业视听设备中有广泛应用。使用时需特别注意时序对齐、FIFO 配置和时钟管理,以确保系统稳定性和性能。
设计工具推荐
- SZ901:
SZ901 是一款基于XVC协议的FPGA网络下载器。- 最高支持53M
- 支持4路JTAG独立使用
- 支持端口合并
- 支持国产FLASH烧写
- 下载器无限扩展
- 配备专属程序固化软件,一键烧写,能大大减小程序固化时间!