Министерство общего и профессионального образования
Российского Федерации
Курский государственный технический университет
Кафедра ВТ
Пояснительная записка к
курсовому проекту
по дисциплине «Организация ЭВМ»
Проектирование вычислительного устройства
Выполнил: студент группы ВМ-62 Ильин А.В.
Принял: доцент Жмакин А.П.
Курск 1999
Содержание 1.Введение 2. Задание 3. Разработка общей структуры ЦВМ 3.1. Общая структура ЦВМ 3.2. Форматы команд 3.3. Таблица микрокоманд 3.4. Операционный автомат центрального управляющего устройства. 3.5. Командный цикл. 4. Проектирование АЛУ 4.1 Графы микропрограмм сложения и вычитания, умножения, деления, логических операций (and, or, xor). 4.2 Синтез I – автомата 4.3 Синтез управляющего автомата с «программируемой» логикой4.4. Форматы микрокомманд
4.5. Кодирование ПЗУ МК.
5. Библиографический список 6. Приложение 1. ВведениеВ настоящее время существует две тенденции в проектировании средств вычислительной техники: во–первых, разработка устройств специализированных ЭВМ на основе микропроцессорных средств, во–вторых, реализация ЭВМ с использованием СБИС программируемых логических матриц, матриц программируемых логических элементов и базовых матричных кристаллов. Построение ЭВМ на СБИС связано не только с комплексированием микропроцессорных средств, что отражает первую тенденцию проектирования, но и с применением современных методов логического синтеза арифметико–логических и управляющих устройств, размещаемых на СБИС, а также методов оценки результатов проектирования.
Цель и задачи проектированияЦелью курсового проектирования является освоение методики проектирования и разработки операционных и управляющих устройств ЭВМ, а также подготовки технической документации на эти устройства. Курсовой проект является формой самостоятельной работы студентов. В период курсового проектирования студент должен закреплять, углублять, и умело применять теоретические знания для решения поставленных практических задач, работать с научно–технической литературой и конспектом лекций. Основное внимание при выполнении курсового проекта обращается на умение принимать технические решения и обосновывать их. Объектом курсового проектирования является специализированное вычислительное устройство, включающее процессор и запоминающее устройство. Процессор проектируется для заданного списка команд и должен удовлетворять заданным требованиям технического задания.
2.Задание Система команд АЛУ ЗУ УУ Д Адресность Формат Разр. бит Тип ОА Разр. бит Емк. Кбайт Тип УА Разрядность Способ адресации 1 AR, SI 16 M 8 16 ЖЛ 16 бит П, K3. Разработка общей структуры ЦВМ
3.1. Общая структура ЦВМ
Разрядность шины адреса (ША) вычисляем исходя из разрядности и емкости ЗУ.
Разрядность ЗУ=8бит =1байт. Т.о. можем адресовать 16/1= 214 бит. Т.е разрядность ША 14 бит.
16384x8
16x16
Структурная схема ЦВМ
Рис.1 Структурная схема ЦВМ
3.2. Форматы команд
Форматы выбираем из соображений, что регистров общего назначения (РОН) у нас 16.
В каждой команде должен быть зашифрован код операции (КОП), признак формата (ПФ) , а также признак адресации (прямая или косвенная П/О).
Отсюда:
формат AR
0 1 4 5 6 9 16
0 КОП ПО R1 Xформат SI
0 1 5 6 7
1 КОП IS
Считаем, что у нас 16 РОНов, включая регистр аккумулятор (А) с адресом 0000, поэтому для их адресации используем 4 бита.В поле признака адресации 1 – прямая адресация, 0 – косвенная, при чем, заметим, что в формате SI мы не используем прямую адресацию, так как это обусловлено самим форматом, а все остальные функции, как то – переходы, возврат из подпрограммы, работа с прерываниями и т.п. обуславливаются наличием “0” во втором бите.
3.3. Таблица микрокоманд
Формат КОП Команды Семантика 1. AR 0000 ADD A¬A+!R1 0001 SUB A¬A-!R1 0010 MUL A¬A*!R1 0011 DIV A¬A/!R1 0100 AND A¬A&!R! 0101 OR A¬AL!R1 0110 XOR A¬AÅ!R1 0111 MOV A,!R1 A¬!R1 1000 MOV !R1,A R1¬A 2.SI 0xxxx M(ADR),O1 M(ADR):=O1 10000 JMP PC¬ADR 10001 Z PC¬ADR 10010 PC¬ADR 10011 C PC¬ADR 10100 PC¬ADR 10101 OV PC¬ADR 10110 PC¬ADR 11000 RET SP:=SP+1 PCßM(SP) 11001 EI TI:=0 11010 DI TI:=1 11011 HLT ---- 11100 RETI 11101 NOP ---- 11110 CALL M(SP) ¬PC PC¬ADR SP:=SP-1Изначально указатель стека (SP) указывает на свободную ячейку памяти. Стек растет вниз.
ТI=0 – прерывание разрешено.
!R1 – указывает, что при методе косвенной адресации это выражение следует рассматривать как значение по адресу равному содержимому регистра R1, при этом при прямой адресации значение берется непосредственно из регистра R1.
3.4. Операционный автомат центрального управляющего устройства.
Граф-схема командного цикла операционного автомата приведена на чертеже КП.062.020.1999 в приложении.
Рис.2. Операционный автомат ЦУУ
3.5. Командный цикл.Задачей командного цикла является управление работой всего вычислительного устройства. Первым шагом является считывание операции из памяти, и модернизации счетчика команд на длину прочитанной операции. Затем если считанная операция предназначена для АЛУ, то в АЛУ передается код операции (КОП), а также во входные регистры АЛУ (ААЛУ, ВАЛУ) заносятся необходимые операнды. После этого необходимо подать сигнал АЛУ на выполнение операции и ожидать окончания работы арифметико–логического устройства. Если же операция не принадлежит к числу операций АЛУ их выполняет устройство управления (УУ). Операциями АЛУ являются: + (сложение), – (вычитание), * (умножение), / (деление), &(конъюнкция) , v(дизъюнкция), Å(сложение по модулю 2). Устройство управления выполняет операции: JMP(безусловный переход), CALL(вызов подпрограммы), RET(выход из подпрограммы), :=(операция присваивания), (шесть условных переходов по флагам с, z, ov).
4. Проектирование арифметико-логического устройства
4. 1 Разработка алгоритмов арифметико-логических операций
Разрядность АЛУ 16 бит.
Первый операнд находиться в регистре А, второй в регистре B, результат в регистре С. Разрядность А – 16 бит, В и С – 17. Считаем, что при умножении переполнения не происходит. Предполагаем, что имеем сумматор-вычитатель.
Флаги АЛУ: Z – признак 0, C – перенос, OV – переполнение.
4. 1. 1 Алгоритм сложения-вычитания
Рисунок 3
4. 1. 2 Алгоритм произведения
Для операции умножения в регистр A помещается множимое, в регистр B мнножитель, в регистре C произведение. Младшим считается 15 разряд.
Рисунок 4
4. 1. 3 Алгоритм деления
При выполнении операции деления в регистр A содержит делимое, B делитель, C остаток (частное). Ниже приведен алгоритм деления целых чисел без восстановления остатка.
Рисунок 5
4. 1. 4 Алгоритм логических операций
Алгоритм логических операций AND, OR, XOR приведен на рисунке 6.
Рисунок 6
4.2 Синтез I – автомата
В соответствии с методикой, изложенной в [3] получим:
Микрооперации используемые в микропрограммах +, -, /, * и логических операциях.
Y1 B(0):=ùB(0) Y15 C:=C+1 Y2 C:=A+B Y16 C(0):=1 Y3 C:=A+ùB+1 Y17 C:=A(1:15) Y4 ПП:=1 Y18 A(1:15):=B(2:16) Y5 C(0):=A(0) Y19 C:=C+ùA(1:15)+1 Y6 C:=B+ùA+1 Y20 C:=L1(C.0) Y7 C(0):=B(0) Y21 Сч:=0 Y8 Z:=0 Y22 B(1:16):=0 Y9 C:=0 Y23 B(1:16):=L1(1:16).ùC(0) Y10 Сч:=15 Y24 C:=B(1:15) Y11 C:=C+A(1:15) Y25 C:=B Y12 B(1:15):=R1(C(15).B(1:15)) Y26 C:=A&B Y13 C:=R1(O.C) Y27 C:=AÚB Y14 Сч:=Сч-1 Y28 C:=AÅB X1 B(0) X2 A(0)=B(0) X3 C(0) X4 A(0) X5 C(1..15)=0 сравн с 0 X6 B(15) X7 Сч=0 X8 B(1) X9 A(0)ÅB(0) X10 B(16) X11 А=0Разбиваем микрооперации на подмножества соответствующие внутренним словам ( регистрам).
YA={y18};
YB={y1,y12, y22, y23};
YC={ y2, y3, y5, y6, y7, y9, y11, y13, y15, y16, y17, y19, y20, y24, y25, y26, y27, y28};
YСЧ={ y10, y14, y21};
YПП={y4};
YZ={y8};
На полученных множествах выделяем классы эквивалентных микроопераций Knj.
KA,1={y18};
KB,1={y1}; KB,2={y12}; KB,3={y22}; KB,4={y23};
KC,1={y2, y3, y6, y11, y15, y19};KC,2={ y5, y7, y16};KC,3={y9}; KC,4={y24}; KC,5={y25}; KC,6={y26}; KC,7={y27}; KC,8={y28}; KC,9={y13}; KC,10={y17}; KC,11={y20}
KСЧ,1={y10}; KСЧ,2={y14}; KСЧ,3={y21}
KПП,1={y4};
KZ,1={y8}
Для KС1 составляем обобщенный оператор:
С:=А2+А1
где, и
Соответственно и для этого класса строим обобщенный оператор ( в принципе присваивание как таковое можно и не выделять в отдельный класс, но тут изменяется только один бит регистра С, следовательно мы можем мультиплексировать операции работающие непосредственно с этим битом):
C(0):=B1
Схема синтезированного автомата представлена на рисунке Приложения 2.
4.3 Синтез управляющего автомата с «программируемой» логикой
С учетом кодирования, можно перерисовать выше приведенные алгоритмы операций в объединеную блок-схему. Объединенная и закодированая ГСА приведена на рисунке 7.
Рисунок 7
Функциональная схема АЛУ представлена на чертеже КП.062.020.1999.Ф1.
4. 4 Форматы микрокоманд
Разобъем множество микроопераций Y, приведенных на рисунке 7, на три непересекающихся подмножества Y1, Y2, Y3.
Множество логических условий X, состоит из десяти элементов:
Исходя из результатов разбиений, можно сделать вывод о том, что кодирование микроопераций нужно выполнить пятиразрядным кодом, а кодирование логических условий четырехразрядным. Результаты кодирования приведены в таблице . Форматы микрокоманд на рисунке 8.
Y1 Y2 Y3 X 00000 yk # # 0000 # 00001 y1 # # 0001 x1 00010 y2 # # 0010 x2 00011 y3 # # 0011 x3 00100 y4 # # 0100 x4 00101 y5 # # 0101 x5 00110 y6 # # 0110 x6 00111 y7 # # 0111 x7 01000 y8 # # 1000 x8 01001 y9 # # 1001 x9 01010 # y10 # 1010 x10 01011 y11 # # 1011 x11 01100 y12 # # 1100 # 01101 # y13 # 1101 # 01110 # # y14 1110 # 01111 y15 # # 1111 1 10000 y16 # # 10001 y17 # # 10010 y18 # # 10011 y19 # # 10100 y20 # # 10101 # y21 # 10110 # # y22 10111 # y23 # 11000 y24 # # 11001 y25 # #Рисунок 8
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 Y1 Y2 Y3 1 X Адрес ´ ´ ´ ´ ´ ´ ´Таким образом, регистр микрокоманд выбираем разрядностью в два байта. Емкость ПЗУ МК составит 128 байт. На рисунке 9 приведена структура управляющего автомата с программируемой логикой.
Рисунок 9
4. 5 Кодирование ПЗУ МК
Приведем пример кодирования ПЗУ МК для операции сложения. Естественной адресацией МК будем считать выполнение МП по истиной ветви алгоритма (т.е. там, где значение логического условия равно 1). На рисунке 10 приведена ГСА операции умножения. В таблице приведен фрагмент кода ПЗУ МК для операции сложения.
Рисунок 10
Адрес Биты МК 0001 0010010101011111 0010 1011001000000000 0011 0010111111111111 0100 0011000110101110 0101 1011100100000000 0110 1100010000000000 0111 0011111111111111 1000 1100110100000000 1001 0100001111111111 1010 1010111000000000 1011 0010001111111111 1100 0000001111111111
5. Библиографический список
1. Баранов С.И. Синтез микропрограммных автоматов Л. Энергия, Ленингр. отд-ние,1974г–216с,.
2. Колосков В.А. Проектирование вычислительного устройства: методические указания к
курсовому проекту / КГТУ 1996г.
3. Майоров С.А., Новиков Г.И. Структура электронных вычислительных машин. – Л. Машиностроение. Ленингр. отд-ние, 1979. – 384 с.
6. Приложение