Устройство для управления сверхоперативной буферной памятью мультипроцессорной эвм
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Текст
ОП ИСАНИЕ ИЗОБРЕТЕНИЯ Союз СоветскикСоциалистическикРесн 1 тбяик 1 1980097 К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ(23)Приоритет Ьоудврствааай койитет СССР ао делай нзобрвтевай н открьпвй(54) УСТРОЙСТВО ДЛЯ УПРАВЛЕНИЯ СВЕРХОПЕРАТИВНОЙ БУФЕРНОЙ ПАИЯТЫО МУЛЬТИПРОЦЕССОРНОЙ ЭВИ 1. Изобретение относится к вычислительной технике и может быть использовано для управления сверхоперативной буферной памятью (СБП) высокопроизводительных ЭВИ.5Известно устройство, которое содержит буферную память, регистр адреса процессора, блок сравнения адресов, коммутатор адреса ряда, регистр записываемой информации, регистр считанной информации, коммутатор адреса .колонки, матрицу адресов, блок приоритетов 1 1. Данное устройство имеет недостаточно высокое быстродействие из-за.примененного алгоритма обслуживания запросов в память процессоров и каналов ввода-вывода (при каждой записи требуется обращение к основной опев ративной памяти); кроме того, не обеспечена совмещенная работа блока трансляции адреса и матрицы адресов со сверхоперативной буферной памя 2тью, что увеличивает .время обращенияк СБП. Реализованный алгоритм замещения блоков информации не позволяет увеличить производительность ЭВйпутем применения СБП большей емко-сти.Наиболее близким к предлагаемомуявляется устройство, содержащее блокбуферной памяти, матрицу адресов,блок приоритетов, регистры считаннойи записываемой информации, регистркодов защиты памяти21,Укаэанное устройство имеет несколь" . ко большее быстродействие, так как обслуживание запросов каналов ввода- вывода.не влияет на время обслуживания запросов процессоров, но сохраняет недостатки вышеописанного устройства.Целью изобретения является повышение быстродействия,Поставленная цель достигается тем, что в устройство для управле50 Формула изобретения 19 9800адресов через мультиплексор 21 адресов - адрес этого блока в ОП. Черезчетыре такта, когда считаны четыредвойных слова блока данных нулевойстроки колонки, в счетчик 16 длинных операций в разряды номера .строкиприбавляется "1" для считывания блока первой строки нулевой колонкии т,д. После достижения номером стро-,ки максимального значения прибав- Мляется,"1" в разряды номера колонкисчетчика 16,Когда считаны все блоки СБП, значение счетчика 16 длинных операцийдостигают максимальной величины исигнал переполнения сбрасывает триггер 1 длинных операций,Если при обслуживании запроса процессора во время считывания матрицы17 адресов появилась ошибка адреса 20на выходе блока 25 анализа, то сигнала конца операции выработано не будет и запрос попадает в адаптер связи с процессорами, а затем возвращается в устройство с признаком ошиб ки адреса в регистре 7 идентификаторов матрицы адресов, В соответствиис этим признаком инициируется работаблока 23 коррекции, откорректированный адрес с выхода блока 23 коррек- зоции поступает через селектор 3 адресов на регистр 8 адреса матрицы адресов для записи его в ИА, Кроме того по сигналам из блока обслуживания предусмотрена возможность отключения половины емкости блока 21СБП и/или любой строчки блока 21 СБПТаким образом, повышение, быстродействия устройства достигнуто благодаря совмещению во времени ассо"циативного поиска в матрице аДресови считыванию или записи данных в СБПРеализованная в устройстве дисциплина обслуживания запросов процессоров и каналов ввода-вывода к двух 45уровневой оперативной памяти позволяет сократить среднее время обслуживания, т,е, уменьшить эффективныйцикл оперативной памяти,1, Устройство 10 ля управления сверх. оперативной буферной памятью мультипроцессорной ЗВИ, содержащее селектор адресов, селектор маркеров и селектор входной информации, управляющие входы которых обьединены и под 97 20ключены к выходу блока приоритетов, выход которого является приоритетным выходом устройства, первые входы селекторов являются соответственно канальным адресным, канальным маркерным и канальным информационным входами устройства, первый вход блока приоритетов является канальным входом запроса устройства,. выходы селек.торамаркеров и селектора входной информации соединены соответственно с входами регистра маркеров и регистра входной информации, выходы кото . рцх соединены соответственно с выходом маркеров и выходом записываемой информации устройства, а также с вхо" дом маркеров и данных блока сверхоперативной буферной памяти, вход разрешения записи которого соединен с выходом триггера разрешения запи-. си, вход которого соединен с выходом второго элемента ИЛИ, первый вход которого соединен с выходом первого элемента И, первый вход последнего соединен с выходом первого элемента ИЛИ, входы которого соединены с входами шифратора, выход которого соединен с первым входом селектора номера строки, выход последнего соединен с входом регистра номера строки, выход которого соединен с входом номера строки блока сверхоперативной буферной памяти и входом номера строки матрицы адресов, вход нового адреса которой соединен с выходом адреса страницы регистра адреса матрицы адресов, который является выходом адреса страницывустройства, а вход регистра адреса матрицы адресов соединен с выходом селектора адресов, вход адреса копирования которого соединен с выходом счетчика копирования, селектор счи" таиной информации, выход которого соединен с входом регистра считанной информации, а выход последнего является выходом считанной информации устройства, и регистр кодов защиты памяти, . о т л и ч а ю щ е е с я тем, что, с целью повышения быстродействия устройства, в него введены селектор идентификаторов, селектор кодов защиты памяти, регистр идентификаторов матрицы адресов, два дешифратора, триггер длинных операций, счетчик длинных операций, матрица кодов защиты памяти, счетчик слов, блок замещения, регистр адреса колонки, регистр идентификаторов бу97 22торого соединен с входами разрешения записи блока коррекции, матрицы кодов защиты, матрицы адресов, вы" ход которой соединен с входом считанных адресов блока анализа, вхо" дом хранимых данных блока коррекции, входом данных мультиплексора адресов, выход которого является выходом адреса страницы замещаемых данных устройства и соединен с входом замещаемых данных блока коррекции, вход ошибки которого соединен с выходом ошибки адреса регистра идентификаторов матрицы адресов, а выходс входом откорректированного адреса селектора адресов, вторые входы селекторов адреса, маркеров и входной информации являются соответственно адресным входом, входом маркеров и информационным входом связи с процессорами устройства, группа входов селектора адресов, селектора маркеров и селектора входной информации является соответственно группой входов адресов процессоров устройства, группой входов маркеров процессоров устройства и группой вхо.дов информации процессоров устройства, третий вход селектора адресов соединен с первым выходом счетчика длинных операций, вход которого соединен с установочным входом триг" гера длинных операций и с первым выходом первого дешифратора, второй выход, которого соединен с входом счетчика копирования, а вход соединен с выходом кода операции регистра идентификаторов матрицы адресов,выход идентификаторов которого явля" ется соответствующим выходом устройства и соединен с входом регистра идентификаторов буферной памяти, а вход соединен с выходом селектора идентификаторов, группа входов селектора идентификаторов является группой входов идентиФикаторов процессоров устройства, первый вход селек-тора является канальным входом идентификаторов устройства, второй вход селектора является входом связи с процессорами устройства; управляющий вход селектора идентификаторов соединен с выходом блока приоритетов и управляющим входом селектора кодов защиты, группа входов блока приоритетов и его первый, второй и третий входы являются соответственно группой входов запросов процессоров устройства, входом запроса блока обслу 21 9800 ферной памяти, блок коррекции, мульт типлексор адресов, блок анализа, мультиплексор считанной информации, блок управления записью новых данных, матрица битов изменения, муль типлексор битов изменения, второй элемент И, триггер конца операции, третий и четвертый элементы ИЛИ, регистр номера процессора, выход которого является выходом номера про цессора устройства, а вход соединен с первым выходом регистра идентификаторов буферной памяти, второй выход которого соединен с входом второго дешифратора, первый выход по следнего соединен с первым входом четвертого элемента ИЛИ, второй вход которого соединен с выходом триггера разрешения записи, а выход - с входом разрешения записи матрицы битов 20 изменения, адресный вход которой соединен с адресными входами блока коррекции, матрицы кодов защиты; блока замещения, регистра адреса колонки и с выходом адреса колонки регистра 25 адреса матрицы адресов, который является соответствующим выходом устройства, а выход адреса слова регистра адреса матрицы адресов, который является выходом адреса слова уст- ЗО ройства, соединен с входом счетчика . слов, выход которого соединен с управляющим входом регистра адреса колонки, выход последнего соединен с адресным входом блока сверхоперативной буферной памяти, вход номера стро ки которого соединен с входами номера строки матрицы кодов защиты, .матрицы битов изменения, блока заме" щения и с адресными входами мульти плексора адресов, мультиплексора битов изменения, мультиплексора считанной информации, вход данных которого соединен с выходом считанной информации блока сверхоперативной буФер" ной памяти, а выход - с первым входом данных селектора считанной инФормации, управляющий вход которого соединен с входом операции перезаписи блока управления записью новых данных, выход бита изменения активного блока которого соединен с входом данных матрицы битов изменения, выход последней соединен с входом данных мультиплексора битов изме"нения, выход которого соединен с55 входом бита изменения замещаемых данных блока управления записью новых данных, выход записи адреса ко23 9 живания устройства, входом запроса канала и входом запроса связи с процессорами устройства, управляющий вход блока приоритетов соединен с выходом триггера длинных операций и с входом продолжительности длинных операций блока управления за" писью новых данных, вход переполнения которого соединен с выходом переноса счетчика длинных операций и входом сброса триггера длинных операций, вход четвертого такта блока управления записью ооединен с вторым.выходом счетчика длинных операций, вход операции записи - с вторым выходом второго дещифратора. и с вторым вхо-, дом первого элемента И, выход записи новых данных - с вторым входом второго элемента ИЛИ, а выход конца операции - с первым входом ,третьего элемента ИЛИ, второй вход которого соединен с выходом второго элемента И, а выход - с установочным входом триггера конца операции, выход которого является выходом конца операции устройства и соединен с входом разрешения записи блока замещения, выход которого соединен с вто рым входом селектора номера строки, третий вход которого соединен с третьим выходом счетчика длинных операций, а управляющий вход - с третьим выходом второго дешифратора четвер/тый выход которого соединен с входом операции перезаписи блока управления записью, второй вход данных оперативной памяти селектора считанных данных соединен с входом данных блока сверхоперативной буферной памяти.группа входов селектора кодов защиты является группой входов кодов защиты процессоров устройства, вход селектора кодов защиты является канальным входом кодов защиты устройства, выход селектора кодов защиты соединен с входом регистра кодов защи- ты, выход которого соединен с входом кода защиты новых данных матрицы кодов защиты и входом кода защиты запроса блока анализа, вход считанных кодов защиты которого соединен с выходом матрицы кодов защиты, вход адреса запроса - с входами нового адреса матрицы адресов и блока коррекцив, вход операции чтения с третьим выходом первого деаифратора, выход ошибки адреса является выходом устройства, а выходы сравнения соединены с входами первого 80097 2 ч элемента ИЛИвыход которого является выходом наличия информации устройства и соединен с первыми входами первого и второго элементов И, второй вход второго элемента И соединен с третьим выходом регистра идентификаторов буферной памяти.2, Устройство по и. 1, о т л и ч а ю щфе е с я тем, что блок ана 1 о лиза содержит первую группу из щ(в - целое число). элементов И, вторые и первые входы которых соединены соответственно с выходами уи блоков свертки по модулю два кодов 15 защиты и с выхоДами И схем сравнениякодов защиты, первые входы которых объединены и являются входом кода.защиты запроса блока, а вторые входы соединены с входами блоков сверт О ки по модулю два кодов защиты и являются входом считанных кодов защиты блока, вторую группу из в, элементов И, выходы которых являются выходом сравнения блока, первые и вторые входы соединены соответственно с выходами ми блоков свертки по модулю два адресов и с выходами в схем сравнения адресов, первые входы которых соединены с входами блоков свертки по модулю два адресов и являются входом считанных адресов блока, а вторые входы объединены и являются входом адреса запроса блока,ю элементов ИЛИ, выходы 35которых соединены с соответствую.щими третьими входами элементов И второй группы, первые входы соединены с выходами элементов И первой группы, а вторые входы объединены и являются входом операции чтения блока, элемент .И, ю входов которого соединены с соответствующими первыми входами элементов И второй группы, а выход - с входом элемента НЕ, выход которого является выходом ощиб" 45Фки адреса блока,3. Устройство по и. 1, о т л ич а ю щ е е с я тем, что блок управления записью новых данных содержит три элемента НЕ, четыре триггера, два элемента ИЛИ, четыре элемента И, причем вход четвертого такта блока соединен с установочным входом первого триггера и первым входом первого элемента И, второй вход которого соединен. с выходом первого триггера и входом третьего элемента НЕ, информационный вход первого триггера соединен с входом первого эле9800 25мента НЕ и с входом бита изменения замещаемого слова блока, выход первого элемента НЕ соединен с первым входом четвертого элемента И, второй вход которого соединен с вхо дом операции перезаписи блока и с информационным входом второго триггера, установочный вход которого соединен с установочным входом третьего триггера и выходом второго элемента НЕ, вход которого является входом продолжительности длинной операции блока, информационный вход третьего триггера является входом операции записи блока; а выход - выходом бита 15 изменения активного блока, вход переполнения блока соединен с первым входом второго элемента И, второй вход которого соединен с третьим входом первого элемента И и первым входом третьего элемента И и выходом второго триггера, выход третьего элемента НЕ соединен с третьим и вторым входами второго и третьего элементов И соответственно, выход третьего элемента И является выходом записи 97 26блока, выход первого элемента И соединен с первыми входами первого и второго элементов ИЛИ, выход второгоэлемента И соединен с вторым входомпервого элемента ИЛИ, выход которого соединен с входом четвертого триггера, выход последнего является выходом записи адреса блока, выходчетвертого элемента И соединен свторым входом второго элемента ИЛИ,выход которого является выходом конца операции блока,Источники информации,принятые во внимание при экспертизе1. Патент Великобритании Иф 1370219,кл. 6 4 А, опублик. 1974,2. Авторское свидетельство СССРУ 689439) кл. С 06 Г 13/06, 1979(прототип).3. Авторское свидетельство СССРй 784561, кл. С 06 Г 13/06, 1979.4, Авторское свидетельство СССРпо заявке 8 2912343/18-24,кл. С 06 Г 11/22, 1980.щения, регистр адреса колонки, регистр идентификаторов буферной памяти, блок коррекции, мультиплексор, адресов, блок анализа, мультиплексор адресов, блок анализа, мультиплексор считанной информации, блокуправления записью новых данных, матрица битов изменения, мультиплексор битов изменения, второй элемент И, триггер конца операции, третий и четвертый элементы ИЛИ, регистр номера процессора, выход которого является выходом номера процессора устройства, а вход соединен с первым выходом регистра идентификаторов буферной памяти, второй выход которого соединен с входом второго дешифратора, первый выход которого соединен с первым входом четвертого элемента ИЛИ, второй вход которого соединен с выходом триггера разрешения записи, а выход - с входом разрешения записи матрицы битов изменения, адресный вход которой соединен с адресными входами блока коррекции, матрицы кодов защиты, блока замещения, регистра адреса колонки и с выходом адреса колонки регистра адреса матрицы адресов, который является соответствующим выходом устройства, а выход адреса слова регистра адреса матрицы адресов, который является выходом адреса слова устройства, соединен с входом счетчика слов, выход которого соединен с управляющим входом регистра адреса колонки, выход последнего соединен с адресным входом блока сверхоперативной буферно 9 памятивход номера строки которого соединен с входами номера строки матрицы кодов защиты, матрицы битов изменения, блока замещения и с адресными входами мультиплексора адресов, мультиплексора битов, изменения, мультиплексора считанной информации, вход данных которого соединен с выходом считанной информации, блока сверхоперативной буферной памяти, а вы-.- ход - с первым входом данных селектора считанной информации, управляющий вход которого соединен с входом операции перезаписи блока управления записью новых данных, выход бита изменения активного блока которого соединен с входом данных матрицы битов изменения, выход. которой соединен с входом данных мультиплексора битов изменения выход которого соединен с входом бита изменения заме 3 98009 ния сверхоперативной буферной памятью мультипроцессорной ЭВМ содержащее селектор адресов, селектор маркеров и селектор входной информации, управляющие входы которых объединены и подключены к выходу блока приоритетов, выход которого является приоритетным выходом устройства, первые входы селекторов являются канальным адресным, канальным маркерным и ка нальным информационным входами устройства, соответственно, первый вход блока приоритетов является канальным входом запроса устройства, выходы селектора маркеров и селектора вход ной информации соединены соответственно с входами регистра маркеров и регистра входной информации, выходы которых соединены с выходом маркеров и выходом записываемой информации уст-щ ройства соответственно, а также с входом маркеров и данных блока сверхоперативной буферной памяти, вход разрешения записи которого соединен с выходом триггера разрешения записи, вход которого соединен с выходом второго элемента ИЛИ первый вход которого соединен с выходом пер. вого элемента И, первый вход последнего соединен с выходом первого эле 30 мента ИЛИ, входы которого соединены с входами шифратора, выход которого соединен с первым входом селектора номера строки, выход которого соединен с входом регистра номера строки, выход которого соединен с входом но 55 мера строки блока сверхоперативной буферной памяти и входом номера стро ки матрицы адресов, вход нового адреса которой соединен с выходом ад 40 реса страницы регистра адреса матрицы адресов, который является выходом адреса страницы устройства, а вход регистра адреса матрицы адресов соединен с выходом селектора адресов,45 вход адреса копирования которого соединен с выходом счетчика копирования селектор считанной информации, выход которого соединен с входом регистра считанной информации, а выход последнего является выходом считанной информации устройства, и регистр кодов защиты памяти введены селектор идентификаторов, селектор кодов защиты памяти, регистр идентификаторов матрицы адресов, два. дешифратора, триггер длинных операций, счетчик длинных операций, матрица кодов защиты памяти, счетчик слов, блок заме".являются соответственно группой вхо.дов запросов процессоров устройства,входом запроса блока обслуживанияустройства, входом запроса каналаи входом запроса связи с процессора-.ми устройства, управляющий вход бло"ка приоритетов соединен с выходомтриггера длинных операций и с входом продолжительности длинных операций блока управления записью новых данных вход переполнения которого соединен с выходом переносасчетчика длинных операций и входомсброса триггера длинных операций,вход четвертого такта блока управления записью соединен с вторым выходом счетчика длинных операций, вход операции записи - с вторым выходом второго дешифратора и с вторым входом первого элемента И, выход записи новых данных - с вторым входом второго элемента ИЛИ, а выход конца операции - с первым входом третьего элемента ИЛИ второй вход которого соединен с выходом второго элементаИ, а выход - с установочным входом триггера конца операции, выход которого является выходом конца операции устройства и соединен с входом разрешения записи блока замещения, выход которого соединен с вторым входом селектора номера строки, третий вход которого соединен с третьим выходом счетчика длинных операций, ауправляющий вход - с третьим выходом второго дешифратора, четвертый выход которого соединен с входом операции перезаписи блока управления записью второй вход данных оперативной памяти селектора считанных данныхсоединен с входом блока сверхопе ративной буферной памяти, группа входов селектора кодов защиты является группой входов кодов защиты процессоров устройства, вход селектора кодов защиты является канальным входом кодов защиты устройства, выход. селектора кодов защиты соединен с входом регистра кодов защиты, выход которого соединен с входом кода защиты новых данных матрицы кодов защиты и входом кода защиты запроса блока анализа, вход считанных кодов защиты которого соединен с выходом матрицы кодов защиты, вход адреса запроса - с входами нового адреса матрицы адресов и блока коррекции, вход операции чте,ния - с третьим выходом первого дешифратора, выход ошибки адреса явля 98009 щаемых данных блока управления записью новых данных, выход записи адреса которого соединен с входами разрешения записи блока коррекции, матрицы кодов защиты, матрицы адресов, 5выход которой соединен с входом считанных адресов блока анализа, входом хранимых данных блока коррекции, входом данных мультиплексораадресов, выход которого являетсявыходом адреса страницы замещаемыхданных устройства и соединен с входом замещаемых данных блока коррекции, вход ошибки которого соединенс выходом ошибки адреса регистраидентификаторов матрицы адресов, а выход - с входом откорректированного адреса селектора адресов, вторые входы селекторов адреса маркеров и входной информации являются 20соответственно адресным входом, входом маркеров и информационным входом связи с процессорами устройства, группа входов селектора адресов, селектора маркеров и селекторавходной информации является соответ ственно группой входов адресов процессоров устройства, группой входов маркеров процессоров устройства и группой входов информации процессо ров устройства, третий вход селектора адресов соединен с первым выходом счетчика длинных операций,вход которого. соединен с установочным входом триггера длинных опера- З 5ций и с первым выходом первого дешифратора, второй выход которого соединен с входом счетчика копирования, а вход соединен с выходом кода операции регистра индентификаторов матрицы адресов, выход идентифи. каторов которого является соответствующим выходом устройства и соединен с входом регистра идентификаторов буферной памяти, а вход соединен с выходом селектора идентиФикаторов, группа входов селектора идентификаторов является группой входов идентификаторов процессоров устройства, первый вход селектора является канальным входом идентификаторов устройства, второй вход селектора является входом связи с процессорами устройства, управляющий вход селектора идентификаторов соединен с выходом блока приоритетов и управляю55 щим входом селектора кодов защиты, группа входов блока приоритетов и его первый, второй и третий входы,7 . 98 ется выходом устройства, а выходы сравнения соединены с входами перво. го элемента ИЛИ, выход которого является выходом наличия инФормации устройства и соединен с первыми входами первого и второго элементов И, второй вход второго элемента И соединен с третьим выходом регистра идентификаторов буферной памяти,Блок анализа, содержит первую груп пу из а (щ - целое число) элементов И, вторые и первые входы которых соединены соответственно с выходами в блоков свертки по модулю два кодов защиты и с выходами в схем сравнения кодов защиты, первые входы которых . объединены и являются входом кода защиты запроса блока, а,вторые входы соединены с входами. блоков свертки по модулю два кодов защиты и являются входом считанных кодов защиты блока, вторую группу из в элементов И, выходы которых являются выходом сравнения блока, первые и вторые входы соединены соответственно с выходами а блоков свертки помодулю два адресов и с выходами в схем сравнения адресов, первые входы которых соединены с входами блоков свертки по мо дулю два адресов и являются входом считанных адресов блока, а вторые входы объединены и являются входом адреса запроса блока, в элементов ИЛИ, выходы которых соединены с соответствующими третьими входами элементов И второй группы, первые входы соединены с выходами элементов И первой группы, а вторые входы объединены и являются входом операции чтения блока, элемент И, в входов которого соединены с соответствующими первыми входами элементов И второй группы, а выход - Ч входом эле мента НЕ, выход которого является выходом ошибки адреса блока.Кроме того, блок управления за-писью новых данных содержит три элемента НЕ, четыре триггера, два элемента ИЛИ, четыре элемента И, причем вход четвертого такта блока соединен с установочным входом первого триггера и первым входом первого эле. мента И, второй вход которого соединен с выходом первого триггера и вхо дом третьего элемента НЕ, информационный вход первого триггера соединен с входом первого элемента НЕ и с входом бита изменения замещаемого слова 0097 . 8 блока, выход первого элемента НЕсоединен с первым входом четвертого элемента И, второй вход которогосоединен с входом операции перезаписи блока и с информационным входом второго триггера, установочныйвход которого соединен с установоч -ным входом третьего триггера и выходом второго элемента НЕ, вход которо. го является входом продолжительности длинной операции блока, информационный вход третьего триггера является входам операции записи блока, а выход - выходом бита изменения активного блока, вход переполнения блокасоединен с первым входом второгоэлемента И, второй вход которогосоединен с третьим входом первогоэлемента И и первым входом третьегоэлемента И и выходом второго триггера, выход третьего элемента НЕ соединен с третьим и вторым входами второго и третьего элементов И соответственно, выход третьего элементаИ является выходом записи блока, выход первого элемента И соединен спервыми входами первого и второгоэлементов ИЛИ, выход второго элемента И соединен с вторым входом первого элемента ИЛИ, выход которого соединен с входом четвертого триггера, выход которого является выходом записи адреса блока, выход четвертого элемента. И соединен с вторымвходом второго элемента ИЛИ, выходкоторого является выходом конца операции блока,Одним из факторов, определяющихбыстродействие ЭВИ, является алгоритм обслуживания запросов процессоров и каналов ввода-вывода к двухуровневой оперативной памяти, В изобретении использован алгоритм "Полностью асинхронный условный обмен",45При этом операция "Запись" при на -;личии данных в СБП выполняется только в СБП, а при отсутствии данныхтребуется один цикл ОП. В итоге значительно сокращается среднее время выполнения операции "Запись",Структурная организация СБП и ееуправление, кроме того, позволяютсовместить цикл чтения собственноСБП с ассоциативным поиском в матрице адресов. Это уменьшает время обслуживания запросов в СБП,В предлагаемом устройстве использовано техническое решение3 вкачестве блока замещения. В целяхобеспечения высокой надежности в состав устройства включен блок коррекции ошибок 1 4 1 в матрице адресов.Структурные решения предлагаемого устройства позволяют использовать его для обслуживания запросов к двухуровневой оперативной па" мяти процессоров и каналов ввода- вывода, включенных в состав мультипроцессорной системы с минимальными 10 задержками из-за конфликтов.Устройство может быть использовано для управления сверхоператив ной буферной памятью, памятью в муль типроцессорной системе с общими ре сурсами (СБП обслуживает запросы всех процессоров) и в системе, где СБП интегрированы со своими процессорами.Устройство может обслуживать за в просы процессоров к памяти на чтение или запись информации с темпом: каждый такт, в од запрос при наличии информации в СБП, а при отсутствии информации в СБП необходима 25 перезапись блока информации иэ ОП в СБП с тем чтобы последующие обращения процессора к этому блоку информации обслуживались на уровне СБП,Один запрос на чтение или запись зв информации в СБП обслуживается за два такта: такт матрицы адресов (МА) и такт сверхоперативной буферной памяти (в матрице адресов хранятся адреса тех блоков инФормации из ОП, 35 которые имеются в СБП), при этом ор. ганиэован совмещенный режим работы ИА и СБП по двум последовательным запросам, т,е. при обслуживании одного запроса в такте СБП для следующего запроса выполняется такт МА-,На фиг, 1 представлена структурная схема устройства для управлениясверхоперативной буферной памятью45ЭВМ; на фиг, 2 - структурная схемаблока сверхоперативной буферной па-мяти; на Фиг, 3 - структурная схемаблока анализа; на Фиг, 4 -. структур.ная схема. блока замещения, на фиг.559структурная схема блока коррекции,на фиг, 6 - структурная схема блокауправления записью новых данных,на фиг, 7 - блок-схема алгоритма"Полностью асинхронный условныйобъем",55 Устройство для управления сверхоперативной буферной памятью мульти 980097 10процессорной ЭВМ содержит блок 1 приоритетов, селектор 2:;идентификаторов, селектор 3 адресов, селектор 4.кодов защиты памяти, селектор 5 мар"керов, селектор 6 входной информации,регистр 7 идентификаторов матрицыадресов, регистр 8 адреса матрицыадресов, регистр 9 защиты памяти, регистр 10 маркеров, регистр 11 входной информации, первый дешифратор 12,счетчик 13 копирования, счетчик 14слов, триггер 15 длинных операций,счетчик 16 длинных операций, матрицу17 адресов, матрицу 18 кодов защитыпамяти, блок 19 замещения, регистр20 адреса колонки, блок 21 СБПре. гистр 22 идентификаторов буферной памяти, блок 23 коррекции, мультиплексор 24 адресовв, блок 25 анализа,мультиплексор 26 считанной информации,второй дешифратор 27, блок 28 управления,записью новых данных, первыйэлемент ИЛИ 29, шифратор 30, селектор 31 считанной информации матрицу32 битов изменения, мультиплексор33 битов изменения, регистр 34 считанной информации, второй элементИ 351 первый элемент И 36, селектор37 номера строки, третий элементИЛИ 38, четвертый элемент ИЛИ 39,второй элемент ИЛИ 40, регистр 41номера строки, регистр 42 номера процессора, триггер 43 конца операции;триггер 44 разрешения записи, входы45-48 канальных запросов процессоровустройства, вход связи с процессорами и вход блока обслуживания устройства, входы 49-51 идентификаторовпроцессоров устройства каналов ивход связи с процессорами, входы52-54 адресов процессоров устройства, каналов и вход связи с процессорами, входы 55 и 56 кодов защитыпамяти процессоров устройства и входы 57-59 маркеров процессоров устройства, канала и вход связи с процессорами, входы 60-62 информациипроцессоров устройства,. канала ивход связи с процессорами, выход 63приоритетов, выход 64 идентификаторов, выход 65 адреса слова, выход66 записываемой информации, выход67 адреса колонки, выход 68 адреса страницы, выход Ь 9 маркеров, выход70 номера процессора, выход 71 конца операции, выход 72 наличия инФормации, выход 73 ошибки адреса,выход 74 адреса страницы замещаемого блока, выход 75 считанной инфор11 980 мации, выходы 76 маркеров, входы 77 данных, адресный вход 78, вход 79 номера строки, вход 80 разрешения записи, выходы 8 щ строк, входы 82 считанных адресов, вход 83 адреса запроса, вход 84 кода защиты запроса входы 85 считанных кодов защиты, вход 86 операции чтения, выходы 87 сравнения, адресный вход 88, вход 89 номера строки, вход 90 разрешения записи, выход 91 номера замещаемой строки, входы 92 хранимых дан- ных, вход 93 нового адреса, вход 94 ошибки адреса, адресный вход 95, вход 96 разрешения записи, выход 97 откорректированного адреса, вход 98 замещаемых данных, вход 99 четвертого такта, вход 100 продолжительности длинной операцию вход 101 операции перезаписи, вход 102 операции записи, выход 103 конца операции, выход 104 записи блока, вход 105 бита изменения замещаемого блока, выход 106 бита изменения активного блока, выход 107 записи адреса, вход 108 переполнения, субблоки 109 памяти, дешифратор 110, в блоков 111 свертки по модулю два адресов, в схем 112 сравнения адресов, в схем 113 сравнения кодов защи ты, щ блоков 114 свертки по модулю два кодов защиты, первую группу из в элементов И 115, а элементов ИЛИ 116, вторую группу из а элементов И 117 щ-входовой элемент И 118, элемент НЕ 119, селектор 120 замещения, регистр 121 адреса замещения, шифратор 122, регистр 123 записи хронологии, блок 124 памяти хронологии, селектор 25 хронологии, 4 в регистр 126 чтения хронологии, дешифратор 127, регистр 128 адреса хронологии, селектор 129 адреса, схе му 130 сравнения, первый блок 131 поразрядного сложения, коммутатор 132, сдвигатель 133, второй блок 134 поразрядного сложения, регистр 135 вертикальной четности, первый блок 136 свертки, регистр 137 коррекции, первый элемент НЕ 138, блок 139 памяти вертикальной четности, второй блок 140 свертки, первую схему 141 сравнения, второй элемент НЕ 142, третий элемент НЕ 143, вторую схему 144 сравнения, четвертый55 элемент НЕ 145, элемент И 146, выход 147 ошибок коррекции, элементы НЕ 48, 149, триггер 150 удаления блока, триггер 151 перезаписи, триг 097 12гер 152 бита изменения, элементНЕ 153, элементы И 154-157 эле.менты ИЛИ 158, 159, триггер 160 за-писи адреса.Устройство работает следующим образом,Выполнение операции "Чтение двойного слова" (данные в СБП имеются),В блоке 1 приоритетов анализируются имеющиеся запросы, одному иззапросов присваивается приоритет всоответствии со следующей дисциплиной: первый приоритет имеет блок об.служивания, второй - адаптер связис процессорами, третий - буфернаясекция каналов, четвертый - процессоры. В соответствии с присвоеннымприоритетом в приемных селекторах 2идентификаторов, 3 адреса, 4 кодовзащиты 5 маркеров, 6 входной информации открывается направление дляприема всей информации о запросе отэтого запросчика на регистры 7 идентификаторов, 8 адреса, 9 защиты памяти, 10 маркеров, 11 входной информации, а соответствующему устройствувыдается сигнал о присвоении приоритета, По адресу колонки с регистра8 адреса матрицы адресов считываются значения матрицы 17 адресов и блока 19 замещения, параллельно адресколонки записывается на регистр 20адреса колонки,на который также принимается номер двойного слова в блоке данных СПБ со счетчика 14 слов,В блоке 25 анализа адреса считанные из ИА 17, сравниваются на уемах 112 поразрядного сравнения с адресом запроса с регистра 8 и контролируются на блоках 111 свертки . Если в считанных адресах имеется ошибка, то на выходе 73 блока 25 анализа появляется сообщение об ошибке адреса. Если ошибки нет и с выхода первого дешифратора 12 приходит сигнал о выполнении операции "Чтение двойного слова", то в рассматриваемом режиме (дан. ные есть в СБП) на одном из выходов 87 блока 25 анализа появляется сигнал "Сравнение" адресов этой стойки матрицы 17 адресов и запроса, который кодируется на шифраторе 30 в номер сравнившейся строки и через селектор 37 записывается на регистр 41 номера строки. На элементе ИЛИ 29 формируется сигнал наличия информации, который выдается в буферную секцию каналов, если обслуживается ееСигнал, наличия информации с выхода элемента ИЛИ 29 поступает на один из входов элемента И 36, на второй вход которого приходит сигнал операции записи с выхода второго дешифратора 27, и через элемент ИЛИ 40 устанавливает в "1" триггер 11 разрешения записи, Выход триггера М подключен на управляющий вход дешифратора 10 блока 21 СБП, на адресный вход которого приходит номер сравнившейся строки с регистра М номера строки, При этом на одном из выходов дешифратора появляется сигнал разрешения записи в блоки 109 памяти СБП, принадлежащие этой строке блока 21 СБП, На входы данных блоков 109 памяти поступают байты информации с выходов регистра 11 входной информации, Запись производится только в те бло- . ки 109 памяти соответствующей строки СБП, входы обращения которых отличны от "0", т,е. в соответствии с выходами регистра 10 маркеров. Параллельно с записью новой информации в блок 21 СБП в матрице 32 битов изменения устанавливается в "1" бйт изме. нения этой строки СБП, причем на вход данных матрицы 32 поступает ло-. гическая единица с выхода триггера 152 бита изменения из блока 28 управления, который устанавливается в это состояние при каждой. операции записи соответствующим выходом второго дешифратора 27, на вход разрешения записи матрицы 32 через элемент ИЛИ 39 поступает сигнал разрешения записи с триггера И, а номер строки определяется выходом регист.ра 11 номера строки.Таким образом, анализ кода защиты запроса одновременно с анализом адреса запроса и возможность. фиксации каждого изменения информации в блоке БСП позволяют. выполнять операцию записи двойного слова за 2 такта, как и,операцию чтения двойного слова.1Такой алгоритм выполнения опера" ции записи двойного слова, когда при наличии информации в СБП запись произ,водится только в СБП, а в ОП данные остаются беэ изменения, приводит к тому, что операция перезаписи помещение в СБП нового блока данных, если по запросу процессора необходимых данных в СБП не оказалось) может быть двух видов: с удалением замещаемого блока данных, если бит иэме 45 13 980097запрос, или используется для формирования сигнала конца операции, еслиобслуживается запрос одного иэ процессоров.Одновременно с работой блока 25,анализа и формированием номера сравнившейся строки из блоков 109 памяти блока 21 СБП в соответствии с адресом регистра 20 адреса колонки счи-тываются двойные слова всех строк 1 Околонки, которые поступают на входданных мультиплексора 26 считаннойинформации, на адресный вход которого в этот же момент поступает .номер сравнившейся строки с регистра М 15номера строки. С выхода мультиплексора 26 данные попадают через входданных буферной памяти селектора 31считанной информации н регистр 31считанной информации для выдачи запросчику.Таким образом, цикл чтения собственно блоков 109 памяти совмещенс ассоциативным поиском адреса запроса и формированием номера срав-у 5нившейся строки, После цикла чтенияматрицы 17 адресов идентификаторызапроса переписываются с регистра 7идентификаторов матрицы адресовна регистр 2 идентификаторовбуферной памяти для окончанияобслуживания, а на уровень МА принимается новый запрос в соответствии,с работой блока 1 приоритетов, Одновременно с: выдачей считанной информации на регистр 12 номера процессора записывается номер процессора с регистра 22 идентификаторов,запрос которого обслужен, что сопровождается сигналом конца операциир 4 ркоторый формируется на элементахИ 35, ИЛИ 38 и триггере 3 конца операции, Сигнал конца операции используется также для изменения текущегозначения хронологии блока 19 замещения,Выполнение операции записи двой-.ного слова данных в СБП (рассматривается режим наличия данных в СБП) имеет следующие отличия от вышеописанного режима работы устройства. В блоке 5025 анализа для формирования сигналовсравнения используются кроме сравнения и контроля адресов, сравнениесчитанных кодов защиты йэ матрицы18 кодов защиты с кодом защиты эапроса с регистра 9 кода защиты и кон.троль считанных кодов защиты (элемен"ты 113, 11 ч и 115 блока 25 анализа),15 98009 нения этого блока равен единице, операция занимает 9 тактов (один такт МА и восемь тактов СБП); беэ удаления замещаемого блока если бит изменения этого блока равен нулю, операция занимает 5 тактов (один такт МА и четыре такта СБП) ..Рассмотрим первый вариант - выполнение операции перезаписи блока . с удалением замещаемого блока, 1 ОЕсли по запросу процессора необходимого двойного слова данных не оказалось в блоке 21 СБП, то не будет выработан сигнал наличия информации, .и следовательно, не будет .взве ден триггер 43 конца операции. Такой запрос попадает в очередь в ОП в адаптере связи с процессорами, а устройство продолжает обслуживать запросы других устройств, По получении блока у 0 информации из ОП адаптер связи с процессорами получает приоритет бло- ка 1 приоритетов и вся информация о запросе вновь попадает.на приемные регистры, но уже с признаком опера-. ции перезаписи нв регистре 7 идентификаторов. Здесь следует заметить, что в СБП из ОП помещается не одно двойное слово, необходимое процессору, а блок данных - четыре последовательных двойных слова с тем цтобы последующие запросы процессора мог ли быть обслужены на уровне СБП. По признаку операции перезаписи с выхода длинных операций первого дешифра 35 тора 12 устанавливается в единицу триггер 15 длинных операций, формирующий запрет в блок 1 приоритетов, а на счетчик 16 длинных операций записывается такое значение, чтобы, при последующем счете за один такт до окончания операции на его выходе переполнения появиласьединица, которая сбросит триггер 15 длинных операций с тем, чтобы снять запрет с45 блока 1 приоритетов (последний такт СБП всегда совмещен с тактом МА нового запроса).По адресу колонки с регистра 8 адреса матрицы адресов в блоке 19 50 замещения считывается значение памяти хронологии обращения к блокам этой колонки и на дешифраторе 127 формируется номер блока для замещения его новым блоком (замещается блок, к ко торому наиболее долго не было обращения от выполняемых программ), выхода 91 блока 19 замещения номер 7 16замещаемой строки через селектор 37номера строки попадает на регистр 41номера строкикоторый попадает. наадресный вход мультиплексора 33 битовизменения, на вход данных которогок этому времени считываются значениябитов изменения всех строк этойколонки. С выхода мультиплексора33 бит изменения замещаемого блокапопадает в блок 28 управления записью новых данных и устанавливаетв "1" триггер 150 удаления, С выходов второго дешифратора 27 операции перезаписи устанавливается вединицу триггер 151 перезаписи и опе.рации записи (если блок помещаетсяпо запросу процессора на запись двойного слова) - триггер 152 бита изменения,Иэ блока 21 СБП в соответствиис регистром 20 адреса колонки, регистра 41 номера строки через мультиплексор 26 и селектор 3 1 считанной информации на регистр 34, считанной информации считываются последовательно четыре двоичных слова замещаемого блока данных для записив ОП. Пересчет номера двойного слова обеспечивается счетчиком 14 слов.Через мультиплексор 24 адресов всоответствии с номером замещаемойстроки с регистра 41, который попадает на адресный вход мультиплексора, считывается адрес страницызамещаемого блока в оперативной памяти (выход 74), а "адрес колонки замещаемого блока появляется на выходе 67 адреса колонки устройствЭ.По окончании считывания четвертогодвойного слова сигналом четвертоготакта со счетчика длинных операцийсбрасывается триггер 150 удаленияи на элементах НЕ 153 и И 156 формируется сигнал записи блока, ко"торый через элемент ИЛИ 40 устанавливает в "1" триггер 44 разрешения записи на четыре такта для записи в блоке 21 СБП четырех двоййыхслов информации с регистра 11 входной информации из адаптера связи спроцессорами на место замещаемогоблока, определяемое регистром 41номера строки,С записью в блок СБП первого двойного слова в селекторе 31 считанной информации открывается вход данных оперативной памяти и на регистр 34 считанной информации попадает пер17 9800вое двойное слово данных, котороевыдается в процессор, если был запрос на чтение, на элементах И 154ИЛИ 158 формируется сигнал концаоперации, который из блока 28 управления записью новых данных черезэлемент ИЛИ 38 записывается на триггер 43 конца операции и сопровождается номером процессора С регистра 42. Перед записью последнего слова в блок СБП сигналом. переполнениячерез элементы И 155, ИЛИ 159 устанавливается в "1" триггер 160 записи адреса блока 28 управления, который разрешает записать в матрицу 517 адресов новый адрес с регистра 8,в матрицу 18 кодов защиты - код защитынового адреса с регистра 9 в блок19 замещения через эле ент ИЛИ 39 новое значение хронологии, в блок 23 20коррекции - новое значение битоввертикальной четности, а в матрицу32 битов изменения - бит измененияс выхода 106 бита изменения активного блока (триггер 152 бита изменения),блока 28 управления, Запись всехновых значений производится в строку, определяемую регистром 41 номерастроки. По сбросу триггера 15 длинных операций сбрасываются триггеры зв151 и 152 блока 28 управления записью новых данных,Второй вариант операции перезаписи блока без удаления замещаемого блока отличается от первого тем,что бит изменения замещаемого блокана входе мультиплексора 33 битов изменения равен нулю, поэтому триггер150 удаления блока 28 управления остается в нуле, следовательно, выпол Оняется сразу вторая часть операции перезаписи - запись нового блока в СБПи в матрицу 17 адресов, матрицу 18кодов защиты матрицу 32 битов изменения, блок 19 замещения, блок 23коррекции новых значений, Перед записью четвертого двойного слова сбрасывается триГгер 15 длинных операцийи открывается блок 1 приоритетовдля приема нового запроса. Таким образом, второй вариант операции перезаписи занимает четыре такта работыустройства,держимое блока 21 СБП в оперативнуюпамять, чтобы в ОП была последняякопия блоков данных. Для этого насчетчик 16 длинных операций записы"вается нулевое значение в разрядыномера колонки и .номера строки, атриггер 15 длинных операций устанавливается в "1" для запрета блока 1приоритетов Номер колонки счетчика16 попадает через селектор 3 адресов на регистр 8 адреса матрицы адресов, в соответствии с которым изматрицы 17 адресов считываются адреса блоков в ОП, а из блока 21 СБПдвойные слова данных той же колонки.Номер строки со счетчика 16 попадает через селектор 37 номера строкина регистр 41 номера строки, в соответствии с:.которым из нулевой колонки блока СБП считывается блок данных нулевой строки на регистр 34 считанной информации, а из матрицы 17 Для того чтобы операция перезаписи, как правило, выполнялась за такта, введена операция копирования, которой присваивается прйоритет автоматически всегда, когда устрой 97 18ство свободно. Адрес колонки в этом случае задается счетчиком 13 копирования, значение которого через селектор 3 адресов записывается на регистр 8 адреса матрицы адресов. С выхода блока 19 замещения номер замещаемого блока записывается через селектор 37 нв регистр 41 номера строки, В соответствии с этим номером из блока 21 СБП считывается из колонки, определяемой счетчиком копирования, блок данных из четырех двойных слов на регистр 34 считанной информаций для запи.и его в оперативную память. Выход операции копирования второго дешифратора 27 через элемент ИЛИ 39 разрешает записать бит изменения этого блока данных в матрице 32 битов изменения в нуль. Перед началом каждой новой операции копирования е счетчик копирования прибавляется "1"По запросу буферной секции кана" лов при наличии информации в блоке СБП имеется возможность чтения и записи блока данных (четырех двойных слов 1. В этом случае также устанавливается в 1" триггер 15,длинных операций для формирования запрета в блок 1 приоритетов, Номер двойного слова меняется в регистре адреса колонки счетчиком слов. В остальном выполнение операций совпадает с чтением и записью двойного слова при на личии информации в блоке СБП. Имеется возможность по запросублока обслуживания переписать со
СмотретьЗаявка
3300295, 05.06.1981
ПРЕДПРИЯТИЕ ПЯ М-5769
СЛУЦКИН АНАТОЛИЙ ИЛЬИЧ, КАРПОВА ВАЛЕНТИНА ВАСИЛЬЕВНА
МПК / Метки
МПК: G06F 13/06
Метки: буферной, мультипроцессорной, памятью, сверхоперативной, эвм
Опубликовано: 07.12.1982
Код ссылки
<a href="https://patents.su/19-980097-ustrojjstvo-dlya-upravleniya-sverkhoperativnojj-bufernojj-pamyatyu-multiprocessornojj-ehvm.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для управления сверхоперативной буферной памятью мультипроцессорной эвм</a>
Предыдущий патент: Устройство для отладки программ
Следующий патент: Микропрограммный процессор
Случайный патент: Устройство для очистки хлопка-сырца