Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОМПТ Шарапов. А.В.doc
Скачиваний:
221
Добавлен:
10.05.2015
Размер:
3.94 Mб
Скачать

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

Закрытая архитектура современных 8-разрядных МК стала реализуемой лишь при условии интеграции на кристалл МК модулей памяти двух типов: энергонезависимого ЗУ памяти программ и ОЗУ памяти данных.

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

Различают пять типов ПЗУ:

  • ПЗУ масочного типа — mask-ROM. Самое простое, надежное, но экономически оправдано при партии в несколько десятков тысяч штук;

  • ПЗУ, однократно программируемое пользователем — OTPROM (One-Time Programmable ROM). Рекомендуется в изделиях, выпускаемых небольшими партиями;

  • ПЗУ, программируемое пользователем, с ультрафиолетовым стиранием — ЕPROM (Erasable Programmable ROM). Имеют высокую стоимость. Рекомендуется только в опытных образцах изделий;

  • ПЗУ, программируемое пользователем, с электрическим стиранием — ЕЕPROM (Electrically Erasable Programmable ROM). Побайтовое стирание и запись информации. Имеют ограниченную емкость;

  • ПЗУ с электрическим стиранием типа FLASH — FLASH ROM. Транзистор адресации каждого бита удален. Программирование и стирание осуществляется страницами (8, 16 или 32 байта) или блоками (до 60 Кбайт). Снижение стоимости и размеров делает FLASH ROM конкурентным даже с масочным ПЗУ.

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

ОЗУ РПД всегда статического типа, что допускает снижение частоты тактирования до сколь угодно малых значений с целью снижения энергии потребления. Уровень напряжения хранения информации в режиме микропотребления порядка 1 В, что позволяет перейти на питание от батарейки. Появились МК со встроенным в корпус автономным источником питания, гарантирующим сохранность данных в ОЗУ в течение 10 лет (МК DS5000 фирмы Dallas Semiconductor).

Таймеры и процессоры событий

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

Опыт построении МПС позволяет выделить типовые задачи, которые должен уметь решать МК для эффективного управления в реальном времени:

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

  • контроль за изменением состояния линии ввода МК;

  • измерение длительности сигнала заданного логического уровня на линии ввода МК;

  • подсчет числа импульсов внешнего сигнала на заданном временном интервале;

  • формирование на линии вывода МК сигнала заданного логического уровня с программируемой задержкой по отношению к изменению сигнала на линии ввода;

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

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

Модуль таймера 8-разрядного МК представляет собой 16-разрядный счетчик со схемой управления. В карте памяти он отображается двумя регистрами — TH и TL. Они доступны для чтения и записи. Счетчик работает на сложение. Может использовать для тактирования импульсную последовательность с управляемого делителя частоты fbus, либо внешнюю импульсную последовательность, поступающую на один из входов МК. При переполнении устанавливается флаг TF и генерируется запрос на прерывания, если прерывания разрешены. Классический модуль таймера используется в МК с архитектурой MCS-51. Дополнительная логика позволяет измерять длительность импульса, поступающего на одну из линий МК. Наличие режима перезагрузки позволяет получить метки реального времени с периодом, отличным от Ксч=216.

Совершенствование системы реального времени достигается увеличением числа модулей таймеров, а также введением аппаратных средств входного захвата (Input Capture) и выходного сравнения (Output Compare).

Канал входного захвата (рис. 9.1) содержит детектор событий, который наблюдает за уровнем напряжения на одном из входов МК. При изменении сигнала на линии с 0 на 1 или наоборот текущее состояние счетчика таймера записывается в 16-раз-рядный регистр данных TIC канала захвата. Выбор типа события захвата устанавливается в процессе инициализации модуля таймера и может многократно изменяться по ходу выполнения программы. Каждое событие захвата отмечается установкой в 1 триггера TIC. Состояние триггера может быть считано программно, а если разрешены прерывания по событию входного захвата, то генерируется запрос на прерывание.

Рис. 9.1 — Канал входного захвата таймера

В канале выходного сравнения (рис. 9.2) многоразрядный цифровой компаратор непрерывно сравнивает изменяющийся во времени код счетчика таймера с кодом, который записан в 16-раз-рядном регистре TОC канала сравнения.

Рис. 9.2 — Канал выходного сравнения таймера

В момент равенства кодов на одном из выводов МК устанавливается заданный уровень выходного сигнала. Каждое событие выходного сравнения отмечается установкой в 1 триггера TОC. Состояние триггера может быть считано программно, а если разрешены прерывания по событию выходного сравнения, то генерируется запрос на прерывание.

Следующий этап в развитии подсистемы реального времени — модули процессоров событий. Модуль содержит в себе 16-раз-рядный счетчик временной базы и некоторое количество универсальных каналов захвата/сравнения, которые могут работать в одном из трех режимов:

  • режим входного захвата;

  • режим выходного сравнения;

  • режим широтно-импульсной модуляции.