- •1.В чём заключается сущность cisc и risc архитектур, Гарвардской и Пристонской и какая используется в микроконтроллерах семейства avr?
- •2. Таймеры/счётчики микроконтроллеров aTmega 64x,128 и их принцип работы.
- •1.Отличительные характеристики и область применения микроконтроллеров подсемейств Tiny,Classic,Mega avr?
- •2.Выводы таймеров/счётчиков микроконтроллеров aTmega 64x,128.
- •1.Основные характеристики процессора и подсистемы ввода-вывода.
- •2.Регистр разрешения прерываний от таймеров/счётчиков т0,т1,т2 микроконтроллера aTmega128 и его формат.
- •1.Периферийные устройства микроконтроллеров семейства Mega.
- •2.Регистры индикации наступления прерываний от таймеров/счётчиков т0,т2,т1,т3 микроконтроллера aTmega128 и их формат?
1.В чём заключается сущность cisc и risc архитектур, Гарвардской и Пристонской и какая используется в микроконтроллерах семейства avr?
Гарвардская архитектура - отличительным признаком которой является раздельное хранение и обработка команд и данных.
Принстонская архитектура- архитектура, при которой для данных и команд используется общая память.
CISC (англ. сomplete instruction set computing, или англ. complete instruction set computer — компьютер с полным набором команд) — концепция проектирования процессоров, которая характеризуется следующим набором свойств:
-нефиксированное значение длины команды;
-арифметические действия кодируются в одной команде;
-небольшое число регистров, каждый из которых выполняет строго определённую функцию.
Недостатки CISC архитектуры:
-высокая стоимость аппаратной части;
-сложности с распараллеливанием вычислений.
Методика построения системы комманд CISC комплементарна (противоположна, имеется в виду) другой методике - RISC. Различие этих концепций состоит в методах программирования, а не в реальной архитектуре процессора. Практически все современные процессоры эмулируют наборы команд как RISC так и CISC типа.
RISC (англ. Restricted (reduced) instruction set computer[1][2] — компьютер с упрощённым набором команд) — архитектура процессора, в которой быстродействие увеличивается за счёт упрощения команд, чтобы их декодирование было проще, а время выполнения — короче. Первые RISC-процессоры даже не имели команд умножения и деления. Это также облегчает повышение тактовой частоты и делает более эффективной суперскалярность (распараллеливание команд между несколькими исполнительными блоками).
Характерные особенности RISC-процессоров
1) Фиксированная длина машинных команд (например, 32 бита) и простой формат команды.
2) Специализированные команды для операций с памятью — чтения или записи. Операции вида «прочитать-изменить-записать» отсутствуют. Любые операции «изменить» выполняются только над содержимым регистров (т. н. архитектура load-and-store).
3) Большое количество регистров общего назначения (32 и более).
4) Отсутствие поддержки операций вида «изменить» над укороченными типами данных — байт, 16-битное слово. Так, например, система команд DEC Alpha содержала только операции над 64-битными словами, и требовала разработки и последующего вызова процедур для выполнения операций над байтами, 16- и 32-битными словами.
5) Отсутствие микропрограмм внутри самого процессора. То, что в CISC процессоре исполняется микропрограммами, в RISC процессоре исполняется как обыкновенный (хотя и помещённый в специальное хранилище) машинный код, не отличающийся принципиально от кода ядра ОС и приложений. Так, например, обработка отказов страниц в DEC Alpha и интерпретация таблиц страниц содержалась в так называемом PALCode (Privileged Architecture Library), помещённом в ПЗУ. Заменой PALCode можно было превратить процессор Alpha из 64-битного в 32-битный, а также изменить порядок байтов в слове и формат входов таблиц страниц виртуальной памяти.
Описание архитектуры AVR
Микроконтроллеры AVR имеют гарвардскую архитектуру (программа и данные находятся в разных адресных пространствах) и систему команд, близкую к идеологии RISC. Процессор AVR имеет 32 8-битных регистра общего назначения, объединённых в регистровый файл. В отличие от «идеального» RISC, регистры не абсолютно ортогональны:
Три «сдвоенных» 16-битных регистра-указателя X (r26:r27), Y (r28:r29) и Z (r30:r31);
Некоторые команды работают только с регистрами r16…r31;
Результат умножения (в тех моделях, в которых есть модуль умножения) всегда помещается в r0:r1.