ZIP архив

Текст

Союз Советских Социалистических Республик(23) Приоритет ГосударствеииыА комитет СССР по дедам изобретеииА и открытий(72) Авторыизобретения Р.И. Заславский, А.П. Ьередин, В.П. Нефедченко, С.Г. Дехтяренко и С.А. Аптекарь Киевский ордена Трудового Красного Знамени завод вычислительных и управляющих машин.Изобретение относится к вычислительной технике и может быть исполь-" зовано при конструировании селекторных каналов ввода-вывода.Каналы осуществляют обмен данных 5 с внешними устройствами. Передача данных между внешними устройствами и каналом выполняется параллельными кодами, которые далее называются байтами и содержат в типичном случае 8 10 двоичных разрядов. В операции чтения канал принимает данные иэ внешнего устройства по входным информационньхл шинам интерфейса и из полученных байтов формирует единицу информации, 15 пригодную для записи в оперативную память и называемую далее словом.Размер слова определяется разрядностью оперативной памяти и обычно составляет 2,4 или 8 байтов. После ФЬрмирова ния каждого очередного слова канал посылает в процессор запрос на пере" дачу этого слова в оперативную память. В операции записи канал Формирует запросы на считывание слов из 25 оперативной памяти и побайтно передает эти слова во внешнее устройство по выходньм информационным шинам интерфейса. Канал содержит также сред" ства, позволяющие распознать условия 30 окончания передачи данных и сообщить об этом процессору и внешнему устройству.Процессор осуществляет инициирование операций ввода-вывода, передачу данных между каналами и оперативной памятью.Известно устройство для ввода-вывода, содержащее главный канал, в состав которого входит информационный регистр, соединенный по входу.и выходу с сумматором, блоком местной памяти, информационной магистралью оперативной памяти и регистрами данных подканалов, содержащих счетчик номера байта с дешифратором, выход которого подключен к управлякщему входу регистра данных, и узел управления, первый выход которого соединен со входом блока управления главного канала 1 .Недостаток этого устройства- низкая скорость передачи массивов, связанных цепочкой данных. Этот недостаток обусловлен тем, что расположение байта данных в буферном регистре подканала определяется позицией этого байта в слове. указанный недостаток существенно снижает быстродействие канала при передаче массивов с использованием цепочек дан-,ных.Пусть, к примеру, требуется прочитать зону с магнитной ленты, причем этот массив надо записать в двеи смежные области оперативной памяти, Программа канала в этом случаесостоит из двух управляющих слов,связанных цепочкой данных,Первое управляющее слово содержитначальный адрес первой области опе- Оративной памяти и число байтов, которое в эту область надо поместить,второе управляющее слово содержитаналогичную информацию о второй области памяти. Передача данных начинается с использованием информации в первом управляющем слове. Как толькопринят последний байт из числа относящихся к первой области памяти, обменс внешним устройством временно приос- Щтанавливается, так как одканал незнает, в какое место поместить следующий байт данных. Обмен возобновляет.ся лишь после выполнения всех действий, связанных с переходом по цепочкеданных (записи последнего слова данных в первую область оперативной памяти, считывания из оперативной памяти и размещения из местной памятивторого унравляющего слова, заполнения счетчика и регистра информацией ЗОиз второго управляющего слова), Времяперехода поцепочке данных во многораз (примерно на порядок) превышаетпериод следования байтов, не связанйых цепочкой, и, следовательно, но 35столько же раз уменьшается скоростьобмена с синхронными и нЕбуферизованными внешними устройствами (типа магнитных дисков и лент),Недостатком устройства является 4 О также сложность алгоритма Формирования остаточного счета, обусловленная принятым способом подсчета количества переданных байтов, при котором требуются дополнительный регистр, 45 специальные микрооперации сумматора, значительные затраты времени главным каналом и усложнение блока управления.Наиболее близкое к предлагаемому 5 р техническое решение - устройство ввода-вывода, содержащее регистр данных первый и второй счетчики, первый и второй дешифраторы, блок управления, блок буферных регистров, причем первый, второй и третий выходы блока управления являются соответственно первым, вторым и третьим выходами устройства, перный, второй, третий и четвертый выходы устройства соединены со входом первого счетчика, с пер вцм информационным входом регистра данных, со входом второго счетчика и с первым выходом блока управления, выход первого счетчика соединен соб 5входом первого дешифратора, выход которого соединен с упранляющим входом регистра данных, первый выход регистра данных является четвертым выходом устройства, выход второго счетчика соединен со входом второго дешифратора, со вторым входом блока управления и с третьим выходом устройства. (2 .Недостаток этого устройства - низкая скорость передачи данных, обусловленная тем, что каждый передаваемый байт последовательно проходит через все буферные регистры,Другим недостатком является большой расход оборудования на построение узла счета байтов. содержащего полноразрядный счетчик с дешифратором и связи с выходов этого счетчика на вход сумматора. разрядность счетчика равна длине поля счета в управляющем слове. От длины этого поля зависит величина массива, котбрый можно передать в одной операции ввода-вывода. Поэтому поле счета обычно достаточно большое.Цель изобретения - повышение производительности и сокращение аппаратурнцх затрат. Поставленная цель достигается тем, что в устройство введены первый и второй элементы ИЛИ, третий дешифратор, элемент НЕ, элемент И, первый и второй триггеры, причем пятый и шестой входы устройства соединены соответственно со входом первого элемента ИЛИ и со входом третьего дешифратора, выход которого соединен с единичным входом первого триггера и со входом элемента НЕ, выход которого соединен с нулевцм входом первого триггера и с единичным входом второго триггера, нулевой выход второго триггера является пятым выходом устройства, единичный выход первого триггера соединен с третьим входом блока управления и первым входом эле. мента И, выход второго дешифратора соединен со вторым входом элемента И, выход которого соединен с четвертым входом блока управления, четвер" . тый выход блока управления соединен со входом второ"о элемента ИЛИ и с управляющим входом блока буферных регистров, выходы которого соединены соответственно со входами второго элемента ИЛИ, выход второго элемента ИЛИ соединен со вторым информационным входом регистра данных иянляется шестым выходом устройства, выход первого дешифратора соединен со входом первого элемента ИЛИ, выход которого соединен с информационным входом блока буферных регистров, вторые информационные выходы регистра данных соединены соответственно со входами первого элемента ИЛИ.На чертеже изображена блок-схема устройства ввода-вывода.Устройство содержит процессор 1, информационный регистр 2, регистр 3 данных, первнй счетчик 4, первый дешифратор 5, блок б управления, блок 7 буферных регистров,н который входят п буферных регистров, входную 8 и выходную 9 линии управления интерфейсом ввода-вывода, информационную магистраль 10 оперативной памяти, первый элемент ИЛИ 11, второй элемент ИЛИ 12 элемент НЕ 13 вто 1 О рой счетчик 14, второй дешифратор 15, первый триггер 1 б, второй триггер 17, третий дешифратор 18, элементы И 19, входную 20 и выходную 21 шины информационного регистра, вход- ную 22, и выходную 23 информационные 15 шины интерфейса ввода-вывода.Устройство работает следующим образом.Процессор 1, воспринимая команду ввода"-вывода, подключается к указан О ному в команде каналу и считывает из оперативной памяти управляющее слово, которое через регистр 2 записывается в память подканалов (предполагается, чтб обмен с оперативной памятью выполняется 4-байтовыми словами,.такую же разрядность имеют магистрали 10, 20-22 и регистры 2 и Э,другой размер слова не противоречит существу изобретения). Два младших разряда поля адреса данных в управляющем слове, определяющие позицию байта данных в слове, передаются иэ регистра 2 в первый счетчик 4", Несколько мпадших разрядов поля счета в управляющем слове передаются из регистра 2 во второй счетчик 14, число этих разрядов и соответственно разрядность счетчика 14 зависят от суммарной емкости регистров данных 3 и блока 7 буферных регистров. Максимальный код 4 в счетчике 14 должен быть не меньше количества байтов в блоке буферных регистров (если, как показано на чертеже, счетчик 14 - четырехразрядный то при 4-байтовом регистре 3 данных блок буферных регистров содержит 4- 11 буферных регистров). Одновременно с заполнением счетчика 14 нключа- ется третий дешифратор 18; Этот де- шифратор - общий для всех каналов, подключенных к процессору. Он анализирует старшую часть поля счета. Если этот код отличен от нуленогб, возбуждается сигнал на инверсном выходе дешифратора, который по линии устанавливает второй триггер 17 и сбрасы вает первый триггер 16. Затем младшая часть поля счета обнуляется и в таком виде счет записывается в память подканалон процессора. 40Далее канал устанавливает связь с внешним устройством и начинает передачу данных. Прием к выдача байтов сопровождаются обменом сигналами управления по линиям 8 и 9, 65 Если выполняется операция чтения,байт данных принимается с шин 22 насоответствующий вход первого элемента ИЛИ 11 и затем помещается в блок7 буферных регистров, следующий байтпомещается в регистр 7 к т,д. Буферные регистры используются по кольцевому принципу - после заполнения регистра 7 вновь используется регистр71, если он к этому времени освобождается. Параллельно с накоплениемв буферных регистрах данные черезвторой элемент ИЛИ 12 передаютсядальше в регистр 3, где Формируетсяслово для записи в оперативную память. Выдача байтов иэ блока 7 буФерных регистров происходит н порядке их поступления кз внешнего устройства (сначала считывается первый байт иэ регистра 7 и т.д.), Блок б управления следит эа расположением данных в блоке 7 буферных регистров и управляет приемом и выдачей информации. Блок б управления содержит, в частности, счетчик буфера, который указывает, сколько байтов находится в буферных регистрах, при приеме в буферные регистры каждого байта к содержимому счетчика прибанляется единица, при йыдаче - вычитывается.С выхода второгоэлемента ИЛИ 12 данные записываются н тот байт регистра Э, который указан кодом н пер" Вом счетчике 4. Затем к содержимому счетчика 4 прибавляется единица, к очередная передача выполняется в следующий байт регистра Э. Во время каждой передачи в регистр 3 происходит также вычитание единицы из содержимого второго счетчика 14. Чосле того как заполнится последний байт регистра 3, блок б управления посылает запрос на передачу слова н оперативную пачять к процессор 1 переключается на обслуживание данного канала, Из памяти подканала считывается адрес данных, который помещается н регистр 2 и оттуда по шинам 21 передается на магистраль 10 оперативной памяти и в сумматор. Последний увеличивает адрес на 4 (прк 4-байтовом слове), к новое значение адреса возвращается в память подканалов. Затем данные иэ регистра 3 через шиву 20, регистр 2, шины 21 и 10 передаются в опера" тйэвую память. Регистр Э освобождается и возобновляет прием данных из буферных регистров, По мере Формирования в регистре Э каждого следующего слова обращения к оператинной памяти повторяются.В моде передачи байтон н регистр 3 содержимое второго счетчика 14 уменьшается к в какой-то момент становится нулевым. После следующего вычитания н счетчике образуется максимальный код и формируется сигнал заема, который срабатывает второйтриггер 17, Нулевое состояние этого триггера воспринимается процессором и во время ближайшего обращения к оперативной памяти происходит модиФикация счета и анализ его значения. Счет считывается из памяти подканалов и через регистр 2 подается в сумматор, где он уменьшается на 16 (при 4-разрядном счетчике байтов 14). Новое значение счета помещается в регистр 2, анализируется третьим дешиФратором 18 и возвращается в память подканалов. Если счет отличен от нулевого, то сигнал на инверсном выходе дешиФратора вновь устанавливает второй триггер 17 и подтверждает нулевое состояние первого триггера 16.Когда счет после очередной моди" Фикации становится нулевым, срабатывает третий дешиФратор 18, выходной сигнал которого устанавливает первый триггер 16, С этого момента блок 6 управления анализирует на равенство текущее содержимое второго счетчика 14 и счетчика буфера. Совпадение этих кодов означает, что в буферные регистры принят последний байт данных начального управляющего слова, Тогда блок 6 управления анализирует условия перехода по цепочке данных и, если они отсутствуют, посылает внешнему устройству по линии 9 сигнал окончания передачи данных. Затем в оперативную память передаются данные, имеющиеся еще в регистре 3 и блоке 7 буФерных регистров. Сигнал с первого выхода блока б управления, как сигнал окончания передачи данных, поступает в процессор, Если условия перехода по цепочке данных существуют,то вырабатывается соответствующий сигнал, процессор считывает из оперативной памяти следующее управляющее слово и заполняет ячейки местной памяти подканалов, счетчики 4 и 14 и триггеры 16 и 17 новой инФормацией. Во время выполнения этого процесса переход по цепочке прием данных из внешнего устройства продолжается без перерыва и в прежнем темпеБайты данных, связанные с новым управляющим словом,накапливаются в блоке 7 буферных ре" гистров и, когда переход завершается, передаются дальше в регистр 3 и в Оперативную память. Таким образом,если количество регистров 7 -7 К блока буФерных регистров достаточно для буФериэации всех байтов, поступакщих за время выполнения перехода п 6 цепочке данных, то этот переход выполняется с максимальной скоростью канала.В операции записи данные передаются в противоположном направлении. Слово считывается из оперативной памяти через шины 10 и 20, регистр 2,шину 21, записывается в регистр 3 изатем побайтно передается в блок 745 50 55 60 Передача данных может завершиться до исчерпания счета. Происходит это по инициативе канала либо внешнего устройства вследствие обнаружения необычной ситуации или конца зоны на носителе.По сигналу окончания передачи данных процессор 1 Формирует информацию, характеризующую завершившуюся операцию и содержащую, в частности, остаточный счет. Последний образуется следующим образом. Счет из памяти подкаыалов через регистр 2 пода" ется в сумматор, где он логически суммируется с содержимым счетчика 14 байтов. Результат и является остаточным счетом для операции чтения. Если выполнялась операция залисн,к этому результату прибавляется содержимое счетчика буФера, соединенного с сумматором, как и счетчик 14, через, группу разрядов регистра 2. ФбуФерных регистров через первый элемент 11, управляемый выходом первогодешиФратора 5. После каждой выдачииз блока буФерных регистров регистра7 происходит прибавление единицй ксодержимому первого дешиФратора 5 исодержимому первого счетчика 4, атакже вычитание единицы из содержи"мого второго счетчика 14. Из блока 7буФерных регистров данные поступают 1 на .шину 23 через второй элемент ИЛИ12Таким образом, независимо отобъема буфера байты в подканале последовательно проходят толвко черездва регистра. После освобождения регистра 3 обращение к оперативной па мяти повторяется. На каждом такомобращении выполняется, как и в операции чтения, модиФикация адреса дан- .ных и, если второй триггер 17 сброшен, - модификация счета с последуют щим анализом результата. Когда устанавливается цервын триггер 16, по"тенциал на его выходе подготавливает элемент И 19 к приему выходногосигнала второго дешиФратора 15. Последний анализирует на нуль содержимое счетчика 14, Когда дешиФраторсрабатывает, на выходе элемента И1 9 вырабатывается сигнал, воспринимаемый блоком б управления, Появление этого сигнала означает что изрегистра 3 выдан последний байт из/числа указанных в поле счета начального управляющего слова. Далее анализируются условия перехода по цепочке данных и в процессор посылается 35 сигнал окончания передачи данных либо сигнал перехода. Если необходимо,переход выполняется одновременно свыдачей из блока 7 буферных регистров последних байтов старого масси"ва. Еслй цепочки данных нет, то после выдачи этих байтов внешнему устройству посылается по линии 9 сигналокончания передачи данных..дешифратор, элемент НЕ. элемент И,первый и второй триггеры, причем пятый и шестой входы устройства соединены соответственно со входом перво-го -элемента ИЛИ и со входом третьего дешифратора, выход которого соеди"нен с единичным входом первого триггера и сб входом элемента НЕ, выходкоторого соединен с нулевым входомпервого триггера и с единичным вхо"О дом второго триггера, нулевой выходвторого триггера является пятым выходом устройства, единичный выходпервого триггера соединен с третьимвходом блока управления и с первымвходом элемента И, выход второго дешифратора соединен со вторым входомэлемента И, выход которого соединенс четвертым входом блока управления,четвертый выход блока управления соединен со входом второго элемента ИЛИи с управляющим входом блока буферныхрегистров, выходы которого соединенысоответственно со входами второгоэлемента ИЛИ, выход второго элементаИЛИ соединен со вторым информационным входом регистра данных и является шестым выходом устройства, выходпервого дешийратора соединен со входом первого элемента ИЛИ, выход которого соединен с информационным входом блока буферных регистров, вторыеинформационные выходы регистра данныхсоединены соответственно со входамипервого элемента ИЛИ,Источники информации,принятые во внимание при экспертизе1. Авторское свидетельство СССРР 312254, кл. С 06 Р,Формула изобретения Устройство ввода-вывода, содержащее регистр данных, первый и второй 15 счетчики. первый и второй дешиАраторы, блок управления, блок буферных регистров, причем первый, второй и третий выходы блока управления яв-. ляются соответственно первым, вторым 39 и третьим выходами устройства, первый, второй третий и четвертый выходы устройства соединены соответственно со входом первого счетчика, с первым информационным входом регистра данных, со входом второго счетчика и с первым выходом блока управления, выход первого счетчйка соединен со входом первого дешифратора, выход которого соединен с улравляющим входом регистра данных, первый выход 30 регистра данных является четвертым выходом устройства, выход второго счетчика соединен со входом второго дешифратора, со вторьи входом блока управления и с третьим выходом уст ройства, о т л и ч а ю щ е е с я тем, что, с целью повышения производительности и сокращения апларатурнцх затрат, в устройство введены первый и второй элементы ИЛИ, третий В предлагаемой структуре буфера данных отсутствуют непосредственные передачи из одного буферного регистра в другой и в каждый момент времени обращение выполняется только к одному буферному регистру. Благодаря этим свойствам буфер может быть построен на элементах современной полупроводниковой памяти. Такой буфер,обладая большой емкостью, имеет простую схему и -одержит мало элементов. 2. Хассон С. Микропрограммное управление. М., "Мир", 1974, т.2, гл. 7, 8 (прототип).7818 О 3 2 Составитель И. СигаловРедактор И. Николайчук Техред А,Ач Корре ван илиал ППП тент", г. Ужгород, ул. Проектная, 4 Заказ В 135/53 ВНИИПИ Гос по дела 113035, Мо

Смотреть

Заявка

2434710, 27.12.1976

КИЕВСКИЙ ОРДЕНА ТРУДОВОГО КРАСНОГО ЗНАМЕНИ ЗАВОД ВЫЧИСЛИТЕЛЬНЫХ И УПРАВЛЯЮЩИХ МАШИН

ЗАСЛАВСКИЙ РЕМА ИОСИФОВИЧ, ЩЕРЕДИН АЛЕКСАНДР ПЕТРОВИЧ, НЕФЕДЧЕНКО БОРИС ПАВЛОВИЧ, ДЕХТЯРЕНКО СВЕТЛАНА ГРИГОРЬЕВНА, АПТЕКАРЬ СЕМЕН АБРАМОВИЧ

МПК / Метки

МПК: G06F 3/04

Метки: ввода-вывода

Опубликовано: 23.11.1980

Код ссылки

<a href="https://patents.su/6-781803-ustrojjstvo-vvoda-vyvoda.html" target="_blank" rel="follow" title="База патентов СССР">Устройство ввода-вывода</a>

Похожие патенты