- •1.1. Системи числення. Кодування десяткових чисел. Основні коди.
- •1.2. Аксіоми й основні закони булевої алгебри
- •1.3. Перемикальні функції.
- •1.4. Комбінаційні і послідовні пристрої
- •1.5. Проектування комбінаційних схем
- •2. Комбінаційні функціональні вузли
- •2.1. Дешифратори
- •2.2. Перетворювачі кодів і шифратори
- •2.4. Цифрові компаратори
- •2.5. Суматори
- •2.6. Арифметико-логічні пристрої
- •3. Тригери
- •3.1 Асинхронні rs-тригери
- •3.2. Синхронний rs-тригер
- •3.6. Двоступінчасті тригери
- •3.7. Використання jk-тригера як тригери різного типу
- •3.8. Тригери з динамічним керуванням
- •4. Цифрові автомати з пам'яттю
- •4.2. Способи задання цифрових автоматів
- •4.3. Алгоритм переходу від довільного кінцевого автомата Милі до еквівалентного йому автоматові Мура
- •4.4. Алгоритм переходу від довільного кінцевого автомата Мура до еквівалентному йому автоматові Мілі
- •4.5. Мінімізація числа станів автоматів Мілі і Мура
- •1. Визначаємо розбиття на класи 0-еквівалентних станів по табл.4.13, поєднуючи однаково відзначені вихідними сигналами стани
- •4.6. Структурний синтез автоматів з пам'яттю
- •5. Регістри
- •5.1. Рівнобіжні регістри
- •5.2. Послідовні (зсуваючі) регістри
- •6. Лічильники
- •6.1. Асинхронні лічильники
- •6.2. Синхронні лічильники
- •7. Запам'ятовуючі пристрої
- •7.1. Класифікація й основні параметри запам'ятовуючих пристроїв
- •7.2. Принципи побудови запам'ятовуючого пристрою з довільним доступом
- •7.3. Оперативні запам'ятовуючі пристрої
- •7.4. Постійні запам'ятовуючі пристрої
- •7.5. Організація багатокристальної пам'яті
- •7.6. Програмувальні логічні матриці
4.4. Алгоритм переходу від довільного кінцевого автомата Мура до еквівалентному йому автоматові Мілі
1.
Визначаємо функцію переходів автомата
Мілі. Якщо функція переходів автомата
Мура, то функція переходів
еквівалентного
автомата Мілі визначається наступним
співвідношенням:
Таблиця переходів еквівалентного автомата Мілі збігається з таблицею переходів автомата Мура.
2. Визначаємо функцію виходів автомата Мілі. Якщо -функція виходів автомата Мура, то функція виходів 2(z,x) еквівалентного автомата Мілі визначається співвідношенням
У кожну клітинку таблиці автомата Мілі записують вихідний сигнал yj, яким відзначений стан zi автомата Мура в даній клітці.
При такому перетворенні граф автомата Мілі відрізняється від графа автомата Мура тільки тим, що вихідні сигнали з вершин графа перенесені на всі дуги, що входять у дану вершину.
4.5. Мінімізація числа станів автоматів Мілі і Мура
Число станів автомата істотно впливає на його складність. Тому визначення абстрактного автомата з найменшим можливим числом станів, що реалізує задане відображення слів вхідного алфавіту в слова вихідного алфавіту, має важливе значення.
Розглянемо алгоритм мінімізації числа станів цілком визначеного автомата Мілі, запропонованого Ауфен - Кампом і Хоном. Основна ідея цього методу полягає в розбитті всіх станів вихідного абстрактного автомата на попарно не пересікаючі класи еквівалентних станів і в заміні кожного класу еквівалентності одним станом. Таким чином, виходить що результаті мінімальний автомат має стільки ж станів, на скільки класів еквівалентності розбиваються стани вихідного автомата.
Два стани автомата zi і zj називаються еквівалентними, якщо (zi, x) = (zi, x) для усіляких вхідних слів х. Якщо zi и zj не еквівалентні, то вони різні. Стану zi і zj к- еквівалентні, якщо (zi, xk) = (zi, xk) для усіляких вхідних слів хк довжини k. Відповідні розбивання на класи еквівалентних і k-еквівалентних станів будемо позначати через і к. Якщо, наприклад, zi і zj, еквівалентні, то з погляду реалізацій автомата на усілякі вхідні слова не має значення, знаходиться автомат у стані zi або zj і одне з них може бути вилучене з множини z. Якщо кожен клас еквівалентності містить тільки одиь стан, множина Z нескоротна. Якщо ж один чи кілька класів містять більше одного елемента, всі елементи, крім одного в кожному класі, можуть бути виключені з множині Z, у результаті чого виходить автомат з мінімальним числом станів.
Роботу алгоритму цроілюструємо на прикладі абстрактного немінімального автомата Мілі, заданого табл.4.9 і 4.10.
Таблиця 4.9
Вхідний сигнал |
Стан |
|||||||
z1 |
z2 |
z3 |
z4 |
z5 |
z6 |
z7 |
z8 |
|
x1 |
z1 |
z3 |
z4 |
z2 |
z7 |
z8 |
z3 |
z1 |
x2 |
z2 |
z8 |
z3 |
z5 |
z4 |
z7 |
z8 |
z6 |
Таблиця 4.10
Вхідний сигнал |
Стан |
|||||||
z1 |
z2 |
z3 |
z4 |
z5 |
z6 |
z7 |
z8 |
|
x1 |
y1 |
y1 |
y1 |
y2 |
y1 |
y1 |
y1 |
y1 |
x2 |
y1 |
y2 |
y1 |
y1 |
y1 |
y2 |
y2 |
y1 |
1. Будуються непересічні класи 1-еквівалентності: а1, b1, с1,d1,...
До одного класу 1-еквівалентності відносяться стани, для яких збігаються значення вихідних сигналів у таблиці виходів (табл.4.10). Для розглянутого приклада одержимо:
Ці класи визначають по таблиці переходів (табл.4.9) і таблиці виходів (табл.4.10) автомата Мілі.
2. Проводиться новий поділ станів на класи. Для цього виробляється заміна кожного зі станів Zi+1 в табл. 4.9 позначенням класу 1-еквівалентності, в який входить цей стан
Поєднуємо
кожному класі стани відзначені однаковою
послідовністю букв і одержуємо розбиття
на класи 2-еквівалентності:
Аналогічно п.2 проводиться нове розбиття
Одержуємо розбиття на класи 3-еквівалентності:
4. Якщо деякі класи черговго розбиття (к+1- еквівалентності) цілком збігаються з класами попереднього розбття (k-еквівалентності), а інші класи містять тільки по одному стану то алгоритм закінчується.
При цьому стани в кожному класі одержуваного розбиття (к +1 -еквівалентності) еквівалентні. У розглянутому прикладі класи сз і d3 збігаються з b2 і с2, а інші класи а3, b3, е3, f3 містять тільки по одному стану. Тому розбиття станів на класи еквівалентності на цьому закінчується.
У кожному класі одержаного розбиття залишають тільки по одному стану, відкинувши інші.
Позначивши
одержимо мінімальний автомат А' зі станами Z'1, Z'2, Z'3, Z'4, Z'5, Z'6, (табл. 4.11 і 4.12).
Таблиця 4.11
Вхідний сигнал |
Стан |
|||||
z1’ |
z2’ |
z3’ |
z4’ |
z5’ |
z6’ |
|
x1 |
z1’ |
z1’ |
z4’ |
z6’ |
z2’ |
z3’ |
x2 |
z4’ |
z2’ |
z3’ |
z2’ |
z4’ |
z6’ |
Таблиця 4.12
Вхідний сигнал |
Стан |
|||||
z1’ |
z2’ |
z3’ |
z4’ |
z5’ |
z6’ |
|
x1 |
y1 |
y1 |
y1 |
y1 |
y1 |
y2 |
x2 |
y1 |
y1 |
y1 |
y2 |
y2 |
y1 |
При мінімізації автоматів Мура вводиться поняття 0-еквівалентності станів і розбиття множини станів на 0-класи, Будь-які однаково відзначені вихідними сигналами стани; автоматів Мура називаються 0-еквівалентними. Якщо два 0-еквівалентних стани будь-яким вхідним сигналом переводяться в два 1-еквівалентних стани, то вони називаються 1-еквівалентними. Усі подальші класи еквівалентності станів для автоматів Мура визначаються аналогічно приведеному вище для автоматів Мілі. Алгоритм мінімізації числа внутрішніх станів автомата Мура проілюструємо на прикладі немінімального автомата, заданого табл. 4.13.
Таблиця 4.13
Вихідний сигнал |
y1 |
y1 |
y3 |
y3 |
y3 |
y2 |
y3 |
y1 |
y2 |
y2 |
y2 |
y2 |
|
Стан |
z1 |
z2 |
z3 |
z4 |
z5 |
z6 |
z7 |
z8 |
z9 |
z10 |
z11 |
z12 |
|
Вхідний сигнал |
x1 |
z10 |
z12 |
z5 |
z7 |
z3 |
z7 |
z3 |
z1 |
z7 |
z1 |
z5 |
z2 |
x2 |
z5 |
z7 |
z6 |
z11 |
z9 |
z11 |
z6 |
z4 |
z6 |
z8 |
z9 |
z8 |
|
