Автор работы: Пользователь скрыл имя, 15 Марта 2012 в 14:37, курсовая работа
Цель курсового проекта состоит в приобретении практических навыков в проектировании операционного и управляющего автоматов процессора ЭВМ в соответствии с заданными в техническом задании архитектурными особенностями, а также в разработке технической документации, представленной пояснительной запиской и чертежами, выполненными в соответствии с ЕСКД.
Введение
Задание на курсовой проект………………………………………………... 5
Общие аспекты проектирования процессора……………………. 5
Исходные данные………………………………………………….. 6
Архитектура процессора….………..……...…………..………………….. 7
Форматы команд…………………….……………………………… 7
Форматы данных…………….………………………………..……... 14
Расчет и выбор разрядности основных узлов процессора……… 16
Регистровая модель………….……………………………………... 17
Виды адресации………………………………………………………. 22
Структурная организация процессора……………..………………… 25
Общая структура процессора………………………………………... 25
Выбор и обоснование элементной базы……………..…………….. 25
Блоки обработки данных……………………………………….…… 26
Управляющий автомат………………………………..…………….. 30
3.4.1 УА с жесткой логикой……………….…………………….. 30
3.4.2 УА с микропрограммным управлением………………….. 33
Регистровая память (РП)………………….……………………….. 36
Оперативная память (ОП)…………………….…………………… 38
Блок интерфейсов (БИНТ)………………………..………………… 38
Содержательные схемы алгоритмов работы процессора….……………. 39
Общий алгоритм цикла работы процессора………………………... 39
Выборка команд………………………………..……………………. 41
Формирование исполнительного адреса и выборка
операндов……………….…………………………..……………………. 47
Обработка прерываний………………………………………………. 54
Выполнение четырех операций из индивидуального задания……. 55
Микропрограммное управление………….………..…………………. 64
Формат микрокоманды………………………………………………. 64
5.1.1 Зона БФТ…………..…………….………………………. 65
5.1.2 Зона БПТ……………..………...……………………………. 68
5.1.3 Зона БМУ……………………….…………………………… 69
5.1.4 Зона БИНТ…………………….…………………………….. 70
5.1.5 Зона ОП……………………..….……………………………... 74
5.1.6 Зона CONST…………………………………………………… 74
Микропрограмма операции обработки чисел в формате с
плавающей точкой…………………………………..…………………... 74
Заключение…………………………………………………………………... 80
Литература……………………………………………………………………. 81
РЕЗ |
OEY WE IEN |
Передача информации |
0 1 2 3 4 5 6 7 |
0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 |
Y, РЗУ = СДВ; РгQ =АЛУ Y, РЗУ = СДВ Y = СДВ; РгQ = АЛУ Y = СДВ РЗУ = Y; РгQ = АЛУ РЗУ = Y РгQ = АЛУ Нет записи |
5.1.2 Зона БПТ.
Большинство полей в БПТ повторяют поля БФТ: ИСТ, УВП, АЛУ, СДВ, РЕЗ, А и В. Только для БПТ адрес считывается только из РгМК, в отличие от БФТ и в БПТ располагаются только рабочие регистры.
На адресные входы A и B может подаваться любая четырёх битная комбинация, так как все регистры в БПТ рабочие, а стек вынесен за пределы БПТ.
Таблица 5.9 – Значение полей А/В.
Значение |
Регистр |
0000 |
Р1з |
0001 |
Р1м |
0010 |
РСМз |
0011 |
РСМм |
0100 |
СчТ |
0101 |
РПТ1 |
0110 |
РПТ2 |
0111 |
РПТ3 |
1000 |
РПТ4 |
10001 |
РПТ5 |
1010 |
РПТ6 |
1011 |
РПТ7 |
1100 |
РПТ8 |
1101 |
РПТ9 |
1110 |
РПТ10 |
1111 |
РПТ11 |
5.1.3 Зона БМУ.
Поле УСА ( управление следующим адресом) принимает значение E по умолчанию, что соответствует последовательному выполнению команд. Для условного перехода в него записывается значение 3.
Поле П разрешает безусловный переход по адресу, записанному в АП.
Поле УСЛ отвечает за выбор условия перехода.
ФУ - фиксация флагов.
И - инверсия условия.
RLD – разрешение записи в Cч/РгА.
ВБ - выбор секции,
для которой анализируются
АП – адрес перехода. Адрес перехода размещён в отдельном поле, а не с поле CONST, так как поле CONST может использоваться для записи какой-либо константы и одновременно нужно организовать переход по адресу. Поэтому эти поля разделены.
УСЛ |
Переход |
|
000 |
Переход по паритету |
PF0 = 1 |
001 |
При равенству 0 |
Z =1 |
010 |
При отрицат. знак |
N = 1 |
011 |
При переполнении |
V = 1 |
100 |
При переносе |
C = 1 |
101 |
Если меньше |
N + V = 1 |
110 |
Если меньше или равно |
Z v (N + V ) = 1 |
111 |
Если меньше или равно без знака |
C v Z = 1 |
Таблица 5.10 - Поле УСЛ.
5.1.4 Зона БИНТ.
Поле БФТ БИНТ
Источником данных для шины DA БФТ могут быть поле CONST из РгМк, операнд из РгЧтОП, передаваемый через мультиплексор MUXРежЧ, а также выход БПТ через DMXDYПТ.
Таблица 5.11 – MUXDAФТ.
MUXDAФТ |
Источник |
00 |
CONST из РгМК |
01 |
MUXРежЧ |
10 |
DMXDYПТ |
Источником данных для шины DB БФТ может быть непосредственный операнд из РгК(8:15), СчАК( для инкремента), смещение из РГК(16:23) или РгК(16:31) и порядок из БПТ через MUXSTPor.
Таблица 5.12 – MUXDBФТ.
MUXDBФТ |
Источник |
000 |
РгК(8:15) |
001 |
СчАК |
010 |
РгК(16:23) |
011 |
РгК(16:31) |
100 |
MUXSTPor |
Выходом БФТ могут быть шина DA БПТ через MUXDAПТ, РгАД, СчАК или РГЗпОП через MUXЗП
Таблица 5.13 – DMXDYФТ.
DMXDYФТ |
Направление |
00 |
MUXDAПТ |
01 |
РгАД |
10 |
СчАК |
11 |
MUXЗП |
Выходом шины DB может быть либо РгЗпОП через MUXЗП, либо разряд порядка мантиссы для стекового регистра через DMXSTPor
Таблица 5.14 – DMXDBФТ.
DMUXDBФТ |
Направление |
0 |
MUXЗП |
1 |
DMXSTPor |
Поле БПТ БИНТ
Источником данных для шины DA БПТ могут быть поле CONST из РгМк, и выход Y БПТ через DMXDYФТ.
Таблица 5.15 – MUXDAПТ.
MUXDAПТ |
Источник |
0 |
CONST из РгМК |
1 |
DMXDYФТ |
Выходами шины DY БПТ могут быть входная шина DA БФТ через MUXDAФТ, разряды стека, где хранится мантисса ( через DMXSTMan) и разряды стека, где хранится знак ( через DMXSTZn)
Таблица 5.16 – DMXDYПТ.
DMXDYПТ |
Направление |
00 |
MUXDAФТ |
01 |
DMXSTMan |
10 |
DMXSTZn |
Входаvи шины DB могут быть либо мантисса через MUXSTMan или знак через MUXSTZn.
Таблица 5.17 – MUXDBПТ.
MUXDBПТ |
Направление |
0 |
MUXSTMan |
1 |
MUXSTZn |
Поле ОП БИНТ
Входами мультиплексора записи MUXЗП могут быть выходы шины DB, DY,СчАК ( при сохранении при прерывании) и ССП( CR0) по той же причине.
Таблица 5.18 – MUXЗП.
MUXЗП |
Источник |
000 |
DMXDBФТ |
001 |
DMXDYФТ |
010 |
СчАК |
011 |
ССП (CR0) |
100 |
EFLAGS |
Таблица 5.18 (продолжение)
Запись в РгК может вестись либо напрямую из РгЧтОП, либо через РгБ. Для выбора необходимых байтов используется MUXЧ после которого и идёт запись в РгК. Иначе же ведётся запись из РгБ через соответствующие мультиплексоры.
Таблица 5.19 – DMXОП.
DMXОП |
Направление |
0 |
РгБ |
1 |
MUXЧ |
Входом записи РгК могут быть РгБ через MUXБ или РгЧтОП через MUXЧ. Выбор источника осуществляется в MUXБЧ
Таблица 5.20 – MUXБЧ.
MUXБЧ |
Источник |
0 |
MUXБ |
1 |
MUXЧ |
Мультиплексор MUXСА выбирает, откуда будет произволиться запись в РАОП – из СчАК или РгАД.
Таблица 5.21 – MUXСА.
MUXСА |
Источник |
0 |
СчАК |
1 |
РгАД |
Также в поле БИНТ есть поле Рг. В нём определяется в какие из регистров возможна запись. Это регистры СчАК, РгК, РгАД, РгБ.
5.1.5 Зона ОП
Поле используется для управления записи или считывания данных из ОП.
Сигнал CS определяет выбрана ли ОП или нет. Сигналы R/W задают соответственно чтение из ОП в РгЧтОП или запись в РгЗпОП соответственно.
Также зона разрешает запись.
Таблица 5.22 – Зона ОП
CS |
R/W |
Режим работы ОП |
0 |
0 |
нет доступа |
0 |
1 |
нет доступа |
1 |
0 |
ОП := РгЗпОП |
1 |
1 |
РгЧтОП := ОП |
5.1.6 Зона CONST
Зона используется для определения константы, например для операций сравнения в условиях или для выделения битов по маске.
5.2 Микропрограмма операции
Микропрограмма команды FIADD.
Адрес |
Содержание МК |
Зона |
Поле |
Значение |
Примечание |
00 |
Если РСМм(63)=0, то переход |
БПТ
БМУ |
В ИСТ АЛУ УВП РЕЗ УСЛ УСА АП |
4 0 4 0 0 2 3 2 |
РСМм РгА, РгВ S+C0 0 Без записи N=1 Усл. Пер. Адрес п-да. |
01 |
РСМм=LLS(РСМм, 1) РСМр=РСМр+1 |
БФТ
БПТ
БМУ |
В УВП АЛУ В СДВ БУ АП |
16 1 5 4 9 1 0 |
РСМр С0=1 S+C0 РСМм ЛС влево Безусл.п-д Адрес перехода |
02 |
РСМр=403Eh-РСМр |
БФТ
CONST |
В АЛУ ИСТ УВП |
16 2 4 1 403Eh |
РСМр R-S-1+C0 DA C0=1 |
03 |
РСМр=РСМр-Р1р |
БФТ |
А В АЛУ УВП |
15 16 1 1 |
Р1р РСМр S-R-1+C0 C0=1 |
04 |
СчТ=РСМр |
БФТ БПТ
БИНТ |
А В ИСТ РЕЗ MUXDAПТ DMXDYФТ |
16 5 5 1 1 0 |
РСМр СчТ DA РЗУ С вых. ФТ На БПТ |
05 |
Если N=1, то переход |
БМУ |
УСЛ УСА АП |
2 3 11 |
N=1 Усл. пер. Адрес пер. |
06 |
Если РСМр>3FFFh, то переход |
БФТ
БМУ
CONST |
В АЛУ ИСТ РЕЗ УВП УСЛ И УСА АП |
16 1 4 6 1 5 1 3 1Е 3FFFh |
РСМр S-R-1+C0 DA Без записи С0=1 Z v (N+V) Инверсия Усл. пер. Адрес пер. |
07 |
Если РСМр=0, то переход |
БФТ
БМУ
CONST |
В АЛУ ИСТ РЕЗ УВП УСЛ УСА АП |
16 1 4 6 1 1 3 13 0 |
РСМр S-R-1+C0 DA Без записи С0=1 Z=1 Усл. пер. Адрес пер. |
08 |
Если РСМр>0, то переход |
БФТ
БМУ
CONST |
В АЛУ ИСТ РЕЗ УВП УСЛ И УСА АП |
16 1 4 6 1 6 1 3 0D 0 |
РСМр S-R-1+C0 DA Без записи С0=1 Z v (N+V) Инверсия УсАдрес Адрес пер. |
09 |
Если СчТ<>0, то переход |
БПТ
БМУ
CONST |
В АЛУ ИСТ РЕЗ УВП УСЛ И УСА АП |
5 1 4 6 1 1 1 3 0В 0 |
СчТ S-R-1+C0 DA Без записи С0=1 Равны Инверсия Усл. пер. Адрес пер. |
0A |
РСМр=Р1р |
БФТ
БМУ |
А В БУ АП |
15 16 1 13 |
Р1р РСМр Безусл. пер. Адрес пер. |
0B |
РСМм=ARS(РСМм,1) |
БПТ |
В СДВ |
4 0 |
РСМм АС вправо |
0C |
СчТ=СчТ+1 |
БПТ
БМУ |
В АЛУ УВП БУ АП |
5 4 1 1 09 |
СчТ S+C0 С0=1 Безусл. пер. Адрес перехода |
0D |
Если СчТ<>0, то переход |
БПТ
БМУ
CONST |
В АЛУ ИСТ РЕЗ УВП УСЛ И УСА АП |
5 1 4 6 1 1 1 3 0F 0 |
СчТ S-R-1+C0 DA Без записи С0=1 Равны Инверсия Усл. пер. Адрес пер. |
0E |
РСМр=РСМр+Р1р |
БФТ
БМУ |
А В АЛУ УВП БУ АП |
15 16 3 0 1 13 |
Р1р РСМр R+S+C0 0 Безусл. пер. Адрес пер. |
0F |
Р1м=ARS(Р1м, 1) |
БПТ |
В СДВ |
2 0 |
Р1р АС вправо |
10 |
СчТ=СчТ-1 |
БПТ
БМУ
CONST |
В АЛУ ИСТ УВП БУ АП |
5 1 4 1 1 0D 1 |
СчТ S-R-1+C0 DA C0=1 Безусл. пер. Адрес пер. |
11 |
Если РСМр<FFFFB000h, то переход |
БФТ
БМУ
CONST |
В АЛУ ИСТ РЕЗ УСЛ УСА АП |
16 1 4 6 5 3 07 FFFFB000h |
РСМр S-R-1+C0 DA Без записи Есл.меньше Усл. пер. Адрес пер. |
12 |
РСМм=РСМм+Р1м РСМр=РСМр+Р1р |
БФТ
БПТ
БМУ |
А В АЛУ А В АЛУ УВП БУ АП |
15 16 3 2 4 3 0 1 1E |
Р1р РСМр R+S+C0 Р1р РСМм R+S+C0 С0=0 безусл. пер Адрес пер. |
13 |
Если РСМз<>Р1з, то переход |
БПТ
БМУ
|
А В АЛУ УВП УСЛ И УСА АП |
1 3 1 1 1 1 3 15 |
Р1з РСМз S-R-1+C0 C0=1 Z=1 Инверсия Усл. пер. Адрес пер. |
14 |
РСМм=РСМм+Р1м |
БПТ
БМУ |
А В АЛУ УВП БУ АП |
2 4 3 0 1 1С |
Р1м РСМм S+R+1 C0=0 Безусл.пер. Адрес пер. |
15 |
Если РСМз=0, то переход |
БПТ
БМУ
CONST |
В АЛУ ИСТ РЕЗ УВП УСЛ УСА АП |
3 1 4 6 1 1 3 19 0 |
РСМз S-R-1+C0 DA Без щаписи С0=1 Равны Усл. пер. Адрес пер. |
16 |
Если Р1м<>РСМм, то переход |
БПТ
БМУ
|
А В АЛУ УВП УСЛ УСА АП |
2 4 1 1 5 3 1С |
Р1р РСМр S-R-1+C0 C0=1 Есл.меньше Усл.пер. Адрес пер. |
17 |
РСМз=1 |
БПТ
CONST |
В ИСТ РЕЗ |
3 4 1 1 |
РСМз DA РЗУ |
18 |
РСМм=!РСМм+1 |
БПТ
БМУ |
В АЛУ УВП БУ АП |
4 5 1 1 1С |
РСМм !S+C0 C0=1 Безусл.пер. Адрес.пер. |
19 |
Если РСМм<Р1м, то переход |
БПТ
БМУ |
А В АЛУ УВП УСЛ УСА АП |
4 2 1 1 5 3 1С |
Р1м РСМм S-R-1+C0 С0=1 Есл.меньше Усл. пер. Адрес пер. |
1A |
РСМз=1 |
БПТ
CONST |
В ИСТ РЕЗ |
3 4 1 1 |
РСМз DA РЗУ |
1B |
РСМм=!РСМм+1 |
БПТ
БМУ |
В АЛУ УВП БУ АП |
4 5 1 1 1С |
РСМм !S+C0 С0=1 Безусл.пер. Адрес пер. |
1C |
Если V=1, то переход |
БМУ |
УСЛ УСА АП |
3 3 22 |
V=1 Усл.пер. Адрес пер. |
1D |
Если РСМ(63)=0, то переход |
БМУ
|
УСЛ И УСА АП |
2 1 3 1F |
N=1 Инверсия Усл.пер. Адрес пер. |
1E |
END |
||||
1F |
РСМм=ALS(РСМм, 1) РСМр=РСМр-1 |
БФТ
БПТ
CONST |
В АЛУ ИСТ УВП В СДВ |
16 1 4 1 4 8 1 |
РСМр S-R-1+C0 DA C0=1 РСМр АС влево |
20 |
Если N=0, то переход |
БМУ
|
УСЛ И УСА АП |
2 1 3 1D |
N=1 Инверсия Усл. пер. Адрес пер. |
21 |
Вызов обработчика прерываний антипереполнения |
||||
22 |
РСМм=ARS(РСМм,1) РСМр=РСМр+1 |
БФТ
БПТ |
В АЛУ УВП В СДВ |
16 4 1 4 0 |
РСМр S+C0 С0=1 РСМм АС вправо |
23 |
Если РСМр(15)=0, то переход |
БМУ |
УСЛ И УСА АП |
2 1 3 1E |
N=1 Инверсия Усл. пер. Адрес пер. |
24 |
Обработка прерываний переполнения порядка |