Digital Signal Processing Reference
In-Depth Information
system typically requires 20 to 25 bits to represent a set of 10 LSF parameters
with the required accuracy. Such a large number of bits precludes the use
of straightforward vector quantization of the LSF vector, as the complexity
and storage requirements of such a system would be far too great to be
implemented on any reasonably priced device. Therefore, alternative subop-
timal methods have to be used, which add structure to the codebook in order
to reduce implementation costs. The two most common methods are split
vector quantization (SVQ) and multi-stage vector quantization (MSVQ).
5.7.1 SplitVectorQuantization
Direct quantization of a set of LSF parameters with a typical vector quantizer
of 25 bits, would require a codebook with 10 25 entries, which is not practical
from both the search complexity and memory point of view. An alternative
method is to use SVQ, where the 10-element LSF vector is split into a number
of smaller subvectors, each quantized independently using a small number
of bits. Since the complexity and storage requirements of a full-search vector
quantizer are exponential functions of the number of bits used to represent
the input vector, SVQ requires only a fraction of the complexity required by
afullsearchVQ.
In an SVQ system, an input vector f is represented by a vector f given by:
y i K 1
1 ( 0 ), ..,y i K 1
y i 0 ( 0 ), ..,y i 0 (N 0 )
f
={{
}
, ..,
{
1 (N K 1 )
}}
(5.67)
K
K
where K is the number of subvectors, each of length N k , y i k (n) is the n th element
from the k th
codebook, and i k is the codebook index for the k th
subvector.
Obviously K and N k are chosen so that the sum of N k for k
=
0 , 1 , ... ,K
1is
equal to the length of the input LSF vector.
Splitting the 10-element LSF vector can be performed in various ways and
some classic configurations are illustrated in Table 5.4. The split usually takes
into account some of the perceptual properties of the LSF vector, such as the
fact that lower frequency LSFs are usually more sensitive to distortion than
higher frequency ones. Therefore, a
}
split for instance. The configurations shown here have been chosen so that
they all have the same bit-rate of 24 bits. Complexity (in multiply-adds) and
memory storage (in words) for the typical SVQ configurations are presented
in Table 5.5. It can be seen that although the direct VQ approach is extremely
complex, the SVQ configurations are all practical. Even the most complex one
requires only 40 960 multiply-adds per input vector, which translates to only
2MIPS if performed at a 20ms update rate.
However, there are several drawbacks which relate to the efficiency of SVQ
quantization:
{
4 , 6
}
split would be preferred to a
{
5 , 5
Search WWH ::




Custom Search