Научная литература
booksshare.net -> Добавить материал -> Физика -> Александров Е.К. -> "Микропроцессорные системы" -> 237

Микропроцессорные системы - Александров Е.К.

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 231 232 233 234 235 236 < 237 > 238 239 240 241 242 243 .. 528 >> Следующая

МК семейства PIC16 используют гарвардскую архитектуру, основанную на
концепции раздельных магистралей и областей памяти для команд и для
данных. Разделение магистралей позволяет увеличить разрядность команды по
сравнению с разрядностью данных. В МК Р1С16С5х формат команды составляет
12 бит, в то время как разрядность слова памяти данных равна одному
байту. Все без исключения команды МК PIC16 являются однословными, т. е.
длина кода любой команды равна 12 бит. Двухступенчатый конвейер
обеспечивает одновременную выборку и исполнение команд. Все команды,
кроме команд передачи управления, выполняются за один машинный цикл.
Длительность цикла составляет 200 не при частоте тактирования fXCLK - 20
МГц (fBUS = fXCLKIA).
Адресное пространство памяти программ МК Р1С16С5х делится на страницы
(банки) по 512 ячеек в каждой (рис. 4.55). Прямая адресация памяти
программ возможна только в пределах одной страницы. Доступ к памяти свыше
512 ячеек осуществляется после переключения под управлением программы
указателя страницы. В качестве указателя используются биты РА1:РА0
регистра признаков центрального процессора, который в МК PIC16 носит
название STATUS. Рассматриваемая модель МК PIC16C54 имеет всего 512 ячеек
памяти программ, т. е. использует только нулевую страницу адресного
пространства. Соответственно и разрядность счетчика адреса PC для данного
МК равна 9. В других моделях серии Р1С16С5х используется до 4 страниц
памяти программ, тогда разрядность счетчика адреса PC составляет 11 бит.
Причем младшие 9 бит работают в режиме двоичного счетчика, адресуя 512
ячеек памяти в пределах каждой страницы. А старшие два разряда
устанавливаются только по значению битов
РА1:РА0 регистра STATUS.
Адресное пространство оперативного запоминающего устройства объединяет
регистры специальных функций и регистры общего назначения. Карта памяти
данных МК Р1С16С5х представлена на рис. 4.56.
Память данных разбита на 4 банка. В нулевом банке 32 ячейки памяти, в
остальных трех банках -по 16 ячеек. Номер используемого банка задают
разряды FSR.6 и FSR.5 регистра косвенной адресации FSR (00 - банк 0, 01 -
банк 1, 10 - банк 2,11- банк 3). Обратите внимание, что младшие 16
адресов в банках 1, 2 и 3 недоступны. При обращении по адресам,
принадлежащим недоступным областям, эти адреса будут отображаться на
соответствующий адрес банка 0: например, по адресам 21 h, 41 h, 61 h
будет считываться одна и та же ячейка памяти с адресом 01 h.
Рис. 4.55. Распределение адресного пространства ПЗУ программ для МК
Р1С16С5х
Из регистра STATUS
| Счетчик адреса PC ....
РС9 | PCS | PC7...PC0 |ч---------------^----
Адреса
Стек уровня 1
Стек уровня 2
000 Страница 0 OFF 100 1FF
200
Страница 1 2FF
300
3FF
400
Страница 2 4FF
500
5FF
600
Страница 3 6FF
700
7FF
PIC16C54
PIC16C57/C58
427
8-РАЗРЯДНЫЕ МИКРОКОНТРОЛЛЕРЫ
Рассматриваемый МК PIC16C54 имеет всего один банк оперативной памяти.
Адресное пространство из 32 ячеек памяти делится следующим образом:
диапазон адресов с OOh по 06h принадлежит адресам регистров специальных
функций, адреса с 07h по 1 Fh используют 25 ячеек памяти общего
назначения. В описании системы команд и те и другие именуются регистрами
общего назначения в противовес рабочему регистру центрального процессора
W, который по функциональному назначению близок к аккумулятору. Для
обращения к регистрам специальных функций и просто к ячейкам памяти
используются одни и те же способы адресации: прямая адресация и косвенная
с использованием регистра косвенной адресации FSR. Кроме того, каждый бит
любой ячейки памяти данных доступен с использованием одной из 4 команд
битового процессора. Перечень регистров специальных функций МК Р1С16С5х с
указанием назначения битов для некоторых из них приведен в табл. 4.50.
Адрес
регистра
00
01
02
03
04
05
06
07
08 09 0А 0В ОС 0D 0Е 0F
7 6 5 4 3 2 1 0
| А10 | А9 Т А8
00
01
02
03
04
05
06
07
08 09 0А 0В ОС 0D 0Е 0F
PCL
STATUS
FCR
PORTA
PORTB
Регистры
общего
назначения
Биты еыборд банка FSR.6:FSR.5
Регистры
общего
назначения
Банк 0*'
01
90
10
70
Регистры общего назначения (только для PIC16C57/58)
Банк 1м
Банк2**
БанкЗ"
3F
* - Регистр физически не существует
*" - Банк 0 доступен во всех микроконтроллерах семейства Р1С16С5х, банки
1,2,3 доступны только для PIC16C57/58
Рис. 4.56. Распределение адресного пространства памяти данных и регистров
специальных функций для МК Р1С16С5х
428
СЕМЕЙСТВО МК НС08 ФИРМЫ "MOTOROLA"
Часть регистров специальных функций МК не входит в адресное пространство
ОЗУ данных. Это регистры направления передачи портов ввода/вывода TRIS,
регистр конфигурации МК OPTION и некоторые другие. Для обращения к этим
регистрам используются специальные команды.
Рассматриваемый МК PIC16C54 имеет 12 двунаправленных линий ввода/вывода,
которые объединены в два порта: 4-разрядный порт PORTA и 8-разрядный порт
PORTB. Регистры данных портов располагаются в адресном пространстве
Предыдущая << 1 .. 231 232 233 234 235 236 < 237 > 238 239 240 241 242 243 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed