Архитектура центральных процессоров мейнфреймов zSeries Лекция 3
Systems and Technology Group Architecture modes: ESA/390 vs. z/Architecture System z supports two architecture modes: ESA/390 and z/Architecture In ESA/390 architecture, the system can run old (31-bit) operating systems and applications (just as if you ran on an S/390 system such as 9672 G6) For reasons of compatibility, a configuration is in ESA/390 architecture initially To switch to z/Architecture, the operating system issues a Signal Processor (SIGP) instruction with order code set architecture All CPUs except the one that issues SIGP set architecture must be in stopped state This order applies to all CPUs in the configuration, including the one that issues SIGP.
Ключевые характеристики z/Architecture 64-bit architecture, uses 64-bit storage addresses and 64-bit integer arithmetic instructions Superset of former ESA/390 architecture that provided 31-bit storage addresses and 32-bit integer arithmetic instructions Incompatibilities between z/Architecture and ESA/390 usually affect only operating systems, not applications – Different PSW formats – Address translation process for virtual storage – Layout of the assigned storage locations
Базовая архитектура zSeries SMP архитектура – симметричная мультипроцессорная обработка данных
Регистровая модель
Регистровая модель процессора z/Architecture на современном этапе развития включает следующие группы регистров: Обознач ение Наименование Разрядно сть Кол-во GR Общего назначения 6416 FPR С плавающей точкой 6416 FPC Управления операциями с плавающей точкой 321 AR Доступа 3216 CR Управления 6416 PSW Слова состояния программы 1281 PR Префикса 641 TOD Часов 321 TR Таймера 641 CC компаратора времени 641
Слово состояния процессора Формат PSW
Problem State vs. Supervisor State In problem state, the program must not execute privileged instructions (User Mode) – No access to control registers – No access to timers – No access to storage keys – Access only to uncritical parts of the PSW – In general: No access to architecture facilities that are vital to the system as a whole If authorized, a program in problem state may execute certain semiprivileged instructions In supervisor state, a program may exploit all architecture facilities(Kernel Mode): Transition from problem to supervisor state – Via an interrupt (by loading a new PSW that indicates supervisor state) Transition from supervisor to problem state – Via the privileged LOAD PSW [EXTENDED] instruction
Система команд процессора Адреса памяти Таблица 2.1. Адресация операндов фиксированной длины Операнды Байт Полуслово (2 байта) Слово (4 байта) Двойное слово (8 байт) 0816 Учетверенное слово (16 байт) 016
Alignment Requirements
Режимы адресации памяти
Форматы адресов а) архитектура с 24-, 31-разрядными адресами разрядный адрес 31-разрядный адрес
Форматы адресов б) z/Architecture разрядный адрес 31-разрядный адрес 64-разрядный адрес
Форматы команд (полностью будут даны в курсе HASM)
Форматы команд Z900
Поля, используемые в форматах команд z/Architecture COP Код операции команды, определяющий тип операции 1, 2, 3, 4Индексы, указывающие на 1, 2, 3 и 4 операнды команды R1, R2, R3Номера регистров B1, B2, B4Номера базовых регистров X2Номера индексных регистров D1, D2, D4, DL1, DH1, DL2, DH2 Поля смещения (L - младшая часть смещения, H - старшая часть смещения) M1, M3, M4Поля маски I, I2Поля непосредственных операндов L, L1, L2Поля длины операндов
Формат команды RR
Формат команды RRE
Формат команды RX
Длина команды определяется двумя старшими битами кода операции COP: Старшие биты COP Длина команды (число полуслов)
Классы операций в системе команд z/Architecture: 1. основные (или базовые): целочисленная двоичная арифметика, логические операции, переходы и др.; 2.десятичные: операции над десятичными числами; 3. с плавающей точкой: поддержка и реализация операций с плавающей точкой в форматах: двоичном (BFP) и шестнадцатеричном (HFP); 4.управления: операции для управления работой процессора; 5.ввода-вывода: управление операциями ввода- вывода.
Основные команды
Команды сравнения
Команды выполнения
Типы завершения выполнения команды Types of Instruction Ending Completion – normal end Suppression – Instruction is not executed, but PSW instruction address has been updated – Occurs with most of the program interrupt conditions (program old PSW points after the failing instruction) Nullification – Instruction is not executed and PSW instruction address has not been updated – Occurs with program interrupt conditions that pertain to DAT handling (i.e. The instruction will be executed after the page has been loaded) – Occurs also for some interruptible instructions (MVCL, CLCL) that resume at the point of interrupt Termination – Instruction may have been partially executed and PSW instruction address has been updated