Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
мпс с 1 по 294.doc
Скачиваний:
13
Добавлен:
16.04.2019
Размер:
6.2 Mб
Скачать

3.4.5. Комбинирование защиты сегментов и страниц

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

Например, можно создать большой сегмент данных, состоящий из нескольких разде­лов, которые доступны только для чтения, в то время как другие разделы доступны и для чтения и для записи. В этом случае записи страничных директорий (или записи таблицы страниц) для разделов сегмента, которые доступны только для чтения, будут иметь разря­ды U/S и R/W установленными в ХО, указывая на отсутствие прав защиты для всех стра­ниц, описанных этой записью страничных директорий (или записью для страниц).

Этот механизм может быть использован, например, в UNIX - подобной ОС для специ­фикации большого сегмента данных, часть которого только читается (для разделяемых данных или ROM констант).

Это дает возможность в UNIX - подобных системах задавать «плоское» адресное про­странство как один большой сегмент, используя «плоские» указатели внутри этого адрес­ного пространства, есть возможность даже защитить разделяемые данные, разделяя фай­лы, отображаемые на виртуальное пространство и области супервизора.

Глава 4

8-РАЗРЯДНЫЕ МИКРОКОНТРОЛЛЕРЫ

4.1. Структура современных 8-разрядных микроконтроллеров

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

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

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

Базовый функциональный блок включает:

  • центральный процессор;

  • внутренние магистрали адреса, данных и управления;

  • схему формирования многофазной импульсной последовательности для тактирова­ния центрального процессора и межмодульных магистралей;

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

Базовый функциональный блок принято называть процессорным ядром МК. Процессор­ное ядро обозначают именем семейства МК, основой которого оно является. Например, ядро НС08 - процессорное ядро семейства Motorola MC68HC08, ядро MCS-51 - ядро семейства МК Intel 8xC51, ядро PIC16 - процессорное ядро Microchip PIC16.

Изменяемый функциональный блок включает модули различных типов памяти, мо­дули периферийных устройств, модули генераторов синхронизации и некоторые до­полнительные модули специальных режимов работы МК. Представленный на уровне схемы электрической принципиальной, каждый модуль имеет выводы для подключе­ния его к магистралям процессорного ядра. Это позволяет на уровне функционального проектирования новой модели МК «подсоединять» те или иные модули к магистралям процессорного ядра, создавая, таким образом, разнообразные по структуре МК в пре­делах одного семейства. На уровне топологического проектирования ИС МК, объеди­ненные в составе МК, модули размещают на одном полупроводниковом кристалле. Отсюда появилось выражение «интегрированные на кристалл» периферийные моду­ли. Совокупность модулей, которые разработаны для определенного процессорного ядра, принято называть библиотекой периферийных модулей. Библиотека каждого со­временного семейства МК включает модули пяти функциональных групп:

  1. модули памяти;

  2. модули периферийных устройств;

  3. модули встроенных генераторов синхронизации;

  1. модули контроля за напряжением питания и ходом выполнения программы;

  2. модули внутрисхемной отладки и программирования.

Термин «модуль памяти» в применении к МК стал использоваться на этапе перехода к новым технологиям резидентной памяти программ и данных. Энергонезависимая па­мять типа FLASH и EEPROM имеет не только режимы хранения и чтения информации, которая была в нее записана до начала эксплуатации изделия на этапе программирова­ния, но и режимы стирания и программирования под управлением прикладной програм­мы. Вследствие этого энергонезависимая память типа FLASH и EEPROM требует управ­ления режимами работы, для чего снабжена дополнительными схемами управления. Мас­сив ячеек памяти, доступных для чтения, стирания и записи информации, дополнитель­ные аналоговые и цифровые схемы управления, а также регистры специальных функций для задания режимов работы объединены в функциональный блок, который и носит на­звание модуля памяти. В настоящее время термин «модуль памяти» используется в рав­ной мере для всех типов резидентной памяти: ОЗУ и ПЗУ

.

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

Группа модулей периферийных устройств включает следующие основные типы:

  • параллельные порты ввода/вывода;

  • таймеры-счетчики, таймеры периодических прерываний, процессоры событий;

  • контроллеры последовательного интерфейса связи нескольких типов (UART, SCI, SPI, I2C, CAN, USB);

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

  • цифроаналоговые преобразователи (ЦАП);

  • контроллеры ЖК индикаторов и светодиодной матрицы.

Фирма «Intel» непрерывно совершенствовала МК с архитектурой MCS-51:

  • частота внутренней шины в последних моделях возросла до 3 МГц;

  • появились модели с объемом памяти программ 8, 16 и 32 Кбайта;

  • в составе МК появились новые периферийные модули (АЦП, программируемый счет­ный массив, сторожевой таймер).

Одновременно ряд других фирм разработали МК, программно совместимые с MCS-51, обладающие современными типами памяти программ и данных (Flash и EEPROM), имеющие расширенный набор периферийных модулей, работающие в расширенном диапазоне напряжения питания. Фирма «Intel» постепенно свернула производство 8-раз­рядных МК. В результате основными производителями в мире 51-го семейства оказа­лись фирмы «Philips», «Infineon», «Atmel», «Dallas Semiconductor», «Temic». В 1999 г. фир­ма «Analog Devices» представила совершенно новый МК Adu812 на основе 51-го ядра. Отличия в технических характеристиках встроенных модулей ЦАП и АЦП этого изделия столь велики, что семейство AduSxx было названо семейством интеллектуальных преоб­разователей или микроконверторами.

Одновременно с первым МК семейства MCS-51 появился первый МК популярного до настоящего времени семейства НС05 фирмы «Motorola». В рамках этого семейства фирма «Motorola» провозгласила и успешно реализует стратегию «заказных» МК. Многие моде­ли этого семейства своим рождением обязаны крупным потребителям, которые заказы­вали конфигурацию МК под конкретную продукцию. Сейчас семейство НС05 насчитыва­ет около 180 различных МК, начиная с простейшего 68HC05KJ1 в корпусе DIP16 и закан­чивая 128-выводным бескорпусным 68HC05L10 со встроенным контроллером управле­ния 960 сегментами ЖКИ. На протяжении всего своего еще не оконченного периода жиз­ни семейство НС05 является сильным и успешным оппонентом семейству MCS-51. Вы­полненное на основе принстонской архитектуры в противовес MCS-51 с гарвардской ар­хитектурой, это семейство демонстрирует, во-первых, многообразие возможных техни­ческих решений даже для очень несложных задач управления, во-вторых, успех страте­гии полного удовлетворения технических требований пользователя без избыточности в архитектуре и производительности. Долгое пребывание семейства НС05 на столь дина­мичном рынке МК определяется отнюдь не сверхбыстродействием (частота внутренней шины для большинства моделей равна 2 МГц) или уникальным набором команд. Причина успеха кроется в очень точной ориентации на различные сектора рынка массового потреб­ления. Широчайшее разнообразие периферийных модулей при неизменном, очень про­стом ядре НС05 позволяет разработчику для каждой задачи найти МК практически без избыточных ресурсов архитектуры, что обусловливает низкую стоимость изделия.

В дополнение к дешевым «заказным» МК семейства НС05 фирма «Motorola» еще в 1980-х гг. предложила семейство универсальных и более производительных МК семей­ства НС11. Это семейство насчитывает около 40 моделей. Процессорное ядро семейства НС11 отличается от НС05 возможностью выполнения операций над 16-разрядными опе­рандами, наличием дополнительных методов адресации, повышенной частотой внутрен­ней шины (до 4 МГц). МК семейства НС11 выгодно отличает наличие трех типов памяти на кристалле: однократно программируемого ПЗУ программ, статического ОЗУ данных и элек­трически программируемого и электрически стираемого ПЗУ данных.

В конце 1990-х годов фирма «Motorola» представила новое 8-разрядное семейство НС08, которое должно постепенно заменить МК семейства НС05 и стать новым «про­мышленным стандартом» 8-разрядных МК фирмы. Отличительные особенности и на­правления развития семейства НС08 перечислены ниже:

Высокопроизводительное 8-разрядное АЛУ. Увеличение производительности достигается повышением частоты обмена внутренней шины до 8,0 МГц, совмещением цикла

версии семейства AVR имеют в составе АЛУ аппаратный умножитель. Базовый набор ко­манд AVR содержит 120 инструкций. Большинство команд выполняется за один машин­ный цикл, производительность ряда моделей составляет 20 MIPS. Периферия AVR MK включает параллельные порты, таймеры-счетчики, различные последовательные интер­фейсы, АЦП, аналоговые компараторы. MK AVR подразделяются на три серии: