Deliverable real-time Signal Processing Systems naturally decompose into a Signal Processing Program (SPP) and a Command Program (CP). The SPP is a data flow oriented program that performs high bandwidth numerical processing and typically executes on a suite of Digital Signal Processors (DSPs). The CP is a state-oriented program that executes on a host processor and is responsible for controlling the SPP in response to operator commands. This Application Note will present a simple, layered architecture for the CP and discuss how commercially available autocoding tools and products may be used on all but one of the layers. Particular focus will be placed on autocoding the one layer, known as the Application Specific Interface (ASI) layer, where commercial support is not currently available. It will show how this layer bridges the gap between SPP domain concepts, such as graphs, queues and the data flow paradigm, and the CP domain concepts such as application state or mode. It will also show how this layer exploits the standardized architecture presented by the autocoded SPP. The paper will discuss the software development process in light of the use of autocoding tools for both the SPP and CP. Finally, the paper will discuss the results from using autocoding technology on three RASSP benchmark projects.
The purpose of this Application Note is to describe the technical conclusions reached on the RASSP program concerning Command Program autocoding. The Executive Summary and Application Experience sections are appropriate for all readers while the remaining sections are targeted toward a software oriented technical audience.
1.0 Executive Summary
2.0 Introduction
3.0 What is a Command Program
4.0 Top Level Command Program Architecture
5.0 Building the Application Specific Interface
6.0 Autocoding Tool Evaluations
7.0 The Software Development Process
8.0 Application Experience
Approved for Public Release; Distribution Unlimited Dennis Basara