29
Основы построения БЭВМ Лекция 2, вторая часть (2 часа) Управление работой процессора

Основы построения БЭВМ

Embed Size (px)

DESCRIPTION

Основы построения БЭВМ. Лекция 2 , вторая часть ( 2 часа) Управление работой процессора. 2.8. Состояния процессора. Процессор z/Architecture может находиться в одном из четырех взаимоисключающих состояний: СТОП - команды и прерывания (кроме прерывания для рестарта) не выполняются. - PowerPoint PPT Presentation

Citation preview

Page 1: Основы построения БЭВМ

Основы построения БЭВМ

Лекция 2, вторая часть (2 часа)

Управление работой процессора

Page 2: Основы построения БЭВМ

2.8. Состояния процессораПроцессор z/Architecture может находиться в одном из

четырех взаимоисключающих состояний:

• СТОП - команды и прерывания (кроме прерывания для рестарта) не выполняются.

• РАБОТА - команды и прерывания исполняются в соответствии с управляющими кодами в слове состояния программы, управляющих регистрах и режимом, заданным оператором.

• ЗАГРУЗКА - состояние устанавливается в процессе первоначальной загрузки в соответствии с ESA/390.

• СБОЙ - переход в это состояние вызывается машинными сбоями, выявленными в процессе функционирования процессора.

Page 3: Основы построения БЭВМ

Состояния процессора и условия переходов Следую

щее состояни

е

ЗАГРУЗКА

СТОП РАБОТА СБОЙ

Исходное

состояни

е

       

ЗАГРУЗКА

    Пошаговый режим Непрерывный режим

Сбой оборудования

СТОП

  Переключатели загрузки

  Переключатель рестарта, приказ запуска в команде SYGNAL PROCESSOR

РАБОТА

  Переключатели сброса процессора, приказ "Стоп" в команде SYGNAL PROCESSOR, завершение шага в пошаговом режиме работы, останов по совпадению адресов

 

СБОЙ   - Сброс -  

Page 4: Основы построения БЭВМ

Слово состояния программы PSW

Текущее слово состояния программы PSW, как и управляющие регистры, содержит информацию, необходимую для управления процессом исполнения команд программы.

Форматы PSW:- для z/Architecture 128 бит- для предшествующей ей архитектуры

ESA/390 64 бита

Page 5: Основы построения БЭВМ

Внешнее управление

Предусмотрено пять инициируемых извне функций процессора: – сброс процессора; – начальный сброс процессора; – сброс подсистемы; – сброс с очисткой; – сброс по питанию.

Page 6: Основы построения БЭВМ

Сброс процессора• Сброс процессора обеспечивает очистку указателей сбоев

оборудования и устраняет неопределенность состояния процессора, возникающую в результате таких сбоев, в том числе путем сохранения состояния для последующего анализа и восстановления. Сброс процессора обеспечивает:

• прекращение выполнения текущей команды или других действий, например прерываний;

• сброс всех условий прерываний, кроме внешних плавающих прерываний;

• все предварительно выбранные команды и операнды, а также подготовленные для записи в память результаты сбрасываются;

• очищаются строки буферов ALB, TLB; • если сброс вызван переключателем "загрузка - нормальная"

любого из процессоров конфигурации, устанавливается режим архитектуры ESA/390, текущее PSW трансформируется в формат ESA/390, сохраняется для последующего восстановления режима z/Architecture по команде SIGNAL PROCESSOR.

Page 7: Основы построения БЭВМ

Начальный сброс процессора

Начальный сброс процессора включает операции сброса процессора с последующими дополнительными операциями очистки и инициализации:

• если сброс вызван переключателем "загрузка - нормальная", в данном процессоре и во всех процессорах конфигурации устанавливается режим архитектуры ESA/390;

• содержимое текущего PSW, старого PSW, регистров префикса, таймера CP, компаратора времени, программируемого регистра TOD и регистра управления операциями с ПТ устанавливается в 0;

• в управляющих регистрах устанавливаются начальные состояния, соответствующие режиму z/Architecture.

Page 8: Основы построения БЭВМ

Сброс подсистемы

Сброс подсистемы предназначен для тех элементов конфигурации, которые не являются процессорами, путем выполнения следующих действий:

• в канальной подсистеме выполняется сброс системы ввода-вывода, включая сброс прерываний ввода-вывода и передачу системного сброса в устройства ввода-вывода;

• сбрасываются плавающие прерывания в конфигурации.

Page 9: Основы построения БЭВМ

Сброс с очисткой

Сброс с очисткой объединяет операции начального сброса процессора со следующими операциями инициализации:

• во всех процессорах конфигурации устанавливается режим архитектуры ESA/390;

• регистры общего назначения, регистры с плавающей точкой, регистры доступа устанавливаются в 0;

• содержимое основной памяти в конфигурации и соответствующие ключи памяти обнуляются;

• блокировки, применяемые в любом процессоре конфигурации при исполнении команды PERFORM LOCKED OPERATION, отменяются;

• выполняется сброс подсистемы.

Page 10: Основы построения БЭВМ

Сброс по питанию

Сброс по питанию выполняется при включении питания.

Сброс CP включает сброс регистров GR, FPR, AR в нулевое состояние и установку режима ESA/390 в случае сброса для конфигурирования или режима, в котором находятся другие процессоры.

Сброс CP может сопровождаться сбросом TOD часов, основной и расширенной памяти и канальной подсистемы

Page 11: Основы построения БЭВМ

2.11. Средства временной синхронизации (Timing)

Цель - отсчет времени и взаимная синхронизация процессоров:

• часы для отсчета реального времени и ведения даты и времени суток TOD сlock;

• компаратор времени, предназначенный для выработки прерывания, когда показания часов TOD превышают установленное программой значение;

• процессорный таймер (CPU Timer), обеспечивающий измерение прошедшего времени и выработку прерывания в случае истечения заданного интервала времени.

Page 12: Основы построения БЭВМ

Часы TOD

• Часы TOD представляют собой 104-разрядный двоичный счетчик, который инкрементируется в типовом варианте каждую микросекунду добавлением +1 в разряд 51

Формат счетчика часов TOD

0 51 103

1 микросекунда

Page 13: Основы построения БЭВМ

Состояния часов TOD:

Часы могут находиться в одном из следующих состояний:

• Выставлены (CR0, бит TOD-clock-sync-control),

• Не выставлены, • Остановлены (команда SET CLOCK), • Неисправны или • Отключены.

Page 14: Основы построения БЭВМ

Установка показаний часов TOD:

В многопроцессорных конфигурациях одновременное выполнение команд SET CLOCK в разных процессорах блокируется.

Каждый процессор системы содержит 32-разрядный программируемый регистр TOD, младшие 16 бит которого содержат поле Programmable Field, загружаемое в память вместе с показаниями часов командой STORE CLOCK EXTENDED.

Это позволяет идентифицировать показания часов для разных конфигураций.

Page 15: Основы построения БЭВМ

Компаратор времени

• Компаратор времени предназначен для сравнения показаний часов TOD с загруженной в компаратор уставкой. В типовом варианте сравниваются 48 старших разрядов счетчика часов и уставка такой же разрядности. В некоторых моделях с целью повышения разрешающей способности компаратора сравниваются более 48 бит. Компаратор вырабатывает прерывание в следующих случаях:

• часы идут и уставка в компараторе меньше показаний часов в сравниваемых разрядах;

• часы в неисправном или отключенном состоянии.

Page 16: Основы построения БЭВМ

Процессорный таймер Процессорный таймер - двоичный счетчик в формате,

соответствующем старшим 64-м разрядам счетчика часов, исключая старший бит 0, рассматриваемый как знаковый.

• Таймер декрементируется вычитанием 1 из разряда 51 каждую микросекунду.

• Прерывание от таймера вырабатывается при достижении отрицательного значения, то есть, при установке 1 в разряде 0.

• Загрузка в таймер выполняется командой SET CPU TIMER, а чтение - командой STORE CPU TIMER.

Page 17: Основы построения БЭВМ

2.12. Мультипроцессирование

Цель - распараллеливание вычислительных процессов с разделением данных и ресурсов и обеспечение высокой готовности системы.

Мультипроцессирование – это взаимодействие процессоров через общую память и средства межпроцессорных обменов.

Основу мультипроцессирования составляют: • общая разделяемая память; • межпроцессорное взаимодействие; • синхронизация часов.

Page 18: Основы построения БЭВМ

Дополнительные средства мультипроцессирования

Дополнительными средствами являются внешние прерывания.

Канальная подсистема, включая все подканалы, в мультипроцессорной конфигурации может быть доступна всем процессорам.

Прерывания по вводу-выводу являются плавающими, то есть могут быть обработаны любым процессором.

Page 19: Основы построения БЭВМ

Реализация мультипроцессирования

• Разделяемая память - обращение нескольких процессоров в одни и те же ячейки, определяемые одним и тем же абсолютным адресом.

• Адрес процессора в системе, присваиваемый каждому процессору при инсталляции системы и не изменяемый при ее реконфигурациях.

• Команда Signal Processor - основное средство взаимодействия процессоров путем сигнализации и получения ответа.

• В каждом процессоре предусмотрены средства для передачи, получения и выполнения приказов, а также формирования ответа для процессора, исполняющего команду Signal Processor.

• Адресуемый процессор формирует для процессора, исполняющего команду Signal Processor, код состояния.

Page 20: Основы построения БЭВМ

2.13. Прерывания

• Прерывания процессора позволяют обеспечить быструю реакцию процессора при возникновении особых условий в самом процессоре, в подсистеме ввода-вывода, в других процессорах и вне системы.

• Прерывания допускаются только в режиме РАБОТА, за исключением прерывания для рестарта, которое может быть выполнено в режимах РАБОТА или СТОП.

• Инициируются прерывания запросами от устройств, в которых возникают условия прерываний.

Page 21: Основы построения БЭВМ

Классы прерываний

Все прерывания разбиты на шесть классов:

1. Прерывание по вызову супервизора

2. Программные прерывания

3. Прерывания от схем контроля

4. Внешние прерывания

5. Прерывания ввода-вывода

6. Прерывание рестарта

Page 22: Основы построения БЭВМ

Код прерываний

Причина прерывания внутри класса уточняется кодом прерывания этого класса, который в процессе прерывания заносится в отдельную область памяти, закрепленную за данным классом.

В зависимости от класса длина кода прерывания может быть 16, 32 или 64 бита.

Код прерывания используется прерывающей программой для определения процедуры, выполнение которой необходимо для обработки прерывания.

Page 23: Основы построения БЭВМ

Класс прерываний = область памяти

Каждому классу прерываний выделены две фиксированные области памяти:

• Для текущего (старого) PSW прерываемой программы,

• Старое PSW обычно содержит адрес команды, которая выполнялась бы следующей, если бы прерывания не произошло.

• Для нового PSW прерывающей программы• Каждый процессор имеет свои области за

счет механизма префиксации.

Page 24: Основы построения БЭВМ

Адреса размещения PSW, кодов и масок прерываний

Классы Прерыван

ий

Адреса памятидля

размещенияPSW

Маска прерыванийАдреса

памяти для кода прерыван

ия

Старое

Новое в PSW в управляющих регистрах

Внешние 304 432 7 CR0[48-50, 52-54, 57, 59]

134-135

Ввода-вывода

368 496 6 CR6[32-39] 184-191

От схем Контроля

352 480 13 CR14[35-39] 232-239

Программные

336 464 120-23

CR0[33], CR1[57], CR8[32-47], CR9[32-36], FPC?

142-143

Рестарта 288 416 - - -

Вызовсупервизо

ра

320 448 - - 138-139

Page 25: Основы построения БЭВМ

Процесс прерывания

Процесс прерывания включает следующие действия:• распознавание класса и причины прерывания; • сохранение текущего PSW как старого PSW

распознанного класса; • сохранение информации, идентифицирующей

прерывание; • выборка и размещение в процессоре нового PSW

распознанного класса; • запуск прерывающей программы в соответствии с

новым PSW.Возврат к прерванной программе выполняется путем

восстановления в процессоре старого PSW.

Page 26: Основы построения БЭВМ

Плавающие (floating interruption) прерывания

Прерывания, которые могут быть обработаны любым из процессоров конфигурации, называются плавающими прерываниями (floating interruption). Запрос на такое прерывание подается в первый из процессоров, в котором это прерывание не замаскировано, после чего сбрасывается для исключения повторных прерываний в других процессорах. К плавающим прерываниям относятся прерывания ввода-вывода, некоторые из внешних прерываний и от схем контроля.

Page 27: Основы построения БЭВМ

Маскирование• Разрешение и запрет прерываний в процессоре реализуются с

использованием маскирования. • Маски прерываний размещаются в зависимости от класса в

текущем PSW, управляющих регистрах, регистре управления операциями с плавающей точкой FPC.

• Каждый разряд маски разрешает или запрещает соответствующее прерывание. Неразрешенные прерывания либо полностью игнорируются, либо остаются в состоянии ожидания.

• Маской могут быть запрещены как все прерывания данного класса, так и отдельные типы прерываний.

• Маскирование реализует механизм приоритетов прерывающих программ, когда каждая программа устанавливает разрешение или запрет ее прерывания другими программами.

Page 28: Основы построения БЭВМ

Механизм приоритетов запросов

Прерывания обрабатываются в следующем порядке:

• прерывание по вызову супервизора; • программные прерывания; • прерывания от схем контроля, допускающие

отложенную обработку; • внешние прерывания; • прерывания ввода-вывода; • прерывание рестарта.

Page 29: Основы построения БЭВМ

PWS

Обработка одновременно поступивших запросов осуществляется путем последовательной записи старых PSW и выборки новых PSW без исполнения команд прерывающих программ до тех пор, пока не будут обработаны все имеющиеся запросы. Далее в обратном порядке в соответствии с сохраненными старыми PSW выполняются прерывающие программы.