Главная > Промышленная электроника
НАПИШУ ВСЁ ЧТО ЗАДАЛИ
СЕКРЕТНЫЙ БОТ В ТЕЛЕГЕ
<< Предыдущий параграф Следующий параграф >>
Пред.
След.
Макеты страниц

Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше

Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике

ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO

4.13. СИСТЕМА КОМАНД МИКРОПРОЦЕССОРА

Для рассмотрения системы команд необходимо более детально познакомиться со структурой МП. Среди многообразных решений современных МП выбираем широко применяемую схему восьмиразрядного однокристального МП серии , структура которой приведена на рис. 4.33. Сравним ее с ранее рассмотренной структурой рис. ,

Рис. 4.33. Структурная схема микропроцессора

Обе структуры содержат арифметико-логическое устройство АЛУ с буферными регистрами БР А и БР В на его входе, систему регистров общего назначения РОН и устройство управления УУ. Схема содержит восемь РОН (B, С, D, Е, H, L, W и Z) и упомянутые выше элементы: Аккумулятор, т. е. регистр, предназначенный для хранения результатов, и Счетчик команд (СК), положение которого указывает номер ячейки памяти, в которой хранится выполняемая команда. После ее выполнения число, записанное в СК, увеличивается на 1. МП связан с магистралями через упомянутые выше буферные усилители (БУ): для связи с магистралью данных (МД) — через БУ данных БД, а для связи с магистралью адресов (МА) — через БУ адресов БА.

В отличие от схемы рис 4.31, а рассматриваемый МП содержит только одну внутреннюю МД. Назначение остальных элементов будет рассмотрено ниже.

Функции, устройства управления МП очень обширны: оно должно обрабатывать команды, обеспечивающие выбор нужного регистра из РОН (для этого введена Схема выбора регистра), передачу информации из РОН в АЛУ, задание кода выполняемой операции в АЛУ, запись результата в Аккумулятор или РОН, переход к следующему шагу программы, обмен информацией с ЗУ и устройствами ввода и вывода. Для управления внутренними элементами МП используются выходные команды устройства управления (УУ) , а для связи с управляющими входами внешних цепей команды . Число выходов УУ весьма велико, но ряд сочетаний выходных сигналов никогда не используется, поэтому на вход УУ подают не команду, состоящую из перечня выходных сигналов , а лишь условный код выполняемой команды.

Рассмотрим этап исполнения МП одной команды: СЛОЖИТЬ СОДЕРЖИМОЕ АККУМУЛЯТОРА и РЕГИСТРА В. Для выполнения этой команды необходимо два такта:

1 такт. Одновременно подаем команду на схему выборки регистра (выбрать регистр В), производим чтение данных из регистра В, их передачу по внутренней магистрали данных в буферный регистр БР В, а также запись числа, записанного в аккумуляторе, в буферный регистр БР А.

2 такт. Выдача команды на сложение в АЛУ, передача результата по внутренней МД данных из АЛУ в аккумулятор.

Помимо этих двух тактов, затраченных на исполнение команды, несколько тактов тратится на выборку команды и перенос ее в МП. При установке счетчика команд в новое положение через БА на МА поступает -разрядный адрес ячейки памяти, где хранится очередная команда. Команда из ЗУ поступает на МД и через БД проходит в регистр команд РК, который хранит ее до полного выполнения. С выхода РК код команды поступает а а УУ, которое вырабатывает команды , управляющие исполнением команды. Как указано в § 4.12, команды в восьмиразрядном процессоре имеют длину до 3 байтов. Для передачи по МД при этом требуется три такта. Таким образом, УУ осуществляет последовательный (миоготактный) принцип работы МП, чередующий этапы выборки команды и ее исполнения. Во-вторых, установлено, что быстродействие МП уменьшается при увеличении формата команды, так как при этом растет время на передачу команды из ЗУ в МП.

С целью уменьшения формата команд число возможных команд ограничено. Так при выполнении логических или арифметических операций над числами X и Y результат заносится по месту нахождения одного из чисел (как правило, аккумулятор), резко ограничено число команд, при выполнении которых извлекаются данные из ЗУ или записываются в ЗУ (ведь запись адреса в ЗУ занимает два байта команды).

В двух- и трехбайтовых командах второй и третий байты — это адрес данных, хранящихся в ЗУ, либо сами данные. При поступлении команды в МП второй и третий байты команды хранятся в РОН W и Z. Рассмотрим основные команды МП. Они делятся на три типа:

1. Команды обработки данных.

СЛОЖИТЬ содержимое аккумулятора и регистра;

СЛОЖИТЬ содержимое аккумулятора и число, записанное во втором байте команды;

ВЫЧЕСТЬ из содержимого аккумулятора содержимое регистра (либо число, записанное во втором байте команды);

ЛОГИЧЕСКИ СЛОЖИТЬ содержимое аккумулятора и регистра (либо число, записанное во втором байте команды);

ЛОГИЧЕСКИ УМНОЖИТЬ содержимое аккумулятора и регистра (либо число, записанное во втором байте команды);

УВЕЛИЧИТЬ (или УМЕНЬШИТЬ) содержимое регистра на единицу;

СДВИНУТЬ содержимое аккумулятора на один разряд влево (или вправо);

ЛОГИЧЕСКИ ИНВЕРТИРОВАТЬ содержимое аккумулятора (поразрядно).

2. Команды передачи данных.

ЗАГРУЗИТЬ данные из указанной ячейки памяти в аккумулятор (или регистр);

ЗАПОМНИТЬ число, записанное в аккумуляторе (или регистре), в указанной ячейке памяти ЗУ;

ПЕРЕСЛАТЬ данные из одного регистра в другой РОН;

ВВОД — передача данных с устройства ввода в аккумулятор; ВЫВОД — передача данных из аккумулятора на устройство вывода;

ЗАГРУЗИТЬ НЕПОСРЕДСТВЕННО регистр числом, указанным во втором байте команды.

3. Команды управления.

БЕЗУСЛОВНЫЙ ПЕРЕХОД К КОМАНДЕ (указывается номер ячейки памяти, где хранится данная команда) позволяет нарушить естественный порядок выполнения программы, осуществляемый в порядке возрастания номеров, в том числе повторить часть программы;

БЕЗУСЛОВНЫЙ ПЕРЕХОД К ПОДПРОГРАММЕ (указывается номер ячейки памяти, где хранится начало подпрограммы). По окончании подпрограммы происходит возврат к прерванному этапу основной программы, для чего в конце подпрограммы указывается команда:

ВОЗВРАТ ИЗ ПОДПРОГРАММЫ.

Существуют команды условных переходов, позволяющие МП принимать решение в зависимости от получаемых результатов: УСЛОВНЫЙ ПЕРЕХОД К КОМАНДЕ; УСЛОВНЫЙ ПЕРЕХОД К ПОДПРОГРАММЕ; УСЛОВНЫЙ ВОЗВРАТ ИЗ ПОДПРО-ГРАММЫ. Эти команды выполняются или не выполняются в зависимости от результата выполнения предыдущей команды программы. Возможны следующие варианты, получаемые при анализе результата:

нулевое (или ненулевое) значение результата; положительное (или отрицательное) значение результата; наличие (или отсутствие) сигнала переноса (или заема при вычитании) на выходе АЛУ.

Для анализа результата на выходе АЛУ и хранения результата анализа во время выполнения следующей команды МП снабжен Регистром признаков (РП), подключенным к АЛУ. В зависимости от сигнала на нем МП выполняет операцию условного перехода или пропускает ее. Например, при нулевом результате на выходе АЛУ при выполнении предыдущей команды будет выполнена команда УСЛОВНЫЙ ПЕРЕХОД К ПОДПРОГРАММЕ ПО НУЛЕВОМУ ЗНАЧЕНИЮ РЕЗУЛЬТАТА, а при отличном от нуля результате эта команда будет пропущена и счетчик команд перейдет к следующей по номеру команде.

Рассмотрим простой пример создания управляющей программы. МП управляет работой силового ключа, подключающего нагреватель к сети. На вход МП через АЦП поступают данные о температуре t. При силовой ключ размыкается, а при снижении температуры силовой ключ должен быть замкнут. Такой способ управления называется двухпозиционным слежением.

Программа, выполняемая МП, может быть реализована в следующем виде:

НАЧАЛО.

1. ВЫВОД: команда на включение силового ключа.

2. ВВОД: запись температуры t в аккумуляторе.

3. ВЫЧЕСТЬ из содержимого аккумулятора число Ттох, записанное во втором байте команды.

4. УСЛОВНЫЙ ПЕРЕХОД ПО ОТРИЦАТЕЛЬНОМУ РЕЗУЛЬТАТУ к п. 2.

5. ВЫВОД: команда на отключение силового ключа.

6. ВВОД: запись t в аккумуляторе.

7. ВЫЧЕСТЬ из содержимого аккумулятора число , записанное во втором байте команды.

8. УСЛОВНЫЙ ПЕРЕХОД ПО ПОЛОЖИТЕЛЬНОМУ РЕЗУЛЬТАТУ к п. 6.

9. БЕЗУСЛОВНЫЙ ПЕРЕХОД к п. 1.

Интервалы, через которые контролируется температура, при реализации данной программы порядка . Необходимости в столь частом контроле температуры нет, поэтому МП наряду с выполнением этой программы может решать и другие задачи в режиме разделения времени.

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

Для работы со стеком система команд МП дополнена командами пересылки данных: ЗАГРУЗКА СТЕКА содержимым регистра или аккумулятора или числами, записанными во втором и третьем байтах команды, ЗАГРУЗКА АККУМУЛЯТОРА или регистра данными, записанными в стеке. Дополняются команды управления: ЗАПИСЬ В УКАЗАТЕЛЬ СТЕКА числа, записанного в регистре, УВЕЛИЧЕНИЕ (или УМЕНЬШЕНИЕ) НА ЕДИНИЦУ числа, записанного в указателе стека. Число, записанное в УС, передается через буферный усилитель БА на МА и обеспечивает чтение данных из ячейки памяти ЗУ.

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

Система команд МП содержит команды с прямой и косвенной адресациями.

Устройство управления МП организует работу всех элементов , ЗУ, устройств и портов ввода и вывода. Для этого УУ снабжено выводами во внешнюю цепь (сигналы ЧТ, ГОТ, ОЖД и др.), которые подключаются к магистрали управления (МУ) . Рассмотрим основные сигналы управления, которыми обмениваются МП с другими элементами системы.

При наличии сигнала МП принимает информацию с МД, а при сигнале МП выдает информацию на МД. Эти команды соответствуют различным состояниям буферного усилителя БД МП.

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

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

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

Процесс создания микропроцессорного устройства управления включает следующие этапы подготовки:

1. Описание и анализ задачи.

2. Составление алгоритма решения задачи.

3. Составление детальной блок-схемы решения.

4. Размещение команд по адресам ячеек памяти.

5. Выделение ячеек памяти для хранения данных и результатов промежуточных вычислений и РОН для хранения переменных в процессе вычисления.

6. Составление программы на языке Ассемблера.

7. Превращение программы в последовательность двоичных машинных команд, а также отладка программы.

8. Запись отлаженной программы в ПЗУ.

9. Разработка аппаратурных средств микроЭВМ и интерфейса, т. е. устройств для сопряжения внешних источников с микроЭВМ, а также связи микроЭВМ с органами управления и исполнительными узлами.

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

1
Оглавление
email@scask.ru