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

 

ОП ИСАНИЕ

ИЗО6РЕТЕН ИЯ

Союз Советских

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

Республик ()955076

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (61) Дополнительное к авт. свид-ву— (22) Заявлено 21.04.80 (21) 2932293/18-24 с присоединением заявки №вЂ” (23) Приоритет— (51) М, Кл.з

G 06F 13/06

Гвеударствеикый комитет пв делам изобретеикй и открытий

Опубликовано 30.08.82. Бюллетень № 32

Дата опубликования описания 30.08.82 (53) УДК 681.325 (088.8) (72) Авторы изобретения

В. Н. Заблоцкий и Б. В. Цесин

Ф и (71) Заявитель (54) УСТРОИСТВО Д,ЛЯ УПРАВЛЕНИЯ ВИРТУА,ЛЬНОй ПАМЯТЬЮ

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

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

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

Второй вариант построения аппаратуры преобразования адресов отличается тем, что каждый из дескрипторных регистров закреплен не за математическим номером страницы, а за определенной физической страницей. Информация, которую операционная система засылает в дескрипторные регистры, представляет собой математические адреса страниц: в дескрипторный регистр, соответствующий определенной физической странице, записывается математический номер, по которому программа будет обращаться к этой странице. Выходная информация из дескрипторных регистров поступает на входы схем совпадения. На другие входы схем совпадения поступает математический номер страницы. При обнаружении соответствия между математическим номером страницы и содержимым своего дескрипторного регистра схемой совпадения формируется сигнал совпадения. Если сигнал сов955076 падения не выдан ни одной из схем совпадения, то переадресация осуществляется с помощью таблиц переадресации.

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

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

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

f0

Зо

Наиболее близким к предлагаемому является устройство для динамического преобразования адресов, содержащее регистр логического адреса, управляющий регистр, регистр физического адреса, ассоциативные регистры и регистр общего назначения, причем соответствующие выходы регистра ло- 45 гического адреса соединены с входами ассоциативных регистров и регистра физического адреса соответственно, выход соответствующих разрядов регистра логического адреса и управляющего регистра соединены с соот50 ветствующими входами арифметического устройства процессора, выход которого соединен с входом регистра общего назначения, выход которого соединен с соответствующими входами регистра физического адреса и ассоциативных регистров, соответствующие выходы устройства управления процессора соединены с управляющими входами управляющего регистра, регистров логического и физического адресов, ассоциативных регистров и регистра общего назначения (2) .

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

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

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

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

Генератор расстановки содержит группу элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, дешифратор и коммутатор, причем входы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ группы являются первым входом генератора, а выходы соединены с первым входом коммутатора, второй вход которого и вход дешифратора являются вторым входом генератора, выходы дешифратора и коммутатора образуют выход генератора, третий вход коммутатора является третьим входом генератора.

Блок управления замещением содержит группу коммутаторов, группу элементов

ИЛИ, узел приоритета и дешифратор, при. чем входы коммутаторов группы и элементов

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

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

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

5 !

О

l5

Зо

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

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

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

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

Устройство для управления виртуальной памятью (фиг. 1) содержит блок 1 входных регистров, блок 2 выходных регистров, управляющий регистр 3, регистр 4 общего назначения, блоки 5 сравнения,, блок 6 местного управления, блоки 7 памяти страниц, 955076 генератор 8 расстановки, блок 9 управления замещением, блок 10 коррекции, вход 11 адреса оперативной памяти, вход 12 задания режима, синхровход 13, вход 14 задания кода операции устройства, входы 15 — 23 блока 6 местного управления, выходы 24 — 29 блока 6 местного управления, вход 30 устройства, выход 31 блока входных регистров, выход 32 сигнала прерывания и информационный выход 33.

Блок 1 входных регистров (фиг. 2) содер- fo жит регистр логического адреса 34, вычитатель 35, группу 36 элементов И, выходы

37 — 39 регистра 34 логического адреса, выходы 40 — 42 управляющего регистра 3.

Блок 7 памяти страниц (фиг. 3) содержит группы 43--52 элементов памяти, регист15 ры 53 и 54, дешифратор 55, элементы И 56-71 и элементы ИЛИ 72 — 75.

Блок 5 сравнения (фиг. 4) содержит компаратор 76, регистр 77 и элементы И 78

H 79 20

Генератор 8 расстановки (фиг. 5) содержи1 i py0ny 80 элементов ИСКЛ10ЧАЮЩЕЕ

ИЛИ, коммутатор 8! и дешифратор 82.

Блок 9 управления замещением (фиг. 6) содержит элементы ИЛИ 83, дешифратор 84, коммутаторы 85 и узел 86 приоритета.

Блок 10 коррекции (фиг. 7) содержит элементы И 87 — -90 и элемент ИЛИ 91.

Блок 2 выходных регистров (фиг. 8) содержит регистр 92 физического адреса, регистр 93 замещаемой страницы, регистр 94 з0 флажков, коммутаторы 95 и 96, формирователи 97 и 98 и элемент ИЛИ 99.

3.. .емсHT памяти групп 43 — -52 блока ? памяти страниц (фиг. 9) содержит дешифратор 100 адреса, информационный ре, истр 101, группу 102 элементов И и комму- з5 татор 103.

Компаратор 76 (фиг. )О) содержит элемент ИЛИ-HE 104 и в каждом разряде —элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 105.

Узел 86 приоритета (фиг. 11) блока 9 40 управления замещением содержит элементы

И 06 и ИЛИ 107.

Формирователи 97 и 98 (фиг. 12) содержат элементы ИЛИ 108 (предполагается, 1то устройство содержит шестнадцать блоков 7 памяти страниц).

Блок 6 местного управления (фиг. 13) содержит второй, — седьмой, тринадцатый, восьмой — - двенадцатый и первый элементы

И 109 — 121, шестой, пятый, первый, второй, третий и четвертый элементы ИЛИ 122 †1 и трпперы 128 и 129.

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

Для обеспечения этих возможностей в управляющем регистре 3 хранятся следующие системные параметры: — величина, определяющая, число сегментов оперативной памяти, отведенных для области ядра операционной системы, обеспечивающей множественную виртуальную память (поступает с выхода 40 управющего регистра 3); — номер виртуальной машины, работающей в данный момент времени (поступает с выхода 41 управляющего регистра 3). номер множественной виртуальной памяти, которая реа.лизуется в данный момент времени (поступает с выхода 42 управляющего регистра 3).

Номер множественной виртуальной памяти и размер ядра операционной системы заносится в управляющий регистр 3 операционной системы, реализующей множественную виртуальную память. Если операционная система не реализует множественную виртуальную память, то эти разряды управляюи его регистра 3 обнулены. Номер виртуальной машины помещается в управляющий регистр 3 операционной системой, реализующей эту возможность. Для других типов операционных систем эти разряды управляющего регистра 3 игнорируются.

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

Управля1ощий регистр 3 реализован на

B-триг.ерах.

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

37 — -39 регистра 3 и логического адреса соответственно. Для динамической переадресации значение смещения, находящееся в регистре 34 логического адреса, не используется.

955076

9

При работе с множественной виртуальной памятью область ядра операцианчой системы переносится в каждую виртуальную память. Для того, чтобы иметь только одну копию ядра операционной системы, в оперативной памяти используется вычитатель 35 и группа 36 элементов И. Ядро такой операционной системы в оперативной памяти отображается на виртуальную память с номером нуль. С помощью вычитателя 35 сравнивается номер сегмента, находящийся в регистре 34 логического адреса, с величиной адра операционной системы, находящейся в управляющем регистре 3. Если номер сегмента, находящийся в регистре 34 логического адреса больше, чем число, указывающее размер ядра операционной системы, то это показывает, что обращение производится не к ядру операционной системы. Поэтому вычитатель 35 открывает элементы И группы 36, и в формировании физического адреса участвует номер множественной виртуальной памяти. Если номер сегмента, находящийся в регистре 34 логического адреса, меньше, чем число, указывающее размер ядра операционной системы, то это указывает, что обращение производится к ядру операционной системы. Поэтому вычитатель 35 закрывает элементы И группы 36 и в формировании физического адреса участвует виртуальная память с номером нуль.

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

Регистр 34 логического адреса реализован на D-триггерах, вычитатель 35 — комбинационного типа со сквозным или параллельным распространением заема.

Блоки 7 памяти страниц предназначены для хранения страничной таблицы и обеспечивают возможность для ее модификации.

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

f0

Зо

40 — номер сегмента и номер страницы хранятся в группе 44 элементов памяти (номера виртуальной машины, виртуальной памяти, сегмента и страницы указывают номер виртуальной страницы в вычислительной системе ); — бит обращения (хранится в группе 45 элементов памяти) устанавливается в режиме переадресации при каждом обращении к этой странице; — бит изменения (хранится в группе 46 элементов памяти) устанавливается в режиме переадресации, если обращение к данной странице производится для записи в нее информации; — биты частоты использования страницы во время ее нахождения в оперативной памяти. Если страница используется часто, то устанавливается бит группы 47 элементов памяти, если страница используется менее часто, то устанавливается бнт группы 48 элементов памяти, если страница используется редко, то устанавливается бит группы 49 элементов памяти. При загрузке страницы в оперативную память устанавливается бит часъэ используемой страницы, так как после загрузки страницы к ней обязательно будет обращение. Биты частоты использования страницы корректируются через равные промежутки времени, определяемые операционной системой. Такая коррекция битов частоты использования страниц позволяет получить страничное множество часто используемых страниц, страничное множество менее часто используемых страниц и страничное множество редко используемых страниц. С помощью этих трех страничных множеств и бита изменения реализуется алгоритм удаления страниц, описанный ниже. — бит — указатель ожидания ввод-вывода, определяющий, что данная страница находится в оперативной памяти, но в настоящее время используется в операциях, связанных с вводом-выводом информации (хранится в группе 50 элементов памяти).

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

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

В каждом разряде групп 43 — 52 элементов памяти содержатся элементы памяти с дешифратором адреса.

955076

В элементе памяти (фиг. 9) выход дешифратора 100 соединен с управляющими входами группы 102 элементов И и коммутатора 103, выход которого соединен с выходом информационного регистра 101, выход которого является информационным входом элемента памяти, а управляющий вход информационного регистра 101 соединен с выходом группы элементов И 102, вход которой является управляющим входом элемента памяти, вход дешифратора 100 адреса 10 является адресным входом элемента памяти, выходом которого является выход коммутатора 103. При обращении к элементу памяти на его адресный вход подается необходимый адрес. Этот адрес дешифрируется дешифратором 100, который выбирает один из элементов И из группы 102 элементов И, и коммутатором 103. При чтении информации на управляющий вход элемента памяти подается потенциал логического нуля, который, управляя элементами И группы 102, 0 блокирует запись информации в регистр 101, а значение выбранного дешифратором !00 с помощью коммутатора 103 разряда регистра 101 поступает на выход элемента. памяти. При записи входная информация с информационного входа элемента памяти 25 поступает на все разряды информационного регистра 101. Требуемый разряд регистра

101 выбирается дешифратором адреса 100 путем выбора одного элемента И из группы элементов И 102. На второй вход всех элементов И группы 102 элементов И, являю30 щийся управляющим входом элемента памяти, подается потенциал логической единицы, разрешая запись информации.

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

В каждом блоке 7 памяти страниц определяется свободная страница или условия замещения страниц с помощью элементов И со следующим приоритетом замещения: — свободная страница; — страница не изменялась и использовалась редко; — страница изменялась, но использова- я лась редко; — страница не изменялась, но использовалась не часто; — страница изменялась, но использовалась не часто.

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

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

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

Регистры 53 и 54 реализованы на D-триггерах.

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

В компараторе 76 (фиг. 10) входы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 105 являются входами компаратора 76, а выходы всех элементов ИСКЛЮЧАЮЩЕЕ ИЛИ

105 соединены со входами элемента ИЛИНЕ 104, выход которого является выходом компаратора 76.

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

955076!

0 пор, пока не исчерпаются все разряды виртуального адреса.

Для непосредственного обращения к страничной таблице требуемый адрес размещается в (п + а) младших разрядах, регистра !

4 общего назначения, причем значения его п младших разрядов поступают на адресные входы групп 43 — 52 элементов памяти каж20

25 в блоки 7 памяти страниц, использует элементы ИСКЛЮЧАЮЩЕЕ ИЛИ 80, на первый вход которых поступают в обратном порядке п младших разрядов виртуального адреса (2" — число страниц в оперативной памяти вычислительной системы, 2 — число блоков 7 памяти страниц), на второй вход— в прямом порядке следующие и разрядов виртуального адреса, на третий вход — .в обратном порядке следующие и разрядов виртуального адреса и так далее до тех дого из блоков 7 памяти страниц. С помощью дешифратора 82 выбирается один из блоков памяти страниц 7. С помощью коммутатора 81 выбирается источник адреса: блок входных регистров 1 или регистр 4 общего назначения.

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

Блок 9 управления замещением формирует значения битов — указателей (флажков), определяющих способ внесения страниц в оперативную память. Если во время переадресации установлено, что требуемая виртуальная страница отсутствует в оперативной памяти, то блоком 9 управления заме-щением определяется способ внесения этой страницы в оперативную память и ее физический адрес. В блоке 9 управления замещением анализируются условия замещения, поступающие из регистров 53 каждого из блоков 7 памяти страниц. С помощью дешифратора 84 определяется наиболее приоритетное условие, т. е. такое условие, при котором новая виртуальная страница загружается в оперативную память за минимально возможное время и возможно удаление из оперативной памяти наименее часто используемой страницы.

С помощью 2 коммутаторов 85 определяется, какими блоками 7 памяти страниц выставлены выбранные дешифратором 84 условия. Коммутаторы 85 в каждом разряде содержат элемент ИЛИ и пять элементов И, выходы которых соединены с входами элемента ИЛИ, а входы элементов И соединены с выходом соответствующих разрядов регистра 53 соответствующего блока 7 памяти страниц и выходом соответствующего разряда первого входа дешифратора 84 соответственноо.

С помощью узла 86 приоритета выбирается один из блоков 7 памяти страниц, если

55 несколько таких блоков выдали одинаковые условия для внесения виртуальной страницы.

Узел 86 приоритета выбирает блок 7 памяти страниц с наименьшим номером.

В узле 86 приоритета (фиг. 1) первые прямые входы каждого элемента И 106 являются входами узла приоритета, а прямые выходы каждого элемента И 106 — выходами узла 86 приоритета, инверсный выход каждого элемента И 106, кроме первого и последнего, соединен с входами соответствующего элемента ИЛИ 107, выход которого соединен со вторым прямым входом соответствующего элемента И 106 и вторым входом соответствующего элемента ИЛИ 107, инверсный выход первого элемента И 106 соединен со вторыми прямыми входами второго элемента 106 и соответствующего элемента ИЛИ 107.

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

38 регистра 34 логического адреса, и значений, поступающих с выхода коммутатора 81 генератора 8 расстановки и с выхода формирователя 97. С помощью формирователя 97 определяется а старших разрядов физического адреса, определяемых номером блока 7 памяти страниц, опознавшим виртуальный адрес. Если в слове состояния программы не установлен бит, определяющий режим преобразования адресов, то физический адрес помещается в регистр 92 физического адреса без преобразования.

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

Физический адрес образуется как совокупность значений, поступающих с выхода коммутатора 81 генератора 8 расстановки и с выхода формирователя 98, определяющего номер блока 7 памяти страниц, где производится замещение или загрузка страницы.

Из этого блока 7 памяти страниц в регистр замещаемой страницы 93 поступает содержимое из соответствующей строки групп 43 и 44 элементов памяти, определяющее виртуальный адрес страницы. В регистре 94 флажков размещены значения флажков.

Для формирования номера блока 7 памяти страниц используются формирователи 97 и 98, которые предназначены для преобразования унитарного кода в двоичный. Фор955076

16

З0 вход элемента И 117 соединены с выходом 12 з5 соответствующего разряда регистра слова состояния программы, третьи прямые входы элементов И 109 — 121 соединены с выходом соответствующих разрядов синхровхода 13, выходы элементов И 109,110, 112 — 115, 118 — 121 и элементов ИЛИ 122 и 123 являются выходами блока 6, выходы элементов И 109 и 111 соединены с входами

55 м :))()выт(. lh ((() t . 21 соде()ж((i ll кы:.-,;л. ().!.)ря.с, (с".4(ч(т Jñ1! 1 108, ()р((ч и .. .().(l>l л(!(мг °: в ИЛИ .!, (:up3HHtHhl с с(()т()с". с Гвую: ы;".в «ходными разрядами формировыт(ля. в(>(ходом кото!)Ого являются выходь! элем((тон ИЛИ 108. С помощью элемента

ИЛИ 99 определяется, опознал ли хотя бы !

) (вн из блоков 6 памяти страниц виртуальный ыдрес.

Блок !О коррекции предназначен для управления занесением информации в групны 50 — 52 элементов памяти каждого блока

7 памяти страниц.

Блок 6 местного управления предназначен для выработки управляющих сигналов.

В блоке 6 местного управления (фиг. 13) первые прямые входы элементов И 113, 114, 116 — 120, первые входы элементов ИЛИ

125 и 126 и первые разряды выходов 28 и 29 блока 6 являются входом 16 блока 6 местного управления, первый прямой вход элемента И 112, и второй разряд выхода 29 блока 6 являются входом 17 блока 6 местного управления, первый прямой вход элемента И 111, и первый вход элемента ИЛИ

127 являются входом 18 блока 6, первый прямой вход элемента И 109, вторые входы элементов ИЛИ 125 и 127 и второй разряд выхода 28 блока 6 является входом 19 блока 6, первый прямой вход элемента И 110 и второй вход элемента ИЛИ 126 являются входом 20 блока 6, выход элемента ИЛИ 125 соединен с первым прямым входом элемента И !21, выход элемента ИЛИ 126 соединен с первым прямым входом элемента И !15, выход элемента ИЛИ 127 является выходом блока 6, вторые прямые входы элементов

И 109 — 116, 118 — 121 и второй инверсный элемента ИЛИ 122, выход элемента И 109 является выходом блока 6, выходы элементов И 1!6 и 117 соединены с входами элемента ИЛИ 23, выход элемента ИЛИ 99 блока 2 выходных регистров соединен с входом триггеры 128 и четвертым прямым входом элемента И 116, выход элемента И 115 сне (и))с(с входами синхронизации триггеров 128 и 129, выход элемента И 115 является выходом 27 блока 6, выход триггера 128 соединен с четвертыми инверсными входами

>,(ементов И !13 и !19 и четвертым прямым входом элемента И 114, выход триггера 129 со(ди вен с пятыми инверсными входами ,:«; (.«(on И !3 и 119 и четвертым прямым вх)д(.м э((ем(пта И !20, вход триггера 129

"в:. в с выходом элемента ИЛИ 124, 10

25 входы которого соединены с выходами элементов И 79 каждого из блоков 5 сравнения.

Триггеры 128 и 129 являются D-триггерами.

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

Режимы работы устройства определяются путем возбуждения устройством управления процессора соответствующего входа блока 6 местного управления.

Во время выполнения операции, связанной с обращением к оперативной памяти, устройство управления процессора возбуждает вход 16 блока 6. Если бит слова состояния программы, определяющий режим преобразования адресов, не установлен, то во время действия импульса СО открывается элемент И 117, сигнал с выхода которого через элемент ИЛИ 123 производит запись физического адреса в регистр 92, поступающего на его вход через коммутатор 95 блока 2 выходных регистров.

Если процессор работает в режиме преобразования адреса, то устанавливается соответствующий бит слова состояния программы и указанная выше информация загружается в управляющий регистр 3. Во время выполнения операции, связанной с обращением к оперативной памяти, устройство управления процессора возбуждает вход 16 блока 6 местного управления. Тогда во время действия импульса СО открывается элемент И 121, по сигналу с выхода 25 которого логический адрес записывается в регистр 34 логического адреса блока 1 входных регистров. В блоке 1 входных регистров формируется адрес виртуальной страницы так, как описано выше. Разряды адреса виртуальной страницы, кроме смещения, поступают на входы группы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 80 генератора 8 расстановки, результат с выхода которой через коммутатор 8! поступает на адресные входы групп 43 — 52 элементов памяти каждого из блоков 7 памяти страниц.

Информация, прочитанная с выбранной ячейки групп элементов памяти 43, 44, 50 и 52, поступает в соответствующий блок 5 сравнения. Условия удаления страниц из оперативной памяти, сформированные элементами И 58 — 62 блока 7 памяти страниц, и соответствующая информация из групп элементов памяти 45, 47 — 50 записывается в регистры 53 — 54 соответственно сигналом с выхода 28 блока местного управления 6, поступающим через открытый элемент И 115, во время действия импульса Сl. В блоке 5 сравнения производится сравнение адресов виртуальных страниц, поступающих с блоков входных регистров 1 и памяти страниц 7.

Если сравнение произошло, выбранная строка группы элементов 43 — 52 памяти загружена и данная страница не используется

955076

18 в операциях ввода-вывода, то это указывает, что требуемая виртуальная страница находится в оперативной памяти и доступна.

Эта ситуация запоминается в регистрах 77 каждого из блоков 5 сравнения по сигналам, поступающим с выхода 27 открытого элемента И 115 во время действия импульса Сl.

Сигналы с выходов элементов И 78 поступают в блок 2 выходных регистров на элемент ИЛИ 99. С помощью элемента ИЛИ 99 определяется, находится ли требуемая страница в оперативной памяти и разрешено ли к ней обращение. Эта ситуация запоминается в триггере 128 во время действия импульса С l по сигналу, поступающему на вход синхронизации триггера 128 через открытый элемент И 115.

Если сравнение произошло, выбранная строка группы 43 — 52 элементов памяти загружена, но данная страница используется в операциях ввода-вывода, то это указывает, что требуемая виртуальная страница нахо- 20 дится в оперативной памяти, но недоступна для обращения со стороны процессора. Эта ситуация запоминается в триггере 129 (единичное состояние) во время действия импульса С l по сигналу, .поступающему на вход синхронизации триггера 129 через от25 крытый элемент И 1!5. Это условие формируется элементами И 79 блоков 5 и элементом И 124 блока 6.

Если с помощью элемента ИЛИ 99 установлено, что доступ к виртуальной странице зп возможен (единичное состояние триггера 128), то ее сформированный физический адрес записывается в регистр 92 физического адреса по сигналу с выхода 26 блока 6 местного управления, поступающему на управляющий вход регистра 92 физического адреса через элемент ИЛИ . 123 и открытый элемент И 116 во время действия импульса

Сl. Физический .адрес страницы поступает на вход регистра 92 через коммутатор 95.

Физический адрес формируется как сово- 4О купность номера блока 5 сравнения, где произошло опознание виртуальных адресов, кода, поступающего с выхода коммутатора

81 генератора 8 расстановки, и смещения, поступающего с выхода 39 регистра 34 логического адреса. Двоичный код номера 45 блока 5 сравнения формируется формирователем 97. После этого производится коррек ция страничной таблицы, заключающаяся в установлении битов обращения и битов изменения, если обращение в оперативную память производилось для записи информации. Для этого во время действия импульса С2 открывается элемент И 114, сигнал . с выхода 28 которого поступает на элемент

И 69 каждого из блоков 7 памяти страниц.

Содержимое регистров 77 блоков 5 сравне- ы ния поступает на вторые входы элементов

И 69 соответствующих блоков 7 памяти страниц. Так как опознание виртуального адреса возможно только в одном из блоков 5 сравнения, то открываются элементы И 56, 57, 69 и 71 соответствующего блока 7 памяти страниц. Элементы И 56 и 57 определяют установку информации на входы групп 45 и 46 элементов памяти соответствующего блока 7 памяти страниц, а открытый элемент

И 69 разрешает прохождение сигнала записи на управляющие входы групп 45 и 46 элементов памяти. Запись в группу 46 элементов памяти производится только при установке триггером кода операции, определяющего запись информации в оперативную память. В этом случае открыт элемент И 71.

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

93 замещаемой страницы и в регистр 94 флажков соответственно по сигналам с выхода 26 элемента И 118 во время действия импульса С2.

Если триггеры 128 и 129 находятся в нулевом состоянии, то это определяет, что требуемой виртуальной страницы нет в оперативной памяти. Поэтому блок 10 коррекции анализирует условие, сформированное дешифратором 84, которое определяет, возможно ли осуществить замещение или ввод требуемой страницы. Если это возможно, то в соответствующей строке страничной таблицы устанавливается бит — указатель ожидания ввода-вывода. Для этого сигнал с выхода открытого элемента И 90 блока 10 коррекции поступает на элементы И 67 каждого из блоков 7 памяти страниц. В выбранном узлом 86 приоритета блоке 7 памяти страниц открывается элемент И 67 при наличии сигнала с выхода 28 элемента И 113 блока 6 местного управления, и во время действия импульса С2 осуществляется запись в группу 50 элементов памяти. Информация на входе группы 50 элементов памяти каждого из блоков 7 памяти страниц устанавливается с выхода элемента ИЛИ 91 блока !О коррекции.

Если при анализе условия блоком IO коррекции установлено, что ввести требуемую страницу невозможно, то бит — указатель ожидания ввода-вывода страничной таблицы не помечается.

Если требуемой виртуальной страницы нет в оперативной памяти, то во время действия импульса С2 открывается элемент

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

Если триггер 128 находится в нулевом состоянии, а триггер 129 в единичном, то это определяет, что требуемая виртуальная

955076

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

Поэтому никакая строка страничной таблицы не помечается, так как сигнал с выхода триггера 129 закрывает элемент И 113, а в момент действия импульса С2 открывается элемент И 120, что вызывает прерывание, определяющее, что процессору разрешено обращаться к странице, которая используется системой ввода-вывода.

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

После окончания операции ввода-вывода бит — указатель ожидания ввода-вывода сбрасывается.

Для выполнения таких действий процессором в младшие разряды регистра 4 общего назначения устанавливается адрес реальной физической страницы, в соответствующий старший разряд — код, определяющий установку или сброс бита — указателя ожидания ввода-вывода, а устройство управления процессора возбуждает вход 17 блока 6 местного управления. Таким образом, младшая часть физического адреса страницы с выхода регистра 4 общего назначения через коммутатор 81 генератора 8 расстановки поступает на адресный вход групп 4352 элементов памяти каждого из блоков 7 памяти страниц. Старшая часть физического адреса страницы дешифрируется дешифратором 82 генератора 8 расстановки, что позволяет выбрать один из блоков 7 памяти страниц (т. е. соответствующую часть страничной таблицы). Код установки или сброса бита — указателя ожидания ввода-вывода поступает на вход группы 50 элементов памяти каждого из блоков 7 памяти страниц через элементы ИЛИ 91 и И 87. В момент действия импульса Cl открывается элемент

И112, сигнал с выхода 28 которого открывает элемент И 66 того блока 7 памяти страниц, который выбран дешифратором 82 генератора 8 расстановки. Сигнал с выхода открытого элемента И 66 через элемент ИЛИ 73 поступает на управляющий вход группы 50 элементов памяти, вызывая запись информации, поступающей на вход группы 50 элементов памяти, с выхода элемента ИЛИ

91 блока 10 коррекции.

При первоначальной загрузке физической страницы в оперативную память или очистке оперативной памяти необходимо установить или сбросить бит — указатель запрещения удаления страницы и бит указатель действительности строки страничной таблицы. Для выполнения таких действий процессор устанавливает в младших разрядах регистра 4 общего назначения адрес реальной физической страницы, в соответствующих старших разрядах — биты, зического адреса страницы с выхода регистра 4 общего назначения через коммутатор 81 генератора 8 расстановки поступает на адресные входы группы 43 — 52 элементов

При первоначальной загрузке виртуальной страницы в оперативную память информация об этой странице записывается в соответствующую строку страничной таблицы. При этом устройство управления процессора возбуждает вход 19 блока 6. Так как страница вводится в оперативную память только в том случае, если к ней было обращение, то физические адрес оперативной памяти, куда будет загружаться виртуальная страница, находится в регистре 93 замещаемой страницы. Процессор помещает адрес физической страницы из соответствующих разрядов регистра 93 замещаемой страницы в младшие разряды регистра 4 общего назначения, в соответствующих старших разрядах которого размещается информация о запрещении удаления страницы из оперативной памяти и бит действительности строки страничной таблицы. Адрес виртуальной страницы размещается в регистре

34 логического адреса блока 1 входных регистров, куда записывается по сигналам с выхода 25 блока 6 местного управления через открытый элемент И 121. Таким образом, младшая часть физического адреса с выходов регистра 4 общего назначения через коммутатор 81 генератора 8 расстановки поступает на адресный вход группы 43—

52 элементов памяти каждого из блоков 7

55 памяти каждого из блоков памяти страниц 7.

Старшая часть физического адреса дешифрируется дешифратором 82 генератора 8 расстановки, что позволяет выбрать один из блоков 7 памяти страниц (т. е. соответствующую часть страничной таблицы). Коды установки битов — указателей запрещения удаления и действительности строки страничной таблицы поступают на входы групп 51 и 52 элементов памяти каждого из блоков 7 памяти страниц через элементы И 88 и 89 блока 10 коррекции. В момент действия

20 импульса C l открывается элемент И 111 и через элемент ИЛИ 122 сигнал с выхода

28 элемента ИЛИ 122 открывает элемент

И 65 того блока 7 памяти страниц, который выбран дешифратором 82 генератора 8 расстановки. Сигнал с выхода открытого элемента И 65, поступающий на управляющие входы групп элементов памяти 51 и 52, вызывает запись информации, поступающей на входы групп 51 и 52 элементов памяти с выхода элементов И 88 и 89 блока 10 коррекции соответственно.

955076

ro

15 го г5

Зо

55

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

21 памяти страниц. Старшая часть физического адреса дешифрируется дешифратором 82 генератора 8 расстановки, что позволяет выбрать один из блоков 7 памяти страниц (т. е. соответствующую часть страничной таблицы). В момент действия импульса Сl открывается элемент И 109 блока 6, сигнал с выхода 28 которого и сигнал с выхода элемента ИЛИ 122 открывают элементы

И 63, 64, 65, 68 и 70 того блока 7 памяти страниц, который выбран дешифратором 82 генератора 8 расстановки. Сигналы с выходов открытых элементов И 63, 64, 65, 68 и

?О поступают на управляющие входы групп

4Ъ вЂ” 49, 51 и 52 элементов памяти, вызывая запись информации, поступающей на входы групп 43 — 49 и 51 и 52 элементов памяти.

На входах групп 43 и 44 элементов памяти устанавливается номер виртуальной страницы с выхода блока 1 входных регистров.

На входах групп 45 и 46 элементов памяти устанавливается логический нуль, так как элементы И 56 и 57 закрыты. На входах группы 47 элементов памяти дешифратором

55 устанавливается значение логической единицы, а на входах групп 48 и 49 элементов памяти дешифратором 55 устанавливается значение логического нуля (загружаемая страница включается во множество наиболее часто используемых страниц). Информация на входах групп 51 и 52 элементов памяти определяется содержимым соответствующих стар ших разрядов регистра 4 общего назначения. Эта информация через элементы

И 88 и 89 блока 10 коррекции поступает на входы групп 51 и 52 элементов памяти.

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

Через определенные промежутки времени под управлением операционной системы выполняется процедура корректировки битов частоты использования страниц. Во время одного цикла выполнения процедуры одновременно корректируются биты частоты использования страниц в соответствующих строках каждой части страничной таблицы (в каждом блоке 7 памяти страниц). Адрес строки страничной таблицы устанавливается в регистре 4 общего назначения (а старших

22 разрядов адреса игнорируются) и устройство управления процессора возбуждает вход

20 блока 6 местного управления. Адрес с выхода регистра 4 общего назначения через коммутатор 81 генератора расстановки 8 поступает на адресные входы групп 43 — 52 элементов памяти каждого из блоков 7 памяти страниц. В момент действия импульса

Сl открывается элемент И 15, по сигналу с выхода 25 которого в каждом блоке 7 осуществляется запись и нформа ции, и рочитанной из групп 45, 47 — 50 элементов памяти, в регистр 54. Информация, записанная в регистр 54, анализируется дешифратором 55. В момент действия импульса С2 открывается элемент И 110, сигнал с выхода 28 которого через элементы ИЛИ 72 и 74 поступает на управляющие входы групп элементов памяти 45, 47 — 49 каждого из блоков 7 памяти страниц. При этом биты обращения обнуляются, а в группы 47 — 49 элементов памяти записываются сформированные дешифратором 55 значения.

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

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

За счет такой реализации процесса преобразования адресов его скорость возрастает.

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

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

24 гз

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

10

l5

2. Устройство по п. 1, отличающееся тем, что генератор расстановки содержит группу элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, дешифратор и коммутатор, причем входы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ группы являются первым входом генератора, а выходы соединены с первым входом коммутатора, второй вход которого и вход дешифратора являются вторым входом генератора, выходы дешифратора и коммутатора образуют выход генератора, третий вход коммутатора является третьим входом генератора.

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

ИЛИ, узел приоритета и дешифратор, причем входы коммутаторов группы и элементов

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

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

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

ИЛИ, выход которого и выходы второго, третьего и четвертого элементов И образуют выход блока.

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

40 элемента ИЛИ являются четвертым входом блока, а выход соединен с первым входом первого триггера, выходы второго и третьего элементов ИЛИ соединены соответственно с первыми входами первого и тринадцатого

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

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

1 четвертым выходом блока, выход первого триггера соединен с четвертыми входами

955076

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

26 соединены со входами шестого элемента

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

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

1. Карцев М. А. Архитектура ЦВМ. М., «Наука», 1978, с. 158 — 160.

2. Катцан Г. Вычислительные машины системы 370. М., «Мир», 1974, с. 410 — 438 (прототип).

956076

glar. 14

Редактор Ю. Ковач

Заказ 6171/54

Составитель И. Хазова

Техред А. Бойкас Корректор Е. Рошко

Тираж 731 Подписное

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

113035, Москва, )K — 35, Раушская иаб., д. 4/5

Филиал ППП Патент>, г. Ужгород, ул. Проектная, 4

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

 

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

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

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

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

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

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

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

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

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