UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Moderator
Moderator
2,275 Views
Registered: ‎11-09-2015

Video Beginner Series 7: How does the AXI4-Stream to Video Out IP work?

Introduction

 

 

This Video Beginner Series 7 helps you understand how the Xilinx AXI4-Stream to Video Out IP is working.

 

 

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

Summary

 

1. Understanding the AXI4-Stream to Video Out

2. AXI4S to Video Out IP - Detail on the Output Synchronizer

3. Tutorial - Video AXI4-Stream to video Out in Slave timing mode

4. What next?

 

 


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
Tags (1)
4 Replies
Highlighted
Moderator
Moderator
2,272 Views
Registered: ‎11-09-2015

Video Beginner Series 7: How does the AXI4-Stream to Video Out IP work? - Understanding the AXI4-Stream to Video Out

Understanding the AXI4-Stream to Video Out

 

 

The figure 1-1 of PG044 shows a diagram of the AXI4-Stream to Video out core.

We can divide the core in 3 parts:

 

  • a data part (in red below)
  • a timing signals part (in green)
  • a synchronization part (in orange)

1.png

 

Data Part

 

The data are going through a FIFO and are then formatted (to follow the AXI4-Stream encoding for Xilinx Video IPs as per UG934). The AXI4-Stream starts to output the data only when it gets the locked signal from the synchronizer.

 

 

Timing Signals Part

 

The timing signals are only going through the AXI4-Stream to Video Out from the VTC without any alteration. The AXI4-Stream starts to output the timing signals only when it gets the locked signal from the synchronizer.

 

 

Synchronization Part

 

The Output Synchronizer block takes the frame boundary information signals from the AXI4-Stream (Start Of Frame (SOF - carried by tuser) and End Of Line (EOL - carried by tlast)) and the timing signals from the VTC IP as input to synchronize the data and the timing signals. Depending on the timing mode, Master or Slave, it will control the VTC (using vid_gen_ce) or the internal FIFO to achieve the synchronization.

A detail explanation of the Timing mode is provided in the PG044, Chapter 3: Designing with the Core, Timing mode section.

 

 

 


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
0 Kudos
Moderator
Moderator
2,265 Views
Registered: ‎11-09-2015

Video Beginner Series 7: How does the AXI4-Stream to Video Out IP work? - AXI4S to Video Out IP - Detail on the Output Synchronizer

AXI4S to Video Out IP - Detail on the Output Synchronizer

 

 

The figure 3-10 from the PG044 shows how the synchronizer is working:

 

2.png

 

The AXI4-Stream to video out will first enter in a Coarse Alignment phase (also called initial Alignment), then in a Fine Alignment before getting locked.

A detail of the Corse Alignment and Fine Alignment is provided in PG044.

The current phase can be followed by looking at the status output of the AXI4-Stream to Video Out

 

3.png

 

 

 


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
Moderator
Moderator
2,264 Views
Registered: ‎11-09-2015

Video Beginner Series 7: How does the AXI4-Stream to Video Out IP work? - AXI4S to Video Out IP - Detail on the Output Synchronizer

Tutorial - From AXI4-Stream to Native Video

 

Note: This tutorial is intended to be used only with Vivado 2018.1 and only in simulation

 

 

Build the Vivado project

 

  1. Download the tutorial files and unzip the folder

  2. Open Vivado 2018.1

  3. In the tcl console, cd into the unzipped directory (cd <path>/XVES_0007)

  4. In the tcl console, source the script tcl (source ./create_proj.tcl)

Note 1: A valid license for the Test Pattern Generator is required to build the design.
Note 2: The design is the same as the Video Beginner 6.

  1. Double click on the AXI4-Stream to Video Out IP to open its configuration GUI

 4.png

 

  • We can see that the Timing Mode is set as Slave. This means that the AXI4-Stream to Video Out IP will control the Video Timing Controller configured as Generator (commonly called VTG) using the vtg_ce output port in order to synchronize the timing signal with the incoming data stream.

  • We can also see a parameter Hysteresis Level (or fill level). This parameter indicates how many samples (i.e. pixels) the IP should wait, when the data stream and timing signals are synchronized, before outputting data. In this case, and by default for the IP, it is configured to 12.

 

 

Understanding the AXI4-Stream to Video Out in Slave Timing Mode

 

  1. Launch the behavioral simulation and run it for 150ms.

  2. At simulation time 16.579ms we can see that the AXI4-Stream to video out IP set vtc_ce to ‘0’ to keep the VTC on hold, just after the vsync/vblank (i.e. start of frame)

 5.png

 

  1. We can see that the value on the status output at this simulation time is 0x000c0002. The bit 1 of status is high, indicating that the AXI4-Stream to Video Out IP enters in the Coarse Align Phase

  2. At simulation time 24.181ms, the vtc_ce the AXI4-Stream to Video Out IP set vtc_ce to back to ‘1’ to continue the timing.

    Q1. Check the AXI4-Stream signals. What signals are happening before the AXI4-Stream to video out IP set vtc_ce to back to ‘1’?

    Q2. Which AXI4-Stream signal “trigger” the AXI4-Stream to Video Out IP to set vtc_ce to ‘1’?

  3. We can see that the value on the status output at this simulation time is 0x000c0186. The bit 7 of status is high, indicating that the AXI4-Stream to Video Out IP is in the Fine Align Phase

  4. At simulation time 90.4987ms, the AXI4-Stream to Video Out IP is getting locked and starts outputting native video after one frame (at 106.33ms)

 

 

 


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
Moderator
Moderator
2,261 Views
Registered: ‎11-09-2015

Video Beginner Series 7: How does the AXI4-Stream to Video Out IP work? - What next?

What Next?

 

  • You liked this Video Series?
    • You can give Kudos using the Kudos button  kudos.PNG
    • Make sure you are following the Xilinx Video Series topic to be informed when an new topic is published (Go to the Xilinx Video Series topic > Options > Subscribe)
      subscribe.PNG

 


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
0 Kudos