- •Внутренняя архитектура.Методы адресации. Команды пересылки данных. Команды передачи управления.
- •2.1. Теоретическая часть.
- •2.1.1. Архитектура центрального процессора.
- •2.1.2. Карта памяти. Назначение регистров.
- •Регистр конфигурации (option).
- •Регистры данных портов (dRn) и установки направления передачи данных (ddRn).
- •Регистры управления (scr), состояния (ssr) и данных (sdr) порта последовательного периферийного интерфейса spi.
- •Регистры сброса (coprst) и управления сбросом (copcr).
- •2.1.3. Методы адресации.
- •2.1.4. Команды пересылки данных.
- •2.1.5. Команды передачи управления.
- •2.2.1. Исследование работы команд пересылки данных.
- •Команды загрузки регистров а и х данными из памяти.
- •Команды модификации памяти.
- •Команды межрегистровой пересылки.
- •Команды условного перехода.
- •Команды работы с подпрограммами.
- •Команда установки указателя стека в исходное состояние.
- •2.3. Контрольные вопросы.
- •2.4. Задания.
2.1.2. Карта памяти. Назначение регистров.
Память ОЭВМ MC68HC05C8 (с точки зрения пользователя) включает в себя от 176 до 304 байт ОЗУ и от 7600 до 7744 байт ППЗУ. ОЭВМ имеет четыре различных конфигурации памяти, как показано на рисунке 2.2.
ПРИМЕЧАНИЕ. Обратите внимание на следующее: при работе в мониторе ВСЯ память доступна для чтения/записи (командами эмулятора, такими как ÌÌ и т.д.), но при выполнении программы область ППЗУ доступна только для чтения (непременно запомните ее расположение на карте памяти). Поэтому рекомендуется программу и неизменяемые данные располагать в области ППЗУ, а величины, изменяемые при вычислении - в ОЗУ.
Рис. 2.2. Карта памяти ОЭВМ MC68HC705C8.
Выбор конфигурации памяти зависит от состояния битов RAM0 è RAM1 регистраOPTION, который находится по адресу$1FDF. При начальной установке эти биты сбрасываются. Требуемый объем ОЗУ и ПЗУ может быть выбран из следующей таблицы:
RAM0 |
RAM1 |
ÎÇÓ, áàéò |
ÏÏÇÓ, áàéò |
0 |
0 |
176 |
7744 |
1 |
0 |
208 |
7696 |
0 |
1 |
272 |
7648 |
1 |
1 |
304 |
7600 |
Конфигурация памяти может изменена в любой момент в ходе работы программы. Более подробно о назначении регистра OPTIONñì. íèæå.
Первые 32 байта представляют собой отображенные в память порты ввода/вывода и некоторые регистры управления и данных. Далее следуют 48/32 байта ППЗУ/ОЗУ, определяемые состоянием битов в регистре OPTION, после которых располагаются 176 байт ОЗУ. Далее также следует область памяти, тип которой зависит от выбора флагов в регистреOPTION- это 96 ячеек ППЗУ/ОЗУ. В диапазоне адресов$0160 - $1EFFрасполагается область ППЗУ. 223 байта, начиная с адреса$1F00, занято под загрузочное ППЗУ, а под загрузочные векторы ПЗУ отводится 16 ячеек с адресами$1FE0-$1FEF. По адресу$1FDF размещен регистрOPTION. И, наконец, в конце программно доступной памяти располагаются векторы прерываний.
Регистр конфигурации (option).
Расположен, как уже ранее отмечалось, по адресу $1FDF1в программной памяти и предназначен для задания режима реакции на внешние прерывания и конфигурирования размера ОЗУ. Назначение битов следующее:
Назначение |
RAM0 |
RAM1 |
0 |
0 |
0 |
- |
IRQ/ |
0 |
Установка после RESET |
0 |
0 |
0 |
0 |
0 |
- |
1 |
0 |
Назначение битов RAM0 и RAM1 было рассмотрено ранее, бит IRQ/ служит для установки режима реакции на запросы прерываний от внешних устройств. При установленном в единицу бите IRQ/ вывод IRQ/ микропроцессора реагирует как на низкий уровень сигнала на этом выводе, так и на перепад из реагирует как на низкий уровень сигнала на этом выводе, так и на перепад высокого уровня в низкий. Если бит IRQ/ сброшен, ОЭВМ реагирует только на сигнал низкого уровня на входе IRQ/.
Регистры данных портов (dRn) и установки направления передачи данных (ddRn).
В МК имеется три восьмиразрядных двунаправленных регистра передачи данных (A, B, C ) и семибитный регистр D (разряды PD1...PD4 - двунаправленные, разряды PD0, PD1, PD7 - работают только на ввод. Регистр D может выполнять альтернативные функции: использоваться как регистр общего назначения или для обслуживания последовательных интерфейсов SCI и SPI. Основное назначение регистров DRn- передача данных на линию, аDDRn- установка направления передачи данных: разряд регистра DDRn, установленный в единицу, означает, что будет происходит вывод данных по соответствующему разряду регистра DRn, сброшенный бит указывает на то, что данные будут приниматься. Разные разряды одного и того же порта могут независимо друг от друга производить ввод или вывод. Если в DDRn все биты равны нулю, то будет произведен ввод при обращении к DRn (именно так и делается при начальной установке). Адреса регистров данных портов A, B, C, D - $0000-$0003соответственно, а регистров направления портов A, B, C -$0004-$0006соответственно.