Sub-band Coding Hardware Assist
Original Publication Date: 1991-Dec-01
Included in the Prior Art Database: 2005-Apr-04
Galand, C: AUTHOR [+2]
Real time video coding requires a large number of MIPS given the large number of pixels per frames per second to process. Generally, special Digital Signal Processors (DSPs) need to be designed for a specific algorithm to optimize the processing speed. Sub-band coding for video requires several filtering paths over the original images and the sub-band images.
Sub-band Coding Hardware Assist
video coding requires a large number of MIPS
given the large number of pixels per frames per second to process.
Generally, special Digital Signal Processors (DSPs) need to be
designed for a specific algorithm to optimize the processing speed.
Sub-band coding for video requires several filtering paths over the
original images and the sub-band images.
Hardware Assist (HA) can be implemented on any DSP
and allows processing sub-band decomposition in real time. The
microcode is reduced to the number of LOAD and STORE of the samples
to process. In our example of an implementation of a sub-band based
video coder, we use 2-taps filters, but the HA allows to follow the
same approach for a larger number of filter coefficients without
affecting the processing power (the computation delay is larger,
equal to the number of coefficients times the cycle time). In
addition, the HA can be cascaded to perform a given sub-band
decomposition preventing from developing too much microcode.
decomposition is performed for each image (frame)
of the video sequence. The complete decomposition is tree-structured:
Each image is
first decomposed in 2 sub-bands, one low-pass
filtered and one high-pass filtered. Each sub-band is further
decomposed in 2 other sub-bands, resulting in 4 sub-bands: low-low,
high-low, low-high and high-high.
sub-band decomposition is performed along the lines
of the image and the second decompositions are performed along the
column, leading to a two-dimensional sub-band decomposition.
can be further decomposed following the two steps
described above. Generally the low-low sub-band is decomposed in 4
other sub-bands, leading to 7 sub-bands, using a quadrature mirror
filter (QMF) bank of any order. For illustration purpose, we,
however, will consider 4 sub-bands only, and a simple second-order
Fig. 1 shows
the attachment of the HA to the data bus via the
MPX boxes and a more detailed description of the hardware filtering
for sub-band decomposition. The first MPX box allows the hardware to
bypass the HA or not depending on the state of a control register.
The second MPX box stores into the X register (RX) either its "own"
value (bypass case) or the result of the computation of the HA. The
"HA cell" alternatively exhibits the low-pass and the high-pass
samples of the 2-bands decomposition that are interleaved in time
over two cycles.
are necessary to fetch two original samples and two
cycles are necessary to issue two output samples, one for each sub-
band, each sub-band signal being sub-sampled by a factor of 2 with
respect to the original input signal. The number of output samples
is, therefore, the same as the number of input samples. The input and
the output frequencies of the HA are two cycles (time necessary to
load or store two samples) and the comp...