
- •Основные понятия.
- •Понятие архитектуры и организации эвм.
- •Обобщенное понятие архитектуры.
- •Виды архитектуры эвм и их составные элементы.
- •Краткое представление основных элементов прикладной архитектуры компьютеров. Типы, форматы и способы представления данных, аппаратно поддерживаемых в эвм.
- •Для числовых данных необходимо представлять диапазон и точность. Программная модель (регистровая структура) процессора.
- •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 – массивов
4.2. Каноническая структура процессора
Каноническая (основополагающая) структура процессора состоит из операционного и управляющего автоматов, которые вместе обеспечивают выполнение заданного набора процессорных операций: последовательную выборку команды из оперативной памяти; декодирование кода операции; определение операндов, с которыми работает команда; выполнение предписанной командой операции; возможно, сохранение результата операции; определение адреса следующей команды. Естественно, что выборка команд и данных происходит из оперативной памяти, поэтому оперативная память, входящая вместе с процессором в ядро компьютера, включена в состав канонической структуры процессора. Чтобы упростить понимание рисунка, определяющего структуру операционного автомата, представляющего часть процессора, ограничимся рассмотрением основных деталей операционного автомата, а управляющий автомат будем представлять одним прямоугольником, понимая, что функции управляющего автомата весьма многогранны и описывают управление процессами выполнения многих десятков, а в ряде случаев и сотен различных команд. Так, оставим без внимания все вопросы организации мультипрограммирования в компьютере, обработку прерываний и другие сложные для восприятия моменты организации компьютера как целостной системы.
К
аноническая
структура процессора изображена на
рис. 4.4. Операционный автомат процессора
состоит из трех частей: арифметико-логического
устройства АЛУ, регистров специального
назначения (РСН) и регистров общего
назначения (РОН). Эти части связаны
между собой с помощью трех шин – шин
А, В и С, управляемых множеством
сигналов Y={{yA},
{yB},
{yC},
{yАЛУ}, ЧТОП,
ЗПОП, ЗОП}, формируемых управляющим
автоматом процессора.
АЛУ в данном случае является 32-битовым и позволяет за некоторое время выполнять ограниченный набор микроопераций над одним или двумя словами данных длиной до 32 бит. АЛУ выполняет ограниченный набор функций: может выполнить простую микрооперацию C:=A+1, C:=A+2 или C:=A+4, где 1, 2 и 4 – константы, формируемые управляющим автоматом в соответствии со значением длины обрабатываемого слова 1, 2 или 4 байта; может выполнить микрооперацию инвертирования числа с сохранением знака результата C:= A(30:0), где – операция инвертирования и А(30:0) – 31 младший разряд операнда А; может выполнить микрооперацию сдвиг слова на заданное управляющими сигналами yi и yj количество разрядов C:=Ri(A) и C:=Lj(A), где R и L – символы сдвига слова А вправо или влево на i или j разрядов, определяемые управляющими сигналами yi и yj; может выполнить микрооперацию сложения целых чисел C:=A+B, где операция сложения выполняется с межразрядным переносам и через один разряд, и через 2 разряда и через 4 и более разрядов, как это принято в процессоре, и т.д. Таким образом можно понять, что над входными сигналами с шин А и В можно выполнить любую микрооперацию, реализующую любую вычислимую функцию yАЛУ: C:=φАЛУ(А,В). При этом в управляющий автомат из АЛУ может передаваться любая фиксированная совокупность осведомительных сигналов X1={x1, …, xL-1}, характеризующих состояние АЛУ, на основе которых строится управление операционным автоматом.
В состав регистров специального назначения входят два 32-разрядных регистра: АК – адрес команды и РК – регистр команды. В регистре АК хранится адрес команды, и выборка команды из оперативной памяти производится в соответствии с микропрограммой, изображенной на рис. 4.5. Первый оператор микропрограммы служит для инициирования од-
новременно двух действий : передачи адреса команды АК в регистр адреса оперативной памяти АОП – АОП:=АК, и формирования сигнала чтения из оперативной памяти ЧТОП. Чтобы выполнить эти действия, управляющий автомат процессора (см. рис. 4.4) должен сформировать следующую совокупность управляющих сигналов: yААК: АОП:=АК[31:2], инициирующий передачу адреса команды АК в регистр адреса оперативной памяти АОП, и управляющий сигнал чтения из оперативной памяти ЧТОП, инициирующий операцию чтения. Отметим, что оперативная память может читать и записывать данные только словами. Поэтому адрес команды АК передается в оперативную память как адрес слова – значениями битов от 31-го до 2-го разрядов. При поступлении сигнала ЧТОП в операционный автомат значение адреса команды запоминается в регистре адреса оперативной памяти АОП и формируется сигнал занятости оперативной памяти ЗОП=1, поступающий в управляющий автомат. Поскольку длительность микротакта значительно меньше времени обращения к оперативной памяти, управляющий автомат переходит в состояние ожидания момента окончания обращения к оперативной памяти, что отмечено условной вершиной графа микропрограммы, содержащей значение условия ЗОП (см. рис. 4.5). Когда сигнал занятости оперативной памяти переключается в состояние ЗОП=0, выполняется переход к следующему оператору микропрограммы – передаче прочитанного слова РОП, хранимого в регистре оперативной памяти, в регистр команды РК. Для этого управляющий автомат формирует сигнал yАЛУ1, обеспечивающий передачу значения из регистра оперативной памяти РОП по шине В через арифметико-логическое устройство без преобразования на выходную шину С, и управляющий сигнал yСРК, передающий слово С в регистр команды РК.
После записи команды в регистр команд должен быть дешифрован код операции КО, размещаемый в старших разрядах регистра команды (см. рис. 4.4). Для этого код операции КО передается в управляющий автомат, где он дешифрируется, и вершина микропрограммы, отмеченная кодом операции КО (см. рис. 4.5), используется в качестве переключателя, разделяющего процесс вычислений по нескольким направлениям f1, …, fG, где G – количество операций, реализуемых командами. Будем предполагать, что подавляющее большинство операций выполняются над значениями, хранимыми в регистрах общего назначения, в которых размещаются промежуточные и конечные результаты, базовые адреса и индексы. Очевидно, что выполнение операций f1, …, fG, сводится к выборке операндов, участвующих в операции, выполнении над операндами заданной операции и записи результатов в регистры общего назначения.
Адрес следующей команды может вычисляться двумя способами: путем естественной адресации, когда адрес следующей команды увеличивается на длину команды, определяемую кодом операции, или в зависимости от значения признака результата адресу команды присваивается значение, указанное в команде перехода. На рис. 4.5 выделены операции f1, …, fg, выполняемые с естественным порядком адресации команд, и операции fg+1, …, fG, выполняемые в зависимости от значений признаков результата. При естественном порядке выполнения команд адрес следующей команды вычисляется путем увеличения текущего адреса команды на 1, 2, 3 или 4 байта в зависимости от длины выполненной команды: АК:=АК+consti, где consti – длина выполненной команды, определяемая значением кода операции. При выполнении операций перехода в зависимости от значений признаков результата операции адрес следующей команды принимает значение следующей команды или значение, указанное в операции перехода. Примем, что последнее значение хранится в регистре общего назначения R0. В таком случае адрес следующей команды примет значение АК:=R0.
Как правило, количество операций, выполняемых компьютером, G<2l, где l – число разрядов в коде операции, содержащемся в командах. Команды, в которых код операции недействителен, будем считать неправильными Н и при выполнении такой команды формировать сигнал программного прерывания λ.