Preview

Informatics

Advanced search

Simulation of discrete control systems with parallelism of behavior

https://doi.org/10.37661/1816-0301-2023-20-4-24-37

Abstract

Objectives. The problem of functional verification of control devices with respect to their design specification is considered. When solving the problems of implementing and testing of discrete systems, one has to deal with the presence of parallelism in the behavior of interacting control objects, which is also displayed in the assignment for designing control systems. The aim of the work is to develop a method for simulating descriptions of such systems, which allows their behavior testing dynamically on the area limited by their possible functioning.

Methods. The paper considers a class of control systems with parallelism of the processes occurring in them, which permits linearization of their execution. To specify the behavior of such control systems, it is proposed to use the PRALU language of parallel control algorithms, which is based on Petri nets and which allows to order events occurring during the device operation. An object-oriented approach to simulation of the description of the control algorithm at the transaction level is proposed. For this purpose, a TLM (Transaction-Level Modeling) model has been developed for describing the devices with behavior parallelism in PRALU language. The transaction level model describes a system as a set of interacting processes that run in parallel and determine the behavior of the system over time.

Results. The key concepts of the TLM model for simulating the descriptions of control algorithms in the PRALU language are defined: data structure, transactions, processes, and a barrier mechanism for synchronization of parallel processes. A method is proposed for transforming the description of an algorithm in the language into a TLM model, which is based on the representation of language operations as compositions of elementary operations that are performed sequentially. The set of these operations forms the basis for the algorithmic decomposition of a parallel algorithm in PRALU language into intermediate language program that is executed strictly sequentially. Translators of this program into the Verilog and C languages have been developed, the results of their compilation are simulators of the behavior of control system.

Conclusion. The proposed simulation method can be used to create a test bench for functional verification of the circuit implementation of control devices with behavior parallelism. In this case, test sequences for verifying the circuit implementation can be generated dynamically – in the process of simulating the description of the algorithm in the PRALU language directly the control device or system, which include the control algorithm and the algorithms of controlled objects behavior.

About the Authors

D. I. Cheremisinov
The United Institute of Informatics Problems of the National Academy of Sciences of Belarus
Belarus

Dmitry  I.  Cheremisinov,  Ph.  D.  (Eng.),  Assoc. Prof., Leading Researcher

st. Surganova, 6, Minsk, 220012



L. D. Cheremisinova
The United Institute of Informatics Problems of the National Academy of Sciences of Belarus
Belarus

Ljudmila D. Cheremisinova, D. Sc. (Eng.), Prof., Chief Researcher

st. Surganova, 6, Minsk, 220012



References

1. Slinkin D. I. Analysis of modern methods for testing and verification of vlsi projects software products and systems. Programmnyye produkty i sistemy [Software Products and Systems], 2017, no. 3(30), pp. 401–407 (In Russ.).

2. Kamkin A., Chupilko M. Overview of modern technologies for simulation verification of equipment. Programmirovaniye [Programming], 2011, no. 3, pp. 42–49 (In Russ.).

3. Kaner C. What is a good test case? Software Testing Analysis & Review Conference (STAR) East. Available at: https://profinit.eu/wp-content/uploads/2016/03/WhatIsGoodTestcase.pdf (accessed 10.02.2023).

4. Lewis J. (ed.). Open Source VHDL Verification Methodology. User’s Guide Rev. 1.2. Available at: https://www.doulos.com/knowhow/vhdl/the-open-source-vhdl-verification-methodology-osvvm/ (accessed 02.09.2023).

5. Zakrevskiy A. D. Parallel'nyye algoritmy logicheskogo upravleniya. Parallel Logic Control Algorithms. Minsk, Institut tehnicheskoj kibernetiki Nacional'noj akademii nauk Belarusi, 1999, 202 p. (In Russ.).

6. Rose A., Fitzpatrick T., Rich D., Foster H. Advanced Verification Methodology Cookbook. In M. Glasser (ed.). Mentor Graphics Corporation, 2008, 338 p.

7. Cai L., Gajski D. Transaction level modeling: an overview. First IEEE/ACM/IFIP International Conference on Hardware/ Software Codesign and Systems Synthesis, Newport Beach, CA, USA, 1–3 October 2003. Newport Beach, 2003, pp. 19–24.

8. Kulyamin V. V., Petrenko A. K., Kosachev A. S., Burdonov I. B. UniTesK approach to test development. Programmirovaniye [Programming], 2003, no. 6(29), pp. 25–43 (In Russ.).

9. Lee D., Yannakakis M. Principles and methods of testing finite state machine – a survey. Proceedings of the IEEE, 1996, vol. 84, no. 8, pp. 1090–1123.

10. Kanso B., Chebaro O. Compositional testing for FSM-based models. International Journal of Software Engineering & Applications (IJSEA), 2014, vol. 5, no. 3, pp. 9–23.

11. Ponce de Leon H. Delphine Longuet S. H. Model-based testing for concurrent systems with labeled event structures. Software Testing, Verification & Reliability, 2014, vol. 24, no. 7, pp. 558–590.

12. Peterson J. L. Petri Net Theory and the Modeling of Systems. Prentice Hall, Englewood Cliffs, 1981, 290 p.

13. Zhu H., He X. D. A methodology of testing high-level Petri nets. Information and Software Technology, 2002, vol. 44, pp. 473–489.

14. Liu J., Ye1 X., Zhou J., Song X. I/O conformance test generation with colored Petri nets. Applied Mathematics and Information Sciences, 2014, vol. 8, no. 6, pp. 2695–2704.

15. Burdonov I. B., Kosachev A. S., Kulyamin V. V. Irredundant algorithms for traversing directed graphs. Deterministic case. Programmirovaniye [Programming], 2003, no. 5, pp. 11–30 (In Russ.).

16. Herlihy M. P., Wing J. M. Linearizability: a correctness condition for concurrent objects. ACM Transactions on Programming Languages and Systems, 1990, vol. 12, no. 3, pp. 463–492.

17. Solihin Y. Fundamentals of Parallel Multicore Architecture. CRC Press, 2015, 494 p.

18. Halbwachs N. Synchronous Programming of Reactive Systems. Springer-Verlag, 2010, 192 p.

19. Cheremisinov D. I. Proyektirovaniye i analiz parallelizma v protsessakh i programmakh. Design and the Analysis of Parallelism in Processes and Programs. Minsk, Belaruskaja navuka, 2011, 300 p. (In Russ.).

20. Dtrgeron J. Writing Test Benches & Functional Verification of HDL Models 2gd Edition. Springer, 1993, 508 p.


Review

For citations:


Cheremisinov D.I., Cheremisinova L.D. Simulation of discrete control systems with parallelism of behavior. Informatics. 2023;20(4):24-37. (In Russ.) https://doi.org/10.37661/1816-0301-2023-20-4-24-37

Views: 197


Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.


ISSN 1816-0301 (Print)
ISSN 2617-6963 (Online)