User guide
Table Of Contents
- Contents
- 1. About This MegaCore Function Suite
- Release Information
- Device Family Support
- Features
- Design Example
- Performance and Resource Utilization
- 2D FIR Filter
- 2D Median Filter
- Alpha Blending Mixer
- Avalon-ST Video Monitor
- Chroma Resampler
- Clipper
- Clocked Video Input
- Clocked Video Output
- Color Plane Sequencer
- Color Space Converter
- Control Synchronizer
- Deinterlacer
- Deinterlacer II
- Frame Buffer
- Gamma Corrector
- Interlacer
- Scaler
- Scaler II
- Switch
- Test Pattern Generator
- Trace System
- 2. Getting Started with Altera IP Cores
- 3. Interfaces
- Interface Types
- Avalon-ST Video Protocol
- Avalon-MM Slave Interfaces
- Avalon-MM Master Interfaces
- Buffering of Non-Image Data Packets in Memory
- 4. 2D FIR Filter MegaCore Function
- 5. 2D Median Filter MegaCore Function
- 6. Alpha Blending MegaCore Function
- 7. Avalon-ST Video Monitor MegaCore Function
- 8. Chroma Resampler MegaCore Function
- 9. Clipper MegaCore Function
- 10. Clocked Video Input MegaCore Function
- 11. Clocked Video Output MegaCore Function
- 12. Color Plane Sequencer MegaCore Function
- 13. Color Space Converter MegaCore Function
- 14. Control Synchronizer MegaCore Function
- 15. Deinterlacer MegaCore Function
- Core Overview
- Functional Description
- Parameter Settings
- Signals
- Control Register Maps
- 16. Deinterlacer II MegaCore Function
- 17. Frame Reader MegaCore Function
- 18. Frame Buffer MegaCore Function
- 19. Gamma Corrector MegaCore Function
- 20. Interlacer MegaCore Function
- 21. Scaler MegaCore Function
- 22. Scaler II MegaCore Function
- 23. Switch MegaCore Function
- 24. Test Pattern Generator MegaCore Function
- 25. Trace System MegaCore Function
- A. Avalon-ST Video Verification IP Suite
- B. Choosing the Correct Deinterlacer
- Additional Information

3–16 Chapter 3: Interfaces
Avalon-ST Video Protocol
Video and Image Processing Suite January 2013 Altera Corporation
User Guide
5. The MegaCore function sets
dout_valid
to logic '0' and stops putting data on the
dout_data
port because the sink is not ready for data. The MegaCore function also
sets
din_ready
to logic '0' because there is no way to output data and the
MegaCore function must stop the source from sending more data before it uses all
internal buffer space. The sink holds
din_valid
at logic '1' and transmits one more
color sample G
m+1,n
, which is legal because the ready latency of the interface means
that the change in the MegaCore function's readiness does not take effect for one
clock cycle.
6. Both the input and output interfaces transfer no data: the MegaCore function is
stalled waiting for the sink.
7. The sink sets
dout_ready
to logic '1'. This could be because space has been cleared
in a FIFO.
8. The MegaCore function sets
dout_valid
to logic '1' and resumes transmitting data.
Now that the flow of data is again unimpeded, it sets
din_ready
to logic '1'.
9. The source responds to
din_ready
by setting
din_valid
to logic '1' and resuming
data transfer.
Example 3 (Control Data Transfer)
Figure 3–14 shows the transfer of a control packet for a field of 720×480 video (with
field height 240). It is transferred over an interface configured for 10-bit data with two
color planes in parallel. Each word of the control packet is transferred in the lowest
four bits of a color plane, starting with bits 3:0, then 13:10.
1 Example 1 uses the start of packet and end of packet lines in exactly the same way.
Figure 3–14. Example of Control Packet Transfer
clock
din_valid
din_startofpacket
CbCr din_data(13:10)
0x2
din_endofpacket
Y din_data(3:0)
0x0 0x0 0x0
0x00x0 0xD0xF 0x0 0xF 10xx
720(0x02D0) 240(0x00F0) image dataif0
binary
f0 - 10xx
f1 - 11xx
p - 00xx