Научная статья на тему 'Аналіз коректності графів переходів керуючих автоматів при побудові HDL-моделей для автоматизованого синтезу'

Аналіз коректності графів переходів керуючих автоматів при побудові HDL-моделей для автоматизованого синтезу Текст научной статьи по специальности «Математика»

CC BY
78
50
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
кінцевий автомат / граф переходів / HDL-модель / автоматизований синтез / ортогональна булева функція. / finite state machine / state diagram / HDLmodel / automatic synthesis / orthogonal Boolean function.

Аннотация научной статьи по математике, автор научной работы — Шкіль Олександр Сергійович, Кулак Ельвіра Миколаївна, Філіппенко Інна Вікторівна, Шакура Олексій Геннадійович, Фоменко Владислав Володимирович

Розглядається аналіз коректності умов переходів у графових моделях керуючих автоматів, представлених у вигляді HDL-моделей, з точки зору подальшого автоматизованого синтезу. Пропонується метод аналізу графа переходів, що дозволяє отримати ненадлишкову та коректну в запам'ятовуючій частині схемну реалізацію при синтезі HDL-моделі кінцевого автомата.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Шкіль Олександр Сергійович, Кулак Ельвіра Миколаївна, Філіппенко Інна Вікторівна, Шакура Олексій Геннадійович, Фоменко Владислав Володимирович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Finite state machines state diagrams correctness analysis for HDL-models automatic synthesis

The article is concerned with analysis of the transition condition correctness in graph models of finite state machines presented by HDL-models from further automatic synthesis perspective. The method of state diagrams analysis that obtain non redundant and correct storage unit after finite state machine HDL-model synthesis is suggested.

Текст научной работы на тему «Аналіз коректності графів переходів керуючих автоматів при побудові HDL-моделей для автоматизованого синтезу»

КОМПЬЮТЕРНАЯ ИНЖЕНЕРИЯ

УДК 681.326

АНАЛ1З КОРЕКТНОСТ1 ГРАФ1В ПЕРЕХОД1В КЕРУЮЧИХ АВТОМАТ1В ПРИ ПОБУДОВ1 HDL-МОДЕЛЕЙ ДЛЯ АВТОМАТИЗОВАНОГО СИНТЕЗУ

ШК1ЛЬ О.С., КУЛАК Е.М., Ф1Л1ППЕНКО 1.В., ШАКУРА О.Г., ФОМЕНКО В.В._

Розглядаеться аналiз KopeKTHOCTi умов переходiв у графових моделях керуючих автомапв, представлених у виглядi HDL-моделей, з точки зору подальшого автоматизованого синтезу. Пропонуеться метод аналiзу графа пepeхoдiв, що дозволяе отримати ненадлишкову та коректну в запам'ятoвуючiй частинi схемну peалiзацiю при синтeзi HDL-мoдeлi кшцевого автомата.

Ключовi слова: кiнцeвий автомат, граф пepeхoдiв, HDL-модель, автоматизований синтез, ортогональна булева функщя.

Key words: finite state machine, state diagram, HDL-model, automatic synthesis, orthogonal Boolean function. 1. Вступ

Серед у«е1 множини керуючих пристро1в можна видшити пристро! лoгiчнoгo упpавлiння, у яких упpавляючi сигнали (control value) представляються в двiйкoвoму алфавiтi. Оскiльки для peалiзацil керуючо! частини в таких пристроях, як правило, використовуються кiнцeвi автомати, то цi автомати називаються кepуючi автомати (КА). При опис алгоритму функцioнування цифрових пристро!в лoгiчнoгo керування в САПР цифрових пристро!в одним is стилiв написання коду на мовах опису апаратури (HDL-коду) е стиль автоматного програмування. Суть його полягае у вщдшенш опису лопки пoвeдiнки (за яких умов необхщно виконати тi чи iншi ди) вiд опису його семантики (власне сенсу кожного з дш). Автоматы програми строго структуроваш i в них видiлeнo три види функцiй: функци пepeхoдiв, функци вихoдiв та функци призначення нового стану. Автоматш програми також строго шаблонизоваш з використанням oпepатopiв багатопозицшного вибору (switch, case) та умовних oпepатopiв (if, elsif-else) [1]. При аналiзi надiйнoстi систем упpавлiння широко використовуеться поняття

ортогональности як системи нeсумiсних пoдiй [2]. Поняття opтoгoналiзацil також використовуеться для декомпозици лoгiчних функцiй при сиш^ цифрових систем [3] та при пepeвipцi графових моделей цифрових автомата на кopeктнiсть [4].

З точки зору peалiзацil алгоритму лoгiчнoгo управлшня структурний автомат це модель

пристрою реального часу, яка характеризуемся видачею визначених вихiдних сигналiв у визначеш моменти часу. Структурний автомат функщонуе у автоматному часi, який вимiрюеться в тактах {t, 1+1, 1+2}, тобто автомат переходить з одного стану в шший за один автоматний такт. За один автоматний такт автомат формуе множину вихщних сигналiв та обчислюе значення наступного стану. У аналiтичному виглядi модель структурного автомату така У(Ч) = g(X(t), Z(t)),

Z(t +1) = £(Х(^0)), де g - функщя виходiв структурного автомату, £ - функщя переходiв структурного автомата. При цьому Z(t +1) = Z(t), але у наступному тактi.

Таким чином, апаратна реалiзацiя моделi структурного автомата (модель Хаффмена), складаеться з комбшацшного i послiдовнiстного компонентiв. Послiдовнiстний компонент мютить елементи пам'ятi, такi як синхронш тригери, якi запам'ятовують значення внутршшх змiнних (стан) i дозволяють змiнювати його синхронно. Комбiнацiйний компонент складаеться з лопчних елементiв, як реалiзують двi логiчнi функци: функщю виходiв, яка обчислюе значення вихщних сигналiв, i функцiю переходiв, яка обчислюе новi значення елементiв пам'ят або внутрiшнiх змiнних (тобто значення наступного стану) [5]. На рис.1 наведена графiчна штерпретащя апаратно! реалiзацil структурного автомата.

Рис.1. Модель структурного автомата

Як алгорштшчна модель для керуючих автомата застосовуеться такий непроцедурний вiзуальний фopмалiзм, як графи пepeхoдiв, якi в англомовнш лiтepатуpi називаються дiагpамами сташв (State Diagrams). Зазначимо, що графи пepeхoдiв е не тiльки вiзуальним вiдoбpажeнням алгоритму функцioнування автомата, але й повною його математичною моделлю [4].

Вершинам графа пepeхoдiв вщповщають стани автомата аi, дугам вщповщають переходи мiж станами. На дугах автомата мoдeлi Мiлi вказуються функци умов пepeхoдiв

£^(х1;х2,...хп) та вихiднi (керуюч^ сигнали. На

дугах автомата моделi Мура вказуються тiльки функци умов переходiв, а вихвдш сигнали вказуються бiля вершин.

Предметом розгляду ще! роботи е аналiз коректно! побудови функцiй умов переходiв графових моделей керуючих автомата, представлених у виглядi ИЭЬ-моделей синтезовано! пiдмножини, з точки зору подальшого автоматизованого синтезу. 2. Ортогоналiзацiя логiчних функцiй умов переходiв

Кожен граф переходiв мае бути семантично i синтаксично коректний. Перша властивють визначае, чи коректно побудована сама графова модель, а друга - чи немае формальних помилок при 11 побудови При перевiрцi синтаксично! коректност граф переходiв повинен перевiрятися на досяжнiсть, повноту, несуперечнiсть i вiдсутнiсть генеруючих контурiв [4].

При перевiрцi синтаксично! коректностi функцiй умов переходiв керуючого автомата вони повинш перевiрятися на повноту та несуперечнють.

На рис. 2 наведений фрагмент графа переходiв з вершиною а!, з яко! виходять К дуг. Кожнш дузi ставиться у вщповщшстъ логiчний вираз функцi! умов переходiв Дх1;х2,...хп) у диз'юнктивнiй нормальнiй формi (ДНФ) :

Г(х1,х2,...хп) = Г1(х1,х2,...хп) V ... V ^^ ) V ... V ^(хьх2,...хп).

Рис. 2. Вiдображення функцш умов переходiв у графовiй моделi

Повнота перевiряеться для кожно! вершини графа переходiв шляхом аналiзу умов переходiв всiх дуг, якi виходять з ще! вершини, тобто

к

у ^(хх,х2, ...хп) = 1. Повнота умов визначаеться

j=l

як покриття всiх 2П термiв сукупност булевих функцiй переходiв, де п - кшьюсть умов переходiв (вхiдних змiнних, як iнiцiюють переходи з цiе! вершини), тобто реалiзуеться функцiя Г(Х15Х2, ...Хп) = 1.

При забезпеченнi несуперечливост для кожно! вершини графа переходiв перевiряеться

ортогоналiзацiя булевих виразiв умов переходiв (вiдсутнiсть спiльних термiв у булевих виразах умов для рiзних дуг) функцiй переходiв для дуг, як виходять з вершини, що розглядаеться, тобто

•fh= 0), е * И [5]. Диз'юнктивна нормальна функцiя алгебри лопки називаеться ортогональною, якщо всi !! кон'юнктивнi терми взаемно-ортогональнi. Для тако! ДНФ не iснуе набору значень !! змiнних, що входить бшьш нiж до однiе! елементарно! кон'юнкцп, тобто на будь-якому наборi значень змшних значення одиницi може прийняти тiльки одна кон'юнкцiя. Якщо лопчну функцiю представити у виглядi карти Карно, то !х зображення не будуть перетинатися. Прикладом ортогонально! ДНФ може служити !! досконала форма (ДДНФ, рос. мовою СДНФ), що складаеться з повних взаемно ортогональних кон'юнкщй [6].

Розглянемо метод побудови ортогонально! повно! системи функцiй переходiв для вершини графа переходiв.

Введемо таю визначення: £ - повна ДДНФ вщ п змiнних, тобто Г(хьх2, ...хп) = 1 - булева функщя, яка приймае значення 1 на вах 2п наборах, ^ - повна ДДНФ вщ (п-1) змшних, 1"** - повна ДДНФ вiд (п-2) змiнних, - повна ДДНФ вщ (п-3) змiнних i так далi. Таким чином, ^ * ^ ** 1 Ортогональшсть термiв булево! функцi! забезпечуеться за рахунок розкладання за вiдповiдними змшними, з урахуванням повноти розкладання за вшма змiнними [7].

За першою теоремою розкладання:

^ ^ ^ ^

f = х1 • f V х1 • f = х1 • 1 V х1 • f = х1 V х1 • f = х1 V

V х1 (х2 V х2 • f **) = х1 V х1 (х2 V х2 (х3 V х • f ***)) =

= х1 V х1(х2 V х2(хз V хз • (... • (хп V хп)))).

Таким чином, повна булева функщя вщ п змiнних розкладаеться мшмум на (п+1) кон'юнкцiй при збереженш суттевостi всiх п змшних.

Як приклад розглянемо повну ДДНФ вщ трьох змiнних £(х1, х2, х3) =1. За визначенням ДДНФ е ортогональною. Запишемо повну ДДНФ та виконаемо розкладання по XI з замшою лiво! частини розкладання у дужках на 1:

f(x1,x2,xз) = х1 х2 х3 V х1 Х2Х3 V х^х2 х3 V

V х1х2х3 V х1х2 х3 V х1х2х3 V х1х2х3 V х1х2х3 =

= х1(х2 х3 V х2х3 VХ2Х3 V х2х3) V х1(х2 х3 V

V х2х3 V х2х3 V х2х3) = х1 • 1 V х1 • (х2 х3 V х2х3 V

V х2х3 V х2х3) = х1 V х1 (х2 х3 V х2х3 V х2х3 V х2х3).

Виконаемо аналопчно процедуру розкладання по х2 для виразу у дужках. Розкриемо дужки та отримаемо повну ортогональну функцiю вiд трьох змiнних:

Дх1;х2,х3) = X] V X] (х2(х3 V х3) V х2(х3 V х3)) = = х1 V х1 (х2 -1 V х2(х3 V х3)) = х1 V х1 (х2 V х2х3 V (1) V х2х3) = х1 V х1х2 V х1х2х3 V х1х2х3 .

Виходячи з цього, можна зробити висновок, що повна ортогональна функщя вщ п змшних мае в своему складi не менше, нiж (п+1) кон'юнкцiй. Отже, з кожного стану автомата з функщею умов переходiв вiд п змiнних £(хьх2, ...хп) повинно бути не менше, шж (п+1) переходiв. Одним iз способiв вiзуального аналiзу ортогональной функцiй переходiв е представлення ортогональних функцш на картах Карно. На рис. 3, а зображена карта Карно для ортогонально! функци (1). З наведено! карти видно, що для ортогонально! функци обведення груп одиниць для повно! ДДНФ не перетинаються, тобто кон'юнкци не мають спшьних частин.

На рис. 3,б представлена карта Карно для ортогонально! функци

Дх1;х2,х3) = х1 V Х)Х2 V х1х2х3 , але наведена функщя не е повною, бо в нш вiдсутне обведення Х1Х2Х3. Це обумовлено тим, що при побудовi вказано! функци порушено правило !! повноти, тобто 1 * * 1.

На рис. 3,в також представлена карта Карно для ортогонально! функци

Г(х1;х2,хз) = х! V х^2 V х^,

але наведена функщя теж не е повною, бо в нш вщсутня змiнна х3. Це обумовлено тим, що при побудовi вказано! функцi! порушено правило наявност у повнiй функцi! не менше, шж (п+1) кон'юнкцiй.

чХ2ХЗ Х1\ 00 01

11 10

ЧХ2ХЗ Х1\ 00

01 11 10

0 (1 1 1 1)

1 (1 1) Ф Ф

ЧХ2ХЗ а

Х1 \ 00 01 11 10

0 (1 1 1 1)

1 (1 1) 1 ф

0 1

(1 1 1 1)

(1 1) (1 1)

Рис. 3. Карти Карно для ортогональних функцш

Ще одним способом вiзуального аналiзу ортогоналiзацi! повних булевих функцiй е використання бiнарних дерев рiшень у формi ГСА (рис. 4).

* (Х1,Х2,Х3) =1

Х1Х2Х3

Х1Х2Х3

Рис. 4. Дерево ортогональних ршень

Дерево ортогональних ршень на цьому рисунку вщповщае картi Карно, зображенiй на рис. 3,а. Тут 3 умовних вершини та 4 переходи (шляхи розгалуження), умови переходу по кожнш з гiлок вiдповiдають термам ортогонально! ДНФ (1). При представленнi функци умов переходiв бiнарним деревом ортогональних ршень можна точно визначити необхщне число переходiв. При незалежностi умов х15х2,...хп одно! вiд одно! це число буде дорiвнювати (т + 1), де т - число вершин дерева (але не змшних, оскшьки змшш у вершинах таких дерев можуть повторюватися). 3. Аналiз коректностi ИБЬ-моделей керуючих автоматiв при автоматизованому синтезi У цьому роздш наведена iлюстрацiя запропонованих теоретичних викладень на прикладах графових моделей автомата, !х опису на мовi УЫЭЬ, результатiв !х моделювання та синтезу.

Розглянемо приклад графа переходiв (рис. 5) з коректними умовами переходiв iз стану а1 вщповщно до дерева ортогональних рiшень, наведеного на рис. 4. Функщя умов переходiв iз стану а! ортогональна, отже, умови переходiв несуперечливi. Крiм того, функцiя е повною. УЫЭЬ-модель цього автомата наведена на рис. 6.

в

б

Х1Х2Х3

Рис. 5. Граф переходiв автомата Мура з коректними умовами переходiв

library IEEE;

use IEEE.std_logic_1164.all; entity Fsm_right is

port (x1, x2, x3, Clk, reset: in STD_LOGIC; y1, y2, y3, y4: out STD_LOGIC); end;

architecture Fsm_right of Fsm_right is type State_type is (a1, a2, a3, a4, a5); signal State, NextState: State_type; begin

Sreg0_CurrentState: process (Clk, reset) begin

if reset='1' then State <= a1; elsif Clk'event and Clk = '1' then State <= NextState; end if; end process;

Sreg0_NextState: process (State, x1, x2, x3) begin

case State is

when a1=> if x1='0' then NextState <= a2; elsif x2='0' then NextState <= a3; elsif x3='0' then NextState <= a4; else NextState <= a5; end if;

when a2=> NextState <= a1; when a3=> NextState <= a1; when a4=> NextState <= a1; when a5=> NextState <= a1; when others => NextState <= a1; end case; end process;

y1 <= '1' when State=a2 else '0' y2 <= '1' when State=a3 else '0' y3 <= '1' when State=a4 else '0' y4 <= '1' when State=a5 else '0'; end;

Рис. 6. VHDL-модель автомата Мура з коректними умовами переходiв

Часовi дiаграми роботи автомата наведенi на рис. 7. На ньому вщображеш результати моделювання в системi Active-HDL ALDEC на усiх комбiнацiях наборiв умов x1; x2, x3. Дiаграма свiдчить, що функцiя умов переходiв е повною та ортогональною i повнiстю повторюе приклад з рис. 4. У перюд з 150 до 950 нс автомат переходить у стан а2 (ух = 1), доки

виповнюеться умова xi, тобто (xx = 0), та повертаеться зворотно в ai (ух = 0). В перюд з 950 до 1350 нс автомат переходить в стан а3 (у2 = 1), доки виконуеться умова xxx2, тобто (xj = 1, x2 = 0), та повертаеться зворотно в а1 (у2 = 0). У перюд з 1350 до 1550 нс автомат переходить в стан а4 (у3 = 1), доки виконуеться умова xxx2x3, тобто (xx = 1, x2 = 1, x3 = 0), та повертаеться зворотно в а1 (у3 = 0). У перюд з 1550 до 1750 нс автомат переходить в стан а5 (у4 = 1), доки виконуеться умова xxx2x3, тобто (xj = 1, x2 = 1, x3 = 1), та повертаеться назад в а1 (у 4 = 0).

Niwe ¿о: .130 SCO , 800 . . . 1000 . . .1200 . . 1400. . 1600 . If

- Stete <at Xa2 x»i X^ X*1 X^ X*' X^ X*' X*1 Хд3 X*1 X*» X*' X* X*1

V'endsim {•ate ;(true

- xl 1

•x2 1 1

- x3 l.lll.

-Ok _l L U L' U 'J L' U L' U 'J L' U ' ' U 'J L'

- reset 1

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

-yl —1 —1 1— 1—

-У? 1 1 1

-уз 1

• y4 1

Рис. 7. Часовi дiаграми автомата Мура з коректними умовами переходiв

Розглянемо наступний приклад графа переходiв (рис. 8). У ньому умови переходiв iз стану а1 некоректнi з точки зору ортогоналiзащl функци умов переходiв, при переходi в а4 i а5 в записi термiв бракуе змшно! хь але вони не суперечать

умовам переходiв xxx2x3 умов переходiв е повними.

та x^x3.

Функцiï

Х2Х3

Рис. 8. Граф переходiв автомата Мура з несуперечливими неповними умовами переходiв

Переходи iз стану а1 можуть бути записаш на мовi VHDL так (рис.9, а або б). При цьому такий опис стилютично не е коректним, але не е суперечливим та при моделюванш дае таю ж результати, що i на рис. 7.

when a1=> if x1='0' then NextState <= a2; elsif x1='1'and x2='0' then NextState <= a3; elsif x2='1'and x3='0' then NextState <= a4; else NextState <= a5; end if;

а

when a1=> if x1='0' then NextState <= a2; elsif x1='1'and x2='0' then NextState <= a3; elsif x2='1'and x3='0' then NextState <= a4; elsif x2='1'and x3='1' then NextState <= a5; end if;

б

Рис. 9. Фрагменти VHDL- мoдeлi автомата Мура з несуперечливими неповними умовами пepeхoдiв

Кpiм того, мoдeлi автoматiв, що навeдeнi на рис.6 та 9, при сиш^ дають абсолютно oднакoвi кopeктнi результати. Синтез виконувався в систeмi XILINX ISE.

Далi розглянемо приклад графа пepeхoдiв (рис. 10) з вщсутшм переходом (по умoвi xxx2x3) та неповною умовою переходу iз стану а1 в стан а4: x2x3 замiсть xjx2x3. Функщя умов пepeхoдiв у даному випадку е неортогональною та неповною. Фрагмент VHDL- мoдeлi цього автомата наведений на рис. 11.

Рис. 10. Граф пepeхoдiв автомата Мура з вщсутшм переходом

when a1=> if x1='0' then NextState <= a2; elsif x1='1'and x2='0' then NextState <= a3; elsif x2='1'and x3='0' then NextState <= a4; end if;

Рис. 11. Фрагмент VHDL-мoдeлi автомата Мура з вщсутшм переходом

При моделюванш роботи даного автомата (рис. 12) на перший погляд все добре, але наспpавдi змшна x3 тут виявляеться несуттевою, як на рис. 3, в. На набopi x1; x2, x3=111 автомат не мае переходити в жодний стан, але система моделювання переводить його в стан а^ Так само при набopi умов x1; x2, x3 = 010, автомат може перейти в два стани а2 i а4 , чого не повинно бути при правильнш робот автомата, але система

моделювання маскуе таку ситуацiю, переводячи автомат в стан а2. У цьому пpикладi е i вщсутшсть повноти, i наявнiсть супepeчнoстi умов пepeхoдiв, але на етапах аналiзу синтаксису i моделювання це явно не проявляеться.

Nome |'|;| 2Г1] '-0П 6Л 500 . 1ГО0 1200 U00 160

- Stale V еnds ■ <£_EDilQI'DEEQLiEOil!_

Xrnje

■ .1 I

■ I I I

' .. I I II

■ L'lk _l l_ U _l J l_ U _l J L U U J L l_ U _l

■ itsel 1

-yl 1 1 1 1 1 1 1 1

-у? 1 1 1

1 1 1 1

Рис. 12. Часoвi дiагpами автомата Мура з вщсутшм переходом

При синтeзi цього автомата виникають проблеми. Критично! помилки не виникае, але з'являеться попередження про появу чотирьох тpигepiв типу latch на додаток до чотирьох трш^в типу flip-flop: WARNING: Xst:737 -Found 4-bit latch for signal <NextState>. Latches may be generated from incomplete case or if statements. We do not recommend the use of latches in FPGA/CPLD designs, as they may lead to timing problems. Отже, замють двох тpигepiв для чотирьох сташв синтезуеться 8 тpигepiв двох тишв. Цього не повинно бути в коректно синтезованому автомата

На завершення розглянемо приклад графа пepeхoдiв (рис. 13) з суперечливою умовою переходу iз стану а! в стан а4: Х2Х3 замють

XjX2X3. Фрагмент VHDL-мoдeлi цього автомата наведений на рис. 14.

Рис. 13. Граф пepeхoдiв автомата Мура з суперечливою умовою переходу

when a1=> if x1='0' then NextState <= a2; elsif x1='1' and x2='0' then NextState <= a3; elsif x2='0' and x3='1' then NextState <= a4; elsif x2='1'and x3='1' then NextState <= a5; end if;

Рис. 14. Фрагмент VHDL-мoдeлi автомата Мура з суперечливою умовою переходу

При моделюванш роботи цього автомата (рис. 15) явно спостериаеться тшьки неможливють переходу в стан а4 ш при яких наборах умов x1; x2, x3. Як i в попередньому прикладi, система моделювання маскуе помилкову ситуацiю, при якш створюються умови переходу автомата в декшька станiв. Наприклад, при наборi умов xi, x2, x3 = 001 автомат повинен перейти в два стани а2 i а4, при наборi умов xl5 x2, x3 = 101 автомат повинен перейти в а3 i а4. Також маскуе помилкову ситуацiю, при якш створюються умови, коли автомат не повинен переходити в жоден стан, наприклад, при наборi умов xl5 x2, x3 = 110. У даному прикладi також е вiдсутнiсть повноти та наявшсть суперечностi умов переходiв, але на етапах аналiзу синтаксису це шяк не проявляеться, а на етат моделювання явно видно тшьки те, що автомат школи не переходить в стан а4.

При сиш^ теж виникають проблеми. З'являеться попередження про появу п'яти тригерiв типу latch на додаток до п'яти тригерiв типу flip-flop:Xst:737 - Found 5-bit latch for signal <NextState>. Latches may be generated from incomplete case or if statements.

Ыэ~е ОТ . ЮТ 810 .1000 >230 . 1<оо. . ISOO t

» State т J- ~—f s

V cidii" )а-е

■ 1

1 1 1

» . ; 1 II II

П1ПГГПП1ПГГПП1ПГ 1

■ -..„i 1

—1 1 1 1 1 —1

-у2 1 1 1 1 1 1

- Л

1 1

Рис. 15. Чaсовi дiaгрaми автомата Мура з суперечливою умовою переходу

Таким чином, показано, що проблеми, пов'язаш з некоректними умовами, можуть проявитися тшьки в процес синтезу, тому перевiрку умов переходiв на несуперечнiсть i повноту необхщно виконувати ще на етат формування моделi графа переходiв автомата. 4. Висновки

В результат проведених дослiджень було показано:

1) Функщя умов переходiв f(xx,x2, ...xn) несуперечлива, якщо вона ортогональна.

2) Ортогональна функцiя умов переходiв f(xj,x2, ...xn) е повною, якщо ïï терми

покривають усi набори xj ,Х2,... xn.

3) Число переходiв iз стану aj з функцiею умов переходiв f(xx,x2,...xn) мае бути не менше (n+1), де n - число змшних.

4) Число переходiв i3 стану ai з функщею умов переходiв мае бути piBHe (m+1), де m - число вершин дерева ортогональних ршень.

5) При невиконант п. 1-4 висновюв синтезуеться автомат з надмiрним числом тригерiв типу flip-flop та неприпустимою появою такого ж числа тригерiв типу latch.

Наукова новизна полягае в тому, що запропоновано метод аналiзу графа переходiв кiнцевого автомата на коректшсть умов переходiв, що дозволяе отримати ненадмiрну, коректну з точки зору запам'ятовуючо! частини, схемну реалiзацiю при синтезi HDL-моделi кшцевого автомата.

Практична значущ1сть: в силу особливостей роботи системи моделювання, вщсутш переходи або суперечливi умови переходiв на етапi перевiрки синтаксису не фшсуються, на етапi моделювання вони можуть залишитися непомiченими i тiльки пiсля автоматизованого синтезу виявляються проблеми. Тому перевiрка коректностi умов переходiв повинна перевiрятися на етат побудови моделi графа автомата. Це е актуальним в системах лопчного управлiння, в порiвняннi з пристроями мiкропрограмного управлiння, де умови на графi переходiв записуються по бшарному дереву умов у граф-схемi алгоритму (ГСА), що описуе операцшний автомат. У зв'язку з цим, ймовiрнiсть помилки значно менша в порiвняннi з автоматами логiчного управлiння, де ГСА не використовуються, як правило, а закон управлшня описуеться графом переходiв. Для аналiзу функци умов переходiв до 5 змiнних можна використати карти Карно, але для бшьшого числа змшних i у разi автоматизацп аналiзу зручнiше використати кубiчне числення з представленням функцш умов переходiв у виглядi багатовимiрних векторiв (кубiв) [8]. Литература: 1. Шкиь А. С. Автоматизированное проектирование систем логического управления с использованием шаблонов автоматного

программирования / А.С. Шкиль, Э.Н. Кулак, И.В. Филиппенко, Д.Е. Кучеренко, М.В. Гога. // Радюелектрошка та шформатика. 2018. №3. С. 75-81. 2. Рябинин И.А. Надежность и безопасность структурно-сложных систем / И.А. Рябинин. СПб.: Изд-во С.-Петерб. ун-та, 2007. 276с. 3. Бибило П.Н. Синтез логических схем с использованием языка VHDL / П.Н. Бибило. М.: СОЛОН-Р, 2009. 384 с.: 4. Шалыто А.А. SWITCH-технология. Алгоритмизация и программирование задач логического управления / А.А. Шалыто. СПб.: Наука, 1998. 628 с. 5. Баранов С.И. Синтез микропрограммных автоматов (граф схемы и автоматы) / С.И.Баранов. Л.:Энергия, 1979. -232 с. 6. Закревский А.Д. Логические основы проектирования дискретных устройств / А.Д. Закревский, Ю.В. Поттосин, Л. Д. Черемисинова. М.: ФИЗМАТЛИТ, 2007. 592 с. 7. Шалыто А.А. Новый

метод вычищения булевьк формул / A.С.Ковалев, A.П.Лукьянова, A.A^anbrro. [Электронный реcyрc] Движение за открытую проектную документацию -Pежим доступа: www / URL:

http://is.ifmo.ru/download/lbgmx.pdf. - Загл. c экрана. 8. Хаханов В.И. Tеxничеcкaя дивгностика элементов и узлов перети^ьныи компьютеров / В.И. Xaxaнов - К.: 1ЗМН, i997. 30S c. Transliterates bibliography:

1. Shkil A. S. Avtomatizirovannoe proektirovanie sistem logicheskogo upravlenija s ispol'zovaniem shablonov avtomatnogo programmirovanija / A.S. Shkil', Je.N. Kulak, I.V. Filippenko, D.E. Kucherenko, M.V. Goga. // Radioelektronika ta informatika. 20iS. №3. S. 75-Si.

2. Rjabinin I.A. Nadezhnost' i bezopasnost' strukturno-slozhnyh sistem / I.A. Rjabinin. SPb.: Izd-vo S.-Peterb. un-ta, 2007. 276s.

3. Bibilo P.N. Sintez logicheskih shem s ispol'zovaniem jazyka VHDL / P.N. Bibilo. M.: SOLON-R, 2009. 3S4 s.:

4. Shalyto A.A. SWITCH-tehnologija. Algoritmizacija i programmirovanie zadach logicheskogo upravlenija / A.A. Shalyto. SPb.: Nauka, i998. 62S s.

5. Baranov S.I. Sintez mikroprogrammnyh avtomatov (graf shemy i avtomaty) / S.I.Baranov. L.:Jenergija, i979. 232 s.

6. Zakrevskij A.D. Logicheskie osnovy proektirovanija diskretnyh ustrojstv / A.D. Zakrevskij, Ju.V. Pottosin, L.D. Cheremisinova. - M.: FIZMATLIT, 2007. 592 s.

7. Shalyto A.A. Novyj metod vychislenija bulevyh formul / A.S.Kovalev, A.P.Luk'janova, A.A. Shalyto. [Jelektronnyj resurs] Dvizhenie za otkrytuju proektnuju dokumentaciju - Rezhim dostupa: www / URL: http://is.ifmo.ru/download/lbgmx.pdf.

8. Hahanov V.I. Tehnicheskaja divgnostika jelementov i uzlov personal'nyh komp'juterov / V.I. Hahanov. K.: IZMN, i997. 30S s.

Поcтyнилa в редколепю 11.03.2019 Рецензент: д-р теxн. наук, проф. Кривуля Г.Ф. Шкшь Олекcaндр Сергiйoвич, канд. теxн. наук, доцент кафедри AÜOT XНУPЕ. Нayковi iнтереcи: дiaгноcтикa цифровиx cиcтем, дистанцшна оcвiтa. Aдреca: Украша, 6ii66, Xaркiв, пр. Науки, i4, тел. 702-i3-26.

Кулак Ельв1ра МиколаУвна, канд. техн. наук, доцент кафедри АПОТ ХНУРЕ. HayKOBi iнтереси: автоматизоване проектування цифрових автоматв, тестопридатне проектування. Адреса: Украша, 61166, Хaркiв, пр. Науки, 14, тел. 702-13-26. Фшшпенко 1нна Bik-iopiiiiKi. канд. техн. наук, доцент кафедри АПОТ ХНУРЕ. Hayковi iнтереси: проектування цифрових пристроïв на бaзi мiкроконтролерiв, цифровi фiльтри. Адреса: Укрaïнa, 61166, Харкв, пр. Науки, 14, тел. 702-13-26. Шакура Олеkсiй Геннадiйoвич, студент ХНУРЕ. Hayковi iнтереси: автоматизоване проектування цифрових автоматв. Адрес: Укрaïнa, 61166, Харюв, пр. Науки, 14, тел. 702-13-26.

Фоменко Владислав Володимирович, студент ХНУРЕ. Hayковi штереси: верифiкaцiя моделей цифрових автоматв Адреса: Укрaïнa, 61166, Харюв, пр. Науки, 14, тел. 702-13-26.

Shkil Alexander Sergeevich, PhD, Associate Professor, Design Automation Department, KNURE. Scientific interests: diagnostics of digital systems, distance education. Address: Ukraine, 61166, Kharkiv, Nauka Avenue, 14, tel. 702-13-26.

Kulak Elvira Nikolaevna, PhD, Associate Professor, Design Automation Department, KNURE. Scientific interests: automated design of digital machines, HDL. Address: Ukraine, 61166, Kharkiv, Nauka Avenue, 14, tel. 702-13-26.

Filippenko Inna Victorovna, PhD, Associate Professor, Design Automation Department, KNURE. Scientific interests: design based on microcontrollers, digital filters. Address: Ukraine, 61166, Kharkiv, Nauka Avenue, 14, tel. 702-13-26.

Shakura Alexey Gennadievich, student, KNURE. Scientific interests: automated design of digital machines. Address: Ukraine, 61166, Kharkiv, Nauka Avenue, 14, tel. 702-13-26.

Fomenko Vladislav Vladimirovich, student, KNURE. Scientific interests: verification of FSM models. Address: Ukraine, 61166, Kharkiv, Nauka Avenue, 14, tel. 702-1326.

i Надоели баннеры? Вы всегда можете отключить рекламу.