Проектирование процессора ЭВМ

Функциональная и структурная организация ЭВМ. Разработка функциональных микропрограмм заданных команд. Их объединение и привязка к структуре операционного автомата процессора. Разработка управляющего автомата процессора с программируемой логикой.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 25.03.2012
Размер файла 4,0 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Введение

Целью проекта является решение комплекса вопросов, связанных с проектированием процессора ЭВМ. Разработка процессора проводится в следующих аспектах:

1. разработка функциональных микропрограмм заданных команд;

2. объединение микропрограмм;

3. привязка микропрограмм к структуре операционного автомата процессора;

4. разработка структуры операционного автомата и управляющего автомата процессора.

1. Функциональная и структурная организация проектируемой ЭВМ

1.1 Форматы данных и команд

Набор команд, заданных в техническом задании, имеют стандартные форматы ЕС ЭВМ:

1. RR (BCTR);

2. RX (SD, LH).

Данные форматы изображены на рисунке 1. Первые два байта команды - код операции (КОП), остальную часть занимают операнды. КОП определяет тир и форматы команд:

1. КОП(0:1)=00 - RR;

2. КОП(0:1)=11 - RX.

Рисунок 1 - Форматы команд

1.2 Базовая структура ЭВМ

ЭВМ состоит из процессора, основной (оперативной) памяти (ОП), регистровой (сверхоперативной) памяти (РП) и средств ввода-вывода информации (рисунок 2).

Процессор выбирает из ОП команды и выполняет все операции за исключением операций ввода-вывода (ОВВ). ОВВ инициируются процессором и выполняются средствами ввода-вывода.

ОП обеспечивает хранение байтов информации, предельное число которых (предельная емкость ОП) равна 224=16777216 байт. Различные модели ЭВМ имеют разную емкость ОП: от 216=64 Кбайта (1 Кбайт =210 байт=1024 байт) до 4096 Кбайт в старших моделях.

Рисунок 2 - Структурная схема ЭВМ

В ЭВМ адресуется каждый байт ОП. За одно обращение к ОП записываются или читаются несколько байтов информации (слово ОП): 1, 2 или 4 - в младших моделях, 4 или 8 - в старших.

РП используется для увеличения быстродействия процессора и состоит из 16 регистров общего назначения РОН[0:15](0:31), каждый из которых обеспечивает хранение 32-разрядного слова, и из четырех регистров с плавающей запятой РПЗ[к](0:63), где к=0,2,4,6, каждый из которых обеспечивает хранение 64-разрядного слова. РОН идентифицируются номерами регистров - 0,1,...,15, а РПЗ - номерами 0,2,4,6.

Каждому РОН соответствует одна ячейка РП, каждому РПЗ - две ячейки РП, т.е. РОН[0:15] = РП[0:15], РПЗ[0] = РП[16].РП[17], РПЗ[2] = РП[18].РП[19] и т.д.

РОН используются в качестве индексных регистров, базовых регистров, а также для хранения слов и полуслов, участвующих в операциях общего назначения. РПЗ хранят только числа с плавающей запятой.

1.3 Структура процессора

ОА процессора служит для хранения слов информации, выполнения микроопераций (МО) над ними и вычисления логических условий (ЛУ), зависящих от слов.

УА обеспечивает требуемый порядок выработки наборов управляющих сигналов (следования МО) на основе заданных микропрограмм (МП).

ОА процессора рекомендуется строить на основе принципа общих микроопераций. ОА разделяется на две части: память ОА и комбинационную часть. Память ОА состоит из N регистров. Рабочие регистры РА, РВ, РС и т.д. используются для хранения операндов и внутренних слов МП. Длина их определяется длиной операндов и особенностями выполняемых команд. Длина регистра команд РК назначается исходя из максимальной длины команд заданного набора. Счетчик адреса команд (СЧАК) хранит и модифицирует адрес команды. Так как адрес команды всегда кратен полуслову, то длина СЧАК определяется емкостью ОП в полусловах (1).

Буферный регистр (БР) необходим для хранения неиспользованной части слова ОП в процессе выборки команд из ОП и имеет длину 1 или 3 полуслова при 32 или 64-разрядном слове ОП соответственно.

Память ОА связана с комбинационной частью шинами А, В и С. На шины А и В посредством управляющих сигналов из множеств {a} и {b} выбираются операнды, вступающие в микрооперацию, а шина С используется для занесения результатов МО в память ОА. Операционный автомат подключен к магистрали М, связывающей его с ОП и РП через регистр Z.

Комбинационная часть ОА служит для выполнения множества МО над словами, выбранными на шины А и В, и вычисления значений ЛУ из множества X, необходимых для реализации МП. Комбинационная часть ОА содержит следующие операционные элементы комбинационного типа: формирователь кодов (ФК), сдвигатель (СДВ), комбинационный сумматор (КСМ) и формирователи осведомительных сигналов (Ф).

Результат МО фиксируется в промежуточном регистре Z управляющим сигналом z1 на время одного такта, а затем может быть передан в память ОА по шине С (управляющие сигналы {c}), в ОП или РП через магистраль М (управляющие сигналы {m}) или в адресный регистр АР (управляющие сигналы {r}).

1.4 Оперативная память

В ОП емкостью E байтов хранятся 16, 32 или 64- разрядные слова. Слово читается и записывается в ОП всегда целиком за одно обращение к ОП. Адрес слова, к которому производится обращение, указывается в регистре адреса оперативной памяти (АОП). Длина регистра АОП вычисляется по формуле (2).

- емкость ОП в словах (3).

Слово памяти, которое записывается или читается из ОП, размещается в регистре слова ОП (РОП). Длина регистра РОП (0:?-1), где ?{16,32,64}. Операция в ОП возбуждается сигналами чтения из ОП (ЧТОП) и записи в ОП (ЗПОП). Момент окончания цикла обращения к ОП отмечается сигналом занятости ОП ZОП, так как цикл ОП имеет длительность, большую такта работы процессора. Таким образом, синхронизация работы процессора и ОП обеспечивается за счет ждущих вершин графа микропрограммы.

Обмен информацией между ОА и ОП происходит через магистраль М и промежуточный регистр Z. Адрес слова, которое необходимо прочитать или записать в ОП, предварительно формируется в адресном регистре АР, связанном с АОП шиной, управляемой сигналами из множества {r}. Длина АР определяется по формуле (4). АР хранит адрес байта в ОП.

1.5 Регистровая память

РП [0:23](0:31) является внутренней (сверхоперативной) памятью процессора. Длина регистра слова РП (РРП) - 32 разряда. Адрес регистра указывается в 5-разрядном регистре адреса РП (APП). Чтение и запись в РП инициируются сигналами ЧтРП и ЗпРП, соответственно.

При обращении к РОН с полусловом или словом любое значение адреса от 0 до 15 является допустимым. При обращении к РОН с двойным словом адрес должен быть четным, (если адрес у РОН нечетный - нарушение спецификации адреса (S)). При обращении к РПЗ со словом или двойным словом (числа с плавающей запятой) адрес РПЗ должен быть четным и меньше восьми. В ином случае фиксируется нарушение спецификации адреса РПЗ (SP).

Для обращения к POH за целым числом, базовым адресом, индексным приращением, кодом логической величины или адресом необходимо установить старший разряд адреса АРП(1) в нуль. Для обращения к РПЗ за числом с плавающей запятой АРП(1) устанавливается в единицу. Разряды АРП(2:5) определяются полем R , В или Х в команде.

1.6 Выборка команды из ОП

Для того, чтобы выполнить команду, ее необходимо прочитать из ОП в регистр команд (РК). В зависимости от формата выбираемой команды и ситуации, предшествовавшей выборке данной команды, необходимо выполнить различную совокупность микроопераций для передачи команды из ОП в РК. Команды любого формата начинаются с целочисленной границы полуслова. Слово ОП может содержать полностью команду или только ее часть.

Адрес выбираемой команды хранится в регистре СчАК, длина которого вычисляется по формуле (1):

Определим емкость ОП в словах по формуле (3)

Функциональная микропрограмма выборки команд приведена на рисунке 3.

Рисунок 3 - ФМП выборка команд

1.7 Выполнение команд

ФМП каждой отдельной команды строится на основе словесного алгоритма ее выполнения и исходного задания. Чтение операнда из ОП и запись результата в ОП по исполнительному адресу производится после проверки на правильность адресации (А) и спецификации (S). При обращении к РПЗ также проверяется адрес регистра (спецификация SP).

1.7.1 Вычитание с нормализацией (SD)

Формат команды - RX (рисунок 1).

Словесный алгоритм:

Второй операнд вычитается из первого операнда, и нормализованная разность помещается на место первого операнда.

Команда ВЫЧИТАНИЕ С НОРМАЛИЗАЦИЕЙ выполняется аналогично команде СЛОЖЕНИЕ С НОРМАЛИЗАЦИЕЙ и отличается от последней лишь тем, что перед сложением знак второго операнда изменяется на противоположный.

Поле R1 должны определять регистры 0, 2, 4 или 6.

Признак результата:

0 - мантисса результата равна нулю;

1 - результат меньше нуля;

2 - результат больше нуля;

3 - не бывает.

Программные прерывания:

Операция (если в данной установке отсутствуют средства обработки чисел с плавающей точкой);

доступ (выборка второго операнда);

спецификация;

переполнение порядка;

исчезновение порядка;

потеря значимости.

ФМП команды представлена на рисунке 4.

Рисунок 4 - ФМП вычитание с нормализацией

Продолжение рисунка 4

Продолжение рисунка 4

Продолжение рисунка 4

Структура регистра ППС

Исходя из ФМП команд, уже можно определиться со структурой регистра признаков перехода и состояний - ППС (рисунок 5).

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Рисунок 5 - Структура регистра ППС

1. А - неправильная адресация;

2. S - неправильная спецификации;

3. ПрР - признак результата;

4. SP - неправильная спецификации с плавающей запятой;

5. LS - потеря значимости;

6. E - переполнение порядка;

7. И - исчезновение порядка;

8. п/с - состояние процессора «Пуск/Стоп»;

9. о/с - состояние процессора «Ожидание/Счет».

1.7.2 Переход по счетчику (BCTR)

Формат команды - RR (рисунок 1).

Словесный алгоритм:

Из содержимого общего регистра, заданного полем R1, алгебраически вычитается единица. Если результат равен нулю, продолжается выполнение команд в обычной последовательности с использованием продвинутого адреса команды. Если результат отличен от нуля, адрес команды в текущем PSW замещается адресом перехода.

В качестве адреса перехода используется - содержимое битов 8-31 общего регистра, заданного полем R2. Однако, если в поле R2 содержатся нули, операция выполняется без перехода.

Адрес перехода определяется перед операцией вычитания из счетчика. Вычитание из счетчика не изменяет признака результата. Переполнение, возникающее при переходе от максимального отрицательного числа к максимальному положительному числу, игнорируется. В остальном вычитание выполняется, как обычная операция с фиксированной точкой, и в ней принимают участие все 32 разряда общего регистра.

Признак результата: не изменяется;

Программные прерывания: отсутствуют;

Замечания по программированию:

Начальное значение счетчика, равное единице, дает после вычитания нуль, и переход отсутствует. Если начальное значение счетчика равно нулю, то при выполнении команды оно станет равным -1 (FFFFFFFF16), и переход произойдет.

Если поле R2 команды формата RR содержит нули, вычитание из счетчика производится, но переход отсутствует.

ФМП команды представлена на рисунке 6.

Рисунок 6 - ФМП переход по счетчику

1.7.3 Загрузка полуслова (LH)

Формат команды - RX (рисунок 1).

Словесный алгоритм:

Второй операнд помещается на место первого операнда. Второй операнд имеет длину 2 байта и рассматривается как целое число со знаком, состоящее из 16 битов, включая знаковый.

После того как второй операнд получен из памяти, но еще не помещен в общий регистр, производится его расширение до 32 битов путем распространения значения знакового разряда на 16 старших битов.

Признак результата: не имеется.

Программные прерывания: доступ выборка второго операнда.

ФМП команды представлена на рисунке 7.

Рисунок 7 - ФМП загрузка полуслова

Продолжение рисунка 7

функциональный структурный микропрограмма процессор

2. Объединение структурно-функциональных микропрограмм

Исходным материалом для построения объединённой функциональной микропрограммы (Ф-МП) являются разработанные Ф-МП отдельных операций. Каждая Ф-МП должна быть размечена (рисунки 3,4,5,6): микрокоманды (операторные вершины) - символами из множества {Y}, логические условия - символами из множества осведомительных сигналов {x} или переменными кода операции {p}. Одинаковые микрокоманды отмечаются одними и теми же символами Y? в разных Ф-МП. Если в одной Ф-МП встречается несколько одинаковых операторных вершин Y?, то каждая последующая из них обозначается символом Y? c добавлением штриха ( Y?1, Y?11 и т.д.) Размеченные Ф-Мпы называются граф-схемами алгоритма (структурно-функциональными микропрограммами СФ-МП). Объединение ФМП выполняется с использованием матричных схем алгоритма (МСА) в несколько этапов:

1. построение матричных схем алгоритмов;

2. построение объединенных подматриц;

3. построение системы скобочных формул;

4. построение объединенной ГСА.

2.1 Построение матричных схем алгоритмов

Для каждой ГСА Гq строится МСА Мq. Мq - квадратная матрица, строки которой отмечены операторами Yн , Y1,…, Yt , а столбцы - Y1, …, YT, YK (здесь Yt - микрокоманда (оператор) ГСА Гq , t=1,…T; Yн и YK - начальный и конечный операторы, соответственно. На пересечении строки Yi и столбца Yj матрицы записывается функция перехода от оператора Yi к оператору Yj.

Каждая МСА Mq ( q=1,…,Q ) кодируется вектором, длина которого .Закодируем М1 (вычитание с нормализацикй), М2 (переход по счетчику), М3 (загрузку полуслова) следующим образом: М1-(00); М2-(11); М3-(01). Каждой МСА ставится в соответствие определяющая конъюнкция:

, , .

Таблица 1 - МСА М1

yв

y1

y2

y3

y4

y5

y'3

y'4

y6

y 7

y8

y9

y10

y11

y12

y13

y14

y15

y16

y0

yв

1

y1

y2

1

y3

1

y4

y5

1

y'3

1

y'4

y6

y7

y8

1

y9

y10

1

y11

y12

1

y13

y14

y15

y41

y50

Продолжение таблицы 1

y17

y18

y19

y20

y21

y22

y23

y24

y25

y26

y27

y28

y29

y30

y31

y32

y33

y34

y'19

y35

y16

1

y17

1

y18

1

y19

1

y20

1

y21

y22

1

y23

1

y24

1

y25

y26

1

y27

1

y28

y29

1

y30

y31

y32

y33

1

y34

y'19

1

y40

y43

y44

y46

y48

Продолжение таблицы 1

y36

y37

y38

y39

y40

y41

y42

y'25

y43

y44

y45

y46

y47

y48

y'16

y49

y50

yк

y35

y36

y37

y38

1

y39

1

y40

y41

y42

1

y'25

y43

y44

y45

1

y46

y47

1

y48

y'16

1

y49

1

y50

y30

1

y31

1

y32

1

y0

y6

y7

y15

Таблица 2 - МСА М2

p1p2

y6

y5

y3

y15

y'3

y6

y7

y50

y'50

y51

yк

y0

x1

yв

1

y5

1

y3

1

y15

1

y'3

y6

y7

y50

y'50

y51

Таблица 3 - МСА М3

yВ

y1

y2

y3

y4

y5

y'3

y'4

y6

y7

y8

y9

y53

y54

y55

y16

y56

yк

y0

yв

1

y1

y2

1

y3

1

y4

y5

1

y'3

1

y'4

y6

y7

y8

1

y9

y53

1

y54

1

y55

1

y16

1

y56

2.2 Построение объединенных подматриц

Задача объединения ГСА Г1,…,ГQ может быть разбита на несколько независимых подзадач меньшей размерности. Для этого исходные МСА Мq (q=1,…,Q) разбиваются на подматрицы Mq1 ,…, MqTq таким образом , что для любых двух подматриц MqP и MqS (p,s{1,…,Tq}) пересечение множеств исходящих и входящих операторов пусто: AqPAqS=, BqPBqS= (где {A} -исходящие, а {B} - входящие операторы).

Подматрицы, полученные в результате разбиения МСА , , приведены на рисунках 8,9 и 10.

Продолжение рисунка 8

Рисунок 10 - Подматрицы МАС М3

На множестве всех полученных таким образом подматриц введём отношение объединимости, согласно которому две подматрицы MqS и Mrf объединимы (MqSMrf), если и только если пересечение множеств их исходящих или входящих операторов не пусто:

(( AqS Arf)( BqS Brf))=1,

где AqS (BqS) и Arf (Brf) - множества исходящих ( входящих ) операторов подматриц MqS и Mrf соответственно . Очевидно, что это отношение рефлексивно , симметрично, но не транзитивно. Построим граф этого отношения. Каждой подматрице ставится в соответствие вершина графа. Две вершины MqS и Mrf соединяются ребром, если MqSMrf (рис.16). Тогда, очевидно, для нахождения множества всех объединимых подматриц необходимо найти все компоненты связности этого графа. Подматрицы, попавшие в одну компоненту , подлежат объединению.

Объединенные подматрицы приведены на рисунке 11.

2.3 Построение систем скобочных формул

На основе полученных объединенных подматриц, приведенных на рисунке 11, переходим к системе скобочных формул перехода.

2.4 Построение объединенной ГСА

Подграфы ГСА, полученные на основе скобочных формул перехода, объединяются путем совмещения одинаковых исходящих и входящих операторных вершин.

Заменяя в объединенной ГСА операторы Y соответствующими им функциональными микрокомандами, а переменные x, р - логическими условиями, получим объединенную Ф-МП выполнения заданных операций (первый лист графической части проекта).

3. Разработка структурно-функциональной микропрограммы и структуры процессора

3.1 Разработка структурно-функциональной микропрограммы

Структурно-функциональная микропрограмма (СФ-МП) описывает порядок функционирования процессора в терминах конкретных управляющих и осведомительных сигналов.

Каждому действию над словами информации (микрокоманде) Ф-МПы ставится в соответствие совокупность управляющих сигналов, инициирующих это действие с учетом базовой структурной схемы ОА процессора (рисунок 12). СФ-МП представляется в виде таблицы 4. Выявляются множества управляющих сигналов {a}, {b}, {f} и т.д. Базовая структура ОА дополняется необходимыми шинами, операционными элементами, управляющими и осведомительными сигналами, и в итоге разрабатывается структура процессора.

При заполнении таблицы учитывается, что все регистры памяти ОА, операционные элементы комбинационной части (ФК, СDВ, КСМ), регистры Z, АР, регистры ОП и РП, управляемые шины совмещены по младшим разрядам.

Условные вершины Ф-МП интерпретируются осведомительными сигналами из множества {x}, которые вырабатываются соответствующими формирователями осведомительных сигналов Ф (рисунок 12). Все осведомительные сигналы ОА необходимо свести в таблицу.

На основе полученных данных вычерчивается электрическая структурная схема процессора в соответствии с ЕСКД (второй лист графической части проекта).

Рисунок 12 - Базовая структурная схема процессора

Микрокоманды

Микрооперации ОА

Действия над адресами, работа ОП иРП

магистральные передачи

Выборка на шины

ФК(0..31)

СДВ(0..31)

КСМ(0..31)

Прием в Z(0:31)

{z}

Запись в

память ОА

{c}

Установка

РСП

{d}

Работа с АР(1:18)

{r}

Управле-

ние ЗП и ЧТ {l}

Выборка на М

Прием с М в РП и ОП

А{a}

B{b}

F:=f{B}

S:=s(F)

K:=k(A,S)

Y1

РA(32:63):=РК(20:31)

b1) В:=РК

f1) F:=0..0.B(20:31)

s1) S:=F

k1) K:=S

z1) Z:=K

c1) PA(32:63):=Z

Y2

АР(15:18):=РК(16:19)

b1) В:=РК

f2) F:=B

s2)S:=R12.F

k1) K:=S

z1) Z:=K

r1)АР(15:18):=Z

Y3

АРП(1:5):=0.АР(15:18)

ЧтРП

РB(32:63):=РРП

z2) Z:=M

c2) PB(32:63):=Z

r2)АРП(1:5):=

0.АР(15:18)

I1)ЧтРП

m1)M:=РРП

Y4

РA(32:63):=РA(32:63)

+РB(32:63)

a1)A:=PB

b2)B:=PA

f2)F:=B

s1) S:=F

k2)K:=A+S

z1) Z:=K

c1) PA(32:63):=Z

Y5

АР(15:18):=РК(12:15)

b1) В:=РК

f2)F:=B

s3)S:=R16.F

k1) K:=S

z1) Z:=K

r1)АР(15:18):=Z

Y6

A:=1

d1)ППС(0):=1

Y7

S:=1

d2)ППС(1):=1

Y8

АР(1:18):=РA(46:63)

b2)B:=PA

f2)F:=B

s1) S:=F

k1) K:=S

z1) Z:=K

r3)AР(1:18):=Z

Y9

АОП(1:16):=АР(1:16)

ЧтОП

r4)АОП(1:16):=

АР(1:16)

I2)ЧтОП

Y10

РA(0:31):=РОП(0:31)

z2) Z:=M

c3) PA(0:31):=Z

m2)M:=РОП

Y11

РB(32:63):=РB(32:63)+4

a1)A:=PB

f3)F:=1002

s1) S:=F

k2)K:=A+S

z1) Z:=K

c2)PB(32:63):=Z

Y12

АР(1:15):=РB(45:63)

b3)B:=PB

f2)F:=B

s1) S:=F

k1) K:=S

z1) Z:=K

r5) АР(1:15):=Z

Y13

РA(32:63):=РОП(0:31)

z2) Z:=M

c1)PA(32:63):=Z

m2)M:=РОП

Y14

Sp:=1

d3)ППС(4):=1

Y15

АР(15:18):=РК(8:11)

b1) В:=РК

f2)F:=B

s4)S:=R20.F

k1) K:=S

z1) Z:=K

r1)АР(15:18):=Z

Y16

АРП:=0.АР(15:18)

ЧтРП

РB(0:31):=РРП

z2) Z:=M

c4) PB(0:31):=Z

r2)АРП:=

0.АР(15:18)

I1)ЧтРП

m1)M:=РРП

Y17

АРП(5):=1

ЧтРП

РB(32:63):=РРП

z2) Z:=M

c2)PB(32:63):=Z

r7)АРП(5):=1

I1)ЧтРП

m1)M:=РРП

Y18

РС(0:8):=0.РB(1:7)

b3)B:=PB

f4)F:=0.B(1:7)

s5)S:=R56.F

k1) K:=S

z1) Z:=K

c5) PС(0:8):=Z

Y19

РД(0:8):=1. +1

b3)B:=PВ

f5)F:=1.

s5)S:=R56.F

k4) K:=S+1

z1) Z:=K

c6) PД(0:8):=Z

Y20

РС:=РС+РД(0:8)

a3)A:=PС

b4)B:=PД

f2)F:=B

s1) S:=F

k2)K:=A+S

z1) Z:=K

c5) PС(0:8):=Z

Y21

РС:=1.+1

b5)B:=PС

f6)F:=1.

s1) S:=F

k4) K:=S+1

z1) Z:=K

c5) PС(0:8):=Z

Y22

РB(1:7):=РB(1:7)+1

b3)B:=PB

f7)F:=В(1:7)

s5)S:=R56.F

k4) K:=S+1

z1) Z:=K

c7) PB(1:7):=Z

Y23

РB(8:63):=0000.РB(8:59)

b3)B:=PB

f8)F:=00000000.В(8:63)

s6) S:=R4.F

k1) K:=S

z1) Z:=K

c8) PB(8:63):=Z

Y24

РС(1:7):=РС+1

a3)A:=PС

k5) K:=A+1

z1) Z:=K

c9) PС(1:7):=Z

Y25

РA(1:7):=РA(1:7)+1

b2)B:=PA

f10)F:=В(1:7)

s5)S:=R56.F

k4) K:=S+1

z1) Z:=K

c10) PA(1:7):=Z

Y26

РA(8:63):=0000.РA(8:59)

b2)B:=PA

f8)F:=00000000.В(8:63)

s6) S:=R4.F

k1) K:=S

z1) Z:=K

c11) PA(8:63):=Z

Y27

РС(1:7):=РС-1

a3)A:=PС

f9)F:=11..1

s1) S:=F

k2)K:=A+S

z1) Z:=K

c9) PС(1:7):=Z

Y28

Пр:=00

d4)ППС(3:4):=00

Y29

РВ:=00..0

f10)F:=00..0

s1) S:=F

k1) K:=S

z1) Z:=K

c12) PB:=Z

Y30

Пр:=01

d5)ППС(3:4 ):=01

Y31

Пр:=10

d6)ППС(3:4 ):=10

Y32

PB(8:63):=PA(8:63)

a2)A:=PA

k3) K:=A

z1) Z:=K

c8) PB(8:63):=Z

Y33

PB(0):=PA(0)

b2)B:=PA

f2)F:=B

s7)S:=R62.F

k1) K:=S

z1) Z:=K

c13) PB(0):=Z

Y34

PД(0:8):=0.PA(1:7)

b2)B:=PA

f4)F:=0.

B(1:7)

s5)S:=R.56F

k1) K:=S

z1) Z:=K

c6) PД(0:8):=Z

Y35

PB:=00.PB(8:63)

b3)B:=PB

f11)F:=00.

В(8:63)

s1) S:=F

k1) K:=S

z1) Z:=K

c12) PB:=Z

Y36

PB:=11.+1

b3)B:=PB

f12)F:=11.

s1) S:=F

k4) K:=S+1

z1) Z:=K

c12) PB:=Z

Y37

PA:=11.PA(8:63)

b2)B:=PA

f11)F:=00.В(8:63)

s1) S:=F

k1) K:=S

z1) Z:=K

c14) PA:=Z

Y38

PA:=11.+1

b2)B:=PA

f12)F:=11.

s1) S:=F

k4) K:=S+1

z1) Z:=K

c14) PA:=Z

Y39

PB:=PB+PA

a1)A:=PB

b2)B:=PA

f2)F:=B

s1) S:=F

k2)K:=A+S

z1) Z:=K

c12) PB:=Z

Y40

LS:=1

d7)ППС(5 ):=1

Y41

PB(4:63):=R4.PB(4:63)

b3)B:=PB

f13)F:=

B(4:63)

s6)S:=R4.B

k1) K:=S

z1) Z:=K

c15)PB(4:63):=Z

Y42

PB(1:7):=PC(2:8)

b5)B:=PС

f2)F:=B

s1) S:=F

k1) K:=S

z1) Z:=K

c7) PB(1:7):=Z

Y43

РД(0:8):=00.PB(1:7)

b3)B:=PB

f14)F:=00.

B(1:7)

s1) S:=F

k1) K:=S

z1) Z:=K

c6) PД(0:8):=Z

Y44

PB(8:63):=L4.PB(8:63)

b3)B:=PB

f15)F:=

B(8:63)

s8)S:=L4.B

k1) K:=S

z1) Z:=K

c8) PB(8:63):=Z

Y45

РД:=РД-1

a4)A:=РД

f9)F:=11..1

s1) S:=F

k2)K:=A+S

z1) Z:=K

c6) PД(0:8):=Z

Y46

E:=1

d8)ППС(6):=1

Y47

U:=1

d9)ППС(7):=1

Y48

АРП:=1.АР(15:18)

РРП :=РB(0:31)

ЗпРП

b3)B:=PB

f15)F:=B(0:31)

s9)S:=R32.F

k1) K:=S

z1) Z:=K

r8)АРП:=1.

АР(15:18)

I3)ЗпРП

m3)M:=Z

n1)РРП:=М

Y49

АРП(5):=1

РРП :=РB(32:63)

ЗпРП

b3)B:=PB

f16)F:=B(32:63)

s1) S:=F

k1) K:=S

z1) Z:=K

r4)АРП(5):=1

I3)ЗпРП

m3)M:=Z

n1)РРП:=М

Y50

РB(32:63):= РB(32:63)-1

a1)A:=PB

f9)F:=11..1

s1) S:=F

k2)K:=A+S

z1) Z:=K

c2)PB(32:63):=Z

Y51

СчАК(1:17):=РА(46:63)

ТП:=1

b2)B:=PA

f17)F:=B(46:63)

s1) S:=F

k1) K:=S

z1) Z:=K

с16) СчАК:=Z

d10)ППС(8):=1

Y52

РA(48:63):=РОП(0:15)

z2) Z:=M

c17)PA(48:63):=Z(0:15)

m2)M:=РОП

Y53

РA(48:63):=РОП(16:31)

z2) Z:=M

c18)PA(48:63):=Z(16:31)

m2)M:=РОП

Y54

РA(0:15):=РА(16)

b2)B:=PA

f18)F:=

B(16)

s10)S:=

R47.F

k1) K:=S

z1) Z:=K

c19) PA(0:15):=Z

Y55

АРП:=0.АР(15:18)

РРП :=РB(32:63)

ЗпРП

b3)B:=PB

f16)F:=

B(32:63)

s1) S:=F

k1) K:=S

z1) Z:=K

r1)АРП:=0.

АР(15:18)

I3)ЗпРП

m3)M:=Z

n1)РРП:=М

Yв1

АР(1:17):=СчАК(1:17)

b4)B:=

СчАК

f2)F:=B

s11)S:=L1.F

k1)K:=S

z1)Z:=K

r9)AР(1:17):=Z

Yв2

АОП(1:16):=АР(1:16)

ЧтОП

r4)АОП:=АР(1:16)

l2)ЧтОП

Yв3

РК(0:15):=РОП(0:15)

Z:=РОП

z2)Z:=M

c20)РК(0:15):=Z

m2)M:=РОП

Yи4

РК(0:15):=БР(0:15)

b6)B:=БР

f2)F:=B

s2)S:=L16.F

k1)K:=S

z1)Z:=K

c20)РК(0:15):=Z

Yв5

БР:=Z(16:31)

c21)БР:=Z

Yв6

СчАК:=СчАК+1

ТП:=0

a5)A:=СчАК

k5) K:=A+1

z1)Z:=K

с16) СчАК:=Z

d11)ППС(8):=0

Yв7

РК(16:31):=РОП(16:31)

c22)РК(16:31):=Z

Yв8

СчАК:=СчАК+2

ТП:=0

a5)A:=СчАК

f19)F:=210

s1) S:=F

k2)K:=A+S

z1)Z:=K

c23)РК(0:15):=Z

d11)ППС(8):=0

Yв9

РК(0:15):=РОП(16:31)

z2)Z:=M

c24)РК(0:15):=Z(16:31)

m2)M:=РОП

Yв10

СчАК:=СчАК+1

a5)A:=СчАК

k5) K:=A+1

z1)Z:=K

с16) СчАК:=Z

Yв11

РК(16:31):=РОП(0:15)

Z:=РОП

z2)Z:=M

c25)РК(16:31):=

Z(0:15)

m2)M:=РОП

3.2 Описание структурной схемы процессора

Структурная схема процессора состоит из ОА (память ОА, комбинационная часть ОА), УА, ОП, РП, адресный регистр АР, регистр ППС.

Память ОА состоит из рабочих регистров РА(0:63), РВ(0:63), РС(0:8), РД(0:8), буферного регистра БР(0:15), регистра команд РК(0:31) и счетчика адреса команд СчАК(1:16).

Комбинационная часть ОА содержит следующие операционные элементы комбинационного типа: формирователь кодов (ФК(0:63)), сдвигатель (СДВ(0:63)), комбинационный сумматор (КСМ(0:63)) и формирователи осведомительных сигналов (Ф).

ФК выполняет 19 операций:

СДВ выполняет 11 операций:

КСМ выполняет 5 операций:

Результат МО фиксируется в промежуточном регистре Z управляющим сигналом z1 на время одного такта, а затем может быть передан в память ОА по шине С (управляющие сигналы {c}), в ОП или РП через магистраль М (управляющие сигналы {m}) или в адресный регистр АР (управляющие сигналы {r}).

Хранение признаков результата, состояний процессора и режимов работы обеспечивает совокупность триггеров, образующих регистр переходов и состояний процессора (ППС). Его структура описана в пункте 1.8.

Для формирования осведомительных сигналов используются комбинационные схемы Ф1, Ф2, Ф3.

Регистровая память (РП) является внутренней памятью процессора. Длина слова РП 32 бита. Адрес регистра указывается на 5-разрядном регистре адреса РП (АРП). Чтение и запись в РП инициируется сигналами ЧтРП и ЗпРП.

Оперативная память (ОП) имеет емкость 256 Кбайт. Длина регистра слова ОП (РОП) - 32 бита. Адрс слова ОП указывается в регистре адреса ОП (АОП) длиной 16 разрядов. Операция в ОП возбуждается сигналами чтения из ОП (ЧтОП) и записи в ОП (ЗпОП). Момент окончания операции ОП отмечается сигналом ZОП.

Связь ОА процессора с РП и ОП организовано через магистраль M (32 разряда).

Адреса формируются в адресном регистре АР, длина которого 18 бит.

3.3 Разработка функциональной схемы разреза ОА

Разрез ОА строится для двух младших разрядов регистров РА(30:31) и РВ(30:31). Необходимо выполнить четыре микрокоманды:

Разделим по группам все микрооперации:

1. Выборка на шину А:

1) ;

2. Выборка на шину В:

1) ;

3. Формирователь кода:

1) ;

2) ;

3) ;

4. Сдвигатель:

1) ;

5. Комбинационный сумматор:

1) + A;

2) ;

6. Прием в Z:

1) ;

7. Запись в память ОА:

1) ;

2) ;

3) ;

4) .

Таким образом, мы получаем следующие уравнения:

В схеме используем следующие элементы:

1. К564ЛА7 - четыре логических элемента 2 И-НЕ;

2. К564ЛА8 - два логических элемента 4 И-НЕ;

3. К564ЛЕ5 - четыре логических элемента 2 ИЛИ-НЕ;

4. К564ЛЕ6 - два логических элемента 4 ИЛИ-НЕ;

5. К564ТМ2 - два триггера D-типа;

6. К564ИМ1 - полный четырехразрядный сумматор со сквозным переносом.

4. Проектирование управляющего автомата с программируемой логикой (П-автомат)

4.1 Определение формата микрокоманды

Функционирование П-автомата основано на принципе программного управления, использующего операционно-адресную структуру управляющих слов (микрокоманд). Одна микрокоманда определяет порядок функционирования П-автомата в течение одного такта. Совокупность МК образует массив MK[0:P], который хранится в памяти микрокоманд (ПМК). Отдельная МК выделяется из массива посредством адреса 0, I, ..., Р

Операционная часть микрокоманды (ОЧ МК) инициирует совокупность управляющих сигналов, необходимых для выполнения одной МК (один такт работы). ОЧ МК разделяется на поля. Каждое поле объединяет некоторый набор несовместимых управляющих сигналов (МО). Например, все МО {S} СДВ несовместимы между собой. Сигнал Е (окончание работы П-автомата) можно разместить в любом поле. При поступлении сигнала Е заканчивается выборка МК из ПМК. Регистр адреса ПМК устанавливается в начальное состояние (адрес первой МК) сигналом начальной установки U.

В проекте необходимо решить задачу распределения всего набора МО по полям ОЧ МК с учетом двух условий: 1) в одно поле включаются только несовместимые МО; 2) длина ОЧ МК должна быть минимальной. Распределение МО по полям производится на основе структурно-функциональной таблицы.

После того, как определено количество полей и число МО, включенных в каждое поле, определяется длина поля по формуле |N|=log2(m+1), где m - количество МО, приписанных данному полю.

МО кодируются двоичными кодами. В соответствии с длиной отдельного поля, каждой МО, относящейся к данному полю, присваивается двоичный код, начиная с кода 0...01. Код 0...0 используется как признак пустоты поля. Результаты кодирования сводятся в таблицу 4, в которой каждому полю соответствуют два столбца: в первом записывается символическое обозначение МО (управляющего сигнала), а во втором - соответствующий ей двоичный код.

Длина ОЧ МК определяется как сумма длин составляющих ее полей.

Микропрограмма определяет порядок следования микрокоманд. Переход к следующей МК может осуществляться непосредственно после выполнения текущей (безусловный переход) или при выполнении некоторого логического условия -- условный переход. Поэтому, независимо от способа адресации, который задает правило определения адреса следующей МК, адресная часть МК (АЧ МК) содержит поле логических условий. Обычно для всех осведомительных сигналов отводится одно поле X, хотя их может быть и несколько. Длина поля Х определяется выражением log2(L+1), где L - число осведомительных сигналов ОА. При этом код 0...0 определяет безусловный переход. Остальные коды присваиваются осведомительным сигналам {x,p}. Результаты кодирования сводятся в таблицу 5.

Способ адресации для моего варианта - принудительная с одним адресом. Закон формирования адреса следующей микрокоманды описывается формулой

Длина адреса зависит от емкости ПМК. Емкость ПМК определяется количеством вершин МП и способом адресации МК. При расчете емкости ПМК следует учитывать возможные фиктивные (пустые) МК, указывающие адрес следующей МК (безусловно или по значению логического условия), но с нулевой операционной частью. Всего 66 вершин, но с учетом способа адресации выберем длину адреса 7 бит (.

Операционная часть МК

АЧ

А,E,N(1:3)

B(1:3)

F,D(1:5)

S(1:4)

R(1:4)

K(1:3)

C(1:5)

Z(1:2)

M(1:3)

L(1:3)

X(1:7)

a1

001

b1

001

f1

00001

s1

0001

r1

0001

k1

001

c1

00001

z1

01

m1

001

l1

001

p1

0000001

a2

010

b2

010

f2

00010

s2

0010

r2

0010

k2

010

c2

00010

z2

10

m2

010

l2

010

p2

0000010

a3

011

b3

011

f3

00011

s3

0011

r3

0011

k3

011

c3

00011

m3

011

l3

011

x1

0000011

a4

100

b4

100

f4

00100

s4

0100

r4

0100

k4

100

c4

00100

x2

0000100

a5

101

b5

101

f5

00101

s5

0101

r5

0101

k5

101

c5

00101

x3

0000101

n1

110

b6

110

f6

00110

s6

0110

r6

0110

c6

00110

x4

0000110

e1

111

f7

00111

s7

0111

r7

0111

c7

00111

x5

0000111

f8

01000

s8

1000

r8

1000

c8

01000

x6

0001000

f9

01001

s9

1001

c9

01001

x7

0001001

f10

01010

s10

1010

c10

01010

x8

0001010

f11

01011

s11

1011

c11

01011

x9

0001011

f12

01100

c12

01100

x10

0001100

f13

01101

c13

01101

x11

0001101

f14

01110

c14

01110

x12

0001110

f15

01111

c15

01111

x13

0001111

f16

10000

c16

1000

x14

0010000

f17

10001

c17

10001

x15

0010001

f18

10010

c18

10010

x16

0010010

f19

10011

c19

10011

x17

0010011

d1

10100

c20

10100

x18

0010100

d2

10101

c21

10101

x19

0010101

d3

10110

c22

10110

x20

0010110

d4

10111

c23

10111

x21

0010111

d5

11000

c24

11000

x22

0011000

d6

11001

c25

11001

x23

0011001

d7

11010

x24

0011010

d8

11011

x25

0011011

d9

11100

x26

0011100

d10

11101

x27

0011101

d11

11111

x28

0011111

x29

0100000

x30

0100001

4.2 Разработка функциональной схемы П-автомата

П-автомат состоит из ПМК, регистра микрокоманд (РгМК), дешифраторов управляющих сигналов, дешифратора логических условий ДСХ, схемы управления ПМК и схемы формирования адреса следующей МК. Сигналом начальной установки адреса U в адресный регистр памяти АМК заносится адрес первой МК микропрограммы. По сигналу В (запуск) синхросигнал С проходит через схему управления, формируя сигнал чтения из памяти Чт. Прочитанная МК заносится в РгМК. Управляющие сигналы, коды которых содержатся в полях А, В, …,М ОЧ МК, дешифрируются соответствующими каждому полю дешифраторами ДСА, ДСВ, …, ДСМ и поступают в ОА, инициируя определенные МО.

Содержимое поля Х поступает на ДСХ и определяет номер (код) осведомительного сигнала ОА, значение которого должно анализироваться текущей микрокомандой. Схема формирования адреса следующей МК зависит от способа адресации МК и подлежит разработке.

Схема управления ПМК выполняет следующие функции:

1. запуск П-автомата по сигналу «Запуск»;

2. приостановку чтения из ПМК на период обращения к ОП( Zоп );

3. управление схемой выработки адреса следующей МК;

4. прекращение работы П-автомата при появлении в микрокоманде сигнала Е.

На основе полученных данных вычерчивается схема электрическая функциональная П-автомата (третий лист графической части проекта).

4.3 Размещение микрокоманды в памяти

Для ФМП команды SD необходимо разработать таблицу размещений МК в памяти МП в закодированном виде. Для этого необходимо расписать все МК (рисунок 13) и заполнить таблицу размещения микропрограммы в памяти П-автомата (таблица 6), учитывая способ адресации (формула 5).

Затем на основе таблицы 5 и таблицы 6 заполняется кодированная таблица размещения микрокоманд в памяти (таблица 7). Первый столбец этой таблицы содержит адрес МК в ПМК в десятичном коде. В следующих столбцах записываются двоичные коды управляющих сигналов, формируемых данной МК. В столбце, соответствующем полю Х, записывается двоичный код, определяющий переход от данной МК к следующей. Если после рассматриваемой МК нет условной вершины, то поле Х заполняется нулями, что соответствует безусловному переходу. Последний столбец таблицы 6 определяет адрес следующей МК в ПМК в двоичном коде.

Таблица 5 - Размещения микропрограммы в памяти П-автомата.

Адрес МК

МО

ЛУ

Адрес МК

0

x1

1

1

yк

0

0

2

у1

x2

3

3

у2

0

5

4

0

x3

7

5

у3

0

6

6

у4

0

4

7

у5

0

9

8

0

x4

11

9

у'3

0

10

10

y'4

0

8

11

0

x5

13

12

y6

0

85

13

y8

0

15

14

y7

0

85

15

y9

0

16

16

0

x6

16

17

y10

0

18

18

y11

x7

19

19

0

0

12

20

y12

0

21

21

y13

0

22

22

0

x6

22

23

y14

x8

24

24

y15

0

85

25

y16

0

26

26

y17

0

27

27

y18

0

28

28

y19

0

29

29

y20

0

30

30

y21

x9

31

31

y22

0

36

32

y26

0

34

33

0

x11

40

34

y27

0

35

35

y28

x11

32

36

y23

0

38

37

0

x11

40

38

y24

0

39

39

y25

x10

36

40

0

x12

42

41

0

x12

45

42

0

x13

66

43

y29

0

44

44

y30

0

83

45

y'19

0

48

46

y33

0

47

47

y34

0

42

48

y35

x13

49

49

y36

0

51

50

y37

0

51

51

0

x14

52

52

y38

0

54

53

y39

0

54

54

y40

x15

55

55

0

x16

57

56

0

x17

59

57

0

0

43

58

y41

0

85

59

0

x18

61

60

y42

0

63

61

0

x19

64

62

0

x12

60

63

y'25

0

61

64

y43

0

42

65

0

0

73

66

y32

0

68

67

y31

0

68

68

y44

0

69

69

0

x20

70

70

0

x22

72

71

0

x21

74

72

0

x23

79

73

y47

0

79

74

y45

0

78

75

0

x22

76

76

0

x23

79

77

0

0

74

78

y46

0

69

79

y'16

0

83

80

0

x24

81

81

y48

0

69

82

0

0

43

83

y49

0

84

84

y50

0

85

85

0

x25

86

Адрес МК в ПМК

Операционная часть МК

А,E,N(1:3)

B(1:3)

F,D(1:5)

S(1:4)

R(1:4)

K(1:3)

C(1:5)

Z(1:2)

M(1:3)

L(1:3)

X(1:7)

A(1:7)

0

000

000

00000

0000

0000

000

00000

00

000

000

0000011

0000001

1

111

0000000

2

000

001

00001

0001

0000

001

00001

01

000

000

0000100

0000011

3

000

001

00010

0010

0001

001

00000

01

000

000

0000000

0000101

4

000

000

00000

0000

0000

000

00000

00

000

000

0000101

0000111

5

000

000

00000

0000

0010

000

00010

10

001

001

0000000

0000110

6

001

010

00010

0001

0000

010

00001

01

000

000

0000000

0000100

7

000

001

00010

0011

0001

001

00000

01

000

000

0000000

0001001

8

000

000

00000

0000

0000

000

00000

00

000

000

0000110

0001011

9

000

000

000000

0000

0010

000

00010

10

001

001

0000000

0001010

10

001

010

00010

0001

0000

010

00001

01

000

000

0000000

0001000

11

000

000

00000

0000

0000

000

00000

00

000

000

0000111

0001101

12

000

000

10100

0000

0000

000

00000

00

000

000

0000000

1010101

13

000

010

00010

0001

0011

001

00000

01

000

000

0000000

0001111

14

000

000

10101

0000

0000

000

00000

00

000

000

0000000

1010101

15

000

000

00000

0000

0100

000

00000

00

000

010

0000000

0010000

16

000

000

00000

0000

0000

000

00000

00

000

000

0001000

0010000

17

000

000

00000

0000

0000

000

00011

10

010

000

0000000

0010010

18

001

000

00011

0001

0000

010

00010

01

000

000

0001001

0010011

19

000

000

00000

0000

0000

000

00000

00

000

000

0000000

0001100

20

000

011

00010

0001

0101

001

00000

01

000

000

0000000

0010101

21

000

000

00000

0000

0110

000

00000

00

000

010

0000000

0010110

22

000

000

00000

0000

0000

000

00000

00

000

000

0001000

0010110

23

000

000

00000

0000

0000

000

00001

10

010

000

0001010

0010100

24

000

000

10110

0000

0000

000

00000

00

000

000

0000000

1010101

25

000

001

00010

0100

0001

001

00000

01

000

000

0000000

0011010

26

000

000

00000

0000

0010

000

00100

10

001

001

0000000

0011011

27

000

000

00000

0000

0111

000

00010

10

001

001

0000000

0011100

28

000

011

0100

0101

0000

001

00101

01

000

000

0000000

0011101

29

000

011

0101

0101

0000

100

00110

01

000

000

0000000

0011110

30

011

100

0010

0001

0000

010

00101

01

000

000

0001011

0011111

31

000

101

00110

0001

0000

100

00101

01

000

000

0000000

0100100

32

000

010

01010

0101

0000

100

01010

01

000

000

0000000

0100010

33

000

000

00000

0000

0000

000

00000

00

000

000

0001101

0101000

34

000

010

01000

0110

0000

001

01011

01

000

000

0000000

0100011

35

011

000

01001

0001

0000

010

01001

01

000

000

0001100

0100000

36

000

011

00111

0101

0000

100

00111

01

000

000

0000000

0100110

37

000

000

00000

0000

0000

000

00000

00

000

000

0001101

0101000

38

000

011

01000

0110

0000

001

01000

01

000

000

0000000

0100111

39

011

000

00000

0000

0000

101

01001

01

000

000

0001100

0100100

40

000

000

00000

0000

0000

000

00000

00

000

000

0001110

0101010

41

000

000

00000

0000

0000

000

00000

00

000

000

0001110

0101101

42

000

000

00000

0000

0000

000

00000

00

000

000

0001111

1000010

43

000

000

10111

0000

0000

000

00000

00

000

000

0000000

0101100

44

000

000

01010

0001

0000

001

01100

01

000

000

0000000

1010011

45

000

011

00100

0101

0000

001

00101

01

000

000

0000000

0110000

46

010

000

00000

0000

0000

011

01000

01

000

000

0000000

0101111

47

000

010

00010

0111

0000

001

01101

01

000

000

0000000

0101010

48

000

010

00100

0101

0000

001

00110

01

000

000

0001111

0110001

49

000

011

01011

0001

0000

001

01100

01

000

000

0000000

0110011

50

000

011

01100

0001

0000

100

01100

01

000

000

0000000

0110011

51

000

000

00000

0000

0000

000

00000

00

000

000

0010000

0110100

52

000

010

01011

0001

0000

001

01110

01

000

000

0000000

0110110

53

000

010

01100

0001

0000

100

01110

01

000

000

0000000

0110110

54

001

010

00010

0001

0000

010

01100

01

000

000

0010001

0110111

55

000

000

00000

0000

0000

000

00000

00

000

000

0010010

0111001

56

000

000

00000

0000

0000

000

00000

00

000

000

0010011

0111011

57

000

000

00000

0000

0000

000

00000

00

000

000

0000000

0101011

58

000

000

11010

0000

0000

000

00000

00

000

000

0000000

1010101

59

000

000

00000

0000

0000

000

00000

00

000

000

0010100

0111101

60

000

011

01101

0110

0000

001

01111

01

000

000

0000000

0111111

61

000

000

00000

0000

0000

000

00000

00

000

000

0010101

1000000

62

000

000

00000

0000

0000

000

00000

00

000

000

0001110

0111100

63

011

000

00000

0000

0000

101

01001

01

000

000

0000000

0111101

64

000

101

00010

0001

0000

001

00111

01

000

000

0000000

0101010

65

000

000

00000

0000

0000

000

00000

00

000

000

0000000

1001001

66

000

000

11001

0000

0000

000

00000

00

000

000

0000000

1000100

67

000

000

11000

0000

0000

000

00000

00

000

000

0000000

1000100

68

000

011

01110

0001

0000

001

00110

01

000

000

0000000

1000101

69

000

000

00000

0000

0000

000

00000

00

000

000

0010110

1000110

70

000

000

00000

0000

0000

000

00000

00

000

000

0011000

1001000

71

000

000

00000

0000

0000

000

00000

00

000

000

0010111

1001010

72

000

000

00000

0000

0000

000

00000

00

000

000

0011001

1001111

73

000

000

11011

0000

0000

000

00000

00

000

000

0000000

1001111

74

000

011

01111

1000

0000

001

01000

01

000

000

0000000

1001110

75

000

000

00000

0000

0000

000

00000

00

000

000

0011000

1001100

76

000

000

00000

0000

0000

000

00000

00

000

000

0011001

1001111

77

000

000

00000

0000

0000

000

00000

00

000

000

0000000

1001010

78

100

000

01001

0001

0000

001

00110

01

000

000

0000000

1000101

79

000

001

00010

0100

0001

001

00000

01

000

000

0000000

1010011

80

000

000

00000

0000

0000

000

00000

00

000

000

0011010

1010001

81

000

000

11100

0000

0000

000

00000

00

000

000

0000000

1000101

82

000

000

00000

0000

0000

000

00000

00

000

000

0000000

0101011

83

110

011

01111

1001

0100

001

00000

01

011

011

0000000

1010100

84

110

011

10000

0001

0100

001

00000

01

011

011

0000000

1010101

85

000

000

00000

0000

0000

000

00000

00

000

000

0011011

1010110

86

000

000

00000

0000

0000

000

00000

00

000

000

0000000

000000

87

000

000

00000

0000

0000

000

00000

00

000

000

0000000

1010101

4.4 Расчет такта работы УА с программируемой логикой

Комбинационную схему для выделения осведомительного сигнала построим на схемах «4-2И-НЕ» (КР1533ЛИ время задержки ) и «4-2ИЛИ-НЕ» (КР1533ЛЛ1 время задержки ). Из-за большого количества осведомительных сигналов (26) придется использовать 5 рядов схем «4-2ИЛИ», что увеличивает время задержки: .

Используем счетчик серии КР564ИМ2 с временем задержки .

- время переключения регистра МК. Используем регистр общего назначения серии КР1533ИР39 с временем задержки

Используем дешифратор серии КР1533ИД3 с временем задержки .

Вычислим такт работы УА .

Заключение

В данном проекте я разработал процессор, отвечающий требованиям технического задания и выполняющий следующие команды:

1) SD (код 6B) - вычитание с нормализацией;

2) BCTR (код 06) - переход по счетчику;

3) LH (код 48) - загрузка полуслова.

Размещено на Allbest.ru


Подобные документы

  • Разработка структурной схемы процессора; синтез микропрограммного и управляющего автомата с жесткой логикой. Функциональная организация процессора: программные модели, форматы данных и команд. Организация оперативной памяти. Проектирование блока операций.

    учебное пособие [1,1 M], добавлен 09.04.2013

  • Разработка модели процессора, выполняющего набор машинных команд. Структурная схема процессора (операционного и управляющего автоматов), анализ принципа работы. Содержательный алгоритм микропрограммы, синтез управляющего автомата на основе жесткой логики.

    курсовая работа [871,9 K], добавлен 16.09.2010

  • Принцип работы процессора (одномагистральная структура). Временные диаграммы, описывающие выполнение микроопераций для каждой команды. Структурная схема управляющего автомата на основе памяти с одним полем адреса. Описание процессора на языке Active VHDL.

    курсовая работа [621,0 K], добавлен 24.09.2010

  • Функциональная организация процессора. Сложение с нормализацией, синтез операций, выборка команды. Описание структурной схемы процессора. Синтез управляющего автомата, разметка граф схемы. Разбиение микроопераций по полям и кодирование логических условий.

    курсовая работа [91,8 K], добавлен 24.09.2010

  • Разработка управляющего автомата процессора с жесткой логикой в САПР Quartus II. Построение схемы функциональной микропрограммы команды "Исключающее ИЛИ" в размеченном виде. Унитарное кодирование состояний автомата. Запись функций переходов и выходов.

    курсовая работа [671,3 K], добавлен 04.11.2014

  • Разработка структурной схемы вычислительного устройства, выбор системы команд и определение форматов. Разработка алгоритма командного цикла, выполнения арифметических и логических операций. Проектирование операционного автомата, устройств управления.

    курсовая работа [2,8 M], добавлен 15.05.2014

  • Принцип микропрограммного управления. Управляющие автоматы с жесткой и программируемой логикой. Граф-схемы алгоритмов. Синтез управляющего автомата по граф-схеме алгоритма. Построение управляющего автомата с программируемой логикой на основе ПЗУ.

    курсовая работа [263,8 K], добавлен 25.01.2011

  • Разработка управляющего автомата, ориентированного на выполнение заданной микрооперации. Разработка алгоритма работы управляющего автомата. Листинг программы. Выбор оптимального варианта кодирования состояний автомата. Синтез функции возбуждения.

    курсовая работа [506,9 K], добавлен 26.12.2012

  • Рассмотрение принципа работы процессора и его практической реализации с использованием языка описания аппаратуры Verilog. Проектирование системы команд процессора. Выбор размера массива постоянной памяти. Подключение счетчика инструкций и файла регистра.

    курсовая работа [1,2 M], добавлен 26.05.2022

  • Синтез структуры простого магистрального процессора с одним АЛУ, выполняющего 8 заданных команд. Разработка формата и кодировки команд, структурной схемы процессора, функциональные схемы всех его блоков в целом с указанием шин и управляющих сигналов.

    реферат [123,9 K], добавлен 18.05.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.