Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Организация микропроцессоров и микропроцессорных систем. Учебное пособие
.pdf
11
Тип команды
КОП
№Рг
Тип команды
КОП
№Рг1
№Рг2
Тип команды
КОП
№Рг
const
Тип команды
КОП
Вид адресации
№Рг
Адрес
С
С
Сдвиг с переносом
вправо
влево
В сдвигах с переносом выдвигаемый разряд передвигается в триггер
переноса С, а его текущее значение – в освобождаемый разряд (рис. 1.8).
Рис. 1.8
Структура и форматы команд МП
Все команды МП имеют поля, которые определяют: тип команды;
код операции; длину команды. Кроме того, в командах, связанных с обращением к памяти, должны быть предусмотрены поля, определяющие адрес
ячейки и номер Рг, источника или приемника информации. В командах,
связанных с обращением к Рг, в адресной части должны быть указаны номера Рг источников информации и приемник результатов.
Команды различных типов отличаются структурой, то есть набором
полей. Так, команды изменения содержимого Рг (инкремент, декремент,
сдвиги, отрицание) имеют структуру, приведенную на рис. 1.9.
Рис. 1.9
Команды выполнения операций над содержимым Рг (переслать, сложить, вычесть) имеют структуру, представленную на рис. 1.10.
Рис. 1.10
Команды с непосредственной адресацией (загрузить непосредственно в Рг число или сложить непосредственно содержание Рг и const) имеют
структуру, изображенную на рис. 1.11.
Рис. 1.11
Команды обращения к памяти (загрузить, заполнить, сложить, вычесть) имеют следующую структуру (рис. 1.12).
Рис. 1.12

12
Виды адресации
прямая и
непосредственная
с использованием Рг
базовая, индексная,
относительная
I
II
III
Формат команды задает распределение указанных полей по разрядам
командных слов.
Чем больше длина команды, тем больше времени требуется на ее
выполнение. Поэтому чтобы увеличить быстродействие МП, стремятся
уменьшить длину команды. Это достигается следующими способами: ограничение числа доступных РОН; ограничение числа связей между РОН;
применение различных видов адресации памяти (например, страничной).
1.3. Виды адресации МП
Обращение к памяти является наиболее часто встречающейся операци-
ей, поэтому эффективность использования МП во многом определяется видами адресации к памяти большого объема. При любых способах адресации
к памяти формируется исполнительный (физический) адрес, по которому
производится обращение к ячейке адресного пространства МП.
Адресное пространство – это множество адресов ОП, доступных для
программ, выполняемых МП. Размер адресного пространства определяется
максимальной длиной исполнительного адреса (разрядностью ША). Так,
N-разрядный адрес позволяет обращаться к ОП с объемом 2N байт.
Все виды адресации можно классифицировать так, как это показано на
рис. 1.13.
Рис. 1.13
Для видов адресации группы I характерно, что адрес операнда или
операнд содержатся в команде.
Прямая адресация является наиболее естественным способом. Здесь
исполнительный адрес задается в команде, поступающей в МП по шине
данных (ШД). После ее дешифрации адрес передается в Рг адреса. Схема
прямой адресации имеет вид, показанный на рис. 1.14.
Такая адресация является простой, но неэкономной, так как требует
увеличения длины команды за счет адресного поля. Используется для обращения к простым переменным.

13
Рг команд
Рг адреса
ШД
ША
команда
адресное поле
исполнит. адрес
Рг команд
РОН
А
БРг
БРг
АЛУ
ШД
команда
операнд
внутренняя ШД
Рис. 1.14
Непосредственная адресация. Здесь адресная часть команды содержит непосредственно операнд, а не адрес операнда, как при прямой адресации. Схема непосредственной адресации представлена на рис. 1.15.
Рис. 1.15
При выполнении команды с непосредственной адресацией операнд
загружается в один из РОН или аккумулятор А. При этом выбор регистра
осуществляется по коду операции. Команды такого типа используются для
инициализации счетчиков, загрузки констант и выполняются очень быстро, так как не требуют обращения к ОП.
Виды адресации группы II предполагают обращение к данным или
формирование адресов с применением внутренних регистров МП. Выделяют прямую и косвенную регистровую адресацию.
Прямая регистровая адресация используется для обращения к внутреннему регистру МП, содержащему операнд. По коду операции операнд
пересылается по внутренней ШД в аккумулятор или буферный Рг. Схема
реализации прямой регистровой адресации показана на рис. 1.16.

14
РОН
А
БРг
БРг
АЛУ
ШД
внутренняя ШД
Рг команд
ДШ команд
и схема
управления
команды
выбор
Рг
:
операнд
РОН
ШД
Рг команд
ДШ команд
и схема управле-
ния
команда
:
выбор
Рг
Рг адреса
ША
адрес
исполнительный адрес
Рис. 1.16
Команды такого типа имеют минимальную длину – один или два
байта и выполняются очень быстро, так как не требуют обращения к ОП.
Косвенная регистровая адресация. Такая команда указывает РОН,
содержащий исполнительный адрес. Команда имеет длину 1- 2 байта, но
перед выполнением этой команды с помощью отдельной команды необходимо загрузить адрес в РОН. При выполнении команды с косвенной регистровой адресацией адрес пересылается в Рг адреса и далее на ША. Схема
такой адресации представлена на рис. 1.17.
Рис. 1.17

15
АЛУ
ШД
ША
Рг команд
команда
Рг адреса
смещение
начальный адрес
Базовый (индексный) Рг
Команда с косвенной регистровой адресацией может быть с автоувеличением или автоуменьшением значения адреса в РОН.
В командах адресации группы III содержится смещение, которое
следует за кодом операции. Значение смещения складывается с содержимым некоторого регистра для образования исполнительного адреса. Смещение может быть длиной от 1 до 4 байт.
Базовая адресация. Исполнительный адрес получается путем сложения адресного поля команды (смещения) с содержимым базового Рг.
Обычно базовый Рг содержит начальный адрес фрагмента памяти, хранящего массив данных. В этом случае смещение позволяет выбрать элемент
массива, не указывая полный адрес. Изменяя содержимое базового Рг,
можно обращаться к различным структурам данных.
Индексная адресация. Механизм формирования исполнительного ад-
реса совпадает с базовой адресацией. Их отличие заключается в назначении. При индексной адресации регистр задает адрес элемента массива относительно начального адреса, который определяется смещением. Схема
базовой и индексной адресации приведена на рис. 1.18.
путем сложения смещения с содержимым счетчика команд (Сч К) МП.
Данный метод удобен при организации переходов в программе. Он позволяет выбирать команду программы относительно следующей (ее адрес в
Сч К) без задания полного адреса. Смещение указывает расположение команды относительно содержимого Сч К как вперед, так и назад.
Рис. 1.18
Относительная адресация. Здесь исполнительный адрес получается

16
УП
БМУ
Рг МК
Модуль
обработки
1
Модуль
обработки
N
Модуль
синхро-
низации
Память
Обмен с УВВ
сигналы синхронизации
…
ОУ
МК
УУ
ШУ
ША
ШД
признаки результата
1.4. Микропрограммируемые микропроцессоры и МПС
Микропрограммным управлением называется способ организации
устройства управления, при котором каждая машинная команда интерпретируется стандартной микропрограммой. Микропрограмма состоит из
микрокоманд, а каждая МК - из микроопераций.
Микрооперация – это реализуемая аппаратным способом некоторая
простая операция переработки информации.
В основу разработки систем с микропрограммным управлением положены следующие принципы:
- модульный способ построения систем;
- магистральная организация связи между модулями;
- микропрограммное управление с возможностью реализации любой
системы команд;
- наращиваемая разрядность обрабатываемых данных;
- специализация модулей на выполнение определенных функций
(обработка, управление, хранение, интерфейс).
Обобщенная структурная схема микропрограммируемой МПС приведена на рис. 1.19.
В состав МПС входят следующие основные модули.
1. Модули обработки (вычислительные модули) предназначаются
для обработки адресов и данных. В операционное устройство входит не-
Рис. 1.19

17
Поле управле-
ния модулем
_синхронизации
БМУ
Рг адреса МК
УП
Поле управле-
ния генерацией
адреса
следующей МК
Поле управления
модулями обработ-
ки ки
адрес пе-
рехода
Поле
кода
струк-
туры
начальный
адрес с ШД
сигналы синхронизации
Рг МК
коды управления
операционным
устройством
коды управления
модулем
синхронизации
сколько модулей, работающих последовательно или параллельно. Модули
могут быть как универсальными, так и специализированными.
2. Модуль управляющей памяти УП предназначен для хранения
микропрограмм, управляющих работой всех модулей МПС при реализации
любой команды, входящей в состав системы команд.
3. Блок микропрограммного управления БМУ предназначен для
приема внешней команды из памяти и вычисления последовательности адресов УП для выборки микрокоманд. Эта выборка происходит с учетом
признаков результатов, поступающих из операционного устройства.
4. Модуль синхронизации предназначен для управления моментами
выдачи и приема МК, данных и адресов модулями на системные шины
(ШУ, ША, ШД).
5. Модуль оперативной памяти предназначен для хранения про-
грамм и данных в процессе функционирования МПС.
6. Модуль обмена с УВВ предназначен для приема и передачи ин-
формации, а также для организации приоритетной обработки при работе
МПС с внешними устройствами.
1.4.1. Организация управления в микропрограммируемых МПС
Структурная схема управляющей части микропрограммируемой
МПС представлена на рис 1.20.
МК включает в себя ряд полей, содержащих коды управления моду-
лями системы. В общем случае формат слова МК содержит поля 3-х видов:
Рис. 1.20

18
Поле 1
Поле 2
…
Поле N
Модуль
обработки 1
Модуль
обработки 2
Модуль
обработки N
…
поле кода структуры;
поля индивидуального пользования;
поля коллективного пользования.
Поле кода структуры содержит коды управления состоянием моду-
лей (работает/не работает) и определяет взаимодействие модулей с магистралями (подключен/отключен).
Поля индивидуального пользования закрепляются за теми модулями
МПС, которые работают одновременно и требуют управления в каждой
МК. К ним относятся: поле управления генерацией адреса следующей МК,
соответствующее БМУ, и поле управления модулем синхронизации. Второе поле определяет режим работы блока синхронизации и обеспечивает
синхронность работы модулей системы при выполнении операций разной
длительности.
Поля коллективного пользования содержат коды управления опера-
ционным устройством МПС и используются поочередно для размещения
инструкций для различных групп модулей обработки. Кроме того, при выполнении БМУ операций условного перехода здесь также размещается адрес перехода.
Существуют три основные стратегии кодирования полей МК, управляющих работой операционного устройства: горизонтальная; вертикальная; смешанная.
При горизонтальном микропрограммировании каждая МК содержит
поля управления всеми модулями операционного устройства. При таком
способе достигается максимальная производительность МПС. Это получается за счет распараллеливания вычислительного процесса, как это показано на рис. 1.21.
Рис. 1.21
Основной недостаток – это значительная избыточность управляющей памяти из-за того, что далеко не в каждой МК используются все поля
одновременно.
При вертикальном микропрограммировании в МК содержится только одно поле, позволяющее управлять одним из модулей ОУ. Выбор модуля обработки (МО) осуществляется полем кода структуры (рис. 1.22).

19
Поле кода
структуры
Поле управления
МО
МО 1
МО 2
МО N
Схема выборки модуля
Рис. 1.22
При таком способе организации управления достигается наиболее
рациональное использование управляющей памяти. Но быстродействие
МПС в этом случае минимальное, так как невозможна одновременная работа даже двух модулей.
Смешанное микропрограммирование сочетает черты вертикального
и горизонтального способов. Оно обеспечивает компромисс между возможностью одновременного управления несколькими модулями и ограниченной разрядностью слова МК. При этом способе в МК выделяется некоторое фиксированное число полей, меньшее, чем число модулей обработки. Каждое поле используется для поочередного управления некоторым
подмножеством модулей, не функционирующих одновременно.
1.4.2. Применение микропрограммируемых микропроцессорных
комплектов
Наиболее широко микропрограммируемые микропроцессорные
комплекты используются в следующих областях: контроллеры нестандартного периферийного оборудования и внешних устройств; контроллеры
для управления технологическими процессами, например контроллеры
станков с ЧПУ; бортовые спецвычислители, работающие в реальном масштабе времени.
Управляющие и вычислительные устройства, реализуемые на основе
таких комплектов, можно разделить на два класса:
работки данных. В микроконтроллерах такой уровень один: уровень микропрограммного управления. В процессорах команд уровней два: уровень
программного управления (система команд); уровень микропрограммного
управления.
микропрограммные контроллеры (микроконтроллеры);
процессоры команд.
Их различие заключается в числе уровней управления процессом об-

20
БМУ
УП
Рг МК
Операционная
часть
результаты
данные
ША
ШД
ШУ
Память
программ
и данных
РгК
ПЗУ НА
БМУ
УП
РгМК
Операционно-
адресная часть
Типовая структура микроконтроллера в упрощенном виде представлена на рис. 1.23. Здесь прикладной алгоритм полностью записан в УП в
виде последовательности МК, которые задают на каждом такте функционирование операционной и управляющей частей МП.
Рис. 1.23
Структура процессора команд изображена на рис. 1.24. Здесь используются следующие обозначения: РгК - регистр команд; ПЗУ НА - ПЗУ начальных адресов, предназначенное для определения начального адреса
микропрограммы.
Операционно-адресная часть предназначена для выполнения арифметических и логических операций, обработки адресов, хранения промежуточных результатов. В процессорах команд небольшой производительности эти две части могут быть объединены.
Рис. 1.24
Существенным отличием от микроконтроллеров является то, что
прикладной алгоритм полностью записан не в управляющей памяти, а в
памяти программ. Эта память является внешней по отношению к процессору. Прикладной алгоритм выполняется в процессоре как последователь-
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
