Page 243 - DSP Integrated Circuits
P. 243

228                                                Chapter 6 DSP Algorithms

        algorithm is a complex set of requirements that may be violated by even a simple
        change in the algorithm. For example, intricate bit manipulations and nonlinear
        operations are used in most speech coding systems. A simple change of the quanti-
        zation scheme may drastically affect speech quality. In fact, the quality of most
        DSP algorithms is strongly related to various finite word length effects. An even
        more important aspect concerns the stability of the algorithm with respect to vari-
        ous types of nonlinearities.
            Recursive algorithms contain nonlinearities that may cause parasitic oscilla-
        tions. Temporary malfunction of the hardware may also cause parasitic oscilla-
        tions, as discussed in Chapter 5. Sophisticated theories and methods are therefore
        invoked in algorithm design to assure that such oscillations cannot persist. Exam-
        ples of filter algorithms that suppress all parasitic oscillations are wave digital fil-
        ters and nonrecursive FIR filters. To avoid dangerous pitfalls, it is necessary to use
        a design method that guarantees the integrity at each design step involved in
        transforming the DSP algorithm into a working system.


        6.2.2 Arithmetic Operations
        At each level of system hierarchy it is convenient to define a set of basic operations
        that can be executed on the PEs of that level. The operations are assumed to be
        atomic and can not be further divided. Once an operation begins execution on a
        PE, it will not be interrupted by another operation. Thus, these operations repre-
        sent the smallest granularity of which parallelism can be exploited at the system
        level.
            The basic arithmetic operations used in the DSP algorithm can again be consid-
        ered as lower-level algorithms acting on binary numbers, as illustrated in Figure 6.3.
        Algorithms for realizing the arithmetic operations will be further discussed in
        Chapter 11.
            The properties of the arithmetic operations will determine the computational
        properties of the algorithm at the next higher level in the system hierarchy. It is


























                             Figure 6.3 Hierarchy of algorithms
   238   239   240   241   242   243   244   245   246   247   248