Схема тактирования и цикл выполнения команды
Входная тактовая частота, поступающая с вывода OSC1/CLKIN, делится внутри на четыре, и из нее формируются четыре циклические не перекрывающиеся тактовые последовательности Q1, Q2, Q3 и Q4. Счетчик команд увеличивается в такте Q1, команда считывается из памяти программы и защелкивается в регистре команд в такте Q4. Команда декодируется и выполняется в течение последующего цикла в тактах Q1...Q4. Схема тактирования и выполнения команды
Цикл выполнения команды состоит из четырех тактов: Q1...Q4. Выборка команды и ее выполнение совмещены по времени таким образом, что выборка команды занимает один цикл, а выполнение — следующий цикл. Эффективное время выполнения команды составляет один цикл.
Цикл выборки начинается с увеличения счетчика команд в такте Q1. В цикле выполнения команды выбранная команда защелкивается в регистр команд в такте Q1. В течение тактов Q2, Q3 и Q4 происходит декодирование и выполнение команды. В такте Q2 считывается память данных (чтение операнда), а запись происходит в такте Q4
Организация памяти программ и стека
Счетчик команд в МК Р1С16Р8Х имеет ширину 13 бит и способен адресовать 8Кх14бит объема программной памяти. Однако физически на кристаллах могут располагаться 512х 14 или 1Кх14 памяти (адреса 0000h- 01FF или 0000h – 03FFh). Обращение к адресам выше 1FFh (ЗFFh) фактически есть адресация в те же первые 512 адресов (первые 1К адресов).
|
|
Организация памяти программ и стека приведена на рис. ……..
В памяти программ есть выделенные адреса. Вектор сброса находится по адресу 0000h,
вектор прерывания – по адресу 0004h. Обычно по адресу 0004h располагается подпрограмма идентификации и обработки прерываний, а по адресу 0000h - команда перехода на метку, расположенную за подпрограммой обработки прерываний.
Организация памяти данных
Память данных МК разбита на две области. Первые 12 адресов - это область регистров специальных функций (SFR), а вторая - область регистров общего назначения (GPR). Область SFRуправляет работой прибора.
Обе области разбиты в свою очередь на банки 0 и 1. Банк 0 выбирается обнулением бита RP0 регистра статуса. Установка бита RP0 в единицу выбирает банк 1. каждый банк имеет протяженность 128 байт. Однако память данных существует только до адреса 02Fh или 04Fh.
Некоторые регистры специального назначения продублированы в обоих банках, а некоторые расположены в банке 1 отдельно.
Регистры с адресами 0Сh – 4Fh могут использоваться как регистры общего назначения, которые представляют собой статическое ОЗУ. Адреса регистров общего назначения банка 1 отображаются на банк 0. Следовательно, когда установлен банк 1, то обращение к адресам 8Ch – CFh фактически адресует банк 0.
|
|
В регистре статуса помимо бита RP0 есть еще бит RP1, что позволяет обращаться к четырем страницам (банкам) будущих модификаций этого кристалла.
К ячейкам ОЗУ можно адресоваться прямо, используя абсолютный адрес каждого регистра, или косвенно, через регистр указатель FSR. Косвенная адресация использует текущее значение разрядов RP1:RP0 для доступа к банкам. Это относится и к ЕЕPRОМ памяти данных. В обоих случаях можно адресовать до 512 регистров.
Занятие 46(50)
Дата добавления: 2022-01-22; просмотров: 18; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!