
книги из ГПНТБ / Единая система ЭВМ
..pdfЧасть дорожек в накопителе с прямым доступом отводится под запасные. Если на какой-либо из дорожек в процессе экс плуатации появляется область с дефектным покрытием, то вся эта дорожка исключается из употребления, а вместо нее начи
нает использоваться одна из запасных.
На каждом из накопителей имеется механизм доступа с- го ловками записи-воспроизведения. Одновременно данные могут передавать только головки воспроизведения или только головки записи. В накопителях на дисках механизм доступа представ ляет собой блок рычагов, перемещающийся в горизонтальном
ЕС-5052 (б)
направлении и обеспечивающий установку головок записи-вос
произведения на любую дорожку рабочей поверхности дисков. Число рычагов в блоке равно половине числа рабочих поверх ностей в пакете диска, так что доступ осуществляется одновре менно ко всем поверхностям пакета.
В накопителях на барабане механизм доступа представляет собой комплект магнитных головок записи-воспроизведения для каждой дорожки на барабане. Головки закреплены в фиксиро ванном положении вокруг всей поверхности барабана. В нако пителе ЕС-5033 для каждой адресуемой дорожки имеется восемь головок записи-воспроизведения.
Исходя из принципа движения механизма доступа в накопи
телях на дисках для устройств с прямым доступом введено по нятие цилиндра. Цилиндром называется группа дорожек, до
ступных |
при фиксированном положении механизма |
доступа. |
C целью |
сокращения перемещений механизма доступа |
обычно |
40
данные размещаются от дорожки к дорожке в пределах одного
цилиндра и потом уже переходят на другой цилиндр. Пакеты дисков для накопителей ЕС-5050, ЕС-5052, ЕС-5055, ЕС-5056 и
ЕС-5058 состоят из 203 цилиндров по 10 дорожек в каждом
цилиндре. Максимальная |
емкость |
цилиндра |
составляет |
36 250 байтов, емкость всего пакета |
равна 7,25 |
млн. байтов. |
|
Емкость накопителя ЕС-5051 —100 млн. |
байтов. |
|
|
Понятие цилиндр не совсем применимо к барабанам, по |
|||
скольку механизм доступа |
имеет фиксированное |
положение и |
в любой данный момент времени доступна любая дорожка на барабане.
Барабан устройства ЕС-5033 емкостью 6 млн. байтов рас сматривается как один цилиндр, состоящий из 100 адресуемых дорожек. Время, необходимое для доступа и передачи данных, складывается из четырех составлящих: времени перемещения механизма доступа, времени выбора головки, времени задержки вращения (времени поворота носителя) и времени передачи данных.
Время перемещения механизма доступа или время поиска цилиндра затрачивается на подвод механизма доступа к нуж
ному цилиндру. Для барабанов это время равно нулю, для дис ков типа ЕС-5050 минимальное время перемещения механизма доступа составляет 25 мсек, максимальное—150 мсек. Данные о среднем времени поиска цилиндра приведены в табл. 6.
Время выбора головки представляет собой время электрон ной коммутации головок и пренебрежимо мало по сравнению
с другими составляющими.
Время задержки вращения состоит из времени углового по ворота носителя информации (пакета дисков или барабана), необходимого для того, чтобы нужная физическая запись на дорожке оказалась под головками записи-воспроизведения. В среднем это время составляет половину времени полного обо рота носителя (см. табл. 6).
Время передачи данных между устройством и оперативной ■памятью является функцией скорости вращения и плотности записи данных на носителе. Скорость передачи данных для устройств с прямым доступом ЕС ЭВМ приведена в табл. 6.
Накопители с прямым доступом ЕС ЭВМ подключаются к каналам через, устройства управления. Шифры соответствую щих устройств управления и максимальное число подключае
мых накопителей приведены в табл. 6. Все устройства управ
ления работают в селекторном режиме и должны быть подключены к селекторному или мультиплексному каналу, обеспечивающему нужную скорость передачи данных.
В функции устройства управления входят интерпретация и выполнение команд, получаемых из процессора, передача ин
формации о состоянии устройства в процессор, передача дан
ных и контроль передаваемых данных. Состав и функции
41
команд, выполняемых устройством управления, будут описаны
позднее.
Информация о состоянии формируется устройством управ
ления и содержит сведения, например, об окончании передачи
данных, опознании устройством признака конца данных или об
обнаружении ошибки. Эта информация передается в процессор и интерпретируется программой с целью выбора нужной по следовательности действий.
Устройство управления обеспечивает путь для прохождения данных между накопителем и каналом и выполняет прямое и обратное преобразование параллельного побайтного кода ка
нала в последовательный побитный код устройства (за исклю чением устройства ЕС-5033).
В процессе передачи данных устройство управления контро лирует правильность передаваемых данных. При записи данных
устройство управления исключает из каждого байта бит четно сти и вычисляет байты циклического контроля (ЦК), которые записывает в конце каждой области данных. При считывании данных устройство управления вновь вычисляет байты цикли ческого контроля и сравнивает их со считанными. При передаче данных в процессор каждый байт данных дополняется битом четности, а байты циклического контроля исключаются. При таком методе контроля обнаруживается большее число ошибок, чем при контроле по четности, а также экономится память устройства, так как для каждой области данных вычисляется
2 байта циклического контроля, тогда как при контроле по чет ности требуется один бит на каждый байт.
Формат дорожки. Информация на дорожке записывается в формате, определяемом устройством управления. Все устрой
ства управления ЕС ЭВМ формируют одинаковый формат до рожки. На каждой дорожке, помимо данных, записывается управляющая информация, необходимая для организации и контроля прямого доступа: адрес дорожки, адрес каждой за
писи, длина каждой записи и промежутки между областями
(рис. 14).
Промежутки — это последовательность байтов, записыва емая устройством управления для разграничения областей записи. Промежутки не содержат данных и используются только устройством управления. Длина промежутка зависит от типа накопителя, от положения промежутка и от длины предыдущей области. Промежутки П1 и П2 имеют фиксированную длину для каждого из типов накопителей, длина промежутка ПЗ за висит от длины предшествующей записи.
Индексный маркер отмечает физическое начало всех доро жек на рабочей поверхности.
Адрес дорожки. Для идентификации дорожки на каждой
дорожке записывается адрес дорожки (см. рис. 14), который всегда является первой записью на дорожке. Кроме информа
42
ции об адресе дорожки, эта запись содержит сведения о состоя
нии дорожки. Адрес дорожки — это область из семи байтов, со держащая:
байт флажков — байт признаков, указывающих на состояние дорожки (рабочая или дефектная) и на использование до рожки (основная или запасная);
четырехбайтный адрес дорожки — два байта с номером ци
линдра, которому принадлежит дорожка, и два байта с номе ром головки записи-воспроизведения, обслуживающей эту до
рожку;
два байта циклического контроля.
Индекс. |
Йдрес |
Запись Rθ~ |
|
ный |
описатель |
Запись Rn |
|
маркер дорожки |
дорожки_________ Запись Rf |
Vпожни (!б)
Рис. 14. Формат дорожки (записи формата счет-данные)
Для записи и чтения адреса дорожки имеются две специаль ные команды.
Записи данных. После записи RO, имеющей специальное на значение в системах программирования ЕС ЭВМ, на дорожке располагаются записи с данными пользователя. Первой частью каждой такой записи является адресный маркер (AM) —двух байтная область, которая при операции записи записывается устройством управления в начале каждой записи, а при опера ции чтения служит для устройства управления признаком нача ла записи. На устройствах с прямым доступом допускаются два
формата физических записей: формат счет-данные и формат
счет-ключ-данные. Записи формата счет-данные состоят из ад ресного маркера, области счета и области данных.
Область счета представляет собой ll-байтную область, иден тифицирующую-запись (в терминах номера цилиндра, номера головки и номера записи), и указывает на формат записи
43
(формат счет-данные или формат счет-ключ-данные) и на ее-
длину. Область счета включает следующие поля:
байт флажков — однобайтное поле, содержащее ту же ин формацию, что и байт флажков адреса дорожки, и, кроме того,
некоторуі J дополнительную информацию, используемую устрой ством управления;
поле идентификатора записи — пятибайтное поле, содержа
щее номер цилиндра, номер головки |
(эта информация совпадает |
с адресом дорожки) и номер записи. |
Номер записи — это поряд |
ковый номер записи на дорожке от О до 255; поле длины ключа — однобайтное поле, содержащее длину
области ключа записи, для записей формата счет-данные поле
длины ключа всегда содержит нули; поле длины данных — двухбайтное поле, содержащее число
байтов в области данных записи, исключая байты циклического
контроля. Нулевая длина данных указывает на конец набораданных;
два байта циклического контроля.
Записи формата счет-ключ-данные состоят из адресного мар
кера, области счета, области ключа и области данных. Наличие
области ключа и отличает этот формат записи от формата счетданные. В области ключа записывается некоторая управляющаяинформация пользователя, в ряде случаев существенно ускоряю щая поиск записи.
Описатель дорожки — запись RO. После адреса дорожки на дорожке записывается запись с нулевым порядковым номером— запись RO, используемая системами программирования ЕС ЭВМ специальным образом и поэтому не содержащая данных поль зователя. Запись RO имеет формат счет-данные и длина области
данных этой записи всегда равна 8 байтам (не считая байтов циклического контроля). В области данных RO записывается ин формация управляющей программы.
Таблица T
Ссылки между основной и запасной дорожками через запись RO
|
|
Адрес дорожки |
Область счета |
|
||
Дорожки |
Ф * |
|
г |
Ф • |
Ц |
г |
|
Ц |
|||||
Основная |
2 |
2 |
8 |
2 |
200 |
1 |
Запасная |
I |
200 |
1 |
I |
2 |
8 |
♦ 2 в байте |
флажков указывает на |
то, что |
это дефектная |
основная дорожка;. |
||
1 — рабочая запасная дорожка. |
|
|
|
|
|
|
Кроме того, область счета |
записи |
RO в накопителях на |
ди |
сках используется для связи между основной и запасной дорож-
‘ками в том случае, если основная дорожка оказывается дефектной (табл. 7). В этом случае в записи адреса основной.
44
дефектной дорожки помещается адрес заменяющей ее запасной рабочей дорожки, на которой размещаются данные с основной
дефектной дорожки. В накопителях на барабанах адрес дефек тной дорожки присваивается запасной дорожче вручную инже
нером, обслуживающим устройство.
Если накопители с прямым доступом используются не под управлением системы программирования ЕС ЭВМ, то на запись RO не накладываются вышеперечисленные ограничения.
Емкость дорожки. В табл. 6 приведены максимальные зна чения емкости дорожки для случая, когда на дорожке записаны адрес дорожки, запись RO и одна физическая запись формата счет-данные с учетом ее адресного маркера, области счета, про межутков и байтов ЦКЕсли на дорожке записывается несколь ко записей, то полезная емкость дорожки, используемая под данные пользователя, сокращается за счет появления дополни
тельных адресных маркеров, областей счета записей и проме
жутков. В табл. 8 приведены формулы для расчета фактиче ского числа байтов, занимаемых физической записью данного формата и данной длины. Эти формулы пригодны только для
устройств ЕС-5050, ЕС-5052, ЕС-5055, ЕС-5056 и ЕС-5058.
|
|
|
Таблица 8 |
Формулы для расчета фактического числа байтов |
|||
Запись данных (не последняя на дорожке) |
Запись, последняя на дорожке |
||
без ключа |
с ключом |
без ключа |
с ключом |
6*+^¾Γ2^ |
81 + —-⅞y-д)| |
Дд |
20 + Дк + Дд |
В формуле для последней записи данных на дорожке участ вует только длина данных (или суммарная длина данных и клю ча), так как постоянная составляющая длины последней записи (область счета и промежутки) уже учтена в значении макси мальной емкости дорожки.
В формуле для записи, не последней на дорожке, величина 61
учитывает число байтов, занимаемое адресным маркером, обла стью счета, байтами ЦК и постоянными промежутками. Коэффи-
537
циент -ʒɪg учитывает допустимые отклонения в положении записи.
Если запись не последняя на дорожке имеет ключ, то в формуле учитывается длина области ключа, длина промежутка после об ласти ключа и байты ЦК области ключа.
СРЕДСТВА УСТРОЙСТВ УПРАВЛЕНИЯ
Многодорожечный режим. Операции чтения (исключение
составляет команда «Читать запись НЗ») и поиска данных устройства управления с прямым доступом могут выполнять в
45
двух режимах: в однодорожечном и в многодорожечном. Ре
жим определяется значением нулевого разряда в коде
команды.
В многодорожечном режиме работы устройство управления при обнаружении индексного маркера автоматически переклю чает механизм доступа на следующую головку в пределах од
ного и того же цилиндра. Многодорожечный режим обычно всегда применяется в операциях поиска, так как он расширяет границы поиска до цилиндра. Этот режимf работы требует,
чтобы в цепочке команд перед командой многодорожечного ре жима обязательно употреблялась команда установки и много дорожечная операция начинала обработку дорожки от ее начала.
Переходящие записи — это записи, которые размещаются
более чем на одной дорожке накопителя с прямым доступом.
Понятие переходящих записей введено с целью возможности
работы с физическими записями, длина которых превышает емкость дорожки. Длина переходящих записей ограничивается
емкостью цилиндра.
Часть переходящей записи, размещаемая на одной дорожке-, называется сегментом. Каждый сегмент имеет свою область счета, определяющую длину области данных только этого сег мента. Все сегменты, за исключением последнего, содержат в байте флажков признак сегмента переходящей записи. Ключ переходящей записи обычно размещается только в первом сег менте. Устройства управления располагают специальными сред ствами для работы с переходящими записями.
Для записи сегментов переходящих записей (кроме пос
леднего) имеется специальная команда, записывающая в бай те флажков области счета признак не последнего сегмента. Соответствующие команды чтения, поиска и записи осуществ ляют непрерывную обработку сегментов переходящей записи,
выполняя автоматический переход с дорожки на |
дорожку, |
если обнаруживают признак не последнего сегмента. |
И наконец, |
в информации уточненного состояния устанавливаются специ альные признаки, идентифицирующие необычные или ошибоч ные ситуации, возникающие при работе с переходящими запи
сями.
Двухканальный переключатель представляет собой средство
подключения устройства управления одновременно к двум раз личным каналам. При этом достигаются возможности разделе
ния устройства управления двумя различными каналами и ре
зервирования накопителей с целью монопольного использова ния одним из каналов. Каналы могут принадлежать к одному процессору или к двум различным процессорам. При подклю чении устройства управления к двум различным процессорам накопители могут выступать в качестве общей внешней па мяти.
46
Управление логическим подключением устройства управле ния то к одному, то к другому каналу и резервирование на копителей осуществляются программным способом. Для осу ществления функций резервирования имеются специалъные команды.
КОМАНДЫ УСТРОЙСТВ УПРАВЛЕНИЯ
Все устройства с прямым доступом ЕС ЭВМ имеют один и
тот же состав команд (минимальные отличия в составе команд будут отмечены). Состав команд приведен в табл. 9.
Команды интерпретируются и выполняются устройствами управления, построенными по микропрограммному принципу.
Команды устройств с прямым доступом разделяются на четыре основные группы: команды управления, команды поиска,
команды чтения и команды записи. Кроме этих основных
групп, имеются еще команды получения информации о состоя нии устройства и команды двухканального переключателя.
При программировании действий на устройствах с прямым доступом особое значение приобретает использование команды
«Переход в канале», выполняемой на уровне канала. C по мощью этой команды организуется процесс поиска записи в
определенной области памяти с прямым доступом (см. раздел
«Команды поиска»).
Команды управления
Команды установки. Операция подвода механизма доступа к нужному цилиндру и выбора нужной головки выполняется в устройствах с прямым доступом посредством команд установки. Имеются три команды установки: «Установка», «Установка цилиндра» и «Установка головки». По этим коман дам из оперативной памяти в устройство управления канал передает 6-байт- ный адрес установки (0, 1, 2, байты — нули, 3-й байт — номер цилиндра, 4-й байт — нуль, 5-й байт — номер головки). Этот адрес проверяется в устрой стве управления на допустимость его значения для данного накопителя и для выполнения операции установки используется та часть этого адреса, которая определяется кодом команды. Для команд «Установка» и «Установка ци линдра» используются младшие четыре байта адреса, для команд «Установка головки» — младшие два байта адреса.
Если адрес оказывается недопустимым для адресуемого накопителя или длина адреса меньше 6 байтов, то команда не выполняется, а в канал пере дается информация об ошибке.
При нормальном выполнении операции устройство управления освобож дает канал после приема 6-байтного адреса. После выполнения установки оно сообщает в. канал о завершении операции посылкой байта состояния с при знаком «Устройство кончило».
«Ориентация». Эта команда вызывает установку механизма доступа в на копителях типа ЕС-5050 на нулевую дорожку нулевого цилиндра и приме няется обычно для исправления ошибок, связанных с неправильной установ кой механизма доступа. По этой команде никакие данные об адресе уста новки из оперативной памяти в устройство управления не передаются.
«Управлять областью счета». Эта команда позволяет пропустить при чте нии дефектную область адреса дорожки и записи RO или прочитать данные из записи с дефектной областью счета. Если команда употребляется для того, чтобы прочитать данные из записи с дефектной областью счета, то по
47
Таблица 9
Состав команд устройств управления накопителями с прямым доступом ЕС ЭВМ
Двоичный код команды
Команды |
|
однодорожечный |
многодорожечный |
режим |
режим |
'Холостой ход |
|
|
0000 |
ООН |
|
|
•Установка |
|
|
0000 |
OHl |
|
|
Установка цилиндра |
|
0000 |
1011 |
|
|
|
Установка головки |
|
0001 |
юн |
|
|
|
Ориентация |
|
|
0001 |
ООН |
|
|
■'Управлять областью счета |
0000 |
IHl |
|
|
||
Установка маски |
|
0001 |
IlH |
|
|
|
Проверить ввод—вывод |
0000 |
0000 |
|
|
||
Поиск адреса |
дорожки |
ООП |
1001 |
1011 |
Ю01 |
|
Поиск по идентификатору на равно |
ООН |
0001 |
IOH |
0001 |
||
Поиск по идентификатору на больше |
0101 |
0001 |
HOl |
0001 |
||
Поиск по идентификатору на больше или |
0111 |
0001 |
Illl |
0001 |
||
равно |
|
|
|
|
|
|
Поиск по ключу на равно |
0010 |
1001 |
1010 |
1001 |
||
Поиск по ключу на больше или равно |
оно |
1001 |
IIlO |
1001 |
||
Поиск по ключу на больше |
0100 |
1001 |
HOO ' |
1001 |
||
Поиск по ключу-данным на равно |
0010 |
HOl |
1010 |
HOl |
||
Поиск по ключу-данным на больше |
0100 |
1101 |
HOO |
IlOt |
||
Поиск по ключу-данным на больше или |
оно |
HOl |
HlO |
HOl |
||
равно |
|
больше |
0100 |
OtOl |
|
|
Продолжить поиск на |
|
|
||||
Продолжить поиск на |
равенство |
0010 |
OIOl |
|
|
|
Продолжить |
поиск на больше или равно |
оно |
0101 |
|
|
|
Продолжить |
поиск |
при невыполненном |
0101 |
0101 |
|
|
условии |
|
|
ООП |
0101 |
|
|
Продолжить поиск при выполненном усло |
|
|
||||
вии |
|
|
0000 |
0010 |
|
|
Считать НЗ |
|
|
1000 |
оно |
||
Считать данные |
|
0000 |
оно |
|||
Считать ключ-дапные |
|
0000 |
IIlO |
1000 |
IllO |
|
Считать счет-ключ-данные |
0001 |
HlO |
1001 |
IHO |
||
Считать RO |
|
|
0001 |
оно |
1001 |
OtlO |
Считать адрес дорожки |
0001 |
1010 |
1001 |
1010 |
||
Считать счет |
|
|
0001 |
0010 |
1001 |
0010 |
Записать адрес дорожки |
0001 |
1001 |
|
|
||
Записать RO |
|
|
0001 |
0101 |
|
|
Записать счет-ключ-данные |
0001 |
HOl |
|
|
||
Записать счет-ключ-данные (специальная) |
0000 |
0001 |
|
|
||
Стирание |
|
|
0001 |
0001 |
|
|
Записать данные |
|
0000 |
0101 |
|
|
|
Записать ключ-данные |
0000 |
HOl |
|
|
||
Резервирование накопителя |
IOH |
0100 |
|
|
||
Освобождение накопителя |
1001 |
0100 |
|
|
||
Уточнить состояние |
|
0000 |
0100 |
|
|
■48
этой команде из оперативной памяти в устройство управления передается три байта, содержащих информацию о длине области ключа и области дан
ных. Эта информация заменяет аналогичные данные пропускаемой области счета и используется при выполнении последующей команды чтения.
«Установить маску файла». Команда позволяет запретить выполнение команд типа «Установка» и «Записать» в цепочке команд, в которой она употреблена. Устройство управления получает по этой команде один байт, маскирующий выполнение команд указанного типа. Нулевой и первый биты маски маскируют выполнение команд типа «Записать». Кодирование этих би тов имеет следующее значение:
00 — разрешены все команды записи, за исключением команд «Записать адрес дорожки», «Записать R0»;
01 —запрещены все команды записи; 10 — разрешены только команды «Записать данные», «Записать ключ-
данные»:
11 — разрешены все команды записи.
Третий и четвертый биты маски маскируют выполнение команд типа «Установка». Кодирование битов имеет следующее значение:
00 — разрешены все команды типа «Установка»; 01—разрешены команды «Установка цилиндра» и «Установка головки»; 10 — разрешена только команда «Установка головки»; И —запрещены все команды типа «Установка».
Биты 2, 5, 6, 7 байта маски должны быть равны нулю.
Если в цепочке команд употребляется команда, нарушающая маску фай ла. то эта команда не выполняется, а в канал передается индикация об ошибке. После завершения выполнения цепочки команд маска файла в уст ройстве управления устанавливается в нулевое значение
Команду «Установить маску файла» разрешается употреблять в цепочке команд только один раз.
«Холостой ход». Команда не вызывает в устройстве управления никаких действий.
Команды поиска
Команды поиска в устройствах с прямым доступом предна значены для поиска определенной ранее записанной информа ции. Аргументом поиска может быть идентификатор записи,
ключ записи, ключ и данные записи или тип записи — адрес дорожки. Операция поиска осуществляется путем побайтного сравнения в устройстве управления информации, получаемой
из оперативной памяти, и информации, считываемой из нако
пителя.
Для осуществления поиска команда поиска выполняется в цикле до тех пор, пока не будет выполнено логическое условие поиска (равно, больше, больше или равно) или пока не будет достигнута граница области поиска. Программный цикл органи зуется посредством команды «Переход в канале» и признака вы полнения условия поиска. Если логическое условие, заданное в команде, удовлетворяется, то в канал выдается признак «Мо дификатор». Получив этот признак, канал пропускает в цепоч ке команд канала одну команду. Как правило, это — команда* «Переход в канале». Если логическое условие поиска не удов летворяется, то очередная в цепочке команда «Переход в ка нале» вновь возвращает управление команде поиска, и
49