RISC использует только гарвардскую архитектуру.



 

Архитектура AVR содержит два основных вида памяти:

● Память данных;

● Память программ.

Кроме того, микросхема ATtiny2313 имеет EEPROM-память для долговременного хранения данных. Все три вида памяти представляют собой непрерывные области с линейно возрастающими адресами.

Системная перепрограммируемая Flash-память программ.

Микросхема содержит 2 Кбайт встроенной перепрограммируемой памяти для хранения программ. Так как все команды, используемые в AVR, имеют размер 16 или 32 бита, память организована как 1Kx16.

Память данных SRAM.

Всего адресное пространство ОЗУсодержит 224 ячейки, которые заняты:

➢ Файлом регистров общего назначения;

➢ Дополнительными регистрами ввода-вывода;

➢ Внутренней памятью данных.

Первые 32 ячейкисовмещены с файлом РОН. Следующие 64 ячейки – стандартная область, где располагаются все регистры ввода-вывода. И лишь оставшиеся 128 ячеек составляют внутреннюю память данных.

Регистры R26-R31 (X, Y, Z) служат указателями адреса при всех операция с косвенной адресацией.

К регистры R0-R31 можно также обращаться непосредственно по адресу в адресном пространстве (0x00-0x31) R0==0x00,R20==0x20.

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

При косвенной адресациисо смещением можно охватить до 63 ячеек, начиная с текущего базового адреса, на который указывает содержимое регистра Y или Z.

При использовании косвенной адресации с автоматическим преддекрементом и автоматическим постдекрементом после каждой операции чтения (записи) памяти изменяется адрес, записанный в регистр X, Y или Z.

Для всех способов адресации доступны все 32 регистра общего назначения, 64 регистра ввода-вывода и 128 байтов памяти данных SRAM.

Память данных EEPROM.

Микросхема ATtiny2313 содержит 128 байтов EEPROM-памяти.Она организована как отдельное адресное пространство для хранения данных, в котором каждый байт может быть отдельно прочитан или записан.

 

 

Регистры общего назначения. Особенности применения. Индексные регистры X, Y, Z.

 

Файл регистров оптимизирован для набора AVR RISC-инструкций. Для того, чтобы достичь требуемой производительности и гибкости, файл регистров поддерживает следующие схемы ввода-вывода:

➢ Вывод одного 8-разрядного операнда и ввод одного 8-разрядного результата вычислений

➢ Вывод двух 8-разрядных операндов и ввод одного 8-разрядного результата вычислений

➢ Вывод двух 8-разрядных операндов и ввод одного 16-разрядного результата вычислений

➢ Вывод одного 16-разрядного операнда и ввод одного 16-разрядного результата вычислений

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

Регистры R26-R31, кроме своего основного назначения, имеют дополнительную функцию. Эти регистраторы могут служить 16-битными указателями адреса для операций, использующих косвенную адресацию. В разных командах, использующих косвенную адресацию, эти регистры могут быть использованы как источники постоянного адреса, как адресный регистр с автоматическим приращением адреса и как регистр с автоматическим уменьшением адреса.

 

Индексный регистр Z. Организация доступа к памяти программ (подробно опишите данный режим адресации).

 

Память программ микроконтроллеров AVR имеет 16-разрядную организацию. Доступ к данным в памяти программ осуществляется с помощью команды lpm и индексного регистра Z. При этом старшие 15 разрядов содержимого регистра определяют адрес 16-разрядного слова, а младший разряд определяет, какой из байтов слова будет прочитан: 0 – младший байт, 1 – старший байт.            

Единственным "мостом" от памяти программ к памяти данных служит команда LPM – она загружает в регистр r0 содержимое старшей или младшей половины ячейки памяти, чей адрес содержится в старших 15 разрядах регистра Z. Младший разряд Z при этом выбирает загрузку младшего (Z.0==0) или старшего (Z.0==1) байта из слова.

ldi r31,HIGH(0x0241*2)

ldi r30,LOW(0x0241*2) ;в регистр r0 заносится младший байт из ячейки

lpm ;памяти программ с адресом 0x241

 


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

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






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