
- •Основные понятия.
- •Понятие архитектуры и организации эвм.
- •Обобщенное понятие архитектуры.
- •Виды архитектуры эвм и их составные элементы.
- •Краткое представление основных элементов прикладной архитектуры компьютеров. Типы, форматы и способы представления данных, аппаратно поддерживаемых в эвм.
- •Для числовых данных необходимо представлять диапазон и точность. Программная модель (регистровая структура) процессора.
- •1) Полная специализация регистров, когда каждый регистр используется только по одному специальному назначению.
- •2) Полная универсализация, когда каждый регистр можно использовать по любому назначению.
- •Регистр ip (Instruction Pointer).
- •Регистр fr (Flag Register).
- •If (Interrupt Flag) – Флаг Прерывания
- •Адресная структура основной памяти и принципы размещения информации в ней. Принципы формирования физического адреса.
- •Режимы адресации.
- •Структура и форматы машинных команд.
- •Базовая система команд.
- •1. Поддержка защищённого режима (i286).
- •3. Включение в Pentium блока mmx (Multimedia Extension), система команд, которая содержит порядка 60 команд для поддержки принципа векторной обработки на уровне целочисленных данных.
- •Внедрение в кристалл процессора блока sse (sse2)
- •Cisc- и risc – архитектура.
- •Основные особенности risc – архитектуры.
- •Стремление к выполнению большинства машинных команд за 1 машинный такт (машинный цикл).
- •Широкое использование принципов суперскалярной и суперконвейерной обработки.
- •Команды загрузки и сохранения системных регистров.
- •Команды ввода/вывода: in/out, ins/outs.
- •Команда останова процессора - hlt.
- •Упрощенная структура компьютера (эвм).
- •1. Центральную;
- •2. Периферийную.
- •Организация ввода/вывода. Понятие, основные характеристики и уровни представления интерфейса.
- •1) Совокупность линий, шин, обеспечивающих обмен информацией между устройствами.
- •2) Алгоритм (протокол) обмена, определяющий последовательность организации передачи информации по линиям интерфейса.
- •3) Разделение интерфейса на ряд уровней представлений.
- •Основные характеристики интерфейса:
- •Пропускная способность определяется максимальным количеством бит или байт данных, передаваемых по интерфейсу за одну секунду.
- •Информационная ширина (количество бит или байт данных, передаваемых параллельно по шине данных, т.Е. Разрядность линии).
- •Максимально возможное удаление устройств, подключаемых к интерфейсу.
- •Шины (интерфейсы) персональных компьютеров на базе процессоров Pentium.
- •Основные аспекты организации ввода/вывода.
- •1.Структура компьютера в плане организации связей между ядром и периферийными устройствами:
- •2. Адресация к ву или пу. Основным аспектом, связанным с адресацией ву, является объединение или разделение адресных пространств памяти и ввода/вывода.
- •3.Способ организации ввода/вывода:
- •Адресация ву.
- •Способы адресации портов ввода/вывода и их сравнительный анализ.
- •Раздельное адресное пространство.
- •Единое адресное пространство.
- •Организация ввода/вывода с отображением на память обладает следующими достоинствами:
- •Недостатками использование совмещенного адресного пространства являются:
- •Способы организации ввода/вывода.
- •Ввод/вывод по прерыванию.
- •Прямой доступ к памяти – dma (Direct Memory Access).
- •2) Стандартные контроллеры dma позволяют реализацию следующих видов обмена:
- •В современных моделях пк для обмена с жесткими дисками наряду с dma также используется и pio. Канальный ввод/вывод (квв).
- •Основные функции квв:
- •Функции по установлению логической связи между ву и оп.
- •2) Функции, связанные с непосредственной передачей данных между ву и оп.
- •3) Функции, связанные с завершением обмена и разрушением логической связи между ву и оп.
- •Участие цп в организации квв сводится к выполнению следующих функций:
- •Классификация квв.
- •Сравнение Канального вв с pio и с dma.
- •Организация прерываний. Основные отличия организации прерываний в защищенном режиме по сравнению с реальным режимом.
- •Программируемый контроллер прерываний (pic i8259a).
- •Основные функции pic.
- •Внутренняя структура pic.
- •Шифратор выделенного запроса.
- •Основные режимы работы pic.
- •1) Fnm (Fully Nested Mode – Режим вложенных прерываний).
- •Взаимодействие между cpu и ведущим pic.
- •Основы программирования pic.
- •Приказы инициализации.
- •Icw1 имеет следующий формат:
- •Icw2 определяет базовый адрес последовательности векторов прерываний, размещаемых в таблице векторов прерываний. Собственно, под базовый адрес отводятся старшие 5 битов приказа(3-7).
- •Icw4 Наиболее важным битом приказа icw4 является бит 1, именуемый aeoi – Automatic End Of Interrupt.
- •Слова рабочих приказов.
- •Установка и отмена так называемого режима специального маскирования;
- •Установка и сброс режима опроса (полинга);
- •Разрешение чтения регистров irr и isr контроллера.
- •Организация центральных процессоров.
- •Как обрабатывающее устройство: цп осуществляет выполнение программ, связанных с какой-либо обработкой данных.
- •Как управляющее устройство: цп осуществляет координацию остальных устройств компьютера, а также связь компьютера с внешним миром.
- •Принципы построения и функционирования конвейеров команд.
- •Сравнение производительности последовательного процессора (без конвейера команд) и «параллельного» процессора (с конвейером команд).
- •Наличие в программах зависимостей по данным (конфликты по данным).
- •Использование различными блоками конвейера одного и того же ресурса (структурные конфликты).
- •Наличие при выполнении программы особых случаев, приводящих к прерыванию.
- •Различное время выполнения отдельных фаз машинных команд.
- •Большой разброс длительности фазы ех для различных машинных команд. Основные действия, выполняемые процессором на различных фазах (этапах) команды.
- •Санкт-Петербург
- •1. Принципы построения и функционирования компьютеров
- •1.1. Назначение компьютеров и принцип программного управления
- •1.2. Неймановский принцип программного управления
- •1.3. Структура компьютеров
- •1.4. Запоминающие устройства и организация памяти
- •1.5. Организация ввода-вывода данных
- •1.6. Принцип многоуровневой реализации функций
- •Программа
- •Аппаратура компьютера
- •2. Характеристики и классификация компьютеров
- •2.1. Характеристики компьютеров
- •2.2. Программно-аппаратный интерфейс и интерфейс прикладных программ
- •2.3. Быстродействие и производительность компьютеров
- •2.4. Емкость памяти
- •2.5. Надежность компьютеров
- •2.6. Стоимость компьютеров
- •2.7. Классификация компьютеров
- •Оглавление Предисловие 3
- •Принципы построения и функционирования компьютеров 7
- •Характеристики и классификация компьютеров 25
- •3.Архитектура компьютеров
- •3.1.Машинные слова и байты
- •3.2.Коды с обнаружением и исправлением ошибок
- •3.3. Представление данных в компьютерах
- •3.4. Способы адресации данных
- •3.5. Операции, выполняемые компьютерами
- •3.6. Системы команд компьютеров
- •3.7. Режимы работы компьютеров
- •3.8. Средства мультипрограммирования
- •3.10. Привилегированные операции и состояния процессора
- •3.11. Организация прерывания программ
- •3.12. Средства защиты памяти
- •4. Структура операционных устройств компьютера
- •4.1. Принцип микропрограммного управления операционными устройствами
- •4.2. Каноническая структура процессора
- •4.3. Конвейерные процессоры
- •5. Организация памяти компьютеров
- •5.1. Организация виртуальной памяти
- •5.2. Организация кэш-памяти
- •5.3. Организация raid – массивов
3.6. Системы команд компьютеров
Команда – это упорядоченная совокупность битов, представляющая наименование операции, инициируемой командой, и адреса операндов, участвующих в выполнении операции. Основная характеристика команды – адресность, определяемая количеством адресов в команде. В зависимости от адресности команды подразделяются на 0-адресные (нульадресные), 1-адресные (одноадресные) и т. д. Длина команды в битах, количество полей, используемых для кодирования элементов команды (операций, адресов и признаков), и расположение полей в команде определяет формат команды. Форматы команд изображаются в виде (1.7). Выбор формата команд и, в частности, адресности зависит от большого числа факторов, важнейшими из которых являются: тип машинных элементов информации (слова и биты); длина слов; наличие регистровой памяти процессора; класс алгоритмов, для реализации которого предназначается компьютер; способы адресации, необходимые для эффективной обработки данных.
Эффективность системы команд. Эффективность системы команд, используемых в компьютере, определяется двумя основными показателями: затратами оборудования на хранения и обработку команд и затратами времени на реализацию программ. Основная доля затрат оборудования приходиться на память, используемую для хранения программ. Поэтому для минимизации затрат оборудования необходимо, в первую очередь, минимизировать количество информации, составляющей программу, т.е. выбрать такие форматы команд, которые позволяют закодировать алгоритм минимальным числом бит информации. Формат команд, используемых в компьютере, существенно сказывается на числе обращений к памяти в процессе вычислений и влияет на время выполнения программ.
В предыдущем разделе было сказано, что к 90-м годам XX века сокращенная система команд компьютеров RISC оказалась наиболее согласованной с уровнем технологии производства компьютеров общего применения. За счет микропрограммирования и программ операционной системы система команд процессора может быть сколь угодно расширена в любом желаемом направлении. В связи с этим рассмотрим только систему команд RISC.
Сокращенная система команд. В связи с большим различием в быстродействии процессора и быстродействия основной памяти в компьютерах общего применения стремятся по возможности уменьшить длину команд за счет сокращения числа битов, используемых для представления кодов операций, и числа битов в адресной части команд. Наиболее радикальный способ сокращения длины команд – ориентация большинства команд на обработку данных, хранимых в регистрах общего назначения процессора, и организация обмена данными между процессором и основной памятью с помощью небольшого числа команд. Итак, будем ориентироваться на каноническую структуру компьютера (см. рис. 1.2), в процессоре которого имеются N регистров общего назначения R0, R1, …, RN-1 и все команды программ и все данные размещены в памяти компьютера. Количество регистров ограничено и, как правило, равно 8, 16, 32, 64 и возможно более. Время чтения – записи слова из регистра составляет малую долю наносекунды, поскольку все регистры входят в состав сверхбольшой интегральной схемы процессора. Время обращения к памяти значительно больше и составляет как минимум 5 – 10 нс.
Минимальное количество команд, обеспечивающих загрузку слова в регистр из памяти и запись слова из регистра в память, равно двум:
LOAD A, Ri
и
STORE B, Rj ,
где LOAD – операция ЗАГРУЗИТЬ и STORE – операция ЗАПИСАТЬ, A и B – загружаемый в регистр Ri и записываемый в память по адресу Rj операнд соответственно и Ri и Rj –адреса регистров общего назначения. Для адресации памяти могут использоваться любые способы, но чаще всего адрес ячейки памяти является относительным и модифицируемым. Естественно, что можно расширить список команд загрузки за счет передачи между регистром и памятью байта, слов разной длины, чисел с плавающей запятой, чисел с обратным знаком и т. д. При этом увеличивается эффективность системы посылочных операций, но одновременно с этим увеличивается длина кода операции и, как следствие, длина команд.
Арифметические и логические операции выполняются исключительно над операндами, хранимыми в регистрах общего назначения. В компьютерах общего применения наиболее широко используется трехадресная система команд следующего вида:
ADD Ri, Rj, Rk ,
где ADD – операция сложения, Ri и Rj – адреса операндов и Rk – адрес результата. В компьютерах могут использоваться двухадресные и одноадресные команды.
При использовании двухадресной системы команд и выполнении операций только над содержимым регистров задача вычисления значения C=A+B выполняется следующей последовательностью команд:
-
LOAD
A,
R1
LOAD
B,
R2
ADD
R1,
R2
STORE
C,
R2 ,
где операция сложения выполняется в виде R2:= R1 + R2 . Операции безусловного и условного переходов происходят, как правило, в одноадресном режиме, когда при наличии признаков перехода выполняется переход по заданному адресу, который и определяет адрес следующей команды программы, а при отсутствии признаков перехода будет выполнен переход к следующей команде программы.
Одноадресная система команд строится аналогично двухадресной. Однако для выполнения операций, в которых участвуют два операнда, необходимо располагать регистром общего назначения, в котором хранится один из операндов. В качестве такого регистра может использоваться регистр R0 , который называется итоговым регистром процессора и служит для размещения результатов всех операций. Естественно, что каждая арифметическая и логическая операция выполняются в следующем виде: R0 := R0 * Ri , где * – знак операции.
При использовании в компьютерах стекой адресации арифметические и логические операции становятся нульадрсными и состоят только из кода операции.
В компьютерах, производимых различными фирмами, используются слова разной длины, как правило, длиной 8, 16, 32 и 64 бита, различные способы адресации данных и систем кодирования операций. По этим причинам сокращенные системы команд оказываются крайне разнообразными.