Digital Signal Processing Reference
In-Depth Information
21.4 Clocked and Flow Controlled Video
Streams
As you have read in earlier chapters most digital video
protocols send video frames between boards using a clock and
a series of synchronization signals. This is simple to explain but it
is an inefficient way to communicate within a device, as all pro-
cessing modules need to be ready to process data on every clock
within the frame, but will be idle during the synchronization
intervals.
Using a flow-controlled interface is more flexible because it
simplifies processing blocks and allows them to spread the data
processing over the whole frame time. Flow-controlled inter-
faces provide a way to control the flow of data in both direc-
tions
the source can indicate on which cycles there is data
present and can backpressure when it is not ready to accept
data. In the Avalon ST flow-controlled interface the valid signal
indicates that the source has data and the ready signal indicates
that the sink is able to accept it (i.e. is not backpressuring the
source).
If you are building a system from library components, most
problems will occur when converting from clocked-video streams
to flow-controlled video streams, and vice versa.
e
21.5 Debugging Tools
Several debugging tools are available: the most basic tools of
which are an oscilloscope, logic analyser or (within an FPGA) an
embedded logic analyser (such as Altera's SignalTap tool). These
tools provide a high-resolution view of the data being transferred
on a number of signals.
If you have data integrity issues between boards, then low-level
debugging tools such as these can be used to diagnose the
problem. Unfortunately, once the signals between boards or
within devices are clean, these tools typically provide too much
data to diagnose the types of problems that appear at higher levels.
Higher-level debug tools provide a way to trace the data
passing through the system and display it as video packets. The
amount of data in a video system is more than can easily be
transferred, so it must be compressed to allow it to be transferred
to the debug host and analysed.
The highest level of compression can be achieved by ignoring
most of the pixel values and only transferring control packets and
statistics about the data flow
for example, a count of the
e
Search WWH ::




Custom Search