October 18 2017 12:23:41
Навигация
Авторизация
Логин

Пароль



Вы не зарегистрированы?
Нажмите здесь для регистрации .

Забыли пароль?
Запросите новый здесь.
Регистр условий CR
ФОРМАТЫ ПРЕДСТАВЛЕНИЯ ДАННЫХ И ВЫПОЛНЕНИЕ ОПЕРАЦИЙ

Регистр условий CR (рис. 2.67, а) состоит из восьми 4-битовых полей CR7-0. Младшее поле CR0 содержит признаки, формируемые в результате целочисленных операций:

LТ= 1 -при отрицательном результате;

GT= 1 -при положительном ненулевом результате;

EQ = 1 - при нулевом результате;

SO - принимает значение аналогичного бита в регистре XER.

Поле CR1 содержит признаки FX, FEX, VX, ОХ, устанавливаемые при операциях над числами с плавающей точкой, которые принимают значения аналогичных битов в регистре FPSCR. Содержимое остальных полей CR7-2 устанавливается по результату операций сравнения целых или вещественных (с плавающей точкой) чисел. При сравнении целых чисел формируются признаки LT (меньше), GT (больше), EQ (равно), SO, назначение которых указано выше. При сравнении вещественных чисел устанавливаются аналогичные признаки FL (меньше), FG (больше), FE (равно), а также признак FU, который принимает значение FU = 1, если хотя бы один из сравниваемых операндов является не-числом (NAN). Наличие различных полей для признаков позволяет сохранять несколько результатов сравнения, которые используются по мере необходимости.

Следует отметить, что в микропроцессорах семейства PowerPC принята нумерация разрядов, начиная со старшего. При этом биты АО, DO содержат старшие разряды, а биты А31, D31 - младшие разряды 32-разрядного слова адреса или данных. Соответственно и содержимое регистров микропроцессора представляется в формате, начальный бит которого имеет номер 0 (см. рис. 2.67,2.69,2.70,2.71).

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

Регистр XER (рис. 2.67, б) содержит признаки переноса СА, переполнения OV, устанавливаемые в результате выполнения арифметических целочисленных операций, и признак общего переполнения SO, который сохраняет установленное при переполнении значение SO = 1 до выполнения команд загрузки в регистр нового содержимого. Значение SO переносится в соответствующие биты регистра CR после каждой операции. Таким образом, признак SO = 1 указывает на возникновение переполнения в ранее выполненных командах программы. Поле SS определяет число байтов (длину строк символов), пересылаемых соответствующими командами.

a)CR
0 1 2 3 4 5 6 7





28
LT GT EQ SO FX FEX VX OX ... LT/FL GT/FG EQ/FE SQ/FU ...
CR0
CR1





CRi

6) XER
0 1 2 3







24 25 31
SO OV SA Резервировано SS

Рис. 2.67. Форматы содержимого регистров CR и XER

Регистр связи LR служит для хранения адреса команды, к которой осуществляется условный или безусловный переход. При вызове подпрограммы в этот же регистр заносится адрес команды возврата. В регистр-счетчик CTR заносится число циклов, которое используется для организации программных циклов. При этом содержимое CTR уменьшается на единицу после завершения очередного цикла. Имеются также специальные команды условного ветвления bcctr, использующие содержимое CTR в качестве адреса перехода.

Следует отметить, что в микропроцессорах PowerPC имеются команды обращения к служебным регистрам - mfspr (чтение), mtspr (запись). Поэтому для служебных регистров, кроме имени XER, LR, CTR и др., принята цифровая нумерация SPR1, SPR8, SPR9 и т. д. (рис. 2.66, 2.68), где номер служит для идентификации регистров при обращении к ним с помощью этих команд.

Регистровая модель супервизора (рис. 2.68) включает в себя регистровую модель пользователя, а также содержит несколько групп служебных регистров, часть из которых являются общими для всего семейства PowerPC, а часть - специфичными для модели PowerPC 604.

Регистровая модель пользователя
Регистры
Конфигурации
31 0 31 0
31 0
MSR PVR(SPR1008) HIDO (SPR287)
Регистры управления памятью
31 0
31 0
31 0
IBAT0U (SPR528) DBAT0U (SPR536) SR0
IBAT0L (SPR529) DBAT0L (SPR537) SR1
IBAT1U(SPR530) DBAT1U(SPR538) .
.
IBAT1L(SPR531) DBAT1L (SPR539)
IBAT2U (SPR532) DBAT2U (SPR540) SR15
IBAT2L (SPR533) DBAT2L(SPR541)
IBAT3U (SPR534) DBAT3U (SPR542) 31 0
IBAT3L (SPR535) DBAT3L (SPR543) SDR1(SPR25)
Регистры обработки исключений
31 0
31 0
31 0
DAR(SPR19) SRR0 (SPR26) SPRG0 (SPR272)

SRR1 (SPR27) SPRG1 (SPR273)
31 0
SPRG2 (SPR274)
DAR(SPR18) SPRG3 (SPR275)
Вспомогательные регистры
31 0
31 0
31 0
TBL (SPR284) EAR (SPR282) IABR (SPR1010)
TBU (SPR285)


31 0 31 0
31 0 PIR (SPR1023) DABR(SPR1013)
DEC (SPR22)

Регистры контроля эффективности

Рис. 2.68. Регистровая модель супервизора микропроцессора МРС604

Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста, залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, авторизуйтесьили зарегистрируйтесь для голосования.

Нет данных для оценки.

Время загрузки: 0.03 секунд 2,255,309 уникальных посетителей