Проектування керуючих автоматів Мура та Мілі за заданою граф-схемою алгоритму
Анотація
Метою даної курсової роботи є закріплення основних теоретичних та практичних положень дисципліни комп`ютерна схемотехніка. В процесі розробки курсової роботи виконується синтез комбінаційної схеми, яка реалізує задану функцію п`яти змінних, та за результатами синтезу будується функціональна схема в заданому базисі. Потім, згідно з обраними блоками та структурою ГСА, проектуємо керуючі автомати Мура та Мілі, а також будуємо принципові схеми: для автомата Мура на елементах малого ступеня інтеграції заданої серії, а для автомата Мілі на основі ПЛМ. Ці задачі отримали широке розгалуження в аналізі та синтезі програмних і апаратних засобів обчислювальної техніки, дискретної математиці, а також мають багаточисельні технічні положення. Характерною рисою науково-технічного прогресу, який визначає подальший потужний підйом суспільно-технічного виробництва, є широке застосування досягнень обчислювальної та мікропроцесорної техніки в усіх галузях народного господарства. Вирішення задач науково-технічного прогресу потребує застосування засобів обчислювальної техніки на місцях економістів, інженерів та економічного персоналу.
1. Синтезувати комбінаційну схему, що реалізує задану функцію 5-ти змінних
1.1 Визначення значення БФ
Булева функція 5-ти змінних F (X1, X2, X3, X4, X5) задається своїми значеннями, які визначаються 7-розрядними двійковими еквівалентами чисел, що обираються з таблиці 1 за значеннями числа (А), місяця (В) народження студента і порядкового номера (С) студента в списку групи. Значення функції на конкретних наборах обираються:
- на наборах 0-6 за значенням А;
- на наборах 7-13 за значенням В;
- на наборах 14-20 за значенням С;
- на наборах 21-27 за значенням (А+В+С);
- на наборах 28-31 функція приймає невизначені значення.
Таблиця 1
|
| | О Д И Н И Ц І | |
| | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | |
| 0 | 23 | 11 | 72 | 12 | 94 | 38 | 59 | 10 | 42 | 25 | |
д | 1 | 85 | 95 | 07 | 49 | 57 | 50 | 89 | 13 | 72 | 39 | |
е | 2 | 32 | 23 | 43 | 94 | 54 | 76 | 96 | 37 | 05 | 96 | |
с | 3 | 97 | 87 | 36 | 08 | 61 | 48 | 19 | 18 | 86 | 62 | |
я | 4 | 79 | 72 | 70 | 02 | 90 | 63 | 41 | 47 | 01 | 20 | |
т | 5 | 23 | 26 | 44 | 92 | 84 | 33 | 52 | 51 | 43 | 38 | |
к | 6 | 45 | 74 | 34 | 35 | 83 | 87 | 55 | 93 | 08 | 07 | |
и | 7 | 95 | 80 | 66 | 60 | 65 | 88 | 33 | 05 | 09 | 48 | |
| 8 | 27 | 49 | 19 | 40 | 17 | 51 | 47 | 08 | 37 | 36 | |
| 9 | 10 | 59 | 89 | 99 | 95 | 77 | 48 | 11 | 68 | 20 | |
|
Крім того, для всіх двійкових еквівалентів у розрядах лівіше старшої значущої одиниці, необхідно проставити символ невизначеного значення Х і вважати, що функція на таких наборах також приймає невизначені значення.
A=05. Из табл. 1 находимо число 3810, яке в двоічній системі счислення має вид 01001102. Тут левіше старшої значущої одиницы знаходяться нулі, тому заміняємо їх символом невизначного значення Х. Тоді одержуемо Х100110.
В = 02; 7210 = 10010002
С = 14; 5710 = 01110012
D = А+В+С = 10100111
Запишемо значення функції F (X1, X2, X3, X4, X5) на наборах від 0 до 31 у базисі 2ЧИ-НІ
|
№ набора | X1 | X2 | X3 | X4 | X5 | F | |
0 | 0 | 0 | 0 | 0 | 0 | Х | |
1 | 0 | 0 | 0 | 0 | 1 | 1 | |
2 | 0 | 0 | 0 | 1 | 0 | 0 | |
3 | 0 | 0 | 0 | 1 | 1 | 0 | |
4 | 0 | 0 | 1 | 0 | 0 | 1 | |
5 | 0 | 0 | 1 | 0 | 1 | 1 | |
6 | 0 | 0 | 1 | 1 | 0 | 0 | |
7 | 0 | 0 | 1 | 1 | 1 | 1 | |
8 | 0 | 1 | 0 | 0 | 0 | 0 | |
9 | 0 | 1 | 0 | 0 | 1 | 0 | |
10 | 0 | 1 | 0 | 1 | 0 | 1 | |
11 | 0 | 1 | 0 | 1 | 1 | 0 | |
10 | 0 | 1 | 1 | 0 | 0 | 0 | |
13 | 0 | 1 | 1 | 0 | 1 | 0 | |
14 | 0 | 1 | 1 | 1 | 0 | Х | |
15 | 0 | 1 | 1 | 1 | 1 | 1 | |
16 | 1 | 0 | 0 | 0 | 0 | 1 | |
17 | 1 | 0 | 0 | 0 | 1 | 1 | |
18 | 1 | 0 | 0 | 1 | 0 | 0 | |
19 | 1 | 0 | 0 | 1 | 1 | 0 | |
20 | 1 | 0 | 1 | 0 | 0 | 1 | |
21 | 1 | 0 | 1 | 0 | 1 | Х | |
22 | 1 | 0 | 1 | 1 | 0 | 1 | |
23 | 1 | 0 | 1 | 1 | 1 | 0 | |
24 | 1 | 1 | 0 | 0 | 0 | 0 | |
25 | 1 | 1 | 0 | 0 | 1 | 1 | |
26 | 1 | 1 | 0 | 1 | 0 | 1 | |
27 | 1 | 1 | 0 | 1 | 1 | 1 | |
28 | 1 | 1 | 1 | 0 | 0 | Х | |
29 | 1 | 1 | 1 | 0 | 1 | Х | |
30 | 1 | 1 | 1 | 1 | 0 | Х | |
31 | 1 | 1 | 1 | 1 | 1 | Х | |
|
1.2 Опис мініиізації БФ
Виписав значення функції з таблиці, одержимо мінімальну диз'юнктивну нормальну форму (МДНФ) і мінімальну кон'юнктивну нормальну форму (МКНФ) булевої функції методом карт Карно. Вибрати для реалізації мінімальну з МДНФ і МКНФ (для цього знайдемо ціну за Квайном) і представимо її відповідно до заданого елементного базису:
МДНФ:
|
х1х2х3 х4х5 | 000 | 001 | 011 | 010 | 110 | 111 | 101 | 100 | |
00 | Х | 1 | 0 | 0 | 0 | Х | 1 | 1 | |
01 | 1 | 1 | 0 | 0 | 1 | Х | Х | 1 | |
11 | 0 | 1 | 1 | 0 | 1 | Х | 0 | 0 | |
10 | 0 | 0 | Х | 1 | 1 | Х | 1 | 0 | |
|
Одержуємо мінімальну диз'юнктивну нормальну форму (МДНФ):
у =
Для знайденої форми обчислимо ціну за Квайном, яка дорівнює додатку кількості слагаємих, кількості елементів та кількості заперечень.
Цкв. = 25
МКНФ:
|
х1х2х3 х4х5 | 000 | 001 | 011 | 010 | 110 | 111 | 101 | 100 | |
00 | Х | 1 | 0 | 0 | 0 | Х | 1 | 1 | |
01 | 1 | 1 | 0 | 0 | 1 | Х | Х | 1 | |
11 | 0 | 1 | 1 | 0 | 1 | Х | 0 | 0 | |
10 | 0 | 0 | Х | 1 | 1 | Х | 1 | 0 | |
|
Одержуємо мінімальну кон'юктивну нормальну форму (МКНФ):
у =
Для знайденої форми обчислимо ціну за Квайном, яка дорівнює додатку кількості помножень плюс один, кількості елементів та кількості заперечень.
Цкв. = 39
Виходячи з того, що ціна по Квайну МДНФ функції менше, ніж МКНФ, обираємо для реалізації МДНФ функції. Реалізацію будемо проводити згідно з заданим базисом 2ЧИ-НІ. Застосуємо до обраної форми факторний алгоритм та одержимо скобкову форму для заданої функції:
у =
у =
у =
2. Вибір блоків та структури ГСАГраф-схеми алгоритмів обираються кожним студентом індивідуально. Граф-схема складається з трьох блоків E, F, G і вершин «BEGIN» і «END». Кожен блок має два входи (A, B) і два виходи (C, D). Студенти вибирають блоки E, F, G з п'яти блоків з номерами 0, 1, 2, 3, 4 на підставі чисел А, В, С за такими правилами:
- блок Е має схему блока під номером (А) mod5;
- блок F має схему блока під номером (В) mod 5;
- блок G має схему блока під номером (С) mod 5.
Блоки E, F, G з'єднуються між собою відповідно до структурної схеми графа, що має вид
- для групи АН-042;
E=05 (MOD5)=0
F=02 (MOD5)=2
G=14 (MOD5)=4
Згідно з номером групи обираемо структурну схему графа, за якою з блоки E, F і G.
Тип тригера вибирається за значенням числа (А) mod 3 на підставі таблиці:
|
(A) mod 3 | ТИП ТРИГЕРА | |
0 | Т | D | |
1 | D | JK | |
2 | JK | T | |
автомат | Мілі | Мура | |
|
A(MOD3)= 05 (MOD3)=2; => JK триггер для автомата Мили, T-триггер для автомата Мура.
Серія інтегральних мікросхем для побудови схем електричних принципових синтезованих автоматів визначається в залежності від парності номера за списком:
- КР1533 - для парних номерів за списком;
3. Синтез автомата Мура на T-тригерахНаш автомат має 18 станів, значить, для його побудови нам необхідно 5 T-тригерів.Будуємо таблицю переходів автомата Мура на базі T-тригера. Виконаємо кодування станів керуючого автомата (УА) з використанням відповідного алгоритму кодування для T-триггера. Функцію порушення вихідних сигналів визначимо в залежності від поточного стану та вхідних сигналів згідно з таблицею:
Для кодування станів я обираю євристичний метод кодування. Я роблю це за допомогою спеціальной програми під назваю ECODE V3.02.Таблиця для входів та виходів атомата Мура
|
am | Kam | as | Kas | Условие перехода | Функция возбуждения | |
а1 (-) | 01100 | а2 | 01110 | 1 | T4 | |
a2 (y1, y4) | 01110 | а5 а7 | 00110 01010 | x3 x3 | T2 T3 | |
a3 (y1, y1) | 00000 | а4а6а8 а9 | 010000010000010 00001 | x4x4 x2x4 x2 x1 x4 x2 x1 | T2T3T4 T5 | |
a4 (y3) | 01000 | а7 | 01010 | 1 | T4 | |
a5 (y7) | 00110 | а8 а9 | 00010 00001 | x1 x1 | T3 T3 T4 T5 | |
a6 (y4, y5) | 00100 | а8 | 00010 | 1 | T3 T4 | |
a7 (y2, y6) | 01010 | а8 | 00010 | 1 | T2 | |
a8 (y1, y8) | 00010 | а10а13 а12 | 1001000011 00101 | x4x4 x3 x4 x3 | T1T5 T3 T4 T5 | |
a9 (y5, y9) | 00001 | а13а13а12 а3 | 000110001100101 00000 | x4 x3x4 x1x4 x3 x4 x1 | T4T4T3 T5 | |
a10 (y4) | 10010 | а11 | 10011 | 1 | T5 | |
a11 (y4, y5) | 10011 | а15 | 00111 | 1 | T1 T3 | |
a12 (y3, y10) | 00101 | а15 | 00111 | 1 | T4 | |
a13 (y6) | 00011 | а3 | 00000 | 1 | T4 T5 | |
a14 (y1, y3) | 11111 | а14 а16 | 11111 10111 | x2 x2 | - T2 | |
a15 (y2) | 00111 | а17 а16 | 01111 10111 | x5 x5 | T2 T1 | |
a16 (y6) | 10111 | а17 | 01111 | 1 | T1 T2 | |
a17 (y7, y10) | 01111 | а14 а18 | 11111 01101 | x4 x4 | T1 T4 | |
a18 (y2) | 01101 | а1 | 01100 | 1 | T5 | |
|
Для отримання вихідних сигналів:Виписуємо функцію збудження:Знаходимо загальні частини та замінюємо їх на Q:Переписуємо рівняння згідно з підстановкою:
Побудова принципової схеми автомата на елементах малого ступеня інтеграції заданої серії
За допомогою отриманих виразів для вихідних сигналів і функцій порушень до типу логічних елементів, що реалізують ці вирази, та врахував проведену мінімізацію, будуємо принципову схему синтезованого автомата.
4. Синтез автомата Мілі на JK-тригерах
Наш автомат має 15 станів, значить, для його побудови нам необхідно 4 JK-тригерa.
Будуємо таблицю переходів автомата Мілі на базі JK-тригера. Виконаємо кодування станів керуючого автомата (УА) з використанням відповідного алгоритму кодування для JK-триггера. Функцію порушення вихідних сигналів визначимо в залежності від поточного стану та вхідних сигналів згідно з таблицею:
Таблиця
|
a1 | 1110 | |
a2 | 0110 | |
a3 | 0111 | |
a4 | 0100 | |
a5 | 0000 | |
a6 | 1001 | |
a7 | 1000 | |
a8 | 1100 | |
a9 | 1111 | |
a10 | 1011 | |
a11 | 1101 | |
a12 | 0011 | |
a13 | 0010 | |
a14 | 0101 | |
a15 | 0001 | |
|
Таблиця для входів та виходів атомата Мілі
|
am | Kam | AS | KaS | X | Y | Функція збудження | |
a1 | 1110 | a2 | 0110 | 1 | y1, y4 | J4 | |
a2 | 0110 | a3 a4 | 0111 0100 | x3 x3 | y7 y2, y6 | J3K4 J3 | |
a3 | 0111 | a12 a5 | 0011 0000 | x1 x1 | y5, y9 y1, y8 | J1J4 J2K3 | |
a4 | 0100 | a5 | 0000 | 1 | y1, y8 | J2K3K4 | |
a5 | 0000 | a6 a7 a13 | 1001 1000 0010 | x4 x4x3 x4x3 | y4 y3, y10 y6 | J4 J3 J1 | |
a6 | 1001 | a7 | 1000 | 1 | y5, y4 | J3K4 | |
a7 | 1000 | a8 | 1100 | 1 | y2 | J4 | |
a8 | 1100 | a9 a11 | 1111 1101 | x5 x5 | y7, y10 y6 | J1K2K3K4 J1K2K4 | |
a9 | 1111 | a1 a10 | 1110 1011 | x4 x4 | y2 y1, y3 | K1 J4 | |
a10 | 1011 | a11 a10 | 1101 1011 | x2 x2 | y6 y1, y3 | J3K4 - | |
a11 | 1101 | a9 | 1111 | 1 | y7, y10 | K3 | |
a12 | 0011 | a15 a7 a13 a13 | 0001 1100 0010 0010 | x4x1 x4x3 x4x1 x4x3 | y1, y2 y3, y10 y6 y6 | J2K4 K1J2K4 J2K3K4 J2K3K4 | |
a13 | 0010 | a15 | 0001 | 1 | y1, y2 | J3 | |
a14 | 0101 | a4 | 0100 | 1 | y2, y6 | K1K2J3 | |
a15 | 0001 | a14 a4 a12 a5 | 0101 0100 0011 0000 | x4 x4x2 x4x2x1 x4x2x1 | y3 y4, y5 y5, y9 y1, y8 | K2J4 K1K2J4 K2J4 K1K3 | |
|
Для отримання вихідних сигналів:
Виписуємо функцію збудження:
Записуємо вихідні сигнали та функцію збудження у такому виразі:
Побудова принципової схеми автомата на основі програмованих логічних матриць ПЛМ
Враховуючи отримані вирази для вихідних сигналів і функцій порушення, які підходять для побудови схеми на основі ПЛМ, наведемо таблицю з'єднань для ПЛМ, що зображена у приложенні та побудуємо принципову схему синтезованого автомата. При побудові принципової схеми автомата Мілі необхідно використати елементи більш високого ступеня інтеграції.
Висновки
В ході виконання даного курсового проекту був проведений аналіз основних розділів та закріплення теоретичних положень дисципліни комп`ютерна схемотехніка з метою закріплення лекційного та практичного матеріалу; також були одержані практичні навички в проектуванні принципових схем цифрових пристроїв обчислювальної техніки. У курсовій роботі були виявлені основні навички вирішення задач синтезу комбінаційної схеми та побудови функціональної схеми в заданому базисі за результатами синтезу. Також було проведене проектування керуючих автоматів Мура та Мілі за заданою граф-схемою алгоритму, а також побудування принципової схеми автоматів: для Мура - на елементах малого ступеня інтеграції заданої серії, а для Мілі - автомата на основі програмованих логічних матриць (ПЛМ). Знання, одержані під час виконання цієї роботи, використовуються для аналізу та синтезу різноманітних цифрових пристроїв обчислювальної техніки та автоматики.