Browse Prior Art Database

SEQUENTIAL DYNAMIC BUFFER POINTER BROADCASTING FOR INTER-MODULE DATAFLOW

IP.com Disclosure Number: IPCOM000006093D
Original Publication Date: 1991-Apr-01
Included in the Prior Art Database: 2001-Dec-03
Document File: 3 page(s) / 151K

Publishing Venue

Motorola

Related People

Orhan Karaali: AUTHOR

Abstract

In Digital Signal Processing (DSP) systems, different hardware (functions) blocks can be represented as software modules. In a modular software design, the methods by which data can be passed between the different modules is an issue. This problem is more apparent in real time, embedded, and DSP systems where minimum operating system functionality is available and desirable due to speed, real time, and minimum hardware requirements.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 43% of the total text.

Page 1 of 3

0 M

MOTOROLA INC. Technical Developments Volume 12 April 1991

SEQUENTIAL DYNAMIC BUFFER POINTER BROADCASTING FOR INTER-MODULE DATAFLOd

by Orhan Karaali, Ph.D.

INTRODUCTION

  In Digital Signal Processing (DSP) systems, different hardware (functions) blocks can be represented as software modules. In a modular software design, the methods by which data can be passed between the different modules is an issue. This problem is more apparent in real time, embedded, and DSP systems where minimum operating system functionality is available and desirable due to speed, real time, and minimum hardware requirements.

  In a single processor DSP system, different modules are executed sequentially even though some of the modules might be parallel to each other logically. In Figure 1, modules "modd" and "mode" are logically parallel to each other.

  An advanced and flexible DSP system should have the ability to dynamically activate and deactivate different modules in real time. As the modules are activated and deactivated dynamically, the DSP system needs to calculate and implement the new data-flow routes between the modules.

   Sequential Dynamic Buffer Pointer Broadcasting is a general solution to the problem of inter-module dataflow problem for DSP systems executing on a single CPU. It is superior to other solutions in its run time, code size, and implementation simplicity aspects.

  Selective activation of the modules is one of the requirements of the modular DSP systems. Let pt[x] be the input pointer of module x, and bf[x] be the output buffer module x ~,and n to correspond to the activation time sequencing of the modules (mod[ntl] is executed after mod[n]). Because the modules are dynamically activated and deactivated, the pt[n+l] cannot be permanentlyiset to bf[n]. Therefore, a technique is required to calculate the dataflow paths dynamically.

  The Sequential Dynamic Buffer Pointer Broadcasting is a general solution to this problem. Traditional methods require a special task to keep track of active modules and to calculate dataflow paths which results in a large overhead. This invention moves the responsibility of keeping track of which modules are active and in what order they are

               E. executed to the indivtdual modules. But this knowledge is already' present in each module. Therefore, all the processing required for these purposes are eliminated.

  An active module broadcasts its output buffer address to all the other modules which are on the dataflow paths in front of it. In the example, when the module a executes, it broadcasts to module b, module c, module e, module d, module fl and f2l. The broadcast is achieved by setting the input pointers of modules to the broadcasted address.

  When the module b executes, it broadcasts to module d, module e, andmodule fl and f2. It does not broadcast to module c since module c is not on its dataflow path. This second broadcast overwrites some of the values written by the module a. When the module d executes, it k...