Рассказать об Гарвардской и Фон-Неймановской структуре ядра



Гарвардская архитектура:

1. Хранилище инструкций и хранилище данных представляют собой разные физические устройства.

2. Канал инструкций и канал данных также физически разделены.

3. Разделение шин доступа к FLASH памяти и SRAM памяти дает возможность иметь шины данных для памяти данных и памяти программ различной разрядности, а также использовать технологию конвейеризации. Конвейеризация заключается в том, что во время исполнения текущей команды программный код следующей уже выбирается из памяти и дешифруется

 

Фон-Неймановская архитектура

Основной особенностью фон-неймановской архитектуры является использование общей памяти для хранения программ и данных.

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

 

Устройства ядра МК AVR (нарисовать примерную схему и рассказать, за что отвечает каждый из блоков)

Ядро состоит, в первую очередь, из памяти программ (Flash Programm Memory), Арифметико-логического устройства (ALU), блока управления (на диаграмме не показан) и программного счетчика (Program Counter). Также есть тактовый генератор, задающий импульсы, относительно которых работают блоки микроконтроллера.

Вся математика и обработка делается посредством ALU. Это, своего рода, калькулятор. Он может складывать, вычитать, сравнивать, сдвигать разными способами, иногда делить и умножать. В качестве промежуточных операндов используются 32 ячейки — Оперативные регистры общего назначения РОН. Доступ к этим ячейкам самый быстрый, а число операций с их содержимым наиболее богатое. В ассемблере регистры эти называются просто R0,R1,R2 … R31. Причем делятся они на три группы:

Младшие R0..R15

Обычные регистры общего назначения, но какие-то ущербные. С ними не работают многие команды, например, такие как загрузка непосредственного числа. Т.е. нельзя, например, взять и присвоить регистру число. Зато можно скопировать число из любого другого регистра.

Старшие R16..R31

Полноценные регистры, работающие со всеми командами без исключения.

Индексные R26…R31

Шесть последних регистров из старшей группы особенные. В принципе, их можно использовать и как обычные регистры общего назначения. Но, кроме этого, они могут образовывать регистровые пары X(R26:R27), Y(R28,R29), Z(R30:R31), которые используются как указатели при работе с памятью.

ОЗУ
Кроме 32 регистров в микроконтроллере есть оперативная память. Правда не везде — в младших семействах AVR Tiny12 и Tiny11 оперативной памяти нет, так что приходиться вертеться в 32 ячейках. Оперативная память это несколько сотен ячеек памяти. От 64 байт до 4 килобайт, в зависимости от модели. В этих ячейках могут храниться любые данные, а доступ к ним осуществляется через команды Load и Store. То есть нельзя взять, например, и прибавить к ячейке в памяти, скажем, единицу. Нам сначала сделать операцию Load из ОЗУ в РОН, потом в регистре прибавить нашу единицу и операцией Store сохранить ее обратно в память. Только так.

EEPROM
Долговременная память. Память, которая не пропадает после выключения питания. Если Flash может содержать только код и константы, а писать в нее при выполнении ничего нельзя (Это память Read Only), то в ЕЕПРОМ можно сколько угодно писать и читать. Но в качестве оперативки ее особо не используешь. Дело в том, что цикл записи в EEPROM длится очень долго — миллисекунды. Чтение тоже не ахти какое быстрое. Да и число циклов перезаписи всего 100 000, что не очень много в масштабах работы оперативной памяти. ЕЕПРОМ используется для сохранения всяких настроек, предустановок, собранных данных и прочего барахла, что может потребоваться после включения питания и в основном на чтение. Эта память есть не во всех моделях AVR, но в подавляющем их большинстве.

 

 


Дата добавления: 2018-04-05; просмотров: 475; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!