Exploring Shared SRAM Tables in FPGAs for Larger LUTs and Higher Degree of Sharing

In modern SRAM based Field Programmable Gate Arrays, a Look-Up Table (LUT) is the principal constituent logic element which can realize every possible Boolean function. However, this flexibility of LUTs comes with a heavy area penalty. A part of this area overhead comes from the increased amount of configuration memory which rises exponentially as the LUT size increases. In this paper, we first present a detailed analysis of a previously proposed FPGA architecture which allows sharing of LUTs memory (SRAM) tables among NPN-equivalent functions, to reduce the area as well as the number of configuration bits. We then propose several methods to improve the existing architecture. A new clustering technique has been proposed which packs NPN-equivalent functions together inside a Configurable Logic Block (CLB). We also make use of a recently proposed high performance Boolean matching algorithm to perform NPN classification. To enhance area savings further, we evaluate the feasibility of more than two LUTs sharing the same SRAM table. Consequently, this work explores the SRAM table sharing approach for a range of LUT sizes (4–7), while varying the cluster sizes (4–16). Experimental results on MCNC benchmark circuits set show an overall area reduction of ~7% while maintaining the same critical path delay.

[1]  Takashi Horiyama,et al.  Folding of logic functions and its application to look up table compaction , 2002, IEEE/ACM International Conference on Computer Aided Design, 2002. ICCAD 2002..

[2]  Masahiro Iida,et al.  A logic cell architecture exploiting the shannon expansion for the reduction of configuration memory , 2014, 2014 24th International Conference on Field Programmable Logic and Applications (FPL).

[3]  Vaughn Betz,et al.  Using cluster-based logic blocks and timing-driven packing to improve FPGA speed and density , 1999, FPGA '99.

[4]  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.

[5]  Stephen D. Brown,et al.  Flexibility of interconnection structures for field-programmable gate arrays , 1991 .

[6]  Zeljko Zilic,et al.  Using Decision Diagrams to Design ULMs for FPGAs , 1998, IEEE Trans. Computers.

[7]  J. Rose,et al.  The effect of LUT and cluster size on deep-submicron FPGA performance and density , 2000, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[8]  Vaughn Betz,et al.  How Much Logic Should Go in an FPGA Logic Block? , 1998, IEEE Des. Test Comput..

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

[10]  André I. Reis,et al.  Classifying n-Input Boolean Functions , 2001 .

[11]  Qiang Wang,et al.  Area-efficient FPGA logic elements: Architecture and synthesis , 2011, 16th Asia and South Pacific Design Automation Conference (ASP-DAC 2011).

[12]  Zheng Huang,et al.  Fast Boolean matching based on NPN classification , 2013, 2013 International Conference on Field-Programmable Technology (FPT).

[13]  Masahiro Iida,et al.  COGRE: A Configuration Memory Reduced Reconfigurable Logic Cell Architecture for Area Minimization , 2010, 2010 International Conference on Field Programmable Logic and Applications.

[14]  Fatih Kocan,et al.  Sharing of SRAM Tables Among NPN-Equivalent LUTs in SRAM-Based FPGAs , 2007, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[15]  Guy Lemieux,et al.  Using sparse crossbars within LUT , 2001, FPGA '01.

[16]  Vaughn Betz,et al.  Architecture and CAD for Deep-Submicron FPGAS , 1999, The Springer International Series in Engineering and Computer Science.

[17]  Anthony J. Yu,et al.  Directional and single-driver wires in FPGA interconnect , 2004, Proceedings. 2004 IEEE International Conference on Field- Programmable Technology (IEEE Cat. No.04EX921).

[18]  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).

[19]  Muhammad Rashid,et al.  Exploring shared SRAM tables among NPN equivalent large LUTs in SRAM-based FPGAs , 2016, 2016 International Conference on Field-Programmable Technology (FPT).

[20]  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).