Title :
StReAm: object-oriented programming of stream architectures using PAM-Blox
Author :
Mencer, Oskar ; Hubert, Heiko ; Morf, Martin ; Flynn, Michael J.
Author_Institution :
Comput.. Syst. Lab., Stanford, CA, USA
Abstract :
General-purpose microprocessors are designed to deliver low-latency computation with maximal clock frequencies, leading to high power consumption. In terms of performance and power consumption, latency-tolerant applications can be efficiently implemented with architectures that provide high throughputs, such as Imagine, Score, RaPiD, and the PCI-PipeRench. Stream architectures are fully-pipelined, high-throughput microarchitectures. Algorithms are executed by mapping dataflow graphs to hardware and streaming the data through the architecture. In the best case, when all the loops are fully unrolled, the dataflow graph is acyclic and the clock frequency of the design is the data rate. In this paper, we develop a domain-specific compiler for programming FPGAs, called StReAm. StReAm is build on top of the module generation environment PAM-Blox
Keywords :
clocks; computer architecture; data flow graphs; field programmable gate arrays; microprogramming; object-oriented programming; pipeline processing; program compilers; FPGA programming; PAM-Blox; StReAm compiler; acyclic dataflow graph; clock frequency; data rate; data streaming; domain-specific compiler; fully-pipelined high-throughput microarchitectures; general-purpose microprocessors; latency-tolerant applications; loop unrolling; low-latency computation; module generation environment; object-oriented programming; performance; power consumption; stream architectures; Clocks; Computer architecture; Energy consumption; Frequency; Hardware; Microarchitecture; Microprocessors; Object oriented programming; Streaming media; Throughput;
Conference_Titel :
Field-Programmable Custom Computing Machines, 2000 IEEE Symposium on
Conference_Location :
Napa Valley, CA
Print_ISBN :
0-7695-0871-5
DOI :
10.1109/FPGA.2000.903431