Abstract
The chapter deals with analysis of methods of structural decomposition. Main idea of these methods is reduced to diminishing the numbers of literals in systems of Boolean functions due to increasing the number of logic levels in FSM circuits. Methods of state assignment are analysed. Next, the basic features of field programmable gate arrays are discussed. It is shown that embedded memory blocks allow implementing systems of regular Boolean functions. The modern design flow targeting FPGA-based projects is analysed. Different methods of structural decomposition are considered such as the replacement of logical conditions, encoding of the collections of microoperations, encoding of the fields of compatible microoperations and verticalization of initial GSA. The methods basing of classes of pseudoequivalent states are discussed for Moore FSM. The FPGA-based structural diagrams of FSM circuits based on structural decomposition are shown.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Adamski M, Barkalov A (2006) Architectural and sequential synthesis of digital devices. University of Zielona Góra Press, Zielona Góra
Atmel http://www.atmel.com. Accessed Jan 2019
Baranov S (1994) Logic synthesis of control automata. Kluwer Academic Publishers, Boston
Baranov S (2008) Logic and system design of digital systems. TUT Press, Tallinn
Barkalov A, Beleckij O, Nedal A (1999) Applying of optimization methods of Moore automaton for synthesis of compositional microprogram control unit. Autom Control Comput Sci 33(1):44–52
Barkalov A, Dzhaliashvili Z, Salomatin V, Starodubov K (1986) Optimization of a microinstruction address scheme for microprogram control unit with PLA and PROM. Autom Control Comput Sci 20(5):83–87
Barkalov A, Salomatin V, Starodubov K, Das K (1991) Optimization of Mealy automaton logic using programmable logic arrays. Cybern Syst Anal 27(5):789–793
Barkalov A, Shwec A (1994) Synthesis of compositional microprogram control unit with modified microinstruction addressing. Autom Control Comput Sci 28(5):22–30
Barkalov A, Titarenko L (2007) Design of control units with programmable logic devices. In: Korbicz J (ed) Measurements. methods, systems and design. Wydawnictwo Komunikacji i Łączności, Warsaw, Poland, pp 371–391
Barkalov A, Titarenko L (2008) Logic synthesis for compositional microprogram control units, vol 22. Springer, Berlin
Barkalov A, Titarenko L (2009) Logic synthesis for FSM-based control units, vol 53. Lecture notes in electrical engineering. Springer, Berlin
Barkalov A, Titarenko L (2009) Synthesis of operational and control automata. UNITECH, Donetsk
Barkalov A, Titarenko L, Barkalov A Jr (2007) Moore FSM synthesis with coding of compatible microoperations fields. In: Proceedings of IEEE east-west design and test symposium - EWDTS’07, Yerevan, Armenia, Kharkov, 2007. Kharkov National University of Radioelectronics, pp 644–646
Barkalov A, Titarenko L, Chmielewski S (2007) Optimization of logic circuit of Moore FSM on CPLD. Pomiary Automatyka Kontrola 53(5):18–20
Barkalov A, Titarenko L, Chmielewski S (2007) Optimization of Moore FSM on CPLD. In: Proceedings of the sixth international conference CAD DD’07, vol 2. Minsk, pp 39–45
Barkalov A, Titarenko L, Chmielewski S (2007) Optimization of Moore FSM on system-on chip. In: Proceedings of IEEE east-west design and test symposium – EWDTS’07, Yerevan, Armenia, Kharkov, pp 105–109
Barkalov A, Titarenko L, Chmielewski S (2007) Reduction in the number of PAL macrocells int the circuit of a Moore FSM. Int J Appl Math Comput Sci 17(4):565–675
Barkalov A, Titarenko L, Chmielewski S (2008) Decrease of hardware amount in logic circuit of Moore FSM. Przegląd Telekomunikacyjny i Wiadomości Telokomunikacyjne 6:750–752
Barkalov A, Titarenko L, Chmielewski S (2008) Optimization of Moore control unit with refined state encoding. In: Proceedings of the 15th international conference MIXDES 2008, Poznań, Poland, 2008. Departament of Microeletronics and Computer Science, Technical University of Łódz, pp 417–420
Barkalov A, Titarenko L, Chmielewski S (2008) Optimization of Moore FSM on system-on-chip using PAL technology. In: Proceedings of the international conference TCSET 2008, Lviv-Slavsko, Ukraina. Ministry of Education and Science of Ukraine. Lviv Polytechnic National University, Lviv, Publishing House of Lviv Polytechnic, pp 314–317
Barkalov A, Titarenko L, and Chmielewski S (2014) Hardware reduction in CPLD-based Moore FSM. J Circuits, Syst, Comput 23(6):1450086–1–1450086–21
Barkalov A, Titarenko L, Kołopeńczyk M (2006) Optimization of control unit with code sharing. In: Proceedings of the 3rd international workshop of IFAC discrete–event system design (DESDES’06), Rydzyna, 2006. University of Zielona Góra Press, pp 195–200
Barkalov A, Titarenko L, Wiśniewski R (2006) Optimization of Address Circuit of Compositional Microprogram Unit. In: Proceedings of the IEEE east-west design and test workshop (EWDTW’06), Sochi, Kharkov, 2006. Kharkov National University of Radioelectronics, pp 167–170
Barkalov A, Titarenko L, Wiśniewski R (2006) Synthesis of compositional microprogram control units with sharing codes adn address decoder. In: Proceedings of the international conference mixed design of integrated circuits and systems – MIXDES 2006, Łódz, pp 397–400
Barkalov A, Węgrzyn A, Barkalov A Jr (2007) Synthesis of control units with transformation of the codes of objects. In: Proceedings of the IXth international conference CADSM 2007 (The experience of designing and application of CAD systems in microelectronics), Lviv - Polyana, Ukraine 2007, Lviv Polytechnic National University. Publishing House of Lviv Polytechnic National University, Lviv, pp 260–261
Barkalov A, Węgrzyn M (2006) Design of control units with programmable logic. University of Zielona Góra Press, Zielona Góra
Barkalov A, Wiśniewski R (2004) Design of compositional microprogram control units with maximal encoding of inputs. Radioelectron Inform 3:79–81
Barkalov A, Wiśniewski R (2004) Optimization of compositional microprogram control unit with elementary operational linear chains. Control Syst Comput 5:25–29
Barkalov A, Wiśniewski R (2005) Optimization of compositional microprogram control units implemented on system-on-chip. Theor Appl Inf 9:7–22
Barkalov A, Zelenjova I (2000) Optimization of replacement of logical conditions for an automaton with bidirectional transitions. Autom Control Comput Sci, 34(5):48–53, Allerton Press Inc
Bolton M (1990) Digital system design with programmable logic. Addison-Wesley, Boston
Bomar BW (2002) Implementation of microprogrammed control in FPGAs. IEEE Trans Ind Electron 49(2):415–422
Borowik G (2007) Synthesis of sequential devices into FPGA with embedded memory blocks. PhD thesis, Warszawa, WUT
Brayton R, Hatchel G, McMullen C, Sangiovanni-Vincentelli A (1984) Logic minimization algorithms for VLSI synthesis. Kluwer Academic Publishers, Boston
Brayton R, Rudell R, Sangiovanni-Vincentelli A, Wang A (1987) MIS: a multi-level logic optimization system. IEEE Trans Comput-Aided Des 6(11):1062–1081
Brown S, Vernesic Z (2000) Fundamentals of digital logic with VHDL design. McGraw-Hill, New York
Bukowiec A (2008) Synthesis of finite state machines for programmable devices based on multi-level implementation. PhD thesis, University of Zielona Góra
Webb C, Liptay J (1997) A high-frequency custom CMOS S/390 microprocessor. IBM J Res Dev 41(4/5):463–473
Cao C, O’Nils B, Oelmann D (2004) A tool for low-power synthesis of FSMs with mixed synchronous/asynchronous state memory. In: Proceedings of norchip conference, pp 199–202
Chattopadhyay S (2005) Area conscious state assignment with flip-flop and output polarity selection for finite state machines synthesis - a genetic algorithm. Comput J 48(4):443–450
Chattopadhyay S, Chaudhuri P (1998) Genetic algorithm based approach for integrated state assignment and flipflop selection in finite state machines synthesis. In: Proceedings of the IEEE international conference on VLSI design, Los Alamitos, 1998. IEEE Computer Society, pp 522–527
Chu P (2006) RTL hardware design using VHDL: coding for efficiency, portability and scalability. Wiley-Interscience, New York
Chu YC (1972) Computer organization and microprogramming. Prentice Hall, Upper Saddle River
Ciesielski M, Jang S (1992) PLADE: a two-stage PLA decomposition. IEEE Trans Comput-Aided Des 11(8)
Clements A (2000) The principles of computer hardware. Oxford University Press Inc, New York
Cypress Semiconductor Corporation. http://www.cypress.com. Accessed Jan 2019
Cypress Semiconductor Corporation. Cypress programmable logic: delta 39K. Data sheet. http://cypress.com/pld/delta39k.html. Accessed Jan 2019
Czerwiński R, Kania D (2004) State assignment method for high speed FSM. In: Proceedings of programmable devices and systems, pp 216–221
Czerwiński R, Kania D (2005) State assignment for PAL-based CPLDs. In: Proceedings of 8th Euromicro symposium on digital system design, pp 127–134
Czerwinski R, Kania D (2013) Finite state machine logic synthesis for complex programmable logic devices, vol 231. Lecture notes in electrical engineering, Springer, Berlin
Dasgupta S (1979) The organization of microprogram stores. ACM Comput Surv 24:101–176
Debnath D, Sasao T (1999) Multiple-valued minimization to optimize PLA with output EXOR gates. In: Proceedings of IEEE international symposium on mupltiple-valued logic, pp 99–104
Debnath D, Sasao T (2005) Doutput phase optimization for AND-OR-EXOR PLAs with decoders and its application to design of adders. IFICE Trans Inf Syst E88-D(7):1492–1500
Deniziak S, Sapiecha K (1998) An efficient algorithm of perfect state encoding for CPLD based systems. In: Proceedings of IEEE workshop on design and diagnostic of electronic circuits and systems (DDECS’98), pp 47–53
Devadas S, Ma H (1990) Easily testable PLA-based finite state machines. IEEE Trans Comput-Aided Des Integr Circuits Syst 9(6):604–611
Devadas S, Ma H, Newton A, Sangiovanni-Vincentelli A (1988) MUSTANG: state assignment of finite state machines targeting multilevel logic implementation. IEEE Trans Comput-Aided Des 7(12):1290–1300
Devadas S, Newton A (1991) Exact algorithms for output encoding, state assignment, and four-level boolean minimization. IEEE Trans Comput-Aided Des 10(1):143–154
Du X, Hachtel G, Lin B, Newton A (1991) MUSE: a multilevel symbolic encoding algorithm for state assignment. IEEE Trans Comput-Aided Des Integr Circuits Syst 10(1):28–38
Escherman B (1993) State assignment for hardwired VLSI control units. ACM Comput Surv 25(4):415–436
Flynn MJ, Rosin RF (1971) Microprogramming: an introduction and a viewpoint. IEEE Trans Comput C–20(7):727–731
Gajski D (1997) Principles of digital design. Prentice Hall, New York
Garcia-Vargas I, Senhadji-Navarro R, Jiménez-Moreno G, Civit-Balcells A, Guerra-Gutierrez P (2007) ROM-based finite state machine implementation in low cost FPGAs. In: IEEE international symposium on industrial electronics ISIE 2007. IEEE, pp 2342–2347
Goren S, Ferguson F (2002) CHESMIN: a heuristic for state reduction of incompletely specified finite state machines. In: Proceedings of the design, automation and test in Europe conference and exhibition (DATE’02), pp 248–254
Gupta B, Narayanan H, Desai M (1999) A state assignment scheme targeting performance and area. In: Proceedings of 12th international conference on VLSI design, pp 378–383
Habib S (1988) Microprogramming and firmware engineering methods. Wiley, New York
Hassoun S, Sasao T (2002) Logic synthesis and verification. Kluwer Academic Publishers, Boston
Hatchel G, Somenzi F (2000) Logic synthesis and verification algorithms. Kluwer Academic Publishers, Boston
Hrynkiewicz E, Kania D (2003) Impact of decomposition direction on synthesis effectiveness. In: Proceedings of programmable devices and systems (PDS’03), pp 144–149
Hu H, Xue H, Bian J (2003) A heuristic state assignment algorithm targeting area. In: Proceedings of 5th international conference on ASIC, vol 1, pp 93–96
Huang J, Jou J, Shen W (2000) ALTO: an iterative area/performance algorithms for LUT-based FPGA technology mapping. IEEE Trans VLSI Syst 18(4):392–400
Husson S (1970) Microprogramming: principles and practices. Prentice Hall, Englewood Cliffs
Iranli A, Rezvani P, Pedram M (2003) Low power synthesis of finite state machines with mixed D and T flip-flops. In: Proceedings of the Asia and South Pacific – DAC, pp 803–808
Iwai H (2004) Future CMOS scaling. Proceedings 11th conference mixed design of integrated circuits and systems, MIXDES 2004, Szczecin, Poland, 2004. Technical University of Łódź, Departament of Microelectronics and Computer Science, pp 12–18
Jenkins J (1995) Design with FPGAs and CPLDs. Prentice Hall, New York
Kahng A (2011) VLSI physical design: from graph partitioning to timing closure. Springer, Berlin
Kam T, Villa T, Brayton R, Sangiovanni-Vincentelli A (1998) A synthesis of finie state machines: functional optimization. Kluwer Academic Publishers, Boston
Kania D (1999) Two-level logic synthesis on PAL-based CPLD and FPGA using decomposition. In: Proceedings of 25th Euromicro conference, pp 278–281
Kania D (1999) Two-level logic synthesis on PALs. Electron Lett 17:879–880
Kania D (2000) Coding capacity of PAL-based logic blocks included in CPLDs and FPGAs. In: Proceedings of IFAC workshop on programmable devices and sysytems (PDS’2000). Elsevier Science, pp 164–169
Kania D (2000) Decomposition-based synthesis and its application in PAL-oriented technology mapping. In: Proceedings of 26th Euromicro conference. IEEE Compuetr Society Press, Maastricht, pp 138–145
Kania D (2002) An efficient algorithm for output coding in PAL-based CPLDs. Int J Eng 15(4):325–328
Kania D (2002) Logic synthesis of multi–output functions for PAL-based CPLDs. In: Proceedings of IEEE international conference on field-programmable technology, pp 429–432
Kania D (2003) An efficient approach to synthesis of multi-output boolean functions on PAL-based devices. IEEE Proc - Comput Digital Tech 150:143–149
Kubatova H (2005) Design of embedded control systems. Chapter finie state machine implementation in FPGAs. Springer, New York, pp 177–187
Łuba T, Rawski M, Jachna Z (2002) Functional Decomposition as a universal method for logic synthesis of digital circuits. In: Proceedings of IX international conference MIXDES’02, pp 285–290
Maxfield C (2004) The design Warrior’s guide to FPGAs. Academic Press Inc, Orlando
Maxfield C (2008) FPGAs: Instant access. Newnes
McCluskey E (1986) Logic design principles. Prentice Hall, Englewood Cliffs
De Micheli G (1986) Symbolic design of combinational and sequential logic implemented by two-level macros. IEEE Trans Comput-Aided Des 5(9):597–616
De Micheli G (1994) Synthesis and optimization of digital circuits. McGraw-Hill, New York
Microsemi. http://www.microsemi.com. Accessed Jan 2019
Minns P, Elliot I (2008) FSM-based digital design using Verilog HDL. Wiley, New York
Navabi Z (2007) Embedded core design with FPGAs. McGraw-Hill, New York
Papachristou C (1981) Hardware microcontrol schemes using PLAs. In: Proceeding of 14th microprogramming workshop, vol 2, pp 3–15
Papachristou C, Gambhir S (1982) A microsequencer architecture with firmware support for modular microprogramming. ACM SIGMICRO Newsletters 13(4):105–113
Park S, Yang S, Cho S (2000) Optimal state assignment technique for partial scan designs. Electron Lett 36(18):1527–1529
Parnel K, Mechta N (2003) Programmable logic design quick start hand book. Xilinx
Patterson D, Henessy J (1998) Computer organization and design: the hardware/software interface. Morgan Caufmann, San Moteo
Pedram C, Despain A (1998) Low-power state assignment targeting two- and multilevel logic implementations. IEEE Trans Comput-Aided Des Integr Circuits Syst 17(12):1281–1291
Pedroni V (2004) Circuit design with VHDL. MIT Press, Cambridge
Pomerancz I, Cheng K (1993) STOIC: state assignment based on output/input functions. IEEE Trans Comput-Aided Des Integr Circuits Syst 12(8):1123–1131
Pugh E, Johnson L, Palmer J (1991) IBM’s 360 and early 370 systems. MIT Press, Cambridge
QuickLogic. http://www.quicklogic.com. Accessed Jan 2019
Rawski M, Łuba T, Jachna Z, Tomaszewicz P (2005) Design of embedded control systems. Chapter The influence of functional decomposition on modern digital design process. Springer, Boston, pp 193–203
Rawski M, Selvaraj H, Łuba T (2005) An application of functional decomposition in ROM-based FSM implementation in FPGA devices. J Syst Architect 51(6–7):423–434
Rho J, Hatchel F, Somenzi R, Jacoby R (1994) Exact and heuristic algorithms for the minimization of incompletely specified state machines. IEEE Trans Comput-Aided Des 13(2):167–177
Rudell R, Sangiovanni-Vincentelli A (1987) Multiple-valued minimization for PLA optimization. IEEE Trans Comput-Aided Des 6(5):727–750
Sakamura K (2002) Future SoC possibilities. IEEE Micro 22(5):7
Salcic Z (1998) VHDL and FPLDs in digital systems design, prototyping and customization. Kluwer Academic Publishers, Boston
Salisbury A (1976) Microprogrammable computer architectures. Elsevier Science, New York
Sasao T (1984) Input variable assignment and output phase optimization of PLA optimization. IEEE Trans Comput 33(10):879–894
Saucier G, Depaulet M, Sicard P (1987) ASYL: a rule-based system for controller synthesis. IEEE Trans Comput-Aided Des 6(11):1088–1098
Saucier G, Sicard P, Bouchet L (1990) Multi-level synthesis on programmable devices in the ASYL system. In: Proceedings of Euro ASIC, pp 136–141
Scholl C (2001) Functional decomposition with application to FPGA synthesis. Kluwer Academic Publishers, Boston
Schwartz S (1968) An algorithm for minimizing read-only memories for machine control. In: IEEE 10th annual symposium on switching and automata theory, pp 28–33
Senhadji-Navarro R, Garcia-Vargas I, Jiménez-Moreno G, Civit-Balcells A, Guerra-Gutierrez P (2004) ROM-based FSM implementation using input multiplexing in FPGA devices. Electron Lett 40(20):1249–1251
Sentowich E, Singh K, Lavango L, Moon C, Murgai R, Saldanha A, Savoj H, Stephan P, Bryton R, Sangiovanni-Vincentelli A (1992) SIS: a system for sequential circuit synthesis. Technical report, University of California, Berkely, 1992
Sentowich E, Singh K, Lavango L, Moon C, Murgai R, Saldanha A, Savoj H, Stephan P, Bryton R, Sangiovanni-Vincentelli A (1992) SIS: a system for sequential circuit synthesis. In: Proceedings of the international conference of computer design (ICCD’92), pp 328–333
Shriver B, Smith B (1998) The anatomy of a high-performance microprocessor: a systems perspective. IEEE Computer Society Press, Los Alamitos
Skliarova I, Sklyarov V, Sudnitson A (2012) Design of FPGA-based circuits using hierarchical finite state machines. TUT Press, Tallinn
Sklyarov V (2000) Synthesis and implementation of RAM-based finite state machines in FPGAs. In: Proceedings of field-programmable logic and applications: the roadmap to reconfigurable computing, Villach, 2000. Springer, pp 718–728,
Sklyarov V, Skliarova I, Barkalov A, Titarenko L (2014) Synthesis and optimization of FPGA-based systems, vol 294. Lecture notes in electrical engineering, Springer, Berlin
Smith M (1997) Application-specific integrated circuits. Addison-Wesley, Boston
Solovjev V, Czyzy M (1999) Refined CPLD macrocells architecture for effective FSM implementation. In: Proceedings of the 25th EUROMICRO conference, vol 1. Milan, Italy, pp 102–109
Solovjev V, Czyzy M (1999) The universal algorithm for fitting targeted unit to complex programmable logic devices. In: Proceedings of the 25th EUROMICRO conference, vol 1. Milan, Italy, pp 286–289
Solovjev V, Czyzy M (2001) Synthesis of sequential circuits on programmable logic devices based on new models of finite state machines. In: Proceedings of the EUROMICRO conference. Milan, pp 170–173
Sutter G, Todorovich E, López-Buedo S, Boemo E (2002) Low-power FSMs in FPGA: encoding alternatives. In: Integrated circuit design. Power and timing modeling, optimization and simulation. Springer, Berlin, pp 363–370
Tiwari A, Tomko K (2004) Saving power by mapping finite-state machines into embedded memory blocks in FPGAs. In: Proceedings of the conference on design, automation and test in Europe - volume 2. IEEE Computer Society, pp 916–921
Tucker S (1967) Microprogram control for system/360. IBM Syst J 6(4):222–241
Venkatamaran G, Reddy S, Pomerancz I (2003) GALLOP: genetic algorithm based low power FSM synthesis by simultaneous partitioning and state assignment. In: Proceedings of 16th international conference on VLSI design, pp 533–538
Villa T, Kam T, Brayton R, Sangiovanni-Vincentelli A (1998) A synthesis of finite state machines: logic optimization. Kluwer Academic Publishers, Boston
Villa T, Saldachna T, Brayton R, Sangiovanni-Vincentelli A (1997) Symbolic two-level minimization. IEEE Trans Comput-Aided Des 16(7):692–708
Villa T, Sangiovanni-Vincentelli A (1990) NOVA: State assignment of finite state machines for optimal two-level logic implememntation. IEEE Trans Comput-Aided Des 9(9):905–924
Wilkes M (1951) The best way to design an automatic calculating machine. In: Proceedings of Manchester University computer inaugural conference
Wilkes M, Stringer J (1953) Microprogramming and the design of the control circuits in an electronic digital computer. Proc Camb Philos Soc 49:230–238
Wiśniewski R (2008) Synthesis of compositional microprogram control units for programmable devices. PhD thesis, University of Zielona Góra
Xia Y, Almani A (2002) Genetic algorithm based state assignment for power and area optimization. IEEE Proc Comput Digit Tech 149:128–133
Xilinx. http://www.xilinx.com. Accessed Jan 2019
Yang S (1991) Logic synthesis and optimization benchmarks user guide. Technical report, Microelectronic Center of North Carolina
Yanushkevich S, Shmerko V (2008) Introduction to logic design. CRC Press, Boca Raton
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this chapter
Cite this chapter
Barkalov, A., Titarenko, L., Mielcarek, K., Chmielewski, S. (2020). Structural Decomposition in FSM Synthesis. In: Logic Synthesis for FPGA-Based Control Units. Lecture Notes in Electrical Engineering, vol 636. Springer, Cham. https://doi.org/10.1007/978-3-030-38295-7_2
Download citation
DOI: https://doi.org/10.1007/978-3-030-38295-7_2
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-38294-0
Online ISBN: 978-3-030-38295-7
eBook Packages: Intelligent Technologies and RoboticsIntelligent Technologies and Robotics (R0)