Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПиП МПС(Ассемблер Левицкий экт 4) / MProc / M9 / Системная архитектура часть 4..doc
Скачиваний:
68
Добавлен:
16.04.2013
Размер:
751.1 Кб
Скачать

4.3. Не реализованные адресные биты

Основываясь на модели процессора, некоторые биты физического и/или виртуального адреса не могут быть реализованы. Не зависимо от количества реализованных адресных битов, во всех процессорах, все регистры общего назначения, регистры переходов, управления, а также прикладные регистры, реализуют все 64 бита регистра. Аналогично, не зависимо от количества реализованных адресных битов, во всех процессорах, регистры контрольных точек инструкций и данных должны реализовывать все 64 адресных бита и все 54 бита маски.

4.3.1. Не реализованные физические адресные биты

Как показано на рис. 4.18, 64-битный физический адрес состоит из трех полей: атрибута физической памяти (PMA–PhysicalMemoryAttribute), не реализованных и реализованных битов.

63

62

IMPL_PA_MSB

0

PMA

не реализовано

реализовано

1

62 - IMPL_PA_MSB

IMPL_PA_MSB + 1

Рис. 4.18. Битовые поля физического адреса

Все модели реализации процессоров имеют, как минимум, 32 бита физического адреса (от 0 до 31), плюс бит атрибута физической памяти. Дополнительные реализованные физические биты должны быть непрерывны, и начинаться с бита 32. IMPL_PA_MSB– это позиция наиболее значимого реализованного бита физического адреса, которая определяется реализацией. В процессоре, который реализует все биты физического адресаIMPL_PA_MSBравно 62. Для дальнейшей информации о количестве битов физического адреса реализованных вItaniumпроцессоре, посмотрите документацию, специфицирующую процессор.

Если не реализованные физические биты устанавливаются программным обеспечением, то в процессе инструкций вставки TLB(itc, itr) вызывается ошибка «Не реализованный адрес данных». Вставки, выполненные обходчикомVHPT, как отмечено в разделе 4.1.6. «ХэшированиеVHPT», аварийно завершают поискVHPT, если используются не реализованные или зарезервированные поля. Для трансляций отмеченных как не представленные (TLB.p=0), процессор не проверяет допустимостьPPNи некоторых зарезервированных битов, как это отмечено на рис. 4.6.

Когда модель процессора реализует не все биты физического адреса, пропущенные биты считаются нулевыми. Физические адреса, в которых биты PA{62:min(IMPL_PA_MSB+1,62)} не являются нулевыми, рассматриваются как «нереализованные» физические адреса в данной модели процессора. Физические адреса проверяются на корректность использования путем контроля того, что битыPA{62:min(IMPL_PA_MSB+1,62)} являются нулевыми.

4.3.2. Не реализованные виртуальные адресные биты

Как показано на рис. 4.19, 64-битный виртуальный адрес состоит из трех полей: номера виртуального региона (VRN–VirtualRegionNumber), не реализованных и реализованных битов.

63

61

60

IMPL_VA_MSB

0

VRN

не реализовано

реализовано

3

60 - IMPL_VA_MSB

IMPL_VA_MSB + 1

Рис. 4.19. Битовые поля виртуального адреса

Все модели процессоров обеспечивают три VRN-бита вVA{63:61}.IMPL_VA_MSB– это позиция наиболее значимого реализованного бита виртуального адреса, которая определяется реализацией. В дополнение к тремVRNбитам, все модели процессоров реализуют, как минимум, 51 бит виртуального адреса, т.е. наименьшее значениеIMPL_VA_MSBравно 50. В процессоре, который реализует все 64 бита виртуального адреса,IMPL_VA_MSBравно 60. Для дальнейшей информации о количестве битов виртуального адреса реализованных вItaniumпроцессоре, посмотрите документацию, специфицирующую процессор.

Если модель процессора реализует не все биты виртуального адреса, то пропущенные биты заполняются с помощью знакового расширения бита VA{IMPL_VA_MSB}. Виртуальные адреса, в которых битыVA{60:min(IMPL_VA_MSB+1,60)} не соответствуют битуVA{IMPL_VA_MSB}, рассматриваются как «не реализованные адреса» в данной модели процессора. Виртуальные адреса проверяются на корректность использования путем контроля того, что битыVA{60:min(IMPL_VA_MSB+1,60)} являются идентичными битуVA{IMPL_VA_MSB}.