Mapping Outputs and States Encoding Bits to Outputs Using Multiplexers in Finite State Machine Implementations
Abstract
:1. Introduction
2. Background
3. Mapping Outputs and States Encoding Bits to Outputs by Means of Multiplexers
4. Integer Linear Programming Formulation
- for all , which is equal to one if and only if can be generated from and via a multiplexer controlled by so that for all transitions in which , and for the remaining ( is therefore mapped to and ).
- for all , which is equal to one if and only if can be generated from and via a multiplexer controlled by so that for all transitions in which , and for the remaining ( is therefore mapped to and ).
- for all , which represents the value of the for the transition corresponding to the i-th row of the STT. Note that must be equal to for all such that (i.e., is not a don’t care); however, the remainder values of will be determined by the solver.
- for all , which represents the j-th bit of the encoding of .
- for all such that , which is equal to one if and only if i-th bit of the encoding of and that of are different.
5. Experimental Results
6. Conclusions
Author Contributions
Funding
Acknowledgments
Conflicts of Interest
References
- Katz, R.H. Contemporary Logic Design; Benjamin/Cummings: Redwood City, CA, USA, 1994. [Google Scholar]
- Barkalov, A.; Titarenko, L. Logic Synthesis for FSM-Based Control Units; Lecture Notes in Electrical Engineering; Springer: Berlin/Heidelberg, Germany, 2009. [Google Scholar]
- Barkalov, A.; Titarenko, L.; Kolopienczyk, M.; Mielcarek, K.; Bazydlo, G. Design of EMB-Based Mealy FSMs. In Logic Synthesis for FPGA-Based Finite State Machines; Springer International Publishing: Berlin/Heidelberg, Germany, 2016; pp. 193–237. [Google Scholar] [CrossRef]
- Baranov, S. Logic and System Design of Digital Systems; TUT Press: Tallin, Estonia, 2008. [Google Scholar]
- Barkalov, A.; Titarenko, L.; Mielcarek, K.; Chmielewski, S. Twofold State Assignment for Mealy FSMs. In Logic Synthesis for FPGA-Based Control Units; Springer: Berlin/Heidelberg, Germany, 2020; pp. 61–90. [Google Scholar]
- Barkalov, A.; Titarenko, L.; Mielcarek, K.; Chmielewski, S. Twofold State Assignment for Moore FSMs. In Logic Synthesis for FPGA-Based Control Units; Springer: Berlin/Heidelberg, Germany, 2020; pp. 91–116. [Google Scholar]
- El-Maleh, A. A Probabilistic Tabu Search State Assignment Algorithm for Area and Power Optimization of Sequential Circuits. Arab. J. Sci. Eng. 2020, 45, 6273–6285. [Google Scholar] [CrossRef]
- da Silva Ribeiro, R.; de Carvalho, R.L.; da Silva Almeida, T. Optimization of state assignment in a finite state machine. Acad. J. Comput. Eng. Appl. Math. 2022, 3, 9–16. [Google Scholar] [CrossRef]
- Solov’ev, V. Minimization of mealy finite-state machines by using the values of the output variables for state assignment. J. Comput. Syst. Sci. Int. 2017, 56, 96–104. [Google Scholar] [CrossRef]
- Salauyou, V.; Ostapczuk, M. State Assignment of Finite-State Machines by Using the Values of Output Variables. In Theory and Applications of Dependable Computer Systems. Advances in Intelligent Systems and Computing; Springer: Berlin/Heidelberg, Germany, 2020; Volume 1173, pp. 91–116. [Google Scholar]
- Das, N.; Priya P, A. Reset: A Reconfigurable state encoding technique for FSM to achieve security and hardware optimality. Microprocess. Microsyst. 2020, 77, 103196. [Google Scholar] [CrossRef]
- Barkalov, A.A.; Titarenko, L.; Mielcarek, K. Reducing LUT Count for Mealy FSMs With Transformation of States. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2022, 41, 1400–1411. [Google Scholar] [CrossRef]
- Aly, W.M. Solving the State Assignment Problem Using Stochastic Search Aided with Simulated Annealing. Am. J. Eng. Appl. Sci. 2009, 2, 703–707. [Google Scholar] [CrossRef] [Green Version]
- De Micheli, G.; Brayton, R.; Sangiovanni-Vincentelli, A. Optimal State Assignment for Finite State Machines. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1985, 4, 269–285. [Google Scholar] [CrossRef] [Green Version]
- Villa, T.; Sangiovanni-Vincentelli, A. NOVA: State assignment of finite state machines for optimal two-level logic implementation. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1990, 9, 905–924. [Google Scholar] [CrossRef] [Green Version]
- Mengibar, L.; Entrena, L.; Lorenz, M.; Millan, E. Partitioned state encoding for low power in FPGAs. Electron. Lett. 2005, 41, 948–949. [Google Scholar] [CrossRef]
- Chen, D.S.; Sarrafzadeh, M.; Yeap, G. State encoding of finite state machines for low power design. In Proceedings of the 1995 IEEE International Symposium on Circuits and Systems (ISCAS), Seattle, DC, USA, 30 April–3 May 1995; Volume 3, pp. 2309–2312. [Google Scholar] [CrossRef]
- Avedillo, M.; Quintana, J.; Huertas, J. State merging and state splitting via state assignment: A new FSM synthesis algorithm. IEEE Proc. Comput. Digit. Tech. 1994, 141, 229–237. [Google Scholar] [CrossRef] [Green Version]
- Almaini, A.; Miller, J.; Thomson, P.; Billina, S. State assignment of finite state machines using a genetic algorithm. IEEE Proc. Comput. Digit. Tech. 1995, 142, 279–286. [Google Scholar] [CrossRef] [Green Version]
- El-Maleh, A.; Sait, S.; Nawaz Khan, F. Finite state machine state assignment for area and power minimization. In Proceedings of the 2006 IEEE International Symposium on Circuits and Systems, Kos, Greece, 21–24 May 2006; p. 4. [Google Scholar]
- Wei, R.S.; Tseng, C.J. Column compaction and its application to the control path synthesis. In Proceedings of the 1987 IEEE International Conference on Computer-Aided Design Digest of Technical Papers, Santa Clara, CA, USA, 9–12 November 1987; Volume 87, pp. 320–323. [Google Scholar]
- Binger, D.; Knapp, D. Encoding multiple outputs for improved column compaction. In Proceedings of the 1991 IEEE International Conference on Computer-Aided Design Digest of Technical Papers, Santa Clara, CA, USA, 11–14 November 1991; pp. 230–233. [Google Scholar] [CrossRef]
- Mitra, S.; Avra, L.; McCluskey, E. An output encoding problem and a solution technique. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1999, 18, 761–768. [Google Scholar] [CrossRef]
- Le Gal, B.; Ribon, A.; Bossuet, L.; Dallet, D. Area optimization of ROM-based controllers dedicated to digital signal processing applications. In Proceedings of the 2010 18th European Signal Processing Conference, Aalborg, Denmark, 23–27 August 2010; pp. 547–551. [Google Scholar]
- Lee, S.; Choi, K. Critical-Path-Aware High-Level Synthesis with Distributed Controller for Fast Timing Closure. ACM Trans. Des. Autom. Electron. Syst. 2014, 19, 1–29. [Google Scholar] [CrossRef]
- Xilinx. 7 Series FPGAs Configurable Logic Block: User Guide. 2016. Available online: https://docs.xilinx.com/v/u/en-US/ug474_7Series_CLB (accessed on 17 January 2023).
- Yang, S. Logic Synthesis and Optimization Benchmarks User Guide, Version 3.0; Microelectronic Center of North Carolina: Research Triangle, NC, USA, 1991. [Google Scholar]
- Rho, J.K.; Hachtel, G.D.; Somenzi, F.; Jacoby, R.M. Exact and heuristic algorithms for the minimization of incompletely specified state machines. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1994, 13, 167–177. [Google Scholar] [CrossRef]
- Gurobi Optimization. Gurobi Optimizer Reference Manual. 2020. Available online: http://www.gurobi.com (accessed on 17 January 2023).
CONV | OMOSEBO | Comparison | ||||
---|---|---|---|---|---|---|
FSM | # LUTs | Freq. | # LUTs | Freq. | LUT Red. | Freq. Inc. |
(MHz) | (MHz) | (%) | (%) | |||
s1 | 78 | 358 | 32 | 430 | 59 | 20 |
mark1 | 26 | 443 | 15 | 592 | 42 | 34 |
s27 | 7 | 649 | 5 | 693 | 29 | 7 |
planet | 104 | 406 | 85 | 438 | 18 | 8 |
opus | 17 | 567 | 14 | 665 | 18 | 17 |
s510 | 58 | 461 | 50 | 440 | 14 | −5 |
s820 | 77 | 389 | 68 | 396 | 12 | 2 |
ex1 | 70 | 415 | 63 | 407 | 10 | −2 |
ex6 | 20 | 643 | 18 | 627 | 10 | −2 |
styr | 103 | 376 | 95 | 348 | 8 | −7 |
ex4 | 15 | 742 | 14 | 716 | 7 | −4 |
cse | 41 | 426 | 41 | 472 | 0 | 11 |
s832 | 76 | 379 | 85 | 382 | −12 | 1 |
keyb | 40 | 357 | 46 | 348 | −15 | −3 |
mc | 3 | 907 | 4 | 851 | −33 | −6 |
Mean | 49 | 501 | 42 | 520 | 11 | 5 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Senhadji-Navarro, R.; Garcia-Vargas, I. Mapping Outputs and States Encoding Bits to Outputs Using Multiplexers in Finite State Machine Implementations. Electronics 2023, 12, 502. https://doi.org/10.3390/electronics12030502
Senhadji-Navarro R, Garcia-Vargas I. Mapping Outputs and States Encoding Bits to Outputs Using Multiplexers in Finite State Machine Implementations. Electronics. 2023; 12(3):502. https://doi.org/10.3390/electronics12030502
Chicago/Turabian StyleSenhadji-Navarro, Raouf, and Ignacio Garcia-Vargas. 2023. "Mapping Outputs and States Encoding Bits to Outputs Using Multiplexers in Finite State Machine Implementations" Electronics 12, no. 3: 502. https://doi.org/10.3390/electronics12030502
APA StyleSenhadji-Navarro, R., & Garcia-Vargas, I. (2023). Mapping Outputs and States Encoding Bits to Outputs Using Multiplexers in Finite State Machine Implementations. Electronics, 12(3), 502. https://doi.org/10.3390/electronics12030502