An Efficient SRAM-Based Reconfigurable Architecture for Embedded Processors

Nowadays, embedded processors are widely used in wide range of domains from low-power to safety-critical applications. By providing prominent features such as variant peripheral support and flexibility to partial or major design modifications, field-programmable gate arrays (FPGAs) are commonly used to implement either an entire embedded system or a hardware description language-based processor, known as soft-core processor. FPGA-based designs, however, suffer from high power consumption, large die area, and low performance that hinders common use of soft-core processors in low-power embedded systems. In this paper, we present an efficient reconfigurable architecture to implement soft-core embedded processors in SRAM-based FPGAs by using characteristics such as low utilization and fragmented accessibility of comprising units. To this end, we integrate the low utilized functional units into efficiently designed look-up table (LUT)-based reconfigurable units (RUs). To further improve the efficiency of the proposed architecture, we used a set of efficient configurable hard logics that implement frequent Boolean functions while the other functions will still be employed by LUTs. We have evaluated effectiveness of the proposed architecture by implementing the Berkeley RISC-V processor and running MiBench benchmarks. We have also examined the applicability of the proposed architecture on an alternative open-source processor (i.e., LEON2) and a digital signal processing core. Experimental results show that the proposed architecture as compared to the conventional LUT-based soft-core processors improves area footprint, static power, energy consumption, and total execution time by 30.7%, 32.5%, 36.9%, and 6.3%, respectively.

[1]  Karthikeyan Sankaralingam,et al.  Dark Silicon and the End of Multicore Scaling , 2012, IEEE Micro.

[2]  Frank Vahid,et al.  Warp Processors , 2006, ACM Trans. Design Autom. Electr. Syst..

[3]  Stephen Dean Brown,et al.  Experiences with soft-core processor design , 2005, 19th IEEE International Parallel and Distributed Processing Symposium.

[4]  Rudy Lauwereins,et al.  ADRES: An Architecture with Tightly Coupled VLIW Processor and Coarse-Grained Reconfigurable Matrix , 2003, FPL.

[5]  Wayne Luk,et al.  An FPGA Architecture and CAD Flow Supporting Dynamically Controlled Power Gating , 2016, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[6]  Norman P. Jouppi,et al.  CACTI 6.0: A Tool to Model Large Caches , 2009 .

[7]  Hadi Esmaeilzadeh,et al.  TABLA: A unified template-based framework for accelerating statistical machine learning , 2016, 2016 IEEE International Symposium on High Performance Computer Architecture (HPCA).

[8]  Peter Marwedel,et al.  Embedded system design , 2010, Embedded Systems.

[9]  Pascal Benoit,et al.  The SecretBlaze: A Configurable and Cost-Effective Open-Source Soft-Core Processor , 2011, 2011 IEEE International Symposium on Parallel and Distributed Processing Workshops and Phd Forum.

[10]  Yunsup Lee,et al.  A 45nm 1.3GHz 16.7 double-precision GFLOPS/W RISC-V processor with vector accelerators , 2014, ESSCIRC 2014 - 40th European Solid State Circuits Conference (ESSCIRC).

[11]  Andreas Kuehlmann,et al.  Building a Better Boolean Matcher and Symmetry Detector , 2006, Proceedings of the Design Automation & Test in Europe Conference.

[12]  Hossein Asadi,et al.  A power gating switch box architecture in routing network of SRAM-based FPGAs in dark silicon era , 2017, Design, Automation & Test in Europe Conference & Exhibition (DATE), 2017.

[13]  Steven J. E. Wilton,et al.  A configurable architecture to limit wakeup current in dynamically-controlled power-gated FPGAs , 2012, FPGA '12.

[14]  Mehdi Baradaran Tahoori,et al.  Analytical Techniques for Soft Error Rate Modeling and Mitigation of FPGA-Based Designs , 2007, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

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

[16]  Paul Chow,et al.  The effect of reconfigurable units in superscalar processors , 2001, FPGA.

[17]  R. Brayton,et al.  Benchmarking Method and Designs Targeting Logic Synthesis for FPGAs , 2007 .

[18]  Jürgen Teich,et al.  Hardware/Software Codesign: The Past, the Present, and Predicting the Future , 2012, Proceedings of the IEEE.

[19]  Gert Goossens,et al.  Code Generation for Embedded Processors , 1995 .

[20]  J. Gregory Steffan,et al.  The microarchitecture of FPGA-based soft processors , 2005, CASES '05.

[21]  Steven J. E. Wilton,et al.  An FPGA architecture supporting dynamically controlled power gating , 2010, 2010 International Conference on Field-Programmable Technology.

[22]  John Wawrzynek,et al.  Chisel: Constructing hardware in a Scala embedded language , 2012, DAC Design Automation Conference 2012.

[23]  Vaughn Betz,et al.  Automatic circuit design and modelling for heterogeneous FPGAs , 2017, 2017 International Conference on Field Programmable Technology (ICFPT).

[24]  Hossein Asadi,et al.  PEAF: A Power-Efficient Architecture for SRAM-Based FPGAs Using Reconfigurable Hard Logic Design in Dark Silicon Era , 2017, IEEE Transactions on Computers.

[25]  Frank Vahid,et al.  Specification and Design of Embedded Hardware-Software Systems , 1995, IEEE Des. Test Comput..

[26]  Wei Zhang,et al.  Low-power 3D nano/CMOS hybrid dynamically reconfigurable architecture , 2010, JETC.

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

[28]  Hossein Asadi,et al.  A Scalable Dependability Scheme for Routing Fabric of SRAM-Based Reconfigurable Devices , 2015, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[29]  J. Gregory Steffan,et al.  Improving Pipelined Soft Processors with Multithreading , 2007, 2007 International Conference on Field Programmable Logic and Applications.

[30]  Houman Homayoun,et al.  Reconfigurable STT-NV LUT-based functional units to improve performance in general-purpose processors , 2014, GLSVLSI '14.

[31]  Srinivas Katkoori,et al.  A Framework for Power-Gating Functional Units in Embedded Microprocessors , 2009, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[32]  Majid Sarrafzadeh,et al.  Low Power Light-weight Embedded Systems , 2006, ISLPED'06 Proceedings of the 2006 International Symposium on Low Power Electronics and Design.

[33]  Vaughn Betz,et al.  Comparing FPGA vs. custom cmos and the impact on processor microarchitecture , 2011, FPGA '11.

[34]  Pradip Bose,et al.  Microarchitectural techniques for power gating of execution units , 2004, Proceedings of the 2004 International Symposium on Low Power Electronics and Design (IEEE Cat. No.04TH8758).

[35]  Sen Wang,et al.  VTR 7.0: Next Generation Architecture and CAD System for FPGAs , 2014, TRETS.

[36]  Fredrik Larsson,et al.  Simics: A Full System Simulation Platform , 2002, Computer.

[37]  Mohammed A. S. Khalid,et al.  Soft-Core Processors for Embedded Systems , 2006, 2006 International Conference on Microelectronics.

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

[39]  Jonathan Rose,et al.  Measuring the Gap Between FPGAs and ASICs , 2007, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[40]  Andreas Moshovos,et al.  CHIMAERA: a high-performance architecture with a tightly-coupled reconfigurable functional unit , 2000, Proceedings of 27th International Symposium on Computer Architecture (IEEE Cat. No.RS00201).

[41]  Hossein Asadi,et al.  An efficient reconfigurable architecture by characterizing most frequent logic functions , 2015, 2015 25th International Conference on Field Programmable Logic and Applications (FPL).

[42]  Michael Barr,et al.  Programming embedded systems in C and C , 1999 .

[43]  Mohammad Hosseinabady,et al.  Run-time power gating in hybrid ARM-FPGA devices , 2014, 2014 24th International Conference on Field Programmable Logic and Applications (FPL).

[44]  Jonathan Rose,et al.  The effect of LUT and cluster size on deep-submicron FPGA performance and density , 2004 .

[45]  Trevor Mudge,et al.  MiBench: A free, commercially representative embedded benchmark suite , 2001 .

[46]  Mehdi Baradaran Tahoori,et al.  Towards dark silicon era in FPGAs using complementary hard logic design , 2014, 2014 24th International Conference on Field Programmable Logic and Applications (FPL).

[47]  Houman Homayoun,et al.  Exploiting STT-NV technology for reconfigurable, high performance, low power, and low temperature functional unit design , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).