A Decoder – Look up Tables for FPGAs


  • Sergey F. Tyurin
  • Ruslan V. Vikhorev




Architecture, CMOS, FPGA Synthesis, Layout


The FPGA (Field-Programmable Gate Array) has recently become the popular hardware and so-called LUTs (Look up Tables) are the basic of the FPGAs logic. For example, n-LUT is the MOS pass transistors multiplexer 2n-1 which input data receive SRAM cells logic function configuration (user’s projects Truth Table). Address inputs of the LUT are the variables. Therefore, we get one n-arguments logic function for the actual FPGA configuration. To get m functions (even with the same n-arguments) we should take m LUT. Authors propose a novel Decoder n-LUT (n-DC LUT), which makes possible to get m functions with the same n-arguments, like in Program Logic Array (PLA) CPLD (Complex Programmable Logic Device). DC LUT activates one of the 2n product terms outputs. Combined with OR product terms we can get m functions with the same n-arguments. To do this option we can use, for example, FPGAs typical connections units. The restriction of Meade-Conway for the FPGAs allows n=3 in one tree. Two 3-LUTs with one 1-LUTs form 4-LUT. Modern Adaptive Logic Modules (ALM) have n=8, but not all possible functions are implemented. The article deals with the design and investigation of some variants 3-DC LUT: with pull up output resistors, with orthogonal output circuits, with orthogonal transistors for each pass transistor. Simulation confirms the feasibility of the proposed method and shows that DC LUT with orthogonal output circuits is better variant of the systems realization in terms of current consumption and time delay at large n. A further development of the ALM concept may be the introduction of adaptive DC LUT, which, by tuning, can calculate single LUT function or 2n decoder functions. The proposed elements allow to increase the functionality of the FPGAs.


S. Brown, Architecture of FPGAs and CPLDs: A Tutorial. [Online]. Available at: https://www.ece.iastate.edu/~zambreno/classes/cpre583/documents/BroRos96A.pdf (accessed: 04.06.2021).

A. Kaviani, S. Brown, Hybrid FPGA architecture, Available at: https://https://www.eecg.utoronto.ca/~brown/papers/fpga96-kaviani.pdf (accessed 04.06.2021)

C. H. Ho, C. W. Yu, P. H. W. Leong, W. Luk and S. J. E. Wilton, "Domain-specific hybrid FPGA: Architecture and floating point applications,” Proceedings of the 2007 International Conference on Field Programmable Logic and Applications, 2007, pp. 196-201, https://doi.org/10.1109/FPL.2007.4380647.

M. Ebrahimi, R. Sadeghi and Z. Navabi, “LUT Input reordering to reduce aging impact on FPGA LUTs,” IEEE Transactions on Computers, vol. 69, no. 10, pp. 1500-1506, 2020. https://doi.org/10.1109/TC.2020.2974955.

N. Mehta, An Ultra-Low-Energy, Variation-Tolerant FPGA Architecture using Component-Specific Mapping, Ph.D. Thesis, California Institute of Technology, [Online]. Available at: http://thesis.library.caltech.edu/7226/1/Nikil-Mehta-2013.pdf.

C. Chiasson, Optimization and Modeling of FPGA Circuitry in Advanced Process Technology, Master Thesis, University of Toronto, 2013. [Online]. Available at: https://tspace.library.utoronto.ca/bitstream/1807/42733/3/Chiasson_Charles_RE_201311_MASc_thesis.pdf.

Field Programmable Gate Arrays, [Online]. Available at: http://www.eng.auburn.edu/~nelson/courses/elec4200/FPGA/FPGAoverview.pdf.

FPGA Architecture White Paper – Altera. [Online]. Available at: https://www.altera.com/en_US/pdfs/literature/wp/wp-01003.pdf.

7 Series FPGAs Data Sheet: Overview, [Online]. Available at: https://www.xilinx.com/support/documentation/data_sheets/ds180_7Series_Overview.pdf.

S. Tyurin, “A Quad CMOS gates checking method,” International Journal of Computing, vol. 18, issue 3, pp. 258-264, 2019. https://doi.org/10.47839/ijc.18.3.1518.

A. Drozd, M. Drozd, O. Martynyuk, M. Kuznietsov, “Improving of a circuit checkability and trustworthiness of data processing results in LUT-based FPGA components of safety-related systems,” CEUR Workshop Proceedings, vol. 1844, pp. 654–661, 2017.

A. Drozd, M. Drozd, M. Kuznietsov, “Use of natural LUT redundancy to improve trustworthiness of FPGA design,” CEUR Workshop Proceedings, vol. 1614, pp. 322–331, 2016.

S. Gao, D. Al-Khalili, N. Chabini, “An improved BCD adder using 6-LUT FPGAs,” Proceedings of the IEEE 10th International New Circuits and Systems Conference, NEWCAS, 2012, pp. 13-16. https://doi.org/10.1109/NEWCAS.2012.6328944.

H. Gao, Y. Yang, G. Dong, “Theoretical analysis of effect of LUT size on area and delay of FPGA,” 2005. [Online]. Available at: https://www.researchgate.net/publication/294490633_Theoretical_analysis_of_effect_of_LUT_size_on_area_and_delay_of_FPGA.

V. S. Vinitha, R. K. Sharma, “An efficient LUT Design on FPGA for memory-based multiplication,” Iranian Journal of Electrical and Electronic Engineering, no. 4, pp. 462–476, 2019.

C. A. Mead, L. Conway, Introduction to VLSI Systems. [Online]. Available at: https://www.betterworldbooks.com/product/detail/Introduction-to-VLSI-Systems-9780201043587.

N. Paydavosi, BSIM4v4.8.0 MOSFET Model -User’s Manual 2013 Available at: http://bsim.berkeley.edu/BSIM4/BSIM480.zip.

CAD MicroWind. [Online]. Available at: https://www.microwind.net.

E. Fredkin and T. Toffoli, “Conservative logic,” International Journal of Theoretical Physics, vol. 21, issue 3/4, pp. 219-253, 1982. https://doi.org/10.1007/BF01857727.

K. Morita, “Reversible logic gates,” In: Theory of Reversible Computing. Monographs in Theoretical Computer Science. An EATCS Series. Springer, Tokyo: https://doi.org/10.1007/978-4-431-56606-9_4.

T. Toffoli, “Reversible computing,” In: de Bakker J., van Leeuwen J. (eds) Automata, Languages and Programming. ICALP 1980. Lecture Notes in Computer Science, 1980, vol 85. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-10003-2_104.




How to Cite

Tyurin, S. F., & Vikhorev, R. V. (2021). A Decoder – Look up Tables for FPGAs. International Journal of Computing, 20(3), 365-373. https://doi.org/10.47839/ijc.20.3.2282