Файл: Каган Б.М. Цифровые вычислительные машины и системы учеб. пособие.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 09.04.2024

Просмотров: 257

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

ренный комплект системы. Для системы с переменным со­ ставом оборудования могут существовать, очевидно, мно­ гочисленные варианты расширенного комплекта.

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

что

и другие

периферийные устройства

(машина

CDC

3600).

системы, например IBM 7030,

с цент­

Существуют

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

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

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

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

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

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

491


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

Каналы ввода-вывода. Требование параллельной ра­ боты периферийных устройств и процессора вызывает необходимость выделения схем управления периферий­ ными устройствами из состава процессора и придания им достаточной степени автономности.

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

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

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

492


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

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

9 - 2 . Ф У Н К Ц И И К А Н А Л О В В В О Д А - В Ы В О Д А

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

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

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

Рассмотрим более подробно некоторые основные функции, которые могут быть возложены на канал вво­

да-вывода.

памяти. Для

определения ис­

Определение области

пользуемой в операции

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

области

памяти

необходимо знать начальный адрес и

размер

области.

Размер области памяти

задается в

виде количества

стандартных для данной машины единиц информации (слов, байтов и т. п.).

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

При выполнении операции ввода-вывода канал фор­ мирует адреса последовательных ячеек памяти, начиная

493


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

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

Цепь данных. Описанный выше метод определения области памяти для ввода-вывода позволяет указать только одну непрерывную область, состоящую из после­ довательных ячеек ОЗУ. Однако возможны случаи, ког­ да массив информации, предназначенный для ввода или вывода, располагается в памяти не подряд, а состоит из нескольких подмассивов, размещаемых относительно друг друга в произвольном порядке и в произвольно расположенных участках ОЗУ. Для организации работы с такими составными массивами используются так назы­ ваемые цепи данных. Цепь данных представляет собой последовательность из нескольких УС, в каждом из ко­ торых описывается один из подмассивов составного мас­ сива, т. е. указываются начальный адрес и длина под­ массива. После окончания ввода или вывода очередного подмассива канал выбирает для исполнения следующее по порядку УС и продолжает ранее начатую операцию над новым подмассивом. Последовательность УС, обра­ зующих цепь данных, воспринимается периферийным устройством как одна операция.

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

494


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

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

ферийного устройства слова (байты).

Это

свойство

в сочетании с возможностью организации

цепи

данных

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

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

вать вмешательства

процессора, в программе которого

в соответствующих

местах должны располагаться

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

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

в

данном периферийном устройстве новую операцию

ввода-вывода.

операций необходимо ввести

в

Для обозначения цепи

УС поле, определяющее

код операции ввода-вывода,

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

495