Мікропроцесори.
Приклад організації циклічного виконання операцій.
Розрахувати цифровий пристрій, призначений для виконання операції множення двох 4-х розрядних слів. Множиме В=1101. Множник А=1011.
В 1101 множиме
А 1011 множник
1101 частковий добуток 1
1101 частковий добуток 2
100111 частковий добуток 3
1101 частковий добуток 4
10001111 добуток
Мал. 1.
Як виплива з мал.1 операція множення полягає в послідовному виконанні двох простих операцій – знаходження суми двох слів і зсув вправо часткового добутку, або вліво множимого на один розряд. Звідси виплива, що для побудови пристрою, що виконуватиме вказану операцію, необхідно мати такі цифрові елементи:
послідовний регістр;
суматор;
паралельні регістри для запам’ятовування даних;
пристрій для управління.
На мал. 2 представлений можливий взаємозв’язок між елементами, які утворюють схему.
Множиме записується в регістр В з відкритими виходами, які підключаються до входів слова В у суматорі.
Множник А записується в старші розряди послідовного регістру, а виходи суматора підключаються до молодших розрядів.
Чотири молодші розряди виходу послідовного регістру з’єднані з входами слова В у суматорі.
Блок керування ( БК ) має два входи та два виходи.
Вхід синхронізації Т від зовнішнього тактового годинника організує частоту виконання операцій. Вхід D з виходу D7 старшого розряду послідовного регістру призначений для організації знаходження суми. Виходи БК V та С призначені відповідно для виконання операцій знаходження суми та операції зсуву інформації на 1 розряд в послідовному регістрі. Виконаня операції перемноження відбувається в наступній послідовності.
A
V
C
D
T
Мал. 2.
При наявності першого сигналу Т повинна виконуватись операція знаходження суми В з інформацією, що записана в молодших розрядах послідовного регістру. На цей час там записаний нуль. При наявності сигналу “1” в D7 послідовного регістру в ПК формується команда V – потенційний сигнал, який дозволяє суматору SM виконати операцію і одночасно записати результат в молодші розряди послідовного регістру. При другому тактовому сигналі формується сигнал С, що зсуває інформацію послідовного регістру на 1 розряд і тим самим замінює в D7 значення останнього розряду множимого на передостанній. При наступному тактовому сигналі знов повинен формуватись сигнал V, але він може з’явитись лише у випадку, якщо в D7 на цей час знаходиться “1”. При наявності “0” в цьому розряді регістру сигнал V не з’являється і операція знаходження поточної суми не виконується. Далі знов формується сигнал С.
З аналізу роботи, не вдаючись в побудову графу станів та таблиці переходів, легко розрахувати схему ПК (мал. 3), робота якої зрозуміла без пояснень.
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
D | ПК |
| | V
| |
T | |
| |
| |
| | C
| |
| |
|_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ |
Мал. 3.
Робота розробленого кінцевого автомату може бути описана на алгоритмічному рівні (мал. 4), вона буде відповідати діаграмі станів.
Цей скорочений алгоритм повністю відповідає послідовності роботи схеми перемножувача, приведеного на мал. 2. Як схема, так і алгоритм не є повністю завершеними в тому плані, що вони не зв’язані з пристроями пам’яті, з яких можна брати нові дані для обробки та поміщати результат виконання операції. Якщо їх доповнити вказаними операціями, то наведений алгоритм буде завершений.
Кожна операція, що виконується в розглянутому алгоритмі і, відповідно, в схемі, називається мікрокомандою.
Сформулюємо тепер початкову термінологію.
Завершений набір послідовності одиниць і нулів називається словом. Слово, над яким виконуються якісь операції, називається операндом. Слово, яке керує виконанням операцій з операндом називається командою. Набір керуючих сигналів називається мікрокомаедою. Завершена послідовність мікрокоманд, що закінчується виконанням операції називається мікропрограмою. Принцип використання мікропрограм для реалізації алгоритмів називається мікропрограмуванням. Мікропрограмування є одним з головних принципів, що лежать в основі більшості сучасних систем обробки інформації.
Приведена термінологія стосується алгоритма (мал.4). Відповідно ми маємо термінологію і до апаратних засобів, що реалізують алгоритм.
Регістр, в який заноситься операнд перед виконанням над ним операції називається регістром операнда.
Регістр, в який заноситься команда, під дією якої буде виконуватись операція називається регістром команд (РК).
Регістртр, в який заноситься результат виконання опрації називається регістром-акумулятором (РА). В загальному вигляді арифметико-логічний пристрій (АЛП), в якому виконуються окремі мікрокоманди має вигляд, поданий на мал.5.
Запис. Зчит.
Запис. Запис.
Зчит. Зчит.
Мал.5
Розглянемо роботу ААП на прикладі виконання однієї операції. Спочатку по тактових сигналах “Запис” записується в РК код операції, а в РО – операнд. Але при подачі сигналу “Запис” в РО одночасно подається сигнал “Зчитування” з РА. Тому інформація, що зберігається в РА передається в частину РО. Після того, як процеси передачі інформації встановляться, подається сигнал, що забезпечує одночасне зчитування з РО і РК. Завдяки цьому на виходи комбінаційного АЛП одночасно поступають операнд і код операції. Одночасність забезпечується незалежно від того, в якому порядку подаються слова на входи регістрів. В цьому і полягає суть синхронізації. Через інтервал часу, достатній для встановлення процесів в АЛП, подається сигнал на запис результату в РА.
Розглянута схема дозволяє розкрити питання про те, як виконати найпростішу операцію, яка по відношенню до РА може розглядатись як заміна одного слова іншим. Більш