Файл: Микропроцессорные устройства систем управления.doc

ВУЗ: Не указан

Категория: Решение задач

Дисциплина: Не указана

Добавлен: 27.04.2024

Просмотров: 150

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Микропроцессорные устройства систем управления

1. Общая характеристика микропроцессоров.

1.1. Структура микропроцессора и его реализация.

1.2. Классификация современных микропроцессоров и их характеристики.

1.3. Принципы управления микропроцессорами.

1.4. Структура и типы команд микропроцессора.

1.5. Способы адресации информации и прерывание работы в микропроцессоре.

Прямая адресация.

Прямая регистровая адресация.

Косвенная регистровая адресация.

Непосредственная адресация

Относительная адресация

Адресация с индексированием

Стековая адресация

1.6. Организация ввода и вывода данных в микропроцессоре.

1.7. Система команд микропроцессора.

2. Принципы организации и применения микропроцессорных систем.

2.1. Особенности организации структуры МП-системы.

2.2. Структура МП-системы с общей шиной.

2.3. Интерфейсы МП-систем.

2.4. Применение МП-системы в качестве контроллера и системы сбора данных.

3. Основы программирования микропроцессоров.

3.1. Языки программирования микропроцессоров.

3.2. Программирование на языке ассемблера.

3.3. Средства разработки и отладки прикладных программ.

Средства отладки и диагностирования

Программные средства:

Аппаратно-программные средства:

4. Типовые микропроцессоры и их применение.

4.1. Структура и характеристика типовых МП.

4.3. Примеры написания программ.

5. Мультипроцессорные системы, транспьютеры.

5.1. Классификация систем параллельной обработки данных

Конвейерная и векторная обработка.

Машины типа SIMD.

Машины типа MIMD.

Многопроцессорные машины с SIMD-процессорами.

Многопроцессорные системы с общей памятью

5.2 Мультипроцессорная когерентность кэш-памяти.

5.3. Многопроцессорные системы с локальной памятью и многомашинные системы

5.4. Транспьютеры

1.3. Принципы управления микропроцессорами.


Каждая операция, задаваемая командой, обычно требует для своей реализации выполнения определенной последовательности элементарных, неразложимых на более простые, преобразований, которые называются микрооперациями. К ним относятся пересылки информации между частями системы, логические поразрядные операции, сдвиги информации и другие. Каждая микрооперация выполняется в течение одного периода (такта) сигналов синхронизации. Эти сигналы имеют вид импульсов, последовательность которых вырабатывается специальным генератором синхроимпульсов.

Команды, определяющие выполнение микроопераций, называются микрокомандами. Таким образом, для каждой команды можно составить последовательность микрокоманд, определяющих ее реализацию. Для реализации команды требуется в среднем 5-10 микрокоманд.

В соответствии с разбивкой команды на микрокоманды различают два уровня программного управления: командный и микропрограммный. В зависимости от реализации того или другого уровня программного управления МП делят на два класса. Рассмотрим основные особенности каждого из них.

МП с управлением на уровне команд требует, чтобы программа была составлена с использованием строго определенного набора (списка) команд. Перевод команд в последовательность микрокоманд обеспечивается "жесткой" логикой устройства управления (УУ) МП, т.е. за счет постоянных, заранее предусмотренных логических связей УУ, с помощью которых для данной конкретной команды в каждом такте формируется определенная совокупность управляющих сигналов, обеспечивающая выполнение очередной микрокоманды. УУ проектируется на свой список команд, поэтому дальнейшее наращивание и изменение списка команд не допускается. При необходимости выполнить операции, для которых нет соответствующих команд в списке, составляются подпрограммы. Каждая подпрограмма состоит из группы разрешенных для данного МП команд и приводит к выполнению требуемой операции. Очевидно, что решение задач с использованием подпрограмм значительно снижает скорость обработки и, следовательно, эффективность применения МП. Поэтому стремятся к тому, чтобы МП с управлением на командном уровне имели развитую систему команд.


В МП с управлением на уровне микропрограмм преобразование команд в соответствующую последовательность микрокоманд отсутствует и программа работы МП задается в микропрограммном виде, т.е. непосредственно в микрокомандах. Поскольку, как уже говорилось, для реализации одной команды в среднем требуется выполнение 5-10 микрокоманд, то объем микропрограмм значительно превышает объем соответствующих программ. Поэтому составление и отладка микропрограмм требуют больших затрат времени. Из-за громоздкости микропрограмм и трудностей по их составлению и контролю для таких МП обычно вводят второй уровень программного управления - командный. Для этого разрабатывается система команд. Можно, например, использовать систему команд какой-нибудь большой ЭВМ с хорошо развитым программным обеспечением и приспособить ее для данного МП. С этой целью для каждой команды составляется микропрограмма, т.е. каждая команда представляется последовательностью микрокоманд. При работе МП преобразование команды в соответствующую последовательность микрокоманд происходит с помощью микропрограммного устройства управления, которое реализуется в виде отдельной специализированной БИС.

Микропрограммное устройство управления содержит ПЗУ микрокоманд, в котором хранятся коды всех микрокоманд и ПЗУ управления адресом, в котором хранятся коды, предназначенные для формирования адресов микрокоманд. В процессе работы с помощью ПЗУ управления адресом происходит формирование последовательности адресов, по которым из ПЗУ микрокоманд извлекается последовательность микрокоманд, соответствующая коду поступившей команды. Для построения микропрограммного устройства управления требуется ПЗУ большого объема. Поэтому обычно используются ПЗУ, выпускаемые в виде отдельных БИС, а остальные узлы, входящие в состав устройства управления изготавливаются в виде специализированной БИС.

Достоинством МП с микропрограммным устройством управления является возможность изменения набора выполняемых команд, которая достигается, если сменить или перепрограммировать ПЗУ микрокоманд и ПЗУ управления адресом. Поэтому при использовании МП этого типа и микропрограммных устройств управления можно строить цифровые системы, выполняющие любой набор команд, наиболее удобный для решения тех или иных задач. В МП с управлением на уровне команд набор выполняемых команд является фиксированным, т.е. является более эффективным для решения определенного класса задач.


МП с управлением на уровне команд имеют в списке обычно 45 - 150 команд. МП с управлением на уровне микропрограмм имеют обычно 256 - 512 микрокоманд. Рассмотрим основные принципы организации работы с точки зрения разбиения команд МП на последовательности микрокоманд.

Время, необходимое для считывания команды из памяти и ее выполнения, называется циклом команды. Цикл команды реализуется обычно за 1-5машинных циклов. Машинный цикл - это промежуток времени, затрачиваемый МП на одно обращение к какому-либо периферийному модулю (ОЗУ, ПЗУ, порту ввода или вывода). В МП используются обычно следующие базовые типы машинных циклов:

  • выборка команды (прием кода операции в регистр команд);

  • считывание из памяти;

  • запись в память;

  • ввод из порта ввода;

  • вывод в порт вывода;

  • прерывание;

  • останов;

Каждый машинный цикл выполняется обычно за определенное количество тактов (обычно от 3 до 5), т.е. периодов тактовых сигналов, вырабатываемых внешним генератором. Действия в каждом из тактов индивидуальны для конкретного МП, но тем не менее можно выделить следующие общие для всех МП (в порядке очередности их выполнения):

  1. вывод на шину адреса кода адреса вызываемого порта или ячейки памяти;

  2. анализ управляющих сигналов, выставление на шину данных пересылаемой информации;

  3. осуществление обмена информацией с вызываемым портом или ячейкой памяти;

  4. расшифровка команды и выполнение внутренних операций МП.

1.4. Структура и типы команд микропроцессора.


Команда МП - это такое двоичное слово, которое будучи считанное микропроцессором (преимущественно из памяти), заставляет его выполнить определенные действия. Другие, отличные от команд двоичные слова подобных действий в МП не вызывают.

Длина команды как двоичного слова совпадает с длиной слова данных. Например, длина слова команды 8-разрядного МП равна 8 бит, 16-разрядного - 16 бит и 32-разрядного - 32 бит. Однако длина команды целиком не обязательно должна ограничиваться одним словом. Есть команды МП, имеющие длину в два или три слова. Таким образом, для 8-разрядного МП команда может иметь длину в 8, 16 или 24 бит. Аналогичные команды для 16-разрядного МП могут иметь длину в 16, 32 или 48 бит. Хотя данное утверждение нельзя принимать однозначно. Существуют команды для 16- и 32-разрядных МП длиной в 8 бит. Особенно это характерно для МП, являющихся дальнейшим развитием предшествующих моделей, в которых обеспечивается программная совместимость с моделями более раннего выпуска.

Выполнение команды начинается со считывания ее из памяти в регистр команд в течении цикла выборки. Далее команда декодируется дешифратором команд, после чего устройство управления под действием тактовых импульсов вырабатывает последовательности векторов управляющих сигналов, определяющих действия МП для успешного выполнения команды. Этими действиями могут быть: считывание операндов, загрузка регистров данными, загрузка счетчика команд новым адресом и т.д. Отсюда следует, что команда должна содержать информацию двух видов. Во-первых, команда должна сообщить МП, что необходимо сделать (выполнить сложение, сдвиг, пересылку и т.п.). Во вторых, указать адрес, т.е. местонахождение обрабатываемых данных.

Таким образом, команда представляет собой двоичный код, который содержит информацию о виде операции, выполняемой на текущем этапе обработки, который называется кодом операции и о расположении операндов – данных, над которыми выполняются операции. Расположение операндов дается их адресами. Если команда имеет длину более одного слова, то первым словом - может быть код операции, а остальными (вторым или вторым и третьим) - адрес операнда или данных. Команда, состоящая из одного слова, содержит только код операции. Однако неверно было бы думать, что такая команда является безадресной. В таких командах адресом могут служить, например, регистры или регистровые пары, двоичные
коды которых входят в код операции или, иначе говоря, в код всей команды.

Так, если разрядность ячейки памяти равна разрядности шины данных МП, то для многих типов МП с простыми способами адресации (о способах адресации информации будет изложено дальше) команды с длиной более одного слова располагаются в соседних ячейках памяти, причем наименьший адрес (А) имеет первое слово. Второе слово располагается в ячейке памяти с адресом на 1 большим (A+1), третье слово - в ячейке памяти с адресом еще на 1 большим (А+2):



Адрес А

Адрес А+1(2

или 4)

Адрес А+2 (4

или 8)










1е слово код операции

2е слово адрес (данные)

3е слово адрес (данные)


Если ячейка памяти имеет разрядность 8 бит, то под каждый байт команды отводится свой адрес. В этом случае первое слово будет иметь адрес (А), второе слово - адрес (А+2) или (А+4) в зависимости от разрядности МП, а третье слово - адрес (А+4) или (А+8) соответственно разрядности МП. В командах с длиной более одного слова адрес первого слова команды считается адресом всей команды.

Существуют МП, для которых память разделяется на сегменты, каждый из которых служит для хранения информации определенного типа. Каждый сегмент имеет в этом случае свой начальный адрес, хранящийся в специальных сегментных регистрах. Например, можно выделить два отдельных сегмента памяти, называемых сегментом кода и сегментом данных. Первый хранит коды команд, а второй - адресуемые данные. Такой подход характерен для сложных видов адресации, когда физический адрес формируется путем вычислений над содержимым сегментных регистров и адресными смещениями, являющимися логическими адресами и задаваемыми непосредственно в команде или содержащимися в адресных регистрах.

Для некоторых МП в коде команды может также содержаться дополнительная информация о способе адресации, направлении передачи данных, источнике или приемнике информации, характере обрабатываемой информации и пр. В этом случае под эту дополнительную информацию отводится m-разрядов, располагаемых обычно в первом слове команды.