Архитектура вычислительных систем 02. Введение





























































03 - Микропроцессоры.ppt
- Количество слайдов: 60
Архитектура вычислительных систем 02. Введение в архитектуру микропроцессоров
Введение в архитектуру микропроцессоров Принципы работы Программная модель Способы ускорения вычислений Другие архитектуры Кафедра ИИТ. Мокрушин А. А. 2
01. Принципы фон Неймана программа хранится в компьютере; программа во время выполнения и необходимые для ее работы данные находятся в оперативной (главной) памяти; имеется арифметико-логическое устройство, выполняющее арифметические и логические операции с данными; имеется устройство управления, которое интерпретирует команды, выбираемые из памяти, и выполняет их; устройства ввода и вывода (ВВ) используются для ввода программ и данных и для вывода результатов расчетов. Работают под управлением УУ. Кафедра ИИТ. Мокрушин А. А. 3
01. Принципы фон Неймана Кафедра ИИТ. Мокрушин А. А. 4
01. Структура процессора Кафедра ИИТ. Мокрушин А. А. 5
01. Выполнение команды. Фаза извлечения. Считывание очередной команды из памяти в процессор. Фаза выполнения. Расшифровка кода операции и выполнении соответствующих действий. Фаза прерывания. Если прерывания разрешены и имеется запрос прерывания, сохранение текущего состояния процесса и обслуживание прерывания. Кафедра ИИТ. Мокрушин А. А. 6
01. Выполнение команды. Кафедра ИИТ. Мокрушин А. А. 7
02. Программная модель Базовая совокупность систем и характеристик процессора видимая программистам, работающим на нижних, "машинных" уровнях программирования, например на языке ассемблера Кафедра ИИТ. Мокрушин А. А. 8
02. Программная модель виды используемых структур памяти по принципам размещения и поиска информации, организацию оперативной памяти, структуру и типы команд, состав программно-доступных регистров, режимы адресации, структуру и типы данных, наборы реализованных операций Кафедра ИИТ. Мокрушин А. А. 9
02. Машинное слово разрядность данных, обрабатываемых процессором; разрядность адресуемых данных (разрядность шины данных); максимальное значение беззнакового целого типа, напрямую поддерживаемого процессором; максимальный объём оперативной памяти, напрямую адресуемой процессором. Кафедра ИИТ. Мокрушин А. А. 10
02. Машинное слово байт (byte) - 8 бит слово (word) - 16 бит двойное слово (doubleword) - 32 бит четверное слово (quadword) - 64 бит Кафедра ИИТ. Мокрушин А. А. 11
02. Машинное слово Порядок от старшего к младшему Порядок от младшего к старшему IBM 360/370/390, Motorola 68000, Intel SPARC D 4*0 x 01 + C 3*0 x 100 + B 2*0 x 10000 + A 1*0 x 1000000 Порядок от младшего к старшему (little-endian) 0 x. D 4, 0 x. C 3, 0 x. B 2, 0 x. A 1 Порядок от старшего к младшему (big-endian) 0 x. A 1, 0 x. B 2, 0 x. C 3, 0 x. D 4 Смешанный порядок (PDP-endian) 0 x. B 2, 0 x. A 1, 0 x. D 4, 0 x. C 3 Кафедра ИИТ. Мокрушин А. А. 12
02. Представление целого Позиционная система счисления Представление числа a в системе по основанию b. Кафедра ИИТ. Мокрушин А. А. 13
02. Отрицательное число Кафедра ИИТ. Мокрушин А. А. 14
02. Вещественные числа Два основных представления С фиксированной точкой; С плавающей точкой. Кафедра ИИТ. Мокрушин А. А. 15
02. Вещественные числа Обычное двоичное число, определенное количество его младших разрядов представляет собой дробную часть в позиционной записи. Кафедра ИИТ. Мокрушин А. А. 16
02. Вещественные числа Число с плавающей точкой, таким образом, состоит из двух битовых полей — мантиссы М и порядка Е. Число, представленное двумя такими полями, равно Мх2 Е. 0. 11373325*10^150 = (150, 0. 11373325) Кафедра ИИТ. Мокрушин А. А. 17
02. Вещественные числа Число с плавающей точкой считается нормализованным, если старшая цифра в мантиссе отлична от нуля. Кафедра ИИТ. Мокрушин А. А. 18
02. Вещественные числа Кафедра ИИТ. Мокрушин А. А. 19
02. Вещественные числа Кафедра ИИТ. Мокрушин А. А. 20
02. Десятичные числа Двоично- Десятичный код десятичный код 1258 = 0001 0010 0101 1000 0 0 1 1 0 0 1 0 2 0 0 1 1 3 0 1 0 0 4 Упакованный код 0 1 5 1258 = 12 58 = 0 1 1 0 6 = 00001100 00111010 0 1 1 1 7 1 0 0 0 8 1 0 0 1 9 Кафедра ИИТ. Мокрушин А. А. 21
02. Представление вычетами Если (p 0, p 1, …, pk-1) – взаимно простые То целое число 0
02. Представление вычетами Кафедра ИИТ. Мокрушин А. А. 23
02. Регистры данных Используются для хранения данных, (некоторые регистры предназначены для операций над числами с плавающей точкой, а остальные для хранения целых чисел. ) Кафедра ИИТ. Мокрушин А. А. 24
02. Регистры Адресные регистры. Индексный регистр Сегментный регистр Регистр стека. Кафедра ИИТ. Мокрушин А. А. 25
02. Регистры Используются для контроля над работой системы. Программный счетчик (program counter - PC Регистр команд (instruction register - IR). Регистр адреса памяти (MAR). Регистр буфера памяти (MBR). Регистр адреса ввода-вывода (I/O AR). Регистр буфера ввода-вывода (I/O BR) Кафедра ИИТ. Мокрушин А. А. 26
02. Регистры Кафедра ИИТ. Мокрушин А. А. 27
02. Регистры Кафедра ИИТ. Мокрушин А. А. 28
02. Система команд - это набор допустимых для данного процессора управляющих кодов и способов адресации данных. Система команд жестко связана с конкретным типом процессора и обычно не обладает переносимостью на другие типы процессоров. Кафедра ИИТ. Мокрушин А. А. 29
02. Система команд Кафедра ИИТ. Мокрушин А. А. 30
02. Система команд Кафедра ИИТ. Мокрушин А. А. 31
02. Базовые команды пересылки данных; Ø загрузка (запись) содержимого в регистры; Ø сохранение в памяти содержимого регистров; Ø копирование содержимого из одной области памяти в другую; Ø запись в устройства ввода/вывода и чтение из устройств ввода/вывода Кафедра ИИТ. Мокрушин А. А. 32
02. Базовые команды арифметические команды: Ø команды операций с фиксированной запятой; Ø команды операций с плавающей запятой; Ø команды очистки; Ø команды инкремента и декремента; Ø команда сравнения. Кафедра ИИТ. Мокрушин А. А. 33
02. Базовые команды логические команды: Ø логическое И, логическое ИЛИ, сложение по модулю 2 (Исключающее ИЛИ); Ø логические, арифметические и циклические сдвиги; Ø проверка битов и операндов; Ø установка и очистка битов (флагов) регистра состояния процессора (PSW). Кафедра ИИТ. Мокрушин А. А. 34
02. Базовые команды переходов: Ø команды безусловных переходов; Ø команды условных переходов. Кафедра ИИТ. Мокрушин А. А. 35
02. Операнды Кафедра ИИТ. Мокрушин А. А. 36
02. Длина команды Кафедра ИИТ. Мокрушин А. А. 37
02. Команды адресации Кафедра ИИТ. Мокрушин А. А. 38
02. Команды адресации Кафедра ИИТ. Мокрушин А. А. 39
03. Производительность Характеристика EDSAC HP Superdome Отношение (1949 г. ) (2001 г. ) 2001/1949 Тактовая частота (МГц) 0, 5 770 1, 5× 103 Производительность (оп/с) 100 1, 9× 109 1, 9× 1011 За 50 лет: производительность выросла почти в 2 миллиарда раз. Время такта уменьшилось лишь в 1500 раз. Кафедра ИИТ. Мокрушин А. А. 40
03. Закон Мура Кафедра ИИТ. Мокрушин А. А. 41
03. Конвейерная организация Идея конвейера состоит в том, чтобы сложную операцию разбить на несколько более простых, таких, которые могут выполняться одновременно. При движении объектов по конвейеру одновременно на разных его участках (сегментах) выполняются различные подоперации. Операция над одним элементом данных в конвейере будет выполняться дольше, чем в обычном АЛУ Кафедра ИИТ. Мокрушин А. А. 42
03. Конвейерная организация a+b=c Adopt Add Overflow Exponent Normalize Exponent Mantissa a 6 a 4 a 2 a 5 a 3 a 1 a 4 a 2 a 5 a 1 a 4 a 3 a 1 a 2 a 3 a 1 a 2 a 1 b 6 b 4 b 2 b 5 b 3 b 1 b 4 b 2 b 5 b 3 b 1 b 4 b 2 b 3 b 1 b 2 b 1 a 7 b 7 c 1 a 8 b 8 a 9 b 9 a 10 b 10 a 11 b 11 a 12 b 12 Кафедра ИИТ. Мокрушин А. А. 43
03. Конвейерная организация c( t ei er w o ul or iz lo nt es 1) nd nti nt no le ssa st al erf m ne c = a + b rm ov o d ) ad ) ad exp ad b(1 lo a(1 ha a ad lo Каждый элемент i=1 конвейера 2 активен 3 4 5 time 6 7 8 1 cycle 9 10 11 Время заполнения Результат получается на каждом цикле Кафедра ИИТ. Мокрушин А. А. 44
03. Конвейерная организация Эффективность: система выполняет повторяющуюся операцию; операция может быть разделена на независимые части; трудоемкость подопераций примерно одинакова. Кафедра ИИТ. Мокрушин А. А. 45
03. Конвейерная организация Кафедра ИИТ. Мокрушин А. А. 46
03. Конвейерная организация Существуют три класса конфликтов: Структурные конфликты. Конфликты по данным. Конфликты по управлению. Кафедра ИИТ. Мокрушин А. А. 47
03. Конвейерная организация Существуют два фактора, против конвейера: Накладные расходы, связанные с передачей данных из буфера в буфер и выполнением всевозможных подготовительных операций. Сложность схем управления памятью и регистрами, оптимизации работы конвейера резко возрастает с увеличением количества позиций. Кафедра ИИТ. Мокрушин А. А. 48
03. Суперскалярные процессоры Кафедра ИИТ. Мокрушин А. А. 49
03. Суперскалярные процессоры Ограничения: взаимозависимость по данным. процедурная зависимость - есть два аспекта (ветвления и использование команд переменной длины). конфликты в использовании ресурсов. зависимость по выходу; обратная зависимость. Кафедра ИИТ. Мокрушин А. А. 50
03. CISC архитектура CISC (англ. Complex instruction set computer) небольшое число регистров общего назначения; большое количество машинных команд, наличие сложных команд, большое количество способов адресации, большое количество форматов команд различной разрядности, преобладание двухадресного формата команд, наличие команд обработки типа регистр- память. Кафедра ИИТ. Мокрушин А. А. 51
03. RISC архитектура RISC (англ. Restricted (reduced) instruction set computer) Сокращенный набор команд (80 - 150 команд). Большинство команд выполняется за 1 такт. Большое количество РОН. Наличие жестких многоступенчатых конвейеров. Все команды имеют простой формат, и используются немногие способы адресации. Применение оптимизирующих компиляторов. Кафедра ИИТ. Мокрушин А. А. 52
03. RISC архитектура Пусть 80% команд — программы простые и 20% — сложные. Простые команды процессор с CISC-архитектурой выполняет за 4 такта, сложные — за 8 тактов, длительность одного такта 100 наносекунд. Простую команду RISC-процессор выполняет за 1 такт, а сложную — за 14 тактов, длительность такта 75 наносекунд. На выполнение программы, содержащей 1 000 команд: CISC-процессор затратит 106 х 0, 80 х 4 х 10 -7 с + 106 х 0, 20 х 8 х 10 -7 с = 0, 48 с, RISC-процессор 106 х 0, 80 х 10 -7 с + 106 х 0, 20 х 14 х 10 -7 с = 0, 27 с, . Кафедра ИИТ. Мокрушин А. А. 53
03. RISC архитектура Кафедра ИИТ. Мокрушин А. А. 54
03. VLIW архитектура VLIW (англ. very long instruction word — «очень длинная машинная команда» ) Кафедра ИИТ. Мокрушин А. А. 55
03. VLIW архитектура Кафедра ИИТ. Мокрушин А. А. 56
04. Стековые процессоры Кафедра ИИТ. Мокрушин А. А. 57
04. Стековые процессоры Кафедра ИИТ. Мокрушин А. А. 58
04. Стековые процессоры Кафедра ИИТ. Мокрушин А. А. 59
04. Стековые процессоры + Облегчение работы с прерываниями + Уменьшение количества обращений к памяти - Большое количество регистров с быстрым доступом - Возможное переполнение стековой памяти Кафедра ИИТ. Мокрушин А. А. 60