Устройство для адресации буферной памяти
Иллюстрации
Показать всеРеферат
Б. А. Бабаян, Ю. Х. Сахин, А. Н. Багаев н Г. С. Кнм (72) Авторы изобретения (7I ) Заявитель (54) YCTPOACTBQ ДЛЯ АДРЕСАЦИИ БУФЕРНОЙ ПАМЯТИ
3.
Изобретение относится к областн вы числительной техники и может быть использовано при разработке вычислительных сн сгем, используемых буферную память.
Известно устройство, содержащее группы регистров базы, схем сравнения и нн дексных регистров tl) .
Недостатком известного устройства яв ляется недостаточная эффективность павам тне ло
Наиболее близким по сущности техно ческим решением к предложенному являет
cs устройство для agpecavss буферной па мата, содержащее группу регнстров базы, Регистр адреса, первую гРуппу схем ср : пения, группу элементов И, группу индексных регистров, вторую группу схем сравнения, входной регистр базы, вход ко про»
ro соедниен с первым входом устройства, выход входного регнстра базы соединен с первыми входами схем сравнения перйой группы, вторые входы которых соединены с выходами соответствукщих регистров базы группы, выходы схем сравнения пер2 вой группы соединены с первыми входами элементов И груйпы (23 .
В атом устройстве соответсльие илн связь между блоками буферной и оператнв
soN памяти устанавливается с помощью адресной памяти, хранящей адреса столбцов по оперативной памяти. Адресная па мять является прямоадресуемой s такнм
О бр & зом ОбуслОВлнВает жесткую связь между расположением блока данных в ola ратнвной и буферной памятях. Эффектнв ность использования буферной памяти су щественно завксит от взаимного размене ння В Опера жвной памяти ч&стей прог рамм, которые одновременно учасгвуют в; вычислнтельном процессе. Это является основным недостатком организации буфер» ной памяти известного устройства и умень . шает во многих случаях его общую произ»
ВОди тельнос ть
Иелью изобретения является повышение коэффициента нспользовання оборудования.
3 71777
Поставленная цель достигается тем, что в устройство для адресации буферной памяти введены два коммутатора, шифра тор, входной индексный регистр, блок элементов ИЛИ, память битов значимости, причем выход входного регистра базы сое- динен с инфорМационными входами регист ров базы группы, выходы схем сравнения . второй группы соединены со вторыми входами соответствующих элементов И группы, выходы которых соединены с соответ»ствующими входами щифратора и блока эле; ментов HJIH, вьход которого соединей с входами первого и второго коммутаторов, вьасоды первого коммутатора соединены с управляющими входами соответствующих регистров базы группы и индексных регистров группы, второй вход устройства через входной индексный регистр соединен с первым входом регистра адреса, информационными входами индексных регистров группы и первыми входами схем сравнения второй группы, вторые входы которых сое
"динены с выходами соответствующих индексных регистров группы, выход шифра
25 тора соединен со вторым входом регист рв адреса, выход которого соединен с первым выходом устройства и через после» доватепьно соединенные память битов зна-, /Зо чимости и второй коммутатор.- со вторым/ выходом устройства.
Блок-схема процессора с устройством адресации буферной памяти приведена на чертеже.
Процессор содержит блок 1 обработки данных, устройство 2 дпя адресации буферной памяти, буферную память 3, блок
4 Обрмцейия к оперативной памяти, блок
5 коммутации. Устройство 2 для адреса«
40 ции буферной памяти в свою очередь содержит входной индексный регистр 6, входной регистр 7 базы, группу индексных регистров 8, группу регистров 9 ба«
У эы группы схем 10 и 11 сравнения, груп-
45 пу элементов И 12, блок 13 элементов
ИЛИ, коммутаторы 14 и 15, память 16 битов значимости, регистр 17 адреса и шифратор 18.
Работа устройства иллюстрируется на
$0 примере прнменения его в многойроцессор- йой системе.
Такая сИстема использует оперативную память на ферритовых сердечниках объе мом 16 млн. слов, каждое по 8 байтов.
Размер буферной памяти, входящей в состав устройства и выполненной на быст рйх интегрепьных схемах, состевляет 512 слов. Длина слове буферной памяти такая
1 4 же, как и слова оперативной памяти. Бу.ферная память разделена на 32 рввньж сектора. Программы пользователя и Ж арационной системы представпиют собой совокупность процедур, каждая из которых
Обладает сВОЙстВОм пОВтОрнОЙ Входимости, Процедуры располагаются в оперативной памяти вплотную друг к другу. Достуц к информационным массивам процедур осуществляется через табпицу управляющих слов - дескрипторов, каждый из которых описывает некоторую логическую область шыяти произвольной длины. Дескриптор разделен на три зоны: база - адрес начала массива некоторой процедуры; количество - величинв, определяющая размер массива в словах; защита - величина, в которой позиционно задается возможность различных видов доступа к процедуре.
Доступ к слову, расположенному внут ри массива процедуры, осуществляется путем Операции индексирования соответствующего дес ."риптора. Сущность этой ойерации состоит в следующем. Команды считывании, записи и ветвления включают в себя информацию о расположении дескриптора и смещение «индкес. Из дескриптора выделяется база (24-разрядный адрес с точностью до сиовв) и суммиру ! ется с 13-разрядным индексом.
Полученный таким образом исполнитель ный адрес идентифицирует расположение ,требуемого слова в оперативной памяти.
Параллельно с формированием исполнитель ноГО адреса происходит проверка на выход адресации за предел массива, для это« го индекс сравнивается с количеством, заданным в дескрипторе, а также проверяют» ся соответствующие разряды зоны защиты дескриптора с цепью определения коррект ности обращения к массиву. Исполнител ный адрес вырабатывается в блоке 1 и поступает на адресный вход блока 4.
Массивы или сегменты процедур в оперативной памяти делятся на секторы по
16 слов, начиная с базового адреса сегмента. Последний сектор сетмента может быть неполным, т.е. содержать менее 16 слов, Любой сектор оперативной памяти может быть размещен в любом секторе буферной памяти. Каждый сектор в оперативной памяти может быть идентифицирован базой процедуры, в которую Он входит, и индексом сектора, определяемым 0-8 разрядами индекса, который участвует в опер вцик индексирования дескриптора.
Соответствие между информацией, раз мещенной в секторах буферной памяти 3
4. Выделение сектора буферной памяти под новую информацию. Размещением ин формации в буферной памяти управляет коммутатор 14 по принципу "первый вошел - первый вышел . Возбуждается один из выходов коммутатора 14, который со» ответствует выделяемому сектору. Вслед ствие этого содержимое входных регис т ров 6 и 7 записывается в регистры 8 и
9 выбранной пары «база-индекс". Появляется сигнал нв выходе соответствующего элемента И 12, который поступает на шифратор 18. Информация шифратора 18 и 9-12 разряды входного индексного регистра 6 подаются на регистр 17. По но меру сектора, определяемому по старшим разрядам регистра 17, обнуляется соответствукицвя ячейка памяти 16.
5. Исполнительный адрес подключается к выходу блока 4 и поступает в оперативную память. Информация со считанного блока данных поступает в блох 5 и в буферную память 3, где записывается по адресу, определяемому 0-6 разрядами регистра 17 адреса, по этому же адресу записывается «1" в соответствующий бит памяти 16.
6. При выполнении операции считьтвания выход блока 5 подключается к входу бпока 1, который принимает таким образом нужное ему слово. На этом операция заканчивается.
7.. Если производилась операция записи, то записываемое слово подключается к информационному выходу блока 1 обработки данных, откуда поступает па инфор5 7177 и секторами оперативной памяти устанав» ливается с помощью устройства 2. Регист» ры 8 группы и регистры 9 труппы депяФ-" ся на пары "база-индекс", причем каждая пара соответствует определенному сектору буферной памяти 3. После размещения информации в сектор буферной памяти 3 база процедуры, содержащей этот сектор, а также индкес сектора (номер сектора в процедуре) заносятся в соответствую щую пару база-индекс устройства 2.
База и индекс, выделенные соответст ванно из дескриптора и команды, исполт зуются блохом 1 в качестве адресов по» иска требуемой информации в буферной па-т5 мяти 3. Для этого индексная и базовая икформатия из блока 1 поступают ссор. ветстзенно на входной индексный регистр и входной регистр 7. Поиск требуемой информации происходит путем одновременно- 0 го сравнения содержимого входного регистра 7 и индексного регистра 8 с соответствукщими парами "база-индекс» из регист» ров 8 и регистров 9 на схемах 10 и 11.
Каждой паре база-индекс соответствует пара "схема 10 - схема 11" и элемент
И 12 группы, на входы которого посту пают сигналы сравнения с индексом и ба. зой. Сравнение ссдержимого входных ре. 30 гистров 6 и 7 с одной из множества nap база-индекс вызывает срабатывание со», ответствующего элемента И 12. Выходы элементов И 12 соединены с шифратором
18, хоторый в зависимости от позиции
35 пары база-индекс", с которой произошло сравнение, формирует соответствующий номер сектора. Выход шифратора 18 и
9-12 разряды входного индексного регистра 6 в воку о образу дрес обр 40 щения к буферной памяти 3 и поступают. на регистр 17.
Обмен информацией между оперативной памятью происходйт блоками по четыре, 45 слова, в связи с чем каждый сектор бу ферной пвмяттт делится также на четыре блока. Для установления факта наличия значимой информации в блоке сектора служит память 16 битов значимости. Количество ячеек памяти 16 равно количеству секторов в буферной памяти. Каждая ячейка хранит четыре бита, цо одному на блок.
В процессе решения задачи блох 1 про изводит считывание информации иэ опера тивной и буферной памятей, а также запись информации в них.
Выполнение операций считывания и записи состоит из нескольких этапов.
71 6
l. Блок 1 выделяет базу иэ дескриптора и индекс иэ команды, после чего базовая и индексная информация из блока 1 подаются на входные регистры 7 и 6 уст ройства 2.
2. Блок 1 формирует исполнительный адрес путем суммирования базы и индекса, после чего адрес из блока 1 переда» ется в блок 4. Одновременно с этим про исходит сравнение регистров 6 и 7 с регистрами 8 и 9. Результаты сравнения поступают через элементы И 12 и блох
l3 элементов ИЛИ в коммутаторы 14, 15 и далее через коммутатор 15 х блоку 4. !
3. Проверка состояния выхода комму татора 15. Если произошло сравнение с одной из пвр база-индекс" устройства 2, то цереходят к восьмому этапу, если сравнения не произошло - к следующему этапу.
7 717771
"" "мйцнонййй вход буферной памяти 3. В бу ни .Регистров, вторую группу схем сравферную память 3 число записывается по пения, входной регистр базы, вход котоадр у, хранящемуся на регистре 17 ад- " " рого соединен с первым входом устройсз реса, а в оперативную память - по адре ва. выход входного регистра базы соещ су, поступающему с выхода блока 4 обра" 5 нен с первыми входами схем сравнения щения к оперативной памяти. На этом-: первой группы, вторые входы которых соеоперапия закапчивается. динены с выходами соответствующих ре8. Выход шифратора 18 и 9-12 разр » гистров базы группы, выходы еМ сравды входного индексного Регистра 6 посту пения первой группы соединены с первы
-пают иа регйстр 17, откуда информапия 1О ми входйьщ элементов И группы, о т л ипередается в ширять 18 значимости. Оаи- ч а ю щ е е с я тем, что, целью повышетайный из памяти 16 бит через коммута ния коэффициента использования обору тор 15 подключается к индикаторному дованйя, виеговведеныдвакоммутатора, входу блока 4 обрацения к оперативной шифратор,входнойиндексныйрегистр,блок памятна
15 элементов ИЛИ, память битов значимости, 9. Проверка состояния выхода комму- причем выход входного регистра базы соетатора 15. Если бит значимости равен динен с информационными входами регист 1, выход буферной памяти 3 подключа- ров базы группы, выходы схем сравнения ется к парвому входу блока 5, далее пе- второй группы соединены со вторыми вхореходит к шестому этапу, если бит зна- о дющ соответствующих элементов И групчимости pase6 О, переходят к пятому пы, выходы которых соединены с.соответэ any, ствующими исодами шифратора и блока
ПРеимУщестюом изобРетениЯ Явлнетсн элементов ИЛИ, выход которого соединен то, что при работе с любой пропедурой с входами первого и второго коммутатообьемом М слов и размещении ее в буфер"1 ров, выходы первого коммутатора соеди25 ной памяти, единицей логического разби- пены с управляющими входами соответстения которой является сектор обьемом Й . вующих регистров базы группы и индекослов, упомянутая процедура в буферной па- ных регистров группы, второй вход устмяти будет занимать максимум ф oeKlo ройства через входной индексный регистр
ЗО,. ров, если М делится на М без остатка соединен с первым входом регистра адреса или + 1 секторов, т.э. во мйбгих ony-. информационными входамй индексных реУ ч на один сектор меньше, чем в из» гнстров группы и первыми входамн схем весжом устройстве. Благодаря этому сравнения второй группы, втоРые входы уменьшается частота обновленной инфор» которых соединены с выходами соответмапии в буферной памяти, что повышает ствующих индексньж Регистров группы, 35 эффективность ее «спользоваиия, а в ито выход шифратора соединен со вторым вхо
re повышает быстродействие вычислител дом регистра адреса, выход которого сое ной машины в целом на З-5% (в зависи динен с первым выходом устройства и че мости от решаемых задач). „pea последовательно соединенные память битов значимости и второй коммутаторсо вторым выходом устройства..
Формула и вобретения Источники информации, принятые во внимание при экспертизе
Устройство для адресации буферной пе-, 1. Патент США М 3693165, мяти содериащее rpynuy pemorpoa б зы, ; .кл» 340-172.5, 1972.
Регистр адреса первую группу схем срав - 2. Патент США и 3588829, ненни, группу элементов И, группу индекс- кл. 340-172.5, 1971.