Устройство управления каналами

Иллюстрации

Показать все

Реферат

 

ОП ИСАНИЕ

ИЗОБРЕТЕНИЯ

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ

Союз Советскнк

Социалистическик

Республик

"" Z32870 (6l ) Jlîïîëíèòåëüíîå к авт. свнд-ву (22) Заявлено 14,1 1.77 (21) 2544025/18-24 с присоединением заявки М (23) П риорн тет

Опубликовано 05.05.80, Бюллетень М 17

Дата опубликования описания 08.05,8Q (51)M. Кд.

Гоеударствейный комитет

G 06 F 9/00 по делам изобретений и открытий (53) НК681.14 (088,8) (72) Авторы изобретения

P. И, Заславский, Я. М. Лихтер и A., П, Щередин (71) Заявитель

Киевский завод вычислительных и управляющих машин (54) УСТРОЙСТВО УПРАВЛЕНИЯ КАНАЛАМИ

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

При встроенных каналах роль устройства управления обычно выполняет процессор. Если каналы автономные, функции

10 устройства управления сводятся к коммутации соединений между каналами и оперативной памятью )1).

Канал осуществляет обмен данными с внешними устройствами (ВУ). Передача

15 .данных между ЦУ и каналом выполняется параллельными кодами, которые далее называются байтами и содержат в типичном случае 9 двоичных разрядов. Б операции чтения канал принимает данные из ВУ и из полученных байтов формирует единицу информации, пригодную для записи в оперативную память (ОП) и называемую дазтее словом. Размер слова определяется

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

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

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

В частности, если маска содержит единицы во всех разрядах, в ОП пищется полное слово. Чаще всего запись в ОП производится полными словами, но если границы массива данных не совпадают с rpa7328

3 ницами слов в OII, первое и, последнее слова массива не полные, Известно устройство, содержащее регистр, соединенный по входу и выходу с регистрами данных в каналах и с оператив-> ной памятью. Формирование слова выполняется микропрограммно. Слово, содержащее два байта, считывается из ОП в регистр, где один либо оба байта заменяются информацией из регистра данных кена- 0 ла, затем слово возвращается в ОП (21.

Недостаток устройства - затрата машинного времени на формирование слова.

Наиболее близким к предлагаемому является устройство содержащее коммуте15 тор адреса и коммутетор данных, входы которых соединень; соответственно со счетчиками адреса и регистрами данных в каналах, а выходы подключены к оперативной памяти f3)

Устройство работает следующим обрезом.

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

Количество таких разрядов и соответственно размер счетчика определяются длиной слова оперативной памяти. Тек, 30 при 8-байтовом слове счетчик 3-х разрядный.

Затем происходит передача данных. Б операции чтения байт данных принимает3( ся из внешнего устройства и:непосредственно с шин интерфейса либо через буфер в канале передается. по линиям в регистр данных. Этот. регистр имеет размер слова, Ленные помещаются в тот байт регистре, 40 который указан возбужденным выходом дешифраторе номера бейта. Одновременно записывается единица в соответствующий разряд регистра маски, После этого к содержимому счетчика прибавляется едини45 ца, тем самым к приему данных подготавливается следующий байт регистра.

70 4 мутаторы - соответственно маска и данные. В память пишутся только те байты, которым соответствуют единицы в маске.

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

Обрашение к памяти и связанные с ним

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

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

Бель изобретения — сокращение оборудования за счет экономичного построения узла формирования маски.

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

Первый выход счетчика адреса — вторым выходом устройства, введены блок формирования маски, коммутатор номере байта, дешифратор номера байта и дешифратор младших: разрядов адреса, ричем входы коммутатора номера байта являются третьей группой входов устройства, а выход коммутатора номера байта соединен со входом дешифратора номера байта, выход которого подключен к первому axotxy блока формирования маски, второй вход которого подключен к выходу дешифратора младшими разрядов адреса, вход которого соединен со вторым выходом счетчика адреса, при этом выход блока формирования маски является третьим вь1ходом устройПервый байт массива денных, в зависимости от начального значения номере байта, может попасть в начальный или любой другой байт слова. Б последнем случае один или несколько левых (младших по номеру) разрядов маски, соответствующей этому слову, содержит нули„

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

Блок формирования маски содержит первую группу элементов ИЛИ, вторую группу элементов ИЛИ н группу элементов И, причем первые входы элементов

ИЛИ первой группы и второй вход перво го элемента ИЛИ первой группы элементов ИЛИ являются вторым входом блоке формирования маски, а второй вход каждого последующего элемента ИЛИ первой группы, кроме первого элемента ИЛИ, соединен с выходом каждого предыдущего. S 73287 элемента ИЛИ первой группы и первым входом соответствующего элемента И группы, вторые входы элементов И группы подключе- . ны соответственно к выходам элементов ИЛИ второй группы, в выходы элементов И группы являются выходом блока формирования . маски, при этом первые входы элементов

ИЛИ второй группы и второй вход первого элемента ИЛИ второй группы являются первым входом блока формирования маски, 10 в второй вход каждого последующего элемен та. ИЛ И вто рой группы, кром е первого элемента ИЛИ, соединен с выходом преды. дущего элемента ИЛИ второй группы, Н& фиг, 1 представлена блок-схема предлагаемого устройства; на фиг. 2 .блок формирования маски.

Устройство содержит счетчик 1 адреса памяти, коммутатор 2 номера байта„коммутатор 3 данных, каналы 4, счетчик 5 номе- 0 ра байта, регистр 6 данных, дешифратор 7 младших разрядов адреса, блок 8 формирования маски, дешифратор 9 номера байта, третий выход 10 устройства, втоpofi вход 11 блока формирования маски, 2s первый вход 12 блока формирования маски, входы 13 в регистр данных 6, второй выход 14 устройства, второй вход 15 устройства, первый вход 16 устройства, третий вход 17 устройства, первый выход

18 устройства. Блок формирования маски содержит первую группу элементов ИЛИ 19, вторую группу элементов ИЛИ 20, группу элементов И 21.

Устройство работает следующим обра-, зом.

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

Номер байта в слове, записываются также и счетчик 5 в канале. Количество таких разрядов и, соответственно, размер счет- 4S чика 5 определяются длиной слова оперативной памяти. Так, при 8-байтовом слове счетчик 5 3-х разрядный.

Затем происходит передача данных. В

50 операции чтения байт данных принимается из внешнего устройства и непосредст .эенно с шин интерфейса либо через буфер в канале передается по линиям 13 в регистр 6 данных. Этот регистр имеет размер слова. Данные помещаются в тот байт регистра 6, который указан в счетчике 5.

После этого к содержимому счетчика 5 прибавляется единица, тем самым к при0 6 ему данных подготавливается следующий байт регистра 6, После заполнения последнего байта реистра 6, либо после приема последнего байта массива канал 4 вырабатывает запрос нв запись данных в оперативную па-, мять. Устройство управления считывает из местной памяти и помешает в счетчик

1 адрес данных. Старшая часть адреса, определяющая адрес слова в памяти, по линиям 14 передается в оперативную память. Младшая часть адреса через дешифратор 7 поступает на вход блока 8 формирования маски. Одновременно на второй вход блока 8 через коммутатор 2 и дешифратор 9 приходит номер байта иэ счетчика 5. Поскольку код в счетчике 5 на единицу превышает номер последнего заполненного байта регистра 6, дешфиратор

9 работает со сдвигом на единицу назад: коду 1 соответствует 0-й выход дешифратора, коду 2 1-й выход и т.д., коду 0старший выход. (например 7-й при 3-разрядном коде). Обычно счетчик 5 содержит нулевой код, но при записи в память последнего неполного слова массива, код в счетчике отличен от нулевого. Блок 8 формирует маску, которая по линиям 10 передается в память. Вместе с маской в память иэ регистра 6 через коммутатор 3 передается слово данных. В память пишутся только те байты слова, которым соответствуют единицы в маске. Затем производится модификация кода в счетчике 1: к старшей части адреса прибавляется единица, младшая часть адреса устанавливается в нуль. Полученный адрес возвращается в местную память.

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

Маска образуется на выходах элементов И 19 как конъюнкция двух промежуточных кодов. Первый код формируется первой группой элементов ИЛИ 19, которые подключены к выходам 11 дешифрвторв 7 младших разрядов адреса. Этот код содержит единицы в том разряде, который соответствует возбужденному выходу дешифратора 7, и в последующих, в предыдущих разрядах содержатся нули. Нулевой разряд, в отличие от остальных, элемента

ИЛИ не содержит и формируется непосредственно нв нулевом выходе дешифраторв

7, Старший по номеру разряд, в соотвеч ствии с логикой, формирования первого промежуточного кода, постоянно равен единице, поэтому старшим по номеру рвэ732870 рядом маски служит соответствующий разряд второго промежуточного кода.

Второй промежуточный код формируется второй группой элементов ИЛИ 20, которые подключены к выходам 12 дешифратора 9 номера байта. Этот код содержит единицы в том разряде, который соот ветствует возбужденному выходу дешифратора 9, и в предыдущих; в последующих разрядах содержатся нули. Старший по 1О номеру разряд элемента ИЛИ не содержит и формируется непосредственно на старшем выходе дешифратора 9. Нулевой разряд, в соответствии с логикой формирования второго промежуточного кода, постоянно равен единице, поэтому нулевым разрядом маски служит нулевой разряд первого промежуточного кода.

Таким образом, первый промежуточный код обеспечивает установку в нуль млад- 20 ших по номеру разрядов маски (когда слово данных начинается не с нулевого байта), второй промежуточный код обеспечивает установку в нуль старших по номеру разрядов маски (когда слово данных окан- 2

25 чивается не на последнем байте).

Пример, S-байтовое слово, начальный номер байта равен 3. Запись в память первого слове. на входе дешифратора 7 код 3, возбужден 3-й выход дешифратора 7, первый промежуточный код

OOOl 1 1 1 1; на входе цешифра тора 9 код

О, возбужден 7-й выход дешифратора 9 (дешифрация со сдвигом назад на единицу), второй промежуточный код 1111

1111; маска 0001 1111. Запись в память последующих слов, кроме последнего: на входах дешифраторов нулевые коды, промежуточные коды и маска содержат

40 единицы во всех разрядах. Запись в память последнего слова: на входе дешифратора 7 код О, первый промежуточный код

1111 1111; на входе дешифратора 9 код, к примеру равен 5, возбужден 4-й выход

45 дешифратора 9, второй промежуточный код 1111 1000; маска 1111 1000.

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

Вместо коммутатора маски вводится коммутатор номера байта, имеющий меньшую

55 разрядность.

Формула изобретения

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

2. Устройство по и. 1, с т л и ч а— ю щ е е с я тем, что, блок формирования маски содержит первую группу элементов ИЛИ, вторую группу элементов

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

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

Источники информации, принятые во внимание при экспертизе

1. Коган Б. М, и др. )цифровые вычислительнь е машины и системы. М., "Энергия, 1973.

2. Хасссн С. Микропрограммное управление. M., Мир, вып. 2, 1976.

3, Патент США № 3411143, кл„342172,5, 12.11.78.