Durra: A Task-level Description Language Preliminary Reference Manual

Abstract : Durra is a language designed to support the development of large- grained parallel programming applications. This document is a preliminary reference manual for the syntax and semantics of the language. We are using the term description language rather than programming language to emphasize that a task-level application description is not translated into object code of some kind of executable machine language. Rather, it is to be understood as a description of the structure and behavior of a logical machine, that will be synthesized into resource allocation and scheduling directives. These directives are to be interpreted by a combination of software, firmware, and hardware in a heterogeneous machine. Although our ultimate goal is to design and implement a task-level description language that can be used for different machines and for varying applications, our first pass is influenced by both a specific architecture and by a specific application, the Autonomous Land Vehicle (ALV), and more specifically, the perception components of the ALV. We assume there is a cross-bar switch, intelligent buffers on the switch sockets, and a scheduler that can communicate with all processors, buffers, and I/O devices.

[1]  James J. Horning,et al.  The Larch Family of Specification Languages , 1985, IEEE Software.

[2]  Robert G. Stockton The Heterogeneous Machine Simulator , 1986 .

[3]  Steven A. Shafer,et al.  An architecture for sensor fusion in a mobile robot , 1986, Proceedings. 1986 IEEE International Conference on Robotics and Automation.

[4]  Jeannette M. Wing,et al.  Specifying Functional and Timing Behavior for Real-Time Applications , 1987, PARLE.