113
Л. А. Потапов ОСНОВЫ МИКРОПРОЦЕССОРНОЙ ТЕХНИКИ Утверждено редакционно-издательским советом в качестве учебного пособия Брянск ИЗДАТЕЛЬСТВО БГТУ 2004 МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ БРЯНСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

466.основы микропроцессорной техники учебное пособие

Embed Size (px)

Citation preview

Page 1: 466.основы микропроцессорной техники  учебное пособие

Л. А. Потапов

ОСНОВЫ МИКРОПРОЦЕССОРНОЙ ТЕХНИКИ

Утверждено редакционно-издательским советом в качестве

учебного пособия

Брянск

ИЗДАТЕЛЬСТВО БГТУ

2004

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ

РОССИЙСКОЙ ФЕДЕРАЦИИ

БРЯНСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 2: 466.основы микропроцессорной техники  учебное пособие

УДК 621.325

Потапов Л.А.Основы микропроцессорной техники: Учеб. по-

собие. – Брянск: БГТУ, 2004. - 112 с.

ISBN 5-898 38-053-1

Рассматриваются общие схемы построения микропроцессорных

систем, а также подсистемы и блоки, входящие в эти системы. Значи-

тельное внимание уделено устройствам, разработанным в последнее

время, в том числе однокристальным контроллерам, чаще всего ис-

пользуемым при автоматизации современной техники.

Пособие может быть использовано в полном объеме студентами

электротехнических специальностей и в сокращенном объеме (за ис-

ключением текста, набранного мелким шрифтом) студентами неэлек-

тротехнических специальностей.

Табл. 12. Ил. 16. Библиогр. – 27 назв.

Научный редактор Власов А. И.

Рецензенты: кафедра энергетики Брянской государственной

инженерно - технологической академии;

доц., к.т.н. Н.И. Ушев

Редактор издательства Л.Н. Мажугина

Компьютерный набор М. М. Упатова

Темплан 2004г.,п.

____________________________________________________________ Подписано в печать Формат 60×84 1/16. Бумага офсетная.

Офсетная печать. Усл. печ. л. 6,51. Уч.- изд. л. 6,51. Тираж 135 экз. Заказ

Издательство Брянского государственного технического университета

241035, Брянск, бульвар им. 50–летия Октября, 7, тел. 55–90–49

Лаборатория оперативной полиграфии БГТУ, ул. Институтская, 16

ISBN 5-898 38-053-1 © Брянский государственный

технический университет, 2004

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 3: 466.основы микропроцессорной техники  учебное пособие

3

ПРЕДИСЛОВИЕ

В последние годы отмечено наполнение рынка товаров всевоз-

можной автоматизированной аппаратурой самого различного назна-

чения и различной сложности - от пластиковой платежной карточки,

холодильника, автомобиля до систем управления самолетами, раке-

тами, морскими судами. Это стало возможным благодаря развитию

микропроцессорной техники, созданию технологической базы для

производства новых типов процессоров. В 2001 году отмечался 30-

летний юбилей появления первого микропроцессора. Скромный 4-

разрядный кристалл i4004 фирмы Intel дал могучее потомство, роль

которого в жизни современного человечества трудно переоценить.

Все эти годы не прекращалось острое соперничество ведущих элек-

тронных фирм за лидерство в этой высокоперспективной области.

Результатом этого соперничества стала разработка новых семейств и

типов микропроцессоров, расширение их функциональных возмож-

ностей и снижение стоимости. Спектр возможных применений мик-

ропроцессоров оказался настолько широким, что построенные на их

основе различного рода микропроцессорные системы сбора и об-

работки информации, управления и контроля технологическими

процессами стали проникать почти во все отрасли человеческой дея-

тельности — от научных исследований и производственной сферы

до медицины и повседневного быта. Широкое применение микро-

процессоров привело к революционным изменениям в технике и жиз-

ни общества. Появились информационные технологии, мобильная те-

лефонная связь, цифровые фотокамеры и многое другое.

Cовершенствование микропроцессоров шло параллельно с раз-

витием микроэлектронной технологии, позволяющей размещать на

одном кристалле все большее и большее число транзисторов.

На основе более совершенных МП создавались новые быстро-

действующие компьютеры, системы связи, различные автоматизиро-

ванные устройства, системы и многое другое. Процесс дальнейшего

развития микропроцессорной техники продолжается и в наши дни.

Издание настоящего пособия обусловлено тем, что новые госу-

дарственные образовательные стандарты для целого ряда специаль-

ностей (210106 – "Промышленная электроника", 140604 – "Электро-

привод и автоматика промышленных установок и технологических

комплексов", 220301 – “Автоматизация технологических процессов и

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 4: 466.основы микропроцессорной техники  учебное пособие

4

производств”, 151001 – "Технология машиностроения", 190601 –

"Автомобили и автомобильное хозяйство" и др.) предусматривают в

соответствующих курсах разделы по микропроцессорной технике.

Однако имеющиеся учебники и учебные пособия не отражают совре-

менное состояние микропроцессорной техники.

Учебное пособие состоит из 5 глав.

В первой главе уточняется терминология, рассматриваются

структура и основные узлы микропроцессорных систем, персональ-

ных и встраиваемых ЭВМ.

Во второй главе дается краткая информация о видах, структуре

и особенностях работы универсальных и специализированных мик-

ропроцессоров (цифровых процессоров обработки сигналов).

В третьей главе подробно рассматриваются различные типы

однокристальных микроконтроллеров (отечественные МК-48 и МК-

51, а также импортные MCS-51 и MCS-96 фирмы Atmel, MC68HC05

и MC68HC11 фирмы Motorola, PIC и AVR-контроллеры). Приводятся

основные технические характеристики и системы команд некоторых

микроконтроллеров. Отдельный параграф посвящен разработке и от-

ладке микропроцессорных устройств на основе однокристальных

микроконтроллеров.

В четвертой и пятой главах рассматриваются, соответственно,

устройства ввода/вывода и памяти, которые во многом определяют

предельные возможности микропроцессорных систем. Перспективам

совершенствования устройств памяти посвящен отдельный параграф.

В приложении приведены основные характеристики однокри-

стальных микроконтроллеров серий MCS-51 и AVR, а также даны

системы команд микроконтроллеров серий МК-48 и МК-51

Для лучшего усвоения материала учебного пособия в конце

каждой главы приведены вопросы для самопроверки.

С целью универсальности учебное пособие сформулировано так,

что в полном объеме оно может быть использовано студентами элек-

тротехнических специальностей и в сокращенном объеме (за исклю-

чением текста, набранного мелким шрифтом) студентами неэлектро-

технических специальностей.

Учебное пособие предназначено для студентов, изучающих

электронику и микропроцессорную технику, и может быть полезным

инженерно-техническим работникам, связанным с разработкой авто-

матизированной техники.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 5: 466.основы микропроцессорной техники  учебное пособие

5

1. МИКРОПРОЦЕССОРНАЯ ТЕХНИКА

Технические устройства, содержащие микропроцессоры или од-

нокристальные микроконтроллеры, выполненные в виде конструк-

тивно законченных изделий или отдельных блоков, называются

микропроцессорной техникой [2,13,27]. Эти устройства создаются

для выполнения различных задач управления, вычисления, регу-

лирования и т. д.

В зависимости от сложности различают микропроцессорные

устройства (МПУ) и микропроцессорные системы (МПС); в зави-

симости от типа решаемых задач - микропроцессорные системы

контроля (МПСК), микропроцессорные электронные вычисли-

тельные машины (МЭВМ), микропроцессорные измерительные

комплексы (МИК) и т.д.

1.1. Основные узлы и системы микропроцессорной

техники

Основным узлом всех устройств микропроцессорной техники

является микропроцессор или однокристальный микроконтроллер.

Микропроцессором (МП) называется программно-управляемое

устройство в виде интегральной микросхемы, обрабатывающее

цифровую информацию и управляющее этим процессом. МП может

принимать, дешифрировать и выполнять команды, представленные в

двоичном коде.

Однокристальный микроконтроллер (ОМК) (его часто назы-

вают однокристальной микроЭВМ) помимо арифметико-логического

устройства, устройства управления и сверхоперативной памяти (реги-

стров общего назначения), которые входят и в однокристальный мик-

ропроцессор, содержит также оперативную и постоянную память,

устройство ввода/вывода и некоторые другие устройства. Однако

адресуемая емкость памяти у однокристальной микроЭВМ суще-

ственно меньше, чем у однокристального микропроцессора, поэто-

му однокристальные микроЭВМ применяются в узкоспециализиро-

ванных системах как однокристальные микроконтроллеры с вполне

определенными алгоритмами обработки информации.

Для построения микропроцессорной системы на базе микро-

процессора используют микропроцессорный комплект — набор

совместимых интегральных микросхем, содержащий тактовый гене-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 6: 466.основы микропроцессорной техники  учебное пособие

6

ратор, таймеры, устройства прямого доступа к памяти, устройства

ввода/вывода и некоторые другие устройства.

В любой МПС можно выделить следующие основные части

(подсистемы): процессорный модуль; память; устройства вво-

да/вывода; подсистему прерываний; подсистему прямого доступа в

память; внешние устройства (внешние запоминающие устройства и

так называемые периферийные устройства).

Процессорный модуль кроме микропроцессора или ОМК со-

держит ряд вспомогательных устройств, обеспечивающих функцио-

нирование МПС. Среди них могут быть тактовый генератор, аналого-

цифровой преобразователь (АЦП), цифроаналоговый преобразова-

тель (ЦАП) и другие.

Подсистема памяти включает внутренние и внешние устройства

памяти. Внешние устройства памяти предназначены для сохранения

и ввода программ. К ним относятся накопители на магнитных и ла-

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

устройства памяти выполняют обычно полупроводниковыми. По

назначению их подразделяют на оперативные запоминающие устрой-

ства (ОЗУ) и постоянные запоминающие устройства (ПЗУ). При этом

ПЗУ используются для сохранения программ и некоторых констант, а

ОЗУ для изменяющихся величин (данные, промежуточные результа-

ты и т.п.).

Устройства ввода/вывода (УВВ) обеспечивают связь МПС с

внешними устройствами. Через них поступает информация для обра-

ботки и через них она уходит для исполнения внешними устройства-

ми. К устройствам ввода/вывода относят иногда также подсистемы

прерываний и прямого доступа к памяти (ПДП). Подсистема преры-

ваний организует приостановку работы микропроцессора на период

ввода некоторой внеплановой информации, а подсистема ПДП орга-

низует работу некоторых устройств напрямую с системой памяти,

минуя процессорный модуль.

Связь подсистем между собой и с внешними устройствами

обеспечивается аппаратными и программными средствами, которые

называются интерфейсом. Используется несколько видов интерфей-

сов: VXI, VIME, PCI, USB и другие.

Ниже более подробно рассматриваются структура и подсистемы

МПС.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 7: 466.основы микропроцессорной техники  учебное пособие

7

1.2. Общая структура МПС

Любая МПС содержит МП или ОМК, устройства памяти и си-

стему ввода/вывода. Эти устройства могут быть связаны между со-

бой и с внешними устройствами различными способами.

Систему сопряжения всех устройств МПС, включающую сово-

купность аппаратных средств (интерфейсных интегральных схем),

шин (линий связи) и так называемого протокола (алгоритмов обме-

на, управляющих сигналов, и т. д.) называют интерфейсом. В узком

смысле слова интерфейс—это устройства ввода/вывода, которые

управляют потоком и форматами данных между МП и внешними (пе-

риферийными) устройствами.

Группа линий (совокупность проводов), по которым передается

однотипная информация, называется шиной.

Устройство, с помощью которого микропроцессор связывается

с внешними устройствами системы, называется портом. Как правило,

порт содержит внутреннюю память.

По тому, как организовано адресное пространство памяти про-

грамм и данных, различают Принстонскую и Гарвардскую архитекту-

ру (структуру) МПС.

Всем известный IBM PC-совместимый компьютер представляет

собой реализацию так называемой Принстонской (фон Нейманов-

ской) архитектуры (структуры) вычислительных машин. Эта архитек-

тура была представлена Джоном фон Нейманом еще в 1945 году и

имеет следующие основные признаки: машина состоит из блока

управления, арифметико-логического устройства (АЛУ), памяти и

устройств ввода/вывода. В ней реализуется концепция хранимой про-

граммы: программы и данные хранятся в одной и той же памяти.

Если разделить память на память программ и память данных, то

получим Гарвардскую архитектуру МПС.

Принстонская архитектура - не единственный вариант построе-

ния ЭВМ, есть и другие, которые не соответствуют указанным прин-

ципам (например, потоковые машины). Однако подавляющее боль-

шинство современных компьютеров основано именно на этих прин-

ципах (фон Неймана), включая и сложные многопроцессорные ком-

плексы, которые можно рассматривать как объединение таких ма-

шин. Конечно же, за более чем полувековую историю ЭВМ классиче-

ская архитектура прошла длинный путь развития.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 8: 466.основы микропроцессорной техники  учебное пособие

8

Прерывание – первое отличие современных архитектур от архи-

тектур машин фон-Неймана. Работа прерывания заключается в том

что при поступлении сигнала прерывания процессор обязан прекра-

тить выполнение текущей программы и немедленно начать обработку

процедуры прерывания.

Прямой доступ к памяти (ПДП) – второе отличие современных

архитектур от архитектур машин фон-Неймана. ПДП позволяет со-

кратить расходы на пересылку единицы информации.

Связь между микропроцессором и другими устройствами МПС

может осуществляться по принципам радиальных связей, общей ши-

ны или комбинированным способом. В однопроцессорных МПС, осо-

бенно 8- и 16-разрядных, наибольшее распространение получил

принцип связи "Общая шина", при котором все устройства подклю-

чаются одинаковым образом (рис.1.1).

Рис. 1.1. Схема интерфейса «общая шина»

Все сигналы интерфейса передаются по трем шинам - данных,

адреса и управления. Многочисленные разновидности интерфейсов

"Общая шина" обеспечивают передачу сигналов по раздельным или

мультиплексированным (совмещенным) линиям (шинам). Так, ин-

терфейс Microbus, с которым работают большинство 8-разрядных

МПС на базе МП i8080, передает адрес и данные по раздельным ши-

нам, но некоторые управляющие сигналы передаются по шине дан-

ных. Интерфейс Q-bus, используемый в микроЭВМ фирмы DEC (оте-

чественный аналог - микропроцессоры серии К1801), имеет мульти-

плексированную шину адресов и данных, по которой эта информация

передается с разделением во времени. Естественно, что при наличии

мультиплексированной шины в состав линий управления необходимо

Интерфейс «Общая шина»

ВУ ВУ МП Память

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 9: 466.основы микропроцессорной техники  учебное пособие

9

включать специальный сигнал, идентифицирующий тип информации

на шине.

Обмен информацией по интерфейсу производится между двумя

устройствами, одно из которых является активным, а другое - пас-

сивным. Активное устройство формирует адреса пассивных

устройств и управляющие сигналы. Активным устройством выступа-

ет, как правило, микропроцессор, а пассивным - всегда память и не-

которые внешние устройства (ВУ). Однако иногда быстродействую-

щие ВУ могут выступать в качестве задатчика (активного устройства)

на интерфейсе, управляя обменом с памятью (так называемый режим

прямого доступа в память).

Выполняемые действия в МПС определяются блоком управле-

ния и АЛУ, которые вместе являются основой МП. Микропроцессор

выбирает и исполняет команды из памяти последовательно. Адрес

очередной команды задается "счетчиком адреса" в блоке управления.

Этот принцип исполнения называется последовательной передачей

управления.

Описанная система из одной, разбитой на три секции, шины ис-

пользовалась лишь в ранних ЭВМ класса IBM PC XT. Имея название

“Общая шина”, она и впрямь пронизывала весь компьютер и позво-

ляла соединить в каждый момент времени процессор с одним из

устройств памяти либо одним из контроллеров периферийных

устройств.

В современном компьютере имеется не одна, а несколько шин.

Основных шин четыре, и обозначаются они как L-шина, S-шина, М-

шина и X-шина. Линии адреса и данных у L-шины (или локаль-

ной шины) связаны непосредственно с микропроцессором. Мож-

но ввести понятие удаленности шины от процессора, считая, что

чем больше буферов отделяют шину от процессора, тем больше

удалена от процессора. Тогда L-шина может считаться ближай-

шей к процессору.

Основной шиной, связывающей компьютер в единое целое, яв-

ляется S-шина, или системная шина, к которой, кроме того, подклю-

чаются адаптеры периферийных устройств, не входящих в состав си-

стемного ядра. Именно она выведена на восемь специальных разъ-

емов-слотов. Эти слоты хорошо видны на системной плате компью-

тера, в них установлены платы периферийных адаптеров (дисплея,

флоппи-диска, винчестера, мыши и т.д.).

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 10: 466.основы микропроцессорной техники  учебное пособие

10

При переходе с шины L на шину S сигналы процессора претер-

певают определенную трансформацию. Максимальная нагрузочная

способность линий микропроцессора не превышает 1мА, поэтому

между линиями L - шины и S - шины должны располагаться буфер-

ные элементы, повышающие мощность выводов как минимум в сто

раз. Кроме того, шина данных микропроцессора, как мы увидим в

дальнейшем, не всегда соединяется с остальными частями ЭВМ.

При выполнении так называемого внепроцессорного обмена вообще

необходимо отключать микропроцессор от остальных схем компью-

тера.

Когда микропроцессор с рассмотренной шинной архитектурой

выполняет, например, команду чтения из памяти, воздействие (адрес

и сигналы управления) с локальной L шины попадает на системную

S шину и только затем на шину памяти M. После этого данные, счи-

танные из памяти, опять-таки попадают на системную шину, а с нее -

на локальную. Очевидно, что каждый перенос информации через тот

или иной буферный элемент сопровождается определенной времен-

ной задержкой. И хотя время одной задержки невелико (не более 10

нс), суммарно их набирается довольно много. Это и определяло ту

довольно низкую тактовую частоту, на которой работали первые

компьютеры фирмы IBM (12 или даже 8 МГц). Для устранения таких задержек в более поздних моделях IBM PC AT 286

основная оперативная память выделяется в особую подсистему и доступ к ней

осуществляется не через системную шину, а параллельно с доступом к систем-

ной шине. Как правило, это связано с наличием интегрированного контроллера

шины данных. Время суммарной задержки передачи данных в этом случае со-

кращается примерно до 20 нс, а тактовая частота повышается до 25 МГц.

Совершенствование МПС в этом направлении привело к тому, что пере-

ход от шины данных LD к шине памяти MD упростился до предела. Функцию

контроллера шины данных в этом случае выполняет обычный шинный форми-

рователь. На первый взгляд, в нем нет необходимости и можно было бы просто

объединить шины LD и MD. Но по соображениям согласования электрических

сигналов этого нельзя делать.

Дальнейшие возможности повышения производительности МП были

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

мяти позволило ослабить требования по времени доступа к основной опера-

тивной памяти (кэш-память - это быстродействующая статическая память,

расположенная между микропроцессором и относительно медленной основной

памятью; объем ее колеблется от 128 кбайт до 1 Мбайт). При этом на локаль-

ной шине, кроме микропроцессора и сопроцессора, появляется контроллер

управления кэш-памятью. При объеме памяти 128 кбайт вероятность того, что

необходимая микропроцессору информация окажется в кэш-памяти, составля-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 11: 466.основы микропроцессорной техники  учебное пособие

11

ет 95-98 %. Эффективность кэш-памяти становится значительной на частотах

выше 20 МГц, так как в этом случае потери производительности из-за задер-

жек доступа к оперативной памяти очень чувствительны.

Последующие архитектурные изменения МПС связаны с пере-

ходом от МП, имеющих 32-разрядные шины данных (i80386 и

i80486), к МП, имеющим 64-разрядные шины, а именно к микропро-

цессорам Pentium, Pentium Pro и Pentium 4. Наиболее наглядно

устройство МПС можно увидеть на примере современной ЭВМ.

1.3. Архитектура микроЭВМ

Архитектура типичной небольшой вычислительной системы с

интерфейсом "Общая шина" показана на рис. 1.2.

Вывод

Рис.1.2 Архитектура типовой микроЭВМ

ОЗУ

ПЗУ

Процессорный

модуль

16

Ввод

16

8

УВВ

ШУ

ША

ШД

Такая микроЭВМ [11.18,19] содержит устройство ввода/вывода

информации, процессорный модуль и запоминающие устройства

(ОЗУ и ПЗУ).

Микропроцессор координирует работу всех устройств цифро-

вой системы с помощью шины управления (ШУ). Помимо ШУ име-

ется 16-разрядная адресная шина (ША), которая служит для выбора

определенной ячейки памяти, порта ввода или порта вывода. По 8-

разрядной информационной шине или шине данных (ШД) осу-

ществляется двунаправленная пересылка данных к микропроцессору

и от микропроцессора.

МП может посылать информацию в память микроЭВМ или к

одному из портов вывода, а также получать информацию из памяти

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 12: 466.основы микропроцессорной техники  учебное пособие

12

или от одного из портов ввода. Постоянное запоминающее устрой-

ство в микроЭВМ содержит некоторую программу (на практике про-

грамму инициализации ЭВМ). Программы могут быть загружены в

запоминающее устройство с произвольной выборкой (ЗУПВ), а так-

же из внешнего запоминающего устройства (ВЗУ).

Современная микроЭВМ (рис.1.3) имеет более сложную архи-

тектуру. В ней имеются системная шина S, к которой подключены

все внутренние подсистемы и внешние периферийные устройства,

а также шина М, обеспечивающая связь процессорного модуля с

системой памяти, и шина Х, через которую подключаются подси-

стемы прерываний, ПДП и другие устройства.

МикроЭВМ могут быть выполнены в виде персонального (PC)

компьютера (карманного, переносного, настольного), а также в виде

встраиваемой конструкции (например, промышленные компьютеры

PC/104 и MicroPC ) Одним из главных требований к выбору платформы для построения

встраиваемых компьютеров в большинстве случаев является их совместимость

Шина Х

Системная шина S

Шина памяти М

Системное ядро вычислительной машины

Процессорная подсистема

Подсистема памяти

КЭШ

память

Буфер локальной

шины

Конвертор системной

шины

Буфер

Шины X

Подсистема прямого доступа в

память

Подсистема таймеров- счетчиков

Подсистема прерываний

Подсистема

управления клавиатурой

Подсистема CMO S памяти

I часов РВ

Периферийные устройства

Дисковая подсистема

Видеомонитор

Подсистема телекоммуникаций

Рис. 1.3. Архитектура микроЭВМ IBМ PC

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 13: 466.основы микропроцессорной техники  учебное пособие

13

с компьютерами фирмы IBM. В общих чертах требования к встраиваемым

компьютерам можно сформулировать так:

- минимальные массогабаритные показатели, позволяющие встроить

компьютер в большинство объектов;

- минимальное энергопотребление, удовлетворяющее требованиям огра-

ниченности ресурсов питания (вплоть до питания от батарей);

- устойчивость к механическим воздействиям (ударам, вибрации, для

возможности использования в движущихся или носимых объектах);

- устойчивость к климатическим воздействиям (расширенному диапазону

температур, повышенной влажности, агрессивным средам, росту грибков или

плесени);

- повышенная функциональная надежность, снижающая вероятность си-

стемных отказов или сбоев;

- длительный жизненный цикл, гарантирующий доступность устройств в

течение ряда лет.

Встроенные компьютеры отличаются от персональных:

- конструктивным исполнением – в виде крейта с пассивной кросс платой

(этажерочные и мезонинные конструкции);

- отсутствием дисковых накопителей, вместо них память на полупровод-

никовых элементах – масочное ПЗУ, FLASH, статическое ОЗУ с автономным

источником питания ;

- отсутствием стандартных устройств ввода-вывода информации;

- более низкой производительностью.

МикроЭВМ работает по программе, сохраняемой в устройствах памяти.

При этом микропроцессор последовательно выбирает команды из соответству-

ющей программы и организует их выполнение

В качестве примера, иллюстрирующего работу микроЭВМ, рассмотрим

процедуру ввода/запоминания/вывода (рис.1.4), для реализации которой

нужно выполнить следующие элементарные операции:

-нажать клавишу с буквой "А" на клавиатуре,

-поместить букву "А" в память микроЭВМ,

-вывести букву "А" на экран дисплея.

Предположим, что программа уже загружена в первые шесть ячеек па-

мяти в виде следующей цепочки команд:

-ввести данные из порта ввода 1,

-запомнить данные в ячейке памяти 200,

-переслать данные в порт вывода 10

В данной программе всего три команды, хотя может показаться, что в

памяти программ записано шесть команд. Это связано с тем, что команда

обычно разбивается на части.

Первая часть команды 1 в приведенной в программе - команда ввода

данных. Во второй части команды 1 указывается, откуда нужно ввести дан-

ные (из порта 1). Первая часть команды, предписывающая конкретное дей-

ствие, называется кодом операции (КОП), а вторая часть - операндом. Код

операции и операнд размещаются в отдельных ячейках памяти программ.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 14: 466.основы микропроцессорной техники  учебное пособие

14

Рис. 1.4. Диаграмма выполнения процедуры ввода/запоминания/вывода

На диаграмме выполнения процедуры ввода/вывода КОП хранится в

ячейке 100, а код операнда - в ячейке 101 (порт 1); последний указывает откуда

нужно взять информацию.

При типичной процедуре ввода/запоминания/вывода в микроЭВМ вы-

полняются следующие действия.

1. МП выдает адрес 100 на шину адреса. По шине управления поступает

сигнал, устанавливающий память программ (конкретную микросхему) в режим

считывания.

2. Запоминающее устройство программ пересылает первую команду

"Ввести данные" по шине данных, и МП получает это закодированное сообще-

ние. Команда помещается в регистр команд. МП декодирует (интерпретирует)

полученную команду и определяет, что для команды нужен операнд.

3. МП выдает адрес 101 на ША; ШУ используется для перевода памяти

программ в режим считывания.

4. Из памяти программ на ШД пересылается операнд "Из порта 1". Этот

операнд находится в программной памяти в ячейке 101. Код операнда (содер-

жащий адрес порта 1) передается по ШД к МП и направляется в регистр ко-

манд. МП теперь декодирует полную команду "Ввести данные из порта 1".

5. МП, используя ША и ШУ, связывающие его с устройством ввода, от-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 15: 466.основы микропроцессорной техники  учебное пособие

15

крывает порт 1. Цифровой код буквы "А" передается в аккумулятор внутри МП

и запоминается. При обработке каждой программной команды МП действует

согласно микропроцедуре выборки-декодирования-исполнения.

6. МП обращается к ячейке 102 по ША. ШУ используется для перевода

памяти программ в режим считывания.

7. Код команды "Запомнить данные" подается на ШД и пересылается в

МП, где помещается в регистр команд.

8. МП дешифрирует эту команду и определяет, что для нее нужен опе-

ранд. МП обращается к ячейке памяти 103 и приводит в активное состояние

вход считывания микросхем памяти программ.

9. Из памяти программ на ШД пересылается код сообщения "В ячейке па-

мяти 200". МП воспринимает этот операнд и помещает его в регистр команд.

Полная команда "Запомнить данные в ячейке памяти 200" выбрана из памяти

программ и декодирована.

10. Теперь начинается процесс выполнения команды. МП пересылает ад-

рес 200 на ША и активизирует вход записи, относящийся к памяти данных.

11. МП направляет хранящуюся в аккумуляторе информацию в память

данных. Код буквы "А" передается по ШД и записывается в ячейку 200 этой

памяти. Выполнена вторая команда. Процесс запоминания не разрушает содер-

жимого аккумулятора. В нем по-прежнему находится код буквы "А".

12. МП обращается к ячейке памяти 104 для выбора очередной команды и

переводит память программ в режим считывания.

13. Код команды вывода данных пересылается по ШД к МП, кото-

рый помещает ее в регистр команд, дешифрирует и определяет, что нужен

операнд.

14. МП выдает адрес 105 на ША и устанавливает память программ в ре-

жим считывания.

15. Из памяти программ по ШД к МП поступает код операнда "В порт 10",

который далее помещается в регистр команд.

16. МП дешифрирует полную команду "Вывести данные в порт 10". С

помощью ША и ШУ, связывающих его с устройством вывода, МП откры-

вает порт 10, пересылает код буквы "А" (все еще находящийся в аккуму-

ляторе) по ШД. Буква "А" выводится через порт 10 на экран дисплея.

ВОПРОСЫ ДЛЯ САМОПРОВЕРКИ

1. Дайте определения понятий "микропроцессор" (МП), "микропроцес-

сорная система" (МПС), "микропроцессорный комплект (МПК), "микроЭВМ".

2. Каковы отличия однокристальных микропроцессоров от однокристаль-

ных микроЭВМ?

3. Дайте определение понятия "шина". Какие шины имеются в микропро-

цессорах?

4. Дайте определение понятия "порт".

5. Дайте определение понятия "интерфейс".

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 16: 466.основы микропроцессорной техники  учебное пособие

16

2. МИКРОПРОЦЕССОРЫ

В процессе совершенствования микропроцессоров произошла

их дифференциация по функционально-структурным особенностям

и областям применения.

2.1. Виды процессорных устройств

В настоящее время имеются следующие основные виды микро-

процессоров: универсальные микропроцессоры с CISC - архитекту-

рой; универсальные микропроцессоры с RISC - архитектурой; специ-

ализированные микропроцессоры (сигнальные, арифметические и

др.); микроконтроллеры.

Универсальные микропроцессоры с CISC – архитектурой

(Complicated Instruction Set Computer – компьютер со сложным набо-

ром команд) применяются главным образом в персональных компью-

терах и серверах. Лидером в этой области является фирма Intel, кото-

рой комплектуется более 80 % выпускаемых персональных компью-

теров. Микропроцессоры семейства M68000 фирмы Motorola исполь-

зуются в персональных компьютерах типа Macintosh, составляющих

около 10 % мирового производства. Микропроцессоры этого семей-

ства широко используются в устройствах управления, встраиваются в

различные приборы и системы.

Универсальные микропроцессоры с RISC – архитектурой

(Reduced Instruction Set Computer – компьютер с сокращенным набо-

ром команд) применяются в основном в рабочих станциях и мощных

серверах. В этой области имеются несколько ведущих производите-

лей. Широкое применение находят RISC-микропроцессоры семейств

SPARC фирмы Sun Microsystems и Rx000 фирмы MIPS Computer

Systems. За последние годы очень активно внедряются в различную

аппаратуру RISC-микропроцессоры семейства PowerPC – совместная

разработка фирм IBM, Motorola, Apple Computers. Среди фирм, вы-

пускающих RISC-микропроцессоры, находятся также Intel, Hewlett-

Packard, Digital Equipment. Необходимо отметить также транспьюте-

ры – оригинальные RISC-микропроцессоры, разработанные фирмой

Inmos для построения мультипроцессорных систем.

В классе специализированных микропроцессоров в настоя-

щее время наиболее широко представлены DSP (Digital Signal

Processor – процессоры цифровой обработки сигналов), основными

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 17: 466.основы микропроцессорной техники  учебное пособие

17

производителями которых являются фирмы Texas Instruments, Analog

Devices, Motorola, NEC. Кроме DSP выпускаются микропроцессоры,

специализированные для передачи информации в системах коммуни-

кации – коммуникационные контроллеры, а также для обработки

графической информации, арифметические сопроцессоры и многие

другие.

Однокристальные микроконтроллеры (ОМК) являются

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

Интегрируя на одном кристалле высокопроизводительный процессор,

память и набор периферийных устройств, они позволяют с мини-

мальными затратами реализовать широкую номенклатуру систем

управления различными объектами и процессами.

Использование ОМК в системах управления и обработки ин-

формации обеспечивает исключительно высокие показатели эффек-

тивности при столь низкой стоимости, что им практически нет аль-

тернативной элементной базы для построения качественных и деше-

вых систем. Во многих применениях система может состоять только

из одного однокристального микроконтроллера. Исключением явля-

ется применение программируемых логических интегральных схем

(ПЛИС) в области обработки сигналов в том случае, когда требуется

параллельная обработка большого потока входных данных. Произ-

водством микроконтроллеров занимается огромное число фирм.

К сожалению, отечественная электронная промышленность,

также имевшая некоторые успехи в этой области, в настоящее время

утратила свои позиции среди производителей микропроцессоров.

При разработке современных электронных приборов российские спе-

циалисты используют в основном зарубежную элементную базу, ко-

торая стала доступной широкому кругу потребителей.

Среди микроконтроллеров, производящихся в России, следует

отметить микроконтроллеры серий 1816 и 1830, являющиеся анало-

гами контроллеров семейства MCS51.

Микропроцессоры характеризуются:

1) тактовой частотой, определяющей максимальное время вы-

полнения переключения элементов в ЭВМ;

2) разрядностью, т.е. максимальным числом одновременно об-

рабатываемых двоичных разрядов (разрядность МП обозначается

m/n/k, где m - разрядность внутренних регистров, определяющая

принадлежность к тому или иному классу процессоров;

n - разрядность шины данных, определяющая скорость передачи ин-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 18: 466.основы микропроцессорной техники  учебное пособие

18

формации; k - разрядность шины адреса, определяющая размер ад-

ресного пространства). Так, МП i8088 характеризуется значения-

ми m/n/k=16/8/20;

3) архитектурой (понятие архитектуры микропроцессора вклю-

чает систему команд и способы адресации, возможность совме-

щения выполнения команд во времени, наличие дополнительных

устройств в составе микропроцессора, принципы и режимы его ра-

боты).

Выделяют понятия микроархитектуры и макроархитектуры.

Микроархитектура микропроцессора - это аппаратная организация и

логическая структура микропроцессора, регистры, управляющие схе-

мы, арифметико-логические устройства, запоминающие устройства и

связывающие их информационные магистрали. Макроархитектура -

это система команд, типы обрабатываемых данных, режимы адреса-

ции и принципы работы микропроцессора.

В общем случае под архитектурой ЭВМ понимается абстрактное

представление машины в терминах основных функциональных моду-

лей, языка ЭВМ, структуры данных.

По назначению различают универсальные и специализирован-

ные микропроцессоры. Универсальные микропроцессоры могут быть

применены для решения широкого круга разнообразных задач. При

этом их эффективная производительность слабо зависит от проблем-

ной специфики решаемых задач. Специализация МП, т.е. его про-

блемная ориентация на ускоренное выполнение определенных функ-

ций позволяет резко увеличить его эффективную производительность

при решении только определенных задач.

Среди специализированных микропроцессоров можно выделить

различные математические МП, предназначенные для повышения

производительности арифметических операций за счет применения,

например, матричных методов их выполнения, МП для обработки

данных в различных областях и т. д. С помощью специализиро-

ванных МП можно эффективно решать новые сложные задачи парал-

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

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

в основном сводятся к сравнению всего двух серий данных: входных, передава-

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

ветствие для сигналов изменяющейся формы путем сравнения их с различными

эталонными сигналами, что, например, может позволить эффективно выделить

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 19: 466.основы микропроцессорной техники  учебное пособие

19

полезный сигнал на фоне шума. Разработанные однокристальные конвольверы

используются в устройствах опознавания образов в тех случаях, когда возмож-

ности сбора данных превосходят способности системы обрабатывать эти дан-

ные.

По виду обрабатываемых входных сигналов различают цифро-

вые и аналоговые микропроцессоры. Микропроцессоры могут иметь

встроенные АЦП и ЦАП, тогда входные аналоговые сигналы переда-

ются в МП через АЦП в цифровой форме, там обрабатываются по со-

ответствующей программе и после преобразования с помощью ЦАП

в аналоговую форму поступают на выход. С архитектурной точки

зрения такие микропроцессоры представляют собой аналоговые

функциональные преобразователи сигналов и называются аналого-

выми микропроцессорами. Они выполняют функции любой анало-

говой схемы (например, производят генерацию колебаний, модуля-

цию, смещение, фильтрацию, кодирование и декодирование сигналов

в реальном масштабе времени и т.д., заменяя сложные схемы, состо-

ящие из операционных усилителей, катушек индуктивности, конден-

саторов и т.д.). При этом применение аналогового микропроцессора

позволяет значительно повысить точность обработки аналоговых

сигналов, а также расширить функциональные возможности самого

МП путем программной "настройки" цифровой части микропроцес-

сора на различные алгоритмы обработки сигналов. Обычно в составе

однокристальных аналоговых МП имеется несколько каналов анало-

го-цифрового и цифро-аналогового преобразования. В аналоговом

микропроцессоре большое значение уделяется увеличению скорости

выполнения арифметических операций. Отличительная черта анало-

говых микропроцессоров - способность к переработке большого объ-

ема числовых данных, т. е. к выполнению операций сложения и

умножения с большой скоростью при необходимости даже путем от-

каза от операций прерываний и переходов. Аналоговый сигнал, пре-

образованный в цифровую форму, обрабатывается в реальном мас-

штабе времени и передается на выход обычно в аналоговой форме

через цифроаналоговый преобразователь. При этом согласно теореме

Котельникова частота квантования аналогового сигнала должна вдвое

превышать верхнюю частоту сигнала.

Сравнение цифровых микропроцессоров производится сопо-

ставлением времени выполнения ими списков операций, аналоговых

микропроцессоров - по количеству эквивалентных звеньев аналого-

цифровых рекурсивных фильтров второго порядка. Производи-

тельность аналогового микропроцессора определяется его спо-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 20: 466.основы микропроцессорной техники  учебное пособие

20

собностью быстро выполнять операции умножения: чем быстрее

осуществляется умножение, тем больше эквивалентное количество

звеньев фильтра в аналоговом преобразователе и тем более сложный

алгоритм преобразования цифровых сигналов можно задавать в мик-

ропроцессоре. Одним из направлений дальнейшего совершенствова-

ния аналоговых микропроцессоров является повышение их универ-

сальности и гибкости, поэтому вместе с повышением скорости обра-

ботки большого объема цифровых данных будут развиваться сред-

ства обеспечения развитых вычислительных процессов обработки

цифровой информации путем применения аппаратных блоков преры-

вания программ и программных переходов.

По характеру временной организации работы микропроцессоры

делят на синхронные и асинхронные. У синхронных микропроцес-

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

управления (время выполнения операций в этом случае не зависит от

вида выполняемых команд и величин операндов). Асинхронные

микропроцессоры позволяют начало выполнения каждой следую-

щей операции определить по сигналу фактического окончания вы-

полнения предыдущей операции. Для более эффективного использо-

вания каждого устройства микропроцессорной системы в состав

асинхронно работающих устройств вводят электронные цепи, обес-

печивающие автономное функционирование устройств. Закончив ра-

боту над какой-либо операцией, устройство вырабатывает сигнал за-

проса, означающий его готовность к выполнению следующей опера-

ции. При этом роль естественного распределителя работ принимает

на себя память, которая в соответствии с заранее установленным

приоритетом выполняет запросы остальных устройств по обеспече-

нию их командной информацией и данными.

По организации структуры микропроцессорных систем разли-

чают микроЭВМ одно- и многомагистральные. В одномагистральных

микроЭВМ все устройства имеют одинаковый интерфейс и подклю-

чаются к единой информационной магистрали, по которой передают-

ся коды данных, адресов и управляющих сигналов.

В многомагистральных микроЭВМ устройства группами под-

ключаются к своей информационной магистрали. Это позволяет осу-

ществить одновременную передачу информационных сигналов по

нескольким (или всем) магистралям. Такая организация систем

усложняет их конструкцию, однако увеличивает производительность.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 21: 466.основы микропроцессорной техники  учебное пособие

21

По числу выполняемых программ различают одно- и многопро-

граммные микропроцессоры. В однопрограммных микропроцессо-

рах выполняется только одна программа. Переход к выполнению дру-

гой программы происходит после завершения текущей программы. В

много- или мультипрограммных микропроцессорах одновременно

выполняется несколько (обычно несколько десятков) программ

2.2. Внутренняя архитектура микропроцессора

Основными внутренними компонентами МП являются [10,12-

16]: арифметико-логическое устройство, реализующее множество

арифметических и логических функций МП; узел синхронизации и

управления, воспринимающий и генерирующий внешние управля-

ющие сигналы; набор регистров для временного хранения кодов

команд, данных, адресов и информации о внутреннем состоянии

МП (рис.2.1).

Рис.2.1. Внутренняя организация микропроцессора

Содержимое некоторых из внутренних регистров МП может

быть изменено программным путем, другая их часть не доступна

Буфер ША

Регистр

команды

Дешифратор

команды

Схема синхронизации

и управления

РОН

SP

PC АЛУ

Аккумулятор Флажки

Буфер ШД

ШУ ША

ШД

Внутренняя шина данных

ГТИ

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 22: 466.основы микропроцессорной техники  учебное пособие

22

программисту. Общее число внутренних регистров МП разных се-

мейств различно, как различны конкретные функции, выполняе-

мые ими. Тем не менее для всего многообразия внутренних реги-

стров МП характерны следующие наиболее важные их виды.

Регистр команды воспринимает код текущей команды с ши-

ны данных и осуществляет его хранение в течение всего времени ее

исполнении. Регистр команды не доступен программисту.

Для хранения данных и промежуточных результатов в МП ис-

пользуются программно-доступные рабочие регистры. Если все

рабочие регистры в составе МП позволяют непосредственно запи-

сывать в них результаты вычислений, выполненных АЛУ, их обычно

называют регистрами общего назначения (РОН). Если в МП имеется

всего лишь один такой специализированный регистр, его называют

аккумулятором.

Регистры для хранения адресов (указательные регистры) также

программно доступны. К указательным регистрам относятся про-

граммный счетчик (другое наименование — указатель команды), а

также регистры — указатели стека.

Программный счетчик (РС) обеспечивает хранение двоично-

го кода адреса ячейки памяти, где помещена команда, которую

предстоит выполнить процессору вслед за исполняемой им в дан-

ный момент командой.

Новый цикл выбора команды МП всегда начинается с того,

что на его шине адреса появляется содержимое РС, и очередная ко-

манда по этому адресу переписывается с шины данных в регистр

команд, после чего она поступает на дешифратор команды. Выходы

дешифратора подключены к узлу синхронизации и управления,

определяющему требуемое для выполнения этой команды направле-

ние передачи данных и реагирующему на внешние сигналы, по-

ступающие по шине управления от других устройств. В процессе ис-

полнения команды содержимое РС автоматически увеличивается.

Таким образом, в любой момент времени его содержимое представ-

ляет собой адрес очередной ячейки памяти, где может храниться ли-

бо следующая команда, либо дополнительные данные, привлекаемые

МП для исполнения данной команды.

Регистр — указатель стека SP используется для хранения

адреса последней использованной ячейки стека (области памяти, раз-

мер которой изменяется в процессе обработки). Работа стека органи-

зована по принципу "последним пришел — первым вышел". При за-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 23: 466.основы микропроцессорной техники  учебное пособие

23

писи данных в стек содержимое регистра SP автоматически уменьша-

ется, и по этому адресу данные заносятся в память. При удалении

данных из стека они переписываются из ячейки, адрес которой хра-

нится в SP, после чего его содержимое автоматически увеличивается.

Таким образом, этот регистр всегда следит за положением вершины

стека (наиболее удаленной от начала стека ячейки памяти).

Информация об особенностях результата последней операции,

выполненной АЛУ (информация о внутреннем состоянии МП), хра-

нится в регистре флажков (другие его названия — регистр состоя-

ния, регистр кода условия). В микропроцессорной технике так обыч-

но называют простой набор триггеров, состояния которых зависят от

результатов операции АЛУ (строго говоря, простой набор отдельных

триггеров нельзя называть регистром, но применительно к МП это не

вызывает особых недоразумений). Каждый триггер в составе реги-

стра состояния устанавливается (или сбрасывается) при какой-то сво-

ей особенности результата в АЛУ (например, триггер нуля Z, пере-

полнения V, отрицательного результата N переноса С и др.). Регистры

состояния программно-доступны, причем программист может уста-

новить (или сбросить) каждый триггер в отдельности или одновре-

менно весь регистр.

Рассмотренные основные компоненты в составе МП связаны

между собой быстродействующей внутренней шиной данных, а его

внешние шины отделены от нее буферными каскадами, повышаю-

щими нагрузочную способность внешних шин. Отметим, что раз-

рядность МП определяется числом бит данных, обрабатываемых в

одной операции АЛУ, и всегда равна числу проводников внешней

шины данных. Объем адресуемой памяти МП зависит от провод-

ников внешней адресной шины. Нетрудно убедиться в том, что с

помощью адресной шины из N проводников МП можно передать

2N различных двоичных адресов ячеек памяти. Всякому внешнему

устройству ввода/вывода также присваивается определенный адрес,

что позволяет МП осуществлять операции ввода/вывода подобно

обращению к обычной ячейке памяти.

Все операции в МП инициируются импульсами синхронизации

от внешнего (реже встроенного) генератора тактовых импульсов (ТГ),

стабилизированного кварцевым резонатором. По значению частоты

следования импульсов синхронизации в первом приближении

можно судить о быстродействии МП. При прочих равных условиях

оно тем больше, чем выше частота синхронизации. Первые образцы

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 24: 466.основы микропроцессорной техники  учебное пособие

24

МП работали при частотах тактового генератора 2…4 МГц, для со-

временных МП типичны значения частоты порядка 1…3 ГГц и выше.

2.3. Универсальные микропроцессоры

Универсальные микропроцессоры (микропроцессоры общего

применения) [21] используются чаще всего в составе микроЭВМ.

Восьмиразрядные МП (например, такие широко распространен-

ные МП Intel 8080 и разработанные примерно в то же время МП

МС6800 фирмы "Motorola"; а также отечественный КР580ВМ80А

и более совершенные Iп1е1 8085, МС36502, Z80, МС6809 и другие)

выпускаются в виде больших интегральных схем (БИС) с 40 контактами

при двухстороннем расположении выводов. Их шина адреса содержит

16 проводников, поэтому они непосредственно могут адресоваться к

65536 ячейкам (64 кбайт). Все эти микропроцессоры при одинаковой

внутренней архитектуре различаются некоторыми конструктивными

особенностями, функциями и количеством программно-доступных

внутренних регистров и, как следствие этого, наборами используе-

мых команд. На их основе в 90-е годы изготавливали микроЭВМ, в

последнее время их используют иногда для создания сравнительно

простых контроллеров, хотя более оправдано использовать для этих

целей ОМК.

Шестнадцатиразрядные МП обычно имеют 64-контактный кор-

пус также с двухрядным расположением выводов. По сравнению с 8-

разрядными основные преимущества этих МП заключаются в расши-

рении набора команд, более быстром их исполнении и увеличенном

объеме адресуемой памяти (обычно 1 Мбайт и более).

Общепризнанным лидером на рынке 16-разрядных микропроцес-

соров считается фирма " Intel ". Популярные 16-разрядные МП

(например, открывшие эру ПЭВМ МП семейства Intel 8086 / 8088 и

более мощные 80186, 80286; отечественный МП КМ1810ВМ86 и дру-

гие) представляют собой не просто усовершенствованные описанные

МП (Intel 8080 / 8085), а содержат некоторые принципиальные реше-

ния в области разработки новых конфигураций универсальных и специ-

ализированных микропроцессоров, позволяющих значительно повы-

сить их быстродействие. Увеличение быстродействия в 16-разрядных

МП достигается путем улучшения организации процесса вычислений и

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

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 25: 466.основы микропроцессорной техники  учебное пособие

25

Среди архитектурных особенностей 16-разрядных МП отметим

несомненную находку, связанную с применением для более быстрого

исполнения команд принципа конвейеризации. Так называют специаль-

ную организацию работы МП, при которой каждая очередная команда

заносится в регистр команд не из памяти, а выбирается из очереди ко-

манд. Для этого перед регистром команды дополнительно включается

сверхбыстродействующий блок памяти, в который предварительно из

памяти переписываются несколько очередных команд (очередь ко-

манд). Длина очереди составляет 6 байт (для МП 8086) и 4 байта (для

МП 8088). Такой подход позволяет существенно повысить скорость

выполнения программы, сокращая простои быстродействующего про-

цессора в промежутках времени, когда производится относительно

более медленное обращение к памяти.

К дополнительным аппаратным средствам относят разработан-

ный фирмой Intel специализированный процессор 8087 (более совер-

шенный его вариант i80287) для ускоренного выполнения арифметиче-

ских операций (с большими числами). Он подключается к шинам адре-

са данных, а также к некоторым линиям шины управления и

действует как вспомогательный процессор (арифметический сопро-

цессор). Сопроцессор 8087 контролирует командный поток, и при об-

наружении специально зарезервированного кода команды он выполня-

ет, а основной МП игнорирует ее. Сопроцессор может с повышенной

точностью выполнять все арифметические операции и вычислять

значения таких сложных математических функций, как логарифмиче-

ские, тригонометрические и обратные тригонометрические функции;

возведение в степень; извлечение корня и др.

Сопроцессор не может работать изолированно от центрального

МП, но вместе они образуют тандем, обеспечивающий при числен-

ной обработке в 10- 50 раз более высокую производительность. Чтобы

сэкономить число внешних выводов ИС, в 16-разрядных МП часто

применяется описанное мультиплексирование шин данных и адреса.

Тридцатидвухразрядные МП имеют от 60 до нескольких сотен

контактов (МП Pentium — 296, Pentium Рго — 387 контактов), распо-

ложенных либо по всем четырем сторонам корпуса, либо в узлах пря-

моугольной сетки, нанесенной на его поверхность (матричное разме-

щение выводов). Как правило, шина адреса таких МП также состоит из

32 проводников, поэтому современные 32-разрядные МП обладают

большим диапазоном адресации памяти (4 Гбайт).

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 26: 466.основы микропроцессорной техники  учебное пособие

26

Об их исключительно высокой производительности можно су-

дить, хотя бы по типичным значениям частоты тактового генератора

(сотни МГц вместо10 МГц для лучших образцов 16-разрядных МП).

При разработке 32-разрядных МП описанные тенденции по

дальнейшему совершенствованию организации вычислительного про-

цесса получили свое дальнейшее развитие и привели к использова-

нию в них так называемой кэш-памяти и других дополнительных

средств управления памятью.

Кэш-памятью называют сверхбыстродействующую память

для хранения в ней наиболее часто адресуемых команд и данных.

Дело в том, что для большинства используемых программ харак-

терна тенденция частого обращения к одним и тем же адресам памяти,

и содержимое по этим адресам (вместе с самими адресами) заносит-

ся в кэш-память, которая либо встраивается в сам МП, либо помеща-

ется между МП и основной памятью.

При выполнении программы кэш-память определяет, не совпада-

ет ли запрашиваемый МП адрес с ее содержимым. При совпадении

(удачного "попадания") команда считывается из быстродейству-

ющей кэш-памяти без обращения к относительно медленной основ-

ной памяти.

При достаточно высоком проценте удачных попаданий дости-

гается заметное увеличение быстродействия всей систем Очевидно,

чем больше кэш-память, тем больше и удачных попаданий (объем

кэш-памяти современных МП может достигать сотен кбайт)

Дополнительные средства управления памятью обеспечивают

эффективное распределение областей памяти между различными про-

граммами (и их данными), а также их защиту от наложения друг на

друга. Обычно они встраиваются в сам МП или выполняются в виде

отдельных ИС.

Рассмотрим более подробно устройство и работу микропроцес-

сора [3] на примере простейшего МП i8080. На рис. 2.1 представле-

на внутренняя структура МП i8080, включающего 8-разрядное АЛУ

с буферным регистром и схемой десятичной коррекции, блок реги-

стров общего назначения, регистры указателя стека и счетчика ко-

манд , управляющий автомат, буферные схемы шин адреса и данных

и схему управления системой.

Внешний интерфейс представлен 8-разрядной двунаправленной

шиной данных D[7:0], 16-разрядной шиной адреса A[15:0] и группой

линий управления. Назначение входных и выходных линий МП :

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 27: 466.основы микропроцессорной техники  учебное пособие

27

D[7:0] - двунаправленная шина данных служит для приема и выдачи дан-

ных, приема команды, приема вектора прерывания, выдачи дополнительной

управляющей информации (слово PSW);

Рис. 2.1. Внутренняя структура МП i8080

A[15:0] - однонаправленная шина адреса служит для выдачи адреса памя-

ти и устройств ввода/вывода;

Ф1,Ф2 - сигналы тактового генератора частотой 1…2,5 МГц;

RESET - сброс (начальная установка и запуск программы с адреса 0000);

READY - входной сигнал готовности памяти или ВУ к обмену (обеспечи-

вает асинхронный режим обмена);

INT - запрос внешнего прерывания;

HOLD - захват шины (требование прямого доступа в память со стороны

ВУ);

WR - запись - выходной сигнал, определяющий направление передачи

информации по шине данных от процессора к памяти или ВУ;

RD - чтение - выходной сигнал, определяющий направление передачи

информации по шине данных от памяти или ВУ к процессору;

АЛУ

УА

HOLD

Внутренняя шина 8 бит

Буфер данных

DB[7:0]

W2 W3

D E

B C

H L

SP

PC

Инкр/Декр

Буфер адреса

16

16

AB[15:0]

A W2

АЛБ

Fla

gs

Рг. команд

Уп

рав

ляю

щи

й

авто

мат

Ф1, 2

RESET

RD

READY

INT

WR

SYNC

WAIT

INTE

HLDA

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 28: 466.основы микропроцессорной техники  учебное пособие

28

SYNC - выходной сигнал, идентифицирующий наличие на шине данных

дополнительной управляющей информации (PSW);

WAIT - выходной сигнал, отмечающий состояние ожидания или останова

МП;

INTE - выходной сигнал, подтверждающий режим внешних прерываний;

HLDA - выходной сигнал, подтверждающий режим прямого доступа в

память (подтверждение захвата).

МП работает в составе МПС, обмениваясь информацией с памя-

тью и ВУ. В основе работы МП лежит командный цикл (КЦ)- дей-

ствия по выбору из памяти и выполнению одной команды. В зависи-

мости от типа и формата команды, способов адресации и числа опе-

рандов командный цикл может включать различное число обращений

к памяти и ВУ и, следовательно, - иметь различную длительность.

Командный цикл начинается с извлечения из памяти первого байта

команды по адресу, хранящемуся в PC. Напомним, что команды i8080

имеют длину 1, 2 или 3 байта, причем в первом байте содержится ин-

формация о длине команды. В случае 2- или 3-байтовой команды ре-

ализуются дополнительные обращения к памяти по соседним (боль-

шим) адресам.

После считывания команды начинается ее выполнение, в про-

цессе которого может потребоваться еще одно или несколько обра-

щений к памяти или ВУ (чтение операнда, запись результата).

Для реализации команды МП i8080 может потребоваться от од-

ного до пяти обращений к памяти (ВУ). Хотя обращения к ЗУ/ВУ

располагаются в разных частях КЦ, выполняются они по единым

правилам, соответствующим интерфейсу МПС и реализовываются на

общем оборудовании управляющего автомата. Действия МПС по пе-

редаче в/из МП одного байта данных/команды называются машин-

ным циклом.

Командный цикл представляет собой последовательность ма-

шинных циклов (МЦ), причем КЦ i8080 может содержать от 1 до 5

МЦ, которые принято обозначать M1, M2,..M5. МЦ обязательно

включает действия по передаче байта информации. Кроме того, в не-

которых МЦ дополнительно реализуются действия по пересылке

и/или преобразованию информации внутри МП, поэтому длитель-

ность МЦ может быть различной – из-за различного числа содержа-

щихся в них машинных тактов (T1, T2,...).

Машинный такт образует пара сигналов тактового генератора,

поэтому длительность такта постоянна.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 29: 466.основы микропроцессорной техники  учебное пособие

29

Таким образом, просматривается иерархия процедур при работе

микропроцессора (не только i8080): командный цикл - машинный

цикл - машинный такт.

Каждому такту соответствует определенное состояние управля-

ющего автомата. Любой МЦ i8080 обязательно содержит такты T1,

T2, T3, предназначенные для передачи байта по интерфейсу. МЦ, в

которых осуществляется передача и/или преобразование информации

в МП, содержат дополнительно один или два такта T4, T5. МП i8080

вырабатывает несколько типов МЦ, основными из которых являются

циклы ПРИЕМ и ВЫДАЧА.

МЦ микропроцессора i8080 предусматривает возможность об-

мена как в синхронном, так и в асинхронном режиме. Если в составе

МПС использованы только "быстрые" устройства, т.е. такие, которые

могут работать с тактовой частотой МП, то передача информации в

МЦ осуществляется в синхронном режиме. В этом случае на вход

READY МП подается константа "1" и после такта T2 начинается такт

T3. При работе с "медленными" устройствами, быстродействие кото-

рых не позволяет переключаться с частотой тактового генератора

МП, необходимо "растянуть" во времени МЦ, реализовав асинхрон-

ный принцип обмена. Для этого в начале МЦ - обмена с "медленны-

ми" устройствами на входе READY формируется уровень логическо-

го нуля. В такте T2 МП анализирует состояние READY, и если

READY = 0, то МП после T2 переходит не к T3, а к такту ожидания

Tw, который может длиться произвольное число периодов тактового

генератора. Переход к T3 осуществляется по фазе Ф1, если в преды-

дущей Ф2 READY установился в "1". С помощью входа READY

можно не только согласовывать работу МП с устройствами различно-

го быстродействия, но и реализовывать пошаговый и потактовый ре-

жимы работы МП.

Таким образом, в машинном цикле выполняются следующие

действия:

выдача адреса;

выдача информации о начатом МЦ (PSW);

анализ значения входных сигналов;

ожидание сигнала READY = 1 (при необходимости);

прием/выдача данных;

внутренняя обработка/пересылка данных.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 30: 466.основы микропроцессорной техники  учебное пособие

30

2.4. Цифровые процессоры

Цифровые процессоры обработки сигналов (ЦПОС) (в англо-

язычной литературе применяется термин Digital Signal Processors и

аббревиатура DSP) используются обычно [24] как сопроцессо-

ры (арифметические, графические, и т. д.).

Так графический сопроцессор предназначен для широкого при-

менения в видеомониторах (дисплеях) ПЭВМ, издательских системах,

а также системах компьютерного моделирования и обработки изобра-

жений. Графические сопроцессоры оптимизированы на выполне-

ние операций, связанных, например, с получением перемещаю-

щихся изображений и трехмерной графики. Естественно, что та-

кие графические операции они выполняют намного быстрее ос-

новного МП.

Особенности архитектуры цифровых процессоров обработки

сигналов обусловлены спецификой программ, по которым им прихо-

дится работать:

- программы выполняются, как правило, в реальном масштабе

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

ческую важность вопросам повышения быстродействия;

- программы содержат много логических и особенно арифмети-

ческих операций и практически не содержат программ перехода;

- происходит постоянный и быстрый ввод-вывод данных, зача-

стую в аналоговой форме;

- программы относительно короткие и достаточно редко изме-

няются, зачастую остаются неизменными на протяжении всего сро-

ка эксплуатации процессора.

Из этого проистекают такие особенности архитектуры:

- в процессорах цифровой обработки сигналов очень часто ис-

пользуется так называемая Гарвардская архитектура с раздельными

блоками памяти для хранения программ и данных; они могут иметь

разную разрядность, к ним происходит обращение по разным коман-

дам;

- большая (иногда нестандартная) разрядность обрабатываемых

данных - 16, 24, 32, 48, 64, 128, что позволяет увеличить диапазон об-

рабатываемых чисел без применения формата с плавающей запятой

или обрабатывать по несколько чисел одновременно;

- блоки, предназначенные для ускорения выполнения команды

умножения - сдвиговые регистры, матричные умножители;

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 31: 466.основы микропроцессорной техники  учебное пособие

31

- память команд и данных на самом кристалле процессора;

- возможность параллельного выполнения нескольких опера-

ций одновременно, например ввода/вывода и арифметических ко-

манд;

- все команды имеют одинаковую длину и выполняются за

одинаковое время, что позволяет использовать счетчик команд для

отсчета временных интервалов.

Все эти особенности архитектуры проявляются в таких про-

цессорах как аналого-цифровой процессор КР1813ВЕ1, процессо-

ры серии TMC320 фирмы Texas Instruments [20], DSP фирм

Motorola и др.

Рассмотрим устройство и работу отечественного цифрового

процессора обработки сигналов КР1813ВЕ1 (он является расширен-

ным функциональным аналогом схемы i2920 компании Intel, которая

первоначально создавалась для использования в аппаратуре голосо-

вой связи). Цифровой процессор обработки сигналов КР1813ВЕ1

содержит законченную микропроцессорную систему со всеми обыч-

ными элементами: ОЗУ, ПЗУ, АЛУ, а также АЦП и ЦАП для ввода и

вывода аналоговых сигналов (рис. 2.3).

Кроме этого введены системы команд программного цикла с

возможностью организации последовательного цифрового вво-

да/вывода.

Рис. 2.3. Структурная схема ЦПОС

Аналого-цифровой преобразователь работает по методу по-

следовательных приближений, его разрядность - 8, за одну команду

определяется один разряд числа.

Статическое оперативное запоминающее устройство явля-

ется двухпортовым, т.е. из него могут одновременно выбираться два

Схема

синхронизации УФ ППЗУ 192×24 бит СК

Мультиплексор

и входные

схемы выборки

и хранения

АЦП

ЦАП

ЦАР СОЗУ 40×25 бит А

В МУ АЛУ

Демультиплексор

и входные схемы

выборки и

хранения

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 32: 466.основы микропроцессорной техники  учебное пособие

32

операнда - A и B. Разрядность чисел, хранимых в ОЗУ - 24 числовых

разряда и один знаковый.

Перепрограммируемое постоянное запоминающее устрой-

ство с ультрафиолетовым стиранием (ППЗУ )содержит набор команд.

В цифроаналоговый регистр помещается результат аналого-

цифрового преобразования и оттуда берутся данные.

Арифметико-логическое устройство выполняет операции:

сложение, вычитание, запись, исключающее ИЛИ, логическое И,

нахождение знака и абсолютной величины. Команды сложения вычи-

тания и загрузки могут быть условными. Признак условной ко-

манды – соответствующая команда в аналоговом поле команд.

Другие условные команды - переход на начало программы и на

32 адреса вперед.

Устройство сдвига МУ обеспечивает сдвиг вправо на 13 разря-

дов, вправо на один разряд и сдвиг влево на один разряд.

Команды выбираются группами по четыре, аналоговые и циф-

ровые части команды выполняются параллельно, все это увеличивает

быстродействие. Быстродействия данного процессора цифровой об-

работки сигнала достаточно, чтобы производить практически любые

преобразования с сигналами звукового диапазона частот (до 16 кГц).

Система команд аналого-цифрового микропроцессора является

типичной для ЦПОС и оптимизированной для решения типичных за-

дач цифровой обработки сигналов: цифровой фильтрации, дискретно-

го преобразования Фурье и пр. Другой ее особенностью является ис-

пользование принципов архитектуры процессоров с длинным ко-

мандным словом VLIW - кодирование в одной ассемблерной команде

нескольких операций, которые одновременно выполняют несколько

блоков - арифметико-логическое устройство, устройства сдвига и

аналоговая часть микропроцессора. Более сложную структуру и большие возможности имеют цифровые

процессоры обработки сигналов фирмы Texas Instruments.

Компания Texas Instruments является лидером в производстве и разработ-

ке ЦПОС. Она выпускает несколько семейств ЦПОС, объединенных в серию

TMS320 [20], которая разделяется на два класса: процессоры для обработки

чисел с фиксированной точкой и процессоры для обработки чисел с плавающей

точкой. Первый класс представлен тремя семействами процессоров, базовыми

моделями которых являются соответственно TMS320.10,.20,.50. Второй класс

включает процессоры TMS320С30 и TMS320C80, которые поддерживают опе-

рации с плавающей точкой и представляют собой мультипроцессорную систе-

му, выполненную на одном кристалле, а семейство TMS320C6x включает про-

цессоры как с фиксированной, так и с плавающей точкой.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 33: 466.основы микропроцессорной техники  учебное пособие

33

Процессоры старших поколений одного семейства наследуют основные

архитектурные особенности. Они совместимы "снизу вверх" по системе команд

(чего нельзя сказать о процессорах, входящих в разные семейства).

Невозможно подробно описать все ЦПОС этого семейства, поэтому крат-

ко приведем особенности двух серий процессоров.

Первый процессор семейства TMS320C10 является 16-разрядным процес-

сором. Его адресное пространство составляет 4К (см. гл.5, п.5.1) 16-разрядных

слов памяти программ и 144 шестнадцатиразрядных слов памяти данных. дли-

тельность командного такта процессора составляет 160…200 нс. В основу

микропроцессора положена модифицированная Гарвардская архитектура.

Арифметические функции в процессоре реализованы аппаратно. Он имеет ап-

паратные умножитель MULT, устройство сдвига SHIFTER, аппаратную

поддержку автоинкремента- декремента адресных регистров данных ARO,

AR1.

С внешними устройствами процессор взаимодействует через восемь 16-

разрядных портов ввода/вывода. Предусмотрена возможность обработки внеш-

него прерывания. Другие микропроцессоры данного семейства имеют анало-

гичную архитектуру и отличаются длительностью командного такта, конфигу-

рацией памяти, наличием (или отсутствием) дополнительных периферийных

устройств.

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

обработки сигналов компании Texas Instruments является процессор принци-

пиально новой архитектуры TMS320C80. Процессор ориентирован на приме-

нения, связанные с высокопроизводительной цифровой обработкой сигнала в

самых широких областях науки и техники. Второе название процессора MVP

(Multimedia Video Processor) характеризует его высокую эффективность при

решении задач обработки изображений, 2- и 3-мерной графике, в системах

виртуальной реальности, компрессии и декомпрессии видео- и аудиоданных,

обработки связной информации и др.

МП TMS320C80 объединяет в одной микросхеме пять полнофункцио-

нальных процессоров, четыре из которых - улучшенные цифровые процессоры

обработки сигналов (Advanced Digital Signal Processor), архитектура которых

ориентирована на реализацию алгоритмов цифровой обработки сигналов.

Каждый ADSP позволяет выполнить за один командный такт несколько RISC -

подобых операций. Пятый процессор, главный Master Processor (МР), пред-

ставляет собой 32-разрядный RISC-процессор с высокопроизводительным вы-

числителем с плавающей точкой. В дополнение к процессорному ядру на кри-

сталле размещены:

контролер обмена Transfer Controller (TC) - интеллектуальный контро-

лер ПДП, поддерживающий интерфейс с DRAM и SRAM;

видеоконтроллер Video Controller (VC);

система контроля и отладки - порт JTAG (IEEЕ 1149.1);

50 килобит SRAM.

Выпускается также упрощенный вариант микропроцессора TMS320C82,

который отличается меньшим объемом памяти, количеством сигнальных про-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 34: 466.основы микропроцессорной техники  учебное пособие

34

цессоров ADSP (2), отсутствием видеоконтроллера и соответственно меньшей

стоимостью. Суммарная производительность ЦПОС TMS320C80 на регистро-

вых операциях достигает 2 млрд RISC-подобных команд в секунду. Благодаря

столь высокой производительности ЦПОС TMS320C80 может заменить при

реализации ряда приложений более 10 высокопроизводительных МП общего

назначения. Пропускная способность шины ЦПОС TMS320C80 достигает

2,4 Гбайт/с в потоке данных и 1,8 Гбайт/с в потоке инструкций.

Ниже приводятся основные технические характеристики TMS320C80:

тактовая частота 40 или 50 МГц.

производительность свыше 2 млрд операций в секунду;

четыре 32-разрядных ADSP- процессора;

32-разрядный главный RISC-процессор с вычислителем с плавающей

точкой;

50 Кбайт SRAM на кристалле;

64-разрядный контроллер обмена с динамическим конфигурированием

шины на обмен 64-х, 32-х, 16- и 8-разрядными словами;

режим ПДП к 64-разрядному SRAM, DRAM;

4 Гбайтный объем адресного пространства;

видеоконтроллер;

4 внешних прерывания;

встроенные средства внутрисхемной эмуляции;

напряжение питания 3,3 В;

около 4 млн транзисторов на кристалле;

0,5/0,6 КМОП-технология;

305-контактный корпус PGA

Рассмотренные универсальные микропроцессоры и ЦПОС при-

меняются в сложных уникальных устройствах, разработкой которых

занимаются большие коллективы специалистов. Для решения задач

автоматизации технологических процессов больший интерес пред-

ставляют однокристальные микроконтроллеры.

ВОПРОСЫ ДЛЯ САМОПРОВЕРКИ

1. Объясните назначение основных узлов МП: арифметико-логического

устройства и аккумулятора.

2. Объясните назначение регистров общего назначения и регистра ко-

манд.

3. Объясните назначение регистра признаков, регистра адресов, счетчика

команд, указателя стека.

4. Каковы особенности ЦПОС?

5. В чем отличие ЦПОС семейств TMS320C1х и TMS320C8х?

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 35: 466.основы микропроцессорной техники  учебное пособие

35

3. ОДНОКРИСТАЛЬНЫЕ МИКРОКОНТРОЛЛЕРЫ

Контроллер (от английского control - управлять, регулировать) -

это устройство, предназначенное для управления реальными объек-

тами. Управление происходит во времени, поэтому говорят, что кон-

троллер управляет объектом в реальном масштабе времени. Как вся-

кое устройство управления, контроллер собирает исходную инфор-

мацию, обрабатывает ее и формирует сигналы управления. Как пра-

вило, сигналы, несущие исходную информацию, и сигналы управле-

ния представляют собой аналоговые сигналы, такие как напряжение,

ток, магнитный и световой потоки, линейные и угловые перемеще-

ния и многое другое. Обработка этих сигналов может происходить

как в аналоговой, так и в цифровой форме; последняя, в силу ее уни-

версальности, находит в настоящее время повсеместное применение

— контроллеры превращаются в аналого-цифровые устройства.

Итак, современный контроллер — это цифровой вычислитель,

связанный со средой управления аналого-цифровыми и цифроанало-

говыми преобразователями. В зависимости от сложности алгоритма

управления цифровой вычислитель может быть построен в виде

комбинационного устройства, автомата, операционного устройства

или микропроцессорного вычислителя. Выбор вида реализации вы-

числителя зависит также от трудоемкости и продолжительности

проектирования контроллера, стоимости элементной базы, уровня

технологического оснащения производства, требований потребителя

и других факторов. Основные требования, которые потребители

предъявляют к управляющим блокам приборов можно сформулиро-

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

высокая степень миниатюризации, малое энергопотребление, рабо-

тоспособность в жестких условиях эксплуатации; достаточная про-

изводительность для выполнения требуемых функций. Выполнение

всех этих довольно противоречивых условий одновременно затруд-

нительно, поэтому в настоящее время контроллеры выполняют на

базе управляющих однокристальных микроконтроллеров (ОМК),

дополняя их необходимой периферией. К настоящему времени раз-

работано более 1000 различных ОМК. Наибольшее применение

находят ОМК фирмы Atmel (семейства MCS-48, MCS-51, MCS-96) и

фирмы Motorola (семейства НС05, РС08, РС11). Ниже некоторые их

них рассмотриваются более подробно.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 36: 466.основы микропроцессорной техники  учебное пособие

36

3.1. Структура однокристальных контроллеров

Выделим некоторые черты архитектуры и системы команд, об-

щие для всех современных ОМК:

так называемая Гарвардская архитектура, т.е. раздельные об-

ласти памяти для хранения команд (программы) и данных;

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

ле) практически всех блоков, характерных для полнофункционально-

го компьютера – процессора, ПЗУ, ОЗУ, устройств ввода/вывода, так-

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

литературе подобные устройства часто называются однокристальные

ЭВМ (ОЭВМ).

Однокристальные микроконтроллеры (ОМК) обычно класси-

фицируют по разрядности обрабатываемых чисел:

4-разрядные- самые простые и дешевые;

8-разрядные - наиболее многочисленная группа (оптимальное

сочетание цены и возможностей), к этой группе относятся микро-

контроллеры серии MCS-51 (Intel) и совместимые с ними [1], PIC

(MicroChip) [4], HC68 (Motorola) [8], Z8 (Zilog) и др.;

16-разрядные MCS-96 (Intel) [26]и др. - более высокопроизво-

дительные, но более дорогостоящие;

32-разрядные - обычно являющиеся модификациями универ-

сальных микропроцессоров, например i80186 или i386EX.

Как и большинство современных микросистем, ОМК строятся

по магистрально-модульному принципу, когда все модули подклю-

чаются к единой внутрисистемной магистрали. ОМК включает цен-

тральный процессор (ЦП), постоянное и оперативное запоминающие

устройства, цифровое и аналоговое устройства ввода/вывода (ЦВВ,

ABB), таймер (Т) и устройство прерываний (УПР). Центральный

процессор выполняет две задачи: организует пересылку информа-

ции между всеми модулями ОМК и осуществляет преобразование

информации на арифметико-логическом устройстве. Запоминающее

устройство служит для хранения программ и констант (ПЗУ) и опе-

ративно изменяющихся данных (ОЗУ). В отличие от универсальных

ЭВМ ОЗУ ОМК имеет небольшой объем, не превышающий, как

правило, нескольких сот байт. Цифровое устройство ввода/вывода

осуществляет связь ОМК с цифровыми блоками объекта управления

через последовательные и параллельные интерфейсы. К ним отно-

сятся клавишные пульты, устройства отображения и печати, вспомо-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 37: 466.основы микропроцессорной техники  учебное пособие

37

гательные вычислители и микроЭВМ. По линии цифрового вво-

да/вывода передаются также сигналы воздействия релейного типа,

устанавливающие факт наличия или отсутствия какого-либо события

(тумблер/кнопка в положении включено, индикаторный светодиод

горит и т.д.). Аналоговые устройства ввода/вывода служат для

контроля состояния аналоговых блоков объекта управления (напря-

жение, ток, температура, давление, перемещение и др.) и выработки

сигналов управления непрерывными процессами (скорость вращения

двигателя, мощность калорифера, перемещение механической за-

слонки и др.). Таймер используется для организации управления в

реальном масштабе времени. Он фиксирует время возникновения

отдельных событий, формирует временные интервалы между собы-

тиями, осуществляет счет событий. Таймер является, по существу,

внутренними часами микроконтроллера. Устройство прерывания

оптимизирует процесс управления с учетом возникновения непред-

сказуемых событий: изменяет процесс обмена и обработки данных,

фиксирует и исправляет сбои, восстанавливает работоспособность

ОМК при кратковременном пропадании питания и многое другое.

Построение контроллеров на базе ОМК отличается от построе-

ния контроллеров на базе микропроцессорных комплектов (в ком-

плект входят: микросхемы КР580ВМ80А, КР580ВИ53, КР580ВН59,

КР580ВВ55, КР580ВВ51 и другие). На основе микропроцессорных

комплектов разработаны одноплатные контроллеры серии МС1200

и МС1212. Для таких контроллеров программы и данные распола-

гаются в едином адресном пространстве памяти (архитектура фон

Неймана) и никаких признаков, указывающих на тип информации,

не несут. Содержимое ячейки памяти интерпретируется оператором

обработки, в качестве которого выступает код операции команды.

Таким образом, память программ и память данных для архитектуры

фон Неймана являются совмещенными; ячейки памяти адресуются

единым кодом адреса, размер которого определяется объемом этой

памяти. Как показывает практика, это обстоятельство уменьшает

эффективность использования адресной части команды, увеличи-

вает объем программ и уменьшает скорость их выполнения.

Поскольку в однокристальных микроконтроллерах использует-

ся так называемая Гарвардская архитектура, то память программ и

память данных имеют раздельные адресные пространства, при об-

ращении к которым используются различные механизмы адресации.

Это позволяет реализовать компактное кодирование набора машин-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 38: 466.основы микропроцессорной техники  учебное пособие

38

ных команд и, следовательно, экономно использовать память дан-

ных. В соответствии с требованиями Гарвардской архитектуры

находящаяся на кристалле физическая память МК делится на посто-

янную (для записи программ) и оперативную (для хранения изменя-

ющихся данных

3.2. Микроконтроллеры семейства МК-48

Отечественная промышленность выпускает семейство сравни-

тельно простых микроконтроллеров семейства МК-48 (рис.3.1)..

Рис. 3.1. Структурная схема ОМК семейства МК-48 .

Схема

условных

переходов

Арифметико

логическое

устройство

ОЗУ

Схема пре-

рывания Таймер /

счетчик

Устройство

управления

и

синхронизации

BQ1

BQ2

SR

INT

EMA

SS

PR

PME

WR

RD

ALE

T0

T1

8 8 8

Порт P0 Порт P1 Порт P2 Дешифратор

и регистр ко-

манд

ППЗУ

Дешифратор

адреса

Регистр со-

стояния про-

граммы Счетчик

команд

8 8 8 8 8 8

4 2

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 39: 466.основы микропроцессорной техники  учебное пособие

39

Все однокристальные микроконтроллеры этого семейства

КР1816ВЕ35; КР1816ВЕ48, КР1816ВЕ39, КР1816ВЕ49, КР1830ВЕ35

и КР1830ВЕ48 имеют единую систему команд [1], но различаются

объемом и типом внутренней памяти программ и данных, макси-

мальными частотами следования тактовых импульсов и током по-

требления. В частности, ОМК КР1816ВЕ35 не содержит внутренней

памяти программ, объем его внутренней памяти данных составляет

64 байта, максимальная тактовая частота 6 МГц, а потребляемый ток

- 135 мА. Однокристальные микроконтроллеры семейства ОМК-48

содержат на одном кристалле практически все узлы традиционных

ЭВМ: процессор, ОЗУ, ПЗУ и порты ввода/вывода. Применяются они

обычно для управления конкретными устройствами по заданному ал-

горитму, определяемому заложенной программой, выполняя, таким

образом, функцию программируемого контроллера. На одном кри-

сталле ОМК выполнены арифметико-логическое устройство, ОЗУ,

ППЗУ, таймер/счетчик, схемы прерываний и условных переходов,

устройство управления и синхронизации, 3 порта и несколько

дешифраторов и специальных регистров.

Основу процессора ОМК составляет 8-разрядное арифметико-

логическое устройство, позволяющее выполнять арифметические,

логические операции и операции сдвига над данными, представлен-

ными в двоичном коде, а также обрабатывать данные, представлен-

ные в двоично-десятичном коде.

В состав АЛУ входят собственно арифметико-логическое

устройство, аккумулятор, регистр аккумулятора, регистр времен-

ного хранения и схема десятичной коррекции аккумулятора.) пред

Аккумулятор (А) представляет собой 8-разрядный ре-

гистр, предназначенный для записи и хранения данных, подаваемых с

внутренней шины. Результат выполнения операции АЛУ всегда зано-

сится через шину в аккумулятор. Выход аккумулятора связан с вхо-

дом регистра аккумулятора (РА) – 8-разрядного регистра, предназна-

ченного для записи и хранения одного из операндов, над которым

производятся операции в АЛУ. Сигналы с выхода РА непосредствен-

но подаются на вход первого операнда АЛУ.

Регистр временного хранения (РВ) представляет собой 8- раз-

рядный регистр и предназначен для записи и хранения второго опе-

ранда при выполнении операций в АЛУ. Вход РВ связан шиной дан-

ных с выходом ПЗУ констант. Сигналы с выхода РВ непосредственно

подаются на вход второго операнда АЛУ.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 40: 466.основы микропроцессорной техники  учебное пособие

40

Схема десятичной коррекции (СДК) предназначена для обра-

ботки данных, представленных в двоично-десятичном коде. В состав

схемы СДК входят узлы анализа содержимого полубайтов (4

старших или младших разряда аккумулятора), триггер основного

и дополнительного переносов и схема формирования корректиру-

ющей поправки.

В состав процессора входят также счетчик команд, дешифратор

и регистр команд, регистр состояния программы и схема условных

переходов.

Счетчик команд (СК) предназначен для формирования текуще-

го адреса местонахождения команды в памяти программ. Счетчик

команд содержит 12 разрядов. Содержимое СК увеличивается после

выбора каждого байта команды на единицу. Содержимое СК может

изменяться скачкообразно при выполнении команд передачи управ-

ления и при реализации прерываний.

Дешифратор команд представляет собой программируемую

логическую матрицу, на вход которой поступает код команды, пред-

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

дешифратора команд снимаются управляющие сигналы, осуществ-

ляющие выполнение этой команды.

Регистр состояния программы PSW предназначен для хране-

ния данных о состоянии ОМК. Регистр PSW содержит информацию

об указателе стека, банке рабочих регистров, разрядах переноса (ука-

зывающем на переполнение аккумулятора) и дополнительного пере-

носа (использующемся при десятичной коррекции аккумулятора), а

также флаге пользователя (использующегося для команды условного

перехода). Регистр PSW может программно проверяться, модифици-

роваться весь и поразрядно.

Схема условных переходов предназначена для формированием

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

условных переходов.

Условия перехода могут определяться:

содержимым аккумулятора (проверка на “0” или не “0”);

содержимым отдельного бита аккумулятора (проверка на“1”);

состоянием флага переноса (проверка на “1” или “0”);

состоянием флагов пользователя (проверка на “1”);

триггером таймера/счетчика (проверка на “1”);

сигналами внешних прерываний (проверка на “0”);

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 41: 466.основы микропроцессорной техники  учебное пособие

41

Память программ предназначена для хранения и считывания

команд, которые поступают в процессор и управляют процессом об-

работки информации. Память программ может быть выполнена как

на кристалле ОМК, так и на внешних микросхемах ОЗУ. Общий объ-

ем адресуемой памяти программ ОМК семейства МК-48 составляет

4 кбайт.

Память данных предназначена для записи, хранения и считы-

вания данных, полученных в процессе обработки информации. Внут-

ренняя память данных содержит два банка по восемь регистров обще-

го назначения, 8-уровневый стек и ячейки ОЗУ данных, доступ к ко-

торым осуществляется с помощью косвенной адресации. Объем

внутренней памяти данных составляет 64 байта. В ОМК предусмот-

рена возможность расширения памяти данных при подключении

внешних микросхем ОЗУ. Для записи и выборки данных из ОЗУ ис-

пользуется два вида адресации: прямая и косвенная (регистровая).

При использовании команд прямой адресации регистр является ис-

точником или приемником данных, а при использовании команд с

косвенной адресацией указанный регистр содержит адрес данных (в

качестве регистров косвенного адреса используются только R0 и R1).

Каналы ввода/вывода служат для организации обмена инфор-

мацией ОМК с внешними устройствами. В ОМК семейства МК48

имеется 27 линий ввода/вывода, 24 из которых объединены в три 8-

разрядных порта P0, P1, P2.

Порты Р1, Р2 в режиме вывода обладают возможностью фикса-

ции данных в так называемых триггерах-защелках. Эти данные ста-

тически присутствуют на выводах порта и могут быть изменены

только выдачей новых по команде OUTL. Каждая выдача сопровож-

дается занесением данных в защелку порта.

В состоянии ввода входная информация не изменяет состояния

защелок. При использовании портов Р1, Р2 в качестве входов необхо-

димо до подачи входной информации линии портов установить в со-

стояние высокого уровня, выдав на порт байт единиц. Возможна про-

извольная смешанная настройка линий портов Р1 и Р2, когда одни

линии порта работают на ввод, а другие на вывод. Для настройки ли-

нии на режим ввода необходимо в триггер - защелку этой линии за-

писать “1”. Вводимые данные должны присутствовать на линиях пор-

та до тех пор, пока не будут программно прочитаны.

Таймер/счетчик предназначен для подсчета внешних событий

и измерения временных интервалов без участия процессора ОМК.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 42: 466.основы микропроцессорной техники  учебное пособие

42

В состав таймера-счетчика входят: делитель частоты 1:32; сум-

мирующий счетчик; триггер флага переполнения.

Восьмиразрядный таймер/счетчик может быть программно

установлен в начальное состояние, а затем запущен или приостанов-

лен в режиме таймера или счетчика. Содержимое таймера-счетчика

может быть прочитано на любом этапе работы программы.

В режиме таймера производится инкрементирование содержи-

мого счетчика с частотой внутренней синхронизации, равной 1/32 ча-

стоты основных синхронизирующих импульсов машинного цикла.

Путем предварительной установки счетчика и фиксации переполне-

ния можно получать задержки до 256×32 периода сигнала машинного

цикла. Задержки большей длительности могут быть получены про-

граммным путем (подсчетом переполнений счетчика). В счетном ре-

жиме таймера/счетчика производится подсчет внешних импульсов,

поступающих на его вход. Момент перехода счетчика из состояния

максимального значения FFh в состояние 00h свидетельствует о его

переполнении. При этом вырабатывается внутренний запрос на аппа-

ратное прерывание, который обрабатывается в соответствии с алго-

ритмом управляющей программы.

Процессор ОМК имеет одноуровневую систему прерываний

по адресу/вектору, которая воспринимает запросы на прерывания от

внешнего источника или от внутреннего таймера-счетчика. Запрос

внешнего прерывания поступает на вывод INT ОМК. Запрос на пре-

рывание от таймера-счетчика инициируется при его переполнении.

Прерывания могут быть программно - избирательно разрешены

или запрещены. Внешнее прерывание обладает более высоким прио-

ритетом, т.е., если запросы на прерывание от внешнего источника и

от таймера/счетчика возникают одновременно, внешнее прерывание

обслуживается в первую очередь.

При поступлении запроса на прерывание процессор (после за-

вершения всех циклов текущей команды) передает управление по ад-

ресу 03 при внешнем прерывании либо по адресу 07 при прерывании

по переполнению таймера-счетчика. При этом, как и при выполнении

команды CALL (вызов подпрограммы), обеспечивается загрузка в

стек текущего значения 12-разрядного счетчика команд и четырех

старших разрядов слова состояния процессора. Обычно по адресам 03

и 07 находятся команды безусловного перехода на подпрограммы об-

работки прерываний.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 43: 466.основы микропроцессорной техники  учебное пособие

43

Поскольку в ОМК МК-48 реализована одноуровневая система

прерываний, обслуживание вновь поступающих прерываний откла-

дывается до конца обработки текущего прерывания. Обработка оче-

редного прерывания может начаться только после завершения второ-

го машинного цикла команды RETR (выход из подпрограммы). Под-

программа обработки любого прерывания не может быть прервана до

выполнения команды RETR.

Устройство управления предназначено для выработки сигна-

лов, обеспечивающих управление выполнением команд, и реализова-

но на кристалле ОМК, за исключением источника опорной частоты, в

качестве которого может быть использован кварцевый резонатор,

LC - цепь или внешний источник синхроимпульсов. Устройство

управления и синхронизации состоит из генератора, формирователей

тактовых сигналов и формирователей сигналов состояний и режимов

работы. Кварцевый резонатор или LC-цепочка присоединяются к вы-

водам BQ1 и BQ2. Общий сброс ОМК производится подачей на вход

SR импульса низкого уровня длительностью не менее 50 мс.

Система команд [9] включает 96 команд (прил. 3), из которых

68 однобайтные, а остальные двухбайтные. В двухбайтных командах

первый байт несет информацию о коде операции, второй байт пред-

ставляет собой непосредственные данные или младшие разряды ад-

реса следующей команды. Большинство команд (53) выполняются за

один машинный цикл, остальные за два машинных цикла.

Более совершенное семейство iMCS -51, совместимое с архи-

тектурой iMCS - 48, обладает более обширными адресными про-

странствами памяти программ и данных, усовершенствованными

средствами УВВ и поддержки реального времени.

3.3. Микроконтроллеры семейства MCS-51 фирмы Intel

и совместимые с ними

Несмотря на непрерывное развитие и появление все новых и

новых 16- и 32-разрядных микроконтроллеров и микропроцессоров,

наибольшая доля мирового микропроцессорного рынка и по сей день

остается за 8-разрядными устройствами. В настоящее время семей-

ство MCS-51 является несомненным чемпионом среди других се-

мейств 8-разрядных микроконтроллеров по числу разновидностей и

числу компаний, выпускающих его модификации. Оно получило

свое название от первого представителя этого семейства - микро-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 44: 466.основы микропроцессорной техники  учебное пособие

44

контроллера 8051, изготовленного в 1980 году на базе технологии

HMOS. Удачный набор периферийных устройств, возможность гиб-

кого выбора внешней или внутренней программной памяти и прием-

лемая цена обеспечили этому микроконтроллеру успех на рынке. С

точки зрения технологии микроконтроллер 8051 являлся для своего

времени очень сложным изделием - в кристалле было использовано

128 тыс. транзисторов, что в четыре раза превышало количество

транзисторов в 16-разрядном микропроцессоре 8086.

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

МСS-51 была достигнута благодаря открытой политике фирмы Intel,

родоначальницы архитектуры 8051, направленной на широкое рас-

пространение лицензий на ядро 8051 среди большого количества ве-

дущих полупроводниковых компаний мира.

В результате ее проведения в настоящее время существует бо-

лее 200 модификаций микроконтроллеров семейства МСS-51, вы-

пускаемых почти 20 компаниями. Эти модификации включают кри-

сталлы с широчайшим спектром периферии: от простых 20-

выводных устройств с одним таймером и 1 Кбайт программной па-

мяти до сложнейших 100-выводных кристаллов с 10-разрядными

АЦП, массивами таймеров/счетчиков, аппаратными 16-разрядными

умножителями и 64 кбайт программной памяти на кристалле. Каж-

дый год появляются все новые варианты представителей этого се-

мейства.

Основными направлениями совершенствования ОМК являются:

увеличение быстродействия (повышение тактовой частоты и перера-

ботка архитектуры), снижение напряжения питания и потребления,

увеличение объема ОЗУ и флэш-памяти на кристалле с возможно-

стью внутрисхемного программирования, введение в состав перифе-

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

приводами, CAN и USB интерфейсов и т.п. Все микроконтроллеры

семейства MCS-51 имеют общую систему команд. Наличие допол-

нительного оборудования влияет только на число регистров специ-

ального назначения.

Микроконтроллер семейства 8051 имеет следующие аппаратные

особенности [25]:

внутреннее ОЗУ объемом 256 байт;

четыре двунаправленных побитно настраиваемых 8-разрядных

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

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

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 45: 466.основы микропроцессорной техники  учебное пособие

45

встроенный тактовый генератор;

адресация 64 кбайт памяти программ и 64 кбайт памяти дан-

ных;

две линии запросов на прерывание от внешних устройств;

интерфейс для последовательного обмена информацией с дру-

гими микроконтроллерами или персональными компьютерами.

Функциональная схема микроконтроллера семейства 8051

представлена на рис. 3.2.

Блок синхр.

и упр.

Регистры SFR, счетчики/таймеры

PCA, РСА 1 посл.порт,SEP

,

Port 1 Port 3

Port 0 Port 2

Защ. Защ. ПЗУ ОЗУ

Pr Адр

Vcc

Pr.Адр.

Буфер.

РС+1

РС

DPTR

Защелка Защелка Защелка

Тактовый генератор

АЛУ

TMP1

SP

TMP2 Pr. B.

АСС

PSW

P3.0-P3.7 P1.0-P1.7

_____________________

PSEN

ALE

EA

RES

Рис. 3.2. Функциональная схема микроконтроллера семейства 8051

Микроконтроллер имеет следующие выводы:

PSEN — разрешение внешней памяти программ; выдается

только при обращении к внешнему ПЗУ;

ALE — строб адреса внешней памяти;

ЕА — отключение внутренней программной памяти; уро-

вень 0 на этом входе заставляет микроконтроллер выполнять

программу только внешнего ПЗУ; игнорируя внутреннее(если по-

следнее имеется);

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 46: 466.основы микропроцессорной техники  учебное пособие

46

P1 — 8-битный квазидвунаправпенный порт ввода/вывода:

каждый разряд порта может быть запрограммирован как на ввод, так

и на вывод информации независимо от состояния других разрядов;

P2 — 8- битный квазидвунаправленный порт, аналогичный Р1;

кроме того, выводы этого порта используются для выдачи адресной

информации при обращении к внешней памяти программ или данных

(если используется 16-битовая адресация последней);

РЗ — 8-битный квазидвунаправленный порт, аналогичный Р1;

кроме того, выводы этого порта могут выполнять ряд альтернативных

функций, которые используются при работе таймеров, порта после-

довательного ввода/вывода, контроллера прерываний, и внешней па-

мяти программ и данных;

P0 — 8-битный двунаправленный порт ввода/вывода инфор-

мации: при работе с внешними ОЗУ и ПЗУ по линиям порта в режиме

временного мультиплексирования выдается адрес внешней памяти,

после чего осуществляется передача или прием данных.

На базе микроконтроллеров семейства IMCS -51 фирмы Intel

(основные характеристики см. прил. 2) разработаны отечественные

однокристальные микроконтроллеры семейства МК51. Они выполне-

ны по высококачественной n-МОП - технологии (серия 1816) и

КМОП-технологии (серия 1830).

Использование ОМК семейства МК51 по сравнению с ОМК семейства

МК48 обеспечивает увеличение объема памяти команд и памяти данных. Но-

вые возможности ввода/вывода и периферийных устройств расширяют диапа-

зон применения и снижают общие затраты. В зависимости от условий исполь-

зования быстродействие системы увеличивается минимум в два с половиной

раза и максимум в десять раз.

Семейство МК51 включает пять модификаций ОМК (имеющих идентич-

ные основные характеристики), основное различие между которыми состоит в

реализации памяти программ и мощности потребления. ОМК КР1816ВЕ51 и

КР1830ВЕ51 содержат масочно-программируемое в процессе изготовления

кристалла ПЗУ памяти программ емкостью 4096 байт.Они рассчитаны на при-

менение в массовой продукции. При использовании внешних микросхем памя-

ти общий объем памяти программ может быть расширен до 64 кбайт.

ОМК КМ1816ВЕ751 содержит ППЗУ емкостью 4096 байт со стиранием

ультрафиолетовым излучением. Он и удобен при разработке системы и отладке

программ, а также при производстве небольшими партиями или создании си-

стем, требующих в процессе эксплуатации периодической подстройки. При ис-

пользовании внешних микросхем памяти общий объем памяти программ может

быть расширен до 64 кбайт.

ОМК КР1816ВЕ31 и КР1830ВЕ31 не содержат встроенной памяти про-

грамм, однако могут использовать до 64 кбайт внешней постоянной или пере-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 47: 466.основы микропроцессорной техники  учебное пособие

47

программируемой памяти программ. Они эффективно применяются в системах,

требующих существенно большего по объему (чем 4 кбайт на кристалле) ПЗУ

памяти программ.

Каждая из перечисленных микросхем является соответственно аналогом

БИС 8051, 80С51, 8751, 8031, 80С31 семейства MCS-51 фирмы Intel (США).

Сравнительные данные микросхем приведены в табл.1

Таблица 1

Микросхема Аналог

Объем

внутренней

памяти

программ,

кбайт

Тип

памяти

программ

Объем

внутренней

памяти

данных,

байт

Максимальная

частота следования

тактовых сигналов,

МГц

Ток

потреб-

треб-

ления,

мА

КР1816ВЕ31

КР1816ВЕ51

КР1816ВЕ751

КР1830ВЕ31

КР1830ВЕ51

8031АН

8051АН

8751R

80С31ВН

80С51ВН

-

4

4

-

4

Внешняя

ПЗУ

ППзу

Внешняя

ПЗУ

128

128

128

128

128

12,0

12,0

12,0

12,0

12,0

150,0

150,0

220,0

18,0

18,07

ОМК при функционировании обеспечивает:

- минимальное время выполнения команд сложения - 1 мкс;

- аппаратное умножение и деление с минимальным временем выполнения

команд умножения/деления - 4 мкс.

В ОМК предусмотрена возможность задания частоты внутреннего гене-

ратора с помощью кварца, LC-цепочки или внешнего генератора.

Архитектура микроконтроллеров семейства МК51 несмотря на то, что

она основана на архитектуре семейства МК48, все же не является полностью

совместимой с ней. В новом семействе имеется ряд новых режимов адресации,

дополнительные инструкции, расширенное адресное пространство и ряд других

аппаратных отличий. Расширенная система команд (прил. 4) обеспечивает по-

байтовую и побитовую адресацию, двоичную и двоично-десятичную арифме-

тику, индикацию переполнения и определения четности/нечетности, возмож-

ность реализации логического процессора.

Важнейшей и отличительной чертой архитектуры микроконтроллеров

семейства МК51 является то, что АЛУ имеет возможность манипулировать од-

норазрядными данными наряду с выполнением операций над 8-разрядными ти-

пами данных. Отдельные программно-доступные биты могут устанавливаться,

сбрасываться или заменяться их дополнением, пересылаться, проверяться и ис-

пользоваться в логических вычислениях, тогда как поддержка простых типов

данных (при существующей тенденции к увеличению длины слова) с первого

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 48: 466.основы микропроцессорной техники  учебное пособие

48

взгляда кажется шагом назад. Это качество делает микроконтроллеры семей-

ства МК51 особенно удобными для применений в промышленных устройствах.

Дальнейшее развитие микроконтроллеров семейства МCS-51 при-

вело к созданию ОМК 80С52, 80С54, 80С58 с масочно-

программируемым ПЗУ и ОМК версии 87С52, 87С54 и 87С58 с

ПЗУ, стираемым ультрафиолетовым облучением, а также ОМК

80С32, не имеющим внутреннего ПЗУ. Между собой они различают-

ся также корпусами, рабочими интервалами температур, предельно

допустимой тактовой частотой и рядом других параметров, отража-

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

ОМК..

В отличие от ОМК MCS-51 последнее семейство (условно

называемое семейством 8052) имеет:

встроенное ПЗУ объемом 8 (80С52), 16 (80С54) и 32 кбайт

(80С58);

встроенное ОЗУ объемом 256 байт;

дополнительные специальные функциональные регистры;

таймер/счетчик 2 (далее для краткости Т/С2), способный ра-

ботать в режимах защелки, таймера/счетчика, допускающего счет как

на увеличение, так и на уменьшение, и генератора скорости передачи

в бодах;

программируемый последовательный интерфейс с детекти-

рованием ошибок передачи и автоматическим распознаванием

адреса;

шесть источников прерываний;

расширенный режим снижения потребляемой мощности;

флаг отключения питания; режим ONCE.

В ОМК 8052 используют стандартный набор команд семейства

8051, их выводы взаимно однозначно соответствуют выводам этих

ОМК. Отличие заключается лишь в том, что, помимо ввода/вывода

информации, выводы Р1.0 и Р1.1 ОМК 8052 могут выполнять аль-

тернативные функции: первый из них играет роль внешнего входа

для Т/С2, а второй управляет перезагрузкой/защелкиванием инфор-

мации в регистры Т/С2.

В качестве одной из перспективных моделей MCS-51 можно

считать микросхему 8XC51FA. В ее состав входят:

четыре 8-битных параллельных порта;

модуль РСА:

последовательный порт;

три 16-битных счетчика/таймера.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 49: 466.основы микропроцессорной техники  учебное пособие

49

Микроконтроллеры с внутренней памятью программ позволяют

защищать свои программные коды от копирования. Для этого ис-

пользуется схема блокировки внутренней памяти программ, которая

состоит из специальных битов (Lock bits) и кодирующего массива

(Encryption Array). Запрограммировав один или несколько таких би-

тов, можно полностью или частично заблокировать эту память. При

полной блокировке будет невозможно чтение с внешней шины внут-

ренней памяти программ, дальнейшее программирование кристалла,

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

блокировке возможно запретить или разрешить перечисленные дей-

ствия по отдельности. Кодирующий массив используется для пораз-

рядного выполнения логической операции XNOR над байтами из

внутренней памяти программ и байтами из этого массива при вери-

фикации, если она разрешена.

Основным отличием моделей 8ХС51РА от отечественных ана-

логов является наличие модуля РСА (Programmable Counter Array) .

Это устройство состоит из 16-разрядного счетчика-таймера и

пяти модулей сравнения-захвата. В качестве входных импульсов для

счетчика/таймера могут служить сигналы:

частота резонатора /12;

переполнение от Timer 0;

частота резонатора /4;

внешний сигнал на контакте Р1.2.

Каждый из пяти модулей сравнения - захвата может работать в

следующих режимах :

захват положительного или отрицательного фронта;

программный таймер;

скоростной вывод;

генератор прямоугольных импульсов с заданной скважностью.

Четвертый модуль имеет также режим Watchdog Timer .

РСА рекомендуется использовать для измерения таких пара-

метров, как ширина импульса, разность фаз, скважность и частота, а

также для формирования на внешних выводах микроконтроллера

прямоугольных сигналов. В принципе, для этих целей можно ис-

пользовать счетчики/таймеры, которые имеются на кристалле. Одна-

ко при использовании РСА повышается точность за счет того, что

счетчик-таймер, входящий в состав РСА, может изменять свое зна-

чение трижды за машинный цикл.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 50: 466.основы микропроцессорной техники  учебное пособие

50

Отметим, что обычные счетчики-таймеры могут изменять свое

значение лишь один раз за машинный цикл. Кроме того, РСА требу-

ет значительно меньшего вмешательства процессора.

Большой интерес для разработчиков электронной аппаратуры

могут представлять микроконтроллеры 8XC51GB. На кристалле это-

го устройства имеется следующее оборудование:

шесть 8-битных параллельных портов:

два модуля РСА ;

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

детектор падения частоты;

два последовательных порта;

отдельный Watchdog Timer:

8-канальный, 8-битный АЦП поразрядного приближения

Рассмотренные 8-разрядные ОМК позволяют реализовать срав-

нительно простые алгоритмы обработки данных. Для более сложных

задач управления различными устройствами применяют 16—

разрядные ОМК. .

3.4. Микроконтроллеры INTEL MCS-96

В семейство MCS-96 фирмы Intel входит более 30 разновидностей мик-

роконтроллеров. Это 16-разрядные, быстродействующие ИС высокой степени

интеграции, ориентированные на решение задач управления процессами в ре-

альном масштабе времени. Типичные области применения для этих микро-

контроллеров - управление двигателями, модемы, тормозные системы автомо-

билей, контроллеры жестких дисков, медицинское оборудование.

История микроконтроллеров MCS-96 насчитывает более 15 лет. За это

время специалисты фирмы Intel увеличили адресное пространство с 64 кбайт

до 6 Мбайт, повысили тактовую частоту с 10 до 50 МГц, улучшили быстро-

действие в 16 раз и добились понижения цены на базовый кристалл примерно

в 4 раза. По сравнению с 8-разрядными однокристальными микроконтролле-

рами данное микроконтроллерное семейство позволяет существенно расши-

рить область применения встраиваемых микроконтроллеров в первую очередь

за счет более высокой скорости и точности вычислений, а также использова-

ния расположенных на кристалле новых периферийных устройств, обеспечи-

вающих более высокую скорость обработки сигналов в управляющей системе

и более высокую надежность функционирования системы.

Микроконтроллеры 80C196 фактически стали индустриальным стандар-

том для 16-разрядных встроенных систем управления, обеспечив сочетание

высоких технических показателей и экономической эффективности. Так, бла-

годаря именно этим микроконтроллерам, установленным в системе управле-

ния зажиганием, специалистам концерна Ford удалось существенно снизить

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 51: 466.основы микропроцессорной техники  учебное пособие

51

потребление топлива, уменьшить выбросы вредных веществ и одновременно

повысить скоростные характеристики своих машин.

Микроконтроллеры семейства MCS-96 являются микропроцессорными

устройствами синхронного типа. Выполнение всех действий в микроконтрол-

лере привязано во времени к тактовым сигналам, вырабатываемым внутрен-

ним генератором тактовых импульсов. Частота следования тактовых импуль-

сов стабилизируется с помощью внешнего кварцевого резонатора. Высшее

значение тактовой частоты F max у микроконтроллеров разных типов данного

семейства может быть 10, 12, 16 и 20 МГц.

В отличие от микроконтроллеров других семейств АЛУ микроконтрол-

лера семейства MCS-96 не имеет регистра-аккумулятора. В качестве регистра-

аккумулятора может использоваться все регистровое ОЗУ (РОЗУ). У микро-

контроллеров разных типов может содержаться 232, 360, 488 или 1000 вось-

миразрядных регистров. Регистры РОЗУ используются для хранения только

данных. На частоте 16 МГц АЛУ выполняет 2 млн элементарных операций в се-

кунду со знаковыми или беззнаковыми данными длиной 1 или 2 байт. Для

этих чисел имеются также и операции умножения и деления (быстродействие

580 тыс. умножений в секунду и 330 тыс. делений в секунду). При использова-

нии ОЗУ для размещения команд программы открывается возможность моди-

фицировать команды в процессе выполнения программы.

Процессор обращается к внутренней и внешней памяти через контрол-

лер памяти (КП,). Этот контроллер позволяет при одном обращении к памяти

считывать или записывать как 8-разрядные, так и 16-разрядные коды.

Максимальный суммарный объем внешней и внутренний памяти (без

РОЗУ) у микроконтроллеров большинства типов составляет 64 кбайт. У мик-

роконтроллеров подсемейства NT суммарный объем памяти может быть дове-

ден до 1 Мбайт. Микроконтроллеры, в обозначении типа которых на втором

месте стоит цифра 0 (Х=0), не имеют внутреннего ПЗУ. Его функции реализу-

ются с помощью микросхем ПЗУ, входящих в состав внешней памяти.

Периферийные устройства микроконтроллера семейства MCS-96 по

выполняемым функциям могут быть отнесены к одной из шести групп:

1. Устройства ввода и вывода данных, представленных многоразрядными

двоичными кодами.

2. Устройства ввода и вывода отдельных дискретных сигналов (включе-

но-выключено).

3. Устройства ввода и вывода аналоговых сигналов.

4. Устройства обмена данными с другими микроконтроллерами и цен-

тральным процессором системы.

5. Устройства приема и обслуживания запросов прерывания.

6. Устройства контроля правильности функционирования микроконтрол-

лера.

Для управления работой периферийных устройств и определения их со-

стояния используются регистры специальных функций.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 52: 466.основы микропроцессорной техники  учебное пособие

52

Целесообразно сравнить основные функциональные характери-

стики ОМК MCS-51 и MCS-96. К числу основных функциональных

характеристик микроконтроллера относятся:

емкость расположенных на кристалле регистрового оператив-

ного запоминающего устройства, постоянного запоминающего

устройства , оперативного запоминающего устройства ;

максимальная тактовая частота (F max);

число команд в системе команд (N ).

По значению тактовой частоты может быть определено быст-

родействие микроконтроллера. При этом следует иметь в виду, что

короткие операции в микроконтроллере семейства MCS-96 по свое-

му содержанию существенно отличаются от коротких операций в

микроконтроллере с регистром-аккумулятором. Так, одной короткой

операции "сложение" в микроконтроллере семейства MCS-96 при

представлении данных в формате "байт" соответствует последова-

тельность из трех коротких операции в микроконтроллере семейства

MCS-51, а при представлении данных в формате "слово" - соответ-

ствует последовательность из шести коротких операций.

Кроме того, в систему команд микроконтроллеров семейства

MCS-96 входят команды умножения и деления чисел в формате

"слово" В микроконтроллерах других семейств такие операции вы-

полняются по подпрограммам, что резко увеличивает время их вы-

полнения.

Отмеченные особенности существенно сокращают время вы-

числений в микроконтроллерах семейства MCS-96 по сравнению с

микроконтроллерами других семейств.

В систему команд микроконтроллеров, изготовленных по

КМДП - технологии, входят различные дополнительные команды, в

числе которых имеется команда перевода микроконтроллера в энер-

госберегающие режимы - режим холостого хода и режим понижен-

ного энергопотребления. В режиме холостого хода программа не

выполняется, но функционируют все периферийные устройства, при

этом потребление энергии от источника питания уменьшается на

60 %. В режиме пониженного энергопотребления прекращаются все

процессы в микроконтроллере, но сохраняются данные в РОЗУ и

ОЗУ. При этом ток потребления составляет единицы микроампер. С

появлением на рынке цифровых интегральных схем микроконтрол-

леров семейства MCS-96 фирмы Intel перед разработчиками систем,

содержащих встроенные микроконтроллеры, открываются новые

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 53: 466.основы микропроцессорной техники  учебное пособие

53

большие возможности по созданию малогабаритных, экономичных и

надежных систем, приборов и устройств различного назначения.

Все 232 внутренних регистра ОМК 80C196 имеют статус "ак-

кумуляторов" - к ним можно непосредственно применять все необ-

ходимые арифметические и логические операции.

У ОМК 8051 для достижения тех же результатов зачастую

необходимо выполнять дополнительные пересылки в аккумулятор

и из него.

У ОМК 80C196 можно использовать 16-разрядную внешнюю

шину. Кроме того, цикл шины ОМК 80C196 в 3-4 раза короче, чем у

ОМК 8051. В результате этого ОМК 80C196 в 6-8 раз быстрее рабо-

тает с внешней памятью.

В задачах, требующих 16- и 32-разрядных вычислений, ОМК

80C196 примерно на порядок быстрее, поскольку имеет полноцен-

ный набор 16-разрядных арифметических инструкций.

Одним из самых эффективных способов сокращения времени

разработки программ для микроконтроллеров является применение

языка Си. Язык Си базируется на широком использовании стека и

указателей. Однако для ОМК 8051 использование Си затруднено и

ведет к большим накладным расходам, так как ОМК 8051 имеет не-

большой стек и Си-компиляторы для него генерируют дополнитель-

ный код, эмулирующий большой стек во внешней памяти данных.

Вдобавок ОМК 8051 имеет всего один 16-разрядный указатель -

DPTR, и компиляторам также приходится генерировать дополни-

тельный код, чтобы компенсировать этот недостаток. Все это приво-

дит к замедлению программ и увеличению их размера. У ОМК

80C196 таких проблем нет - стек имеет размер до 64 кбайт, а в каче-

стве указателя можно использовать любое из 116 слов встроенной

регистровой памяти.

3.5. Микроконтроллеры фирмы Motorola

Известно несколько серий ОМК фирмы Motorola. Наиболее популярны

8-разрядные ОМК серий НС05 и НС08, а также 16-разрядные ОМК11. Рас-

смотрим, например, 8-разрядный микроконтроллер MC68HC11E9, изготовлен-

ный по КМОП - технологии с высокоплотной структурой. Полностью статиче-

ская конструкция позволяет ему работать на очень низких частотах, тем самым

уменьшая потребление энергии (хотя номинальная частота шины 2 МГц). Он

имеет 12 Кбайт ПЗУ; 512 байт ППЗУ; 512 байт ОЗУ; расширенный 16-

разрядный таймер; 8-разрядный счетчик внешних импульсов; последова-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 54: 466.основы микропроцессорной техники  учебное пособие

54

тельный интерфейс связи расширенного формата NRZ; последовательный пе-

риферийный интерфейс; 8-канальный 8-разрядный АЦП; прерывания реального

времени; систему слежения за правильностью работы ОМК; 52-выводной квад-

ратный пластиковый корпус. Система команд ОМК имеет дробное и целочис-

ленное 16x16 деление; операции над битами данных; режимы малого потребле-

ния энергии WAIT и STOP.

Технология КМОП-структур с высокой степенью компоновки, использо-

ванная для создания MC68HC11E9, сочетает малые размеры, высокую такто-

вую частоту по сравнению с КМОП - технологией, низкое потребление энергии

и высокую устойчивостью по отношению к различным помехам. Внутренняя

память включает 12 кбайт ОЗУ, 512 байт электрически стираемого перепро-

граммируемого ПЗУ (ЭСППЗУ) и 512 байт статического ОЗУ.

Центральный процессор микроконтроллера MC68HC11E9 является рас-

ширением МП MC6801. Дополнительно к системе команд микропроцессоров

MC6800 и MC6801 ОМК имеет многостраничную карту команд, содержащую в

общей сложности 91 новую команду. Основные дополнительные команды: ко-

манды, использующие индексный регистр Y, команды деление 16-разрядных

чисел, команды STOP и WAIT, а также команды работы с битами.

Основные периферийные функции обеспечиваются встроенными схема-

ми микроконтроллера. В их числе 8-канальный 8-разрядный АЦП; асинхрон-

ный последовательный интерфейс связи; синхронный последовательный пери-

ферийный интерфейс; основной 16-разрядный таймер с тремя входными и пя-

тью выходными линиями, поддерживающий прерывания реального времени; 8-

разрядный счетчик внешних импульсов для подсчета внешних импульсов или

измерения периодов внешних сигналов. Кроме этого, в состав микроконтрол-

лера входит схема автоматического слежения, предназначенная для защиты си-

стемы от ошибок. Эта схема генерирует системный сброс в случае остановки

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

Схема определения неверного кода операции вызывает немаскируемое

прерывание, если в процессе выполнения программы встречается неправиль-

ный код команды. Для уменьшения потребления энергии доступно два про-

граммно-устанавливаемых режима работы - WAIT и STOP. Дуплексный асин-

хронный последовательный интерфейс связи SCI работает со стандартным

форматом NRZ (один старт-бит, 8 или 9 бит информации, один стоп-бит) и с

различными скоростями передачи информации. Передатчик и приемник SCI

функционально независимы, но используют одинаковый формат и скорость пе-

редачи. Последовательный интерфейс связи SPI - это синхронный интерфейс,

который позволяет нескольким микроконтроллерам с SPI либо периферийным

устройствам SPI-типа взаимодействовать между собой. Стандарт SPI требует

отдельных линий связи как для данных, так и для синхронизации, так как в со-

ответствии с форматом SPI такты синхронизации не включаются в поток дан-

ных. Система SPI MC68HC11E9 может быть настроена для работы в режиме

ведущего и в режиме ведомого устройства.

Микроконтроллер MC68HC11E9 имеет 40 линий ввода/вывода объеди-

ненных в пять 8-разрядных портов. Все эти линии могут выполнять множество

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 55: 466.основы микропроцессорной техники  учебное пособие

55

функций, зависящих от режима работы и данных, содержащихся в регистрах

управления. Порты C и D используются как порты общего назначения, и

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

редачи данных. Порты A, B и E, за исключением выводов 3 и 7 порта A, имеют

фиксированное направление пересылки данных и, следовательно, не имеют ре-

гистров направления передачи данных. Порты B и C, выводы STRA и STRB,

кроме режима общего назначения, используются для параллельного обмена по

сигналам стробирования. Всего существует четыре режима работы микро-

контроллера MC68HC11E9: однокристальный, расширенный, а также специ-

альные режимы загрузки и теста.

В однокристальном режиме микроконтроллер работает без использо-

вания внешних шин адреса и данных. Порты A и B и выводы STRA и

STRB функционируют как вводы/выводы общего назначения и сигналы квити-

рования.

В расширенном режиме работы микроконтроллер MC68HC11E9 спосо-

бен адресовать пространство объемом в 64 Кбайта. Все это адресное простран-

ство включает те же участки памяти, что и в однокристальном режиме, плюс

внешние память и периферию. Адресация производится с помощью портов B и

C, а также управляющих сигналов AS и R/W/.

Специальный режим загрузки позволяет произвести загрузку програм-

мы во встроенное ОЗУ по последовательному асинхронному интерфейсу и за-

пустить программу на выполнение. Специальный режим теста - это специальный режим работы, предназна-

ченный для производственного тестирования микроконтроллера при изготов-

лении. Этот режим очень похож на расширенный режим работы. Наряду с рассмотренными ОМК в последнее время стали применяться

более быстродействующие, за которыми закрепилось название PIC-

контроллеры [5].

3.6. PIC– контроллеры

Архитектура микроконтроллеров PICmicro характеризуется сле-

дующими особенностями: RISC-архитектурой, малым числом ко-

манд, Гарвардской архитектурой ядра, конвейерной обработкой ко-

манд, файловой структурой данных.

В микроконтроллерах с Гарвардской архитектурой ядра выборка

команды происходит за один цикл (все команды 14-разрядные). При

обращении к памяти программ можно выполнить запись или чтение

данных, так как память данных подключена к ядру микроконтроллера

по отдельной шине. Раздельные шины доступа к памяти программ и к

памяти данных позволяют исполнять текущую команду и произво-

дить выборку следующей команды, организуя конвейерную обработ-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 56: 466.основы микропроцессорной техники  учебное пособие

56

ку команд. Поскольку команды симметричны (ортогональны), требу-

ется меньшее их число для решения всех необходимых задач и появ-

ляется возможность выполнить любую операцию с любым регистром

памяти данных прямой или косвенной адресацией.

Ведущий производитель микроконтроллеров данного типа

Microchip Technology Inc. обеспечивает большую номенклатуру изде-

лий, предоставляя пользователям сравнительно простые и достаточно

сложные PIC-контроллеры. Наиболее популярны микроконтроллеры

PIC18F в корпусе TQFP с 64 и 80 выводами и недорогой флеш - памя-

тью программ - 32 Кбайта.

Микроконтроллеры PIC18F6520, PIC18F8520 идеальны для при-

ложений, в которых необходимо большое число портов ввода/вывода

и значительный объем памяти программ. Эти микроконтроллеры со-

держат таймеры, богатый набор периферийных модулей и имеют

возможность самопрограммирования. Флэш-память микроконтрол-

леров PIC18F6520, PIC18F8520 выполнена по PEEC - технологии,

имеющей наилучшие характеристики выносливости циклов сти-

рание/запись в своем классе и минимальное время записи.

Микроконтроллеры PIC18F6520 и PIC18F8520 содержат по

32 Кбайта флэш-памяти программ, 2 Кбайта ОЗУ и 1024 байта

EEPROM памяти данных. Они имеют программируемый сброс по

снижению напряжения питания PBOR; программируемый детектор

пониженного напряжения PLVD; вторичный генератор тактового

сигнала 32 кГц и умножитель 4xPLL; последовательные порты SPI и

I2C; два адресуемых порта USART с поддержкой интерфейсов RS485

и RS232. Производительность ядра до 10 MIPS при тактовой частоте

10 МГц. В состав периферии входит до 16 каналов 10-разрядного

АЦП; 5 модулей CCP; два 8-разрядных таймера; три 16-разрядных

таймера; сторожевой таймер WDT; два аналоговых компаратора; ве-

домый параллельный порт PSP. Ниже в качестве примера рассмати-

ваются два других семейства пик-контроллеров.

Семейство микроконтроллеров PIC12C508. Характеристики микроконтроллеров данного семейства приведены в табл. 2.

Все они выполнены по КМОП-технологии и имеют:

высокопроизводительный RISC-процессор;

8-битную адресацию данных;

7 аппаратных регистров специального назначения;

двухуровневый аппаратный стек;

прямой, косвенный и относительный режимы адресации для данных и

инструкций;

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 57: 466.основы микропроцессорной техники  учебное пособие

57

внутренний RC-генератор с программной калибровкой;

программирование на плате через последовательный порт;

таймер сброса устройства DRT;

сторожевой таймер WDT с собственным встроенным RC-генератором

для повышения надежности работы;

программируемая защита кода;

1 млн циклов записи/стирания ППЗУ данных;

время хранения информации в ППЗУ > 40 лет;

режим экономии энергии SLEEP;

пробуждение из режима SLEEP по изменению состояния выводов;

внутренние резисторы к шине питания на линиях ввода/вывода;

внутренний резистор на линии MCLR;

полностью статическая архитектура;

широкий диапазон рабочих напряжений питания;

широкий температурный диапазон;

8-разрядный таймер/счетчик реального времени с 8-разрядным предва-

рительным делителем;

низкое потребление энергии.

Таблица 2

Микроконтроллеры PIC16F870, PIC16F871. Микроконтролле-

ры PIC16F870, PIC16F871 имеют тактовую частоту до 20 МГц; минимальную

длительность такта 200 нс ; флэш-память программ до 2 Кбайт; память данных

ОЗУ до 128 байт; ЭСППЗУ-память данных до 64 байт; механизм прерываний

(до 11 внутренних/внешних источников прерываний); 8-уровневый аппаратный

стек; прямой, косвенный и относительный режимы адресации; сброс при вклю-

чении питания POR; таймер включения PWRT и таймер запуска генератора

OST; сторожевой таймер WDT с собственным встроенным RC-генератором для

повышения надежности работы ;программируемую защиту кода ; режим эко-

номии энергии SLEEP; выбираемые режимы тактового генератора; про-

граммирование на плате через последовательный порт с использованием двух

Устройство ЭППЗУ

программ

ПЗУ

программ

ОЗУ

данных

ЭСППЗУ

данных

PIC12C508 512 x 12 - 25 -

PIC12C508A 512 x 12 - 25 -

PIC12C509 1024 x 12 - 41 -

PIC12C509A 1024 x 12 - 41 -

PIC12CE518 512 x 12 - 25 16

PIC12CE519 1024 x 12 - 41 16

PIC12CR509A - 1024x12 41 -

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 58: 466.основы микропроцессорной техники  учебное пособие

58

выводов; низкое потребление энергии: меньше 1,6 мА при 5В, 4 МГц и 20 мкА

(типичное значение) при 3 В, 32 кГц.

Особо следует отметить следующие устройства этого ОМК:

8-разрядный таймер/счетчик с 8-разрядным предварительным делите-

лем Timer 0;

16-разрядный таймер/счетчик с предварительным делителем, может ве-

сти счет во время спящего режима от внешнего генератора Timer 1;

Timer2: 8-разрядный таймер/счетчик с 8-разрядным регистром периода,

предварительным и выходным делителем;

два модуля захвата, сравнения, широтно-импульсный модулятор

(ШИМ); (захват 16 разрядов, с максимальным разрешением 12,5 нс,

сравнение 16 разрядов, максимальным разрешением 200 нс

и ШИМ с максимальным разрешением 10 разрядов);

10-битный многоканальный аналого-цифровой преобразователь;

универсальный синхронно-асинхронный приемопередатчик

(USART/SCI) с обнаружением 9-разрядного адреса;

встроенный генератор опорного напряжения;

параллельный 8-битный Slave-порт (PSP) с внешними сигналами

управления RD, WR и CS (только в 40- и 44-выводных корпусах);

программируемую схему сброса при падении напряжения питания

(BOR).

Не смотря на высокие технические характеристики PIC-контроллеров,

несколько лет тому назад были разработаны еще более быстродействующие

ОМК, которые получили название AVR-контроллеры.

3.7. AVR-контроллеры

Микроконтроллеры с AVR-архитектурой - самое молодое семей-

ство ОМК общего назначения, появившееся в начале 90-х годов про-

шлого века [7]. Аббревиатура AVR не содержит слов "advanced" и

"RISK", это всего лишь начальные буквы фамилий разработчиков.

AVR-контроллер имеет 8-разрядный быстрый Гарвардский RISС-

процессор, память программ, память данных, порты ввода/вывода и

различные интерфейсные схемы. Гарвардская архитектура AVR реа-

лизует полное логическое и физическое разделение не только адрес-

ных пространств, но и информационных шин для обращения к памя-

ти программ и памяти данных, причем способы адресации и доступа

к этим массивам памяти также различны. Подобное построение уже

ближе к структуре цифровых сигнальных процессоров и обеспечива-

ет существенное повышение производительности. Центральный про-

цессор работает одновременно с памятью программ и с памятью дан-

ных; разрядность шины памяти программ расширена до 16 бит. Сле-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 59: 466.основы микропроцессорной техники  учебное пособие

59

дующим шагом на пути увеличения быстродействия AVR является

использование технологии конвейеризации, вследствие чего цикл

"выборка - исполнение" команды заметно сокращен. Так, у микро-

контроллеров семейства MCS51 короткая команда выполняется за 12

тактов генератора (один машинный цикл), в течение которого про-

цессор последовательно считывает код операции и исполняет ее. В

PIC-контроллерах фирмы Microchip, где уже реализован конвейер,

короткая команда выполняется в течение восьми периодов тактовой

частоты (2 машинных цикла). За это время последовательно дешиф-

рируется и считывается код операции, исполняется команда, фикси-

руется результат и одновременно считывается код следующей опера-

ции (одноуровневый конвейер), поэтому в общем потоке команд одна

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

или за один машинный цикл. В микроконтроллерах AVR тоже ис-

пользуется одноуровневый конвейер при обращении к памяти про-

грамм и короткая команда в общем потоке выполняется, как и в PIC-

контроллерах, за один машинный цикл. Главное же отличие состоит в

том, что этот цикл у AVR составляет один период тактовой частоты.

Следующая отличительная черта архитектуры микроконтролле-

ров AVR–регистровый файл быстрого доступа, в котором 32 реги-

стра общего назначения длиной 1 байт непосредственно связаны с

арифметико-логическим устройством процессора. Другими словами,

в AVR существует 32 регистра-аккумулятора. Это обстоятельство

позволяет в сочетании с конвейерной обработкой выполнять одну

операцию в AЛУ за 1 машинный цикл.

Так, два операнда извлекаются из регистрового файла, выполняется ко-

манда и результат записывается обратно в регистровый файл в течение только

одного машинного цикла. Шесть из 32 регистров файла могут использоваться

как три 16-разрядных указателя адреса при косвенной адресации данных. Один

из этих указателей (Z Pointer) применяется также для доступа к данным, запи-

санным в памяти программ микроконтроллера. Использование трех 16-битных

указателей (X, Y и Z Pointers) существенно повышает скорость пересылки дан-

ных при работе прикладной программы.

Серийное производство микроконтроллеров AVR началось в

1996 году, а в настоящее время в серийном производстве у Atmel

находятся три семейства AVR - "tiny", "classic" и "mega" (прил. 1).

Многие российские специалисты и разработчики уже по достоинству

оценили высокую скорость работы и мощную систему команд AVR,

наличие двух типов энергонезависимой памяти на одном кристалле и

активно развивающуюся периферию. Области применения AVR мно-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 60: 466.основы микропроцессорной техники  учебное пособие

60

гогранны. Для семейства "tiny" - это интеллектуальные автомобиль-

ные датчики различного назначения, игрушки, игровые приставки,

материнские платы персональных компьютеров, контроллеры защи-

ты доступа в мобильных телефонах, зарядные устройства, детекторы

дыма и пламени, бытовая техника, разнообразные инфракрасные

пульты дистанционного управления. Для семейства "classic" - это мо-

демы различных типов, современные зарядные устройства, изделия

класса Smart Cards и устройства чтения для них, спутниковые навига-

ционные системы для определения местоположения автомобилей на

трассе, сложная бытовая техника, пульты дистанционного управле-

ния, сетевые карты, материнские платы компьютеров, сотовые теле-

фоны нового поколения а также различные и разнообразные про-

мышленные системы контроля и управления. Для семейства "mega"

AVR - это аналоговые NMT, ETACS, AMPS и цифровые GSM, CDMA

мобильные телефоны, принтеры и ключевые контроллеры для них,

контроллеры аппаратов факсимильной связи и ксероксов, контролле-

ры современных дисковых накопителей, CD-ROM и т.д.

Все микроконтроллеры AVR имеют флэш-память программ, ко-

торая может быть загружена с помощью обычного программатора и с

помощью SPI-интерфейса, в том числе непосредственно на целевой

плате. Число циклов перезаписи - не менее 1000. Последние версии

кристаллов семейства "mega" выпуска 2001-2002 года имеют возмож-

ность самопрограммирования. Это означает, что микроконтроллер

способен самостоятельно, без какого-либо внешнего программатора,

изменять содержимое ячеек памяти программ, т. е. новые микро-

контроллеры AVR могут менять алгоритмы своего функционирова-

ния и программы, заложенные в них, и далее работать уже по изме-

ненному алгоритму или новой программе. Так, можно написать и со-

хранить несколько рабочих версий программы для конкретного при-

ложения во внешней энергонезависимой памяти DataFlash,

SEEPROM и т.п., а затем по мере необходимости или по реакции на

какие-нибудь внешние или внутренние логические условия перегру-

зить рабочие программы в тот же самый микроконтроллер AVR,

не извлекая его из печатной платы. Для этого весь массив памяти

программ делится на две неравные по объему области: блок загруз-

чика (программа, управляющая перезаписью флеш-памяти про-

грамм) и блок для размещения рабочего программного кода, при-

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

вана в качестве дополнительного пространства для рабочего кода.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 61: 466.основы микропроцессорной техники  учебное пособие

61

Программа - загрузчик создается самим разработчиком и долж-

на быть запрограммирована внешним программатором.

Все AVR-контроллеры имеют также блок энергонезависимой

электрически стираемой памяти данных EEPROM. Этот тип памяти,

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

ее выполнения, удобен для хранения промежуточных данных, раз-

личных констант, таблиц перекодировок, калибровочных коэффици-

ентов и т.п. EEPROM также может быть загружена извне через SPI

интерфейс и с помощью обычного программатора. Число циклов пе-

резаписи - не менее 100 тыс. Два программируемых бита секретности

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

данных EEPROM от несанкционированного считывания. Внутренняя

оперативная память SRAM имеется у всех AVR семейств "classic" и

"mega" и у одного нового кристалла семейства "tiny" - ATtiny26/L.

Для некоторых микроконтроллеров возможна организация подклю-

чения внешней памяти данных объемом до 64 кбайта. Внутренний тактовый генератор AVR может запускаться от нескольких

источников опорной частоты (внешний генератор, внешний кварцевый резона-

тор, внутренняя или внешняя RC-цепочка). Поскольку AVR-микроконтроллеры

полностью статические, минимальная допустимая частота ничем не ограничена

(вплоть до пошагового режима). Максимальная рабочая частота определяется

конкретным типом микроконтроллера. Верхние границы частотного диапазона,

гарантируют устойчивую работу микроконтроллеров при работе во всем тем-

пературном диапазоне (хотя, например, ОМК AT90S8515 при комнатной тем-

пературе может быть "разогнан" до 14 МГц). Интересную аппаратную особен-

ность имеет микроконтроллер ATtiny15L. Он содержит блок PLL для аппарат-

ного увеличения основной тактовой частоты в 16 раз. При номинальном значе-

нии последней 1,6 МГц получаемая вспомогательная периферийная частота

равна 25,6 МГц. Эта частота может быть опорной для одного из тайме-

ров/счетчиков микроконтроллера, значительно повышая временное разрешение

его работы.

Сторожевой WATCHDOG-таймер предназначен для защиты микро-

контроллера от сбоев в процессе работы. Он имеет свой собственный RC-

генератор, работающий на частоте 1 МГц. Эта частота является приближенной

и зависит прежде всего от напряжения питания микроконтроллера и от темпе-

ратуры. WATCHDOG-таймер снабжен своим собственным предделителем

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

подстраивать временной интервал переполнения таймера и сброса микро-

контроллера. WATCHDOG-таймер может быть отключен программным обра-

зом во время работы микроконтроллера как в активном режиме, так и в любом

из режимов пониженного энергопотребления. В последнем случае это приводит

к значительному снижению потребляемого тока.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 62: 466.основы микропроцессорной техники  учебное пособие

62

Микроконтроллеры AVR имеют в своем составе от 1 до 4 тайме-

ров/счетчиков общего назначения с разрядностью 8 или 16 бит, которые могут

работать и как таймеры от внутреннего источника опорной частоты, и как счет-

чики внешних событий с внешним тактированием. Общие черты всех тайме-

ров/счетчиков следующие:

1. Наличие программируемого предделителя входной частоты с различ-

ными градациями деления. Отличительной чертой AVR-контроллеров является

возможность работы таймеров/счетчиков на основной тактовой частоте микро-

контроллера без предварительного ее понижения, что существенно повышает

точность генерации временных интервалов системы.

2. Независимое функционирование от режима работы процессорного ядра

микроконтроллера.

3. Возможность работы или от внутреннего источника опорной частоты,

или в качестве счетчика событий. Верхний частотный порог при этом составля-

ет половину основной тактовой частоты микроконтроллера. Выбор перепада

внешнего источника (фронт или срез) программируется пользователем.

4. Наличие различных векторов прерываний для нескольких различных

событий (переполнение, захват, сравнение).

Система реального времени RTC реализована во всех микроконтроллерах

семейства "mega" и на двух кристаллах семейства "classic" - AT90(L)S8535.

Таймер/счетчик RTC имеет свой собственный предделитель, который может

быть программным способом подключен или к основному внутреннему источ-

нику тактовой частоты микроконтроллера, или к дополнительному асинхрон-

ному источнику опорной частоты (кварцевый резонатор или внешний синхро-

сигнал). Для этой цели зарезервированы два внешних вывода микроконтролле-

ра. Внутренний осциллятор, нагруженный на счетный вход таймера/счетчика

RTC, оптимизирован для работы с внешним "часовым" кварцевым резонатором

32,768 кГц. Порты ввода/вывода AVR имеют от 3 до 53 независимых линий

"Вход/Выход". Каждый разряд порта может быть запрограммирован на ввод

или на вывод информации. Мощные выходные драйверы обеспечивают токо-

вую нагрузочную способность 20 мА на линию порта (втекающий ток) при

максимальном значении 40 мА, что позволяет, например, непосредственно под-

ключать к микроконтроллеру светодиоды и биполярные транзисторы. Общая

токовая нагрузка на все линии одного порта не должна превышать 80 мА (все

значения приведены для напряжения питания 5 В).

Интересная архитектурная особенность построения портов ввода/вывода

у AVR-контроллеров заключается в том, что для каждого физического вывода

существует 3 бита контроля/управления, а не 2, как у распространенных 8-

разрядных микроконтроллеров Intel, Microchip, Motorola и т.д.. Использование

только двух бит контроля/управления порождает ряд проблем при операциях

типа "чтение/модификация/запись". Так, если имеются две последовательные

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

терян безвозвратно, если вывод порта работает на емкостную нагрузку и требу-

ется некоторое время для стабилизации уровня сигнала на внешнем выводе

микросхемы. Архитектура построения портов ввода/вывода AVR-контроллеров

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 63: 466.основы микропроцессорной техники  учебное пособие

63

с тремя битами контроля/управления позволяет разработчику полностью кон-

тролировать процесс ввода/вывода. Если необходимо получить реальное значе-

ние сигнала на физическом выводе микроконтроллера, читайте содержимое

бита по адресу PINx. Если требуется обновить выходы, прочитайте защелку

PORTx и потом модифицируйте данные. Это позволяет избежать необходимо-

сти иметь копию содержимого порта в памяти для безопасности и повышает

скорость работы микроконтроллера при работе с внешними устройствами.

Особую значимость приобретает данная возможность AVR-контроллеров для

реализации систем, работающих в условиях внешних электрических помех.

Аналоговый компаратор входит в состав большинства микроконтролле-

ров AVR. Типовое напряжение смещения равно 10 мВ, время задержки распро-

странения составляет 500 нс и зависит от напряжения питания микроконтрол-

лера. Так, при напряжении питания 2,7 В оно равно 750 нс. Аналоговый компа-

ратор имеет свой собственный вектор прерывания в общей системе прерываний

микроконтроллера. При этом тип перепада, вызывающий запрос на прерывание

при срабатывании компаратора, может быть запрограммирован пользователем

как фронт, срез или переключение. Логический выход компаратора может быть

программным образом подключен ко входу одного из 16-разрядных тайме-

ров/счетчиков, работающего в режиме захвата. Это дает возможность измерять

длительность аналоговых сигналов а также максимально просто реализовывать

АЦП двухтактного интегрирования.

Аналого-цифровой преобразователь построен по классической схеме по-

следовательных приближений с устройством выборки/хранения (УВХ). Каж-

дый из аналоговых входов может быть соединен со входом УВХ через аналого-

вый мультиплексор. Устройство выборки/хранения имеет свой собственный

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

ным в течение всего времени преобразования. Разрядность АЦП составляет 10

бит. АЦП может работать в двух режимах: 1) однократное преобразование по

любому выбранному каналу, 2) последовательный циклический опрос всех ка-

налов. Время преобразования выбирается программно с помощью установки

коэффициента деления частоты специального предделителя, входящего в со-

став блока АЦП. Оно составляет 70...280 мкс для ОМК mega103 и 65...260 мкс

для всех остальных микроконтроллеров, имеющих в своем составе АЦП. Важ-

ной особенностью аналого-цифрового преобразователя является функция по-

давления шума при преобразовании. Пользователь имеет возможность, выпол-

нив короткий ряд программных операций, запустить АЦП во время нахожде-

ния центрального процессора в одном из режимов пониженного энергопотреб-

ления. При этом на точность преобразования не будут оказывать влияние поме-

хи, возникающие при работе процессорного ядра.

AVR - микроконтроллеры могут быть переведены программным путем в

один из шести режимов пониженного энергопотребления. Для разных семейств

AVR и разных микроконтроллеров в пределах каждого семейства изменяются

количество и сочетание доступных режимов пониженного энергопотребления:

1. Режим холостого хода IDLE, в котором прекращает работу только про-

цессор и фиксируется содержимое памяти данных, а внутренний генератор

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 64: 466.основы микропроцессорной техники  учебное пособие

64

синхросигналов, таймеры, система прерываний и WATCHDOG-таймер про-

должают функционировать.

2. Режим микропотребления Power Down, в котором сохраняется содер-

жимое регистрового файла, но останавливается внутренний генератор синхро-

сигналов. Выход из Power Down возможен либо по общему сбросу микро-

контроллера, либо по сигналу «уровень» от внешнего источника прерывания.

При включенном WATCHDOG-таймера ток потребления в этом режиме со-

ставляет около 60...80 мкА, а при выключенном - менее 1 мкА для всех типов

AVR. Приведенные значения справедливы для питающего напряжения 5 В.

3. Режим сохранения энергии Power Save, который реализован только у

тех AVR-контроллеров, которые имеют в своем составе систему реального

времени. В основном режим Power Save идентичен режиму Power Down, но

здесь допускается независимая работа дополнительного таймера/счетчика RTC.

Выход из режима Power Save возможен по прерыванию, вызванному или пере-

полнением таймера/счетчика RTC, или срабатыванием блока сравнения этого

счетчика. Ток потребления в этом режиме составляет 6...10 мкА при напряже-

нии питания 5 В на частоте 32,768 кГц.

4. Режим подавления шума при работе аналого-цифрового преобразова-

теля ADC Noise Reduction. Как уже отмечалось, в этом режиме останавливается

процессорное ядро, но разрешается работа АЦП, двухпроводного интерфейса

I2C и сторожевого таймера.

5. Основной режим ожидания Standby идентичен режиму Power Down,

но здесь работа тактового генератора не прекращается. Это гарантирует

быстрый выход микроконтроллера из режима ожидания, всего за 6 тактов ге-

нератора.

6. Дополнительный режим ожидания Extended Standby идентичен режиму

Power Save, но здесь работа тактового генератора тоже не прекращается. Это

гарантирует быстрый выход микроконтроллера из режима ожидания, всего за 6

тактов генератора.

Микроконтроллеры AVR mega 64, mega 103 и mega 128 имеют еще одну

примечательную архитектурную особенность, позволяющую значительно сни-

зить энергопотребление всего кристалла в целом при возникновении в процессе

работы вынужденных пауз ожидания. В этом случае целесообразно уменьшить

ток потребления центрального процессора и периферийных устройств как в ак-

тивном режиме, так и в режиме холостого хода, понизив основную тактовую

частоту микроконтроллера. Для этой цели на кристалле размещен специальный

предделитель, позволяющий делить основную тактовую частоту на целое число

в диапазоне от 2 до 129. Включение/выключение данной функции осуществля-

ется одной короткой командой в программе.

AVR-контроллеры функционируют в широком диапазоне питающих

напряжений (от 1,8 до 6,0 В). Энергопотребление в активном режиме зависит от

напряжения питания, от частоты, на которой работает AVR-контроллер и от

конкретного типа микроконтроллера.

Система команд AVR-контроллеров весьма развита и насчитывает до 133

различных инструкций. Почти все команды имеют фиксированную длину в од-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 65: 466.основы микропроцессорной техники  учебное пособие

65

но слово (16 бит), что позволяет в большинстве случаев объединять в одной

команде и код операции, и операнд(ы). Лишь немногие команды имеют размер

в 2 слова (32 бит) и относятся к группе команд вызова процедуры CALL, длин-

ных переходов в пределах всего адресного пространства JMP, возврата из под-

программ RET и команд работы с памятью программ LPM. Различают пять

групп команд: 1) условного ветвления; 2) безусловного ветвления; 3) арифме-

тические и логические операции; 4) команды пересылки данных; 5) команды

работы с битами. В последних версиях кристаллов AVR семейства "mega" реа-

лизована функция аппаратного умножения, что придает новым микроконтрол-

лерам еще больше привлекательности с точки зрения разработчика.

По разнообразию и количеству реализованных инструкций AVR-

контроллеры больше похожи на CISC -, чем на RISC - процессоры. Так, у PIC-

контроллеров система команд насчитывает до 75 различных инструкций, а у

ОМК MCS51 она составляет 111. В целом, прогрессивная RISC-архитектура

AVR в сочетании с наличием регистрового файла и расширенной системы ко-

манд позволяет в короткие сроки создавать работоспособные программы с эф-

фективным кодом как по компактности реализации, так и по скорости выпол-

нения.

3.8. Разработка и отладка контроллеров

Проектирование специализированного микропроцессорного

устройства или системы содержит обычно три этапа [22]:

• выбор элементов и составление структурной, функциональной

и принципиальной схем;

• распределение памяти и присвоение элементам, к которым в

процессе выполнения программы необходимо обращаться, соответ-

ствующих кодов и адресов;

• составление и отладка программы.

Основными исходными данными для проектирования МПС яв-

ляются описание или схема алгоритма решаемой задачи, характери-

стики входных и выходных сигналов, требования к точности, быст-

родействию, потребляемой мощности, надежности. Часто в задании

на проектирование содержатся также рекомендации по применению

определенной элементной базы. Во многих случаях указанные требо-

вания закладываются в схему устройства вначале лишь в общем виде

(посредством выбора подходящих элементов), затем в процессе про-

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

коррективы.

На первом этапе проектирования выбирается элементная база,

определяемая прежде всего спецификой реализуемых в МПС алго-

ритмов. Если МПС предназначается для обработки сигналов, опреде-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 66: 466.основы микропроцессорной техники  учебное пособие

66

ляющим является быстродействие МП и его разрядность. В настоя-

щее время разработаны весьма совершенные специализированные

однокристальные МП для цифровой обработки сигналов типа TMS

320, которым во многих случаях и следует отдавать предпочтение.

Если МПС предназначены для построения информационно-

справочной системы, определяющим требованием обычно является

возможность подключения к МП ЗУ большой емкости.

На первом этапе проектирования выбираются также элементы

памяти ОЗУ и ПЗУ, имеющие требуемую емкость, быстродействие и

потребляемую мощность, а также интерфейсные модули, обеспечи-

вающие связь МП с внешними устройствами. Если система "ком-

пактна", связь обеспечивается, как правило, с помощью параллель-

ных периферийных адаптеров или многорежимных буферных реги-

стров; если же ВУ разнесены на большие расстояния, связь иногда

организуется с помощью последовательных адаптеров. При этом ли-

нии связи упрощаются, но производительность системы падает. Для

частичной разгрузки центрального процессорного элемента в систему

иногда включают таймер, который берет на себя функции "времяза-

дающего" элемента, а также другие устройства.

Далее проверяется электрическое сопряжение элементов схемы

и при необходимости вводятся усилители, формирователи, преобра-

зователи уровней и т.д. Затем составляются исходные варианты

структурной, функциональной и принципиальной схем.

Выполнение второго этапа начинается с распределения адресно-

го поля между ОЗУ, ПЗУ и ВУ.

Далее выделяются области ПЗУ для запоминания основной про-

граммы, подпрограмм (в том числе программ обработки прерыва-

ний), констант и т.д. В ОЗУ выделяются области для хранения посту-

пающих из ВУ данных и промежуточных результатов, а также орга-

низации стека. Начало (вершина) стека часто располагается в по-

следней ячейке ОЗУ. Затем специфицируются РОНы и МП.

На третьем этапе составляется программа работы устройства.

При этом, если решаемая задача простая (программа содержит до 100

команд), используется язык ассемблера выбранного МП или ОМК,

который позволяет непосредственно получить двоичные ("объект-

ные") коды команд, записываемые далее в ПЗУ. Если же задача до-

статочно сложная, то используется тот или иной язык высокого уров-

ня. Выбор языка определяется тем, какие имеются в распоряжении

разработчика средства отладки программ и их трансляции в машин-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 67: 466.основы микропроцессорной техники  учебное пособие

67

ные коды выбранного МП. Система команд МП позволяет, как пра-

вило, выполнить ту или иную операцию алгоритма множеством спо-

собов, поэтому составленную программу, даже если она правильно

решает сформулированную задачу, необходимо тщательно проанали-

зировать и по возможности оптимизировать в целях уменьшения ем-

кости используемой памяти и времени выполнения.

При отладке программ на ЭВМ, имеющих трансляторы с ассем-

блера, программы необходимо дополнить соответствующими псевдо-

командами.

Широкие возможности использования типовых решений на пер-

вом и втором этапах проектирования и ограниченные возможности

такого рода на третьем этапе приводят к тому, что 60…90 % трудо-

емкости проектирования специализированного МПУ или МПС при-

ходится на третий этап.

Разработка и отладка контроллера существенно облегчается и

ускоряется, если использовать специальные пакеты программ для от-

ладки. Рассмотрим в качестве примера разработанный фирмой

HiWare отладочный модуль HC11EVB, работающий с микро-

контроллером МС68НС11Е1. Отладочный модуль позволяет произ-

водить отладку программного и аппаратного обеспечения ОМК

на базе БИС МС68НС11 серий АО, А1, А8, ЕО, Е1, Е2, Е9, DO, D3.

На нем также можно отлаживать структуры системы команд, схемо-

техническое и программное обеспечение, порядок функционирования

и методы программирования МП БИС серии МС68НС11.

Наиболее интересной и полезной особенностью пакета отладки

HI-WAVE является возможность симулировать работу устройств

ввода/вывода создаваемого микроконтроллера. В основном, симуля-

торы эмулируют работу регистров микропроцессора и исполнение

его команд. Это очень полезная функция, но микропроцессор — это

иногда лишь малая часть встроенной микропроцессорной системы.

Используя пакет отладки HI-WAVE, разработчик промышленного

микроконтроллера может эмулировать работу не только микропро-

цессора, но и устройств ввода/вывода, таких как регистровые устрой-

ства, аналого-цифровые преобразователи, таймеры (включая преры-

вания, приходящие от них), а также другие компоненты системы вво-

да/вывода микроконтроллера. Отладочный комплекс включает компьютер IBM PC, на котором работает

программа XDBG11 и отладочный модуль HC11EVB. Питание отладочного

модуля может осуществляться от отдельного источника питания и от компью-

тера (через разъем подключения дисковода 5"25).

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 68: 466.основы микропроцессорной техники  учебное пособие

68

На рис. 3.3 представлена структурная электрическая схема отладочного

модуля 68НС11EVB, включающая набор блоков, выделенных по функциональ-

ному признаку. В состав модуля 68НС11EVB входят следующие узлы:

• блок микроконтроллера (МК);

• дешифратор адреса и сигналов управления (ДА);

• блок оперативной памяти (ОЗУ);

• блок последовательного интерфейса (БПИ);

• эмулятор портов В и С микроконтроллера (ЭМ);

• блок имитатора внешних устройств (ИВУ).

В блок микроконтроллера входит однокристальный микроконтроллер

МС68НС11Е1 (вместо него в панель могут быть также установлены ОМК серий

АО, А1, А8, ЕО, Е2, Е9), буфер магистрали данных и управления, буфер стар-

шего байта адреса, а также регистр младшего байта адреса. Буфер данных слу-

жит для увеличения нагрузочной способности шины данных микроконтролле-

ра. Буфер переключается на ввод данных при чтении команд или данных из па-

мяти или внешних устройств. В целях увеличения нагрузочных способностей

соответствующих линий микроконтроллера используются буфер управления и

буфер старшего байта адреса. Регистр младшего байта адреса фиксирует млад-

ший байт адреса, который выводится через те же выводы ОМК НС11, что и

данные.

Дешифратор адреса и сигналов управления формирует сигналы управ-

ления для памяти и внешних устройств. Выборка ОЗУ производится при обра-

щении по адресам $COOO-$FFFF. Сигнал внешней выборки эмулятора портов

производится при установленных битах А9-А11 и при отсутствии обращения к

ОЗУ. Также здесь формируются сигналы чтения R/ и записи W/.

ИВУ

HL2

HL9

SA1

SA2

PAО

PAQ

ЭМ

Разъемы подключения

периферии МК

ОЗУ

МК ДА

БПИ OUT

IN RS-232

R×D

T×D

Рис. 3.3. Структурная электрическая схема отладочного модуля 68HC11EVB

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 69: 466.основы микропроцессорной техники  учебное пособие

69

Блок оперативной памяти команд содержит две ИС ОЗУ типа 6264 объ-

емом по 8 кбайт. Пользователь имеет возможность записывать и считывать

данные из ОЗУ, а также вводить и запускать программы. и запускать

Блок последовательного интерфейса преобразует выходной сигнал TxD

ОМК семейства НС 11 с уровнем ТТЛ в сигнал с уровнем -12В/+12В (OUT), а

также преобразует сигнал с линии RS-232 (IN) в сигнал с ТТЛ-уровнем, подава-

емый на вход RxD ОМК.

Функцию эмулятора портов В и С микроконтроллера выполняет БИС

68РС24. Порты В и С HC11 задействованы на обмен с внешней памятью, и для

возможности эмуляции их работы в однокристальном режиме используется

68НС24.

Схема имитатора внешних устройств предназначена для формирова-

ния воздействий на ОМК через порт С эмулятора портов и отображения состо-

яния порта В эмулятора портов. Клавиша «РА0» со схемой антидребезга ис-

пользуется для формирования воздействия на вход схемы входного захвата

IC3 НС 11 при изучении работы внутреннего таймера (или для формирования

воздействия на вывод 0 порта А).

Для организации работы МПС с внешними устройствами ис-

пользуются различные системы. Ниже рассмотриваются основные

способы передачи информации и устройства ввода/вывода.

ВОПРОСЫ ДЛЯ САМОПРОВЕРКИ

1. Что такое контроллер?

2. Что такое ОМК?

3. Что такое одноплатная ЭВМ?

4. Каковы отличия PIC-контроллеров от AVR-контроллеров?

5. Каковы отличия ОМК семейств MCS-51 от ОМК семейства MCS-96?

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 70: 466.основы микропроцессорной техники  учебное пособие

70

4. УСТРОЙСТВА ВВОДА/ВЫВОДА

Связь внешних (периферийных) устройств с МПС обеспечива-

ется системой ввода/вывода. Применяют три основных метода управ-

ления вводом/выводом: программный через порты ввода / вывода, с

использованием системы прерываний, прямого доступа к памяти.

Раньше применяли, так называемый ввод/вывод, отраженный на

память (обращение к внешним устройствам осуществлялась как к

обычным ячейкам памяти). Однако это приводит к уменьшению ад-

ресного пространства МПС. Теперь этот метод практически не при-

меняется.

4.1. Cпособы передачи информации

В МПС существует три способа передачи информации:

асинхронный

синхронный

смешанный.

Асинхронный способ характеризуется тем что сигналы пере-

даются с произвольными промежутками времени.

Синхронный способ характеризуется тем что сигналы переда-

ются строго периодично во времени.

Смешанный способ характеризуется тем что байты передаются

асинхронно а биты внутри байтов синхронно.

Асинхронный способ обеспечивает передачу информации по

единственной линии. Для надежной синхронизации обмена в асин-

хронном режиме необходимо:

• настраивать передатчик и приемник на работу с одинаковой

частотой;

• формировать стартовый и стоповый биты передатчика, отме-

чающие начало и конец посылки;

• вести передачу короткими посылками (5..9 бит), а частоты пе-

редачи выбирать сравнительно низкими.

Асинхронный способ по методу регистрации сигналов делится

на стробируемый и «запрос-ответ».

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 71: 466.основы микропроцессорной техники  учебное пособие

71

Стробирование может осуществляться по фронту или по

уровню. Строб – дополнительный сигнал. Он является подтвержде-

нием действительности других сигналов.

Достоинства стробирования по фронту: легкая аппаратная реа-

лизация высокое быстродействие.

Недостатки: нельзя использовать строб сигнал как сигнал

синхронизации момент переключения трудно зафиксировать про-

граммно.

Достоинства стробирования по уровню: легкая аппаратная реа-

лизация легкая программная реализация легкая организация приема

от нескольких источников.

Недостатки: нельзя использовать строб-сигнал как сигнал син-

хронизации меньшее быстродействие.

Метод «запрос-ответ» выполняется за 5 этапов:

t1 – передатчик выставляет данные (предварительно проверив от-

сутствие строба-ответа);

t2 – передатчик с некоторой задержкой выставляет сигнал строб-

запрос;

t3 – приемник анализируя состояние линии строб-запрос обна-

руживает наличие определенного сигнала и в этот же момент осу-

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

t4 – передатчик сканируя линию строб-ответ обнаруживает что

он активен и сбрасывает строб-запрос;

t5 – приемник сканируя линию строб-запрос обнаруживает что

строб запрос стал неактивен и сбрасывает строб-ответ;

t6 – повторяется тоже самое что и на первом этапе t1;

Достоинства: позволяет сопрягать аппаратуру существенно от-

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

путем.

Недостатки: нельзя использовать строб - сигнал как сигнал син-

хронизации меньшее быстродействие.

При синхронном методе передатчик генерирует две последова-

тельности - информационную TxD и синхроимпульсы CLK, которые

передаются на приемник по разным линиям (рис. 4.1.).

Синхроимпульсы обеспечивают синхронизацию передаваемых

бит, а начало передачи отмечается по-разному.

Применяют внешнюю и внутреннюю синхронизации.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 72: 466.основы микропроцессорной техники  учебное пособие

72

При организации внешней синхронизации сигнал начала пере-

дачи генерируется передатчиком и передается на приемник по специ-

альной линии BD (рис. 4.1.).

Рис. 4.1. Последовательный синхронный обмен с внешней синхронизацией

Сигналы синхронизации поступают вместе с данными, их форма

может быть неправильной, поэтому внешняя синхронизация исполь-

зуется только при передаче на небольшие расстояния т.е. внутри

платы.

В системах с внутренней синхронизацией отсутствует линия

BD, а на линию данных генерируются специальные коды длиной

1-2 байта - “символы синхронизации”. Для каждого приемника пред-

варительно определяются конкретные синхросимволы, таким обра-

зом можно осуществлять адресацию конкретного абонента из не-

скольких, работающих на одной линии. Каждый приемник постоянно

принимает биты с RxD, формирует символы и сравнивает с собствен-

ными синхросимволами. При совпадении синхросимволов последу-

ющие биты поступают в канал данных приемника. При асинхронно-

синхронном способе каждый байт преобразуется в поток единиц и

нулей, то есть биты, которые могут быть переданы через среду связи

(например, телефонную линию). Обычно, когда линия находится в

режиме ожидания, для демонстрации того, что она в порядке, по ней

передается единица, тем самым обозначается незанятость линии. С

другой стороны, когда линия находится в состоянии логического ну-

ля, говорится, что она стоит в режиме выдерживания интервалов. Та-

ким образом, логические единица и ноль рассматриваются соответ-

ственно как сигналы MARK и SPACE.

В асинхронной связи изменение условия состояния линии с

MARK на SPACE означает начало символа (рис 4.2).

Сдвиговый

регистр данных

Г

&

Сдвиговый

регистр.

Д

Передатчик Приемник

BD

TxD RxD

CLK

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 73: 466.основы микропроцессорной техники  учебное пособие

73

Pause Pause

Start

Bit

Byte

Бит четкости

Stop bit

Рис. 4.2. Асинхронно-синхронный способ передачи информации

Это называется стартовым битом. За стартовым битом следует

комбинация битов, представляющая символ, и затем бит контроля

четности. Наконец, линия переходит в состояние ожидания MARK,

которая представляет собой стоповый бит и означает конец текущего

символа.

Число битов, используемых для представления символа, называ-

ется длиной слова и обычно равняется семи или восьми. Контроль-

ный бит используется для выполнения элементарной проверки на

наличие ошибки.

Длительность каждого бита определяется генераторами такто-

вых импульсов приемника и передатчика. Однако генераторы в при-

емнике и передатчике должны иметь одну и ту же частоту, но не тре-

буется, чтобы они были синхронизированы. Выбор частоты генерато-

ра зависит от скорости передачи в бодах, которая означает число из-

менений состояния линии каждую секунду. Номинально, тактовая ча-

стота "16-кратная скорость передачи в бодах" означает, что линия

проверяется достаточно часто для надежного распознавания старто-

вого бита.

Рассмотренные принципы асинхронной последовательной связи

реализованы в ряде стандартов для передачи информации, среди ко-

торых наиболее популярным является стандарт RS-232С.

Эти же принципы последовательной связи реализованы в ряде

БИС последовательных приемо-передатчиков УАПП, среди которых

наиболее известные 6850, Intel 8251, КР580ВВ51А, Z80-SIO, 8250,

16450, 16550, 16550А. Эти УАПП выполняют следующие функции:

• обеспечение преобразования параллельного кода в последова-

тельный при передаче данных и обратное преобразование при их

приеме;

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 74: 466.основы микропроцессорной техники  учебное пособие

74

• формирование стартового, контрольного и стопового разрядов

при передаче данных;

• контроль правильности приема стартового, контрольного и

стопового разрядов при приеме, анализ их "переполнения", когда ра-

нее принятые знаки не переписываются в системную шину до приема

очередного знака;

• прием и передача знака на фиксированных скоростях;

• формирование и контроль состояния сигналов в интерфейсе

RS-232C;

• организация диагностической проверки без использования

подключаемого к интерфейсу RS-232C оборудования.

В состав PC AT входит оборудование, которое обеспечивает об-

мен. Это оборудование соответствует требованиям стандарта США

RS-232C и рекомендациям V.24 и V.28 международного консульта-

тивного комитета по телефонии и телеграфии МККТТ (CCITT) и со-

ответствуют ГОСТ 18145-81 и ГОСТ 23675-79 соответственно.

Устройства обеспечивающие связь в соответствии с этими стандар-

тами называют интерфейсом RS-232C или последовательным асин-

хронным интерфейсом.

Персональные компьютеры имеют в своем составе обычно два

интерфейса RS-232C, которые обозначаются COM1 и COM2. Воз-

можна установка дополнительного оборудования, которое обеспечи-

вает функционирование в составе компьютера 4,8и 16 интерфейсов

RS-232C.

Интерфейс RS-232C обеспечивает следующие возможности:

1. Применение ПК в качестве абонентского пункта в системах и

сетях телеобработки данных. В этом случае ПК подключается через

этот интерфейс к устройствам преобразования сигналов (модемам),

которые в свою очередь подключаются к каналам связи.

2. Подключение к ПК различных устройств ввода/вывода (гра-

фопостроителей, принтеров, графических манипуляторов, внешних

НГМД, стриммеров и т.д.).

3. Объединение нескольких PC между собой и с другими ЭВМ

для организации перекачки файлов между ними.

Широкое применение интерфейса RS-232C объясняется его

универсальностью в части диапазона скоростей передачи информа-

ции (от 50 до 115 000 бит в секунду), "прозрачностью", т.е. отсут-

ствием запрещенных к использованию для передачи данных кодовых

комбинаций, наличием специализированных БИС и ИС, на которых

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 75: 466.основы микропроцессорной техники  учебное пособие

75

достаточно эффективно реализуется данный интерфейс, простотой

конструкции соединительных кабелей.

Основные принципы обмена информацией по интерфейсу RS-

232C заключаются в следующем:

1. Обмен данными обеспечивается по двум цепям, каждая из ко-

торых является для одной из сторон передающей, а для другой при-

нимающей.

2. В исходном состоянии по каждой из этих цепей передается

двоичная единица, т.е. стоповая посылка. Передача стоповой посылки

может выполняться сколько угодно долго.

3. Передаче каждого знака данных предшествует передача стар-

товой посылки, т.е. передача двоичного нуля в течение времени, рав-

ного времени передачи одного бита данных.

4. После передачи стартовой посылки обеспечивается последо-

вательная передача всех разрядов знака данных, начиная с младшего

разряда. Количество разрядов знака может быть 5, 6, 7 или 8.

5. После передачи последнего разряда знака данных возможна

передача контрольного разряда, который дополняет сумму по модулю

2 переданных разрядов до четности или нечетности. В некоторых си-

стемах передача контрольного разряда не выполняется.

6. После передачи контрольного разряда или последнего разряда

знака, если формирование контрольного разряда не предусмотрено,

обеспечивается передача стоповой посылки. Минимальная длитель-

ность посылки может быть равной длительности передачи 1, 1,5 или2

бит данных.

Обмен данными по описанным принципам требует предвари-

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

пользуемых разрядов в символе, правилам формирования контроль-

ного разряда и длительности передачи бита данных. Последнее со-

гласование обеспечивается путем стандартизации ряда скоростей: 50,

75, 100, 110, 200, 300, 600, 1200, 2400, 4800, 9600, 19 200, 38 400, 57

000 или 115 000 бит в секунду. Установленная скорость должна отли-

чаться от номинальной не более чем на 2 %, что гарантированно

обеспечивается применением генераторов с кварцевыми резонатора-

ми. Обычно используется генератор с частотой 1,8432 МГц.

В МПС применяются кроме рассмотренного интерфейса RS-

232С также интерфейсы PCI,USB, VXI, VIME и другие.

Универсальный интерфейс PCI (соединение процессора с пери-

ферийными элементами и системой процессора памяти) имеет встро-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 76: 466.основы микропроцессорной техники  учебное пособие

76

енную поддержку кэширования (механизм слежения за шиной – ин-

терференция данных). Он обеспечивает пересылки 32 и 64 бит при

частоте 33,66,133 МГц, при этом разрешаются групповые пересылки.

В интерфейсе PCI реализована функция автоконфигурирования си-

стемы и скрытый арбитраж - арбитраж осуществляется в то время,

когда на шину идут пересылки (время не тратится). При пересылках

осуществляется контроль чёткости адреса данных, что обеспечивает

высокую надёжность интерфейса. Низкая стоимость интерфейса PCI

определяется относительно малым числом выводов (49 для ведущего

(мастер) и 47 для ведомого (Slave)).

Работа интерфейса осуществляется следующим образом. Ак-

тивное устройство выдаёт сигнал REQ на арбитр по своей линии (у

каждого устройства свои сигналы REQ , GNT). Арбитр определяет

устройство, которое имеет наиболее высокий приоритет и по линии

выдаёт сигнал GNT этому устройству. Активное устройство выстав-

ляет сигнал FRAME, означающее, что устройство захвачено, и осу-

ществляет обмен.

4.2. Методы ввода/вывода

Подсистема ввода/вывода (ПВВ) обеспечивает связь МП с

внешними устройствами, к которым относятся:

устройства ввода/вывода : клавиатура, дисплей, принтер,

датчики и исполнительные механизмы, АЦП, ЦАП, таймеры и

т.п.;

внешние запоминающие устройства (ВЗУ или ВУ): накопите-

ли на магнитных дисках, "электронные диски" и др.

В рамках рассмотрения ПВВ будем полагать термины "УВВ" и

"ВУ" синонимами, так как обращение к ним со стороны процессора

осуществляется по одним законам.

ПВВ в общем случае должна обеспечивать выполнение следу-

ющих функций.

1. Согласование форматов данных. Процессор всегда выда-

ет/принимает данные в параллельной форме, а некоторые ВУ (напри-

мер, НМД) - в последовательной. С этой точки зрения различают

устройства параллельного и последовательного обмена. При па-

раллельном обмене не производится преобразование форматов пере-

даваемых слов, при последовательном - осуществляется преобразова-

ния параллельного кода в последовательный и наоборот. Все вари-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 77: 466.основы микропроцессорной техники  учебное пособие

77

анты, когда длина слова ВУ (больше 1 бита) не совпадает с длиной

слова МП, сводятся к разновидностям параллельного обмена.

2. Организация режима обмена - формирование и прием

управляющих сигналов, идентифицирующих наличие информации на

различных шинах, ее тип, состояние ВУ (готово, занято, авария), ре-

гламентирующих временные параметры обмена. По способу связи

процессора и ВУ (активного и пассивного) различают синхронный и

асинхронный обмен. При синхронном обмене временные характери-

стики обмена полностью определяются МП, который не анализирует

готовность ВУ к обмену и фактическое время завершения обмена.

Синхронный обмен возможен только с устройствами, всегда

готовыми к нему (например, двоичная индикация). При асинхрон-

ном обмене МП анализирует состояние ВУ и/или момент заверше-

ния обмена. Временные характеристики обмена в этом случае могут

определяться ВУ.

3. Адресная селекция внешнего устройства. Возможны следу-

ющие методы ввода/вывода:

- под управлением МП: по опросу или прерыванию;

- управлением внешних устройств (прямого доступа к памя-

ти).

Метод ввода/вывода по опросу подразумевает регулярную

проверку процессором готовности к ответу. Необходимо, чтобы про-

цессор и устройства были согласованны по скорости. Эффектив-

ность низка если информация поступает редко (процессор опра-

шивает а информации нет).

Недостатки: очень низкое быстродействие; процессор занима-

ется постоянным опросом.

Достоинства: не требует дополнительной аппаратуры; можно

использовать несколько источников. Более эффективен метод ввода/вывода по прерыванию

Метод ввода/вывода по прерыванию реализуется в виде под-

системы- совокупности аппаратных и программных средств, обеспе-

чивающих реакцию программы на события, происходящие вне про-

граммы. Такие события возникают, как правило, случайно и асин-

хронно по отношению к программе и требуют прекращения (чаще

временного) выполнения текущей программы и переход на выполне-

ние другой программы (подпрограммы), соответствующей возник-

шему событию.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 78: 466.основы микропроцессорной техники  учебное пособие

78

Различают внутренние и внешние (по отношению к процессору)

события, требующие реакции подсистемы прерываний.

К внутренним событиям относятся переполнение разрядной сет-

ки при выполнении арифметических операций, попытка деления на 0,

извлечение корня четной степени из отрицательного числа и т.п., по-

явление несуществующего кода команды, обращение программы в

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

передачи или операции в АЛУ и многое другое. Внутренние преры-

вания должны обеспечиваться развитой системой аппаратного кон-

троля процессора, поэтому они не получили широкого распростране-

ния в простых 8- и 16-разрядных МП.

Внешние прерывания могут возникать во внешней по отноше-

нию к процессору среде и отмечать как аварийные ситуации (кончи-

лась бумага на принтере, температура в реакторе превысила допу-

стимый уровень, исполнительный орган робота дошел до предельно-

го положения и т.п.), так и нормальные рабочие события, которые

происходят в случайные моменты времени (нажата клавиша на кла-

виатуре, исчерпан буфер принтера или ВЗУ и т.п.). Во всех этих слу-

чаях требуется прервать выполнение текущей программы и перейти

на выполнение другой программы (подпрограммы), обслуживающей

это событие.

С точки зрения осуществления внутренние и внешние прерыва-

ния функционируют одинаковым образом, хотя при работе подси-

стемы с внешними прерываниями возникают дополнительные про-

блемы идентификации источника прерывания.

Организация прерываний должна быть обеспечена определен-

ными аппаратными и программными средствами, которые мы и

называем "подсистемой прерываний".

Подсистема прерываний должна обеспечивать выполнение сле-

дующих функций:

• обнаружение изменения состояния внешней среды (запрос на

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

• идентификация источника прерывания;

• разрешение конфликтной ситуации в случае одновременного

возникновения нескольких запросов (приоритет запросов);

• определение возможности прерывания текущей программы

(приоритет программ);

• фиксация состояния прерываемой (текущей) программы;

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 79: 466.основы микропроцессорной техники  учебное пособие

79

• переход к программе, соответствующей обслуживаемому пре-

рыванию;

• возврат к прерванной программе после окончания работы пре-

рывающей программы.

Рассмотрим варианты реализации в МПС перечисленных функ-

ций.

Фиксация изменения состояния внешней среды может осу-

ществляться различными средствами: двоичными датчиками, компа-

раторами, схемами формирования состояний и т.п. Все эти средства

формируют в конечном итоге логические сигналы запроса на преры-

вание Z, причем активное состояние этого сигнала передается уров-

нем логической единицы (H - уровень).

Количество источников запросов в МПС может быть различно, в

том числе и довольно велико. Дефицит внешних выводов МП исклю-

чает возможность передачи запросов от ВУ по "собственным" линиям

интерфейса. Обычно на одну линию запроса подключается несколько

источников прерываний (по функции ИЛИ), а иногда и все источники

системы - на единственный вход (как в МП i8080).

Различают два типа входов запросов на прерывания - радиаль-

ные и векторные. Процессор анализирует состояние входов запросов

в конце каждого машинного цикла.

Получив запрос на прерывание, процессор должен идентифици-

ровать его источник, т.е. в конечном счете, определить начальный ад-

рес обслуживающей это прерывание программы. Способ идентифи-

кации зависит от типа входа, на который поступил запрос.

Каждый радиальный вход связан с определенным адресом памя-

ти, по которому размещается указатель на обслуживающую програм-

му или сама программа. Если на радиальный вход поступает несколь-

ко запросов, то необходимо осуществить программную идентифика-

цию источника путем последовательного (в порядке убывания прио-

ритетов) опроса всех возможных источников прерывания. Этот спо-

соб не требует дополнительных аппаратных затрат и одновременно

решает проблему приоритета запросов, однако время реакции систе-

мы на запрос может оказаться недопустимо велико, особенно при

большом числе источников прерываний. Гораздо чаще в современ-

ных МПС используется так называемый "векторная" подсистема

прерываний.

В такой системе микропроцессор, получив запрос на векторном

входе INT, выдает на свою выходную линию сигнал подтверждения

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 80: 466.основы микропроцессорной техники  учебное пособие

80

прерывания INTA, поступающий на все возможные источники пре-

рывания. Источник, не выставивший запрос, никак не реагирует на

сигнал INTA. Источник, выставивший запрос, получая сигнал INTA,

выдает на системную шину данных "вектор прерывания" – свой

номер или адрес обслуживающей программы или, чаще, адрес памя-

ти, по которому расположен указатель на обслуживающую програм-

му. Время реакции МПС на запрос векторного прерывания мини-

мально (1..3 машинных цикла) и не зависит от числа источников

(рис. 4.3.).

Рис. 4.3. Организация векторного прерывания

Для исключения конфликтов при одновременном возникнове-

нии нескольких запросов на векторном входе ответный сигнал INTA

подается на источники запросов не параллельно, а последовательно –

в порядке убывания приоритетов запросов. Источник, не выставив-

ший запрос, транслирует сигнал INTA со своего входа на выход, а ис-

точник, выставивший запрос, блокирует дальнейшее распространение

сигнала INTA. Таким образом, только один источник, выставивший

запрос, получит от процессора сигнал INTA и выдаст по нему свой

вектор на шину данных.

Более гибко решается проблема организации приоритетов

запросов при использовании в МПС специальных контроллеров пре-

рываний.

Конфликты на радиальном входе исключаются самим порядком

программного опроса источников.

Прерывание в общем случае может возникать не только при ре-

шении "фоновой" задачи, но и в момент работы другой прерывающей

программы, причем не всякую прерывающую программу допустимо

Микро-

процессор Шина данных

1

V1

2

V2

3

V3

4

V4

n

Vn INT INTA

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 81: 466.основы микропроцессорной техники  учебное пособие

81

прерывать любым запросом. В фоновой задаче также могут встре-

чаться участки, при работе которых прерывания (все или некоторые)

недопустимы. В общем случае в каждый момент времени работы

процессора должно быть выделено подмножество запросов, которым

разрешено прерывать текущую программу.

В МПС эта задача решается на нескольких уровнях. В процессо-

ре обычно предусматривается программно-доступный флаг разреше-

ния/запрещения прерывания, значение которого определяет возмож-

ность или невозможность всех прерываний. Для создания более гиб-

кой системы приоритетов программ на каждом источнике прерыва-

ний может быть предусмотрен специальный программно-доступный

триггер разрешения формирования запроса. В таком случае возможно

формирование произвольного подмножества разрешенных в данный

момент источников прерываний.

Процедура перехода к прерывающей программе и последующе-

го возврата из нее может быть полностью идентична действиям, вы-

полняемым по командам ВЫЗОВ и ВОЗВРАТ. Состояние программ-

ного счетчика (а иногда и регистра флагов или PSW) аппаратно фик-

сируется в стеке, а значение РОНов - при необходимости программно

в самом тексте прерывающей программы. Учитывая, что большин-

ство команд МП являются короткими, время реакции МПС на запрос

прерывания при анализе запросов по завершению текущего команд-

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

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

рование запроса, анализ ответа процессора, выдачу вектора прерывания. Кроме

того, в подсистеме необходимо обеспечить дисциплину обслуживания запро-

сов. Перечисленные функции могут быть реализованы на специальных устрой-

ствах - контроллерах прерываний, которые выпускаются в виде БИС в составе

многих микропроцессорных комплектов.

Структурная схема простого контроллера прерываний К589ИК14 [10],

применяемого совместно с МП К580ВМ80 включает следующие блоки:

• регистр запросов Pr 3П, на который поступают запросы на прерывание

Z0..Z7 от внешних источников;

• приоритетный шифратор (ПШ), формирующий на выходе трехразряд-

ный код номера возбужденного входа (соответствующего разряда РгЗП), при-

чем, если на входе ПШ присутствуют несколько единиц, то на выходе будет

сформирован код большего номера;

• буферная схема, подключающая выход ПШ к линиям системной шины

данных при подаче на управляющий вход сигнала подтверждения прерывания

INTA;

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 82: 466.основы микропроцессорной техники  учебное пособие

82

• регистр текущего приоритета, программно-доступный в пространстве

ввода/вывода и хранящий трехразрядный код приоритета текущей программы;

• схема сравнения, формирующая запрос на прерывание INT процессору

при условии, что код наибольшего из поступивших запросов больше кода те-

кущего приоритета (рис. 4.4.).

Рис. 4.4. Контроллер К589ИК14

К недостаткам рассмотренного контроллера прерываний К589ИК14 от-

носится жесткая система приоритетов запросов, не позволяющая обеспечить

равновероятное обслуживание источников прерываний. Кроме того, контрол-

лер не позволяет выделить произвольное подмножество разрешенных в дан-

ный момент прерываний из множества поступающих на его входы запросов.

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

будут разрешены.

Разработано много других программируемых контроллеров прерываний,

которые позволяют организовать более гибкую и эффективную подсистему

прерываний в МПС. Наиболее эффективным является метод ввода/вывода путем

прямого доступа в память, когда процедура ввода/вывода осуществ-

ляется самим ВУ вообще без участия МП.

4.3. Подсистема прямого доступа в память МПС .

Рассмотрим вариант программно-управляемого обмена между

памятью и внешним устройством в МПС на базе МП i8080 [11].

Пусть необходимо передать массив данных длиной L, начиная с ад-

3 8

Z7

Регистр

запросов Приори-

тетный

шифра-

тор

Регистр

текущего

приори-

тета

С

Буфер

Схема

сравне-

ния

Z6

Z5

Z0

3

DB[5:3]

3

3

DB[2:0]

3

от ДшА

INT

INTA

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 83: 466.основы микропроцессорной техники  учебное пособие

83

реса ADR на ВУ с адресом AIO. Положим, что начальный адрес мас-

сива загружен в регистровую пару HL, а длина массива - в регистр C.

Тогда фрагмент программы обмена может иметь следующий вид

(табл. 3).

Таблица 3

Метка Мнемокод Комментарий Число машинных

циклов

LM: MOVA,M Чтение байта в аккумулятор 2

OUT AIO Выдача байта на ВУ 3

INX H Модификация адреса 1

DCR C Модификация счетчика 1

JNZ LM Переход, если

массив не исчерпан 3

Всего 10

Таким образом, для того чтобы в рамках процедуры копирова-

ния массива данных из памяти в ВУ переслать один байт данных по-

требуется десять машинных циклов. Процессоры с более совершен-

ной системой команд могут использовать для этой цели меньшее

число МЦ, но все равно их будет более одного. Управляя обменом, микропроцессор "ведет" два счетчика - адре-

сов массива и число переданных байт и формирует сигналы управле-

ния на магистраль. Если снабдить ВУ аппаратными счетчиками и

схемой формирования управляющих сигналов (так называемый "ка-

нал ПДП - прямого доступа в память"), то передачу одного байта

(слова) можно осуществить за один МЦ без участия процессора.

Необходимо лишь на время передачи данных под управлением кана-

ла ПДП блокировать работу процессора, отключив его от системной

шины. Для этого служит вход захвата шины HOLD. Если подать на

него высокий уровень, то МП по окончании текущего МЦ, безуслов-

но, перейдет в режим ожидания, переведя все свои выходные линии,

кроме HLDA и WAIT, в высокоимпедансное состояние, а выходы

HLDA и WAIT - в состояние лог. "1". Выходной сигнал HLDA ис-

пользуется для отключения МП от системной шины - перевода шин-

ных формирователей, включенных между локальной и системной

шиной, в высокоимпедансное состояние.

Если в МПС используется несколько ВУ, снабженных каналом

ПДП, то целесообразно использовать специальный контроллер ПДП,

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 84: 466.основы микропроцессорной техники  учебное пособие

84

который обеспечивает программирование каналов ПДП, подключе-

ние их к системной шине и дисциплину обслуживания. Рассмотрим сравнительно простой контроллер прямого доступа в память

К580ВТ57 (рис. 4.5), который предназначен для формирования последова-

тельности адресов и управляющих сигналов в режиме ПДП.

Рис.4.5. Структурная схема контроллера прямого доступа в память

Контроллер ПДП имеет четыре независимых канала обмена. Блок управ-

ления каждого канала включает два 16-разрядных регистра : регистр начально-

го адреса РА и регистр управления РУ, причем РУ[13:0] хранит длину переда-

ваемого массива (количество передаваемых байт), а РА[15:14] - режим работы

канала.

Контроллер включает помимо четырех каналов ПДП, схему управле-

ния, которая обеспечивает связь с системной шиной, разрешение конфликт-

AB[7:

4]

AB[15:8

]

A[3:0]

A[7:4]

ADSTB

D[7:0]

RESET

AEN

READY

CLK

RDM

WRM

RDIO

WRIO

HOLD

HLDA

CS

Рг. Р Рг. С

Рг. А0

Рг. Y0

DRQ0

DACK

0

Рг. А1

Рг. Y1

DRQ1

DACK

12222222

22222222

22222222

22222222

22222222

22222222

2222222

Рг. А2

Рг. Y2

DRQ2

DACK

2

Рг. А3

Рг. Y3

DRQ3

DACK

3

TC

MAR

K

Рг. A

Ши

на

дан

ны

х

Ши

на

адрес

а

Селек-

тор

адреса

Ши

на

уп

рав

лен

ия

RE-

SET

AB[3:

0]

AEN

READ

Y Ф2ТТЛ

RDM

WRM

RDIO

WRIO

HOLD

HLDA

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 85: 466.основы микропроцессорной техники  учебное пособие

85

ных ситуаций в соответствии с заданной системой приоритетов и управ-

ление работой контроллера в различных режимах.

Схема управления содержит два 8-разрядных регистра, общих для всех

каналов: регистр режимов РгР и регистр состояний РгС, причем РгР доступен

процессору только по записи, а РгС только по чтению.

Выводы контроллера можно разделить на две группы : (а) линии связи с

ВУ и (б) линии связи с системной шиной МПС.

Линии связи с системной шиной передают стандартные сигналы управле-

ния, которые используются традиционно: RESET, READY и др. (контроллер

анализирует состояние готовности и при необходимости, как и МП, вставляет

такты ожидания Tw). Контроллер синхронизируется внешним системным син-

хросигналом.

Контроллер ПДП может работать в двух режимах: в режиме программи-

рования и в режиме ПДП.

В режиме программирования контроллер является пассивным устрой-

ством и процессор осуществляет с ним связь как с обычным ВУ. В режим ПДП

контроллер переходит при поступлении запроса DRQ незамаскированного ка-

нала. Он вырабатывает запрос микропроцессору HRQ на захват шины и, полу-

чив подтверждение HLDA, передает сигнал активизации DACK\ выбранному

ВУ и начинает циклы ПДП.

В цикле ПДП контроллер выдает содержимое РгА на линии A[7:0]

(младший байт) и линии D[7:0] (старший байт в сопровождении строба ADSTB)

и, в зависимости от режима работы канала, одну из пар управляющих сигналов

RDM\ + WRIO\ или RDIO\ + WRM\ (в режиме контроля управляющие сигналы

не выдаются). Режим ПДП завершается при снятии сигнала DRQ. Быстродей-

ствие и другие свойства МПС определяются не только устройствами вво-

да/вывода, но и в значительной мере имеющейся системой памяти.

ВОПРОСЫ ДЛЯ САМОПРОВЕРКИ

1. Какие имеются способы передачи информации и в чем за-

ключаются их различия?

2. Каковы отличия интерфейсов RS-232 от интерфейсов PCI?

3. Назовите методы ввода/вывода информации.

4. Каковы недостатки и преимущества методов ввода/вывода по

опросу и по прерыванию?

5. Каковы отличия «радиальных» и «векторных» систем преры-

ваний?

6. Каково назначение контроллера прерываний?

7. Каково назначение контроллера ПДП?

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 86: 466.основы микропроцессорной техники  учебное пособие

86

5. УСТРОЙСТВА ПАМЯТИ МПС

Микропроцессорная система содержит, как правило, внутренние

и внешние устройства памяти. Внешней памятью называют накопи-

тели на магнитных, оптических дисках, лентах и т.п. Внутренняя па-

мять выполняется, чаще всего, на микросхемах. Внутренняя или ос-

новная память может быть двух типов: постоянные и оперативные

запоминающие устройства (соответственно ПЗУ и ОЗУ).

5.1. Организация памяти

В зависимости от типа запоминающего устройства элементом

памяти (ЭП) может быть триггер, миниатюрный конденсатор, транзи-

стор с "плавающим затвором", плавкая перемычка (или ее отсут-

ствие). Упорядоченный набор ЭП образует ячейку памяти (ЯП). Ко-

личество элементов памяти в ячейке (длина слова) обычно кратно 2n

(1,4,8,16,32,64..), причем величины свыше восьми достигаются обыч-

но группировкой микросхем с меньшим количеством ЭП.

Количество ЭП в ЯП иногда называется длиной слова. Основ-

ными характеристиками микросхем памяти являются информацион-

ная емкость, быстродействие и энергопотребление. Емкость ЗУ чаще

всего выражается в единицах, кратных числу 210

= 1024 = 1K. Для

длины слова равной биту (одному двоичному разряду) или байту

(набору из восьми бит) эта единица называется килобит или килобайт

и обозначается Кбит или Кбайт (Kb или KB).

Каждой из 2n ячеек памяти однозначно соответствует n- разряд-

ное двоичное число, называемое адресом ЯП. Так, адресом 511-й

ячейки будет число 1 1111 1111(BIN) = 511(DEC) = 1FF(HEX). В

программах адреса употребляются в 16-м формате. Емкость ЗУ часто

выражается произведением двух чисел 2n×m, где 2

n - число ячеек па-

мяти, а m - длина слова ячейки. Например, микросхема 537РУ17

имеет емкость памяти 8K× 8, т.е. 8192 ячейки размером один байт. В

некоторых справочниках для этой же микросхемы приводится обо-

значение емкости одной цифрой 6 Кбит, что никак не отражает внут-

реннюю организацию этой микросхемы, такую же емкость могут

иметь микросхемы с организацией 16K× 4, 64K× 1 .

Если требуется увеличить разрядность ячейки памяти, напри-

мер хранить данные размером в n бит, а длина слова ячейки памяти

m бит (n>m), то прибегают к наращиванию длины слова. Делается

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 87: 466.основы микропроцессорной техники  учебное пособие

87

это путем объединения n / m - микросхем в группы, причем все од-

ноименные входы, кроме информационных, соединяются между со-

бой. Так, если требуется динамическая память емкостью 256K с дли-

ной слова, равной байту, то необходимо объединить 8 микросхем ти-

па 565РУ7.

Распределение адресного пространства выполняется различ-

ными методами в разных МПС.

Объем адресного пространства МПС с интерфейсом "Общая

шина" определяется главным образом разрядностью шины адреса,а

также номенклатурой управляющих сигналов интерфейса. Управля-

ющие сигналы могут определять тип объекта, к которому произво-

дится обращение (ОЗУ, ВУ, стек, специализированные ПЗУ и др.).

Если МП не выдает сигналов, идентифицирующих пассивное устрой-

ство (или они не используются в МПС), для селекции используются

только адресные линии. Число адресуемых объектов составляет в

этом случае 2k, где k - разрядность шины адреса. Такое адресное про-

странство называется "единым". Иногда говорят, что ВУ в едином

адресном пространстве "отображены на память", т.е. адреса ВУ зани-

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

едином адресном пространстве МПС на базе МП i8080 и распределе-

ние адресного пространства показаны на рис.5.1.

Рис. 5.1. Структура единого адресного пространства

При небольших объемах памяти в МПС целесообразно применять неко-

торые адресные линии непосредственно в качестве селектирующих (рис. 5.2),

что позволяет уменьшить объем оборудования МПС, исключив селектор адре-

са. Однако, при этом адресное пространство используется крайне неэффектив-

но.

Процессор-

ный модуль

ОЗУ

ПЗУ

ВУ

АВ15:0

Селектор адреса

CS CS CS

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 88: 466.основы микропроцессорной техники  учебное пособие

88

Рис. 5.2. Использование адресных линий для прямой селекции устройств

Применяя информацию о типе устройства, к которому идет обращение,

можно одни и те же адреса назначать для разных устройств, осуществляя се-

лекцию с помощью управляющих сигналов.

Большинство МП выдают в той или иной форме информацию о типе об-

ращения. В результате этого в большинстве интерфейсов присутствуют отдель-

ные управляющие линии для обращения к памяти и вводу/выводу, реже - стеку

или специализированному ПЗУ. Поэтому суммарный объем адресного про-

странства МПС может превышать величину 2k.

При необходимости расширить объем памяти за пределы адрес-

ного пространства можно воспользоваться так называемым "диспет-

чером памяти". В простейшем случае он представляет собой про-

граммно-доступный регистр, который должен располагаться в про-

странстве ввода/вывода [16]. В него заносится номер активного в

данный момент банка памяти, причем объем банка может равняться

объему адресного пространства МП 2k.

Очевидно, в каждый момент времени процессору доступен

только один банк. При необходимости перехода в другой банк памяти

МП должен предварительно выполнить программную процедуру

(чаще всего 1 команду) перезагрузки содержимого номера банка. К

развитию этой идеи можно отнести механизм сегментации памяти в

16- и 32-разрядных МП фирмы INTEL.

Организация и работа ОЗУ и ПЗУ выполняются по-разному.

Ниже рассматриваются устройство и работа различных ПЗУ и ОЗУ.

5.2. Постоянные запоминающие устройства

Постоянные запоминающие устройства на электрических схе-

мах обозначаются буквами ROM (Read Only Memory). Они могут

быть:

• масочными (ROM) - запрограммированными на заводе изгото-

вителе,

• однократно программируемыми пользователем (PROM),

Процессорный

модуль

ОЗУ

ПЗУ

ВУ

АВ15:0

C

S

C

S

C

S

10 10 А10 А11 А12

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 89: 466.основы микропроцессорной техники  учебное пособие

89

• многократно программируемыми пользователем (репрограм-

мируемыми РПЗУ) с ультрафиолетовым стиранием EPROM или c

электрическим стиранием EEPROM.

• и в виде так называемой флэш-памяти (Flash).

Широкое распространение нашли также программируемые ло-

гические матрицы и устройства PLM, PML, PLA, PAL, PLD, FPGA и

т.д. с большим выбором логических элементов и устройств на одном

кристалле.

В ПЗУ хранятся управляющие работой ЭВМ стандартные про-

граммы, константы, таблицы символов и другая информация, кото-

рая сохраняется и при выключении компьютера.

Масочные ПЗУ (ROM) получают в заводских условиях с по-

мощью специальных масок, задающих способ соединения отдельных

элементов памяти на общем полупроводниковом кристалле. В даль-

нейшем изменить записанную таким способом программу нельзя.

Однократно программируемое ПЗУ (OTP,PROM) имеют

набор плавких перемычек, которые в процессе программирова-

ния у пользователя пережигаются импульсами тока.

Репрограммируемое ПЗУ (EPROM, EEPROM) допускают

многократное, до сотен тысяч, циклов перепрограммирования на ра-

бочем месте пользователя. Это свойство обеспечивается при-

менением элементов памяти (ЭП) на МОП-транзисторах с

"плавающим затвором" (толщина изоляции "плавающего затво-

ра" порядка 200 нм). Информация считается стертой, если на

выходах всех ЭП высокий уровень сигнала. В режиме програм-

мирования на выбранный по адресной шине ЭП, куда необхо-

димо записать ноль, подается импульс. Стирание осуществляется

ультрафиолетовым излучением либо электрическим сигналом. При

этом все ячейки переводятся в состояние "1". Записанная ин-

формация сохраняется в течение нескольких лет.

Флэш-память основана на применении МНОП-транзисторов с

комбинированной нитридно-оксидной изоляцией затвора. У этих

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 90: 466.основы микропроцессорной техники  учебное пособие

90

транзисторов при отключении источника питания накопленные заря-

ды вблизи поверхности раздела слоев нитрида и двуокиси кремния

сохраняются в течение более 10 лет. Флэш-память отличается высо-

кой скоростью доступа (85 нс) и быстрым стиранием записанной ин-

формации электрическим сигналом. Технологию флэш-памяти разра-

ботала фирма Intel. Применяют также так называемую энергонезави-

симую память NVRAM - NonVolatile Memory. Всякая память, сохра-

няющая данные при отключении внешнего источника питания может

считаться энергонезависимой, однако этот термин больше утвердился

за статической оперативной памятью с встроенной в микросхему ли-

тиевой батарейкой большой емкости.

5.3. Оперативные запоминающие устройства

Оперативные запоминающие устройства на электрических

схемах обозначаются RAM (Random Access Memory). В ОЗУ коды в

соответствии с решаемыми задачами постоянно изменяются и пол-

ностью пропадают при выключении питания. ОЗУ подразделяются

на статическую память SRAM, динамическую DRAM и регистровую

RG.

В ОЗУ статического типа SRA в качестве элементов памяти ис-

пользуются простейшие RS- или D-триггеры. Такие ОЗУ характери-

зуются весьма высоким быстродействием и используются в наиболее

«узких» местах МПС, например для сверхоперативной памяти при

кратковременном хранении промежуточных результатов, в различ-

ных регистрах, кэш-памяти и т.п. Статическая память может быть

синхронной и асинхронной. В асинхронной памяти выдача и прием

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

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

В ОЗУ динамического типа DRAM в качестве элемента памяти

используется микроконденсатор в интегральном исполнении, разме-

ры которого значительно меньше D-триггера статической памяти. По

этой причине при одинаковых размерах кристалла информационная

емкость DRAM выше, чем у SRAM. При этом число адресных входов

и габариты должны увеличиться. Чтобы не допустить этого, адресные

линии внутри микросхемы разбиваются на две группы, например

старшая и младшая половина. Две одноименные k-линии каждой

группы подключаются к двум выходам внутреннего k-го демульти-

плексора "1 в 2", а его вход соединяется с k-м адресным входом мик-

росхемы. Число адресных входов, при этом уменьшается в два раза,

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 91: 466.основы микропроцессорной техники  учебное пособие

91

но зато передача адреса в микросхему производится, во-первых, в два

приема, что несколько уменьшает быстродействие, и, во-вторых, тре-

буется дополнительный внешний мультиплексор адреса. В процессе

хранения бита конденсатор разряжается. Чтобы этого не допустить,

заряд необходимо поддерживать (обеспечивать регенерацию храни-

мой информации).

Запоминающая ячейка динамического типа хранит информацию

в виде заряда емкости. Ток утечки обратносмещенного p-n перехода

составляет не более 0,1 нA, а емкость - 0,1..0,2 пФ, следовательно по-

стоянная времени разряда - более 1 мС. Поэтому через каждые 1..2 мс

требуется производить подзаряд емкостей запоминающих элементов

- регенерацию динамической памяти. В динамических ОЗУ чаще используется так называемая "строчная реге-

нерация", при которой в одном цикле регенерируются все элементы, располо-

женные в одной строке прямоугольной матрицы накопителя. Любое обраще-

ние к запоминающей ячейке (запись или чтение) осуществляет ее регенерацию

и одновременно регенерирует все ячейки, расположенные в той же строке

накопителя. Для обеспечения гарантированной сохранности информации в дина-

мическом ОЗУ при работе МПС вводятся специальные циклы регенерации

- обращения к ОЗУ по последовательным адресам строк. В большинство

динамических ОЗУ адрес ячейки подается за два приема: сначала адрес строки,

который запоминается во внутреннем регистре ОЗУ, потом по тем же линиям

адрес столбца. Каждая передаваемая по мультиплексированным линиям часть

адреса сопровождается соответствующим управляющим сигналом RAS, CAS.

Для регенерации накопителя достаточно провести обращение только к

последовательным строкам - каждый цикл обращения для регенерации может

состоять только из передачи адреса строки, поэтому для полной регенерации

накопителя объемом 16 K (матрица 128 128) достаточно 128 тактов. Накопи-

тели большего объема реализуют на неквадратных матрицах, чтобы уменьшить

число строк и сократить время регенерации. Так, накопитель объемом 64 K

имеет матрицу 128 512.

Различают несколько способов организации регенерации дина-

мических ОЗУ в МПС. Регенерация "по таймеру"выполняют с помощью специального тайме-

ра регенерации, который каждые 2 мс формирует сигнал, блокирующий обра-

щение МП к памяти и запускающий процедуру регенерации. Схема управления

регенерацией включает счетчик адреса регенерации, триггер регенерации и

мультиплексор адреса. Недостатком такого способа регенерации является значительная потеря

времени на регенерацию - до нескольких процентов времени работы МПС,

причем это время может возрастать с ростом объема памяти МПС. Таким обра-

зом, использование метода регенерации по таймеру снижает производитель-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 92: 466.основы микропроцессорной техники  учебное пособие

92

ность МПС, так как при выполнении регенерации МП пребывает в состоянии

ожидания. При "прозрачной" регенерации выбираются такие моменты времени,

когда МП не занимает системную шину. Однажды начав регенерацию, совсем

не обязательно проводить ее полностью. Циклы регенерации могут чередовать-

ся с процессорными циклами, главное, чтобы процесс регенерации накопителя

завершился за время, не превышающее 2 мс. Многие МП формируют специ-

альные сигналы, отмечающие занятость шины. Эти сигналы можно использо-

вать для управления триггером регенерации. Если МП (например, i8080) не

формирует сигнала занятости магистрали, то такой сигнал можно сформиро-

вать специальной внешней схемой.

Главным достоинством метода прозрачной регенерации является отсут-

ствие простоев МП при регенерации ОЗУ.

Регенерация "размещением данных" выполняется в некоторых доста-

точно редких частных случаях, когда можно воспользоваться частью единого

ОЗУ МПС, к которому МП регулярно обращается, например, для поддержания

изображения на экране. Это достигается соответствующим подбором адресов

так, чтобы каждое обращение к области ОЗУ дисплея, помимо регенерации

изображения, регенерировала и всю память МПС.

Динамическая память может быть синхронной и асинхронной.

В асинхронной памяти выдача и прием информации определяется

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

прием информации тактируется. Все DRAM имеют несколько режи-

мов работы – чтения/записи страничный режим чтения/записи ре-

жим регенерации.

Динамическое ОЗУ отличается от статического мультиплекси-

рованием адресных входов, необходимостью регенерации хранимой

информации, повышенной емкостью (до нескольких Мбит), более

сложной схемой управления, меньшим быстродействием.

Для повышения быстродействия памяти в последнее время на

одном кристалле вместе с большим по объему памяти DRAM разме-

щают небольшой по объему SRAM. Такие SDRAM, имеющие на од-

ном кристалле 4 Мбайт DRAM и всего 16 кбайт SRAM выпускают

фирмы «Samsung», «Ramtron» и другие.

5.4. Перспективы совершенствования устройств памяти

Многие десятилетия полупроводниковая промышленность ищет

«универсальную» микросхему памяти, которая была бы дешевой,

быстродействующей, маломощной и вдобавок сохраняла бы данные

при отключении питания.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 93: 466.основы микропроцессорной техники  учебное пособие

93

Пока этим требованиям в основном удовлетворяет флэш-память.

Она выпускается в виде отдельных микросхем и встраивается в одно-

кристальные микроконтроллеры. Так, на выставке «Электроника

2000» был представлен микроконтроллер с интегрированным флэш

ЭСППЗУ объемом 1 Мбайт. Технология флэш-памяти основана на

применении транзисторных ячеек с плавающим затвором. Однако

архитектура плавающих затворов достигает своих ограничений при

размере элементов менее 90 нм, к которому уже приблизились вплот-

ную.

В последнее время разработчиков электронной аппаратуры все

большее внимание привлекают новые типы энергонезависимых ЗУ,

сопоставимых по быстродействию со статическими ОЗУ и выдержи-

вающих практически неограниченное число циклов перезаписи дан-

ных на протяжении многих лет (флэш-память начинает терять дан-

ные через 106 циклов).

Одной из первых была сегнетоэлектрическая память FRAM,

которая уже сегодня используется в электрических счетчиках, сете-

вых серверах и ряде других устройств.

Гораздо больше перспективы у магниторезистивных ОЗУ

MRAM, у которых для хранения данных используется эффект изме-

нения магнитного сопротивления материала. Основными преимуще-

ствами этих ОЗУ являются быстрый доступ и неограниченное коли-

чество циклов программирования и стирания (много больше 1015

). По

оценкам специалистов время записи может составить 2,3 нс (на 3 по-

рядка меньше, чем у самых быстродействующих схем флэш-памяти и

в 20 раз меньше, чем у динамических ОЗУ). Кроме этих преимуществ

важное значение имеет высокая радиационная стойкость, малая вели-

чина тока считывания (на 2 порядка меньше, чем у ДОЗУ) и освоен-

ность технологии магнитных материалов (тех же, что и в магнитных

накопителях). Совершенствованием технологии MRAM занимается много фирм. Фирма

IBM совместно с Infineon в 2003 году представила опытный образец MRAM-

матрицы емкостью 128 кбит, выполненной по стандартной 0,18 - мкм техноло-

гии логических микросхем с трехслойными медными межсоединениями. Пло-

щадь ее базовой ячейки памяти составляет 1,4 мкм2, время выборки и записи

одинаковы - 5 нс. На ближайшее будущее фирмы планируют освоение опытных

образцов 256 Мбит MRAM.

Другая фирма Cypress уже выпускает микросхемы СУ9С6264 с MRAM-

ячейками памяти, которые полностью сопоставимы со статическими ОЗУ

8К × 8 бит и могут заменить ЭСРПЗУ, флэш-память и FRAM.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 94: 466.основы микропроцессорной техники  учебное пособие

94

Совершенно иное направление в разработке энергонезависимой

памяти выбрали в фирме Ovonyx. Работа так называемой унифици-

рованной памяти фирмы Ovonyx OUM основана на эффекте изме-

нения фазы исходного материала (халькогенида), применявшегося

для создания CD- и DVD- дисков с возможностью перезаписи. К до-

стоинствам OUM-памяти относятся простота структуры, радиацион-

ная стойкость, малая площадь ячейки памяти возможность неразру-

шающего считывания и селективной перезаписи данных без стира-

ния, малая потребляемая мощность и большое число циклов переза-

писи – более 1013

. На сегодняшний день наибольший объем OUM-

памяти составляет 4 Мбит, минимальный размер элементов схемы –

0,18 мкм.

Самую высокую плотность записи данных смогут обеспечить

полимерные сегнетоэлектрические ОЗУ (PFRAM). Специалистами

фирмы Thin Film Electronics получена специфическая группа полиме-

ров с двумя стабильными состояниями поляризации. Это позволяет

программировать память путем изменения поляризации пленки, за-

ключенной между взаимно перпендикулярными металлическими ши-

нами, и обеспечивает энергонезависимость памяти. Разработанные на

фирме тонкие пленки полимера (толщиной менее 0,1 мкм) можно

наносить на любую подложку или поверх друг друга с помощью

обычных промышленных процессов. Формирование многослойных

структур позволяет получать ранее недостижимо малые геометриче-

ские размеры памяти. При этом увеличение емкости памяти не влечет

за собой существенного увеличения потребляемой мощности (энер-

гия считывания или записи одного разряда информации не превыша-

ет

1 пДж). Однако из-за сложности обработки термочувствительного

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

производство PFRAM начнется не раньше, чем лет через пять.

Сравнительно недавно была предложена ячейка памяти с про-

граммируемой металлизацией PMC, в которой используется твер-

дотельный электролит, заключенный между проводящим слоем хи-

мически неактивного материала и тонкой пленкой серебра. Этот

весьма перспективный тип памяти еще не освоен в производстве.

Все новые типы энергонезависимой памяти имеют многообе-

щающие характеристики. Однако широкое применение получит тот

или те типы, которые окажутся самыми дешевыми и простыми в из-

готовлении.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 95: 466.основы микропроцессорной техники  учебное пособие

95

ВОПРОСЫ ДЛЯ САМОПРОВЕРКИ

1. Каковы отличия динамического ОЗУ от статического?

2. Перечислите виды ПЗУ.

3. Перечислите виды ОЗУ.

4. Для чего выполняется регенерация динамической памяти?

5. Почему информационная емкость ОЗУ DRAM выше, чем у ОЗУ

SRAM?

ЗАКЛЮЧЕНИЕ

За сравнительно короткий срок (около трех десятков лет) мик-

ропроцессорная техника прошла путь от создания единичных образ-

цов до массового внедрения во все сферы человеческой деятельности.

Были разработаны сотни различных типов МП и ОМК, выпускаемых

миллионами штук в год. Созданы принципиально новые виды техни-

ки (компьютеры, мобильные телефоны, цифровая фото-теле-

аудиоаппаратура и т.д.) При этом смена поколений происходила че-

рез каждые 3-4 года. Особенно наглядно это на примере развития

персональных ЭВМ (за 20 лет – 6 поколений компьютеров).

Совершенствование МПТ стало возможным благодаря успехам

электронной промышленности. За эти годы существенно изменилась

технология изготовления полупроводниковых микросхем, что позво-

лило создать микропроцессоры, содержащие миллионы транзисторов

на одном кристалле и работающие на частотах, измеряемых гигагер-

цами. Процесс совершенствования и дальнейшего внедрения МПТ в

жизнь современного общества продолжается и в настоящее время.

Однако становится очевидным, что возможности дальнейшего

увеличения производительности современных МПС в рамках класси-

ческой архитектуры уже практически исчерпаны. В настоящее время

они принципиально ограничиваются последовательной выборкой ко-

манд и данных из памяти. Один из способов роста пропускной спо-

собности шины данных состоит в увеличении числа параллельно пе-

редаваемых по ней битов.

Среди новейших архитектурных решений МПС наибольшие

надежды связывают с отказом от классической (последовательной)

модели вычисления и переходом к так называемым параллельным

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 96: 466.основы микропроцессорной техники  учебное пособие

96

вычислениям. При параллельных вычислениях применяется разбие-

ние основной программы на составные части, которые могут выпол-

няться отдельными микропроцессорами одновременно и независимо

друг от друга. В нужные моменты времени готовые результаты таких

параллельных вычислений передаются еще одному такому же микро-

процессору, который проделывает с ними необходимые операции и,

при необходимости, для продвижения к конечному результату может

вновь обращаться к группе параллельно работающих микропроцессо-

ров. Теоретически подобная конфигурация при увеличении числа па-

раллельно работающих микропроцессоров обеспечивает линейный

рост производительности всей системы.

Одним из первых элементов нового семейства таких микросхем,

предназначенных для построения МПС с параллельными вычислени-

ями, стала выпущенная в конце 1985 г. английской фирмой “Inmoc”

микросхема транспьютера Т414 (более совершенная ее версия –

Т800). Помимо основного транспьютера Т414 фирма “Inmos” также

предлагает несколько вспомогательных транспьютеров, среди кото-

рых арифметический транспьютер F424, графический транспьютер

G412, транспьютер контроллера жесткого диска М212 и др.

В МПС с новой нетрадиционной архитектурой используется

матричный принцип соединения транспьютеров, согласно которому

каждый из них располагается в ячейках матрицы и своими четырьмя

линиями связывается в транспьютере в соседних ячейках. В такой

МПС отдельные части процесса (исполняемой программы) выполня-

ются параллельно различными транспьютерами, и поэтому, чем

больше матрица, тем выше производительность системы. Конечно, не

всякие алгоритмы допускают их простое расчленение на параллельно

выполняемые части, но это отдельная задача, решение которой воз-

можно методами развивающейся теории параллельных вычислений.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 97: 466.основы микропроцессорной техники  учебное пособие

97

СПИСОК ИСПОЛЬЗОВАННОЙ И РЕКОМЕНДУЕМОЙ

ЛИТЕРАТУРЫ

1. Однокристальные микроЭВМ. - М.: МИКАП, 1994. – 400 с.

2. Гольденберг Л.М. и др. Цифровые устройства и микропроцес-

сорные системы. - М.: Радио и связь, 1992. – 256 с.

3. Старостин О.В. Зарубежные микропроцессоры и их аналоги.-

М.: Радиософт, 2001. - Т. 1 – 6.

4. Яценков В.С. Микроконтроллеры Microchip. – М.: Горячая

линия – ТЕДЕКОМ, 2002. – 296 с.

5. Предко М. Справочник по PIC–микроконтроллерам. – М.:

ДМК 2002. – 512 с.

6. Андрэ Ф. Микроконтроллеры семейства SX фирмы "Scenic". –

М.: Додэка 2002. – 272 с.

7. Евстигнеев А.В. Микроконтроллеры AVR семейства Classic

фирмы "Atmel". – М.: Додэка, 2002. – 288 с.

8. Ремизевич Т.В. Микроконтроллеры для встраиваемых прило-

жений: от общих подходов – к семействам НС05 и НС08 фирмы

Motorola. – М.: Додэка, 2002. – 272 с.

9. Каспер Э. Программирование на языке Ассемблера для мик-

роконтроллеров семейства i8051. – М.: Горячая линия – ТЕЛЕКОМ,

2003. – 191 с.

10. Микропроцессоры: Учеб. пособие для вузов. Ч.1–8 / П.В.

Нестеров, В.Ф. Шаньгин, А.Е. Костин и др./ Под ред. Л.Н. Преснухи-

на. – М.: Высш. шк., 1984 – 1985.

11. Вычислительная и микропроцессорная техника: Учеб. для

вузов / Э.В. Евреинов, Ю.Т. Бутыльский, И.А. Мамзелев и др.: Под

ред. Э.В. Евреинова. – М.: Радио и связь, 1991. – 464 с.

12. Калабеков Б.А. Микропроцессоры и их применение в систе-

мах передачи и обработки сигналов: Учеб. пособие для вузов. – М.:

Радио и связь, 1988. – 368 с.

13. Клингман Э. Проектирование микропроцессорных систем:

Пер. с англ. – М.: Мир, 1985.-272 с.

14. Алексеенко А.Г., Галицын А.А., Иванников А.Д. Проектиро-

вание радиоэлектронной аппаратуры на микропроцессорах: Про-

граммирование, типовые решения, методы отладки. – М. Радио и

связь, 1984. – 272 с.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 98: 466.основы микропроцессорной техники  учебное пособие

98

15. Каган Б.М., Сташин В.В. Основы проектирования микро-

процессорных устройств автоматики. - М.: Энергоатомиздат, 1987. –

304 с.

16. Микропроцессоры и микропроцессорные комплекты инте-

гральных микросхем: Справ. В 2 т. / В-Б. Абрайтис, Н.Н. Аверньянов,

А.И. Белоус и др./ Под ред. В.А. Шахнова. М.: Радио и связь, 1988. –

Т. 1, 2.

17. Микропроцессоры. Сборник примеров и задач / П.В. Несте-

ров, В.Ф. Шаньгин, А.Е. Костин и др./ Под ред. Л.Н. Преснухина. –

М.: Высш. шк., 1985. – 96 с.

18. Балашов Е.П., Григорьев В.Л., Петров Г.А. МикроЭВМ:-

Учеб. пособие для вузов. - Л.: Энергоатомиздат, 1984.- 224 с.

19. Соколов П.А. Микропроцессоры и основы построения мик-

роЭВМ:- Учеб. пособие. – М.: ВЗЭИС, 1986.-272 с.

20. Куньсянь Л., Дж. А. Франц, Р. Саймер. Цифровые процессо-

ры обработки сигналов серии ТМS 320 // ТИИЭР. – 1987. – Т. 75. - №

9. - С. 8 – 27.

21. Микропроцессоры: Справ. - Л.: Судостроение, 1988.- 272 с.

22. Сташин В.В., Урусов А.В., Мологонцева О.Ф. Проектирова-

ние цифровых устройств на однокристальных микроконтроллерах. –

М.: Энергоатомиздат, 1990. – 224 с.

23. Гуртовцев А.Л., Гудыменко С.В. Программирование для

микропроцессоров. – Минск: Высш. шк., 1989. – 352 с.

24. Цифровой процессор обработки сигналов TMS 32010 и его

применение / Под ред. А.А. Ланиэ. – Л.: ВАС, 1990. – 296 с.

25. В. В. Гребнев. Однокристальные микроЭВМ семейства АТ89

фирмы Atmel. ЭФО. - СПб, 1998. - 76 с.

26. Микропроцессорные системы: Учеб. пособие для вузов/Под

общ. ред. Д.В. Пузанкова - СПб.: Политехника, 2002. - 934 с.

27. Ульрих В.А. Микроконтроллеры PIC16X7XX: – СПб.: Наука

и техника, 2002. – 319 с.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 99: 466.основы микропроцессорной техники  учебное пособие

99

ПРИЛОЖЕНИЯ

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 100: 466.основы микропроцессорной техники  учебное пособие

100

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 101: 466.основы микропроцессорной техники  учебное пособие

101

Приложение 2

Основные характеристики некоторых ОМК семейства MCS-51

ТИП

Тактовая

частота,

МГц

FLASH,

кбайт

EEPROM,

кбайт

SRAM,

байт Интерфейсы Таймер

AT89C2051 24 2 - 128 UART 2х16-bit

AT89C4051 24 4 - 128 UART 2х16-bit

AT89C51 24 4 - 128 UART 2х16-bit

AT89LV51 12 4 - 128 UART 2х16-bit

AT89C2052 24 8 - 256 UART 3х16-bit

AT89LV52 12 8 - 256 UART 3х16-bit

AT89C55WD 33 20 - 256 UART 3х16-bit

AT89LV55 12 20 - 256 UART 3х16-bit

AT89C5132 40 64 - 2500 UART, USB,

SPI, I2S

3х16 bit

WDT

AT89S51 33 4 - 128 UART 2х16-bitWDT

AT89LS51 16 4 - 128 UART 2х16-bitWDT

AT89S52 33 8 - 256 UART 3х16-bitWDT

AT89S8252 24 8 2 256 UART,SPI 3х16-bitWDT

AT89LS8252 12 8 2 256 UART,SPI 3х16-bitWDT

AT89S53 24 12 - 256 UART,SPI 3х16-bitWDT

AT89LS53 12 12 - 256 UART,SPI 3х16-bitWDT

T89C51RB2M 40 16 - 1280 UART,SPI 3х16-bitPCAWDT

AT89C51IC2 40 32 - 1280 UART,SPI,

I2C

3х16-bitPCAWDT

AT89C51AC2 40 32 2 1280 UART 3х16-bitPCAWDT

AT89C51RD2M 40 64 - 1280 UART 3х16-bitPCAWDT

AT89C51CC01 40 32 2 1280 UART,CAN 3х16-bitPCAWDT

AT89C51SND1 20 64 - 2304

UART, IDE,

USB1.1, SPI, I2S,

MP3 Decoder

2х16-bitWDT

КМОП-микроконтроллер АТ89С2051совместим по системе команд и по

выводам со стандартными приборами семейства MCS-51. Микроконтроллер

содержит 2 Кбайта флэш-памяти, 128 байтов ОЗУ, 15 линий ввода/вывода, один

16-разрядный таймер/счетчик событий, полнодуплексный порт UART, пять

векторных прерываний, встроенный прецизионный аналоговый компаратор,

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 102: 466.основы микропроцессорной техники  учебное пособие

102

встроенные генератор и схему формирования тактовой последовательности.

Программирование флэш-памяти программ ведется с использованием напряже-

ния 12 В, ее содержимое может быть защищено от несанкционированных запи-

си/считывания. Имеется возможность очистки флэш-памяти за одну операцию,

возможность считывания встроенного кода идентификации. Потребление тока

в активном режиме на частоте 12 МГц не превышает 15 и 5,5 мА при напряже-

нии питания 6 и 3 В, соответственно. В стоповом режиме потребление не пре-

вышает 100 и 20 мкА при напряжении питания 6 и 3 В соответственно.

В состав микроконтроллеров подсемейства AT89S53 включено новое

устройство SPI (Serial Peripheral Interface - последовательный периферийный

интерфейс, который может использоваться для программной загрузки). Всего в

этом подсемействе 12 модификаций ОМК: AT89S53-16AA, AT89S53-16JA,

AT89S53-16PA, AT89S53-24AC, AT89S53-24JC, AT89S53-24PC, AT89S53-24AI,

AT89S53-24JI, AT89S53-24PI, AT89S53-33AC, AT89S53-33JC, AT89S53-33PC.

Все ОМК содержат ПЗУ объемом 12 кбайт, ОЗУ объемом 256 байт, три обыч-

ных (16 бит) таймера/счетчика и один аппаратный сторожевой таймер (WDT),

девять векторов прерываний, один последовательный и четыре параллельных

порта ввода/вывода, SPI. Тактовая частота ОМК 16, 20 или 24 МГц. Регистро-

вое пространство ОМК AT89S53 расширено в сравнении с предшественниками.

Появились три регистра, обслуживающие SPI: SPCR (0D5H), SPSR (0AAH) и

SPDR (086H). Сторожевой таймер обслуживается регистром WCON (096H).

Микроконтроллеры AT89S53 допускают программирование с использо-

ванием как 12-, так и 5-вольтного интерфейса. Однако если у ОМК AT89C51,

AT89C52, AT89C55 для достижения подобной гибкости пришлось изготавли-

вать различные версии изделий, допускающих работу только с одним из интер-

фейсов, то каждый из ОМК семейства AT89S53 содержит обе эти возможно-

сти. Режим параллельного программирования, идентичный тому, который

предусмотрен для AT89C51, AT89C52, AT89C55, использует 12-вольтный сиг-

нал Upp. Пятивольтная загрузка, делающая возможным перепрограммирование

микроконтроллера в аппаратуре пользователя, использует для этого интерфейс

SPI.

ОМК AT89S8252, AT89LS8252 отличаются от ОМК AT89S53 объемом

размещенной на кристалле памяти программ (8 Кбайт) и наличием в нем внеш-

ней 2-килобайтной флэш-памяти данных, доступной по командам MOVX. Чис-

ло циклов программирования первой, как и у остальных контроллеров Atmel,

равно 1 тыс., ресурс второй увеличен до 100 тыс. циклов стирания/записи, по-

скольку данные обновляются гораздо чаще самой программы. Размещенная на

кристалле энергонезависимая внешняя память данных позволяет хранить кон-

станты, таблицы и другие данные, которые должны допускать возможность

оперативного изменения в процессе работы без потери их при выключении пи-

тания. Назначение выводов ОМК AT89S8252, AT89LS8252 - такое же, как у

AT89C51.

В состав подсемейства входят 22 ОМК. Выпускаются 12-, 16-, 24 и 33-

мегагерцевые модификации этих изделий. Объем ПЗУ - 8 Кбайт, ОЗУ -

256+2048 байт. Контроллеры содержат три обычных (16 бит) и один стороже-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 103: 466.основы микропроцессорной техники  учебное пособие

103

вой таймер WDT, девять векторов прерываний, 1 последовательный и 3 парал-

лельных порта ввода/вывода, SPI.

ОМК AT89S8252 и AT89LS8252 подобно AT89S53 допускают как парал-

лельное (12-вольтное), так и последовательное (пятивольтное) программирова-

ние, ориентированное на перепрограммирование ПЗУ в аппаратуре пользовате-

ля. Но есть и отличие. ОМК AT89S8252 и AT89LS8252 имеют два массива

флэш-памяти: внутреннюю память программ и внешнюю (с точки зрения си-

стемы команд), но находящуюся внутри кристалла памяти данных. Оба режима

программирования допускают занесение информации в тот и в другой массив.

Но если при последовательном программировании они находятся в разных ад-

ресных пространствах и для каждого из них предусмотрен свой набор команд

чтения/записи, то при параллельном их адресное пространство едино (память

команд занимает адреса с 0000H по 1FFFH, а флэш-память данных - с 2000H по

27FFH). Таким образом, в последнем случае пользователь имеет контроллер как

бы с 10-килобайтной внутренней памятью, подлежащей программированию.

При этом первые 8 Кбайт памяти содержат коды программ и таблицы констант,

а последние два - оперативные данные, которые могут изменяться самим кон-

троллером в процессе его работы.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 104: 466.основы микропроцессорной техники  учебное пособие

Приложение 3

Основные команды ОМК семейства МК-48

Мнемоника Код Описание

ADD

A,R0 68 Сложение содержимого аккумулятора

с: R0; R1 – содержимым регистров;

@R0; @R1 – содержимым ячеек памяти адрес ко-

торых находится в регистрах;

# DATA – непосредственными данными

(результат сложения заносится в аккумулятор)

A,R1 69

A,R2 6А

A,@R0 60

A,@R1 61

A,#DATA 03

ANL

A,R0 58 Логическое И содержимого аккумулятора

с: R0; R1 – содержимым регистров;

@R0; @R1 – содержимым ячеек памяти, адрес ко-

торых находится в регистрах;

# DATA – непосредственными данными

(результат заносится в аккумулятор)

A,R1 59

A,R2 5А

A,@R0 50

A,@R1 51

A,#DATA 53

CALL ADDRES 14 Вызов подпрограммы по адресу ADDRES

CLR

A 27

Установка нулевых значений содержимого аккуму-

лятора и флагов C; F0; F1

C 97

F0 85

F1 A5

DEC

A 07

Уменьшение значения содержимого операнда на

единицу

R0 C8

R1 C9

R2 CA

DJNZ R0,ADDR E8

Уменьшение значения операнда на единицу и пере-

ход к подпрограмме, расположенной по адресу

ADDRES, если содержимое операнда не равно 0.

INC

A 17

Увеличение значения содержимого операнда на

единицу

R0 18

R1 19

R2 1A

JMP ADDRES 04 Безусловный переход по адресу ADDRES

JMPP @A B3 Безусловный переход по адресу, заданному содер-

жимым аккумулятора

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 105: 466.основы микропроцессорной техники  учебное пособие

105

Окончание прил. 3

Мнемоника Код Описание

MOV

23

Пересылка содержимого второго операнда в содер-

жимое первого

A,PSW С7

A,R0 F8

A,R1 F9

A,T 42

PSW,A D7

R0,A A8

R1,A A9

R0,#DATA B8

R1,#DATA B9

@R0,A A0

@R1,A A1

@R0,#DATA B0

@R1,#DATA B1

T,A 62

MOVX

A,@R0 80

Пересылка содержимого внешней памяти, адресуе-

мой косвенно в аккумулятор и наоборот

A,@R1 81

@R0,A 90

@R1,A 91

NOP 00 Холостая операция

ORL

A,R0 48 Логическое ИЛИ содержимого аккумулятора

с: R0; R1 – содержимым регистров;

@R0; @R1 – содержимым ячеек памяти адрес ко-

торых находится в регистрах;

# DATA – непосредственными данными

(результат заносится в аккумулятор)

A,R1 49

A,R2 4А

A,@R0 40

A,@R1 41

A,#DATA 43

OUTL P1,A 39 Вывод содержимого аккумулятора в порт Р1

RET 83 Возврат из подпрограммы

RR A 77 Циклический сдвиг содержимого аккумулятора

вправо на один двоичный разряд

RL A E7 Циклический сдвиг содержимого аккумулятора

влево на один двоичный разряд

SEL 7RB0 C5

Выбор банка рабочих регистров RB1 D5

STOP TCNT 65 Остановка таймера-счетчика

STRT CNT 45 Запуск таймера/счетчика в режиме счета внешних

событий

STRT T 55 Запуск таймера/счетчика в режиме внутреннего

таймера

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 106: 466.основы микропроцессорной техники  учебное пособие

Приложение 4

Система команд ВЕ51

Система насчитывает 111 команд, из них 49 однобайтовых, 45 двухбайто-

вых и 17 трехбайтовых. Все команды выполняются за 1 или 2 машинных цикла

(12 тактов ALE) за исключением команд MUL и DIV, которые требуют 4 цикла.

Большинство 2-байтовых команд одноцикловые, а все 3-байтовые команды –

2-цикловые. Это объясняется тем, что за один машинный цикл может вводиться

до 2 байтов, программного кода. Все множество команд удобно разбить на 5

групп: пересылки (28), логической обработки (25), арифметической обработки

(24), передачи управления (17), булевого процессора (17). В процессе исполне-

ния команды влияют на ряд флажков-признаков результата, входящих в состав

регистра PSW (табл. 1). Признак Р устанавливается всякий раз, когда приемни-

ком результата служит аккумулятор, включая операции пересылки.

Таблица 1

Мнемоника Флажки

CY OV AC Мнемоника

Флажки

CY OV AC

ADD + + + CLR С 0 - - -

ADDC + + + CPL С + - -

SUBB + + + ANL C,bi + - -

MUL 0 + - ANL C,/bit + - -

DIV 0 + - ORL C,bit + - -

DA + - - ORL C,/bit + - -

RRC + - - MOV C,bit + - -

RLC + - - CJNE + - -

SET С 1 - - - -

Группа команд пересылки (табл. 2) содержит команды MOV, MOVC,

MOVX, команды обращения к стеку PUSH и POP, а также 2 команды обмена

ХСН и XCHD. Наиболее емкой инструкцией является команда MOV, которая

использует 4 способа адресации: регистровый (A, Rn, DPTR), прямой (direct),

косвенный (@Ri) и непосредственный (#data, #data 16). Для указания приемни-

ка служат 3 способа адресации (кроме непосредственного), для указания источ-

ника все 4. Трехбайтовая команда MOV direct, direct обеспечивает пересылку

между 2 любыми ячейками памяти, включая регистры МК. Тем не менее для

обмена с регистрами предусмотрены специальные 2- и 1-байтовый форматы:

MOV Rn, direct; MOV direct, Rn; MOV A, Rn.

Их использование позволяет существенно сократить длину программного

кода. Специальная команда MOV DPTR, #datal6 позволяет загрузить 16-

разрядный указатель DPTR значением data16.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 107: 466.основы микропроцессорной техники  учебное пособие

Таблица 2

Мнемоника Число

циклов Код

Флажки

СV.АС.F0.R

S.RS.ОV.P

Описание

MOV A,Rn 1 Е8 – EF - - - - - - + A < Rn, n = 0-7

MOV A,dircct 1 Е5 - - - - - - + А < (direct)

MOV A,@Ri 1 Еб - Е7 - - - - - - + A < (Ri), i = 0-1

MOV A, #data 1 74 - - - - - - + А < data

MOV Rn,A 1 F8 – FF - - - - - - - Rn < A, n = 0-7

MOV Rn,direct 2 А8 – AF - - - - - - - Rn < (direct), n = 0-7

MOV Rn,#data 1 78 - 7F - - - - - - - Rn < data, n = 0-7

MOV direct,A 1 F5 - - - - - - - (direct) < A

MOV direct, Rn 2 88 - 8F - - - - - - - (direct) < Rn, n = 0-7

MOV direct,direct 2 85 - - - - - - - (direct) < (direct)

MOV direct, @Ri 2 86 – 8 - - - - - - - (direct) < (Ri), i = 0-1

MOV direct, #data 2 75 - - - - - - - (direct) < data

MOV @Ri,A 1 F6 - F7 - - - - - - - (Ri) < A, i = 0-1

MOV @Ri,direct 2 А6 - А7 - - - - - - - (Ri) < (direct), i=0-1

MOV @Ri,#data 1 76 – 77 - - - - - - - (Ri) < data, i = 0-1

MOV DPTR,#data 16 2 90 - - - - - - - DPTR < data16

MOVC A,@A + DPTR 2 93 - - - - - - + A < CSEG(A + DPTR)

MOVC А,@А + РС 2 83 - - - - - - + A < CSEG(A + PC)

MOVX A,@Ri 2 Е2- ЕЗ - - - - - - + A < XSEG(P2:Ri). i = 0-1

MOVX A,@DPTR 2 Е0 - - - - - - + A < XSEG(DPTR)

MOVX @Ri,A 2 F2 - F3 - - - - - - - XSEG (P2:Ri) < A.

MOVX @DPTR,A 2 F0 - - - - - - - i = 0-1 XSEG(DPTR) < A

PUSH direct 2 С0 - - - - - - - + (SP) < (direct)

POP direct 2 D0 ± ± ± ± ± ± ± (direct) < (SP)

XCH A,Rn 1 С8 – CF - - - - - - + A - Rn, n=0-7

XCH A,direct 1 С5 - - - - - + A - (direct)

XCH A,@Ri 1 С6 - С7 - - - - - - + A - (Ri), i = 0-1

XCHD A,@Ri 1 D6 - D7 - - - - - - + A0-3 - (Ri)0-3, i = 0-1

При выполнении команды считывания данных из программной памяти

MOVC могут быть применены два способа адресации: по базе DPTR и относи-

тельный. В обоих случаях целое без знака смещение (индекс) хранится в акку-

муляторе. Приемником результата также служит аккумулятор. Команда дает

возможность выполнять быструю перекодировку по таблицам, осуществлять

доступ к массивам памяти. Обращение к внешней памяти осуществляется с по-

мощью команды MOVX. Обмен производится по байтам между аккумулятором

и ячейкой внешней памяти данных. Ячейка XSEG может быть адресована 2

способами: косвенно через 16-разрядный указатель DPTR и странично косвен-

но через 8-разрядный указатель Ri. i = 0-1. В последнем случае регистром стра-

ниц служит выходной регистр Р2. Операции PUSH и POP используют толь-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 108: 466.основы микропроцессорной техники  учебное пособие

ко прямой способ адресации, однако это не мешает им манипулировать

содержимым регистров, которые рассматриваются как ячейки памяти. Две ти-

повые операции обмена ХСН и XCHD дополняют одностороннюю пересылку

двусторонней. При выполнении операции ХСН обмену подлежат байты, при

XCHD - младшие тетрады байтовых операндов. Приведенная в табл. 3 группа

команд логических операций, содержит 3 типовые 2-местные операции: ANL -

логическое И. ORL - логическое ИЛИ и XRL - логическое исключающее ИЛИ.

Таблица 3

Мнемоника Число

циклов Код

Флажки СV.АС.

F0.RS.RS.ОV.P Описание

ANL A,Rn 1 58 - 5F - - - - - - + A < A AND Rn, n = 0-7

ANL A,direct 1 55 - - - - - - + А < А AND (direct)

ANL A,@Ri 1 56 – 57 - - - - - - + A < A AND (Ri), i = 0-1

ANL A,#data 1 54 - - - - - - + A < A AND data

ANL direct, A 1 52 - - - - - - - (direct) < (direct) AND A

ANL direct,#data 2 53 - - - - - - - (direct) < (direct) AND data

ORL A,Rn 1 48 - 4F - - - - - - + A < A OR Rn, n = 0-7

ORL A,direct 1 45 - - - - - - + A < A OR (direct)

ORL A,@Ri 1 46 – 47 - - - - - - + A < A OR (Ri), i = 0-1

ORL A,#data 1 44 - - - - - - + A < A OR data

ORL direct A 1 42 - - - - - - - (direct) < (direct) OR A

ORL direct, #data 2 43 - - - - - - - (direct) < (direct) OR data

XRL A,Rn 1 68 - 6F - - - - - - + A < A XOR Rn, n = 0-7

XRL A,direct 1 65 - - - - - - + A < A XOR (direct)

XRL A, @Ri 1 66 – 67 - - - - - - + A < A XOR (Ri), i = 0-1

XRL A,#data 1 64 - - - - - - + A < A XOR data

XRL direct, A 1 62 - - - - - - - (direct) < (direct) XOR A

XRL direct, #data 2 63 - - - - - - - (direct) < (direct) XOR data

CLR A 1 E4 - - - - - - + A < 0

CPL A 1 F4 - - - - - - - A < NOT A

RL A 1 23 - - - - - - - A7 < A6 < ... < А0 < A7

RLC A 1 33 + - - - - - + CY < A7 < A6 < ... < AO < CY

RR A 1 03 - - - - - - - А0 < A1 < ... < A7 < А0

RRC A 1 13 + - - - - - + CY < А0 < A1 < ... < A7 < CY

SWAP A 1 C4 - - - - - - - A4-7 - A0-3

Источником первого операнда и одновременно приемником результата

служит либо аккумулятор, либо прямо адресуемая ячейка памяти. Второй опе-

ранд задается одним из 4 основных методов адресации. В состав группы входит

также ряд одноместных операций: CLR - очистки, CPL - логического дополне-

ния (инверсия), а также RL, RLC, RR и RRC - операции циклического и расши-

ренного сдвигов вправо и влево. Все операции манипулируют содержимым

только аккумулятора. Сюда же включена операция обмена тетрад в аккумуля-

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 109: 466.основы микропроцессорной техники  учебное пособие

торе SWAP, которая может интерпре- тироваться как циклический сдвиг бай-

та на 4 разряда.

В состав группы команд арифметической обработки (табл. 4) входят: опе-

рация сложения ADD, сложения с учетом переноса ADDC, вычитания с учетом

займа SUBB, увеличения и уменьшения на единицу INC и DEC, десятичная

коррекция сложения в 2/10-коде упакованного формата DA. умножение MUL и

деление DIU. Операции выполняются над беззнаковыми целыми числами. В

операциях сложения и вычитания первым операндом и приемником результата

служит аккумулятор. В качестве второго операнда выступает либо рабочий ре-

гистр Rn (n = 0…7), выбранного регистрового банка, либо ячейка памяти дан-

ных, адресуемая прямо direct или косвенно @Ri (i = 0-1), либо непосредствен-

ные данные #data.

Таблица 4

Мнемоника Число

циклов

Код Флажки CY.AС.

F0.RS.RS.0V.P

Описание

ADD A,Rn 1 28 - 2F + + - - - + + A < A + Rn, n = 0-7

ADD A.direct 1 25 + + - - - + + A < A + (direct)

ADD A,@Ri 1 26 – 27 + + - - - + + A < A + (Ri), i = 0-1

ADD A,#data 1 24 + + - - - + + A < A + data

ADDC A,Rn 1 38 - 3F + + - - - + + A < A + Rn + CY, n=0-7

ADDC A,direct 1 35 + + - - - + + A < A + (direct) + CY

ADDC A, @Ri 1 36 – 37 + + - - - + + A < A + (Ri) + CY, i=0-1

ADDC A, #data 1 34 + + - - - + + А < A + data + CY

SUBB A, Rn 1 98 - 9F + + - - - + + A < A - Rn-CY, n = 0-7

SUBB A, direct 1 95 + + - - - + + A < A - (direct) - CY

SUBB A, @Ri 1 96 – 97 + + - - - + + A < A - (Ri) - CY, i = 0-1

SUBB A, #data 1 94 + + - - - + + A < A - data-CY

INC A 1 04 + + - - - + + A < A+1

INC Rn 1 08 - 0F - - - - - - - Rn < Rn+1, n = 0-7

INC direct 1 05 - - - - - - - (direct) < (direct) + 1

INC @Ri 1 06 – 07 - - - - - - - (Ri) < (Ri)+1, i = 0-1

INC DPTR 2 A3 - - - - - - - DPTR < DPTR+1

DEC A 1 14 - - - - - - + A < A-1

DEC Rn 1 18 - 1F - - - - - - - Rn < Rn-1, n = 0-7

DEC direct 1 15 - - - - - - - (direct) < (direct)-1

DEC @Ri 1 16 – 17 - - - - - - - (Ri) < (Ri)-1, i=0-1

MUL АВ 4 A4 0 - - - - + + BA < A x В

DIV AB 4 84 0 - - - - + + АВ < А/В

DA A 1 D4 + - - - - - + A < 2/10-коррекция А

Операции INC и DEC применимы к аккумулятору, одному из рабочих ре-

гистров или к ячейке памяти, адресуемой как прямо, так и косвенно. Кроме это-

го, операция увеличения на единицу может быть применена к содержимому ре-

гистра указателя DPTR. В операциях целочисленного умножения и деления без

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 110: 466.основы микропроцессорной техники  учебное пособие

знака участвуют аккумулятор и ре- гистр В. При умножении 8-разрядное

значение А умножается на 8-разрядное значение В, а 16-разрядный результат

записывается в пару ВА. При этом регистр В хранит старшую часть произведе-

ния. Флажок переполнения OV устанавливается, если произведение больше

255. При делении 8-разрядного значения А на 8-разрядное значение в частное

записывается в А, а остаток в В. При попытке деления на 0 устанавливается

флажок переполнения. Операция десятичной коррекции для сложения DA осу-

ществляется стандартным способом.

В составе группы команд передачи управления (табл.5) находятся коман-

ды перехода AJMP, LJMP, SJMP, JMP, условного перехода JZ, JNZ, CJNE, вы-

зова ACALL, LCALL, возврата RET, RETI и модификации с условным перехо-

дом DJNZ. Сюда же включена пустая команда NOP. В командах передачи

управления широко применяется относительная адресация, которая поддержи-

вает перемещаемые программные модули.

Таблица 5

Мнемоника Число

циклов Код Флаг С Описание

ACALL addr11 2 ааа10001 - + (SP) < PC, PC0-10 < addr11

LCALL addr16 2 12 - + (SP) < PC, РС < addr16

RET 2 22 - PC < (SP) -

RETI 2 32 - PC < (SP) -, конец прерывания

AJMP addr11l 2 ааа00001 - РС <10 < addr11

LJMP addrl6 2 02 - PC < addr16

SJMP rel 2 80 - PC < PC + rel

JMP @A + DPTR 2 73 - PC < DPTR + A

JZ rel 2 60 - Если А = 0, то PC < PC + rel

JNZ rel 2 70 - Если А . 0, то PC < PC + rel

CJNE A, direct, rel 2 В5 + Если А . (direct), то PC < PC + rel

CJNE A, #data, rel 2 В4 + Если A . data, то PC < PC + rel

CJNE Rn, #data, rel 2 В8 – BF + Если Rn . data,

то PC < PC + rel, n = 0-7

CJNE @Ri, #data, rel 2 В6 – В +- Если (Ri) . data,

то PC < PC + rcl, i = 0-1

DJNZ Rn, rel 2 D8 – DF - Rn < Rn-1, Если Rn . 0,

то PC < PC + rel, n = 0-7

DJNZ direct, rel 2 D5 - (direct) < (direct) - L Если (direct) . 0,

то PC < PC + rel

NOP 1 00 - Heт операции

В качестве относительного адреса выступает 8-разрядное смещение rel со зна-

ком, обеспечивающее ветвление от текущего положения PC в обе стороны на ±

127 байт.

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 111: 466.основы микропроцессорной техники  учебное пособие

Все эти типы адресации могут быть применены только к операции

перехода, а для операции вызова допустимы только прямой addr16 и внут-

ристраничный addr11 способы адресации. Во всех условных операциях может

использоваться только относительная адресация. Когда МК ВЕ51 опознает за-

прос на прерывание, она генерирует 1 из команд типа LCALL addr16, что авто-

матически обеспечивает запоминание адреса возврата в стеке. Однако в отли-

чие от ОМК серии ВЕ48 у ОМК ВЕ51 нет автоматически сохраняемой инфор-

мации о состоянии. При этом логика прерываний перестает срабатывать на за-

просы того уровня, который был принят к обслуживанию. Для понижения

уровня прерывания служит команда возврата из прерывания RETI, которая

кроме операции, эквивалентной RET, включает операцию разрешения преры-

вания данного уровня. К типовым условным операциям ОМК ВЕ51 относятся

также операции JZ и JNZ, JC и JNC. Две последние включены в группу буле-

вых.

Ряд команд, предназначенных для выполнения операций пересылки, про-

верки условий и логической обработки булевых (одноразрядных) переменных,

образует отдельную группу (табл. 6). В качестве одного из операндов они при-

меняют флажок переноса CY, в качестве другого прямо адресуемый элемент

пространства BSEG. Флажок CY при выполнении операций И и ИЛИ может

рассматриваться как булевый аккумулятор. В группу входят также операции

безусловного и условного переходов с относительным 8-разрядным смещением

rel. Условный переход может быть осуществлен как при установленном бите

JB, так и при сброшенном бите JNB.

Таблица 6

Мнемоника Число

циклов Код Флаг СY Описание

MOV C, bit 1 A2 + CY < BSEG(bit)

MOV bit,C 2 92 - BSEG(bit) < CY

CLR С 1 СЗ 0 CY < 0

CLR bit 1 С2 - BSEG(bit) < 0

SETB С 1 D3 1 CY < 1

SETB bit 1 D2 - BSEG(bit) < 1

CPL С 1 ВЗ + CY < NOT CY

CPL bit 1 В2 - BSEG(bit) < NOT BSEG(bit)

ANL C,bit 2 82 + CY < CY AND BSEG(bit)

ANL C,/bit 2 В0 + CY < CY AND NOT BSEG (bit)

ORL C,bit 2 72 + CY < CY OR BSEG(bit)

ORL C,/bit 2 А0 + CY < CY OR NOT BSEG (bit)

JC rel 2 40 - Если CY = 1, то SJMP rel

JNC rel 2 50 - Если CY = 0, то SJMP rel

JB bit,rel 2 20 - Если BSEG(bit) = 1, то SJMP rel

JNB bit,rel 2 30 - Если BSEG(bit) = 0, то SJMP rel

JBC bit, rel 2 10 - Если BSEG(bit) = 1, то SJMP rel и

BSEG(bit) < 0

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 112: 466.основы микропроцессорной техники  учебное пособие

ОГЛАВЛЕНИЯ

ПРЕДИСЛОВИЕ . . . . . . . . . 3

1. МИКРОПРОЦЕССОРНАЯ ТЕХНИКА. . . . . . 5

1.1. Основные узлы и системы микропроцессорной техники . 5

1.2. Общая структура МПС . . . . . . . 7

1.3. Архитектура микроЭВМ . . . . . . 11

2. МИКРОПРОЦЕССОРЫ . . . . . . . 16

2.1. Виды процессорных устройств . . . . . 16

2.2. Внутренняя архитектура микропроцессора . . . 21

2.3. Универсальные микропроцессоры . . . . . 24

2.4. Цифровые процессоры . . . . . . 30

3. ОДНОКРИСТАЛЬНЫЕ МИКРОКОНТРОЛЛЕРЫ . . 35

3.1. Структура однокристальных контроллеров . . . 36

3.2. Микроконтроллеры семейства МК-48 . . . . 38

3.3. Микроконтроллеры семейства MCS-51 фирмы Intel и

совместимые с ними . . . . . . . . 43

3.4. Микроконтроллеры INTEL MCS-96 . . . . 50 3.5. Микроконтроллеры фирмы Motorola . . . . 53

3.6. PIC– контроллеры . . . . . . . 55

3.7. AVR-контроллеры . . . . . . . 58

3.8. Разработка и отладка контроллеров . . . . 65

4. УСТРОЙСТВА ВВОДА/ВЫВОДА . . . . . 69

4.1. Cпособы передачи информации . . . . . 70

4.2. Методы ввода/вывода . . . . . . 76

4.3. Подсистема прямого доступа в память МПС . . . 82

5. УСТРОЙСТВА ПАМЯТИ МПС . . . . . . 86

5.1. Организация памяти . . . . . . . 86

5.2. Постоянные запоминающие устройства . . . 88

5.3. Оперативные запоминающие устройства . . . 90

5.4. Перспективы совершенствования устройств памяти . 92

ЗАКЛЮЧЕНИЕ . . . . . . .. . . 95

СПИСОК ИСПОЛЬЗОВАННОЙ И РЕКОМЕНДУЕМОЙ

ЛИТЕРАТУРЫ . . . . . . . . . 97

ПРИЛОЖЕНИЯ . . . . . . . . . 99

Приложение 1. Основные характеристики некоторых

AVR-контроллеров . . . . . . . 100

Приложение 2. Основные характеристики некоторых

ОМК семейства MCS-51 . . . . . . . 101

Приложение 3. Основные команды ОМК семейства

МК-48 . . . . . . . . . . 104

Приложение 4. Система команд ВЕ51 . . . . 106

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»

Page 113: 466.основы микропроцессорной техники  учебное пособие

Copyright ОАО «ЦКБ «БИБКОМ» & ООО «Aгентство Kнига-Cервис»