PRADA: a high-performance reconfigurable parallel architecture based on the dataflow model

This work proposes and implements a reconfigurable parallel architecture based on dataflow for numerical computation, named PRADA. This architecture uses concepts of parallel processing to obtain a scalable performance and the dataflow concept for controlling the parallel execution of instructions. PRADA is composed by a control unit and several processing elements (PEs). In the control unit, there are several functional blocks, including data and instruction memories. Each PE is composed by an ALU and buffers. PRADA is organised as a cluster, in which several independent dataflow modules are interconnected together. PRADA was developed in VHDL and implemented in reconfigurable hardware using a FPGA device. Therefore, it can offer high performance, scalability and customised solutions for engineering problems. Results of the application of PRADA to the computation of a digital filter and a cryptography algorithm are presented. Results are also compared with other different architectures, such as microprocessors, ASICs, DSPs, reconfigurable architectures and dataflow architectures. In most cases, PRADA achieved either competitive or higher performance than the other architectures, regarding the measures used. Overall results suggest that this architecture can be applied to several classes of problems that may require a high throughput, such as cryptography, optimisation and scientific computing.

[1]  R. Hartenstein,et al.  A datapath synthesis system for the reconfigurable datapath architecture , 1995, Proceedings of ASP-DAC'95/CHDL'95/VLSI'95 with EDA Technofair.

[2]  Monarch Processor Vision MONARCH: A First Generation Polymorphic Computing Processor , 2006 .

[3]  B. Zavidovique,et al.  Implementing image processing applications on a real-time architecture , 1993, 1993 Computer Architectures for Machine Perception.

[4]  Jonathan Rose,et al.  Exploration and Customization of FPGA-Based Soft Processors , 2007, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[5]  Dr. Jurij Šilc,et al.  Processor Architecture , 1999, Springer Berlin Heidelberg.

[6]  Mark F. Cherbaka,et al.  Verification and Configuration of a Run-Time Reconfigurable Custom Computing Integrated Circuit for DSP Applications , 1996 .

[7]  Fadi J. Kurdahi,et al.  MorphoSys: An Integrated Reconfigurable System for Data-Parallel and Computation-Intensive Applications , 2000, IEEE Trans. Computers.

[8]  David A. Patterson,et al.  Computer Architecture, Fifth Edition: A Quantitative Approach , 2011 .

[9]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .

[10]  Olivier Sentieys,et al.  DART: A Functional-Level Reconfigurable Architecture for High Energy Efficiency , 2008, EURASIP J. Embed. Syst..

[11]  Peter Koch,et al.  A practical approach to DSP code optimization using compiler/architecture , 2002 .

[12]  Annie Pérez,et al.  A Programmable Hardware Cellular Automaton: Example of Data Flow Transformation , 2008, VLSI Design.

[13]  Xuejia Lai,et al.  A Proposal for a New Block Encryption Standard , 1991, EUROCRYPT.

[14]  Jürgen Becker,et al.  Configware and morphware going mainstream , 2003, J. Syst. Archit..

[15]  Vincent P. Heuring,et al.  Computer Architecture and Organization , 2007 .

[16]  Reiner W. Hartenstein,et al.  A reconfigurable data-driven ALU for Xputers , 1994, Proceedings of IEEE Workshop on FPGA's for Custom Computing Machines.

[17]  Volnei A. Pedroni Circuit Design with VHDL , 2004 .

[18]  S.L.C. Salomao,et al.  HiPCrypto: a high-performance VLSI cryptographic chip , 1998, Proceedings Eleventh Annual IEEE International ASIC Conference (Cat. No.98TH8372).

[19]  Alexander S. Szalay,et al.  Petascale computational systems , 2007, Computer.

[20]  Peter M. Athanas,et al.  Colt: an experiment in wormhole run-time reconfiguration , 1996, Other Conferences.

[21]  Wolfgang Rosenstiel,et al.  New Algorithms, Architectures and Applications for Reconfigurable Computing , 2005 .

[22]  William Stallings Computer Organization and Architecture: Designing for Performance , 2010 .

[23]  Sudhakar Yalamanchili,et al.  Compiling Stream Kernels for Polymorphous Computing Architectures , 2003 .

[24]  George Bourianoff,et al.  Emerging Research Architectures , 2008, Computer.

[25]  Yong Dou,et al.  Optimized Generation of Memory Structure in Compiling Window Operations onto Reconfigurable Hardware , 2007, ARC.

[26]  Gregory Francis Pfister,et al.  In search of clusters (2nd ed.) , 1998 .

[27]  Arthur H. Veen,et al.  Dataflow machine architecture , 1986, CSUR.

[28]  Yijun Liu,et al.  A low power embedded dataflow coprocessor , 2005, IEEE Computer Society Annual Symposium on VLSI: New Frontiers in VLSI Design (ISVLSI'05).

[29]  Michalis D. Galanis,et al.  Speedups and Energy Reductions From Mapping DSP Applications on an Embedded Reconfigurable System , 2007, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[30]  Arvind,et al.  Executing a Program on the MIT Tagged-Token Dataflow Architecture , 1990, IEEE Trans. Computers.

[31]  Scott A. Mahlke,et al.  Edge-centric modulo scheduling for coarse-grained reconfigurable architectures , 2008, 2008 International Conference on Parallel Architectures and Compilation Techniques (PACT).

[32]  José G. Delgado-Frias,et al.  A Medium-Grain Reconfigurable Architecture for DSP: VLSI Design, Benchmark Mapping, and Performance , 2008, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[33]  Yuichiro Shibata,et al.  HOSMII: A Virtual Hardware Integrated with DRAM , 1998, IPPS/SPDP Workshops.

[34]  Andrew S. Tanenbaum,et al.  Structured computer organization, 5th Edition , 2005 .

[35]  John Teifel,et al.  An asynchronous dataflow FPGA architecture , 2004, IEEE Transactions on Computers.

[36]  Sergio Bampi,et al.  Dynamically reconfigurable architecture for image processor applications , 1999, DAC '99.

[37]  Seth Copen Goldstein,et al.  PipeRench: A Reconfigurable Architecture and Compiler , 2000, Computer.

[38]  Theo Ungerer,et al.  Processor architecture - from dataflow to superscalar and beyond , 1999 .

[39]  Jaehyuk Huh,et al.  Exploiting ILP, TLP, and DLP with the Polymorphous TRIPS Architecture , 2003, IEEE Micro.

[40]  William Stallings Computer Organization and Architecture , 2002 .

[41]  A. Lodi,et al.  A VLIW processor with reconfigurable instruction set for embedded applications , 2003, 2003 IEEE International Solid-State Circuits Conference, 2003. Digest of Technical Papers. ISSCC..