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

January 2013 Altera Corporation Video and Image Processing Suite
User Guide
14. Control Synchronizer MegaCore
Function
Core Overview
The Control Synchronizer MegaCore function synchronizes the configuration change
of MegaCores with an event in a video stream. For example, the MegaCore function
could synchronize the changing of a position of a video layer with the changing of the
size of the layer.
Functional Description
The Control Synchronizer MegaCore function has an Avalon Video Streaming Input
and Output port, which passes through Avalon-ST Video data, and monitors the data
for trigger events. The events that can trigger the Control Synchronizer are the start of
a video data packet, or a change in the width or height field of a control data packet
that describes the next video data packet.
The Control Synchronizer MegaCore function also has an Avalon Master port. When
the Control Synchronizer MegaCore function detects a trigger event the MegaCore
writes data to the Avalon Slave control ports of other MegaCores. The Control
Synchronizer MegaCore function also has an Avalon Slave port that sets the data to be
written and the addresses that the data must be written to when the MegaCore
function detects a trigger event.
When the Control Synchronizer MegaCore function detects a trigger event, it
immediately stalls the Avalon-ST video data flowing through the MegaCore, which
freezes the state of other MegaCore functions on the same video processing data path
that do not have buffering in between. The Control Synchronizer then writes the data
stored in its Avalon Slave register map to the addresses that are also specified in the
register map. Once this writing is complete the Control Synchronizer resumes the
Avalon-ST video data flowing through it. This function ensures that any cores after
the Control Synchronizer have their control data updated before the start of the video
data packet to which the control data applies. Once all the writes from a Control
Synchronizer trigger are complete, an interrupt is triggered or is initiated, which is the
“completion of writes” interrupt.
The control synchronizer has an address in its Avalon Slave Control port that you can
use to disable or enable the trigger condition. The Control Synchronizer can
optionally be configured before compilation to set this register to the “disabled” value
after every trigger event, this is useful when using the control synchronizer to trigger
only on a single event.
Using the Control Synchronizer
This section provides an example of how to use the Control Synchronizer MegaCore
function. The Control Synchronizer is set to trigger on the changing of the width field
of control data packets. In the following example, the Control Synchronizer is placed
in a system containing a Test Pattern Generator, a Frame Buffer, and a Scaler. The
Control Synchronizer must synchronize a change of the width of the generated video
packets with a change to the Scaler output size, such that the Scaler maintains a