Abstract
The problem of minimization of Moore finite-state machines (FSMs) is considered. This problem often arises in designing digital devices based on programmable logic devices. The proposed approach uses the operation of merging of two states of an FSM and the representation of the FSM as a list of transitions. Conditions guaranteeing the identical operation and deterministic behavior of the transformed FSM obtained by merging two states are given. The cases when wait states can emerge are also discussed. Algorithms for minimizing the number of internal states, transition paths, and the number input variables of Moore FSMs are described. Experimental results have shown that the proposed approach reduces the number of internal states by 6% on the average and sometimes by a factor of 1.86; the number of transitions is reduced by 20% on the average and sometimes by a factor of 2.83. The use of the proposed method in combination with the STAMINA computer program reduces the number of internal states by 16% on the average and sometimes by a factor of 2.17; the number of transitions is reduced by 41% on the average and sometimes by a factor of 7.97. In conclusion, important directions of research concerning the minimization of FSMs are discussed.
Similar content being viewed by others
References
G. H. Mealy, “Method for Synthesizing Sequential Circuits,” Bell Syst. Tech. J. 34, 1045–1079 (1955).
E. F. Moore, “Gedanken-Experiments on Sequential Machines,” in Automata Studies (Princeton Univ. Press, Princeton, 1956), pp. 129–153.
E. McCluskey, Logic Design Principles (Prentice-Hall, Englewood Cliffs, NJ, 1986).
V. V. Solov’ev and A. G. Vasil’ev, Programmable Logic Devices and Their Application (Belorusskaya nauka, Minsk, 1998) [in Russian].
V. Solov’ev and M. Chyzy, “Models of the Finite State Machines,” in Proc. of the Sixth Int. Conf. on Methods and Models in Automation and Robotics (MMAR 2000), Miedzyzdroje, Poland, 2000, Vol. 2, pp. 909–914.
V. Solov’ev, “Synthesis of Sequential Circuits on Programmable Logic Devices Based on New Models of Finite State Machines,” in Proc. of the EUROMICRO Symp. on Digital Systems Design (DSD’2001), Poland, Warsaw, 2001, pp. 170–173.
V. Solov’ev and I. Bulatova, “Synthesis of D-Class Finite State Machines on Programmable Logic Devices,” in Proc. of the 4th Int. Conf. on Computer-Aided Design of Discrete Devices (CAD DD’01), Minsk, Belarus, 2001, Vol. 2, pp. 6–13.
V. V. Solov’ev, Designing Digital Systems Based on Programmable Logic Devices (Goryachaya liniya-Telekom, Moscow, 2001) [in Russian].
V. V. Solov’ev and A. Klimovich, Logical Design of Digital Systems Based on Programmable Logic Devices (Goryachaya liniya-Telekom, Moscow, 2008) [in Russian].
R. Nader and D. Brett, “A Study of State Machine Coding Styles for Implementation in FPGAs,” in Proc. of the 49th Midwest Symp. on Circuits and Systems (MWCAS’06), San Juan, PR, 2006 (IEEE Inc, San Juan, PR, 2006), Vol. 1, pp. 337–341.
A. Imtiaz and D. Shoba, “Heuristic Algorithm for the Minimization of Incompletely Specified Finite State Machines,” Comput. and Electric. Eng. 27(2), 159–172 (2001).
M. Perkowski, L. Jozwiak, and W. Zhao, “Symbolic Two-Dimensional Minimization of Strongly Unspecified Finite State Machines,” J. Syst. Architecture 47, 15–28 (2001).
S. Rupesh, D. Madhav, and H. Narayanan, “Decomposition of Finite State Machines for Area, Delay Minimization,” in Proc. of IEEE Int. Conf. on Computer Design (ICCD’99) (IEEE Inc, Austin, Texas, 1999), pp. 620–625.
M. Rawski, H. Selvaraj, and T. Luba, “An Application of Functional Decomposition in ROM-Based FSM Implementation in FPGA Devices,” J. Syst. Architecture 51, 424–434 (2005).
P. Irith and R. Sudhakar, “On Finding a Minimal Functional Description of a Finite-State Machine for Test Generation for Adjacent Machines,” IEEE Trans. Comput. 49, 88–94 (2000).
M. Christoph and T. Thorsten, “Local Encoding Transformations for Optimizing OBDD-Representations of Finite State Machines,” Formal Methods in System Design 18, 285–301 (2001).
S. Aritz, “Analysis of the FSMs Implementation with Mini-Microprocessors in FPGAs,” in Proc. of IEEE Int. Symp. on Industrial Electronics (ISIE) (IEEE Inc. Vigo, Spain, 2007), pp. 2290–2294.
F. Seinstra, D. Koelma, and A. Bagdanov, “Finite State Machine-Based Optimization of Data Parallel Regular Domain Problems Applied in Low-Level Image Processing,” IEEE Trans. Parallel Distributed Syst. 15, 865–877 (2004).
L. Vesa, K. Kimmo, and H. Timo, “Optimizing Finite State Machines for System-On-Chip Communication,” in Proc. of IEEE Int. Symp. on Circuits and Systems (IEEE Inc., Phoenix-Scottsdale, Arizona, 2002), Vol. 1, pp. I/485–I/488).
E. M. Sentovich, K. J. Singh, L. Lavagno, et al., “SIS: A System for Sequentional Circuit Synthesis,” Electronics Research Laboratory, Department of Electrical Engineering and Computer Science, Univ. of California, Berley, Memorandum No. UCB/ERL M92/41, 1992.
M. Avedillo, J. Quintana, and J. Huertas, “State Merging and Splitting via State Assignment: a New FSM Synthesis Algorithm,” IEE Proc. Comput. Digital Techn., Part E 141, 229–237 (1994).
R. K. Brayton, G. Hachtel, C. McMullen, et al., Logic Minimization Algorithms for VLSI Synthesis (Kluwer, Boston, 1984).
S. Yang, “Logic Synthesis and Optimization Benchmarks User Guide. Version 3.0,” Technical Report of the Microelectronics Center of North Carolina (1991).
Author information
Authors and Affiliations
Additional information
Original Russian Text © A.S. Klimovich, V.V. Solov’ev, 2011, published in Izvestiya Akademii Nauk. Teoriya i Sistemy Upravleniya, 2011, No. 6, pp. 52–66.
Rights and permissions
About this article
Cite this article
Klimovich, A.S., Solov’ev, V.V. A method for minimizing Moore finite-state machines by merging two states. J. Comput. Syst. Sci. Int. 50, 907–920 (2011). https://doi.org/10.1134/S1064230711040113
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1134/S1064230711040113