Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Идеология организации без упорядоченного выполнения 6 страница




 

 


 

 

время доступа время устройства время передачи время завершения

и контроллера данных операции


время время

ожидания обнаружения

критическое время

задержка доступа   д  

Устройство 3класса

                                   
   
Устройство 1класса
       
 
Время формирования последовательности выборки устройства
         
 
       
 
 
 
   
Запрос на прерывание
 
Повтор канальной прграммы
 
 

 

 


 

       
   
 


 

                       
   
   
       
 
 
Топология Связи с устройством
 
     
 
   
 
 

 

 


 


Лекция N11

 

Тема лекции: Канальная система ввода вывода.

Структурные элементы канальной системы ввода вывода.

Организация операций ввода вывода в каналах.

.Структура канальной системы компьютеров Zархитектуры.

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

 

 

1. Канал- совокупность технических средств вычислительной системы, предназначенных для управления обменом информацией между внешними устройствами и оперативной памятью системы. Системная шина имеет тоже часть своего оборудования, предназначенного для выполнения операций ввода вывода, но в отличии от шины канал-это централизованная аппаратная часть системы, независимо от процессора, выполняющая выше указанные функции с одним исключением: инициализации ввода вывода остается за процессором. И это ясно почему так как управление вычислительной системы идет через процессор а точнее через выполнение команд.

Аппаратная часть канала в основном реализуется в виде автономного оборудования. В таких системах для связи с оперативной памятью требуются при выполнении операций ввода вывода только циклы связи с оперативной памятью для приема передачи данных и управляющей информации. В свое время,в системах со средней производительностью для уменьшения стоимости системы на время связи канала с памятью использовали часть оборудования процессора и его информационных трактов.. Примером подобной архитектуры была архитектура отечественной ЭВМ среднего класса ЕС1045. В той машине была общая память микропрограмм, и канал на время микропрограммного обслуживания через механизм микропрограммного прерывания получал доступ к этой памяти. При этом устанавливался специальный бит

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

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

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

 

Средства канала, необходимые для выполнения одной операции ввода вывода, называются подканалом. Таким средством является область оперативной памяти системы, выделенная для хранения исходной и промежуточной информации, необходимой для выполнения операции ввода вывода. Доступ к этой памяти возможен только для команд ввода вывода со стороны процессора и со стороны канала в процессе выполнения операции. Каждая операция ввода вывода предназначена для выполнения с конкретным одним устройством в системе поэтому напрашивается вывод: для обеспечения этих операций наилучшим вариантом был бы- для каждого устройства ввода вывода иметь в памяти свою область. Но этого не делается, а точнее делается частично.

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

В связи с выше сказанным ввели понятия разделенных и неразделенных подканалов.

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

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

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

 

 

Как видно из содержимого подканала в нем хранится вся необходимая информация для обмена с устройством. Нулевая ячейка не требует комментарий. В первой ячейке в нулевом байте записываются флажки CCW(командное слово канала) О командном слове канала мы поговорим позже,разбирая канальную программу. Во второй ячейке в нулевом байте хранится ключ защиты, который является элементом механизма защиты системной памяти, который мы рассмотрим позже.

В третьей ячейке содержится указатель косвенной адресации в канале. О механизме косвенной адресации, как одном из способов обмена данными из несмежных областей памяти с устройством, vмы поговорим позже.

 

Канальная программа.

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

Для того,чтобы канал знал о расположении канальной программы в памяти процессор размещает начальный адрес канальной программы и ключ защиты в ячейке памяти с фиксированным адресом перед началом операции ввода вывода. Эта ячейка носит название CAW или АСК- адресное слово канала. По окончании операции ввода вывода канал размещает результат операции также в ячейке с фиксированным адресом в памяти, записывая в нее байты состояния устройства и канала, остаточный счет, ключ защиты памяти и адрес последнего командного слова канала плюс восемь.

Программные средства канала

 

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

 

Флажок цепочки команд.

Для того чтобы канальная программа состояла из нескольких КСК и используется этот флаг, указывающий на продолжение канальной программы. Цепочка команд позволяет по одной команде ввода вывода программе осуществлять передачу нескольких блоков данных как и при цепочке данных,но в данном случае каждое новое выбранное КСК выполняет свою операцию, поэтому, прежде чем выбрать очередное КСК из памяти, канал ждет момента когда внешнее устройство полностью закончит операцию обмена, включая все механические перемещения своих частей то есть будет готово для выполнения новой операции ввода вывода. Этот момент фиксируется каналом при получении от устройства байта состояния с указателем УК(устройство кончило).

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

Что же касается устройства при выполнении цепочки команд возникает вопрос. Информирует ли канал устройство о том, что канал работает с цепочкой команд или это только функция канала? Да, сообщает путем посылки соответствующей последовательности интерфейсных сигналов, указывая устройству на то, что по окончании текущей операции устройство обязано выставить запрос на начальную выборку- gпоследовательность интерфейсных сигналов для связи с каналом. Вопрос о том остается ли устройство логически подключенным к каналу(поддержание управляющих интерфейсных сигналов в активном состоянии) до начала следующей операции зависит от режима работы канала. О чем мы поговорим позже.

Флаг подавления неправильной длины.

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

Флаг блокировки записи в память

Используется в операциях чтения.

 

Флаг программно управляемого прерывания.

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

 

Флаг косвенной адресации данных

Данный флаг является дополнением к средству динамического преобразования адресов при обращении в память. Это средство позволяет каналу управлять обменом данных с несмежными страницами реальной памяти. Если этот флаг установлен, то поле адреса данных указывает на адрес ячейки оперативной памяти в которой находится первое слово списка слов косвенной адресации.Каждое слово содержит абсолютный адрес начала области данных оперативной памяти в пределах страницы. Число слов в списке зависит от величины счета в КСК и адреса данных в первом слове списка.Когда адрес данных оказывается на границе страницы канал выбирает следующее слово из списка и продолжает передачу данных.

 

 

 

Адресация устройств в канальной системе.

 

Для того,чтобы процессор смог обратиться к внешнему устройству с командой ввода вывода, внешнее устройство должно иметь свой идентификатор. Таким идентификатором является физический адрес устройства, который кодируется двоичным кодом и фиксируется в устройстве на все время работы системы аппаратными средствами. Обычно используется регистр, разряды которого устанавливаются в нулевые и единичные состояния в соответствии с кодом адреса принудительно с помощью перемычек, через которые подаются нулевые или единичные уровни на его установочные входы. Для изменения адреса устройства производят перекодировку регистра адреса устройства. Так как канальная система состоит из множества каналов, то результирующий адрес обращения в команде ввода вывода состоит из адреса канала и адреса устройства в канале. Классический формат состоит из двух байт, который указываются эти адреса.

 

 

Режимы работы каналов.

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

И так с точки зрения временного взаимодействия канала с устройством операция ввода вывода может быть выполнена в одном из двух режимах:

- монопольном

-мультиплексном

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

Никакое другое устройство не может подключиться к каналу, пока не завершиться передача данных в ВУ. Физически блокировка других устройств осуществляется логическим сигналом, выдаваемым устройством в канал, и пока этот сигнал остается активным устройство монополизирует вышеуказанные средства.

 

В мультиплексном режиме канал может обслужить несколько одновременно работающих устройств путем представления коротких промежутков во времени для передачи данных. При этом на канале функционирует схема приоритета подобная арбитражу на шине при последовательном присоединении устройств к каналу, или внутри канальной системы при радиальном соединении канала с устройствами.

 

В соответствии с режимом работы каналов различают типы каналов в классической архитектуре:

- байт-мультиплексный

- блоковый(селекторный)

- блок-мультиплексный

Байт-мультиплексный канал поддерживает связь с устройством на время передачи одного байта данных. Кроме мультиплексного режима может поддерживать и монопольный. Этот режим устанавливается устройством, но может быть изменен каналом.

Блоковый канал работает только в монопольном режиме.

Блок мультиплексный канал разрешает мультиплексирование между блоками данных, если указана цепочка команд. В этом случае канал, не дожидаясь от устройства байта состояния “устройство кончило” может начать операцию обмена с другим устройством.

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

то он функционирует как блоковый.

 

2.Ввод вывод данных в канальной системе начинается с выполнения команды “Начать ввод вывод” Выполнение этой команды в процессоре задерживается, пока не будут удовлетворены все предыдущие запросы от процессора к основной памяти по отношении к каналам и к другим процессорам в многопроцессорных системах. Только после этого начинается выполнение команды.

 

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

Начав выполнятся команда ввода вывода читает эту ячейку(АСК)и передает в канал.Адрес канала и устройства находится в памяти по адресу указанному в формате команды. После чего процессор передает управление вводом вывода каналу, включив таймер, и ожидает ответа от канала.

Передача управления в различных архитектурах реализуется своими способами. Так,на пример, в отечественной ЭВМ ЕС1046, общую управляющую память для процессора и канала, как мы уже говорили об этом, управление каналу передавалось микропрограммными средствами путем установки со стороны процессора запроса на микропрограммное прерывание.

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

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

 

Осуществляется через механизм микропрограммного прерывания.

Процессор получив ответ от канала завершает выполнение команды ввода вывода. формируя соответствующий признак результата.

 

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

Устройство, получив приказ отключения от канала формирует байт конечного своего состояния и организует запрос на передачу его в канал.

Канал, получив запрос на связь устройства с ним, по своему усмотрению может принять этот байт или дать указание устройству “ запомнить состояние” в зависимости от состояния в канале.

Канал, если в этом будет необходимость, сам обратится к устройству и примет этот байт конечного состояния.

 

В любом случае окончанием операции ввода вывода в

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

 

 

 

Структура канальной системы серверов Z архитектуры

Является дальнейшим развитием структуры классической канальной системы, основные принципы которой мы уже рассмотрели. Расширение ее функциональных возможностей было осуществлено в результате модернизации, как аппаратных, так и программных средств.

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

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

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

То есть изменилась и архитектура блока связи процессора с каналами. Если в классической системе количество каналов

было немногочисленно, то для большого количества каналов с большой пропускной способностью (ESCON 17мгб/сек, FICON 1гбт/сек) существующая топология стала неприемлемой, и был разработан высокоскоростной самосинхронизирующий интерфейс STI, поддерживающий сетевую топологию с передачей кадров между каналами и адаптерами памяти, выполняющими часть функций общего канала в классической системе. Поэтому процессорные узлы каналов стали выполнять не только функции, реализующие выполнение канальных программ, но и формирование кадров для связи согласно протокола STI с процессом ввода вывода и системной памятью и кадров для связи с устройствами ввода вывода по протоколу типа канала.

Интерфейс STI имеет трехуровневую организацию:

физический

логический

пользовательский

 

Физический уровень обеспечивает побайтный прием и передачу кадров от каналов к оперативной памяти и обратно.

Логический уровень отвечает за формирование кадров, состоящих из заголовка и информационного блока.

Заголовок содержит адреса источника и получателя.

Информационный блок определяется типом кадров.

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

Уровень пользовательского интерфейса определяет тип кадров в соответствии с канальной программой, формируя кадры запросов к системной памяти за данными при записи во внешние устройства или для передачи данных в память при чтении из них. Каждый запрос в память со стороны каналов подтверждается адаптерами, ответными кадрами то есть на интерфейсе реализуется протокол с квитированием, как и в классической архитектуре.

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

 

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

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

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

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

 

Изменилась и программная поддержка функционирования канальной системы. Был расширен набор системных команд, производящих операции с подканалами то есть областями памяти,в которых хранятся текущая информация о состояниях устройств ввода вывода и были изъяты команды, которые непосредственно управляли устройствами точнее формировали свои признаки результата только после того как получали из каналов информацию об окончании операций с устройством. Например, команда начать ввод вывод SIO заканчивала свое выполнение только после того, как получит результат опроса устройства каналом. Эта команда была заменена командой старт подканала SSCH, которая устанавливает признак результата после анализа состояния подканала, не дожидаясь пока канал, непосредственно опросит устройство. Если состояние устройства не позволяет начать операцию ввода вывода, то канал через механизм прерывания сообщает об этом процессору.

 

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

Во первых отказ от параллельной передачи данных и использование в качестве среды оптоволоконную связь позволило увеличить пропускную способность каналов от 4.5 мгбт/сек. До 17.5 мгб/сек.(ESCON).

Во – вторых отказ от шинной организации, которая обеспечивала в лучшем случае блок-мультиплексный режим связи канала с внешними устройствами, и переход на сетевую топологию с соответствующим оформлением передаваемой информации в форме кадров, с вводом сетевых узлов и присвоением им сетевых адресов в процессе инициализации, позволило использовать не только множественный доступ к устройству, но и принцип логической адресации на уровне связи канал – контролер ВУ, а не использовать физический адрес устройства для адресации подканала, как это было в классической архитектуре. А использование логических адресов дало возможность организовывать множество канальных систем подобно тому, как существует множество виртуальных пространств памяти при наличии механизма динамической адресации в системе.




Поделиться с друзьями:


Дата добавления: 2014-01-03; Просмотров: 368; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.083 сек.