ВСТУП
Принцип мікропрограмного керування припускає, що цифровий пристрій складається з двох частин: операційний автомат (ОА) і керуючий автомат (КА). ОА виконує найпростіші операції (мікрооперації) типу зсув, алгебраїчне додавання, кон’юнкція, диз’юнкція і т.п. КА формує послідовність керуючих символів в ОА, під впливом яких ОА реалізує більш складні алгоритми. Такі послідовності операцій називаються мікропрограмами та, звичайно, записуються у вигляді граф-схеми алгоритму.
КА розділяються на дві великі групи: автомати з жорсткою логікою та автомати з програмованою логікою. У свою чергу автомати з жорсткою логікою підрозділяються на автомати, виконані за схемою Мілі (КА Мілі) і за схемою Мура (КА Мура), автомати з програмованою логікою – на автомати з примусовою адресацією та з природною адресацією.
В автоматах з жорсткою логікою схема автомата однозначно інтерпретує граф-схему мікропрограми. В автоматах із програмованою логікою граф-схема інтерпретується у вигляді програми, що зберігається в пам’яті автомата.
1. СИНТЕЗ ОПЕРАЦІЙНОГО АВТОМАТА
1.1 Аналіз вхідних даних
Загальна формула для обчислювання результату S має такий вигляд:
Формулі , та згідно з варіантом завдання:
Загальний алгоритм для обчислювання формули S приведений на рисунку 1.1.
Для обчислювання формули S використовується ІМp-модель (Individual Mutual with Parallel part - IMp).
Рис. 1.1 – Загальний алгоритм для обчислювання формули S
Схему взаємодії операційного та керуючої частин у цифровому просторі зображено на рисунку 1.2.
Рис. 1.2 – Структура цифрового пристрою
Структурна схема ІМp - моделі зображена на рисунку 1.3
Рис. 1.3 – Структура операційного пристрою
Пам’ять автомата складається з регістрів загального призначення R1, ... , Rn.
Локальні шини А1, А2, A3 призначені для прийому інформації з пам’яті та передачі її на комбінаційні схеми (КС).
В даному випадку використовуються КС двох типів: одномісні та двомісні.
Рис. 1.4 – Приклад комбінаційних схем
Однак, у даному ОА використовуються лише деякі з них.
1.2 Розробка функціонального алгоритму
Функціональна і структурна організація операційних пристроїв (ОУ) базується на принципі мікро програмного керування, сформульованому в 1951 році М. Уилксом. Відповідно до цього принципу будь-яка машинна операція розділяється на послідовність елементарних дій по обробці інформації – мікро операцій (МО). Порядок проходження мікро операцій визначається спеціальними логічними умовами (ЛУ), що у залежності від значень оброблюваної інформації приймають значення "істина" (1) або "неправда" (0). Алгоритм операцій в ОУ, записаний у термінах мікро операцій і логічних умов, що відбиває порядок проходження мікро операцій у часі, називається мікропрограмою.
Функція УА – це оперативна схема алгоритму, операторами якої є символи
, що ототожнюються з МО, виконуваними ОА, як логічні умови використовуються булеві перемінні . Найбільше часто операторна схема алгоритму представляється у виді граф-схеми алгоритму (ГСА).
Граф-схема алгоритму. Орієнтований зв'язаний граф – граф, що містить одну початкову вершину, одну кінцеву вершину, довільну безліч умовних і операторних вершин.
Будова ІМр автомата дозволяє паралельно виконувати одномісну та двумісну операції, тобто можливо виконувати за одне завантаження автомату завантаження двох операнд. Наприклад, у п’ятій вершині зроблено саме так.
Кожній дії, завантаженню автомата, відповідає Y[і].
Ідентичні дії відповідають однаковим командам, Y[і].
Логічні умови позначаються – XL, однаковим умовам відповідають однакові XL.
Функціональний алгоритм приведений на рисунку 1.5.
Рис. 1.5 – Функціональний алгоритм
1.3 Розробка структурної схеми автомата
1.3.1. Визначення набору регістрів пам’яті:
Rg : {RA, RB, RC, RS1, RS2, RS3}
1.3.2. Набір комбінаційних схем:
Одномісні: КС1 : {L1, L2, L3, R1, R2, R3}
На шину C повинні поступати всі аргументи одномісних операцій.
Двомісні: КС2: {Sum, Sub}
Припустимо, що операція відіймання виконується наступним чином:
Sub := B - A, тому від’ємне завжди повинно знаходитись на шині B, а від’ємник на шині А. В іншій двомісній операції Sum порядок операндів значення не має.
Рис. 1.6 – Структурна схема автомата
1.3.3. Зв'язки між регістрами та локальними шинами
Наша схема має три шини: А та B – двомісні, та шина C – одномісна.
A {RA, RB, RC, RS1, RS2, RS3}
B {RA, RB, RC, RS1, RS2, RS3}
C {RA, RB, RC, RS1, RS2, RS3}
1.3.4. Зворотні зв'язки шин Z1 та Z2 з регістрами пам’яті
Шини, що є результативними:
Z1 – результати одномісних операцій, а Z2 – двомісних операцій.
Z1 {RA, RB, RC, RS1, RS2, RS3}
Z2 {RA, RB, RC, RS1, RS2, RS3}
Кожний елемент, котрий діє у схемі може виконуватись тільки при наявності відповідного керуючого сигналу y[n].
у1, у2, у3 – завантаження початкових даних на шини.
у4 – у15 – завантаження даних у регістри пам'яті.
у16–у33 – завантаження з пам'яті на локальні шини А, B, C.
у34, у39 – завантаження результатів одномісних операцій на шину Z1.
y40–у41 – завантаження результатів двомісних операцій на шину Z2.
Отримані таким чином дані заносимо до таблиці 1.1
Табл. 1.1 –Таблиця мікрооперацій
Мікрооперація
A
B
C
Z1
Z2
Result
Y
формула
регістр
y
форм.
1
RA := <A>
RB := <B>
<B>
y2
<A>
y1
RA:=Z2
RB:=Z1
y4
y7
2
RC := <C>
<C>
y3
RC:=Z2
y8
3
RS3 := RA + RB
RA
y17
RB
y21
RA+RB
y40
RS3:=Z2
y14
4
RS2 := RA – RB
y20
y18
RA-RB
y41
RS2:=Z2
y12
5
RS1 := L3(RS2)
RS2
y28
L3(RS2)
y36
RS1:=Z1
y11
6
RS1 := RS1 – RS2
y29
RS1
y27
RS1-RS2
RS1:=Z2
y10
7
RS2 := L2(RA)
y16
L2(RA)
y35
RS2:=Z1
y13
8
RS3 := L1(RB)
y19
L1(RB)
y34
RS3:=Z1
y15
9
RS1 := RS2 – RS3
RS3
y32
y30
RS2-RS3
10
RS1 := L2(RA)
11
RS1 := RS1 – RA
RS1-RA
12
RS1 := R1(RS1)
y25
R1(RS1)
y37
13
RS1 := RS1 – RB
RS1-RB
14
RS3 := RB – RA
RB-RA
15
RS3 := R1(RB)
R1(RB)
16
RS2 := RA – RS3
RA-RS3
17
RS2 := RA + RB
RS3 := L1(RC)
RC
y22
L1(RC)
y12 y15
18
RS2 := RS2 – RS3
19
RS2 := RS2 – RC
y23
RS2-RC
20
21
RS3 := RA – RS3
22
RS2 := L3(RS3)
y31
L3(RS3)
23
24
RS2 := R3(RS2)
R3(RS2)
y39
25
RS3 := RC + RB
y24
RB+RC
26
RS3 := L1(RS3)
L1(RS3)
27
RS3 := RS3 + RC
RS3+RC
28
RC := L2(RB)
RS3 := RA – RB
L2(RB)
RC:=Z1
y9 y14
29
RS3 := RS3 – RC
y33
RS3-RC
30
RS3 := RC – RA
RC-RA
31
RS3 := R2(RS3)
R2(RS3)
y38
32
RS1 := L1(RS1)
L1(RS1)
33
RS1 := RS2 + RS1
y26
RS1+RS2
34
RS1 := RS2 – RS1
RS2-RS1
35
RS1 := L2(RS3)
L2(RS3)
36
Страницы: 1, 2, 3, 4, 5, 6, 7, 8