The CBP parameter-a useful annotation to aid block-diagram compilers for DSP
Shuvra S. Bhattacharyya, Praveen K. Murthy · 2002
Memory consumption is an important metric during software synthesis from block-diagram specifications of DSP applications. Conventionally, no assumption is made about when, during the execution of a functional block (actor), the associated data values (tokens) are actually consumed and produced. However, we show in this paper that it is possible to concisely and precisely capture key properties pertaining to the relative times at which tokens are produced and consumed by an actor. We show this by introducing the consumed-before-produced (CBP) parameter, which provides a general method for characterizing the token transfer of an actor. Good bounds on the CBP parameter can aid a block-diagram compiler in performing more aggressive optimizations for reducing buffer sizes on the edges between actors. We formally define the CBP parameter; derive some useful properties of this parameter; illustrate how the value of the parameter can be derived by examining in derail the multi-rate FIR filtering operation; and examine CBP parameterizations for several other practical DSP actors.