Reconfigurable computing: a survey of systems and software

Due to its potential to greatly accelerate a wide variety of applications, reconfigurable computing has become a subject of a great deal of research. Its key feature is the ability to perform computations in hardware to increase performance, while retaining much of the flexibility of a software solution. In this survey, we explore the hardware aspects of reconfigurable computing machines, from single chip architectures to multi-chip systems, including internal structures and external coupling. We also focus on the software that targets these machines, such as compilation tools that map high-level algorithms directly to the reconfigurable substrate. Finally, we consider the issues involved in run-time reconfigurable systems, which reuse the configurable hardware during program execution.

[1]  Martin D. F. Wong,et al.  Board-level multiterminal net routing for FPGA-based logic emulation , 1997, TODE.

[2]  Paul Chow,et al.  Memory interfacing and instruction specification for reconfigurable processors , 1999, FPGA '99.

[3]  John Wawrzynek,et al.  Fast module mapping and placement for datapaths in FPGAs , 1998, FPGA '98.

[4]  Brad L. Hutchings,et al.  Sequencing Run-Time Reconfigured Hardware with Software , 1996, Fourth International ACM Symposium on Field-Programmable Gate Arrays.

[5]  Dinesh Bhatia,et al.  Performance driven floorplanning for FPGA based designs , 1997, FPGA '97.

[6]  Horácio C. Neto,et al.  Macro-based hardware compilation of Java/sup TM/ bytecodes into a dynamic reconfigurable computing system , 1999, Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00375).

[7]  Wayne Luk,et al.  Pipeline vectorization for reconfigurable systems , 1999, Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00375).

[8]  John Wawrzynek,et al.  Garp: a MIPS processor with a reconfigurable coprocessor , 1997, Proceedings. The 5th Annual IEEE Symposium on Field-Programmable Custom Computing Machines Cat. No.97TB100186).

[9]  Jonathan Rose,et al.  A detailed router for field-programmable gate arrays , 1990, 1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[10]  Apostolos Dollas,et al.  Architecture and design of GE1, an FCCM for Golomb ruler derivation , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[11]  Erich Barke,et al.  A Universal CLA Adder Generator for SRAM-Based FPGAs , 1996, FPL.

[12]  Duncan A. Buell,et al.  Splash 2 - FPGAs in a custom computing machine , 1996 .

[13]  Abdel Ejnioui,et al.  Multiterminal net routing for partial crossbar-based multi-FPGA systems , 2003, IEEE Trans. Very Large Scale Integr. Syst..

[14]  Jean Vuillemin,et al.  A reconfigurable arithmetic array for multimedia applications , 1999, FPGA '99.

[15]  Rob A. Rutenbar,et al.  Satisfiability-based layout revisited: detailed routing of complex FPGAs via search-based Boolean SAT , 1999, FPGA '99.

[16]  Jack S. N. Jean,et al.  Dynamic reconfiguration to support concurrent applications , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[17]  Jonathan Rose,et al.  Synthesis methods for field programmable gate arrays , 1993 .

[18]  Steven Trimberger,et al.  Scheduling designs into a time-multiplexed FPGA , 1998, FPGA '98.

[19]  A. El Gamal,et al.  Synthesis method for field programmable gate arrays , 1993, Proc. IEEE.

[20]  Stephan W. Gehring,et al.  Fast integrated tools for circuit design with FPGAs , 1998, FPGA '98.

[21]  Carl Ebeling,et al.  RaPiD - Reconfigurable Pipelined Datapath , 1996, FPL.

[22]  Zhiyuan Li,et al.  Don't Care discovery for FPGA configuration compression , 1999, FPGA '99.

[23]  Arun K. Somani,et al.  Configuration caching vs data caching for striped FPGAs , 1999, FPGA '99.

[24]  John Wawrzynek,et al.  Object oriented circuit-generators in Java , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[25]  Anant Agarwal,et al.  TIERS: Topology IndependEnt Pipelined Routing and Scheduling for VirtualWire™ Compilation , 1995, Third International ACM Symposium on Field-Programmable Gate Arrays.

[26]  P. Chow,et al.  The design of an SRAM-based field-programmable gate array. I. Architecture , 1999, IEEE Trans. Very Large Scale Integr. Syst..

[27]  Sharad Malik,et al.  Accelerating Boolean satisfiability with configurable hardware , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[28]  David R. Galloway The Transmogrifier C hardware description language and compiler for FPGAs , 1995, Proceedings IEEE Symposium on FPGAs for Custom Computing Machines.

[29]  Carl Ebeling,et al.  Specifying and compiling applications for RaPiD , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[30]  Donald Yeung,et al.  Exploring optimal cost-performance designs for Raw microprocessors , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[31]  Pierre Marchal,et al.  Field-programmable gate arrays , 1999, CACM.

[32]  Yao-Wen Chang,et al.  Algorithms for an FPGA switch module routing problem with application to global routing , 1997, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[33]  Joseph Varghese,et al.  An efficient logic emulation system , 1992, Proceedings 1992 IEEE International Conference on Computer Design: VLSI in Computers & Processors.

[34]  Scott Hauck,et al.  The roles of FPGAs in reprogrammable systems , 1998, Proc. IEEE.

[35]  Brad L. Hutchings,et al.  A dynamic instruction set computer , 1995, Proceedings IEEE Symposium on FPGAs for Custom Computing Machines.

[36]  Scott Hauck,et al.  Runlength compression techniques for FPGA configurations , 1999, Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00375).

[37]  Herman Schmit,et al.  PCI-PipeRench and the SWORDAPI: a system for stream-based reconfigurable computing , 1999, Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00375).

[38]  William H. Mangione-Smith,et al.  A case study of partially evaluated hardware circuits: Key-specific DES , 1997, FPL.

[39]  Kunle Olukotun,et al.  A quantitative analysis of reconfigurable coprocessors for multimedia applications , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[40]  Jonathan Rose,et al.  The Transmogrifier-2: a 1 million gate rapid prototyping system , 1997, FPGA '97.

[41]  Rob Payne Run-time parameterised circuits for the Xilinx XC6200 , 1997, FPL.

[42]  Steven Trimberger,et al.  Architecture issues and solutions for a high-capacity FPGA , 1997, FPGA '97.

[43]  Peter Y. K. Cheung,et al.  A reconfigurable multiplier array for video image processing tasks, suitable for embedding in an FPGA structure , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[44]  Malgorzata Marek-Sadowska,et al.  Partitioning Sequential Circuits on Dynamically Reconfigurable FPGAs , 1999, IEEE Trans. Computers.

[45]  Scott Hauck,et al.  Configuration prefetch for single context reconfigurable coprocessors , 1998, FPGA '98.

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

[47]  Vaughn Betz,et al.  VPR: A new packing, placement and routing tool for FPGA research , 1997, FPL.

[48]  Pinaki Mazumder,et al.  VLSI cell placement techniques , 1991, CSUR.

[49]  André DeHon,et al.  Balancing interconnect and computation in a reconfigurable computing array (or, why you don't really want 100% LUT utilization) , 1999, FPGA '99.

[50]  Jonathan Rose,et al.  Trading quality for compile time: ultra-fast placement for FPGAs , 1999, FPGA '99.

[51]  P. Chow,et al.  The design of a SRAM-based field-programmable gate array-Part II: Circuit design and layout , 1999, IEEE Trans. Very Large Scale Integr. Syst..

[52]  Jan Hoogerbrugge,et al.  ConCISe: a compiler-driven CPLD-based instruction set accelerator , 1999, Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00375).

[53]  Yen-Tai Lai,et al.  Hierarchical interconnection structures for field programmable gate arrays , 1997, IEEE Trans. Very Large Scale Integr. Syst..

[54]  A. El Gamal,et al.  Architecture of field-programmable gate arrays , 1993, Proc. IEEE.

[55]  John Wawrzynek,et al.  The Garp Architecture and C Compiler , 2000, Computer.

[56]  Jason Cong,et al.  Cut ranking and pruning: enabling a general and efficient FPGA mapping solution , 1999, FPGA '99.

[57]  Patrick Lysaght,et al.  A simulation tool for dynamically reconfigurable field programmable gate arrays , 1996, IEEE Trans. Very Large Scale Integr. Syst..

[58]  Bertram Bussell,et al.  Parallel Processing in a Restructurable Computer System , 1963, IEEE Trans. Electron. Comput..

[59]  Nozomu Togawa,et al.  Maple-opt: a performance-oriented simultaneous technology mapping, placement, and global routing algorithm for FPGAs , 1998, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[60]  Andrew Leaver,et al.  Hybrid product term and LUT based architectures using embedded memory blocks , 1999, FPGA '99.

[61]  Brent E. Nelson,et al.  Genetic algorithms in software and in hardware-a performance analysis of workstation and custom computing machine implementations , 1996, 1996 Proceedings IEEE Symposium on FPGAs for Custom Computing Machines.

[62]  Abdel Ejnioui,et al.  Multi-terminal net routing for partial crossbar-based multi-FPGA systems , 1999, FPGA '99.

[63]  Chu Shik Jhon,et al.  A New FPGA Technology Mapping Approach by Cluster Merging , 1996, FPL.

[64]  Mary Jane Irwin,et al.  Logic synthesis for field-programmable gate arrays , 1994, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[65]  Vaughn Betz,et al.  A fast routability-driven router for FPGAs , 1998, FPGA '98.

[66]  Brad L. Hutchings,et al.  Improving functional density through run-time constant propagation , 1997, FPGA '97.

[67]  Seth Copen Goldstein,et al.  Fast compilation for pipelined reconfigurable fabrics , 1999, FPGA '99.

[68]  Anant Agarwal,et al.  Virtual wires: overcoming pin limitations in FPGA-based logic emulators , 1993, [1993] Proceedings IEEE Workshop on FPGAs for Custom Computing Machines.

[69]  Stephen M. Scalera,et al.  The design and implementation of a context switching FPGA , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[70]  Frank Vahid I/O and performance tradeoffs with the FunctionBus during multi-FPGA partitioning , 1997, FPGA '97.

[71]  Malgorzata Marek-Sadowska,et al.  Partitioning sequential circuits on dynamically reconfiguable FPGAs , 1998, FPGA '98.

[72]  Satnam Singh,et al.  Debugging techniques for dynamically reconfigurable hardware , 1999, Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00375).

[73]  Wai Keung Wong,et al.  FPGA implementation of a microcoded elliptic curve cryptographic processor , 2000, Proceedings 2000 IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00871).

[74]  Maya Gokhale,et al.  The NAPA adaptive processing architecture , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[75]  Shih-Chieh Chang,et al.  Technology mapping for TLU FPGAs based on decomposition of binary decision diagrams , 1996, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[76]  Seth Copen Goldstein,et al.  Managing pipeline-reconfigurable FPGAs , 1998, FPGA '98.

[77]  Gaetano Borriello,et al.  Pin assignment for multi-FPGA systems , 1997, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[78]  Reiner W. Hartenstein,et al.  An operating system for custom computing machines based on the Xputer paradigm , 1997, FPL.

[79]  Allen C.-H. Wu,et al.  A performance and routability-driven router for FPGAs considering path delays , 1997, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[80]  Mark de Wit,et al.  A dynamic reconfiguration run-time system , 1997, Proceedings. The 5th Annual IEEE Symposium on Field-Programmable Custom Computing Machines Cat. No.97TB100186).

[81]  Dinesh Bhatia,et al.  Temporal Partitioning and Scheduling Data Flow Graphs for Reconfigurable Computers , 1999, IEEE Trans. Computers.

[82]  Zhiyuan Li,et al.  Configuration relocation and defragmentation for run-time reconfigurable computing , 2002, IEEE Trans. Very Large Scale Integr. Syst..

[83]  Wayne Luk,et al.  Automating production of run-time reconfigurable designs , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[84]  William H. Mangione-Smith,et al.  Factoring large numbers with programmable hardware , 2000, FPGA '00.

[85]  Mohammed A. S. Khalid ROUTING ARCHITECTURE AND LAYOUT SYNTHESIS FOR MULTI-FPGA SYSTEMS , 1999 .

[86]  Wayne Luk,et al.  Pipeline morphing and virtual pipelines , 1997, FPL.

[87]  Carl Ebeling,et al.  Mesh routing topologies for multi-FPGA systems , 1998, IEEE Trans. Very Large Scale Integr. Syst..

[88]  Carl Ebeling,et al.  PathFinder: A Negotiation-Based Performance-Driven Router for FPGAs , 1995, Third International ACM Symposium on Field-Programmable Gate Arrays.

[89]  共立出版株式会社 コンピュータ・サイエンス : ACM computing surveys , 1978 .

[90]  Gabriele Saucier,et al.  Input-driven partitioning methods and application to synthesis on table-lookup-based FPGAs , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[91]  Gulsun Yasar,et al.  Reconfigurable computing: a survey of systems and software , 2002, CSUR.

[92]  Andrew A. Chien,et al.  Safe and protected execution for the Morph/AMRM reconfigurable processor , 1999, Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00375).

[93]  Dinesh Bhatia,et al.  A methodology for fast FPGA floorplanning , 1999, FPGA '99.

[94]  Brad L. Hutchings,et al.  JHDL-an HDL for reconfigurable systems , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[95]  Lorenz Huelsbergen,et al.  A representation for dynamic graphs in reconfigurable hardware and its application to fundamental graph algorithms , 2000, FPGA '00.

[96]  Carlos Beltrán Almeida,et al.  A hardware/software partitioning algorithm for custom computing machines , 1997, FPL.

[97]  Rob A. Rutenbar,et al.  FPGA routing and routability estimation via Boolean satisfiability , 1997, FPGA '97.

[98]  David M. Lewis,et al.  Routing architectures for hierarchical field programmable gate arrays , 1994, Proceedings 1994 IEEE International Conference on Computer Design: VLSI in Computers and Processors.

[99]  Scott Hauck,et al.  Configuration Relocation and Defragmentation for FPGAs , 2001 .

[100]  Jonathan Rose,et al.  A hybrid complete-graph partial-crossbar routing architecture for multi-FPGA systems , 1998, FPGA '98.

[101]  Ralph Wittig,et al.  OneChip: an FPGA processor with reconfigurable logic , 1996, 1996 Proceedings IEEE Symposium on FPGAs for Custom Computing Machines.

[102]  Edward J. McCluskey,et al.  A reliable LZ data compressor on reconfigurable coprocessors , 2000, Proceedings 2000 IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00871).

[103]  Milan Vasilko,et al.  Improving simulation accuracy in design methodologies for dynamically reconfigurable logic systems , 1999, Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00375).

[104]  André DeHon,et al.  DPGA Utilization and Application , 1996, Fourth International ACM Symposium on Field-Programmable Gate Arrays.

[105]  Allen C.-H. Wu,et al.  A Performance and Routability Driven Router for FPGAs Considering Path Delays , 1995, 32nd Design Automation Conference.

[106]  Qiang Wang,et al.  Automated field-programmable compute accelerator design using partial evaluation , 1997, Proceedings. The 5th Annual IEEE Symposium on Field-Programmable Custom Computing Machines Cat. No.97TB100186).

[107]  Malgorzata Marek-Sadowska,et al.  Routing for array-type FPGA's , 1997, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[108]  Steven J. E. Wilton,et al.  SMAP: heterogeneous technology mapping for area reduction in FPGAs with embedded memory arrays , 1998, FPGA '98.

[109]  Karl S. Hemmert,et al.  A CAD suite for high-performance FPGA design , 1999, Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00375).

[110]  Gabriel Robins,et al.  New Performance-Driven FPGA Routing Algorithms , 1996, 32nd Design Automation Conference.

[111]  Peter M. Athanas,et al.  Hardware-software codesign and parallel implementation of a Golomb ruler derivation engine , 2000, Proceedings 2000 IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00871).

[112]  Martine D. F. Schlag,et al.  Acceleration of an FPGA router , 1997, Proceedings. The 5th Annual IEEE Symposium on Field-Programmable Custom Computing Machines Cat. No.97TB100186).

[113]  Martin D. F. Wong,et al.  Circuit partitioning for dynamically reconfigurable FPGAs , 1999, FPGA '99.

[114]  Jason Cong,et al.  An efficient algorithm for performance-optimal FPGA technology mapping with retiming , 1998, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[115]  Yanbing Li,et al.  Hardware-software co-design of embedded reconfigurable architectures , 2000, DAC.

[116]  Arun K. Somani,et al.  A reconfigurable multi-function computing cache architecture , 2000, FPGA '00.

[117]  Maya Gokhale,et al.  NAPA C: compiling for a hybrid RISC/FPGA architecture , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[118]  Michael D. Smith,et al.  A high-performance microarchitecture with hardware-programmable functional units , 1994, Proceedings of MICRO-27. The 27th Annual IEEE/ACM International Symposium on Microarchitecture.

[119]  Jonathan Rose,et al.  The Design of an SRAM-Based Field-Programmable Gate Array — Part I : Architecture , 1999 .

[120]  Peichen Pan,et al.  A new retiming-based technology mapping algorithm for LUT-based FPGAs , 1998, FPGA '98.

[121]  Brad L. Hutchings,et al.  Exploiting reconfigurability through domain-specific systems , 1997, FPL.

[122]  Anant Agarwal,et al.  Software Technologies for Reconfigurable Systems , 1996 .

[123]  Michael J. Flynn,et al.  PAM-Blox: high performance FPGA design for adaptive computing , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[124]  Gabriele Saucier,et al.  Synthesis and floorplanning for large hierarchical FPGAs , 1997, FPGA '97.

[125]  Maya Gokhale,et al.  Automatic allocation of arrays to memories in FPGA processors with multiple memory banks , 1999, Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00375).

[126]  John P. Hayes,et al.  General modeling and technology-mapping technique for LUT-based FPGAs , 1997, FPGA '97.

[127]  Zhiyuan Li,et al.  Configuration caching management techniques for reconfigurable computing , 2000, Proceedings 2000 IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00871).

[128]  Brad L. Hutchings,et al.  Automated target recognition on SPLASH 2 , 1997, Proceedings. The 5th Annual IEEE Symposium on Field-Programmable Custom Computing Machines Cat. No.97TB100186).

[129]  Reiner W. Hartenstein,et al.  Field-Programmable Logic Smart Applications, New Paradigms and Compilers , 1996, Lecture Notes in Computer Science.

[130]  Zhiyuan Li,et al.  Configuration compression for the Xilinx XC6200 FPGA , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[131]  S. Cadambi,et al.  CPR: a configuration profiling tool , 1999, Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00375).

[132]  George Varghese,et al.  HSRA: high-speed, hierarchical synchronous reconfigurable array , 1999, FPGA '99.

[133]  Scott Hauck,et al.  The Chimaera reconfigurable functional unit , 1997, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[134]  Csaba Andras Moritz,et al.  Parallelizing applications into silicon , 1999, Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00375).

[135]  Duncan A. Buell,et al.  Splash 2 , 1992, SPAA.

[136]  Mark Shand,et al.  Programmable active memories: reconfigurable systems come of age , 1996, IEEE Trans. Very Large Scale Integr. Syst..

[137]  Jason Cong,et al.  Technology mapping for FPGAs with embedded memory blocks , 1998, FPGA '98.

[138]  Keith R. Dimond,et al.  Automatic mapping of algorithms onto multiple FPGA-SRAM modules , 1997, FPL.

[139]  Wayne Luk,et al.  Compilation tools for run-time reconfigurable designs , 1997, Proceedings. The 5th Annual IEEE Symposium on Field-Programmable Custom Computing Machines Cat. No.97TB100186).

[140]  Jason Cong,et al.  Boolean matching for complex PLBs in LUT-based FPGAs with application to architecture evaluation , 1998, FPGA '98.

[141]  Erik L. Dagless,et al.  Technology mapping of LUT based FPGAs for delay optimisation , 1997, FPL.

[142]  Vaughn Betz,et al.  FPGA routing architecture: segmentation and buffering to optimize speed and density , 1999, FPGA '99.

[143]  Viktor K. Prasanna,et al.  Seeking Solutions in Configurable Computing , 1997, Computer.

[144]  Stephan W. Gehring,et al.  The Trianus System and Its Application to Custom Computing , 1996, FPL.

[145]  Steven Trimberger,et al.  A time-multiplexed FPGA , 1997, Proceedings. The 5th Annual IEEE Symposium on Field-Programmable Custom Computing Machines Cat. No.97TB100186).

[146]  Gabriele Saucier,et al.  Using cone structures for circuit partitioning into FPGA packages , 1998, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[147]  Gabriele Saucier,et al.  Timing driven floorplanning on programmable hierarchical targets , 1998, FPGA '98.

[148]  Toshiaki Miyazaki,et al.  More wires and fewer LUTs: a design methodology for FPGAs , 1998, FPGA '98.

[149]  Oliver Diessel,et al.  Run-time compaction of FPGA designs , 1997, FPL.

[150]  Maurice Kilavuka Inuani,et al.  Technology mapping of heterogeneous LUT-based FPGAs , 1997, FPL.

[151]  Christof Paar,et al.  An FPGA implementation and performance evaluation of the Serpent block cipher , 2000, FPGA '00.