- •Организация эвм
- •Принципы Неймана построения эвм. Элемент Неймана. Автомат Неймана.
- •Структура классической эвм. Назначение и взаимосвязь ее основных устройств.
- •Машина Тьюринга.
- •Команда и ее формат. Взаимосвязь формата команды и основных параметров эвм
- •Системы кодирования команд. Структура одно-, двух-, трех-, четырехадресной эвм. Естественный и принудительный порядок выполнения программы.
- •Стековая память. Структура безадресной эвм.
- •Цикл выполнения команды. Взаимодействие основных узлов и устройств эвм при автоматическом выполнении команды в трехадресной эвм.
- •Основы схемотехнической реализации эвм
- •Системы логических элементов. Основные параметры логических элементов. Условно-графические обозначения основных логических элементов.
- •Этапы проектирование логических схем на элементах “и-не”, “или-не”. Быстродействие логических схем.
- •Д ешифратор: назначение, таблица истинности. Условно-графическое обозначение.
- •Триггер. Назначение. Классификация триггерных схем.
- •Асинхронный двоичный счетчик. Назначение. Временная диаграмма работы. Оценка быстродействия.
- •Регистры. Назначение. Регистр хранения. Регистр сдвига. Условно-графическое обозначение. Регистр хранения
- •Устройства эвм
- •Устройство управления (уу): назначение, принципы построения.
- •Структурная схема уу с жесткой логикой. Реализация датчика сигналов на счетчике с дешифратором и на сдвиговом регистре.
- •Структурная схема микропрограммного уу.
- •Запоминающие устройства (зу): назначение, основные параметры. Иерархическая структура зу современных эвм.
- •Конвейерная организация работы микропроцессора. Ступени конвейера.
- •Оценка производительности микропроцессора при конвейерной организации работы.
- •Типы конфликтов в конвейере и методы уменьшения их влияния на снижение производительности микропроцессора.
- •Недостаточное дублирование некоторых ресурсов.
- •Система управления памятью. Статическое и динамическое распределение памяти. Страничная организация памяти. Виртуальная память.
- •Система прерываний. Назначение. Последовательность действий компьютера при обработке запросов прерываний.
- •Мультипрограммная эвм
- •Мультипрограммный режим работы эвм. Процесс и ресурс в мультипрограммных эвм.
- •Структура мультипрограммной эвм и особенности ее функционирования. Основные характеристики работы эвм в мультипрограммном режиме.
- •Счет1 - ввод - счет2 - вывод.
- •Одноочередные дисциплины распределения ресурсов в мультипрограммных эвм: fifo, lifo, круговой циклический алгоритм.
- •Многоочередная дисциплина распределения ресурсов в мультипрограммных эвм и ее модификации.
- •Режимы работы мультипрограммных эвм: пакетный, разделения времени, реального времени.
- •Организация работы персональной эвм
- •Структура персональной эвм.
- •Структура микропроцессора 8086, состав и назначение его основных блоков.
- •Организация памяти в ibm pc: физическое адресное пространство, адрес байта, слова, двойного слова.
- •Символическое и машинное представление команд: назначение, область применения.
- •Формат двухоперандной команды ibm pc общего вида. Назначение полей команды.
- •Режимы адресации операндов в ibm pc.
- •Формирование физического адреса в ibm pc в реальном режиме работы.
- •Формат команды ibm pc, использующей непосредственный операнд. Назначение полей команды.
- •Структура 32-разрядного микропроцессора, состав и назначение его основных блоков. Структура 32-разрядного универсального микропроцессора
- •Обработка прерываний в персональной эвм.
- •Порядок обработки прерываний
- •Контроллер приоритетных прерываний. Назначение. Порядок работы. Контроллер приоритетных прерываний
- •Каскадное включение контроллеров приоритетных прерываний
- •Защита памяти в мультипрограммных эвм. Назначение. Классические методы защиты Защита отдельных ячеек памяти. Метод граничных регистров. Метод ключей защиты памяти.
- •Организация защиты памяти в персональной эвм. Защита при управлении памятью. Защита по привилегиям.
- •Ввод-вывод информации в эвм. Проблемы организации ввода вывода и пути их решения.
- •Основные интерфейсные сигналы шины isa.
Конвейерная организация работы микропроцессора. Ступени конвейера.
Выполнение каждой команды складывается из ряда последовательных этапов (шагов, стадий), суть которых не меняется от команды к команде. С целью увеличения быстродействия процессора и максимального использования всех его возможностей в современных микропроцессорах используется конвейерный принцип обработки информации. Этот принцип подразумевает, что в каждый момент времени процессор работает над различными стадиями выполнения нескольких команд, причем на выполнение каждой стадии выделяются отдельные аппаратные ресурсы. По очередному тактовому импульсу каждая команда в конвейере продвигается на следующую стадию обработки, выполненная команда покидает конвейер, а новая поступает в него.
В различных процессорах количество и суть этапов различаются. Рассмотрим принципы конвейерной обработки информации на примере пятиступенчатого конвейера, в котором выполнение команды складывается из следующих этапов:
IF ( Instruction Fetch ) - считывание команды в процессор;
ID ( Instruction Decoding ) - декодирование команды;
OR ( Operand Reading ) - считывание операндов;
EX ( Executing ) - выполнение команды;
WB ( Write Back ) - запись результата.
Выполнение команд в таком конвейере
Так как в каждом такте могут выполняться различные стадии обработки команд, то длительность такта выбирается исходя из максимального времени выполнения всех стадий. Кроме того, следует учитывать, что для передачи команды с одной стадии на другую требуется определенное дополнительное время ( t), связанное с записью промежуточных результатов обработки в буферные регистры.
Таблица 11.1. |
|||||||||
Команда |
Такт |
||||||||
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
|
i |
IF |
ID |
OR |
EX |
WB |
|
|
|
|
i+1 |
|
IF |
ID |
OR |
EX |
WB |
|
|
|
i+2 |
|
|
IF |
ID |
OR |
EX |
WB |
|
|
i+3 |
|
|
|
IF |
ID |
OR |
EX |
WB |
|
i+4 |
|
|
|
|
IF |
ID |
OR |
EX |
WB |
Оценка производительности микропроцессора при конвейерной организации работы.
Пусть для выполнения отдельных стадий обработки требуются следующие затраты времени (в некоторых условных единицах):
TIF = 20, TID = 15, TOR = 20, TEX = 25, TWB = 20.
Тогда, предполагая, что дополнительные расходы времени составляют dt = 5 единиц, получим время такта:
.
Оценим время выполнения одной команды и некоторой группы команд при последовательной и конвейерной обработке.
При последовательной обработке время выполнения N команд составит:
Tпосл = N*(TIF + TID + TOR + TEX + TWB) = 100N.
Анализ показывает, что при конвейерной обработке после того, как получен результат выполнения первой команды, результат очередной команды появляется в следующем такте работы процессора. Следовательно,
Tконв = 5T + (N-1) * T.
Примеры длительности выполнения некоторого количества команд при последовательной и конвейерной обработке
Количество команд |
Время |
||||||||
при последовательном выполнении |
при конвейерном выполнении |
|
|
|
|
|
|
|
|
1 |
100 |
150 |
|
|
|
|
|
|
|
2 |
200 |
240 |
|
|
|
|
|
|
|
10 |
1000 |
420 |
|
|
|
|
|
|
|
100 |
10000 |
3120 |
|
|
|
|
|
|
|
Очевидно, что при достаточно длительной работе конвейера его быстродействие будет существенно превышать быстродействие, достигаемое при последовательной обработке команд. Это увеличение будет тем больше, чем меньше длительность такта конвейера и чем больше количество выполненных команд. Сокращение длительности такта достигается, в частности, разбиением выполнения команды на большое число этапов, каждый из которых включает в себя относительно простые операции и поэтому может выполняться за короткий промежуток времени. Так, если в микропроцессоре Pentium длина конвейера составляла 5 ступеней (при максимальной тактовой частоте 200 МГц), то в Pentium-4 - уже 20 ступеней (при максимальной тактовой частоте на сегодняшний день 3,4 ГГц).