Video and Image Processing Suite User Guide

ID 683416
Date 2/12/2021

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

16.7.2. Frame Reader Only Mode

To configure the Frame Buffer II IP core in frame reader mode, select Module is Frame Reader only mode in the parameter editor.

In this mode, when you set the frame dimensions through the Frame Information register and the frame start address through the Frame Start Address register, the IP core starts transmitting video frames read from DDR.

Writing to the Frame Start Address register initiates the video reading. If new frame dimensions are set, you must perform another write to the Frame Start Address register for the new settings to take effect (even if the frame start address is unchanged).

The Frame Buffer II IP core cannot determine if a frame is dirty or clean; the IP core keeps producing a frame from wherever it is currently addressed until a new address is written. Therefore, frame reading applications may use one of the following based on the target application:
  • A conventional fixed set of 2 or 3 buffers
  • A dozen buffers dynamically allocated at runtime
  • A constant test pattern buffer and a set of dynamic buffers
A simple 3-buffer frame reader may operate as follows:
  1. Wait until the ready bit of the Frame Reader register is high, indicating that it is ready to receive details of a new frame to transmit.
    Note: The Frame Buffer II IP core allocates sufficient frame information buffering for the number of frames set through the Delay Length parameter.
  2. Write the frame dimensions into the Frame Information register.
    Note: The frame dimensions include the 4 interlaced bits (e.g. 0 for progressive, 8 for interlaced F0, and 12 for interlaced F1)
  3. Write the data for the frame into a buffer area N . This area may be at any address range visible to the frame buffer, as long as the Frame Buffer II is not already transmitting from that region of memory.
  4. Write the start address of the buffer to the Frame Start Address register (0x6).
  5. The Frame Buffer II starts transmitting image data from the buffer.
  6. Increment buffer number N, N = (N+1)%3, and repeat from step 1.

The frame reader issues an interrupt immediately after coming out of reset. You can use it to synchronize the system and trigger initiation of the first frame. To use it, you must set up your design to read a new frame after an interrupt indicates the previous one is done.