Автор работы: Пользователь скрыл имя, 06 Февраля 2014 в 11:24, курсовая работа
В настоящее время существуют две тенденции в проектировании средств вычислительной техники: во-первых, разработка устройств, специализированных ЭВМ на основе микропроцессорных средств, во-вторых, реализация ЭВМ с использованием СБИС программируемых логических матриц, матриц программируемых логических элементов, программируемых логических интегральных схем (ПЛИС) и базовых матричных кристаллов.
Цикл заключается в следующем:
Устанавливается флаг SF по значению знакового разряда Затем, если содержимое регистра С равно 0, выставляется флаг ZF;
Алгоритм выполнения операции деления проиллюстрирован в приложении 17.
7.4 Алгоритм выполнения логических операций
Операции конъюнкции, дизъюнкции и «исключающее или» над операндами RgA и RgB выполняются соответствующими комбинационными схемами АЛУ. Результат записывается в RgС.
Алгоритм выполнения логических операций проиллюстрирован в приложении 18.
8. Проектирование операционного автомата арифметико-логического
устройства
После проектирования отдельных алгоритмов арифметических и логических операций составим обобщенный алгоритма АЛУ (схема ) КП 230101.013.017.001.007ТЧ). Он составляется путем объединения частных алгоритмов выполнения отдельных арифметических и логических операций. На основании обобщенного алгоритма АЛУ составим список микроопераций МПА устройства управления нижнего уровня. Обозначим множество его входных сигналов (логических условий) через Х = {х1, х2, …, х3}, а множество его выходных (управляющих) сигналов – через У = {у1, у2, …, у3}.
После разработки обобщенного алгоритма АЛУ, разметки его, кодирования микроопераций и логических условий можно построить функциональную схему операционного автомата АЛУ.
9. Проектирование МПА с программируемой логикой.
По заданию необходимо
спроектировать автомат с программируемой логи
Для разработки автомата будем использовать список микрокоманд и логических условий из таблицы. Закодируем все логические условия и микрооперации двоичным кодом. Для этого разобьем множество микроопераций на 5 непересекающихся подмножеств. Получим:
Y1 = {y0, y5, y10, y15, y20, y25, y30, y35, y40, y45, y50 , y55, y60, y65, y70, y75, y80, y85, y90, y95, y100, y105, y110, y115, y120, y125, y130, y135}
Y2 = {y1, y6, y11, y16, y21, y26, y31, y36, y41, y46, y51, y56, y61, y66, y71, y76, y81, y86, y91, y96, y101, y106, y111, y116, y121, y126, y131, y136}
Y3 = {y2, y7, y12, y17, y22, y27, y32, y37, y42, y47, y52, y57, y62, y67, y72, y77, y82, y87, y92, y97, y102, y107, y112, y117, y122, y127, y132, y137 }
Y4 = {y3, y8, y13, y18, y23, y28, y33, y38, y43, y48, y53, y58, y63, y68, y73, y78, y83, y88, y93, y98, y103, y108, y113, y118, y123, y128, y133, y138}
Y5 = {y4, y9, y14, y19, y24, y29, y34, y39, y44, y49, y54, y59, y64, y69, y74, y79, y84, y89, y94, y99, y104, y109, y114, y119, y124, y129, y134, y139 }
Множество логических условий содержит 48 элементов
X = {x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40,x41,x42,x43, x44, x45, x43, x44, x45, x46, x47, x48}
Для кодирования микроопераций в каждом из подмножеств необходимо использовать по пять бит. Таблица кодирования микроопераций и логических условий приведена в приложении 20.
На основании кодированного списка условий и микроопераций проектируем форматы микрокоманд (рисунок 9.1.1, 9.1.2)
Рисунок 9.1.1 – Формат операторных микрокоманд
Рисунок 9.1.2 – Формат микрокоманд переходов
В ПЗУ хранится два типа микрокоманд: операторные микрокоманды и микрокоманды перехода. Обе микрокоманды дополнены до значения 31, как для ближайшей степени числа 2. Микрокоманды перехода предназначены для передачи управления по адресу «Адрес перехода», если условие X истинно, в противном случае выполняется следующая команда.
В соответствии с выбранными форматами микрокоманд составляется функциональная схема МПА (приложение 23) на основе программируемой логики
10. Пример кодирования
ПЗУ МК МПА АЛУ для реализации
микропрограммы операций
Приведем пример кодирования ПЗУ МК для реализации микропрограммы операций сложения и вычитания. Естественной адресацией МК будем считать выполнение МП по ложной ветви алгоритма, т.е. там, где значение логического условия равно 0. В приложении 19 приведена блок-схема алгоритма операции умножения при естественной адресации микрокоманд с тремя дополнительными операторами безусловного перехода, обозначенными кодом «БУ». В таблице 10.1 приведен фрагмент кода ПЗУ МК для хранения операции сложения/вычитания
Содержательная таблица микропрограммы
MK |
Адрес памяти |
x | адрес x | адрес перехода |
m1 |
Ai |
0 код y98 |
m2 |
Ai+1 |
0 код у92 |
m3 |
Ai+2 ++2100000010 |
0 код у93 |
m4 |
Ai+3 |
0 код у94 |
m5 |
Ai+4 |
0 код у95 |
m6 |
Ai+5 |
1 код x33 | Ai+9 |
m7 |
Ai+6 |
0 код у100 |
m8 |
Ai+7 |
0 код у97 |
mk |
Ai+8 |
0 код ук |
m9 |
Ai+9 |
0 код у99 |
m10 |
Ai+10 |
1 бп | Ai+6 |
Таблица 10.1 – Пример программы ПЗУ при естественной адресации микрокоманд.
Адрес памяти |
x |
A |
Y
| ||
00000000 |
0 00000 00000 00000 10100 00000 | |
00000001 |
0 00000 00000 10011 00000 00000 00000 | |
00000010 |
0 00000 00000 00000 10011 00000 | |
00000011 |
0 00000 00000 00000 00000 10011 | |
00000100 |
0 10100 00000 00000 00000 00000 | |
00000101 |
1 100001 00001001 | |
00000110 |
0 10101 00000 00000 00000 00000 | |
00000111 |
0 00000 00000 10100 00000 00000 | |
00001000 |
0 00000 00000 00000 00000 00000 | |
00001001 |
0 00000 00000 00000 00000 10100 | |
00001010 |
1 111111 00000110 | |
Примечание. Код безусловного перехода 111111
Приложение 20
Таблица 3 - Кодирования микроопераций и логических условий
Коды микроопераций |
Y1 |
Y2 |
Y3 |
Y4 |
Y5 |
00000 |
- |
- |
- |
- |
- |
00001 |
y0 |
y1 |
y2 |
y3 |
y4 |
00010 |
y5 |
y6 |
y7 |
y8 |
y9 |
00011 |
y10 |
y11 |
y12 |
y13 |
y14 |
00100 |
y15 |
y16 |
y17 |
y18 |
y19 |
00101 |
y20 |
y21 |
y22 |
y23 |
y24 |
00110 |
y25 |
y26 |
y27 |
y28 |
y29 |
00111 |
y30 |
y31 |
y32 |
y33 |
y34 |
01000 |
y35 |
y36 |
y37 |
y38 |
y39 |
01001 |
y40 |
y41 |
y42 |
y43 |
y44 |
01010 |
y45 |
y46 |
y47 |
y48 |
y49 |
01011 |
y50 |
y51 |
y52 |
y53 |
y54 |
01100 |
y55 |
y56 |
y57 |
y58 |
y59 |
01101 |
y60 |
y61 |
y62 |
y63 |
y64 |
01110 |
y65 |
y66 |
y67 |
y68 |
y69 |
01111 |
y70 |
y71 |
y72 |
y73 |
y74 |
10000 |
y75 |
y76 |
y77 |
y78 |
y79 |
10001 |
y80 |
y81 |
y82 |
y83 |
y84 |
10010 |
y85 |
y86 |
y87 |
y88 |
y89 |
10011 |
y90 |
y91 |
y92 |
y93 |
y94 |
10100 |
y95 |
y96 |
y97 |
y98 |
y99 |
10101 |
y100 |
y101 |
y102 |
y103 |
y104 |
10110 |
y105 |
y106 |
y107 |
y108 |
y109 |
10111 |
y110 |
y111 |
y112 |
y113 |
y114 |
11000 |
y115 |
y116 |
y117 |
y118 |
y119 |
11001 |
y120 |
y121 |
y122 |
y123 |
y124 |
11010 |
y125 |
y126 |
y127 |
y128 |
y129 |
11011 |
y130 |
y131 |
y132 |
y133 |
y134 |
11100 |
y135 |
y136 |
y137 |
y138 |
y139 |
Таблица 4 – Кодирование логических условий
000000 |
x0 |
010000 |
x16 |
100000 |
x32 |
000001 |
x1 |
010001 |
x17 |
100001 |
x33 |
000010 |
x2 |
010010 |
x18 |
100010 |
x34 |
000011 |
x3 |
010011 |
x19 |
100011 |
x35 |
000100 |
x4 |
010100 |
x20 |
100100 |
x36 |
000101 |
x5 |
010101 |
x21 |
100101 |
x37 |
000110 |
x6 |
010110 |
x22 |
100110 |
x38 |
000111 |
x7 |
010111 |
x23 |
100111 |
x39 |
001000 |
x8 |
011000 |
x24 |
101000 |
x40 |
Продолжение таблицы 4
001001 |
x9 |
011001 |
x25 |
101001 |
x41 |
001010 |
x10 |
011010 |
x26 |
101010 |
x42 |
001011 |
x11 |
011011 |
x27 |
101011 |
x43 |
001100 |
x12 |
011100 |
x28 |
101100 |
x44 |
001101 |
x13 |
011101 |
x29 |
101101 |
x45 |
001110 |
x14 |
011110 |
x30 |
||
001111 |
x15 |
011111 |
x31 |
11. Разработка функциональной схемы процессора
На основе спроектированных операционных автоматов, устройства управления разрабатываем функциональную схему процессора (приведена на схеме КП 230101.013.017.001.007 Э) Функциональная схема процессора является объединением названных операционных автоматов процессора и АЛУ, и устройства управления.