Электрическая структурная схема микропроцессорной системы

Разработка автоматических систем управления технологическими и производственными процессами и оснащения их роботами-манипуляторами, приборами управления и контроля. Структура Intel. Арифметико-логическое устройство. Резидентная память. Программная модель.

Рубрика Производство и технологии
Вид контрольная работа
Язык русский
Дата добавления 27.02.2009
Размер файла 217,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

СОДЕРЖАНИЕ

  • Введение 2
  • 1.Общая часть 7
  • 2. Обобщенная структура 8
  • 3. Структура Intel 8051 (К1816 ВЕ51) 9
  • 4. Арифметико-логическое устройство 9
  • 5. Резидентная память 10
  • 6. Устройство управления и синхронизации 15
  • 7. Программная модель ОМК 20
  • 8. Система команд 23
  • Введение

Характерная черта научно-технического прогресса, определяющего дальнейший мощный подъём общественно-технического производства: широкое внедрение достижений вычислительной и микропроцессорной техники во все отрасли народного хозяйства. Решение задач научно-технического прогресса требует применения средств вычислительной техники на местах экономистов, инженеров, экономического персонала.

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

Особое значение получает разработка автоматических систем управления технологическими и производственными процессами и оснащения их роботами-манипуляторами, приборами управления и контроля. Автоматизация и роботизация производства замена человеческого труда трудом машин, автоматов и роботов позволяет во много раз повысить производительность труда и качество продукции. Внедрение автоматизации и роботизации позволяет во много раз повысить проводить различные работы в тех отраслях хозяйства, где использование человеческого труда является неприемлемым из-за опасности для жизни и здоровья рабочих. Кроме того, точность выполнения работы, производимой машиной намного выше точности работы, выполненной человеком, что делает необходимым применение роботов и автоматов при изготовлении миниатюрной и высокоточной продукции.

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

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

Первые поколения ЭВМ создавались а основе электронных ламп, затем транзисторов, и, поэтому, из-за своей высокой стоимости не находили широкого применения.

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

Достижения микроэлектронной технологии позволило значительно расширить возможности всех классов ЭВМ.

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

До настоящего времени были разработаны 4 поколения ЭВМ, причём первые 3 уже не используются. Четвёртое поколение ЭВМ, созданное на основе сверхбыстрых БИС способно выполнять сотни миллионов операций в секунду.

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

Использование ПК во многих случаях позволяет повысить продуктивность и качество труда. Такие ЭВМ имеют довольно понятный интерфейс, благодаря чему работа с ними не требует особой подготовки. Широкий спектр программного обеспечения даёт возможность быстро изменить назначение данной ЭВМ.

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

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

Основой для разработки следующего (пятого) поколения ЭВМ станут всё большая миниатюризация и внедрение биотехнологий.

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

При проектировании ЭВМ и вычислительных систем значительное внимание придают выбору операционных блоков АЛУ для реализации заданных логических и арифметических операций.

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

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

1.Общая часть

Intel 8051 (К1816 ВЕ51) имеет в своем составе следующие аппаратурные средства.

· 8-разрядный процессор MCS-51 (в его состав входят 1 -байтное АЛУ и схемы аппаратурной реализации команд умножения и деления);

· резидентное ПЗУ (или РПЗУ с ультрафиолетовым стиранием информации) программ емкостью 4Кx8;

· резидентное ОЗУ данных емкостью 128 байт;

· два 16-битных таймера/счетчика;

· 32 линии программируемой схемы ввода/вывода (4-ре 8-ми разрядных порта ввода/вывода, каждый бит, которых можно настроить на ввод или вывод);

· блок двухуровневого векторного прерывания от пяти источников;

· асинхронный канал последовательного дуплексного ввода/вывода информации со скоростью до 375 Кбит/с;

· генератор;

· схема синхронизации и управления.

Структура микроконтроллера и его системы команд такова, что в случае необходимости функционально-логические возможности могут быть расширены. С использованием внешних дополнительных БИС постоянной и оперативной памяти адресное пространство ОМК может быть значительно расширено, а путем подключения различных интерфейсных БИС число линий связи МК с объектом управления может увеличиваться практически без ограничений.

Микроконтроллер требует одного источника электропитания напряжением +5 В ±10%, рассеивает мощность около 1,5 Вт и работает в диапазоне температур от 0 до 70 оС. По входам и выходам, ОМК электрически совместимы с интегральными схемами ТТЛ. Ток потребления 18 мА (КМОП-технология), 150-200 мА (n-МОП-технология). Микроконтроллер Intel 8051 может работать в диапазоне частот от 1,2 до 12 МГц, что обеспечивает время выполнения основных команд за 1-2 мкс, только умножение и деление выполняется за 4 мкс. Частоту импульсов для синхронизации работы всех узлов устройства могут задавать кварцевый резонатор или RC-цепь, подключаемые к выводам МК. В некоторых МК предусмотрен режим работы тактового генератора без применения внешних элементов. В этом случае частота тактовых импульсов зависит от параметров кристалла, определяемых в процессе его производства.

2. Обобщенная структура

Где Г - генератор; ССУ - схема синхронизации и управления; УР - управление режимом; СС и У - сигналы синхронизации и управления; МП - микропроцессор; РПЗУ/ППЗУ - репрограммируемое ПЗУ или программируемое ПЗУ; ОЗУ - оперативное запоминающее устройство; СА - системный адаптер; Т/С - таймер/счетчик; БОП - блок обработки прерываний; Пар. порт ВВ - параллельные порты ввода/вывода; Посл. порт ВВ - последовательные порты ввода/вывода; БАВВ - блок аналогового ввода/вывода.

3. Структура Intel 8051 (К1816 ВЕ51)

Основу структурной схемы ОМК (рис. 2) образует внутренняя двунаправленная 8-битная шина, которая связывает между собой все основные узлы и устройства: резидентную память, АЛУ, блок регистров специальных функций, устройство управления и порты ввода/вывода. Рассмотрим основные элементы структуры и особенности организации вычислительного процесса в МК51.

4. Арифметико-логическое устройство

8-битное АЛУ может выполнять арифметические операции сложения, вычитания, умножения и деления; логические операции И, ИЛИ, исключающее ИЛИ, а также операции циклического сдвига, сброса, инвертирования и т.п. В АЛУ имеются программно недоступные регистры T1 и T2, предназначенные для временного хранения операндов, схема десятичной коррекции и схема формирования признаков.

Для управления объектами часто применяются алгоритмы, содержащие операции над входными и выходными булевскими переменными (истина/ложь), реализация которых средствами обычных микропроцессоров сопряжена с определенными трудностями. Важной особенностью АЛУ является его способность оперировать не только байтами, но и битами. Отдельные программно-доступные биты могут быть установлены, сброшены, инвертированы, переданы, проверены и использованы в логических операциях. Таким образом, АЛУ может оперировать четырьмя типами информационных объектов: булевскими (1 бит), цифровыми (4 бита), байтными (8 бит) и адресными (16 бит).

5. Резидентная память

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

Память программ (ПЗУ или СППЗУ) имеет емкость 4 Кбайта и предназначена для хранения команд, констант, управляющих слов инициализации, таблиц перекодировки входных и выходных сменных и т.п. РПП имеет 16-битную шину адреса, через которую обеспечивается доступ из счетчика команд (PC) или из регистра-указателя данных (DPTR). Последний выполняет функции базового регистра при косвенных переходах по программе или используется в командах, оперирующих с таблицами.

Память данных (ОЗУ) предназначена для хранения переменных в процессе выполнения прикладной программы, адресуется одним байтом и имеет емкость 128 байт. Кроме того, к адресному пространству РПД примыкают адреса регистров специальных функций (РСФ), которые перечислены в табл. 1.

Таблица 1. Блок регистров специальных функций

Символ

Наименование

Адрес

* ACC

Аккумулятор

0E0H

* B

Регистр-расширитель аккумулятора

0F0H

* PSW

Слово состояния программы

0D0H

SP

Регистр-указатель стека

81H

DPTR

Регистр-указатель данных (DPH)

(DPL)

83H

82H

* P0

Порт 0

80H

* P1

Порт 1

90H

* P2

Порт 2

0A0H

* P3

Порт 3

0B0H

* IP

Регистр приоритетов

0B8H

* IE

Регистр маски прерываний

0A8H

TMOD

Регистр режима таймера/счетчика

89H

* TCON

Регистр управления/статус таймера

88H

TH0

Таймер 0 (старший байт)

8CH

TL0

Таймер 0 (младший байт)

8AH

TH1

Таймер 1 (старший байт)

8DH

TL1

Таймер 1 (младший байт)

8BH

* SCON

Регистр управления приемопередатчиком

98H

SBUF

Буфер приемопередатчика

99H

PCON

Регистр управления мощностью

87H

Примечание. Регистры, имена которых отмечены знаком (*), допускают адресацию отдельных бит.

Память программ, так же как и память данных, может быть расширена до 64 Кбайт путем подключения внешних БИС. Варианты организации памяти в МК системе поясняет рис. 3. ОМК может быть использован в однокристальном режиме (сигнал на линии EA равен 1).

Тогда внешняя память в системе отсутствует, память программ располагается по адресам 0000h...0FFFh, память данных с 00h по 07Fh. Регистры специальных функций имеют объединенное с внутренним ОЗУ адресное пространство. Они расположены по адресам 80h…0FFh. Даже если ОМК работает в однокристальном режиме к нему может быть подключена внешняя память программ. Она должна располагаться в диапазоне адресов 1000h-0FFFFh, т.е. дополнять внутреннее ПЗУ МК. Если ОМК работает в расширенном режиме (сигнал на линии EA равен 0), то он будет адресовать только внешнюю память программ с 0000h по 0FFFFh, несмотря на то, что внутреннее (резидентное) ПЗУ на кристалле имеется.

В каждом из рассмотренных режимов ОМК может использовать два массива памяти данных: внутреннее ОЗУ, расположенное по адресам 00h…7Fh, и подключаемое внешнее ОЗУ, или ПЗУ, которое может располагаться, начиная с адреса 0000h вплоть до 0FFFFh. Следует помнить, что доступ к пространству внутренней и внешней памяти данных осуществляется разными командами, а значит, не следует бояться возможного перекрытия адресного пространства.

Аккумулятор (ACC) и ССП (PSW). Аккумулятор является источником операнда и местом фиксации результата при выполнении арифметических, логических операций и ряда операций передачи данных. Кроме того, только с использованием аккумулятора могут быть выполнены операции сдвигов, проверка на нуль, формирование флага паритета и т.п.

При выполнении многих команд в АЛУ формируется ряд признаков операции (флагов), которые фиксируются в регистре ССП. В табл. 2 приводится перечень флагов ССП, даются их символические имена и описываются условия их формирования.

Таблица 2. Формат слова состояния программы (ССП)

Символ

Позиция

Имя и назначение

C

PSW.7

Флаг переноса. Устанавливается и сбрасывается аппаратурными средствами или программой при выполнении арифметических и логических операций

AC

PSW.6

Флаг вспомогательного переноса. Устанавливается и сбрасывается только аппаратурными средствами при выполнении команд сложения и вычитания и сигнализирует о переносе или заем в бите 3

F0

PSW.5

Флаг 0. Может быть установлен, сброшен или проверен программой как флаг, специфицируемый пользователем

RS1

RS0

PSW.4

PSW.3

Выбор банка регистров. Устанавливается и сбрасывается программой для выбора рабочего банка регистров (см. примечание)

OV

PSW.2

Флаг переполнения. Устанавливается и сбрасывается аппаратно при выполнении арифметических операций

_

PSW.1

Не используется

P

PSW.0

Флаг паритета. Устанавливается и сбрасывается аппаратно в каждом цикле команды и фиксирует нечетное/четное число единичных бит в аккумуляторе, т.е. выполняет контроль по четности

Примечание.

RS1

RS0

Банк

Границы адресов

0

0

0

00H-07H

0

1

1

08H-0FH

1

0

2

10H-17H

1

1

3

18H-1FH

Наиболее «активным» флагом ССП является флаг переноса, который принимает участие и модифицируется в процессе выполнения операций, включая сложение, вычитание и сдвиги. Кроме того, флаг переноса (C) выполняет функции «булевого аккумулятора» в командах, манипулирующих с битами. Флаг переполнения (OV) фиксирует арифметическое переполнение при операциях над целыми числами со знаком и делает возможным использование арифметики в дополнительных кодах. АЛУ не управляет флагами селекции банка регистров (RS0, RS1), и их значение полностью определяется прикладной программой и используется для выбора одного из четырех регистровых банков. Регистры-указатели. 8-битный указатель стека (РУС или SP) может адресовать любую область РПД. Его содержимое инкрементируется прежде, чем данные будут запомнены в стеке в ходе выполнения команд PUSH и CALL. Содержимое РУС декрементируется после выполнения команд POP и RET. Подобный способ адресации элементов стека называют прединкрементным/постдекрементным. В процессе инициализации ОМК после сигнала СБР в РУС автоматически загружается код 07H. Это значит, что если прикладная программа не переопределяет стек, то первый элемент данных в стеке будет располагаться в ячейке РПД с адресом 08Н. Двухбайтный регистр-указатель данных (РУД или DPTR) обычно используется для фиксации 16-битного адреса в операциях с обращением к внешней памяти данных. Командами ОМК регистр-указатель данных может быть использован или как 16-битный регистр, или как два независимых 8-битных регистра (DPH и DPL). Таймер/счетчик. В составе средств ОМК имеются регистровые пары с символическими именами ТНО, TLO и THI, TLI, на основе которых функционируют два независимых программно-управляемых 16-битных таймера/счетчика событий. Регистр с символическим именем SBUF представляет собой два независимых регистра - буфер приемника и буфер передатчика. Загрузка байта в SBUF немедленно вызывает начало процесса передачи через последовательный порт. Когда байт считывается из SBUF, это значит, что его источником является приемник последовательного порта. Регистры специальных функций. Регистры с символическими именами IP, IE, TMOD, TCON, SCON и PCON используются для фиксации и программного изменения управляющих бит и бит состояния схемы прерывания, таймера/счетчика, приемопередатчика последовательного порта и для управления мощностью электропитания ОМК. Их организация будет описана ниже при рассмотрении особенностей работы ОМК в различных режимах.

6. Устройство управления и синхронизации

Базовым интервалом времени, на котором основана синхронизация работы всего микроконтроллера, является машинный цикл. Машинный цикл имеет фиксированную длительность и содержит 6 состояний S1-S6, каждое из которых по длительности соответствует такту, и, в свою очередь, состоит из двух временных интервалов определяемых фазами P1 и P2. Таким образом, каждый машинный цикл состоит из 12 периодов входного тактового сигнала и при частоте последнего 12 Мгц составляет 1 мкс. Дважды за один машинный цикл формируется сигнал ALE.

Входной тактовый сигнал вырабатывается либо встроенным тактовым генератором микроконтроллера при подключении к его выводам X1 и X2 кварцевого резонатора (см. Рис. 5 а) или LC-цепочки (см. Рис. 5 б), либо внешним источником тактовых сигналов (см. Рис. 5 в).

а

В случае LC-цепочки частота опорного синхросигнала определяется выражением

В случае внешнего тактового генератора его выход подключается ко входу X1, а вывод X2 подключается к общей шине.

Внешний интерфейс микроконтроллера предназначен для организации взаимодействия его с внешней памятью программ и данных и устройствами ввода-вывода. Обмен данными осуществляется по внешней мультиплексной магистрали микроконтроллера. Эта магистраль использует выводы порта P0 для выдачи младшего байта адреса и чтения/записи байта данных, а выводы порта P2 - для выдачи старшего байта адреса. Обращение к внешней памяти данных требует двух машинных циклов. Поэтому второй импульс ALE внутри машинного цикла при обращении к внешней памяти данных не генерируется.

Рисунок 6. Цикл чтения из внешней памяти данных

По срезу сигнала ALE младший байт адреса, поступающий с выводов порта P0, должен быть зафиксирован во внешнем регистре-защелке. Старший байт адреса держится на выводах порта P2 в течение всего цикла и не требует внешней фиксации. Данные считываются в фазе P1 состояния S3 текущего машинного цикла. К этому моменту они должны быть заведомо установлены на шине данных.

Рисунок 7. Цикл записи во внешнюю память данных

При обращении к внутренней памяти данных сигналы RD и WR не вырабатываются. Однако сигнал ALE вырабатывается всегда.

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

Рисунок 8. Цикл чтения внешней памяти программ

Так же, как и в случае памяти данных, младший байт адреса должен быть зафиксирован во внешнем регистре по срезу сигнала ALE. Байты программы считываются в фазе P1 состояний S4 и S1 текущего машинного цикла. При обращении к внутренней памяти программ сигнал PSEN не генерируется.

Работа с внешней памятью программ разрешена лишь при низком уровне на входе EA. При этом микроконтроллер считает, что вся память программ расположена во внешней памяти. При высоком уровне сигнала на этом входе микроконтроллер реализует цикл обращения к внешней памяти программ лишь в случае, если требуемый адрес выходит за пределы внутреннего сегмента памяти программ. Если в микросхеме «прошит» бит секретности, то уровень сигнала на входе EA фиксируется при сбросе микроконтроллера во внутренней защелке и дальнейшее его изменение не влияет на работу системы.

Начальная установка (аппаратный сброс) производится с целью запуска или перезапуска микроконтроллера после подачи на него напряжения питания. Сброс осуществляется подачей на вход RESET высокого уровня и удержания его в течение не менее двух машинных циклов. Этот сигнал может подаваться асинхронно по отношению к внутреннему тактированию. Вход RESET постоянно опрашивается микроконтроллером в момент S5P2 каждого машинного цикла. После сигнала сброса порты ввода-вывода находятся в неизменном состоянии в течение 19-ти периодов тактирования, после чего в промежутке между 19-м и 31-м тактом переводятся в начальное «единичное» состояние. При этом сигналы ALE и PSEN находятся в неактивном (высоком) состоянии. По сигналу сброса микроконтроллер устанавливает все служебные регистры в начальное состояние. На содержимое внутренней памяти данных сигнал RESET не влияет. При включении питания она устанавливается в произвольное состояние. Длительность сигнала RESET должна быть не меньше времени необходимого для запуска внутреннего генератора плюс 2 машинных цикла. В свою очередь время установки генератора зависит от частоты синхронизации и характеристик кварцевого резонатора. При частоте 10 Мгц оно обычно составляет около 1 мкс.

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

После снятия сигнала RESET проходит от 1 до 2 тактовых периодов до их активизации. При этом микроконтроллер начинает выполнять программу с адреса 0000h внутренней либо внешней памяти программ (в зависимости от уровня сигнала EA).

Удержание выводов ALE и PSEN в активном (нулевом) состоянии при активном сигнале RESET приводит к переводу всех выводов микросхемы в высокоимпедансное состояние (режим «ONCE»). Этот режим используется для отладки системы.

7. Программная модель ОМК

ОМК выполняет действия над 8-разрядными операндами. Программная модель CPU MCS-51 содержит шесть регистров. Все регистры, кроме счетчика команд PC, являются частью объединенного адресного пространства ОЗУ данных. Следовательно, для обращения к ним могут быть использованы как символьные имена регистров _ АСС, В, PSW, SP, DPH, DPL, так и их абсолютные адреса _ 0E0h, 0F0h, 0D0h, 81h, 82h, 83h соответственно.

Аккумулятор АСС _8-разрядный регистр, в котором хранятся операнды, результаты арифметических и логических операций, Сброс устанавливает все разряды АСС в «0».

Регистр B _ дополнительный 8-разрядный регистр. Используется в операциях умножения и деления. В других командах может интерпретироваться как регистр общего назначения.

Регистр-указатель данных DPTR _ 16-разрядный регистр (DPH - старший байт, DPL - младший байт). Основное назначение регистра DPTR _ участие в формировании адреса при чтении данных (не команд) из области памяти программ, а также при обмене с внешним ОЗУ данных. Система команд предусматривает возможность обращения к отдельным байтам (DPH или DPL) регистра DPTR, что позволяет использовать эти регистры для хранения промежуточных результатов вычислений или как источник одного из операндов, указывая во втором байте команды абсолютный адрес DPH или DPL.

Программный счетчик PC _ 16-разрядный регистр, содержит адрес текущей команды либо адрес операнда, используемого в текущей команде. После сброса МК программный счетчик автоматически устанавливается в «0». Поэтому в МК с процессорным ядром MCS-51 любая программа пользователя должна начинаться с адреса 0000h.

Указатель стека SP _ 8-разрядный регистр, содержит адрес верхушки стека. Архитектура процессорного ядра MCS-51 предполагает размещение области стековой памяти только в области внутреннего ОЗУ данных. Поэтому глубина стека ограничена объемом резидентного ОЗУ. Вызов подпрограммы использует 2 ячейки стека, прерывание _ 4 ячейки. При сбросе МК указатель стека устанавливается в состояние 07h, назначая область стека в первый банк регистров. При загрузке в стек, содержимое указателя SP увеличивается на 1, а при извлечении _ уменьшается.

Регистр признаков PSW _ 8-разрядный регистр, содержит 7 флагов условий: переноса С, дополнительного переноса АС, переполнения OV, четности Р, два флага RS1:RS0 для выбора текущего банка регистров, программируемый пользователем флаг F0.

Примечание: В регистре признаков отсутствуют флаги нулевого и отрицательного результата N. Признак нулевого состояния аккумулятора (и только аккумулятора!) формируется, но не запоминается и в регистре признаков не отображается. Поэтому при составлении прикладной программы пользователя команды условного перехода по признаку Z (JZ и JNZ) должны быть выполнены сразу после команды действия над операндами.

Процессорное ядро MCS-51 может оперировать с тремя основными типами операндов:

· булевыми (1 бит);

· байтовыми (8 бит);

· двухбайтовыми (16 бит).

В операциях обмена тетрадами используется дополнительное представление информации полубайтами (4 бита).

Формы представления данных:

· числовые;

· логические;

· битовые.

Форматы данных:

· двоичные;

· двоично-десятичные;

Способы адресации:

для резидентной памяти данных:

· прямая,

· прямая регистровая,

· косвенная, стековая,

· индексная.

для внешней памяти данных:

· косвенная.

для памяти команд:

· косвенная,

· индексная,

· относительная.

Форматы команд:

· одноадресные;

· двухадресные;

· безадресные.

8. Система команд

Система команд МК51 содержит 111 базовых команд, которые удобно разделить по функциональному признаку на пять групп:

· команды передачи данных;

· арифметических операций;

· логических операций;

· передачи управления;

· операции с битами.

Большинство команд имеют формат один или два байта и выполняются за один или два машинных цикла. При тактовой частоте 2 МГц длительность машинного цикла составляет 1 мкс. На рис. 10 показаны 13 типов команд ОМК. Первый байт команды любого типа и формата всегда содержит код операции (КОП). Второй и третий байты содержат либо адреса операндов, либо непосредственные операнды.

Имеется также возможность адресации отдельных бит блока регистров специальных функций и портов. Для адресации бит используется прямой 8-битный адрес (bit). Косвенная адресация бит невозможна. Карты адресов отдельных бит представлены на рис. 4. Четырехбитные операнды используются только при операциях обмена (команды SWAP и XCHD). Восьми битным операндом может быть ячейка памяти программ или данных (резидентной или внешней), константа (непосредственный операнд), регистры специальных функций (РСФ), а также порты ввода/вывода. Порты и РСФ адресуются только прямым способом. Байты памяти могут адресоваться также и косвенным образом через адресные регистры (R0, R1, DPTR и PC). Двухбайтные операнды _ это константы и прямые адреса, для представления которых используются второй и третий байты команды.

Условные обозначения:

#d _ непосредственный операнд;

ad _ адрес РПД;

d16 _ адрес внешней памяти;

Rn _ регистр текущего банка;

Ri _ нулевой или первый регистр текущего банка

bit -прямой адрес бита,

rel _ 8-разрядное смещение в дополнительном коде для выполнения относительных переходов. Величина смещения позволяет передавать управление в пределах -128 … +127 байт относительно адреса следующей команды;

@ _ признак косвенной адресации.


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.