
- •1. Математическая и логическая основа вт
- •Проблема представления информации.
- •Системы счисления, используемые в цифровой технике.
- •1.3. Формы представления двоичных чисел.
- •1.4. Арифметические операции над числами с фиксированной точкой.
- •1.6.Логическая основа вт. Элементарные фал и их техническая реализация.
- •2. Комбинационные цифровые устройства (кцу).
- •2.1. Последовательность синтеза кцу.
- •2.2. Табличный и скобочный способы задания кцу.
- •2.5. Основные законы и тождества алгебры логики.
- •Минимизация фал.
- •2.7. Базисы и минимальные базисы.
- •1 Вариант - обычный каскад.
- •2 Вариант - каскад с открытым коллектором.
- •3 Вариант - каскад с открытым эмиттером.
- •4 Вариант - каскад с тремя состояниями.
- •3. Последовательностные цифровые устройства (пцу).
- •3.1. Понятие пцу.
- •1 Этап. Определение минимального числа состояний, позволяющих построить устойчивый автомат, соответствующий поставленным условиям работы.
- •Переход к динамическому способу управления;
- •Увеличение числа состояний автомата, т.Е. Числа триггеров зу.
- •2 Этап. Определение количества и типа триггеров зу.
- •3 Этап. Определение функций переходов и синтез кцу1.
- •Лекция 11 d rg 1 Циклический сдвиг организуется путём соединения выхо-
- •Двоичные счётчики.
- •C t tt t tt t tt c ct2 1 q1 графическое
- •Счётчики с произвольным модулем счёта.
- •Полупроводниковые запоминающие устройства.
- •4.1. Классификация и основные характеристики зу.
- •4.2. Организация накопителя зу.
- •4.3. Статические озу.
- •4.4. Динамические озу.
- •4.6. Построение памяти заданной структуры.
- •4.7. Стековая память.
- •Преобразователи сигналов.
- •6.1. Принципы построения цап.
- •Согласующее
- •6.2. Основные параметры цап.
- •6.3. Аналого-цифровые преобразователи.
- •6.4. Основные параметры ацп.
- •7. Принципы управления микропроцессора.
- •7.1. Классификация микропроцессоров.
- •7.2. Декомпозиция мп.
- •7 .3. Принцип аппаратного управления ("жёсткой" логики).
- •7.4. Принцип микропрограммного управления (гибкой логики).
- •7.5. Способы формирования сигналов управления
- •Код номера
- •7.6. Операционное устройство мп.
- •7.7. Обобщённая структурная схема мп.
- •8. Элементы архитектуры мп.
- •8.1. Структура команд.
- •Необходимость иметь большее число разрядов для представления адресов и кода операции приводит к недопустимо большой длине трёхадресной команды;
- •Часто в качестве операндов используются результаты предыдущих операций, хранимых в регистрах мп. В этом случае трёхадресный формат используется неэффективно.
- •8.2. Способы адресации, основанные на прямом использовании кода команды.
- •Номера реги- стров
- •Число 4527
- •Адрес 1765
- •8.3. Способы адресации, основанные на преобразовании кода команды.
- •8.4. Понятие вектора состояния мп.
- •8.5. Понятие системы прерывания программ.
- •8.6. Характеристики системы прерывания.
- •8.7. Способы организации приоритетного обслуживания запросов прерывания.
- •Счётчик
- •Счётчик
- •Компаратор
- •Код маски
- •8.8. Процесс выполнения команд. Рабочий цикл мп.
- •8.9. Конвейерная обработка команд и данных.
- •8.10. Особенности risc-архитектуры.
- •Усложнение процессора делает более трудным или даже невыполнимым реализацию его на одном кристалле, что могло бы облегчить достижение высокой производительности.
- •Регистры глобальных переменных
- •Регистр адреса
- •Цепи данных
- •Интерфейс пу
- •Канал ввода-вывода
- •Канал ввода-вывода
- •1. Организация цепочки данных.
- •9.4. Интерфейсы периферийных устройств.
- •Данные от процессора
- •Данные в процессор
- •Регистр передатчика очищен
- •Регистр приёмника заполнен
8.9. Конвейерная обработка команд и данных.
Принцип конвейерной обработки начнём рассматривать с конвейера команд.
Пусть
рабочий цикл МП состоит из k
этапов, причём i-й этап
имеет продолжительность ti.
Тогда при последовательном выполнении
этапов длительность цикла определяется
суммой ТПОСЛ
=
, а общая производительность
процессора РПОСЛ
= 1/
операций/с.
Скорость работы МП может быть увеличена, если для выполнения каждого этапа ввести отдельный аппаратурный блок:
1
2
k-1
k
. . .
. . .
i
Позиции конвейера
Полученная таким образом обрабатывающая линия, и называется конвейером.
Конвейер называется синхронным, если он работает в принудительном темпе и для выполнения любого этапа выделено одно и то же время tТ (такт конвейера).
В этом случае разбиение цикла на этапы и выбор длительности такта производятся согласно условиям:
t
Т
= max{ti},
i = 1,…, k;
(максимальная из длительностей этапов)
ti + ti+1 > tТ, i = 1,…, k.
Если для каких-либо смежных этапов второе условие не выполняется, то их следует объединить в один этап либо наиболее длинный этап разбить на несколько этапов. В последнем случае заново выбирается tТ и вновь проверяется первое условие.
После того как все позиции конвейера окажутся заполненными, параллельно во времени будет обрабатываться k команд.
Действительно, в момент заполнения конвейера в k-ой позиции обрабатывается k-й этап первой команды, в (k-1)-й позиции – (k-1)-й этап второй команды и т.д., в первой позиции – первый этап k-й команды.
Теоретически соотношение производительностей процессора при конвейерной обработке и при последовательном выполнении этапов рабочего циклаи имеет вид: k/2 < (PКОНВ/РПОСЛ) k.
В действительности рост производительности МП оказывается ниже из-за простоев конвейера.
Так, при выполнении команд пересылки данных отдельные этапы рабочего цикла отсутствуют и, следовательно, простаивают отдельные блоки конвейера. Для команд условного перехода несколько тактов простаивает весь конвейер, т.к. выборка следующей команды должна быть задержана, пока не будет сформирован признак результата предыдущей операции (формируется на более позднем этапе).
Таким
образом, если pm
– вероятность выборки команды, вызывающей
задержку конвейера на m
тактов (m = 1, 2,…, k),
то действительная производительность
конвейера будет в (1
+
)
меньше теоретической.
При большой зависимости продолжительностей выполнения отдельных этапов от типа команды целесообразно применение асинхронного конвейера.
В асинхронном конвейере команд нет единого такта работы его блоков.
Информация передаётся с одного блока конвейера на следующий, когда данный и следующий блоки полностью закончат свои процедуры.
Управление передачей информации между соседними блоками асинхронного конвейера осуществляется с помощью двух триггеров – триггера готовности блока (сигнализирует о завершении операции в данном блоке) и триггера освобождения последующего блока.
В целях повышения производительности МП принцип конвейерной обработки широко используется и в АЛУ, которые строятся в виде арифметического конвейера, причём таких арифметических конвейерных линий в процессоре может быть несколько.
Подобные операционные устройства часто называют магистральными.
Пусть операционное устройство должно вычислять некоторую функцию Ф от входных данных.
Эту функцию можно представить в виде последовательности более простых подфункций: 12. . . k.
Результаты преобразования, выполняемые подфункцией i, используются в качестве входных данных при вычислении подфункции i+1.
Если при этом для каждой подфункции иметь реализующий её схемный блок, то получим арифметический конвейер, который может быть выполнен как синхронным, так и асинхронным.
При использовании арифметического конвейера для выполнения разных операций усложняется определение состава блоков конвейера и может потребоваться настройка с соответствующей коммутацией блоков на операцию, задаваемую текущей командой.
В ряде МП одновременно присутствуют конвейер команд и арифметический конвейер.