资料介绍
Table of Contents
FMC-IMAGEON Xilinx Reference Design
Introduction
The FMC-IMAGEON is a HDMI input/output FMC card that provides high definition video interface for Xilinx FPGAs. The HDMI input interface is implemented with the ADV7611, a 165MHz, 24bit pixel output, HDCP capable HDMI 1.4a receiver. The HDMI output interface is implemented with the ADV7511, a 225MHz, 36bit deep color, HDMI 1.4 transmitter. This reference design provides the video and audio interface between the FPGA and ADV7511/ADV7611 on board. The video uses a 16bit 422 YCbCr interface and the audio uses a single bit SPDIF interface in both directions.
Supported Devices
Supported Carriers
Required Hardware
- One of the supported carrier and FMC-IMAGEON boards.
- HDMI Monitor (should be capable of supporting 1080p and/or 720p for the demo files).
Required Software
- We upgrade the Xilinx tools on every release. The supported version number can be found in our git repository .
- A UART terminal (Tera Term/Hyperterminal), Baud rate 57600.
Using the reference design
Functional description
Xilinx block diagram
FMC-IMAGEON block diagram
The reference design consists of two independent IP modules.
The video part consists of an AXI DMAC interface and the ADV7511/ADV7611 video interface. The video interface consists of a 16bit YCbCr 422 with embedded synchronization signals.
Video Transmit (DMA to HDMI)
In the transmit direction, the DMA streams frame data to this core. The internal buffers of this IP are small (1k) and do NOT buffer any frames as such. Additional resources may cause loss of synchronization due to DDR bandwidth requirements. The video core is capable of supporting any formats through a set of parameter registers (given below). The pixel clock is generated internal to the device and must be configured for the correct pixel frequency. It also allows a programmable color pattern for debug purposes. A zero to one transition on the enable bits trigger the corresponding action for HDMI enable and color pattern enable.
The reference design defaults to the 1080p video mode. Users may change the video settings by programming the video size registers. The core requires a corresponding pixel clock to generate the video. This clock must be generated externally.
Note that the pixel frequency for 1080p is 148.5MHz.
The reference design reads 24bits of RGB data from DDR and performs color space conversion (RGB to YCbCr) and down sampling (444 to 422). If bypassed, the lower 16bits of DDR data is passed to the HDMI interface as it is.
A color pattern register provides a quick check of any RGB values on the monitor. If enabled, the register data is used as the pixel data for the entire frame.
Video Receive (HDMI to DMA)
In the receive direction, the HDMI data is first decoded and the synchronization signals are generated. The core then streams video data to DMA. The internal buffers of this IP are small (1k) and do NOT buffer any frames as such. Additional resources may cause loss of synchronization due to DDR bandwidth requirements. The video core is capable of supporting any formats through a set of parameter registers (given below). The core runs at the pixel clock from ADV7611.
The core decodes the active video size from the received data and compares it against an expected video size. If they do not match, the core will NOT stream data to DMA to avoid possible lock up conditions in the DMA core due to byte length mismatches. Also, the reference design performs color space conversion (YCbCr to RGB) and up sampling (422 to 444). If bypassed, the lower 16bits of DDR data is passed to the DMA interface as it is.
Test pattern generators and monitors are provided at each interface and clock domain boundaries. The default configuration is in loop back mode with the HDMI interface acting as a direct pass through.
Audio
The audio part consists of an AXI DMAC interface and the ADV7511 spdif audio interface. The audio clock is derived from the bus clock. A programmable register (see below) controls the division factor. The audio data is read from the DDR as two 16bit words for the left and right channels. It is then transmitted on the SPDIF frame. The sample frequency and format may be controlled using the registers below. The reference design defaults to 48KHz.
Registers
HDMI Transmit (axi_hdmi_tx)
HDMI Receive (axi_hdmi_rx)
Audio Registers (axi_spdif_tx)
QW Address1 | Bits | Default | Name | Description |
---|---|---|---|---|
0x00 | 23:20 | 0 | mode | Sample format 0 to 8 (0-16bit, 8-24bit). |
15:8 | 0 | ratio | Clock divider for the transmit frequency = bus_clock/(1+ratio). | |
1 | 0 | txdata | Transmit data buffer enable (0x1) or disable (0x0). | |
0 | 0 | txenable | Transmitter enable (0x1) or disable (0x0). | |
0x01 | 7:6 | 0 | frequency | Sample frequency 0(44.1KHz), 1(48KHz), 2(32KHz) or 3(sample rate converter) (RO). |
3 | 0 | gstat | Generation status original/commercially pre-recorded data (0x1) or none (0x0) (RO). | |
2 | 0 | pre-emphasis | Pre-emphasis 50/15s (0x1) or none (0x0) (RO). | |
1 | 0 | copy | Copy permitted (0x1) or inhibited (0x0) (RO). | |
0 | 0 | audio | Data format is non-audio (0x1) or audio (0x0) (RO). | |
1. For AXI-Lite byte addresses, multiply by 4. |
Using the ADV7511 Transmitter Library
The transmitter library is a collection of APIs that provide a consistent interface to ADV7511. The library is a software layer that sits between the application and the TX hardware. The library is intended to serve two purposes:
- Provide the application with a set of APIs that can be used to configure HDMI TX hardware without the need for low-level register access. This makes the application portable across different revisions of the hardware and even across different hardware modules.
- Provide basic services to aid the application in controlling the TX module, such as interrupt service routine, HDCP high-level control and status information.
The Demo project uses the ADV7511 Transmitter Library. The project is an example of how to:
- Initialize the ADV7511 High-Definition Multimedia Interface (HDMI®) transmitter.
- Check current AVR operating mode and depending on this result set the AV mute state.
- Display an image and play a sound.
The project contains 2 components: the Demo project files and the ADV7511 Transmitter Library. All the components have to be downloaded from the links provided in the Downloads section.
Software Setup
The ADV7511 Transmitter Library Demo contains a folder called SDK_Workspace which stores the Xilinx SDK project files needed to build the no-OS software and also the .bit files with the HDL design that must be programmed into the FPGA. These are the steps that need to be followed to recreate the software project:
- Copy the SDK_Workspace folder on your PC. Make sure that the path where it is stored does not contain any spaces.
- Copy the library file to the SDK_Workspace/sw/lib folder.
- Copy the library headers to the SDK_Workspace/sw/inc folder.
- Copy the ADV7511 Transmitter Library Demo files to the SDK_Workspace/sw/src folder.
- Open the Xilinx SDK. When the SDK starts it asks for a to provide a folder where to store the workspace. Any folder can be provided.
- In the SDK select the File→Import menu option to import the software projects into the workspace.
- In the Import window select the General→Existing Projects into Workspace option.
- In the Import Projects window select the SDK_Workspace folder as root directory. After the root directory is chosen the projects that reside in that directory will appear in the Projects list. Press Finish to finalize the import process.
- The Project Explorer window now shows the projects that exist in the workspace and the files for each project. The SDK should automatically build the projects and the Console window will display the result of the build. If the build is not done automatically select the Project→Build Automatically menu option.
Downloads
HDL Reference Designs:
FMCIMAGEONG
Hardware | Project | Carriers | Library Cores |
---|---|---|---|
AES-FMC-IMAGEON-G | imageon | zed | axi_clkgen |
axi_dmac | |||
axi_hdmi_rx | |||
axi_hdmi_tx | |||
axi_i2s_adi | |||
axi_spdif_rx | |||
axi_spdif_tx | |||
axi_sysid | |||
sysid_rom | |||
util_axis_fifo | |||
util_cdc |
ADV7511 Transmitter Library Demo Software
* ADV7511 Transmitter Library: https://www.analog.com/media/en/dsp-hardware-software/software-modules/ADV7511_API_Library.exe
* ADV7511 Transmitter Library Demo files: https://github.com/analogdevicesinc/no-OS/tree/adv7511_rework/projects/adv7511
Help & Support
- The carriers (abbrevations can be found here) are commonly available FPGA evaluation boards.
- The HDL user guide contains all the documentation, build instructions and register map tables.
- The following quick links allows you to browse the github repository for a list of current branches, library components, and projects.
- FMC插入器&Xilinx KC705参考设计
- ADC-FMC插入器&Xilinx ZC706参考设计
- AD9789评估板、DAC-FMC转接器和Xilinx ML605参考设计
- AD971x/AD911x-DPG2 FMC转接器和评估板/Xilinx ML-605参考设计
- AD9129评估板、DAC-FMC插入器和Xilinx ML-605参考设计
- AD9265本地FMC卡/ML605 Xilinx参考设计
- ML605-控制器的线性技术选择
- AD9434本地FMC卡和ML605 Xilinx参考设计
- ML605-UMMODULE的线性工艺选择
- AD9279评估板、ADC-FMC转接器和Xilinx ML605参考设计
- AD7960 Wiki:FMC卡和Xilinx参考设计
- AD7961本地FMC卡和Xilinx参考设计
- AD9467评估板、ADC-FMC插入器和Xilinx参考设计
- AD9122评估板、DAC-FMC插入器和Xilinx ML-605参考设计
- Xilinx_SP605开发板原理图PCB 46次下载
- GD32 MCU 入门教程】GD32 MCU 常见外设介绍(12)FMC 模块介绍 634次阅读
- 【GD32F470紫藤派开发板使用手册】第四讲 FMC-片内Flash擦写读实验 903次阅读
- Xilinx fpga芯片系列有哪些 2330次阅读
- 基于ML的异构金属材料结构设计及性能预测 1140次阅读
- Xilinx FPGA的FMC介绍 5643次阅读
- digilent FMC Pcam适配器介绍 2731次阅读
- digilent FMC-HDMI:双HDMI输入扩展子板介绍 4286次阅读
- 2.5 GSPS高性能数模转换器——AD9739A DAC 4675次阅读
- 关于FPGA的FMC接口的详细介绍 1.1w次阅读
- 采用Xilinx ML507评估平台的APU增强型FPGA设计 1190次阅读
- 基于Xilinx reVISION Stack Demo双摄像头采集图像 3309次阅读
- 基于FPGA 的FMC 接口应用实例 1w次阅读
- 基于FPGA的DMA读写设计及中断控制 5672次阅读
- stm32案例分享之使D-CACHE时FMC外设运行不正常原因 1w次阅读
- FMC+标准将嵌入式设计推到全新的高度 1945次阅读
下载排行
本周
- 1电子电路原理第七版PDF电子教材免费下载
- 0.00 MB | 1491次下载 | 免费
- 2单片机典型实例介绍
- 18.19 MB | 95次下载 | 1 积分
- 3S7-200PLC编程实例详细资料
- 1.17 MB | 27次下载 | 1 积分
- 4笔记本电脑主板的元件识别和讲解说明
- 4.28 MB | 18次下载 | 4 积分
- 5开关电源原理及各功能电路详解
- 0.38 MB | 11次下载 | 免费
- 6100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 7基于单片机和 SG3525的程控开关电源设计
- 0.23 MB | 4次下载 | 免费
- 8基于AT89C2051/4051单片机编程器的实验
- 0.11 MB | 4次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 2PADS 9.0 2009最新版 -下载
- 0.00 MB | 66304次下载 | 免费
- 3protel99下载protel99软件下载(中文版)
- 0.00 MB | 51209次下载 | 免费
- 4LabView 8.0 专业版下载 (3CD完整版)
- 0.00 MB | 51043次下载 | 免费
- 5555集成电路应用800例(新编版)
- 0.00 MB | 33562次下载 | 免费
- 6接口电路图大全
- 未知 | 30320次下载 | 免费
- 7Multisim 10下载Multisim 10 中文版
- 0.00 MB | 28588次下载 | 免费
- 8开关电源设计实例指南
- 未知 | 21539次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935053次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537793次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191183次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183277次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138039次下载 | 免费
评论
查看更多