Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Voprosy_po_Arkht_EVM_i_Yazyk_assemblera.docx
Скачиваний:
61
Добавлен:
01.04.2022
Размер:
5.16 Mб
Скачать

Архитектура Микроконтроллера. Структура типовой эвм.

Процессорное ядро AVR-микроконтроллеров выполнено по усовершенствованной RISC-архитектуре, в которой используется ряд решений, направленных на повышение быстродействия микроконтроллеров.

Арифметико-логическое устройство (АЛУ), выполняющее все вычисления, подключено непосредственно к 32 рабочим регистрам, объединенным в регистровый файл. Благодаря этому АЛУ может выполнять одну операцию (чтение содержимого регистров, выполнение операции и запись результата обратно в регистровый файл) за такт. Кроме того, практически каждая из команд занимает одну ячейку памяти программ.

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

Разделение информационных шин позволяет использовать для каждого типа памяти шины различной разрядности, причем способы адресации и доступа к каждому типу памяти также различаются. В сочетании с двухуровневым конвейером команд (одна команда выполняется, другая параллельно выбирается и декодируется) такая архитектура позволяет достичь производительности в 1 MIPS на 1 МГц тактовой частоты.

AVR-микроконтроллеры изготавливаются по малопотребляющей КМОП-технологии и имеют полностью статическую архитектуру, минимальная тактовая частота равна нулю.

Структура типовой ЭВМ.

Тактовая частота микроконтроллера. Изменения тактовой частоты.

Тактовая частота – это сколько тактов в секунду может выполнить микроконтроллер. Чем больше тактовая частота, тем больше количество операций за секунду может сделать микроконтроллер. К примеру, тактовая частота в 8 МГц означает что МК за 1 секунду выполнить 8000000 различных операций таких как сложение, вычитание, запись данных в регистры и чтение данных и т.д.

Изменения тактовой частоты:

– тактирование от внутреннего RC-генератора - На тактирование от внутреннего RC генератора МК настроен сразу с завода и не требует внешних деталей. Это означает, что с помощью МК, питания +5 Вольт и одного светодиода с резистором, мы уже можем заставить наш МК работать и выполнять программу без всяких сложных настроек и дополнительных деталей, задав скорость программно, путем выставления задержки “Delay”;

– тактирование от внешнего кварца;

– тактирование от внешнего генератора: К тактированию от внешнего генератора прибегают тогда, когда требуется синхронизовать МК с внешними цепями, либо этот МК тактируют какой-либо своей частотой от генератора частоты;

– тактирование от RC-цепочки.

Регистры общего назначения (рон) в микроконтроллерах.

РОН принимают участие в выполнении практически всех команд МК, и практически все данные проходят через них. В микроконтроллерах AVR имеется 32 РОН.

Каждый РОН имеет свое имя: R0, R1, R2 …. R29, R30, R31. Все РОН объединяются в один файл, который называется файл регистров общего назначения. Регистры общего назначения восьмиразрядные (однобайтовые). Каждому РОН в области памяти данных (SRAM) отведен свой адрес – они занимают ячейки памяти с “нулевой” по “тридцать первую”, или в шестнадцатиричном исчислении – от $00 (0х00) до $1F (0x1F). Т.е., получается, что ячейки памяти SRAM с 0 по 31, одновременно являются и регистрами общего назначения.

Мы можем в программе прописать команду: “записать 255 в регистр R31″, а можем прописать: “записать 255 в 31 ячейку памяти данных”, – результат будет один и тот же. 

На рисунке показана структура 32 рабочих регистров общего назначения процессора.

Так как все РОН восьмиразрядные (однобайтовые) то и оперировать они могут только с однобайтными данными. В случае, если необходимо проводить операции с двухбайтными данными (шестнадцатиразрядными), то РОН с R26 по R31 могут образовывать сдвоенные регистры, которые в свою очередь могут выступать в роли самостоятельных шестандцатиразрядных регистров и тогда они имеют другие имена (такие сдвоенные регистры иногда называют “словом”, по аналогии с ячейками памяти программ):

R26 и R27 – сдвоенный регистр “Х”,

R28 и R29 – сдвоенный регистр “Y”,

R30 и R31 – сдвоенный регистр “Z”.

При этом первый регистр в такой паре (R26, или R28, или R30) играет роль младшего байта и обозначается дополнительной буквой “L”. Например: XL, YL, ZL.

Второй регистр в паре играет роль старшего байта и обозначается дополнительной буквой “H”. Например: XH, YH, ZH.

Это позволяет нам записать (или считать значение), к примеру, двухбайтовое число непосредственно в двойной регистр, обратившись к его буквенному обозначению X, Y или Z, а также считать любой байт (или записать в любой байт) выбрав буквенное обозначение младшего или старшего байта двойного регистра  (к примеру XL или XH).