|
||||||||||||
|
||||||||||||
|
|||||||||
МЕНЮ
|
БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА - РЕФЕРАТЫ - Блок целочисленной арифметикиБлок целочисленной арифметикиГосударственный комитет Российской Федерации по высшему образованию Казанский Государственный Технический Университет имени А. Н. Туполева ---------------------------------------------------------------------------- ------------------ Кафедра электронно-вычислительных машин Пояснительная записка к курсовой работе по дисциплине “Процессоры” Тема: Блок целочисленной арифметики. Студент: Базуев Ю.А. , гр. 4301 Руководитель: Бикмухаметов Р.Р. Оценка______________________ Дата защиты__________________ Подпись руководителя__________ Казань 1996 Cодержание 1. Задание..................................................................... ...........................3 2. Алгоритм.................................................................... .........................4 2.1. Алгоритм умножения................................................................... 4 2.2. Алгоритм деления..................................................................... ....4 3. Операционная схема и микропрограмма выполнения операций......5 4. Функциональная схема операционной части устройства..................8 5. Функциональная схема управляющей части....................................11 6. Принципиальная схема управляющей части....................................13 7. Таблица микрокоманд................................................................. .....15 8. Литература.................................................................. ......................16 2. Алгоритм операций 2.1. Алгоритм умножения Eдоп*Fдоп=Gдоп Перед началом операции в RG1=Fдоп ; RG2=0 ; RG3=Eдоп Знаки сомножителей участвуют в операции наравне с остальными разрядами, а это значит что Eдоп и Fдоп перемножаются как обычные (m+1) разрядные целые числа без знака. При этом знак Едоп участвует для того чтобы СЧП (сумма частичных произведений) в RG2 формировалась в доп. коде. Знак Fдоп участвует для того чтобы произведение формировалось в двойном формате. В каждом из (m+1) циклов умножения производятся действия: 1) Eдоп прибавляется к RG2 если P4=1; 1 2) RG2, RG1, Tзн при сдвиге вправо необходимо сохранять представление СЧП в доп. коде, а это значит что слева нужно вводить 0, если число =>0 и 1, если число < 0. 2.2. Алгоритм деления Gдоп/Eдоп=Fдоп а) устанавливаем начальные значения регистров и триггеров б) сдвигаем делимое на 1 разряд влево в) анализируем знаки Gi-1 и E. Если одинаковы то вычитаем E из GR2. Если разные то + E к RG2 г) анализируем знаки Gi и E, если одинаковые то цифра частного =1 д) анализируем ТФ, если ТФ=1 выполняем проверку на ПРС 2-го этапа е) уменьшаем значение счетчика циклов ж) если счетчик не = 0 то переходим на пункт б) з) передаем частное в RG1 и) корректируем частное к) выдаем частное на выходную шину 3. Операционная схема и микропрограмма выполнения операций В соответствии с алгоритмом строим ОС (рис. 1) , определяем требуемый набор МО и граф МП (рис. 2) , считая что в RG3 выполняется однотактным способом (по входам D триггеров RG2) по сигналу у4; в RG1 - двухтактным способом (по входам R и S) по сигналам у6 и у7. В ОС на Рис. 1 использованы следующие обозначения: Тпп - триггер переполнения Тпер - триггер переноса Тзн1 - триггер знака множимого, флаговый триггер при делении Тзн2 - триггер знака Gi-1 Тзн3 - триггер знака делимого Х(8:0) - входная шина Z(8:0) - выходная шина В МП на Рис. 2 введены 15 осведомительных сигнала: Р1 = RG3(8) Р10 = Р1 Е Р3 Р2 = a Р11 = Р3 Е Р1 Р3 = RG2(8) P12 = P6 Е Р5 Р9 = RG2(7) Е RG2(6) P13 = P1 Tзн2 v P1 Tзн2 P4 = 1 (CT=0) P14 = Tпер Р5 = RG1(0) Р15 = Тзн1 Р6 = Р1 Tзн2 v Tзн2 Р1 Р7 = 1 (RG2(8:0)=0) Р8 = Тзн3 a - внешний сигнал определяющий вид операции ( 0 - умножение ; 1 - деление ) а также 17 импульсных управляющих сигналов: у1: { RG2=RG2(8:0).RG1(8); у10: Тпп=1 RG1=RG1(7:0).0 } у11: RG2=RG1 y2: RG2=RG2+RG3+1 y12: RG2=RG2+1 y3: RG2=RG2+RG3 y13: Z=RG2 y4: RG3=X y14: { RG1=RG2(0).RG1(8:1); y5: { RG2=X ; Tзн1=1 } Tзн1=RG1(0) } y6: { RG1=X; Tзн3=P3; Tпп=0; y15: RG2=0.RG2(8:1) СТ=9; Тпер=0; } y16: RG2=1.RG2(8:1) y7: RG1(0)=1 y17: RG2=0 y8: Тзн1=0 у9: СТ=СТ-1 Z(8:0) у13 Р15 Р5 зн RG1 1 1 Тзн1 8 7 0 у6 у1 у14 у7 Р2 Р3 у18 Тзн2 зн 1 1 8 7 6 RG2 0 у16 у5 у1 у15 ,у16 Р14 Тпер зн KSM у2 , у12 8 7 0 P1 у3 у2 зн 8 7 RG3 0 у4 Х(8:0) Р4 ПРС Р8 СТ Тпп Тзн3 Рис. 1. начало 2 a 0 1 5 y6 6 y17 1 9 0 0 2 11 3 P5 1 1 10 y3 7 0 0 15 0 P3 P14 1 1 1 1 12 0 8 P1 9 1 0 4 y16, y14, y9 y15, y14, y9 3 1 3 1 1 2 0 P4 7 0 1 8 0 1 P15 2 1 3 1 y2 13 11 8 1 13 y13 1 0 1 12 y11 0 8 0 0 3 1 10 у13 конец Рис. 2. 4. Функциональная схема операционной части устройства На Рис. 3. представлена функциональная схема операционной части (ОЧ) на регистрах и мультиплексорах. В схему из УЧ подаются 15 импульсных управляющих сигналов с длительностью, равной 50 нс, причем часть управляющих сигналов ( у2 , у3 , у12 ) подаются на входы синхронизации регистров и одновременно участвуют в формировании сигналов на информационных входах триггеров с помощью различных комбинационных схем. Следовательно, во-первых, если время задержки упомянутых комбинационных схем превышает значение 50 нс, то схемой пользоваться нельзя, так как к моменту переключения триггеров сигналы на их информационных входах не успеют сформироваться. Например, сигнал у3 должен иметь длительность, достаточную для того, чтобы успели сработать элементы 2,3 и4 ступеней схемы, иначе в момент окончания у4 в RG2 зафиксируется неправильный результат. Таким образом, в данной схеме длительность сигналов МО должна определяться по времени выполнения самой длительной МО, которое при заданной элементной базе превышает заданное значение. Во-вторых, так как сигналы на входах “С” и “D” триггеров RG2 при выполнении у2 , у3 и у12 оканчиваются одновременно (без учета задержек сигналов в комбинационных схемах), то триггеры могут не переключиться требуемым образом из-за возможной “игры фронтов” на входах “С” и “D”. Для решения указанных проблем с целью повышения быстродействия и надежности схемы разобьем все МО на 2 группы. В первую группу выделим МО у2 , у3 и у12 , связанные не только с переключением триггеров по входам синхронизации, но и с формированием сигналов на информационных входах этих триггеров. Во вторую все остальные МО, для выполнения которых достаточны импульсные управляющие сигналы с длительностью равной 50 нс. Как правило, в эту группу входят действия, связанные с переключением триггеров по асинхронным входам, либо по входам синхронизации, если сигналы на информационных входах триггеров при этом не меняются. Для выполнения МО 1-ой группы необходимы дополнительные потенциальные управляющие сигналы (сигналы с длительностью, не меньшей такта Т) , называемые микроприказами. Тогда импульсные управляющие сигналы подаются лишь на входы синхронизации триггеров, а формирование сигналов на информационных входах этих триггеров осуществляется с помощью микроприказов, которые должны поступать в схему ранее и заканчиваться позднее сигналов на входах синхронизации триггеров. В управляющей части с программируемой логикой микроприказы формируются с помощью разрядов операционного поля микрокоманы, считываемой из управляющей памяти. Обозначим эти разряды и соответствующие им микроприказы через МК(j) , где j = 0 , 1 , 2 , ... Если использовать три микроприказа, то схема Рис.3. преобразуется к виду, представленному на Рис.4 (без цепей записи со входной шины, без триггеров Тпп , Тзн3 , счетчика циклов и цепи выдачи на выходную шину). Здесь: во-первых, отсутствует триггер переноса, так как при использовании микроприказов сигнал переноса на выходе KSM становится потенциальным, и необходимость в его запоминании отпадает. Во-вторых, сигналы у15 , у16 , у5 поступающие на один и тот же вход сдвига вправо RG2 , заменен одним сигналом у5 . С целью упрощения ОЧ устройства заменим 2, 3 ступени схемы на Рис. 4. арифметико-логическим устройством (АЛУ). Тогда количество микроприказов увеличится до 5. Функциональная схема ОЧ устройства, в которой применяется АЛУ, представлена на Рис. 5. Здесь АЛУ используется для выполнения трех действий, определяемых таблицей 1. Таблица 1. |S3|S2|S1|S0| F` | |0 |0 |0 |0 | A` + C0 | |0 |0 |0 |1 | A` + B` + C0 | |0 |1 |1 |0 | A` - B` - C0 | В таблице А` и B` - значения операндов, поступающих в АЛУ, F` - значение результата, формируемого на входах АЛУ; С0 - значение сигнала на входе переноса младшего разряда АЛУ. В соответствии с таблицей 1 в схеме Рис 5. использованы пять микроприказов: МК(0) - S0 , MK(1) - S1 , MK (2) - S2 , MK(3) - C0 , MK(4) - вход данных вдвигаемых при сдвиге вправо на RG2. Работа схемы определяется МП, представленной на Рис. 6. Список используемых импульсных сигналов: у1: { <RG2=\/ ; у10: Тпп=1 <RG1=\/ ; C Тзн2=/\ } у11: RG2=0 y2: С RG2=\/ y12: Z=RG2 y3: { >RG2=\/ ; >RG1=\/ } y4: RG3=X y5: RG2=RG1; y6: { RG1=X; Tзн3=P3; Tпп=0; Тзн1=1; СТ=9; } y7: RG1(0)=1 y8: Тзн1=0 у9: СТ=СТ-1 9 X(8 : 0) RG3 MS KSM 0 MS D RG2 D RG1 D 0 1 < > 0 < > 0 2 D< 1 D< 1 1 3 y16 D> D> y17 R 8 y7 S0 8 A C y6 C A0 > y14 > y4 C C П9 y5 A1 y1 < y1 < 1 y5 y3 1 D Tпер у15 D Tзн2 D Tзн1 y2 C Р14 у16 1 Р2 у6 R у5 у1 С у14 С 1 y12 1 y11 y13 E <9> 0 ST 1 1 P4 1 2 P7 3 y6 R Тпп ПРС P3 D Tзн3 P8 ... y6 ЕI y9 -1 y10 S y6 С Рис. 3. МК(2) RG3 MS KSM 0 MS D RG2 D RG1 D 0 1 < > 0 < > 0 2 D< 1 D< 1 1 3 МК(3) D> D> y17 R 8 y7 S0 8 A У2 C y6 C A0 У5 > y5 > y4 C C П9 y5 A1 y1 < y1 < Р14 МК(0) D Tзн2 D Tзн1 МК(1) 1 Р2 у1 С у5 С у5 Рис. 4. RG3 S3 АЛУ 0 MS D RG2 D RG1 D MK(2) S2 F 1 < > 0 < > 0 MK(1) S1 2 D< 1 D< 1 MK(0) S0 3 МК(4) D> D> A` P14 y11 R 8 y7 S0 8 B` C9 У2 C y6 C MK(3) C0 A0 У3 > y3 > y4 C M y3 A1 y1 < y1 < y5 1 y3 D Tзн2 D Tзн1 Р2 у1 С у3 С 1 D T y3 y1 1 C Рис. 5. 5. Функциональная схема управляющей части Функциональная схема УЧ устройства представлена на Рис. 8 и включает следующие основные части: триггер запуска (Тзап), управляющую память (УП), регистр адреса МК (RGAMK), схему формирования управляющих сигналов МО у1 - у12 , основу которой составляет дешифратор МК (DCMK), мультиплексор логических условий (MS) и триггер ошибки (Тош), который устанавливается в 1 при обнаружении ошибки в МК, считываемой из УП. Исходя из количества вершин в графе МП на Рис. 6 и ее сложности, определим ориентировочно количество ячеек в УП, равным 3 сегментам по 16 ячеек в каждом. Формат МК, записываемой в ячейке УП, приведен на Рис. 7. MK Y XvSнов A` B 0 1 2 3 4 Q1 Q2 Q3 Q4 W P к.р Рис. 7 Здесь старшие 9 разрядов образуют операционное поле МК. В первых 5 разрядах кодируются горизонтальным способом микроприказы МК(0 - 4), начало 4 a 0 1 2 y6 6 y11 1 9 0 0 МК(1,2),2 11 МК(0),2 P5 1 1 10 МК(0),у2 7 0 0 15 0 P3 P14 1 1 1 1 12 0 8 P1 9 1 0 4 МК(4), y3, y9 y3, y9 3 1 МК(0),2 1 МК(1,2),2 0 P4 7 0 1 8 0 1 P15 МК(1,2),2 1 МК(0),2 1 МК(1,2), у2 12 5,2 8 1 13 y12 1 0 1 МК(3),2 у2, у5 0 8 1 0 1 1 0 3 1 у12 10 конец Рис. 6. в следующих 4-х разрядах ( Q1, Q2, Q3, Q4) кодируются вертикальным способом МО. В них фиксируется номер совокупности импульсных управляющих сигналов МО, входящих в данную МК. В МП на Рис. 6 входят 12 таких совокупностей сигналов. Обозначим их как: Y1=y2 , Y2=y6 , Y3=y1 , Y4=y7 , Y5=y8 , Y6=y9 , Y7={y5 , y2} , Y8=y10 , Y9=y12 , Y10=y4 , Y11=y11 , Y12={y3 , y9}. Адресное поле МК включает 4-х разрядное поле Х, в котором фиксируется номер логического условия Рi (i=1-15), и 4-х значное поле адреса МК А=А`В где В - младший разряд адреса. При формировании адреса следующей МК значение проверяемого условия Рi подставляется в младший разряд адреса А. Также есть разряд W по которому производится останов МП, и разряд межсегментного перехода Р, при единичном значении которого производится межсегментный переход, адрес нового сегмента берется в поле Х. Последний разряд в МК является контрольным разрядом проверки на четность. В целом схема на Рис. 8 работает следующим образом. По сигналу “Запуск” в RGAMK фиксируется начальный адрес = 0. При этом на выходах УП с задержкой, равной времени чтения информации из УП, формируются разряды МК, записанной по данному адресу. Одновременно по сигналу “Запуск” Тзап устанавливается в 1, и в схему УЧ начинают циклически поступать сигналы z1 , z2. По сигналу z1 в ОЧ поступают импульсные управляющие сигналы , по z2 в регистр RGAMK записывается адрес следующей ячейки памяти. 6. Принципиальная схема управляющей части Принципиальная схема построена на основе общей шины в которую вводятся все входные и выходные сигналы. Триггеры Тзап , Тош и Т реализованы на микросхеме ТВ9, RGAMK и GRSEG на микросхемах ТМ8, MS - на КП1, схема М2 на 2-х элементах ИП5 и микросхеме ЛП5, схема формирования импульсных сигналов на дешифраторе ИД3, УП - на пяти элементах ПЗУ РТ4. ош ошибка 0 RG С & S Тош 1 SEG 0 к.р. ___ Р 1 М2 ОШ R & C R ОШ A УП ... запуск 0 RG 0 1 J Tзап 1 AMK 1 С C А`` 2 2 остан K 3 3 сброс C R R В 0 MS & 1 Р1 1 R Z2 A`` ... T & Р15 15 & D A & C & C Z1 Р остан 0 0 у1 ___ 2 DC 1 схема у2 ОШ 4 MK ... формир. ... 8 у1 - у12 MK(4) 15 у12 MK(3) MK(2) C MK(1) MK(0) Рис. 8. 7. Таблица микрокоманд |адрес | | | | | |Примеч | | | |МК |Q |WP|XvS|A` |МК |ЛУ | |ячейки| | | | |B | | | |00 |0000|1010|00|001|001| у4 | | |0000 |0 | | |0 |0 | |Р2 | | |0000|0000|00|111|110| | | |0001 |0 | | |1 |0 | |Р15 | | |0000|0010|00|000|010| у6 | | |0010 |0 | | |0 |0 | | | | |0000|0001|00|000|111| у2 | | |0011 |0 | | |0 |1 | | | | |0000|1010|00|010|011| у11 | | |0100 |0 | | |1 |0 | |Р5 | | |0000|0111|00|000|111| у2, | | |0101 |0 | | |0 |0 |у5 | | | |0000|0000|00|001|100| | | |0110 |0 | | |1 |0 | |Р3 | | |1000|0001|00|001|100|МК(0), | | |0111 |0 | | |1 |0 |у2 |Р3 | | |0000|0000|00|111|101| | | |1000 |0 | | |0 |0 | |Р14 | | |0000|0000|00|000|101| | | |1001 |0 | | |1 |0 | |Р1 | | |0000|1100|00|010|000| у3, у9 | | |1010 |0 | | |0 |0 | |Р4 | | |0000|1100|00|010|000|МК(4),у3| | |1011 |1 | | |0 |0 |,у9 |Р4 | | |0000|1001|00|000|010| | | |1100 |0 | | |0 |1 |у12 | | | |0110|0001|00|000|110|МК(1,2),| | |1101 |0 | | |0 |0 |у2 | | | |0000|1001|10|000|000| | | |1110 |0 | | |0 |0 |у12 |остано| | | | | | | | |в | | |0000|0010|01|000|000| |межс.Б| |1111 |0 | | |1 |0 |у6 |П | |01 |0000|0000|00|100|001| | | |0000 |0 | | |1 |0 | |Р9 | | | | | | | | | | |0001 | | | | | | | | | |0000|0011|00|101|010| | | |0010 |0 | | |1 |0 |у1 |Р11 | | |0000|1000|10|000|000| | | |0011 |0 | | |0 |0 |у10 |остано| | | | | | | | |в | | |0110|0001|00|101|011|МК(1,2),| | |0100 |0 | | |0 |0 |у2 |Р10 | | |1000|0001|00|101|011|МК(0), | | |0101 |0 | | |0 |0 |у2 |Р10 | | |0000|0100|00|011|100| у7| | |0110 |0 | | |1 |0 | |Р15 | | |0000|0000|00|011|100| | | |0111 |0 | | |1 |0 | |Р15 | | |0000|0110|00|010|101| у9| | |1000 |0 | | |0 |0 | |Р4 | | |0000|0000|00|110|110| | | |1001 |0 | | |0 |0 | |Р12 | | |0000|0000|00|000|001| | | |1010 |0 | | |0 |0 | |БП | | |0000|0000|00|001|110| | | |1011 |0 | | |1 |0 | |P3 | | |0000|1001|01|001|000| | | |1100 |0 | | |0 |1 |y12 |межс.Б| | | | | | | | |П | | |0000|0000|00|000|111| | | |1101 |0 | | |1 |0 | |P1 | | |1000|0001|01|001|000| |межс.Б| |1110 |0 | | |0 |0 |МК(0),у2|П | | |0110|0001|01|001|000|МК(1,2),|межс.Б| |1111 |0 | | |0 |0 |у2 |П | |10 |0000|0000|00|011|001| | | |0000 |0 | | |1 |0 | |Р7 | | |0000|0111|00|100|100| | | |0001 |0 | | |0 |0 |у5, у2 |Р8 | | |0000|0000|00|100|010| | | |0010 |0 | | |0 |0 | |Р8 | | |0000| |01|000|110| у |межс.Б| |0011 |0 | | |1 |0 | |П | | |0000|0000|01|000|110| |межс.Б| |0100 |0 | | |1 |0 | |П | | |0000|0000|00|000|011| | | |0101 |0 | | |1 |0 | |Р1 | | |0110|0001|01|000|110|МК(1,2),|межс.Б| |0110 |0 | | |1 |0 |у2 |П | | |1000|0001|01|000|110|МК(0),у2|межс.Б| |0111 |0 | | |1 |0 | |П | | |0000|0000|00|000|101| | | |1000 |0 | | |1 |0 | |Р1 | | |0000|0000|00|110|101| | | |1001 |0 | | |1 |0 | |Р13 | | |0000|0000|00|100|110| | | |1010 |0 | | |0 |0 | |Р8 | | |0001|0001|00|100|110|МК(3), | | |1011 |0 | | |0 |0 |у2 |Р8 | | |0000|1001|10|000|000| у12 | | |1100 |0 | | |0 |0 | |остано| | | | | | | | |в | | |0000|0000|00|000|111| | | |1101 |0 | | |1 |0 | |Р1 | | |0000|1001|10|000|000| у12 |остано| |1110 |0 | | |0 |0 | |в | | |0000|0000|01|001|000| |межс.Б| |1111 |0 | | |1 |0 | |П | |11 |0000|0000|00|001|001| | | |0000 |0 | | |1 |0 | |Р3 | | | | | | | | | | |0001 | | | | | | | | | |0000|1001|10|000|000| у12|остано| |0010 |0 | | |0 |0 | |в | | |0000|1000|10|000|000| у10|остано| |0011 |0 | | |0 |0 | |в | Литература 1. Курс лекций по предмету “Процессоры” 2. Карцев М.А. Арифметика цифровых машин. М. “Наука” 1969 3. Шило В.Л. Популярные цифровые микросхемы. М. “Радио и связь” Спецификация |№ |Обозначение |Кол. |Адрес | |1 |К155ЛИ4 | 1 | DD1 | |2 |К155ЛИ6 | 1 | DD2 | |3 |К155ЛЛ1 | 1 | DD3 | |4 |К155ТВ9 | 2 | DD4, DD5 | |5 |К155ТМ8 | 2 | DD6, DD7 | |6 |К556РТ4 | 5 | DD8 - DD12 | |7 |К155ИП5 | 2 | DD13, DD14 | |8 |К155ЛП5 | 1 | DD15 | |9 |К155КП1 | 1 | DD16 | |10 |К155ЛИ1 | 1 | DD17 | |11 |К155ИД3 | 1 | DD18 | |12 |К155ЛН1 | 2 | DD19, DD20 | |
РЕКЛАМА
|
|||||||||||||||||
|
БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА | ||
© 2010 |