Реферат: Линейное программирование симплекс-методом Данцига - текст реферата. Скачать бесплатно.
Банк рефератов, курсовых и дипломных работ. Много и бесплатно. # | Правила оформления работ | Добавить в избранное
 
 
   
Меню Меню Меню Меню Меню
   
Napishem.com Napishem.com Napishem.com

Реферат

Линейное программирование симплекс-методом Данцига

Банк рефератов / Программирование

Рубрики  Рубрики реферат банка

закрыть
Категория: Реферат
Язык реферата: Русский
Дата добавления:   
 
Скачать
Архив Zip, 122 kb, скачать бесплатно
Заказать
Узнать стоимость написания уникального реферата

Узнайте стоимость написания уникальной работы

Содержание 1. Постановка задачи 2. Форматы команд и их кодировка 3. Структурная схема процессора 4. Регистры 5. АЛУ 6. Формат микрокоманд 7. Микрокод 8. Кодировка микрокода 9. Примеры выполнения команд 10. Основные сигналы и регистры процессора 11. Примеры программ 12. Определение производительности Постановка задачи Синтезировать структуру простого магистрального процессора с одним АЛУ, выполняющего 8 заданных команд. Разработать форм ат команд, кодировку команд. Разработать структурную схему процессора, ф ункциональные схемы всех блоков процессора, функциональную схему проц ессора в целом с указанием всех шин и управляющих сигналов. Разработать формат микрокоманд, организацию управ ления всеми устройствами процессора, микрокод для каждой из заданных ко манд. Привести примеры выполнения каждой команды с указанием значения в сех основных сигналов и содержимого основных регистров на каждом такте. Привести 2 примера небольших программ с указанием значения основных сиг налов и содержимого основных регистров на каждом такте. Определить максимальную тактовую частоту процессора. Определить произ водительность процессора в операциях в секунду (IPS), а также выраженную в ч исле выполняемых тестовых программ в секунду. Указать способы повышени я производительности процессора. Характеристика процессора Простой процессор магистрального типа с одноблочным универсальным АЛУ . Разрядность регистров РОН и АЛУ процессора - 8 бит. Число РОН - 4. Адресуемая память - 256 слов. Устройство управления - микропрограммное с ПЗУ микропрограмм. Способ выполнения команд – последовательное выполнение или JMP или JC . Адресация памяти - прямая. Арифметика в дополнительном коде. Вариант: 54 = « 2 2 2 3» Без использования непосредственной адресации. 3х-адресные команды. Операции АЛУ: NOP, ADD + SHRA, NAND. Состав команд : LD, ST, ADD, SHR + JC, DEC, SUB, NAND. Форматы команд и их кодиро вка Коды команд КОП Команда Действие 000 ADD Rx,Ry,Rz Rx=Ry+Rz сложение 001 NAND Rx,Ry,Rz Rx=!(Ry&Rz) И-НЕ 010 SHR Rx,Ry Rx=Ry/2 арифметический сдвиг вправо 011 JC address jmp on carry условный переход по переносу 100 DEC Rx,Ry Rx=Ry-1 декремент (уменьшение на 1) 101 SUB Rx,Ry,Rz Rx=Ry-Rz вычитание 110 LD Rx,address Rx=Mem(address) загрузка из ОЗУ в регистр 111 ST Ry,address Mem(address)=Rx запись из регист ра в ОЗУ Формат команд ADD Rx,Ry,Rz КОП Rx Ry Rz не используется 0 0 0 x x y y z z NAND Rx,Ry,Rz КОП Rx Ry Rz не используется 0 0 1 x x y y z z SHR Rx,Ry КОП Rx Ry не используется 0 1 0 x x y y JC address КОП не использ. address 0 1 1 a a a a a a a a DEC Rx,Ry КОП Rx Ry не используется 1 0 0 x x y y SUB Rx,Ry,Rz КОП Rx Ry Rz не используется 1 0 1 x x y y z z LD Rx,address КОП Rx не исп. address 1 1 0 x x a a a a a a a a ST Rx,address КОП не исп Ry address 1 1 1 y y a a a a a a a a Структурная схема процессора Регистры Номер При записи (по шин е С) При чтении (по шине A и B ) 000 0 Rg 0 программно-доступные рег истры Rg 0 программн о-доступные регистры 001 1 Rg1 Rg1 010 2 Rg2 Rg2 011 3 Rg3 Rg3 100 4 Temp0 Temp0 101 5 PC PC 110 6 IR _ HI (старшая часть IR ) IR конст анта 1 111 7 IR _ LO (младшая часть IR ) IR_LO При чтении старшей части регистра команд, на шину A или B поступает единичная констант а (00000001). Это вполне допустимо, т.к. старшая часть регистра команд имеет свои в ыходы из блока регистров: (КОП, Rx , Ry , Rz ). Младшая часть регистра ко манд поступает на шины A или B в неи зменном виде, т.к. в некоторых командах процессора в младшей части регист ра команд находиться 8-битный адрес. Единичная константа применяется при инкрементировании счетчика команд, а также для получения константы -1 = 11111111 (см. микрокод для команды DEC ). Разрядность РОН (регистры общего назначения) – 8 бит Разрядность PC ( program counter ) – 8 бит Разрядность IR (регист р команд) – 16 бит (доступно два регистра по 8 бит) АЛУ Структурная схема АЛУ и его связь с другими блоками машины показаны на рисунке. В состав АЛУ входят регистры Рг1 - Рг7, в которых обрабатывается информация , поступающая из оперативной или пассивной п амяти N1, N2, ...NS; логические схемы, реализующие обработку слов по микрокоманда м, поступающим из устройства управления. Закон переработки информации задает микропрограмма , которая записыва ется в виде последовательности микрокоманд A1,A2, ..., Аn-1,An. При этом различают д ва вида микрокоманд: внешние, то есть такие микрокоманды, которые поступ ают в АЛУ от внешних источников и вызывают в нем те или иные преобразован ия информации (на рис. 1 микрокоманды A1,A2,..., Аn), и внутренние, которые генериру ются в АЛУ и воздействуют на микропрограммное устройство, изменяя естес твенный порядок следования микрокоманд. Например, АЛУ может генерирова ть признаки в зависимости от результата вычислений: признак переполнен ия, признак отрицательного числа, признак равенства 0 всех разрядов числ а др. На рис. 1 эти микрокоманды обозначены р1, p2,..., рm. Результаты вычислений из АЛУ передаются по кодовым шинам записи у1, у2, ...,уs, в ОЗУ. Функции регистров, входящих в АЛУ: Рг1 - сумматор (или сумматоры) - основной регистр АЛУ, в котором образуется р езультат вычислений; Рг2, РгЗ - регистры слагаемых, сомножителей, делимого или делителя (в завис имости от выполняемой операции); Рг4 - адресный регистр (или адресные регистры), предназначен для запоминан ия (иногда и формирования) адреса операндов и результата; Ргб - k индексных регистров, содержимое которых используется для формиро вания адресов; Рг7 - i вспомогательных регистров, которые по желанию программиста могут б ыть аккумуляторами, индексными регистрами или использоваться для запо минания промежуточных результатов. Формат микрокоманд MIR – Microinstruction register – регистр микрокоманд (24 bit) A A MUX B B MUX C C MUX RD WR ALU COND JMP ADDRESS A , B , C – номер регистра для осуществления чтения ( A , B ) ил и записи ( C ) A MUX , B MUX , C MUX – откуда брать номер реги стра (0 – из команды IR , 1 – из микрокоманды MIR ) RD – чтение из ОЗУ При этом адрес памяти берется с шины А, а результат подается на шину С WR – запись в ОЗУ При этом адрес памяти берется с шины А, а данные - с шины B ALU – код операции АЛУ КОП АЛУ Операция АЛУ 00 NOP 01 ADD 10 SHRA 11 NAND COND – условие для опре деления адреса следующей выполняемой микрокоманды COND Куда переходим 00 NEXT на следующую микрокоманду 01 DECODE декодирование команды, Address = [ KOP ]100 10 JMP безусловный переход 11 JC условный переход по переносу ( Carry Flag ) JMP ADDRESS – адрес в памяти микропрогр амм, куда осуществляется переход Микрокод Адрес Микрокоманда П ояснение 0 1 2 3 IR_HI = NOP(PC); READ PC = ADD(PC, IR_HI) IR_LO = NOP(PC); READ DECODE чтение старшего слова команды переход к следующему слову ( PC = PC + 1) чтение младшего слова команды декодирование считанной команды ADD Rx, Ry, Rz 4 Rx = ADD(Ry, Rz); JMP 62 сложение содержимого регистров NAND Rx, Ry, Rz 12 Rx = NAND(Ry,Rz); JMP 62 И-НЕ для содержимог о регистров SHR Rx, Ry 20 Rx = SHR(Ry); JMP 62 арифметич. сдвиг с одержимого регистра JC address 28 29 30 Temp0 = NOP(Temp0); JC 30 JMP 62 PC = NOP(IR_LO); JMP 0 организация условного перехода если условие не выполнилось, то завершить иначе записать в PC нов ый адрес из IR _ LO DEC Rx, Ry 36 37 38 Temp0 = SHR(IR_HI) Temp0 = NAND(Temp0, Temp0) Rx = ADD(Ry,Temp0); JMP 62 Temp0 = 0 (00000001 00000000) Temp0 = -1 (11111111) Rx = Ry + Temp0 = Ry + (-1) SUB Rx, Ry, Rz 44 45 46 47 48 Temp0 = SHR(IR_HI) Temp0 = ADD(Temp0, Rz) Temp0 = NAND(Temp0, Temp0) Temp0 = ADD(Temp0, IR_HI) Rx = ADD(Ry, Temp0); JMP 62 Temp0 = 0 (00000001 00000000) Temp0 = 0 + Rz = Rz инвертировать Temp0 = Rz Temp0 = ( ! Rz) + 1 Rx = Ry + (-Rz) LD Rx, address 52 Rx = NOP(IR_LO); READ; JMP 62 чтение из ОЗУ (шина A – адрес) ST Ry, address 60 61 Temp0 = NOP(Ry) Temp0 = NOP(IR_LO, Temp0); WRITE; JMP 62 Temp 0 = Ry (данные на шину B ) запись в ОЗУ (шина A – адрес, шина B - данные) End : 62 PC = ADD(PC, IR_HI); JMP 0 увеличение счетчика команд ( PC = PC +1) Кодировка микрокода DEPTH = 64; % количес тво слов % WIDTH = 24; % размер с лова в битах % ADDRESS _ RADIX = DEC ; % система счисления для а дреса % DATA _ RADIX = BIN ; % система счисления для данных % CONTENT BEGIN [0..63] : 0; % по умолчанию везде нули % % Инициализация % 0: 10 1100011101100000000000; % IR_HI = NOP(PC); READ % 1: 1011110110110001000000 00; % PC = ADD(PC, IR_HI) % 2: 1011 00011111100000000000; % IR_LO = NOP(PC); READ % 3: 000100011001000001000000; % DECODE % % ADD Rx, Ry, Rz % 4: 000000000000000110111110; % Rx = ADD(Ry, Rz); JMP 62 % % NAND Rx, Ry, Rz % 12: 000 000000000001110111110; % Rx = NAND(Ry,Rz); JMP 62 % % SHR Rx, Ry % 20: 00 0000000000001010111110; % Rx = SHR(R y); JMP 62 % % JC address % 28: 10 0110011001000011011110; % Temp0 = NOP(Temp0); JC 30 % 29: 100 110011001000010111110; % JMP 62 % 30: 111110011011000010000000; % PC = NOP(IR_LO); JMP 0 % % DEC Rx, Ry % 36: 1101000110010 01000000000; % Temp0 = SHR(IR_HI) % 37: 100 110011001001100000000; % Temp0 = NAND(Temp0, Temp0) % 38: 000 010010000000110111110; % Rx = ADD(Ry,Temp0); JMP 62 % % SUB Rx, Ry, Rz % 44: 110100011001001000000000; % Temp0 = SHR(IR_HI) % 45: 100100001001000100000000; % Temp0 = ADD(Temp0, Rz) % 46: 100110011001001100000000; % Temp0 = NAND(Temp0, Temp0) % 47: 100111011001000100000000; % Temp0 = ADD(Temp0, IR_HI) % 4 8: 000010010000000110111110; % Rx = ADD(Ry, Temp0); JMP 62 % % LD Rx, address % 5 2: 111100010000100010111110; % Rx = NOP(IR_LO); READ; JMP 62 % % ST Ry, address % 60: 000000011001000000000000; % Temp0 = NOP(Ry) % 61: 111110011001010010111110; % Temp0 = NOP(IR_LO, Temp0); WRITE; JMP 62 % 62: 1011 11011011000110000000; % PC = ADD(PC, IR_HI); JMP 0 % END ; Примеры выполнения команд Примеры выполнения каждой команды с указанием зна чения всех основных сигналов и содержимым основных регистров на каждом такте выполнения приведены на электронном носителе. Основные сигналы и регистры Сокращение Примечание CLOCK синхронизирующий сигнал C_SEL[2..0] номер регистра выбранного в качестве приемника A _ SEL [2..0] номер регистра выбранного в качестве источника 1 B _ SEL [2..0] но мер регистра выбранного в качестве источника 2 Rx[2..0] номер регистра приемника и з IR (регистра команд) Ry [2..0] номер регистра источника 1 из IR (регистра команд) Rz [2..0] номер регистра источника 2 из IR (регистра команд) MIR _ A [2..0] но мер регистра приемника из MIR (р-ра микрокоманд) MIR _ B [2..0] но мер регистра источника 1 из MIR (р-ра микрокоманд) MIR _ C [2..0] но мер регистра источника 2 из MIR (р-ра микрокоманд) AMUX Откуда брать номер регистра (0 – из IR , 1 – из MIR ) Эти сигналы управляют соответствующими мультиплексорами. BMUX CMUX A _ bus [7..0] Да нные на шинах источниках, выходящих из блока регистров B_bus[7..0] C _ ALU [7..0] Резул ьтат выходящий из АЛУ C_RAM[7..0] Данные, считанные из ОЗУ C_bus[7..0] Выбранные данные для запи си (С_ ALU или C _ RAM ) RD сигнал чтения из ОЗУ WR сигнал записи в ОЗУ KOP_ALU[1..0] код операции АЛУ (поступае т из MIR ) COND[1..0] определение следующей мик рокоманды (из MIR ) CBL _ SEL [1..0] ре зультат работы Control Branch Logic (логика управления ветвление м) – определяет следующую микрокоманду CF флаг переноса, поступающий и з АЛУ в Control Branch Logic JMP_ADR[5..0] адрес следующей микроком анды (из MIR ) MIR[23..0] полное значение регистра микрокоманд (24 бит) PC программный счетчик (адрес в ОЗУ) Примеры программ ПРИМЕР 1 DEPTH = 256; % Memory depth and width are required % WIDTH = 8; % Enter a decimal number % ADDRESS_RADIX = DEC; % Address and value radixes are optional % DATA_RADIX = BIN; % Enter BIN, DEC, HEX, or OCT; unless % CONTENT BEGIN %-------------------% 0: 11001000; % LD Rg1, [6] % 1: 00000110; 2: 11010000; % LD Rg2, [7] % 3: 00000111; 4: 00011011; % ADD Rg3, Rg1, Rg2 % 5: 00000000; 6: 00010110; % const 22 (DEC) % 7: 00100001; % const 33 (DEC) % END ; ПРИМЕР 2 DEPTH = 256; % Memory depth and width are required % WIDTH = 8; % Enter a decimal number % ADDRESS_RADIX = DEC; % Address and value radixes are optional % DATA_RADIX = BIN; % Enter BIN, DEC, HEX, or OCT; unless % CONTENT BEGIN %-----------------% 0: 11001000; % LD Rg1, [10] % 1: 00001010; 2: 01010010; % SHR Rg2, Rg1 % 3: 00000111; 4: 01100000; % JC 8 % 5: 00001000; 6: 10010010; % DEC Rg2, Rg1 % 7: 00000000; 8: 11100010; % ST Rg1, [10] % 9: 00001010; 10: 00000001; % const = 1 % END ; Значения основных сигналов и со держимое основных регистров на каждом такте выполнения данных примеро в программ приведены в виде временных диаграмм на электронном носителе. Определение производительности Среднее количество микрокоманд при выполнении ком анды процессора можно приблизительно оценить как 4 + 17/8 + 1 = 7 микрокоманд на к оманду процессора. Таким образом, при максимальной тактовой частоте в 33,3 МГц средняя производительность процессора составит 4, 7 MOPS (или 33,3 М м ops / сек). Тестовая программа Количество команд процессора Количес тво микрокоманд Время выполнения, нс N / сек ПРИМЕР 1 3 18 540 1851851 ПРИМЕР 2 5 34 1020 980398 Повысить производительность процессора можно одним из следующих спосо бов: § Увеличить разрядност ь шины-приемника с 8 до 16 бит, и считывать команду из ОЗУ не за три такта, а за один; § Увеличить функциональность А ЛУ, при этом можно будет сократить длину микрокода для некоторых команд ( особенно для SUB и DEC ); § Перейти от микропрограммного управления к управлению на основе жесткой логики; § Применить конвейеризацию; § Что-нибудь распараллелить.
1Архитектура и строительство
2Астрономия, авиация, космонавтика
 
3Безопасность жизнедеятельности
4Биология
 
5Военная кафедра, гражданская оборона
 
6География, экономическая география
7Геология и геодезия
8Государственное регулирование и налоги
 
9Естествознание
 
10Журналистика
 
11Законодательство и право
12Адвокатура
13Административное право
14Арбитражное процессуальное право
15Банковское право
16Государство и право
17Гражданское право и процесс
18Жилищное право
19Законодательство зарубежных стран
20Земельное право
21Конституционное право
22Конституционное право зарубежных стран
23Международное право
24Муниципальное право
25Налоговое право
26Римское право
27Семейное право
28Таможенное право
29Трудовое право
30Уголовное право и процесс
31Финансовое право
32Хозяйственное право
33Экологическое право
34Юриспруденция
 
35Иностранные языки
36Информатика, информационные технологии
37Базы данных
38Компьютерные сети
39Программирование
40Искусство и культура
41Краеведение
42Культурология
43Музыка
44История
45Биографии
46Историческая личность
47Литература
 
48Маркетинг и реклама
49Математика
50Медицина и здоровье
51Менеджмент
52Антикризисное управление
53Делопроизводство и документооборот
54Логистика
 
55Педагогика
56Политология
57Правоохранительные органы
58Криминалистика и криминология
59Прочее
60Психология
61Юридическая психология
 
62Радиоэлектроника
63Религия
 
64Сельское хозяйство и землепользование
65Социология
66Страхование
 
67Технологии
68Материаловедение
69Машиностроение
70Металлургия
71Транспорт
72Туризм
 
73Физика
74Физкультура и спорт
75Философия
 
76Химия
 
77Экология, охрана природы
78Экономика и финансы
79Анализ хозяйственной деятельности
80Банковское дело и кредитование
81Биржевое дело
82Бухгалтерский учет и аудит
83История экономических учений
84Международные отношения
85Предпринимательство, бизнес, микроэкономика
86Финансы
87Ценные бумаги и фондовый рынок
88Экономика предприятия
89Экономико-математическое моделирование
90Экономическая теория

 Анекдоты - это почти как рефераты, только короткие и смешные Следующий
Сын Елены Малышевой боится признаться матери, что заболел.
Anekdot.ru

Узнайте стоимость курсовой, диплома, реферата на заказ.

Обратите внимание, реферат по программированию "Линейное программирование симплекс-методом Данцига", также как и все другие рефераты, курсовые, дипломные и другие работы вы можете скачать бесплатно.

Смотрите также:


Банк рефератов - РефератБанк.ру
© РефератБанк, 2002 - 2016
Рейтинг@Mail.ru