Page 248 - DSP Integrated Circuits
P. 248

6.3 Precedence Graphs                                                233


























                     Figure 6.11 Latency models for a serial/parallel multiplier




        6.3.3 Sequentially Computable Algorithms

        A precedence graph may be contradictory in the sense that it describes an impossi-
        ble ordering of events [6 — 7, 9]. An example of such a precedence graph is shown
        in Figure 6.12. Event A can occur only after event C has occurred. However, event
        C can only occur when event B has occurred, but event B can not occur until event
        A has occurred. Hence, this sequence of events is impossible since the sequence
        cannot begin.
            In a digital signal processing algorithm, events
        correspond to arithmetic operations. In a proper
        algorithm, at least one of the operations in each
        recursive loop in the signal-flow graph must have
        all its input values available so that it can be exe-
        cuted. This is satisfied only if the loops contain at
        least one delay element, since the delay element
        contains a value from the preceding sample interval
        that can be used as a starting point for the compu-
        tations in the current sample interval. Thus, there  Figure 6.12 Directed, cyclic
        must not be any delay-free loops in the signal-flow        precedence
                                                                   graph
        graph. For a sequentially computable algorithm the
        corresponding precedence graph is called a directed
        acyclic graph (DAG).


            Theorem 6.1
            A necessary and sufficient condition for a recursive algorithm to be
            sequentially computable is that every directed loop in the signal-flow
            graph contains at least one delay element.
   243   244   245   246   247   248   249   250   251   252   253