Устройство для обмена данными между оперативной памятью и периферийными устройствами

 

Изобретение относится к области вычислительной техники, в частности, к устройствам обмена данными. Оно может быть использовано в качестве буфера данных для каналов ввода-вывода ЭВМ. Цель изобретения - повышение пропускной способности, сокращение оборудования. Цель достигается тем, что в устройство для обмена между оперативной памятью и периферийными устройствами , построенное на основе двухадресного полупроводникового блока памяти, Изобретение относится к области вычислительной техники и может быть использовано в качестве буфера данных для каналов ввода-вывода ЭВМ. Целью изобретения явлется повышение быстродействия устройства. Сущность изобретения заключается в том, что для повышения пропускной способности каналов в устройстве для обмена данными между ОП и периферийными устройствами для буферизации данных используется полупроводниковая память и комбинационный сдвигатель. Управление введены второй блок адресации, второй блок управления памятью, блок формирования циклов, два сдвигателя, блок формирования масок, блок определения сдвига. Введение новых блоков позволило построить устройство для обмена данными на основе двухадресного полупроводникового блока памяти и комбина-ционных сдвигателей. При этом управление адресацией, режимами считывания, записи блока буферной памяти организовано таким образом, что имеется возможность одновременного обращения к разным байтам слов двух смежных строк, а комбинационный сдвигатель расположит байты данных на шинах данных в соответствии с адресом памяти, в которую производится запись. Это позволяет производить накопление данных в буферной памяти, не ожидая появления начального адреса оперативной памяти, и организовать обмен данных с оперативной памятью блоком данных (в несколько обменных слов за одну передачу данных в ОП). 8 з.п. ф-лы, 14 ил. 6 табл. адресацией, режимами считывания, записи буферной памяти, применяемой для хранения данных, построено таким образом, что разрешается одновременное обращение к разным байтам слова двух смежных слов данных.« Комбинационный сдвигатель используется для правильного расположения байтов обменного слова при записи их в ОА или буферную память. При реализации такого устройства для управления одновременным обращением к смежным словам буферной памяти разрабоfe С CJ VJ CJ о ел

СОЮЗ СОВЕТСКИХ

СОЦИАЛИСТИЧЕСКИХ

РЕСПУБЛИК (sl)s G 06 F 13/16

ГОСУДАРСТВЕННОЕ ПАТЕНТНОЕ

ВЕДОМСТВО СССР (ГОСПАТЕНТ СССР) -"" »ь Ж ой! п

"-ЦО A я

„; .,: .. -:.Т(:З- Т Д,,".ðä i ;!й gH »»" E(-„ä

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (21) 4850687/24 (22) 13.07.90 (46) 30,08.93. Бюл. )Ф 32 (71) Научно-исследовательский институт электронных вычислительных машин (72) А.Г.Рымарчук и Л.В,Чеховских (56) 1. Патент США М 4272809, кл, 340-172.5, 1981.

2. Авторское свидетельство СССР

М 1587521, кл. G 06 F 13/00, 1987. (54) УСТРОЙСТВО ДЛЯ ОБМЕНА ДАННЫМИ МЕЖДУ ОПЕРАТИВНОЙ ПАМЯТЬЮ И

ПЕРИФЕРИЙНЫМИ УСТРОЙСТВАМИ (57) Изобретение относится к области вычислительной техники, в частности, к устройствам обмена данными. Оно может быть использовано в качестве буфера данных для каналов ввода-вывода ЭВМ, Цель изобретения — повышение пропускной способности, сокращение оборудования. Цель достигается тем, что в устройство для обмена между, оперативной памятью и периферийными устройствами, построенное на основе двухадресного полупроводникового блока памяти, Изобретение относится к области вычислительной техники и может быть использовано в качестве буфера данных для каналов ввода-вывода ЭВМ.

Целью изобретения явлется повышение быстродействия устройства.

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

„„. Ж„„1837305 А1 введены второй блок адресации, второй блок управления памятью, блок формирования циклов, два сдвигателя, блок формирования масок, блок определения сдвига.

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

8 з,п. ф-лы, 14 ил. 6 табл. адресацией, режимами считывания, записи буферной памяти, применяемой для хранения данных, построено таким образом, что разрешается одновременное обращение к разным байтам слова двух смежных слов данных. ч

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

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

ОП и буферной памятью — блоки анализа запросов, формирования циклов, сдвигателей, определения сдвига, формирования 5 маски.

На фиг.1 представлена блок-схема устройства для обмена данными между оперативной памятью и периферийными устройствами; на фиг.2 — блок памяти; на 10 фиг.3 —; на фиг.4— первый блок управления памятью; на фиг,5— блок анализа запросов; на фиг.6 — второй блок адресации; на фиг.7 — второй блок управления памятью; на фиг.8 — блок формирования циклов; на фиг.9 — блок формирования маски; на фиг,10 — блок определения сдвига, на фиг.11 — первый сдвигатель; на фиг.12 — второй сдвигатель; на фиг.13 — временная диаграмма обмена данными между блоком памяти и периферийными устройствами; на фиг.14 — временная диаграмма обмена данными между блоком памяти и оперативной памятью.

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

17 задания направления обмена, вход 18 константы передачи устройства, вход 17 задани направлени обмена, вход 18 константы передачи устройства, выход 19 ответа устройства, вход 20 запроса на обмен устройства, вход 21 задания кода единицы устройства, первую 22 шину данных устройства для соединения с оперативной памятью, вторую 23 шину данных устройстsa дл соединени с периферийными устройствами, первую 24 группу информационных входов-выходов блока памяти, первый адресный вход 25 блока памяти, вход 26 номера байта первого блока управления памятью, первую группу управляющих входов 27, 28, 29 блока памяти, вход 30 сброса второго блока управления памятью, вход 31 номера байта блока определения сдвига, второй адресный вход 32 блока памяти, второй выход 33 второго блока управления памятью, управляющий вход 34 второго сдвигэтеля, вторую группу управляющих входов 35, 36, 37 блока памяти, третий уп15

55 равляющий вход 38 блока формирования маски, вход 39 конца цикла второго блока управления памятью, вход 40 константы модификации второго блока адресации, выход

41 блока определени сдвига.

Группа 11 адресных входов устройства соединена с адресными входами блока 7 формирования циклов, блока 9 формирования маски и блока 10 определения сдвига.

Вход 12 разрешения обмена устройства соединен с одноименным входом второго блока 6 управления памятью. Выход 13 маски устройства является выходом блока 9 формирования маски. Вход 14 синхронизации устройства соединен с первым входом блока 4 анализа запросов, с синхровходами блока 9 формирования масок, блока 10 определения сдвига, первого 3 и второго 6 блоков управления памятью, блока 7 формирования циклов, первого 2 и второго 5 блоков адресации.

Третий выход второго блока 6 управления памятью соединен с четвертым управляющим входом блока 4 анализа запросов и является выходом 15 конца обмена устройства. Первый выход блока 4 анализа запросов является выходом 16 запроса на обмен устройства.

Вход 17 задания направления обмена соединен с первыми управляющими входами блока 9 формирования маски, первого 3 и второго 6 блоков управления памятью и блока 4 анализа запросов.

Вход 18 константы передачи устройства соединен с вторыми управляющими входами блока 7 формирования циклов и блока 4 анализа запросов. Второй выход блока 4 анализа запросов соединен с входами разрешения первого блока 2 адресации и первого блока 3 управления памятью и является выходом 19 ответа устройства.

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

Первая 22 шина данных устройства для соединения с оперативной памятью соединена с выходом первого сдвигателя и с информационным входом второго сдвигателя и является системной магистралью.

Вторая 23 шина данных устройства для соединения с периферийными устройствами соединена с второй группой информационных входов-выходов блока 1 памяти и является канальной магистралью.

Первая группа 24 информационных входов-выходов блока 1 памяти соединена с информационным входом первого сдвигателя и с выходом второго сдвигателя и образу1837305 т двунаправленные шины буферной магитрали.

Первый 25 и второй 32 адресные входы блока 1 памяти соединены соответственно с первыми выходами первого 2 и второго 5 блоков адресации и являются соответстенно шинами адреса строки порта B и пора А.

Первая группа выходов 27, 28, 29 первого блока 3 управления памятью соединена оответственно с первой группой управляющих входов блока 1 памяти и являются соответственно шинами записи, чтения и разрешения выходов порта В, Вход 30 сброса второго блока 6 управ ления памятью соединен с третьим выходом блока 4 анализа запросов.

Вход 31 номера байта блока определе:ния сдвига и вход 26 номера байта первого блока управления памятью соединены сооТветственно с вторыми выходами второго 5 и первого 2 блоков адресации и являются соответственно шинами номера байта в строке порта А и порта В.

Второй выход 33 второго блока 6 управления памятью соединен с управляющими входами второго блока 5 адресации и блока

10 определения сдвига, вторым управляющим входом блока 9 формирования масок и первым управляющим входом блока 7 формирования циклов и является выходом триггера связи с оперативной памятью, Первый выход 34 второго блока 6 управ ления памятью соединен с управляющим входом второго сдвигателя 8 и является выходом разрешения сдвига.

Группа выходов 35, 36, 37 второго блока

6 управления памятью соединена соответственно с второй группой управляющих входов блока 1 памяти, а выход 35 разрешения выдачи группы выходов соединен также с управляющим входом первого сдвигателя 8 и является сигналом разрешения выходов порта А, выходы 36, 37 являются соответственно стробами записи и чтения порта А.

Третий выход 38 блока 7 формирования циклов соединен с третьим управляющим входом блока 9 формирования маски и является группой выходов Х младших разрядов регистра константы передачи.

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

Вход 40 константы модификации второго блока 5 адресации соединен с первым выходом блока 7 формирования циклов, Вы ход 41 блока 10 определения сдвига соеди5

55 нен с входами величины сдвига первого и второго сдвигателей 8 и является группой выходов регистра сдвига, Блок 1 памяти (фиг.2) предназначен для временного хранения байтов данных, поступающих в него по двунаправленным шинам канальной 23 и буферной 24 магистралям.

Он содержит п узлов 42 двухвходовой двухадресной памяти с портами А и В, которая реализована на микросхеме К1800РП6 (зарубежный аналог Н С1Р806).

Двунаправленные шины 23 канальной магистрали соединены с входами-выходами портов В п узлов 42.

Двунаправленные шины 24 буферной магистрали соединены с входами-выходами портов А и узлов 42.

Первый 25 и второй 32 адресные входы, первая группа 27, 28, 29 управляющих входов и вторая группа 36, 37, 35 управляющих входов блока соединены с соответствующими входами и узлов 42.

Первый блок 2 адресации (фиг.3) предназначен для адресации ячеек двухадресного лока 1 памяти по порту В.

Он содержит элемент 43 И и счетчик 44 номера байта порта В, Выходы Х младших разрядов и Y оставшихся разрядов счетчика

44 номера байта порта В соединены соответственно с шинами 26 номера байта в строке порта В и с шинами 25 адреса строки порта В. Вход счетчика 44 соединен с выходом элемента 43 И. Первый и второй входы элемента 43 И соединены соответственно с входом разрешения 19 блока и с линией 65 синхровхода 14 блока, Первый блок 3 управления памятью (фиг.4) предназначен для выработки управляющих сигналов записи и чтения байтов данных для порта В блока 1 памяти. Он содержит дешифратор 46, первый 47 и второй 48 элементы И, первый 49, второй 50 и третий 51 селекторы, Выходы первого 49, второго 50 и третьего 51 селекторов соединены соответственно с шинами 27 записи порта В, с шинами 28 чтения порта В и с шинами 29 разрешения выходов порта В.

Вход дешифратора 46 соединен с входом

26 номера байта блока, а выходы дешифратора 46 соединены с первыми входами первого 49, второго 50 и третьего 51 селекторов. Вход 19 разрешения блока соединен с первыми входами первого 47 и второго 48 элементов И, а выходы этих элементов И соединены соответственно с вторыми входами первого 49 и второго 50 селекторов.

Первый управляющий вход 17 блока соединен с вторым входом первого 47 элемента И и с вторыми инверсными входами

1837305 второго 48 элемента И и третьего 51 селектора. Линия 45 синхровхода 14 блока соединена с третьими входами первого 47 и второго 48 элементов И, Блок 4 анализа запросов (фиг.5) преднаначен для выработки запросов на обмен данными с оперативной памятью, а также для выработки сигнала обслуживания периферийного устройства и конца обмена данными с оперативной памятью, Он содержит мультиплексор 52, триггер 53 обслуживания периферийного устройства, схему 54 сложения по модулю два, первый 55, второй 56, третий 62, четвертый 63 и пятый 61 элементы И, арифметико-логическое устройство

57, элемент 58 ИЛИ, регистр 59 счетчика байтов, схему сравнения 60, сигнал 66 запроса на выдачу данных в оперативную память и сигнал 67 запроса на прием данных от оперативной памяти.

Второй управляющий вход 18 блока соединен с первыми входами мультиплексора 52 и схемы сравнения 60, второй вход которой соединен с первым входом арифметика-логического устройства 57, с выходом регистра 59 и с входами пятого 61 элемента И. Выходы схемы сравнения 60 и пятого 61 элемента И соответственно соединены с первыми входами третьего 62 и четвертого 63 элементов И, выходы которых соединены соответственно с линиями

66, 67 первого 16 выхода блока, Третий управляющий 21, второй 20 и четвертый управляющий 15 входы блока соединены соответственно с вторым входом мультиплексора 52, первым входом триггера 53 и третьим входом второго 56 элемента И, выход которого соединен с третьим 30 выходом блока и с вторым входом элемента 58

ИЛИ, второй вход которого соединен с выходом первого 55 элемента И. а выход соединен с вторым входом регистра 59, первый вход которого соединен с выходом арифметико-логического устройства 57, второй и третий выходы которого соединены соответственно с выходом мультиплексора 52 и выходом схемы 54 сложения по модулю два, первый вход которой соединен с первым входом первого 55 элемента И, с первым инверсным входом второго 56 элемента И, с третьим входом мультиплексора 52, с выходм триггера 53 и с вторым 19 выходом блока. Линия 64 первого 14 входа блока соединена с вторым входом триггера 53, а линия 65 первого 14 входа блока соединена с вторыми входами первого 55 и второго 56 элементов И, Первый управляющий 17 вход блока соединен с вторыми входами схемы 54 сложения по модулю два и третьего 63 элемента

И и с вторым инверсным входом четвертого

63 элемента И.

Второй блок 5 адресации (фиг.6) предназначен для адресации mxn ячеек порта А блока 1 памяти, Он содержит регистр 68 номера байта порта А, схему 69 И, дешифратор 70, счетчик 71 номера строки, арифметика-логическое устройство 72, n — 2 элементов

73 ИЛИ и n — 1 мультиплексоров 74.

Выходы n — 1 мультиплексоров 74 соединены с первым 32 выходом блока, синхровход 14 которого соединен с первым входом счетчика 71 и вторым входом элемента 69 И, выход которого соединен с третьим входом счетчика 71 и вторым входом регистра 68, выход которого соединен с первым 32 и вторым 31 выходами блока, с первыми входами п — 1 мультиплексоров 74, с первым входом арифметико-логического блока 72 и с входом дешифратора 70, выходы которого соединены с третьим входом (и — 1)-го мультиплексора 74 и с входами n — 2 элементов 73

ИЛИ, выходы которых соединены соответственно с третьими входами n — 2 мультиплексоров 74, вторые входы мультиплексоров 74 соединены с выходом счетчика 71, второй вход которого соединен с вторым входом регистра 68 и с выходом арифметика-логического устройства 72, второй вход которого соединен с входом 40 константы модификации блока, а управляющий вход 33 блока соединен с третьим входом арифметико-логического устройства 72 и с первым входом элемента 69 И, Второй блок 6 управления памятью (фиг.7) предназначен для выработки управляющих сигналов записи, чтения, разрешения выходов для порта А блока 1 памяти на время цикла связи с ОП, а также для определения длительности связи с ОП.

Он содержит триггер 76 связи с ОП (ТСОП), триггер 77 равенства нулю константы передачи (ТКПДО), первый 78, второй 79, третий 80 и четвертый 81 элементы И. Выходы третьего 80 и четвертого 81 элементов И соединены соответственно с 36 и 37 выходами блока, а вторые входы элементов 80, 81

И соединены с линией 45 синхровхода 14 блока, линия 64 которого соединена с третьим и пятым входами триггера 76 ТСОП, а линия 75 соединена с вторым входом триггера 77 ТКПДО.

Выход триггера 76 ТСОП соединен с первыми входами первого 78 и второго 79 элементов И и с вторым ЗЗ выходом блока.

Выход триггера 77 ТКПДО соединен с вторым инверсным и четвертым входами триггера 76 ТСОП и с третьим 15 выходом блока, вход 12 разрешения обмена устрой1837305 ства которого соединен с первым входом

|триггера 76 ТСОП.

Вход 39 конца цикла и вход 30 сброса блока соединены соответственно с первым и третьим входами триггера 77 ТКПДО, а первый управляющий вход 17 блока соединен с вторым входом первого 78 элемента

И и с вторым инверсным входом второго

79 элемента И, выход которого соединен с первым входом третьего элемента И и с первым 34 выходом блока, выход 35 разрешения выдачи группы выходов которого соединен с выходом первого 78 элемента

И и с первым входом четвертого 81 элемента И.

Блок 7 формирования циклов (фиг.8) предназначен для модификации константы передачи и выработки сигнала равенства нулю константы передачи, а также для формирования константы модификации.

Он содержит мультиплексор 82, постоянное запоминающее устройство ПЗУ 83, первый 84 элемент И, элемент ИЛИ 85, регистр 86 константы передачи (РКПД) арифметико-логическое устройство (АЛУ) 87 и второй 88 элемент И.

Первый вход мультиплексора 82 соединен с линией 89 второго управляющего 18 входа блока, линия 90 которого соединена с первым входом элемента 85 ИЛИ, второй вход которого соединен с выходом первого

84 элемента И, второй вход которого соединен с линией 65 синхровхода 14 блока, а первый вход соединен с третьим входом

АЛУ 87, первым управляющим входом 33 блока и с третьим входом мультиплексора

82, Второй вход мультиплексора 82 соединен с выходом АЛУ 87, а выход соединен с первым входом регистра 86, второй вход которого соединен с выходом элемента 85

ИЛИ. Выход регистра 86 соединен с третьим 38 выходом блока, с первым входом

АЛУ 87, с вторым входом ПЗУ 83 и с инверсным входом второго 88 элемента И, выход которого соединен с вторым 39 выходом блока.

Адресный 11 вход блока соединен с первым входом ПЗУ 83, выход которого соеди нен с вторым входом АЛУ 87 и с первым 40 выходом блока, Блок 9 формирования маски (фиг.9) предназначен для формирования маски обменного слова ОП.

Он содержит постоянное запоминающее устройство 91, элемент 92 И и регистр

93 маски, Первый и второй входы ПЗУ 91 соедине ны соответственно с адресным 11 и третьим

1управляющим 38 входами блока. Выходы ! ПЗУ 91 соединены с первым входом регист5

55 ра 93, выход которого соединен с выходом

13 блока, а второй вход соединен с выходом элемент" 92 И, первый и второй входы которого соединены соответс-.веннс с первым

17 и вторым 33 управляющими входами блока, а третий вход элемента 92 И соединен с линией 64 синхроехода 14 блока, Блок 10 определения сдвига (фиг,10) предназначен для формирования величины сдвига для первого и второго сдвигателей.

Он содержит арифметико-логическое устройство 94, элемент 95 И и регистр 96 сдвига, Первый и второй входы АЛУ 94 соединены соответственно с адресным 11 и номера байта 31 входами блока, Управляющий 33 вход блока соединен с первым входом элемента 95 и с третьим входом АЛУ 94. выход которого соединен с первым входом регистра 96, выход которого соединен с выходом

41 блока. Второй вход регистра 96 соединен с выходом элемента 95 И, второй вход которого соединен с линией 64 синхровхода 14 блока.

Первый сдвигатель 8 (фиг.11) —,ðåäíàýначен для правильного расположения байтов обменного слава, выдаваемо с а ОП. Он содержит и/2 узлов 97 комбинационного сдвигателя, который реализован на микросхеме К 1800 PBB.

Информационные входы узлов 97 соединены с двунаправленными шинами 24 буферной магистрали, а информационные выходы узлов 97 соединены с двунаправленными шинами 22 системной магистрали.

Первые входы управления сдвигов узлов 97 соединены с входом 41 величины сдвига блока, а вторые входы управления видом сдвига узлов 97 соединены с управляющим 35 входом блока.

Второй сдвигатель 8 (фиг.12) предназначен для правильного расположения байтов обменного слова, принимаемого из ОП, Он содержит n/2 узлов 97 комбинационного сдвигателя, реализованного на микросхеме К 1800 8Р8.

Информационные входы узлов 97 соединены с двунаправленными шинами 22 системной магистрали, а информационные выходы узлов 97 соединены с двунаправленными шинами 24 буферной магистрали, Первые входы управления сдвигом узлов 97 соединены с входом 41 величины сдвига блока, а вторые входы управления видом сдвига узлов 97 соединены с управляющим входом 34 блока. устройство для об1837305

55 мена данными между оперативной памятью и периферийными устройствами работает следующим образом.

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

БП1 представляет собой двухадресную двухпортовую память емкостью mxn байтов (где m — количество строк, à n — количество байтов в строке), позволяющую вести одновременно обмен данными между

БП1 и ОП по порту А и между БП1 и ПФУ по порту В.

Ширина БП1 выбрана равной ширине обменного слова ОП, т.е. формат обмена с

ОП равен и байтам.

БП1 содержит и узлов 42. Каждый узел представляет собой двухадресную двухпортовую память емкостью mx1 байт.

Двунаправленные входы-выходы портов А и узлов 42 образуют и-байтовую двунаправленную шину 24 буферной магистрали, которая используется для параллельной записи-чтения и байтов данных при обмене между ОП и БП1.

Двунаправленные входы-выходы портов В и узлов 42 объединены и образуют однобайтовую двунаправленную шину 23 канальной магистрали, которая используется для последовательной записи-чтения байтов данных при обмене между ПФУ и

БП1.

При обмене данными с ПФУ блок 1 памяти всегда заполняется сначала независимо от начального адреса данных ОП.

Обмен данными с ПФУ начинается по сигналу, поступающему на вход 20 запроса на обмен устройства. В ответ на запрос в блоке 4 анализа запросов вырабатывается единичный сигнал на выходе 19 ответа устройства, который разрешает работу первого блока 3 управления памятью и первого блока 2 адресации (см. временную диаграмму фиг.13).

Первый блок 2 адресации выдает в БП1 адрес одной иэ m строк по шинам 25 адреса строки порта В, à в первый блок 3 управления памятью номер байта в строке по шинам 26. По этому номеру первый блок 3 управления памятью выдает на шине 27 записи порта В в блок 1 памяти один иэ и стробов записи, если выполняется операция ввода, или один из и чтения на шины 28 чтения порта В и один из и сигналов разрешения выходов на шины 29 разрешения выходов порта В, если выполняется операция вывода, Какая операция выполняется, определяет сигнал задания направления обмена на входе 17 устройства. Единичный уровень этого сигнала задает операцию ввода, а нулевой — вывода.

После приема или выдачи байта данных в первом блоке 2 адресации увеличивается на единицу номер байта порта В, а в блоке

4 анализа запросов увеличивается при вводе или уменьшается при выводе количество принятых или выданных байтов на константу равную единице, поступающую с входа 21 устройства, Блок 4 анализа запросов сравнивает количество принимаемых при вводе или выдаваемых при выводе байтов данных с количеством байтов, которым необходимо обменяться с ОП за один цикл связи. Это количество задается величиной константы передачи, поступающей на вход 18 устройства.

Если при вводе в БП1 накопилось нужное количество байтов, а при выводе есть куда принять нужное количество байтов, блок 4 анализа запросов вырабатывает на выходе 16 запрос на обмен с ОП.

Обмен данными между БП1 и ОП может происходить начиная с адреса данных ОП кратному обменному слову ОП, т.е. количество младших разрядов адреса данных равное!оцуп равно нулю...

В этом случае порядок расположения байтов данных в ПБ1 соответствует порядку расположения данных в ОП, т.е. каждая из

m строк БП1 является обменным словом для

ОП.

Если же адрес данных не кратен обменному слову — количество младших разрядов равное logan не равны нулю, то в первом цикле связи с ОП будет передано в ОП байтов меньше и и расположены они дожны быть в зависимости от значения logan младших разрядов адреса данных ОП. . В следующем цикле связи с ОП надо передать в ОП полное обменное слово из и байтов, которое содержит оставшиеся байты текущей строки и часть байтов (допопнение до и) следующей строки и расположить их в нужном порядке, Какие байты адресовать в текущей строке, а какие в следующей, определяются по количеству переданных байтов в первом обменном слове, т.е. по номеру байта в строке, который получился в результате модификации адреса номера байта порта А на количество переданных байтов в первом цикле связи.

Например, при п = 8 анализируются при (log2 8 = 3) младшие разряды адреса данных

ОП, Если они равны, например, пяти (101), 13

1837305

14 о в первом цикле связи с ОП надо будет ередать три первые байта нулевой строки

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

Расположение байтов данных в БП1 риведено в табл.1.

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

Для расположения байтов в соответстии с адресом данных ОП применены одноапраеленные сдвигатели 8. Первый спользуется при выполнении операций вода, а второй при выполнении, операций

ы вода.

Каждый из сдвигателей содержит n/2 злое 43, Каждый узел представляет собой вухбайтовый программируемый сдвигаель, на входы величины сдвига которого одается величина сдвига с группы выходов

1 регистра сдвига блока .10 определения двига, а на управляющие входы код операии сдвига. Для первого сдвигателя код опеации задается сигналом 35 разрешения

ыходов порта А, а для второг сдвигателя игналом 34 разрешения сдвига второго лока 6 управления памятью.

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

Таким образом, при выполнении опеации ввода отключены выходы второго двигателя 8 от буферной магистрали 24, а

ыходы первого сдвигателя открываются на ремя цикла обмена с ОП.

При выполнении операций вывода выоды первого сдвигателя 8 отключены от истемной магистрали 22, а выходы второго двигателя 8 открываются во время цикла вязи с ОП.

Обмен данными с ОП начинается по сигалу разрешения обмена поступающему на ход 12 устройства. В ответ на разрешение

35

40 будет выдана на шины 22 системной магистрали.

5

20 обмена во втором блоке 6 управления памятью вырабатывается единичный сигнал на выходе 33 триггера связи с оперативной памятью, который разрешает работу второго блока 5 адресации, второго блока б управления памятью, блока 7 формирования циклов, блока 9 формирования маски и блока 10 определения сдвига на время цикла связи с ОП (см. временную диаграмму фиг,14).

Второй блок 5 адресации проадресует одну из m строк, задав адрес текущей строки для каждого из и узлов 42 блока 1 памяти на шинах 32 адреса строки порта А, если обмен ведется байтами, расположенными на границе обменного слова.

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

Второй блок 5 адресации выдает также по шинам 31 номер байта в строке порта А в блок 10 определения сдвига, по которому

В зависимости от младших 1092п разрядов адреса данных, поступающих с входа 11 устройства, сформируется величина сдвига на выходах 41 регистра сдвига блока 10 определения сдвига.

Второй блок 6 управления памятью при выполнении операций ввода вырабатывает строб 37 чтения порта А для всех и узлов 42 блока 1 памяти для параллельного чтения обменного слова, сигнал 35 разрешения выходов порта А БП1, который также задает код сдвига для первого сдвигателя и информация с выходов первого сдвигателя

При выполнении операций вывода второй блок 6 управления памятью вырабатывает код сдвига на выходе 34 разрешения сдвига для второго сдвигателя и обменное слово с шин 22 системной магистрали через второй сдвигатель поступит на шины 24 буферной магистрали для записи по порту А

БП1 по стробу Зб записи порта А, который вырабатывает второй блок 6 управления памятью.

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

1837305

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

Величина блока задается константой передачи на входе 18 устройства и может быть равной Кп, где k — количество строк (k < m) передаваемых за один цикл связи с ОП.

Длительность цикла связи с ОП в зависимости от величины константы передачи определяет блок 7 формирования циклов.

По мере передачи-приема обменных слов константа передачи модифицируется на величину константы модификации в сторону уменьшения, Величина константы модификации равна количеству байтов обменного слова и выдается на выход 40 блока 7 формирования циклов для модификации номера байта порта А по мере приема-выдачи обменных слов в сторону увеличения. Когда обмен блоком кончится, блок 7 формирования циклов вырабатывает на выходе 39 сигнал равенства нулю константы передачи по которому второй блок 6 управления памятью выдает на выход 15 устройства сигнал конца обмена с ОП и вырабатывает нулевой уровень на выходе

33 триггера связи с ОП, который прекращает работу всех блоков по обслуживанию порта А.

Сигнал конца обмена с ОП будет присутствовать на выходе 15 устройства до тех пор пока не промодифицируется количество байтов в устройстве в блоке 4 анализа за-. просов на величину константы передачипри вводе в сторону уменьшения, а при выводе в сторону увеличения. После модификации блок 4 анализа запросов на выходе 30 формирует сигнал, по которому второй блок

6 управления памятью сбрасывает на выходе 15 устройства сигнал конца обмена с ОП.

Устройство готово для следующего цикла связи с ОП.

Блок 1 памяти (фиг,2) работает следующим образом.

При выполнении операций ввода сигнал на входе 17 задания направления обмена устройства задает направление обмена от ПФУ в ОП, т.к, канальная магистраль 23 будет входной, а буферная магистраль 24 выходной, Байт данных, поступающий от ПФУ по канальной магистрали 23 присутствует на входах-выходах порта В каждого из узлов

42 БП1. Шины 25 адреса строки порта В проадресуют нулевую строку во всех узлах

42, а на шинах 27 записи порта В вырабатывается один строб записи в первый узел 42

БП1.

40

45 . Первый блок 3 управления памятью

5

При поступлении следующего байта данных от ПФУ вырабатывается строб записи во второй узел 42 БП1 и т.д. до заполнения нулевой строки и байтами, а затем проадресуется первая строка и заполнится и байтами. Аналогичным образом будут заполняться следующие строки БП1.

По порту А читается обменное слово для.

0ll по стробу 37 чтения порта А, поступающему во все узлы 42. Обменное слово может состоять из байтов одной строки или двух соседних строк, в зависимости от адреса, который задается индивидуально для каждого узла 42 на шинах 32 адреса строки порта А.

Проадресованное и прочитанное обменное слово выдается на шины 24 буферной магистрали по сигналу 35 разрешения выходов порта А, общему для всех узлов 42

БП1.

Первый блок 2 адресации (фиг,3) работает следующим образом:

Для адресации количества nxm байтов

БП1 по порту B используется счетчик 44 номера байта порта В. Количество разрядов счетчика определяется по формуле:

Z = log2(nxm) = 1092п + logjam = Х + Y, где Х вЂ” количество младших разрядов счетчика, адресующих пбайтов в строке,,Y— количество оставшихся разрядов, адресующих m строк.

Младшие разряды 1-Х образуют шину

26 номера байта в строке порта В. Следующие "Y" разрядов (Х + 1) — Z образуют шины

25 адреса строки порта В.

Каждый раз во время обслуживания

ПФУ, т.е. при наличии единичного сигнала на выходе 19 ответа устройства после приема-передачи байта данных содержимое счетчика 44 увеличивается на +1 по синхросигналу 65 входа 14 синхронизации. Сигнал модификации вырабатывается на выходе элемента 43 И. (фиг.4) работает следующим образом:

Во время обслуживания ПФУ при обмене байтом данных по порту В блока 1 памяти срабатывает либо первый 49, либо второй 50 и третий 51 селекторы в зависимости от кода выполняемой операции.

Код выполняемой операции определяет сигнал на входе 17 задания направления обмена.

Единичный уровень этого сигнала определяет операцию ввода, а нулевой — вывода.

О том, что идет обмен байтом данных между ПФУ и портом В БП1 говорит единичный уровень сигнала на входе 19 блока.

1837305

При выполнении операций ввода по синхросигналу 45 входа 14 синхронизации на выходе первого 47 элемента И вырабаты-! вается строб разрешения для первого 49 селектора, разрешая выдачу одного из и

1 стробов на шины 27для записи поступивше, го от ПФУ байта данных по порту В блока 1

; памяти.

Второй 50 и третий 51 селекторы при ! этом не работают, так как на их входах раэ решения нулевые уровни.

При выполнении операций вывода каж-! дый раз при выдаче байта данных в ПФУ по ! синхросигналу 45 входа 14 срабатывает вто . рой 48 элемент И, разрешая работу второго 50 селектора, с выхода которого выдается !, один из и стробов в шины 28 чтения порта В. С выхода третьего 51 селектора выдается, один из и сигналов в шины 29 разрешения

, выходов порта В для выдачи прочитанного ! по порту В БП1 байта данных в канальную

: магистраль 23.

Какой из п стробов будет выдан на вы ход каждого иэ селекторов, определяет де1 шифратор 46 по номеру байта в строке порта В, поступающему по шинам 26 на, вход дешифратора 46, Блок 4 анализа запросов (фиг,5) работа, ет следующим образом.

При желаний ПФУ обменяться байтом, данных на вход 20 блока поступает сигнал !, запроса ПФУ, при наличии которого по син хросигналу 64 входа 14 устанавливается в ! единичное состояние триггер 53 обслужи вания ПФУ (ТОПФУ), на фоне которого происходит обмен байтом данных между ПФУ и портом В блока 1 памяти. В ответ ! на установленный триггер 53 ПФУ сбрасыi вает сигнал запроса на входе 20 блока, вы-!

I зывая в свою очередь сброс триггера 53

: ТОПФУ.

Для подсчета и хранения количества : байтов данных содержащихся в блоке 1 па-! мяти при обмене данными между ПФУ и ОП

; используются арифметико-логическое уст| ройство 57 и регистр 59 счетчика байтов.

При обмене данными между ПФУ и пор-! том В БП1 содержимое регистра 59 модифи1 цируется на константу равную единице, ; поступающую на вход 21 блока, а при об, мене данными между ОП и портом А содер1

1жимое регистра 59 модифицируется на величину константы передачи, поступаю-! ,.щую на вход 18 блока. Обе константы посту. пают на вход арифметико-логического ! устройства 57 через мультиплексор 52, вы|бором направления которого управляет триггер 53 ТОПФУ. При установленном в единичное состояние триггере 53 выбира,:ется первое направление мультиплексора

55 и на вход АЛУ 57 подается единичная константа.

При сброшенном триггере 53 выбирается нулевое направление мультиплексора и на вход АЛУ 57 подается константа передачи, Режим работы АЛУ57 определяет схема

54 сложения по,модулю два в зависимости от состояния триггера 53 и кода выполняемой операции, который определяется сигналом на входе 17 задания направления обмена.

Нулевой уровень сигнала на выходе схемы 54 сложения по модулю два задает режим сложения, а единичный — режим вычитания.

При обмене байтом данных с ПФУ при выполнении операции ввода (единичный сигнал на входе 17 блока) на выходе схемы

54 сложения по модулю два нулевой уровень, задающий режим сложения для АЛУ

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

Результат модификации на +1 с выхода

АЛУ 57 заносится по синхросигналу 65 с выхода первой 55 схемы И.

При обмене данными с ОП модификация регистра 59 происходит при сброшенном триггере 53 ТОПФУ. При выполнении операций ввода на выходе схемы 54 сложения по модулю два единичный уровень задающий режим вычитания, и при выводе— нулевой, задающий режим сложения для

АЛУ 57.

Результат модификации на+константу передачи заносится в регистр 59 с выхода второго 56 элемента И по синхросигналу 65 при сброшенном триггере 53 и при наличии единичного сигнала конца обмена устройства с ОП на входе 15 блока, Сигнал с выхода второго 56 элемента И поступает также на выход 30 блока для сброса сигнала конца обмена устройства с

ОП.

При выполнении операций ввода содержимое регистра 59 сравнивается первой 60 схемой сравнения с величиной константы передачи и если оно больше или равно константы передачи, то на выходе третьего 62 элемента И вы рабатывается сигнал 66 запроса на выдачу данных в ОП, поступающий на выход 16 блока и говорящий о том, что в блоке 1 памяти накопилось достаточное количество байтов для передачи в ОП, При выполнении операций вывода пятая 61 схема И выдает единичный сигнал по состоянию регистра 59 счетчика байтов, которое показывает, что незаполненный объем БП1 больше максимально допустимого

5

25 блока обмена с ОП. По этому сигналу на выходе четвертой 63 схемы И вырабатывается сигнал 67 запроса на прием данных из

ОП, поступающий на выход 16 блока и говорящий о том, что в блоке 1 памяти есть достаточно места на прием блока данных иэ

ОП.

Второй блок 5 адресации (фиг,7) работает следующим образом:

Для адресации номера байта, начиная с которого будет вестись обмен с ОП по порту

А блока 1 памяти используется регистр 68 номера байта порта А.

Количество разрядов регистра определяется по формуле:

Z = !оцуп(пхт) =!о92п + logjam = Х+ У, где Х вЂ” количество младших разрядов, адресующих и байтов в строке;

Y — количество старших разрядов, адресующих m строк.

При обмене данными, расположенными по границе обменного слова, т.е. адрес данных ОП кратен пбайтам,,каждая строка БП1 является обменным словом для ОП, т,е. адрес для каждого из и байтов (узлов 43 блока

1 памяти) определяется "Y" старшими разрядами регистра 68 и равен номеру текущей строки.

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

Номер следующей строки определяет счетчик 71 номера строки.

Таким образом, адрес строки для каждого из и байтов (узлов 43 блока 1 памяти) может быть равным номеру строки и определяется "Y" старшими разрядами регистра

68, либо равным номеру следующей строки и определяться содержимым счетчика 71.

Какие байты адресовать текущей строки, а какие следующей определяет номер байта в строке — это Х младших разрядов регистра 68, которые поступают на вход дешифратора 70, а выходы дешифратора управляют через элементы 73 ИЛИ. переключением адресов двухвходовых мультиплексоров 74.

На первые входы всех мультиплексоров 74 подаются "Y" старших разрядов регистра 68, а на вторые входы содержимое счетчика 71.

Те байты, для которых не вырабатываются сигналы переключения адреса, проад30

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

Принцип адресации байтов текущей и следующей строки в зависимости от номера байта в строке для и = 8, Х = logz8 = 3 приведен в табл.3.

Для первого байта сигналы переключения адреса будут вырабатываться для всех состояний дешифратора 70, кроме нулевого. Это состояние равенства нулю Х младших разрядов регистра 68 не используется для переключения адреса и все байты в этом случае адресуются текущей строкой.

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

Последний и байт всегда адресуется текущей строкой.

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

Результат модификации с выхода АЛУ

72 заносится в регистр 68, а разряды с (X+1) до Z(это "Y" старших разрядов, определяющих номер строки) заносятся в счетчик 71 номера строки по синхросигналу 65 входа 14 синхронизации с выхода элемента

69 И, Затем по синхросигналу 75 входа 14 содержимое счетчика 71 увеличивается на единицу. На выход 32 блока выдаются адреса для байтов следующего обменного слова, Второй блок управления памятью (фиг.7) работает следующим образом:

Когда оперативная память готова к обмену данными, на вход 12 блока поступает сигнал разрешения обмена устройства с

ОП. B ответ на этот сигнал устанавливается в единичное состояние триггер 76 с ОП (ТСОП) по синхросигналу 64 входа 14.

На фоне этого триггера в зависимости от кода выполняемой операции вырабатываются при вводе стробы чтения порта А на выходе четвертого 81 элемента И по синхросигналу 45 входа 14 и сигнал разрешения выходов порта А на выходе первого

78 элемента И. При выводе вырабатываются страбы записи порта А на выходе третьего

80 элемента И по синхросигналу 45, а на гг

21

1837305

ыходе второго 79 элемента И сигнал разреения сдвига. Стробы чтения при вводе и тробы записи при выводе будут вырабатыаться по каждому синхросигналу 45 до тех ор, пока не установится в единичное состо- 5 ние триггер 77 равенства нулю константы ередачи (ТКПДНО). по которому сбрасывается триггер 76 ТСОП по синхросигналу 64, вапрещая работу всех элементов И.

Триггер ТКПДНО устанавливается в 10 ! единичное состояние по синхросигналу 75 при наличии сигнала равенства нулю контанты передачи на входе 39 блока, Выход этого триггера является сигналом конца об-! мена устройства с ОП, который выдается на 15 выход 15 блока, а также блокирует повторную ! становку триггера ТСОП до тех пор, пока не смодифицируется регистр счетчика байтов на величину константы передачи, .е, до прихода на вход 30 блока сигнала 20 сброса.

Блок 7 формирования циклов (фиг.8) работает следующим образом.

На вход 18 блока поступает константа передачи (КП), указывающая количество 25 байтов, которым необходимо обменяться с

ОП за один цикл связи, В общем случае значение константы передачи определяется по формуле: КП = Kxn байтов, где К вЂ” количество строк, К < m. 30

B дальнейшем для простоты описания примем К = m, т.е, максимальное значение константы передачи будет определяться емкостью блока 1 памяти: КП = nxm.

Величина КП определяется Х младшими 35 разрядами адреса данных ОП и общим количеством байтов, которыми должны обменяться ОП и ПФУ, т,е. счетчиком байтов

CCW..

При Х = 0 КП = 1 — (и — 1) байтов. 40 ! Величина КП для n = 8, Х = logz 8 = 3 в зависимости от счетчика байтов (СЧБ) CCW и редставлена в табл.4.

При Х = 0 величина КП зависит от счетчика байтов CCW следующим образом: 45 а) СЧБ < n, КП = СЧБ — будет передано одно обменное слово, количество байтов в котором определяется счетчиком байтов; б) m n» СЧБ > n — в этом случае будет ! два цикла связи с ОП, которым соответству- 50, ют две константы КП1 и КП2.

Величины КП1 и КП2 определяются по формуле:

СЧБ:n = а+ Ь, где а = целая часть частного, а < m; 55

Ь вЂ” остаток делимого, Ь < n.

Эти величины определяют соответственно количество строк и количество байтов в строке для КП1 и КП2, т.е. КП1 = à и байтов,,КП2 = Ь байтов, при Ь = 0 КП2 = 0;

Ь) СЧБ > гп и — для передачи такого количества байтов потребуется три вида констант;

КП = m n, КП н- = а и, КП н-2 = b

Величины I, а, Ь определяются из формул:

СЧБ:гп и = !+ и

h:n = А + Ь, где I, а — целые части частного, Ь вЂ” остатки делимого.

При h < n КП!+1 = О, при b = 0 КПн2- 0

Для хранения константы передачи используется регистр 86 константы передачи.

Количество разрядов регистра 86 определяется по формуле;

С = logz(n К)+ 1 = Iogzn+ logzK+ 1 = Х+

+Ь+ 1, где С вЂ” количество разрядов регистра 86.

Константа пеоедачи перед началом обмена с ОП поступает по линии 89 входа 18 блока и с нулевого направления мультиплексора 82 заносится в регистр 86 по сигналу 90 входа 18 блока.

В цикле связи с ОП, т,е. при установленном триггера ТСОП, выход которого поступает на вход 33 блока, содержимое регистра

87 модифицируется арифметика-логическим устройством 87 в сторону уменьшения на величину константы модификации (KM), Результат модификации заносится в регистр 86 с первого направления мультиплексора 82 по синхросигналу 65 входа 14.

Выбором направления мультиплексора

82 и режимом работы АЛУ 87 управляет триггер ТСОП с входа 33 блока, Строб занесения результата модификации будет вырабатываться на выходе первого 84 элемента И до тех пор, пока содержимое регистра 86 не обнулится. В этом случае на выходе второго 88 элемента

И вырабатывается сигнал равенства нулю константы передачи, который поступает на выход 39 блока, вызывая сброс триггера

ТСОП на входе ЗЗ блока, Константа модификации указывает количество байтов каждого обменного слова передаваемого или принимаемого в/из ОП.

Константа модификации вырабатывается на выходе постоянного запоминающего устройства (ПЗУ) 83 в зависимости от значения Х младших разрядов адреса данных ОП, поступающих на вход 11 блока и от Х младших разрядов регистра 86.

Величина KM может быть равной от 1 до и байтов. Если в цикле связи с ОП обмен ведется одним обменным словом, то величина КМ равна величине КП, т,е, КМ = КП =

=1 — (n — 1) байтов.

При обмене блоками данных KM = n байтам.

1837305

БП

Пример формирования КМ для n = 8, Х-3 приведен в табл.5, Блок 9 формирования маски (фиг.9) работает следующим образом:

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

Разрядность регистра 93 равна количеству байтов и в обменном слове.

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

91, С выхода ПЗУ 91 при выполнении операций ввода маска заносится в регистр 93 в циклах связи с ОП по синхросигналу 64 входа 14 с выхода элемента 92 И.

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

Цикл связи с ОП определяет триггер

ТСОП на входе 33 блока, Пример формирования маски записи

ОП для и = 8, X = 3 представлен в табл.6, Блок 10 определения сдвига (фиг.10 работает следующим образом):

Величина сдвига для операций ввода и вывода определяется вычитанием Х младших разрядов регистра номера байта порта

А, иэ X младших разрядов адреса данных

ОП, поступающих соответственно с входов

31 и 11 блока на входы АЛУ 94.

Величина сдвига с выхода АЛУ 94 заносится в регистр 96 сдвига в циклах связи с

ОП по синхросигналу 64 входа 14 с выхода элемента 95 И.

Цикл связи с ОП и код операции для АЛУ

94 задает триггер ТСОП с входа 33 блока.

Разрядность Х регистра 96 сдвига определяется по формуле:

X =!оцуп.

Величина сдвига определяется по формуле;

СДВ - АОП вЂ” НБ, где СД — величина сдвига.

АОП вЂ” Х младших разрядов адреса данных ОП.

НБ — Х младших разрядов регистра номера байта порта А.

Сдвигатели 8 (фиг.11, 12) работают следующим образом:

Для сдвига и байтового слова в каждом сдвигателе используются n/2 узлов 97. Каждый узел содержит микросхему К1800ВР8, представляющую собой комбинационный

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

Из видов сдвига в первом сдвигателе (фиг.11) используется циклический сдвиг вправо, во втором сдвигателе (фиг.12) циклический сдвиг влево и в обоих сдвигателях используется код блокировки выходов, При выполнении операций ввода на информационные входы первого сдвигателя (фиг,11) поступают данные по буферной магистрали 24, В цикле связи с ОП на первые входы узлов 97 подается величина сдвига с входа

41 блока, а на вторые входы узлов 97 подается сигнал с входа 35 задающий код циклического сдвига вправо. Результат сдвига выдается с выходов узлов 97 на шины 22 системной магистрали до тех пор пока присутствует единичный сигнал на входе 35. По сбросу этого сигнала запрещается выходы узлов 97.

При выполнении операций вывода информация с системной шины 22 поступает на входы второго сдвигателя 8 (фиг.12). Величина сдвига также задается с входа 41 блока, а код циклического сдвига влево поступает с входа 34 блока, Результат сдвига с выходов узлов 97 выдается в буферную магистраль 24 до тех пор пока не сбросится сигнал, задающий код циклического сдвига влево на выходе 34 блока.

По сбросу этого сигнала выходы узлов

97 отключены от буферной магистрали 24.

Ниже приводятся примеры определения величины сдвига и расположения байтов данных на выходах сдвигателей в ОП, в блоке 1 памяти для операций ввода и вывода для и = 8, Х = 3.

Пример сдвига и расположения байтов данных для операции ввода при n = 8, Х = 3.

Расположение байтов данных

25

1831305

ОП д ного 10 о 20

t ОП БП ва

АОП = 101

НБ = 000

НБдоп.код = 000

СДВ = 101 + 000 = 101

Выходы сдвигателя СДВ1

Пример сдвига и расположения баит ных для операции вывода для n = 8, Х=

СДВ = АОП вЂ” Н Б = АОП + Н Бдоп.код

1. Прием из ОП первого обменного слова, АОП 101

5 НБ =000

Н Бдоп.код - 000

СДВ -- 101+ 100-101

Выходы сдвигателя СДВ2

2. Прием из ОП второго обменного слова.

АОП = 000

15 НБ = 011

НБдоп,код = 101

СДВ = 000+ 101-101

Выходы сдвигателя СДВ2

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

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

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

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

55 входов-выходов блока памяти, вторая группа информационных входов-выходов которого соединена с второй шиной данных устройства для соединения с периферийными устройствами, группа выходов второго блока управления памятью соединена с

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

2. Устройство по п.1, о т л и ч а ю щ ее с я тем, что первый блок адресации порта

В содержит элемент И и счетчик номера байта порта В, вход которого соединен с выходом элемента И, первый и второй входы которого соединены соответственно с входом разрешения и синхровходом блока, второй и первый выходы блока соединены

10

20 ментов И, а первый управляющий вход бло25

45 соответственно с выходами "Х" младших разрядов счетчика и с выходами оставшихся

"Y" разрядов счетчика.

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

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

1837305

30 модул перв вход упра тий соот с вто

45 с я мят ной кон рой, ды сое дов пы вхо пер сое бло эле вым

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

ым входом мультиплексора,, Устройство по п.1, о т r и ч а ю щ е еем, что второй блок адресации содерегистр номера байта порта А, элемент шифратор, счетчик номера строки, метико-логическое устройство, и — 2 нтов ИЛИ и и-1 мультиплексоров, выкоторых соединены с первым выходом, синхровход которого соединен с перходом счетчика и вторым входом элеа И, выход которого соединен с им входом счетчика и вторым входом тра, выход которого соединен с первторым выходами блока, с первыми ми (и — 1) мультиплексоров, с первым м арифметико-логического блока .и с м дешифратора, выход которого соес третьим входом (и — 1)-ro мультиора и с входами и — 2 элементов ИЛИ, ы которых соединены соответственно тьими входами n — 2 мультиплексоров, е входы которых соединены с выхочетчика, второй вход которого соедивторым входом регистра и с выходом метико-логического устройства, втоход которого соединен с входом коны модификации блока, а управляющий блока соединен с третьим входом метико-логического устройства и с первходом элемента И. . Устройство по п.1, отл и ч а ю щ е етем, что второй блок управления паю содержит триггер связи с оперативпамятью, триггер равенства нулю танты передачи данных, первый, втотретий и четвертый элементы И, выхоретьего и четвертого элементов И инены соответственно с группой выхолока, выход разрешения выдачи групыходов которого соединен с первым ом четвертого элемента И и с выходом ого элемента И, второй вход которого инен с первым управляющим входом а и с вторым инверсным входом второго ента И, выход которого соединен с первходом третьего элемента И и с первым г ся жит

И, д ари элем ходы блок вым мен трет реги в.ым вход вход вход дин плек

BbIX с тр втор дом нен ари рой стан вхо ари вым вых дом блока, второи выход которо о сое дин н с первыми входами первого и второго элементов И и с выходом триггера связи с

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

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

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

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

Таблица 1

Таблица 2

Таблица 3

Таблица 4 первый вход которого соединен с синхровходом блока, а второй вход соединен с третьим входом арифметико-логического блока и управляющим входом блока, адресный вход и вход номера байта которого соТ вЂ” текущая строка, С вЂ” следующая строка. единены соответственно с первым и вторым входами арифметико-логического. блока, выход которого соединен с первым входом регистра, а выход регистра — с выхо5 дом блока.

1837305

7аблица 5

Табд!1ц

Входы

Входы ПЗУ

Адрес дан. 1(П

7 6 5 4 2 1 О

2 2 2 2 2 2 2 2

Х=З

Х=З

000

000 1

I 1 1 1 1 I 1

001

O l!

101

111

О

1

1

О

О

1

I

1

1

1

О

О

О

1

О О

О О

0 О

О О

О 0

О О

1 . О

О

0

О

1

001

001 О 1 О 0 О 0 0 О

010

011

100

101

110

011

1Oi

111

111

001

OIO

0 l 1

101

001

011

i 01

001

011

001

OIO

011

001

001

0 1

О 1

О 1

О 1

О 1

О 1

О 1

О О

О О

О О

О О

О О

О 0

О 0

0 О

О 0

О О

0 0

О О

О О

О О

О О

О О

О 0

О О

О О

О О

О О

I

1

1

I

1

1

О

О

О

О

О

О

О

О

О

О

О

О

О

О

0 О

1 О

1 1

1 1

1 1

1 1

О 0

1 0

1 1

1 1

1 1

1 l

l О

1 ! 1

1 1

1 1

О 1

0 1

О 1

О 1

0 О

0 О

О О

0 О

0 О

0 О

О

О

1

1

О

О

1

О

О

1

О

1

1

1

0 л н

О 0 ,О О

0 О

О 0

1 О

1 1 ! 1

0 О

О 0

О О

О О

О

1 1

О О

0 О

О О

1 0

1 1

О О

О О

1 О

1 1

0 О

1 О

1 1

1

О 1

1837305

1837305

1837305

1837305

1837305

1837305

1837305

1837305

Составитель А. Рымарчук

Техред М.Моргентал Корректор О. Густи

Редактор

Производственно-издательский комбинат "Патент", r, Ужгород, ул.Гагарина, 101

3 каз 2866 Тираж Подписное

ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР

113035, Москва, Ж-35, Раушская наб., 4/5

Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами Устройство для обмена данными между оперативной памятью и периферийными устройствами 

 

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

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

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

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

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

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

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

Изобретение относится к вычислительной технике и может быть использовано для увеличения объема памяти при построении вычислительных систем на базе микроЭВМ

Изобретение относится к вычислительной технике и может быть использовано в персональных ЭВМ с развитыми графическими возможностями

Изобретение относится к вычислительной технике и может быть использовано в микроЭВМ с графическим дисплеем большой разрешающей способности

Изобретение относится к средствам обмена сообщениями электронной почты

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

Изобретение относится к способам и системам для разгрузки обработки I/O из первого компьютера во второй компьютер с помощью обеспечиваемого посредством RDMA сетевого межсоединения

Изобретение относится к способу осуществления доступа к целевому дисковому ЗУ, системе, предназначенной для расширения дисковой емкости и дисковым массивам

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

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

Изобретение относится к системам памяти, более конкретно к сигнализации между контроллером памяти и памятью в системе памяти

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

Изобретение относится к вычислительной технике и может быть использовано в различных микропроцессорных системах, в частности микроЭВМ, персональных ЭВМ, отладочных устройствах, а также в системах передачи данных по одноканальной линии связи
Наверх