<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.3 20210610//EN" "JATS-journalpublishing1-3.dtd">
<article article-type="research-article" dtd-version="1.3" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="ru"><front><journal-meta><journal-id journal-id-type="publisher-id">inform</journal-id><journal-title-group><journal-title xml:lang="ru">Информатика</journal-title><trans-title-group xml:lang="en"><trans-title>Informatics</trans-title></trans-title-group></journal-title-group><issn pub-type="ppub">1816-0301</issn><issn pub-type="epub">2617-6963</issn><publisher><publisher-name>UIIP NASB</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.37661/1816-0301-2023-20-4-24-37</article-id><article-id custom-type="elpub" pub-id-type="custom">inform-1258</article-id><article-categories><subj-group subj-group-type="heading"><subject>Research Article</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="ru"><subject>ЛОГИЧЕСКОЕ ПРОЕКТИРОВАНИЕ</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="en"><subject>LOGICAL DESIGN</subject></subj-group></article-categories><title-group><article-title>Моделирование дискретных управляющих систем с параллелизмом поведения</article-title><trans-title-group xml:lang="en"><trans-title>Simulation of discrete control systems with parallelism of behavior</trans-title></trans-title-group></title-group><contrib-group><contrib contrib-type="author" corresp="yes"><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Черемисинов</surname><given-names>Д. И.</given-names></name><name name-style="western" xml:lang="en"><surname>Cheremisinov</surname><given-names>D. I.</given-names></name></name-alternatives><bio xml:lang="ru"><p>Черемисинов Дмитрий Иванович, кандидат технических наук, доцент, ведущий научный сотрудник</p><p>ул. Сурганова, 6, Минск, 220012</p></bio><bio xml:lang="en"><p>Dmitry  I.  Cheremisinov,  Ph.  D.  (Eng.),  Assoc. Prof., Leading Researcher</p><p>st. Surganova, 6, Minsk, 220012</p></bio><email xlink:type="simple">cher@newman.bas-net.by</email><xref ref-type="aff" rid="aff-1"/></contrib><contrib contrib-type="author" corresp="yes"><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Черемисинова</surname><given-names>Л. Д.</given-names></name><name name-style="western" xml:lang="en"><surname>Cheremisinova</surname><given-names>L. D.</given-names></name></name-alternatives><bio xml:lang="ru"><p>Черемисинова Людмила Дмитриевна, доктор технических наук, профессор, главный научный сотрудник</p><p>ул. Сурганова, 6, Минск, 220012</p></bio><bio xml:lang="en"><p>Ljudmila D. Cheremisinova, D. Sc. (Eng.), Prof., Chief Researcher</p><p>st. Surganova, 6, Minsk, 220012</p></bio><email xlink:type="simple">cld@newman.bas-net.by</email><xref ref-type="aff" rid="aff-1"/></contrib></contrib-group><aff-alternatives id="aff-1"><aff xml:lang="ru"><institution>Объединенный институт проблем информатики Национальной академии наук Беларуси</institution></aff><aff xml:lang="en"><institution>The United Institute of Informatics Problems of the National Academy of Sciences of Belarus</institution></aff></aff-alternatives><pub-date pub-type="collection"><year>2023</year></pub-date><pub-date pub-type="epub"><day>29</day><month>12</month><year>2023</year></pub-date><volume>20</volume><issue>4</issue><fpage>24</fpage><lpage>37</lpage><permissions><copyright-statement>Copyright &amp;#x00A9; Черемисинов Д.И., Черемисинова Л.Д., 2023</copyright-statement><copyright-year>2023</copyright-year><copyright-holder xml:lang="ru">Черемисинов Д.И., Черемисинова Л.Д.</copyright-holder><copyright-holder xml:lang="en">Cheremisinov D.I., Cheremisinova L.D.</copyright-holder><license xml:lang="ru" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>Данная работа распространяется под лицензией Creative Commons Attribution 4.0.</license-p></license><license xml:lang="en" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>This work is licensed under a Creative Commons Attribution 4.0 License.</license-p></license></permissions><self-uri xlink:href="https://inf.grid.by/jour/article/view/1258">https://inf.grid.by/jour/article/view/1258</self-uri><abstract><sec><title>Цели</title><p>Цели. Рассматривается задача функциональной верификации устройств управления относительно спецификации на их проектирование. При решении задач реализации и тестирования дискретных систем приходится иметь дело с наличием параллелизма в поведении взаимодействующих объектов управления, что отображается также и в задании на проектирование устройств управления ими. Цель исследования заключается в разработке метода имитационного моделирования описаний дискретных систем, который позволяет динамически тестировать поведение таких систем на области, ограниченной их возможным функционированием.</p></sec><sec><title>Методы</title><p>Методы. В работе рассматривается класс систем управления с параллелизмом происходящих в них процессов, позволяющим линеаризовать их выполнение. Для задания спецификации таких систем управления предлагается использовать язык ПРАЛУ параллельных алгоритмов управления, в основе которого лежат сети Петри и который позволяет упорядочивать во времени события, происходящие в процессе работы устройства. Предлагается объектно-ориентированный подход к моделированию описания алгоритма управления на уровне транзакций. Для этого разработана модель TLM (Transaction-Level Modeling) описаний на языке ПРАЛУ устройств с параллелизмом поведения. Модель уровня транзакций описывает систему набором взаимодействующих процессов, которые выполняются параллельно и определяют ее поведение во времени.</p></sec><sec><title>Результаты</title><p>Результаты. Определены ключевые понятия модели TLM для моделирования описаний алгоритмов управления на языке ПРАЛУ: структура данных, транзакции, процессы и барьерной механизм синхронизации параллельно выполняющихся процессов. Предложен метод преобразования описания алгоритма на языке ПРАЛУ в модель TLM, который основан на представлении операций языка в виде композиций элементарных операций, выполняющихся последовательно. Набор таких операций составляет базис алгоритмического разложения параллельного алгоритма на языке ПРАЛУ в программу на промежуточном языке, которая выполняется строго последовательно. Разработаны трансляторы этой программы на языки Verilog и C, результаты их компиляции представляют симуляторы поведения системы управления.</p></sec><sec><title>Заключение</title><p>Заключение. Предложенный метод имитационного моделирования может быть использован при создании испытательного стенда для функциональной верификации схемной реализации устройств управления с параллелизмом поведения. При этом тестовые последовательности для верификации схемной реализации могут генерироваться динамически – в процессе моделирования описания алгоритма на языке ПРАЛУ непосредственно устройства управления или системы, включающей алгоритм управления и алгоритмы поведения управляемых объектов.</p></sec></abstract><trans-abstract xml:lang="en"><sec><title>Objectives</title><p>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.</p></sec><sec><title>Methods</title><p>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.</p></sec><sec><title>Results</title><p>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.</p></sec><sec><title>Conclusion</title><p>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.</p></sec></trans-abstract><kwd-group xml:lang="ru"><kwd>параллельный алгоритм</kwd><kwd>устройство управления</kwd><kwd>имитационное моделирование</kwd><kwd>функциональная верификация</kwd><kwd>модель TLM</kwd><kwd>язык ПРАЛУ</kwd></kwd-group><kwd-group xml:lang="en"><kwd>concurrent algorithm</kwd><kwd>control device</kwd><kwd>simulation</kwd><kwd>functional verification</kwd><kwd>TLM model</kwd><kwd>PRALU language</kwd></kwd-group></article-meta></front><back><ref-list><title>References</title><ref id="cit1"><label>1</label><citation-alternatives><mixed-citation xml:lang="ru">Слинкин, Д. И. Анализ современных методов тестирования и верификации проектов сверхбольших интегральных схем / Д. И. Слинкин // Программные продукты и системы. – 2017. – № 3(30). – С. 401–407.</mixed-citation><mixed-citation xml:lang="en">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.).</mixed-citation></citation-alternatives></ref><ref id="cit2"><label>2</label><citation-alternatives><mixed-citation xml:lang="ru">Камкин, А. Обзор современных технологий имитационной верификации аппаратуры / А. Камкин, М. Чупилко // Программирование. – 2011. – № 3. – С. 42–49.</mixed-citation><mixed-citation xml:lang="en">Kamkin A., Chupilko M. Overview of modern technologies for simulation verification of equipment. Programmirovaniye [Programming], 2011, no. 3, pp. 42–49 (In Russ.).</mixed-citation></citation-alternatives></ref><ref id="cit3"><label>3</label><citation-alternatives><mixed-citation xml:lang="ru">Kaner, C. What Is a Good Test Case? Software Testing Analysis &amp; Review Conference (STAR) East / C. Kaner. – Mode of access: https://profinit.eu/wp-content/uploads/2016/03/WhatIsGoodTestcase.pdf. – Date of access: 10.02.2023.</mixed-citation><mixed-citation xml:lang="en">Kaner C. What is a good test case? Software Testing Analysis &amp; Review Conference (STAR) East. Available at: https://profinit.eu/wp-content/uploads/2016/03/WhatIsGoodTestcase.pdf (accessed 10.02.2023).</mixed-citation></citation-alternatives></ref><ref id="cit4"><label>4</label><citation-alternatives><mixed-citation xml:lang="ru">The Open Source VHDL Verification Methodology. User’s Guide Rev. 1.2 / ed. J. Lewis. – Mode of access: https://www.doulos.com/knowhow/vhdl/the-open-source-vhdl-verification-methodology-osvvm/. – Date of access: 02.09.2023.</mixed-citation><mixed-citation xml:lang="en">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).</mixed-citation></citation-alternatives></ref><ref id="cit5"><label>5</label><citation-alternatives><mixed-citation xml:lang="ru">Закревский, А. Д. Параллельные алгоритмы логического управления / А. Д. Закревский. – Минск : Ин-т техн. кибернетики НАН Беларуси, 1999. – 202 с.</mixed-citation><mixed-citation xml:lang="en">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.).</mixed-citation></citation-alternatives></ref><ref id="cit6"><label>6</label><citation-alternatives><mixed-citation xml:lang="ru">Advanced Verification Methodology Cookbook / A. Rose [et al.] ; ed. M. Glasser. – Mentor Graphics Corporation, 2008. – 338 р.</mixed-citation><mixed-citation xml:lang="en">Rose A., Fitzpatrick T., Rich D., Foster H. Advanced Verification Methodology Cookbook. In M. Glasser (ed.). Mentor Graphics Corporation, 2008, 338 p.</mixed-citation></citation-alternatives></ref><ref id="cit7"><label>7</label><citation-alternatives><mixed-citation xml:lang="ru">Cai, L. Transaction level modeling: an overview / L. Cai, D. Gajski // First IEEE/ACM/IFIP Intern. Conf. on Hardware/ Software Codesign and Systems Synthesis, Newport Beach, CA, USA, 1–3 Oct. 2003. – Newport Beach, 2003. – P. 19–24.</mixed-citation><mixed-citation xml:lang="en">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.</mixed-citation></citation-alternatives></ref><ref id="cit8"><label>8</label><citation-alternatives><mixed-citation xml:lang="ru">Подход UniTesK к разработке тестов / В. В. Кулямин [и др.] // Программирование. – 2003. – № 6(29). – С. 25–43.</mixed-citation><mixed-citation xml:lang="en">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.).</mixed-citation></citation-alternatives></ref><ref id="cit9"><label>9</label><citation-alternatives><mixed-citation xml:lang="ru">Lee, D. Principles and methods of testing finite state machine – a survey / D. Lee, M. Yannakakis // Proceedings of the IEEE. – 1996. – Vol. 84, no. 8. – P. 1090–1123.</mixed-citation><mixed-citation xml:lang="en">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.</mixed-citation></citation-alternatives></ref><ref id="cit10"><label>10</label><citation-alternatives><mixed-citation xml:lang="ru">Kanso, B. Compositional testing for FSM-based models / B. Kanso, O. Chebaro // Intern. J. of Software Engineering &amp; Applications (IJSEA). – 2014. – Vol. 5, no. 3. – P. 9–23.</mixed-citation><mixed-citation xml:lang="en">Kanso B., Chebaro O. Compositional testing for FSM-based models. International Journal of Software Engineering &amp; Applications (IJSEA), 2014, vol. 5, no. 3, pp. 9–23.</mixed-citation></citation-alternatives></ref><ref id="cit11"><label>11</label><citation-alternatives><mixed-citation xml:lang="ru">Ponce de Leon, H. Model-based testing for concurrent systems with labeled event structures / H. Ponce de Leon, S. H. Delphine Longuet // Software Testing, Verification &amp; Reliability. – 2014. – Vol. 24, no. 7. – P. 558–590.</mixed-citation><mixed-citation xml:lang="en">Ponce de Leon H. Delphine Longuet S. H. Model-based testing for concurrent systems with labeled event structures. Software Testing, Verification &amp; Reliability, 2014, vol. 24, no. 7, pp. 558–590.</mixed-citation></citation-alternatives></ref><ref id="cit12"><label>12</label><citation-alternatives><mixed-citation xml:lang="ru">Питерсон, Дж. Теория сетей Петри и моделирование систем : пер. с англ. / Дж. Питерсон. – М. : Мир, 1984. – 264 с.</mixed-citation><mixed-citation xml:lang="en">Peterson J. L. Petri Net Theory and the Modeling of Systems. Prentice Hall, Englewood Cliffs, 1981, 290 p.</mixed-citation></citation-alternatives></ref><ref id="cit13"><label>13</label><citation-alternatives><mixed-citation xml:lang="ru">Zhu, H. A methodology of testing high-level Petri nets / H. Zhu, X. D. He // Information and Software Technology. – 2002. – Vol. 44. – P. 473–489.</mixed-citation><mixed-citation xml:lang="en">Zhu H., He X. D. A methodology of testing high-level Petri nets. Information and Software Technology, 2002, vol. 44, pp. 473–489.</mixed-citation></citation-alternatives></ref><ref id="cit14"><label>14</label><citation-alternatives><mixed-citation xml:lang="ru">I/O conformance test generation with colored Petri nets / J. Liu [et al.] // Applied Mathematics and Information Sciences. – 2014. – Vol. 8, no. 6. – P. 2695–2704.</mixed-citation><mixed-citation xml:lang="en">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.</mixed-citation></citation-alternatives></ref><ref id="cit15"><label>15</label><citation-alternatives><mixed-citation xml:lang="ru">Бурдонов, И. Б. Неизбыточные алгоритмы обхода ориентированных графов. Детерминированный случай / И. Б. Бурдонов, А. С. Косачев, В. В. Кулямин // Программирование. – 2003. – № 5. – С. 11–30.</mixed-citation><mixed-citation xml:lang="en">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.).</mixed-citation></citation-alternatives></ref><ref id="cit16"><label>16</label><citation-alternatives><mixed-citation xml:lang="ru">Herlihy, M. P. Linearizability: a correctness condition for concurrent objects / M. P. Herlihy, J. M. Wing // ACM Transactions on Programming Languages and Systems. – 1990. – Vol. 12, no. 3. – P. 463–492.</mixed-citation><mixed-citation xml:lang="en">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.</mixed-citation></citation-alternatives></ref><ref id="cit17"><label>17</label><citation-alternatives><mixed-citation xml:lang="ru">Solihin, Y. Fundamentals of Parallel Multicore Architecture / Y. Solihin. – CRC Press, 2015. – 494 р.</mixed-citation><mixed-citation xml:lang="en">Solihin Y. Fundamentals of Parallel Multicore Architecture. CRC Press, 2015, 494 p.</mixed-citation></citation-alternatives></ref><ref id="cit18"><label>18</label><citation-alternatives><mixed-citation xml:lang="ru">Halbwachs, N. Synchronous Programming of Reactive Systems / N. Halbwachs. – Springer-Verlag, 2010. – 192 p.</mixed-citation><mixed-citation xml:lang="en">Halbwachs N. Synchronous Programming of Reactive Systems. Springer-Verlag, 2010, 192 p.</mixed-citation></citation-alternatives></ref><ref id="cit19"><label>19</label><citation-alternatives><mixed-citation xml:lang="ru">Черемисинов, Д. И. Проектирование и анализ параллелизма в процессах и программах / Д. И. Черемисинов. – Минск : Беларуская навука, 2011. – 300 с.</mixed-citation><mixed-citation xml:lang="en">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.).</mixed-citation></citation-alternatives></ref><ref id="cit20"><label>20</label><citation-alternatives><mixed-citation xml:lang="ru">Dtrgeron, J. Writing Test Benches &amp; Functional Verification of HDL Models 2gd Edition / J. Dtrgeron. – Springer, 1993. – 508 р.</mixed-citation><mixed-citation xml:lang="en">Dtrgeron J. Writing Test Benches &amp; Functional Verification of HDL Models 2gd Edition. Springer, 1993, 508 p.</mixed-citation></citation-alternatives></ref></ref-list><fn-group><fn fn-type="conflict"><p>The authors declare that there are no conflicts of interest present.</p></fn></fn-group></back></article>
