МК – разновидность микропроцессорной системы (однокристальные ЭВМ), орие-нтированная на реализацию алгоритмов управления техническими устройствами и технологическими процессами.
МК проще, чем универсальные ЭВМ:
1)малый объем памяти МК реализует за-ранее известные несложные алгоритмы, и для размещения программ им требуется емкость памяти на несколько порядков <, чем у ЭВМ широкого применения.
2)менее разнообразный состав внешних устройств: параллельный и последова-тельный порты ввода-вывода, таймеры, АЦП и ЦАП, широтно-импульсные мо-дуляторы.
Применение МК поддерживается такими областями массового производства, как бытовая аппаратура, станкостроение, автомобильная промышленность и т.д.
Первые МК выпущены фирмой Intel в 1976 г.
На рынке используются МК фирмы Atmen (AT 88…), Microchip (PIC).
В России большое распространение по-лучили МК фирмы Microchip:
1)мощная поддержка разработчиков со стороны фирмы и низкая стоимость МС.
2)объединили все передовые технологии, применяемые в производстве МК: разви- тая RISC-архитектура; минимальное эне-ргопотребление; ПЗУ, программируемое пользователем; возможность защиты ко- да программы от несанкционированного доступа и изменения.
83.Память микроконтроллера.
Используется Гарвардская архитектура.
Память программ – постоянная память объемом 1024 слова. Разрядность ячей- ки 14 бит.
Занесение инф-ции осуществляется с помощью программатора.
Память данных – ОП емкостью 256 Байт.
Память данных разбита на 2 банка. Ка- ждый банк содержит 128 байт.
FFh
80h банк 1
7Fh
00h банк 0
Диапазон адресов Банка 0: 00h–7Fh.
Диапазон адресов Банка 1: 80h–FFh.
Каждый банк содержит спец. регистры и РОНы (ОЗУ пользователя).
Спец. регистры применяются для хране- ния битов состояния, определяющих ра- боту портов ввода-вывода, таймеров и др. модулей МК.
Переключение банков происходит при помощи 5 разряда (RPQ) регистра STATUS.
В памяти данных находятся 68 РОНов, которые отображаются на 2 банка.
84.Устройство управление микроконтроллера.
- регистр команд; - счетчик команд;
- микропрограммное УУ;
- очередь команд.
Счетчик команд (PC) хранит адрес кома- нды и увеличивает свое состояние перед считыванием команды из памяти. Раз-рядность счетчика команд 13 бит.
Младший байт счетчика является полно- стью доступным для чтения и записи ре-гистрам. Разрядность регистра команд 14 бит.
По тактовому сигналу, поступающему на вход OSC1 МК, формируются 4 тактовые не перекрывающиеся последовательности (Q1, Q2, Q3, Q4).
Командный цикл состоит из двух циклов:
1)выборка команд; 2)выполнение команд.
Длительность командного цикла 8 тактов.
Во время выполнения текущей команды из памяти считывается следующая кома- нда и загружается в очередь команд. Та- ким образом, командный цикл – 4 такта.
Команды передачи управления выполня- ются за 8 тактов, т.к. очередь команд очи- щается.
Типы данных:
Разрядность данных 8 бит.
1)целые данные без знака (0–255).
2)целые данные со знаком хранятся и об-рабатываются в дополнительном коде (-128–127).
МК содержит 8-разрядный рабочий ре- гистр (аккумулятор).
85.АЛУ микроконтроллера.
Арифметические операции: сложение, вычитание.
Логические операции: логическое сло- жение ИЛИ, логическое умножение И, логическое отрицание НЕ, исключаю- щее ИЛИ (неравнозначность).
По результату работы АЛУ формирует флаги:
- С – флаг переноса; - Z – флаг нуля;
- DC – флаг дополнительного переноса (заема) из младшей тетрады в старшую.
Флаги хранятся в спец. регистре STATUS в разрядах [2–0].
Типы данных:
1)целые без знака.
2)целые со знаком (хранятся в дополни-тельном коде).
Разрядность данных 8 бит.
86.Таймер микроконтроллера (TMR0).
Разрядность таймера 8 бит.
Таймер – 8-разрядный суммирующий счетчик.
Таймер может считать внутренние сигна- лы микроконтроллера (частота сигналов на входе таймера: fTMR0=fМК/4), либо вне- шние сигналы, поступающие на вход RA4.
При переполнении таймера, т.е. переклю-чении его из состояния FF в состояние 00, может формироваться прерывание.
Сторожевой таймер (WDT):
Представляет собой комбинацию встро-енного RC-генератора и счетчика, при переполнении которого формируется сброс МП.
Время выдержки сторожевого таймера зависит от температуры, U питания и коэффициента деления предделителя.
Выдержка с подключением предделите- ля может достигнуть 2.5 секунды. Номи-нальная выдержка без предделителя 18 нс.
Главным назначением WDT является борьба с аппаратными сбоями устройства.
В результате сбоя может возникнуть за-висание программы.
Если WDT включен, то нормально работа-ющая программа должна периодически обнулять сторожевой таймер, не допус- кая его сбоя.
Когда происходит сбой, таймер переста- ет программно обнуляться.
После его переполнения произойдет сбой процессора и повторная инициализация устройства (программа начнет выполнять- ся с самого начала).
87.Система прерывания микроконтроллера.
VR имеет аппаратные маскируемые прерывания от 4 источников:
1)Прерывание от TMR0.
2)Прерывание по окончании записи в энергонезависимую память EEPROM.
Это внутренние прерывания.
3)Прерывания по сигналу на линии RB0 (фронтальные прерывания).
4)Прерывания при изменении сигналов на линии RB4-RB7 (по уровню).
Это внешние прерывания.
Все прерывания являются маскируемыми. Разрешить или запретить все прерывания можно с помощью разряда GIE регистра INTCON. Также можно разрешить или запретить каждый из видов прерываний.
EEIE – бит разрешения прерывания по завершению записи в EEPROM.
TOIE – бит разрешения прерывания по переполнению таймера TMR0.
INTE – бит разрешения внешнего пре-рывания со входа RB0.
RBIE – бит разрешения прерывания по изменению сигнала на линиях RB4-RB7.
Обработчик прерывания 1, адрес вектора прерываний 4. С адреса 4 начинается об-работчик прерывания.
Регистр INTCON содержит флаг Биты событий, которые устанавливаются в 1 независимо от того, разрешен данный вид прерываний или нет в случае появ- ления соответствующего события TOIF.
TOIF – флаг переполнения TMR0.
INTF – флаг изменения сигнала на линиях RB0.
RBIF – флаг изменения сигнала на линиях RB4-RB7.
Например, произошло прерывание тайме- ра TMR0. Бит TOIF устанавливается в 1. проверяется состояние бита GIE. Если GIE=1, проверяется состояние бита TOIE. Если TOIE=1, прерывание от таймера ра-зрешено. В счетчик команд загружается адрес 4, и начинает выполняться обрабо- тчик прерывания, начинающийся с 4 ад- реса памяти программ.
88.Порты ввода-вывода микроконтроллера.
МК имеет 2 порта ввода-вывода: PORT A, PORT B.
PORT A:
Это 5-разрядный порт (RA4-RA0).
Направление передачи данных для каж- дой линии программируется отдельно установкой или сбросом битов 4-0 реги- стра TRIS A.
Установка разряда в 1 настраивает соот-ветствующую линию на ввод. Установка бита в 0 настраивает соответствующую линию на вывод.
PORT B:
Это 8-разрядный двунаправленный порт (RB7-RB0).
Направление передачи данных на линии определяется установкой в 1 или сбросом разрядов регистра TRIS B.
Установка разряда в 1 настраивает соот-ветствующую линию на ввод. Установка бита в 0 настраивает соответствующую линию на вывод.
Все выводы порта B имеют встроенную отключаемую нагрузку в виде регистров, подключенных к шине питания (подтя-гивающие резисторы).
Нагрузка включается и выключается од-новременно для всех выводов при помо- щи 7 разряда (RBPU) спец. регистра OPTION_REG.
RBPU=1 – нагрузка отключена.
RBPU=0 – нагрузка включена.
Для линий, настроенных на вывод, нагру- зка автоматически отключается.
Линия RB0 может использоваться как вход прерывания по фронту.
Линии RB4-RB7 – как входы прерывания по входу.
89.Архитектура вычислительных систем. Основные определения. Классы архитектуры вычислительных систем.
ВС – это совокупность взаимосвязанных и взаимодействующих процессоров или ЭВМ, периферийного оборудования и ПО, предназначенная для сбора, хране- ния, обработки и распределения инфо-рмации.
ВС бывают:
*многомашинные, *многопроцессорные.
Многомашинные ВС: несколько процес-соров, входящих в ВС, не имеющих об- щей ОП, а имеют каждый свою локаль- ную ОП.
Эффект от применения такой ВС может быть получен только при решении задач, имеющих спец. структуру: задача должна разбиваться на столько слабо связанных подзадач, сколько компов в системе.
Многопроцессорные ВС: наличие в компь-ютере нескольких процессоров означает, что параллельно может быть организова- но много потоков данных и много потто- ков команд. Таким образом, параллельно могут выполняться несколько фрагментов одной задачи. Такая машина имеет общую ОП и несколько процессоров.
АА АА АА
АЛУ АЛУ АЛУ
ОЗУ
Классы:
Поток
данных
Поток команд
одиночный
множестве-
нный
одиночный
SISD – Single
Instruction
Stream/Single
Data Stream (одиночный
поток команд
и одиночный
поток данных
ОКОД)
MISD – Mul-
tiple Instruc-
tion Stream/
Single Data
Stream (мно-
жественный
поток кома-
нд и одино-
чный поток
данных
МКОД)
множествен-
ный
SIMD – Single
Instruction
Stream/Multi-
ple Data Stre-
am (одиноч-
ный поток ко-
манд и мно-
жественнй
поток дан-
ных ОКМД)
MIMD – Mu-
ltiple Instruc-
tion Stream/
Multiple Data
Stream (мно-
жественный
поток кома-
нл и множе-
ственный по-
ток данных
МКМД)