Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное_пособие.doc
Скачиваний:
70
Добавлен:
10.11.2019
Размер:
8.13 Mб
Скачать

2.7 Функционирование конвейера

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

Микроконтроллеры семейства AVR в структуре имеют отдельную 16-разрядную шину данных программной памяти, благодаря чему реализован одноступенчатый конвейер. По этой шине производится считывание команды из программной памяти в регистр команд. В это же время выполняется ранее считанная команда с использованием шины данных. Благодаря конвейеру увеличивается быстродействие микроконтроллера. Очевидно, что первая команда считывается из программной памяти без выполнения.

В случае команд переходов в конвейере образуется задержка. Причина ее в следующем. По команде перехода должна считываться команда, размещенная по адресу перехода, а конвейером считывается следующая команда. Поэтому работа конвейера приостанавливается на время считывания команды, размещенной по адресу перехода. В случае команд классических условных переходов (при выполнении условия в команде производится переход, иначе выполняется следующая команда), если условие команды выполняется, то в конвейере происходит задержка на время считывания команды по адресу перехода, а при невыполнении условия задержки не происходит (следующая команда уже считана).

В системе команд микроконтроллера есть 5 команд условных переходов, при выполнении которых проверяется условие и если оно выполняется, то пропускается следующая команда, иначе следующая команда не пропускается. На выполнение этих команд может дополнительно потребоваться 1 или 2 такта, так длина следующей команды может составлять 1 или 2 слова, которые в этих тактах будут считываться из памяти программ.

Тактовыми импульсами от тактового генератора микроконтроллера устанавливается временное положение управляющих сигналов на выводах блоков микроконтроллера. Управляющие сигналы формируются в схеме управления микроконтроллера и по шине управления поступают на соответствующие выводы блоков микроконтроллера. Управляющими сигналами являются: сигналы записи и чтения регистров, сигналы чтения и записи ячеек памяти и др..

Контрольные вопросы к разделам 1 и 2.

  1. Функциональные блоки в составе микроконтроллера?

  2. Функция программной памяти и ее основные параметры.

  3. Функция, аппаратная реализация и работа счетчика команд.

  4. В чем состоит упрощенная работа микроЭВМ?

  5. Функция и разрядность регистра команд.

  6. Информация в коде команды.

  7. Функция и состав памяти данных микрконтроллера.

  8. Стек: организация, адресация ячеек стека, указатель стека, особенности стековой памяти.

  9. Функции и особенности регистров общего назначении РОН.

  10. Состав регистров ввода/вывода.

  11. Адреса РОН, РВВ и ОЗУ в едином адресном пространстве.

  12. Функция и состав арифметико-логического устройства.

  13. Функция регистра состояния процессора SREG.

  14. Функции и особенности флагов регистра состояния SREG.

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

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

  17. Размещение операндов при прямом способе адресации, формат команды и назначения отдельных групп разрядов.

  18. Размещение операндов при непосредственном способе адресации, формат команды, назначения отдельных групп разрядов, используемые регистры РОН.

  19. Размещение операндов при косвенном способе адресации, формат команды и назначения отдельных групп разрядов.

  20. Особенности косвенной адресации с постинкрементом и преддекрементом.

  21. Особенности стековой адресации.

  22. Операции, выполняемые по командам: LDI R17,34; OUT PORTD,R2; SBI PORTB,5; CBI DDRD,3; DEC R6; BRNE 6;

RCALL 134; RET; ADD R4,R23; ADC R4,R31;

RJMP 89; SBIC PORTD,7; CBIS PIND,4;

CBR R2,32; SBR R24,48; LPM; INC R6;

LD R9,X+; ROL R28; BRCS 4; PUSH R22;

POP R5.

23. Регистры, ячейки памяти или биты, которые участвуют при выполнении команд предыдущего вопроса.