Jump to content

IBM Система/370-ХА

(Перенаправлено с System/370-XA )
Система/370-ХА
Дизайнер ИБМ
Биты 32-битный
Представлено 1983 год ; 41 год назад ( 1983 )
Дизайн ЦИСК
Тип Регистрация–Регистрация
Регистрация–Память
Память-Память
Кодирование Переменная (длиной 2, 4 или 6 байт)
Ветвление Код состояния , индексация, подсчет
Порядок байтов Большой
Предшественник Система/370
Преемник ЕКА/370
Регистры
общего назначения 16
Плавающая точка 4 64-битный
Регистры IBM S/370-XA
Общие регистры 0–15

Двойное дополнение
0 31
Регистры управления 0–15

См. Принципы работы [1] : 4-6–4-8 
0 31
Регистры с плавающей запятой 0–6

С Смещенная экспонента Мантисса
0 1 7 8 31

Мантисса (продолжение)
32 63
архитектура Расширенный Расширенная режим управления PSW [1] : 4-5–4-6 

0 Р 0 0 0 Т я
ТО
И
Х
Ключ 1 М В П С 0 СС Программа
Маска
0 0 0 0 0 0 0 0
0 1 2 4 5 6 7 8 11 12 13 14 15 16 17 18 19 20 23 24 31

А Адрес инструкции
32 33 63
S/370-XA Режим ЕС Сокращения PSW
Биты Поле Значение
1 Р ПЕР Маска
5 Т ЭТА мода
6 ИО Маска ввода-вывода; зависит от маски канала в CR2
7 БЫВШИЙ Внешняя маска; зависит от маски внешнего подкласса в CR0
8-11 Ключ PSW-ключ
12 Е=1 Расширенный управления режим
13 М Маска для машинной проверки
14 В Состояние ожидания
15 П Проблемное состояние
16 С Управление адресным пространством
0 = режим первичного пространства
1=режим вторичного пространства
18-19 СС Код состояния
20-23 ПМ
Программа Маска
Кусочек Значение
20 Переполнение фиксированной точки
21 Десятичное переполнение
22 Недополнение экспоненты
23 Значение
32 А Режим адресации
0=24 bit; 1=31 bit
33-63 Я Адрес инструкции
  • В документации IBM биты нумеруются от старшего до младшего; самый старший (крайний левый) бит обозначается как бит номер 0.

IBM System/370-XA — это архитектура набора команд, представленная IBM в 1983 году для процессоров IBM 308X . Он расширяет архитектуру IBM System/370 для поддержки 31-битных виртуальных и физических адресов и включает переработанную архитектуру ввода-вывода.

31-битная виртуальная адресация

[ редактировать ]

В System/360 , кроме архитектур 360/67 и System/370 , регистры общего назначения имели ширину 32 бита, машина выполняла 32-битные арифметические операции, а адреса всегда хранились в 32-битных словах, поэтому архитектура считалась 32-битной , но машины игнорировали верхние 8 бит адреса, что приводило к 24-битной адресации. Большая часть большой установленной базы кода System/360 и System/370 опиралась на 24-битный логический адрес ; В частности, широко используемая машинная инструкция, LA, Загрузить адрес, явно очищает восемь старших бит адреса, помещаемого в регистр. Если бы 24-битное ограничение было снято, это создало бы проблемы с миграцией существующего программного обеспечения.

Проблема была устранена путем добавления бита режима адресации в слово состояния программы, определяющего, работает ли программа в 24-битном режиме, в котором игнорируются восемь старших бит виртуальных адресов, или в 31-битном режиме, в котором только самый верхний бит виртуальные адреса игнорируются. [2] : 201-202  [1] : 1-2  Было указано несколько причин выбора 31 бит вместо 32 бит:

  1. Желание сохранить старший бит в качестве «управляющего или управляющего бита». [2] : 201  В частности, стандартное соглашение о вызове подпрограмм отмечает последнее слово параметра, устанавливая его старший бит. [3]
  2. Взаимодействие между 32-битными адресами и двумя инструкциями управления циклом, BXH и BXLE которые рассматривали свои аргументы как числа со знаком при выполнении сравнений (и это, как говорят, было причиной того, что TSS использовала 31-битную адресацию в модели 67). [4] : 26, примечание 85
  3. Информация от ключевых исходных сайтов Модели 67, которые обсуждали альтернативы в течение начального периода проектирования системы и рекомендовали 31 бит (вместо 32-битной конструкции, которая в конечном итоге была выбрана в то время). [4] : 8–9, примечание 21.

Некоторые машинные инструкции в этом 31-битном режиме адресации изменяют бит режима адресации. Например, исходные инструкции вызова подпрограммы BAL, Branch and Link и его эквивалент регистр-регистр, BALR, Регистр ветвей и ссылок, хранит определенную информацию о состоянии, код длины инструкции, [а] код условия и маска программы в верхнем байте адреса возврата. А BAS, Branch and Save, были добавлены инструкции, позволяющие использовать 31-битные адреса возврата. BASи его эквивалент регистр-регистр, BASR, Регистр перехода и сохранения, был частью набора команд 360/67, который был единственной моделью System/360, допускавшей адреса длиной более 24 бит. Эти инструкции были сохранены, но были изменены и расширены для 31-битной адресации.

Дополнительные инструкции, поддерживающие разрешение вызовов между 24-битным и 31-битным кодом адресации, включают две новые инструкции вызова/возврата регистр-регистр, которые также влияют на изменение режима адресации. BASSM, Ветвь и режим сохранения и установки, [5] 24/31-битная версия вызова, в которой сохраняется адрес связи, включая режим, и осуществляется переход к адресу в возможно другом режиме, и BSM, Режим перехода и установки, 24/31-битная версия возврата, при которой возврат осуществляется непосредственно по ранее сохраненному адресу связи и в предыдущем режиме. Взятые вместе, BASSM и BSM разрешить 24-битные вызовы 31-битной версии (и возврат к 24-битной версии), 31-битные вызовы 24-битной версии (и возврат к 31-битной версии), 24-битные вызовы 24-битной версии (и возврат к 24-битной версии) ) и 31-битные вызовы 31-битной версии (и возврат к 31-битной версии). [2] : 202 

Нравиться BALR 14,15 (только 24-битная форма вызова), BASSM используется как BASSM 14,15, где адрес связи и режим сохраняются в регистре 14, а переход осуществляется к адресу и режиму подпрограммы, указанным в регистре 15. Примерно аналогично BCR 15,14 (только 24-битная форма безусловного возврата), BSM используется как BSM 0,14, где 0 указывает, что текущий режим не сохраняется (программа все равно выходит из подпрограммы), и необходимо выполнить возврат к вызывающей программе по адресу и режиму, указанным в регистре 14. [6]

31-битная физическая адресация

[ редактировать ]

System/370 изначально поддерживал только 24-битные физические адреса; функция расширенного реального адреса расширила это значение до 26-битных адресов. [7]

System/370-XA изменил формат записи таблицы страниц для поддержки 19 бит адреса страничного кадра; страницы имеют размер 4 КБ в 370-XA, поэтому объединение 19-битного адреса страничного кадра с 12-битным смещением внутри страницы дает 31-битный физический адрес. [1] : 3-25  Командные слова канала могут иметь один из двух форматов: формат 0 — это формат System/370 с 24-битным адресом данных, а формат 1 — дополнительный формат с 31-битным адресом данных. [2] : 202  [1] : 1-3 

ввод/вывод

[ редактировать ]

System/370-XA представила канальную подсистему, которая выполняла организацию очереди ввода-вывода, ранее выполняемую операционной системой.

Примечания

[ редактировать ]
  1. ^ Поскольку код длины инструкции равен 00b для BALR и равен 01b для BAL, старший бит всегда гарантированно будет установлен в 0, тем самым указывая 24-битный режим, для BALR и BAL в системах XA и более поздних версиях.
  1. ^ Jump up to: а б с д и Принципы работы IBM System/370 с расширенной архитектурой (PDF) (первое издание). ИБМ . Март 1983 г. SA22-7085-0.
  2. ^ Jump up to: а б с д А. Падегс (май 1983 г.). «Расширенная архитектура System/370: соображения проектирования». Журнал исследований и разработок IBM . 27 (3). ИБМ: 198–205. дои : 10.1147/rd.273.0198 .
  3. ^ «WAIT — Ожидание одного или нескольких событий» . Программирование z/OS MVS: Справочник авторизованных служб ассемблера, том 4 . ИБМ . ... старший бит в последнем полном слове должен быть установлен в единицу, чтобы указать конец списка.
  4. ^ Jump up to: а б Вариан, Мелинда (1997). VM и сообщество VM, прошлое, настоящее и будущее (PDF) . ПОДЕЛИТЬСЯ 89 сеансами 9059-9061.
  5. ^ «Использование инструкций BASSM и BSM» . Программирование MVS в z/OS: Руководство по службам ассемблера . ИБМ .
  6. ^ См. Библиотека системного программирования MVS/Extended Architecture: 31-битная адресация (PDF) (второе изд.). ИБМ . Январь 1984 г. GC28-1158-1. , обширные примеры использования BAS, BASR, BASSM и BSM, в частности, стр. 29–30.
  7. ^ Принципы работы IBM System/370 (PDF) (одиннадцатое изд.). ИБМ . Сентябрь 1987 г. с. 3-26. А22-7000-10.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 657dd6f5ac8970456ac320532efc383b__1719436860
URL1:https://arc.ask3.ru/arc/aa/65/3b/657dd6f5ac8970456ac320532efc383b.html
Заголовок, (Title) документа по адресу, URL1:
IBM System/370-XA - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)