- •Архитектура вычислительных систем. Учебное пособие.
- •Характеристики и режимы работы эвм
- •Основные характеристики эвм
- •1.2. Режимы работы эвм
- •1.2.1. Однопрограммный режим работы
- •1.2.2. Мультипрограммный режим работы
- •1.2.3. Режим пакетной обработки
- •1.2.4. Режим разделения времени
- •1.2.5. Диалоговый режим работы
- •1.2.6. Режим работы в реальном масштабе времени
- •Классификация компьютеров по областям применения
- •2.1. Персональные компьютеры и рабочие станции
- •2.3. Серверы
- •2.4. Мейнфреймы
- •2.5. Кластерные архитектуры
- •3. Организация современного пк
- •Архитектура пк на базе набор микросхем 440 lx
- •3.1. Структура системной платы на наборе микросхем 440 lx
- •3.2. Типы системных плат на чипсете 440 lx
- •4. Функциональная и структурная организация процессоров
- •4.1. Классификация процессоров (cisc и risc)
- •4.2.Принципы организации процессоров
- •4.2.1. Назначение и структура процессора
- •Структура микропроцессора
- •4.2.2. Основные регистры процессоров
- •Операционное устройство и шинный интерфейс
- •4.2.3. Способы организации управления вычислительным процессом
- •Схемный принцип управления
- •Микропрограммный принцип
- •4.2.4. Технология mmx
- •Отображение ммх-регистров на fpu-регистры
- •Влияние ммх-команд на контекст fpu
- •4.2.5. Принципы конвейерной технологии
- •Представление о работе конвейера
- •Диаграмма работы простейшего конвейера
- •4.3. Микроархитектура процессоров p5
- •Структурная схема микропроцессора Pentium
- •4.4. Микроархитектура процессоров семейства р6
- •Структурная схема микропроцессора Pentium Pro
- •Ядро и подсистемы памяти Pentium
- •Устройство выборки/декодирования
- •Структура устройства диспетчирования/выполнения
- •Устройство отката
- •Интерфейс с шиной
- •4.5. Микроархитектура процессоров семейства amd
- •Микроархитектура процессора amd-k6-2
- •Микроархитектура процессора amd Athlon
- •Рабочая схема модуля вычислений с плавающей точкой
- •Организация системной шины
- •5.Принципы организации системы прерывания программ
- •5.1. Классы сигналов прерывания
- •5.2. Распределение прерываний в пк на базе процессоров х86
- •Распределение аппаратных прерываний
- •5.3. Приоритеты прерываний
- •Временная диаграмма возможного процесса прерывания программы
- •Определение исполнение программ в системе с учетом приоритетности запросов прерывания
- •5.4. Защита от прерывания
- •Организация памяти пк
- •6.1. Иерархии памяти
- •6.2. Организация кэш-памяти
- •6.3. Организация оперативной памяти (ram)
- •6.3.1. Типы и классификация оп
- •Прямая регистровая адресация
- •6.3.2.4. Подразумеваемая адресация
- •6.3.2.5. Косвенная адресация
- •Косвенная адресация с использованием оперативной памяти
- •6.3.2.6. Косвенная регистровая адресация
- •6.3.2.7. Модификация адресов
- •Индексная адресация с использованием регистров
- •6.3.2.8. Относительная адресация
- •Относительная адресация
- •Формирование исполнительного адреса при относительной и индексной адресации
- •6.4. Организация виртуальной памяти
- •6.4.1. Страничная адресация памяти
- •Адреса при страничной адресации
- •Порядок использования таблицы страниц
- •6.4.2. Сегментация памяти
- •7. Организация ввода-вывода
- •7.2. Системные и локальные шины
- •7.3. Шины ввода/вывода
- •7.3.1. Шина agp
- •Схемы pci и agp
- •7.3.2. Шина usb
- •Топология шины usb
- •7.3.3. Шины ide и scsi
- •8. Периферийные устройства
- •Примеры устройств ввода/вывода
- •8.1. Магнитные и магнитооптические диски
4.5. Микроархитектура процессоров семейства amd
В процессоре AMD-K6-2 реализована так называемая "Enhanced RISC86"-микроархитектура. Напомним, что RISC — это аббревиатура от Reduced Instruction Set Computing ("вычисления с сокращенным набором команд"). RISC-процессор обладает меньшим числом команд фиксированной длины. Упрощенная структура позволяет RISC-процессору развивать более высокую скорость. Типичные представители RISC-процессоров — Alpha от DEC, SPARC от SUN, PowerPC от IBM.
В противоположность этому CISC — сокращение от Complex Instruction Set Computing ("вычисления со сложным набором команд"). Все члены семейства х86 — типичные представители CISC-процессоров со cложными, но удобными наборами команд. Что касается AMD-K6-2, то речь в данном случае идет об объединенной архитектуре на основе преобразования х86-команд в более простые в обращении RISC-инструкции,
Основная ее особенность состоит в том, что внешние х86-инструкции, поступающие на обработку в процессор, преобразуются во внутренние RISC86-инструкции, которые и исполняются процессором. Вместо того чтобы напрямую исполнять сложные х86-инструкции с переменной длиной от 1 до 15 байт, процессор обрабатывает поток простых RISC86-инструкций фиксированной длины.
В состав процессора AMD-K6-2 (рис. 4.16) входят несколько основных модулей; L1-кэш данных (Level-One Dual Port Data Cache), Li-кэш инструкций (Level-One Instruction Cache) с кэшем предварительного декодирования (Predecode Cache), модуль декодирования (Multiple Instruction Decoders), центральный планировщик (Centralized RISC86 Operation Scheduler), вычислительные блоки (Execution Units) и модуль предсказания переходов (Branch Logic).
L1-кэш инструкций и данных, предварительное декодирование. L1-кэш состоит из двух независимых блоков: L1-кэша данных (Level-One Dual Port Data Cache) и L1-кэша инструкций (Level-One Instruction Cache) с кэшем предварительного декодирования (Predecode Cache). L1-кэш данных предназначен только для хранения данных и имеет объем 32 Кбайт- Несколько сложнее обстоит дело с L1-кэшем инструкций: наряду с инструкциями, для хранения которых предназначены 32 Кбайт памяти, в нем хранятся так называемые "биты преддекодирования" (predecode bits) — для них отведено 20 Кбайт памяти. Дело в том, что после загрузки инструкции в L1-кэш инструкций выполняется ее предварительное декодирование (predecoding) — к каждому байту инструкции добавляется пять бит (из этого и следует соотношение 32 Кбайт/20 Кбайт = 8/5), в которые записывается информация о количестве байт, оставшихся до начала следующей инструкции. Эта информация используется на этапе декодирования х86-инструкций в RISС8б-инструкции. После того, как L1 -кэш инструкций полностью заполнится данными, инструкции вместе с преддекодированными битами передаются в буфер инструкций (Instruction Buffer).
Модуль декодирования (Multiple Instruction Decoders), Модуль декодирования извлекает х86-инструкций (до 16 байт данных с инструкциями за один такт) с битами преддекодирования из буфера инструкций (Instruction Buffer), определяет границы инструкций и преобразует их в RISC86-инструкции. Непосредственно преобразованием занимаются четыре декодера; два для декодирования простых (Short Decoder #1, Short Decoder #2) и два для декодирования сложных х86-инструкций (Long Decoder, Vector Decoder). Одновременно могут работать либо два декодера Short Decoder #1 и Short Decoder #2, либо декодер Long Decoder, либо декодер Vector Decoder.
