+ +
+

Imageon HDL project (OBSOLETE)

+
+

Overview

+

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, +36-bit 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 boards

+
    +
  • FMC-IMAGEON

  • +
+
+
+

Supported devices

+ +
+
+

Supported carriers

+ +
+
+

Block design

+

The reference design is divided in three parts as related to the functionalities +of the board. The first one, related to video transmission, uses the +axi_hdmi_tx module and the axi_dmac modules to read 24 bits of RGB data from +the SoC’s DDR memory, and then performs the transmission using the +corresponding HDMI TX-related controller. On the receive side, the inverse +operation is done, by using the HDMI RX-related controller.

+

In terms of audio part, the axi_spdif module is used to manage the audio output +transmission on the HDMI connector. Additionally, a conversion from RGB to +YCbCr and a downsampling from 444 to 422 are done in the transmit and receive +(in reverse) datapaths as a default operation. To ensure the setup of the +ADV7511 and ADV75611 ICs, Xilinx’s AXI IIC module is used.

+
+

Block diagram

+

The data and control paths, along with the corresponding clocks are depicted +in the first diagram. As related to the functional description of the HDL +modules, this is presented in the second diagram.

+
+

FMC-IMAGEON Block Diagram

+FMC-IMAGEON block diagram +
+
+

FMC-IMAGEON Functional Description

+IMAGEON functional description +
+
+
+

CPU/Memory interconnects addresses

+

The addresses are dependent on the architecture of the FPGA, having an offset +added to the base address from HDL (see more at CPU/Memory interconnects addresses).

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Instance

Zynq

axi_iic_main

0x4160_0000

axi_sysid_0

0x4500_0000

axi_hdmi_clkgen

0x7900_0000

axi_hdmi_dma

0x4300_0000

axi_hdmi_core

0x70E0_0000

axi_spdif_tx_core

0x75C0_0000

axi_i2s_adi

0x7760_0000

axi_iic_fmc

0x4162_0000

axi_hdmi_rx_core

0x4310_0000

axi_hdmi_rx_dma

0x43C2_0000

axi_spdif_rx_core

0x75C2_0000

axi_iic_imageon

0x43C4_0000

+
+
+
+

GPIO

+

The Software GPIO number is calculated as follows:

+
    +
  • Zynq-7000: if PS7 EMIOs are used, then offset is 54

  • +
+
+ ++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

GPIO signal

Direction

HDL GPIO EMIO

Software GPIO

(from FPGA view)

Zynq-7000

hdmi_iic_rstn

INOUT

33

87

hdmi_rx_int

INOUT

32

86

gpio_bd[31:0]

INOUT

31:0

85:54

+
+
+
+

Interrupts

+

Below are the Programmable Logic interrupts used in this project.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +

Instance name

HDL

Linux Zynq

Actual Zynq

axi_hdmi_dma/irq

15

59

91

axi_hdmi_rx_dma/irq

14

58

90

axi_iic_imageon/iic2intc_irpt

11

55

87

+
+
+
+
+

Building the HDL project

+

The design is built upon ADI’s generic HDL reference design framework. +ADI distributed the bit/elf files of this project as part of the +ADI Kuiper Linux +in the 2019_R1 release +If you want to build the sources, ADI makes them available on the +HDL repository. But, since this is an obsolete project, you need +to check out the last release branch where it was tested (hdl_2019_r1). +To get the source you must +clone +the HDL repository, and then build the project as follows:

+

Linux/Cygwin/WSL

+
/hdl$
+
+
+
git checkout hdl_2019_r1
+
+
+
/hdl$
+
+
+
cd projects/imageon/zed
+
+
+
/hdl/projects/imageon/zed$
+
+
+
 make
+
+
+

A more comprehensive build guide can be found in the Build an HDL project user guide.

+
+
+

Resources

+ + + +
+
+

More information

+ +
+
+

Support

+

Analog Devices, Inc. will provide limited online support for anyone +using the reference design with ADI components via the +EngineerZone FPGA reference designs forum.

+

For questions regarding the ADI Linux device drivers, device trees, etc. +from our Linux GitHub repository, the team will offer support +on the EngineerZone Linux software drivers forum.

+

For questions concerning the ADI No-OS drivers, from our +No-OS GitHub repository, the team will offer support on the +EngineerZone microcontroller No-OS drivers forum.

+

It should be noted, that the older the tools’ versions and release branches +are, the lower the chances to receive support from ADI engineers.

+
+
+ + + +