Архитектура семейства MCS-48 в значительной мере предопределяется ее назначением — построение компактных и дешевых цифровых устройств. Все функции микроЭВМ реализуются с помощью единственной микросхемы. В состав семейства MCS-48 входит целый ряд микросхем отличающихся друг от друга внутренним составом. Поэтому часто выделяют отдельно неизменную часть, которая присутствует во всех микросхемах семейства. Эту часть называют ядром. кроме ядра в состав каждой микросхемы входят части, которыми микросхемы отличаются друг от друга. Эту часть микросхемы называют периферией. Микроконтроллеры семейства MCS-48 позволяют выполнять как задачи управления различными устройствами, так и реализовывать отдельные узлы аналоговой схемы. Все микросхемы этого семейства работают с одной и той же системой команд, в одинаковых корпусах с совпадающей цоколевкой (нумерация ножек для корпуса). Это позволяет использовать для разработанного устройства микросхемы разных фирм-производителей без переделки принципиальной схемы устройства и программы.
Рисунок 1. Структурная схема контроллера К1816ВЕ48
Структурная схема контроллера представлена на рисунке 1. Основу микроконтроллера составляет системная шина, которая связывает между собой все основные функциональные узлы микросхемы: блок управления, арифметико-логического устройство, блока таймеров/счетчиков, блока последовательного интерфейса и прерываний, программного счетчика, памяти данных и памяти программ. Двусторонний обмен осуществляется с помощью внутренней 8-разрядной магистрали данных. По такой схеме построены все представители семейства MCS-48. Различные микросхемы этого семейства различаются только объёмом внутренней памяти. Система команд всех контроллеров семейства MCS-48 содержит 96 базовых команд с форматом 1 или 2 байта и не изменяется при переходе от одной микросхемы к другой. Это обеспечивает прекрасную переносимость программ с одного типа микросхем на другой. Рассмотрим подробнее назначение каждого блока.
Блок управления и синхронизации
Блок управления и синхронизации предназначен для выработки синхронизирующих и управляющих сигналов, обеспечивающих координацию совместной работы блоков микроконтроллера во всех режимах работы. В состав блока управления входят:
- устройство формирования временных интервалов,
- логика ввода-вывода,
- регистр команд,
- дешифратор команд, логика управления ЭВМ.
Устройство формирования временных интервалов предназначено для формирования и выдачи внутренних синхросигналов фаз, тактов и циклов. Количество машинных циклов определяет продолжительность выполнения команд. Генератор построен на внутреннем инверторе и внешнем кварцевом или LC резонаторе. Допустимая частота кварцевого резонатора от 1 до 6 МГц. Схемы задающих генераторов тактовой частоты с использованием внутренней и внешней синхронизации приведены на рисунке 2.
Рисунок 2. Схемы генераторов тактовой частоты.
Нужно отметить, что запуск задающего генератора этого микроконтроллера был затруднённым (жёсткий режим самовозбуждения), поэтому для надёжного запуска задающего генератора следовало использовать либо внешний генератор, либо шунтировать ножки XTAL1 и XTAL2 внешним резистором.
Практически все команды микроконтроллера выполняются за один или два машинных цикла. Обозначим частоту задающего генератора через Fг. Тогда длительность машинного цикла равна 15/Fг или составляет 15 периодов сигнала задающего генератора. Именно с такой частотой выдаётся сигнал стробирования адреса ALE. Логика ввода-вывода предназначена для приема и выдачи сигналов, обеспечивающих обмен информации с внешними устройствами через порты ввода вывода и системную шину микроконтроллера.
Сброс микроконтроллера можно осуществить при помощи конденсатора, подключенного к ножке сброса RESET, как показано на рисунке 3. Минимальное время сброса контроллера 50 мс. В настоящее время для этой цели лучше бы подошла микросхема супервизора питания ADM809. После сброса микроконтроллера обнуляется содержимое счётчика команд PC, указателя стека в составе регистра PSW, выбираются 0 банк регистров и нулевой банк памяти программ. Запрещаются прерывания.
Рисунок 3. Схемы сброса микропроцессора
Регистр команд предназначен для записи и хранения 8-ми разрядного кода операции выполняемой команды. Код операции, с помощью дешифратора команд и логики управления ЭВМ, преобразуется в микропрограмму выполнения команды, считанной из ПЗУ.