This paper presents a Data Flow Functional Computer (DFFC) developed at
ETCA and dedicated to real-time image processing.
One original feature of this computer lies in the integration both
at the hardware and software level of two types of data-driven
processing elements: 1024 custom Data Flow Processor (DFP) -- embedded
in a 3D interconnected network and dedicated to low level processing and
36 T800 Transputers -- embedded in a 2D interconnected networks and dedicated
to mid to high level processing. A unifying programming model is provided,
based on a close integration of the data-flow architecture principles and the
functional programming concepts.
An image processing algorithm, expressed using an FP-like functional syntax is first converted into a Data-flow Graph (DFG). The nodes of this graph are real time operators implementable on the physical processors of the data-flow machine. This DFG is then physically mapped onto the network of processors.
The programming environment includes a complete compilation stream from FP-specification to hardware implementation, along with a global operator database. An original programming technique has been developed for the transputers to ensure a full compatibility with data-flow model. Several image processing algorithms were implemented on this system and run in real time at digital video speed.