Приклад проектування мікропрограмного автомата із жорсткою логікою управління

Завдання на проектування.Розробити синхронний цифровий мікропрограмний автомат із жорсткою логікою управління й переходів станів ЦА в послідовності 0, 7, 9, 11, 13, 0 за сигналами зворотних зв’язків із дешифраторів станів DC.

Мікропрограма складається з п’яти мікрокоманд (МК0, МК1, МК2, МК3, МК4), що надходять на виходи автомата у вигляді двійкових паралельних, семирозрядних кодів, що відповідають своєму стану (0 − 0000000, 7 − 0010001, 9 − 0100010, 11 − 1000100, 13 − 1111000).

Установка першої мікрокоманди МК1 здійснюється асинхронно за командою «Пуск» (надходить із зовні), установка в нульовий стан по входу R здійснює мікрокоманда МК4.

Проектування мікропрограмного автомата почнемо з вибору достатньої кількості елементів пам’яті і їхнього типу.

Число елементів пам’яті визначаємо за розрядністю двійкового коду числа найбільшого стану. У нашому завданні це число 13, що відповідає коду 1101. Для його представлення необхідно, як мінімум, чотири двійкових розряди, що підтверджується загальним співвідношенням 2n ³ M, де M − найбільше число станів автомату; n − найменше число необхідних двійкових розрядів.

Для забезпечення синхронності надходження на вихід мікрокоманд нормального режиму переключення елементів пам’яті (по задньому фронту синхроімпульсу С) і, одночасно, вимоги асинхронного пуску й зупинки циклу, вибираємо JK -тригер. Двоступінчата схема такого триггера (в умовній позначці тригера ставлять дві букви Т) за своїми властивостями забезпечує виконання цих вимог.

Інформаційний вхід сигналу J =1 тригера служить для переключення його зі стану 0 у стан 1, вхід К =1 служить для установки в стан 0. Переключення по сигналах J або K відбувається синхронно по задньому фронту синхроімпульсу С. Інверсні асинхронні входи S і R призначені для установки тригера по S в 1, а по R в 0 без прив’язки до синхроімпульсів.

Рисунок 4.7 – Граф автомата ЖЛУ

Для реалізації комбінаційної частини дешифратора, побудуємо граф станів мікропрограмного автомата. На рисунку 4.7 представлений граф переходів мікропрограмного автомата із жорсткою логікою управління.

На дугах графа позначають найменування сигналу, за яким здійснюється перехід із попереднього стану в наступний. Через «−» записані входи елементів пам’яті, на які ці сигнали надходять, щоб зробити відповідні переключення. Через «\» записані мікрокоманди, що надходять на вихід мікропрограмного автомата в цей момент часу.

Для синтезу дешифраторів DC, складемо таблицю відповідності, використовуючи стани графа зображеного на рисунку 4.7.

Складемо таблицю 4.8 відповідності і визначимо логічні функції для дешифраторів зворотних зв’язків керування DC 1, DC 2, DC 3, DC 4.

;

;

;

.

Таблиця 4.8 – Відповідність сигналів DC стану автомата

Схеми дешифраторів будуємо за ЛФ, використовуючи логічні схеми кон’юнкції на чотири входи. Виходи елементів пам’яті Qi вводимо через зв’язки 1, 2,..., 8 у шину і потім розводимо на відповідні DC. Виходи дешифраторів вводимо через зв’язки 1, 2, 3, 4 у шину зворотних зв’язків, а потім виводимо їх на входи елементів пам’яті, визначенні графом автомата. Якщо по якому-небудь входу потрібно подати кілька сигналів (у нас по входу К 3), то це реалізуємо за допомогою логічних елементів АБО.

Для синтезу комбінаційної схеми шифратора, складемо таблицю відповідності його роботи, використовуючи виходи Qi елементів пам’яті й коди мікрокоманд МKi.

За таблицею 4.9 отримаємо систему логічних функцій шифратора. Проведемо мінімізацію цих функцій за допомогою карт Карно. При мінімізації будемо враховувати, що з 16 станів у даному автоматі використовують тільки 5. Інші не визначені, тобто, у цьому випадку не реалізується 11 станів. Значення функцій для цих станів можуть визначатися нами й, тому, вони можуть бути використані в картах Карно при мінімізації. З таблиці 4.9 запишемо функції виходу та проведемо мінімізацію.

Таблиця 4.9 - Таблиця роботи шифратора

;

;

;

;

;

.

Для прикладу, мінімізуємо функцію Y 5, задану на рисунку 4.8 картою Карно для чотирьох змінних Q 1 Q 2 Q 3 Q 4.

Рисунок 4.8 – Карта Карно функції Y5 шифратора

У верхньому правому куті кліток позначені стани, використані автоматом. Клітки позначені 1* − це невизначені стани, які використовують при мінімізації функцій.

По аналогії з прикладом рисунку 4.8 проводимо мінімізацію всіх логічних функцій автомата.

За отриманими мінімальними функціями будуємо схему мікропрограмного автомата із жорсткою логікою управління (рисунок 4.6).


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: