Устройство для управления виртуальной памятью Советский патент 1982 года по МПК G06F13/06 

Описание патента на изобретение SU955076A1

(54) УСТРОЙСТВО ДЛЯ УПРАВЛЕНИЯ ВИРТУАЛЬНОЙ ПАМЯТБЮ

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

название год авторы номер документа
Устройство управления виртуальной памятью 1980
  • Лопато Георгий Павлович
  • Пыхтин Вадим Яковлевич
  • Заблоцкий Владимир Николаевич
  • Цесин Борис Вульфович
SU1023336A1
Устройство для динамического преобразования адресов 1980
  • Лопато Георгий Павлович
  • Заблоцкий Владимир Николаевич
  • Цесин Борис Вульфович
SU903878A1
Устройство для трансляции логических адресов в адреса памяти на магнитных дисках 1981
  • Заблоцкий Владимир Николаевич
  • Цесин Борис Вульфович
SU966695A1
Устройство для управления виртуальной памятью 1986
  • Борисов Эдуард Васильевич
  • Горелов Сергей Витальевич
  • Токарев Петр Васильевич
  • Чикало Олег Владимирович
SU1327113A2
Устройство для управления оперативной памятью 1985
  • Заблоцкий Владимир Николаевич
  • Цесин Борис Вульфович
SU1291992A1
Процессор 1984
  • Лопато Георгий Павлович
  • Смирнов Геннадий Дмитриевич
  • Чалайдюк Михаил Фомич
  • Пыхтин Вадим Яковлевич
  • Асцатуров Рубен Михайлович
  • Запольский Александр Петрович
  • Подгорнов Анатолий Иванович
  • Пронин Владислав Михайлович
  • Шкляр Виктор Борисович
SU1247884A1
Устройство динамического преобразования адресов 1978
  • Назаров Станислав Викторович
  • Тафинцев Владимир Александрович
  • Титов Виктор Алексеевич
SU765805A1
СПОСОБ ФОРМИРОВАНИЯ ВИРТУАЛЬНОЙ ПАМЯТИ И УСТРОЙСТВО ДЛЯ ЕГО РЕАЛИЗАЦИИ 2011
  • Луценко Андрей Владимирович
RU2487398C1
Устройство для динамического преобразования адреса 1985
  • Невский Владимир Павлович
SU1265771A1
Генератор символов 1988
  • Долгов Александр Николаевич
  • Асанов Равиль Шарифуллович
  • Мишунина Валентина Александровна
SU1525724A1

Иллюстрации к изобретению SU 955 076 A1

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

Формула изобретения SU 955 076 A1

Изобретение относится к вычислительной технике, в частности к системам виртуальной памяти, и может быть использовано в вычислительных машинах и системах с виртуальной памятью. Известно устройство преобразования адресов в системах виртуальной памяти, содержащее запоминающее устройство из дескрипторных регистров, в которые операционная система помещает соответствия между физическими и математическими номерами страниц. Количество дескрипторных регистров равно максимально возможному для одной программы количеству страниц. Математический номер страницы в адресе представляет собой фактически номер дескрипторного регистра, который должен быть исдользован при формировании исполнительного адреса. Информация, хранящаяся в дескрипторных регистрах, - это физические номера страниц. Для определения физического адреса производится дешифрирование математического номера страницы, выбирается соответствующий дескрипторный регистр, содержимое которого определяет соответствующий физический адрес. Недостаток данного варианта - больщие затраты оборудования для реализации дескрипторных регистров, поэтому он применим только в системах с очень малым количеством математических страниц. Второй вариант построения аппаратуры преобразования адресов отличается тем, что каждый из дескрипторных регистров закреплен не за математическим номером страницы, а за определенной физической страницей. Информация, которую операционная система засылает в дескрипторные регистры, представляет собой математические адреса страниц: в дескрипторный регистр, соответствующий определенной физической странице, записывается математический номер, по которому программа будет обращаться к этой странице. Выходная информация из дескрипторных регистров поступает на входы схем совпадения. На другие входы схем совпадения поступает математический номер страницы. При обнаружении соответствия между математическим номером страницы и содержимым своего дескрипторного регистра схемой совпадения формируется сигнал совпадения. Если сигнал совпадения не вцдан ни одной из схем совпадения, то переадресация осуществляется с помощью таблиц переадресации. Недостатками этого варианта являются большие затраты оборудования, необходимого для реализации дескрипторных регистров и схем совпадения, а также необходимость таблиц переадресации. В третьем варианте реализации аппаратуры преобразования каждый из дескрипторных регистров состоит из двух частей, где записываются математические номера страниц и соответствующие им физические номера страниц. Выход разрядов каждого из дескрипторных регистров с математическим номером страницы соединен с первым входом соответствующей схемы совпадения, на второй вход каждой из которых поступает математический номер страницы. При совпадении математического номера страницы в адрес обращения к памяти с математическим номером страницы, записанным в дескрипторном регистре, соответствующая схема совпадения вырабатывает сигналсовпадения. Этот сигнал управляет группой вентилей, соединенных с выходом той части дескрипторногб регистра, где находится физический номер страницы 1. Недостаток такого варианта - низкая скорость работы устройства, обусловленная тем, что при невозможности переадресации с помощью ассоциативных регистров, количество которых мало по сравнению с объемом оперативной памяти вычислительной системы, переадресация осуществляется программными или микропрограммными средствами. Кроме того, этот вариант не решает задачи размещения в оперативной памяти новой вводимой страницы, а также не определяет номера страницы в оперативной памяти, которая возможно будет заме щаться. Наиболее близким к предлагаемому -является устройство для динамического преобразования адресов, содержащее регистр логического адреса, управляющий регистр, регистр физического адреса, ассоциативные регистры и регистр общего назначения, причем соответствующие выходы регистра логического адреса соединены с входами ассоциативных регистров и регистра физического адреса соответственно, выход соответствующих разрядов регистра логического адреса и управляющего регистра соединены с соответствующими входами арифметического устройства процессора, выход которого соединен с входом регистра общего назначения, выход которого соединен с соответствующими входами регистра физического адреса и ассоциативных регистров, соответствующие выходы устройства управления процессора соединены с управляющими входами управляющего регистра, регистров логического и физического адресов, ассоциативных регистров и регистра общего назначения 2. Недостатками известного устройства для динамического преобразования адресов являются, во-первых, низкая скорость работы, обусловленная тем, что при невозможности переадресации с помощью ассоциативных регистров, количество которых мало по сравнению с объемом оперативной памяти вычислительной системы, переадресация осуществляется программными или микропрограммными средствами, во-вторых, ограниченные функциональные возможности, так как устройство не рещает задачи размещения в оперативной памяти новой вводимой страницы, а такАе не определяет номера страницы в оперативной памяти, которая возможно будет замещаться. Цель изобретения - повыщение быстродействия устройства. Поставленная цель достигается тем, что в устройство для управления виртуальной памятью, содержащее блок входных регистров и блок выходных регистров, первые входы которых являются входом адреса оперативной памяти устройства, регистр общего назначения, группу блоков сравнения, блок местного управления, управляющий регистр, выход которого соединен со вторым входом блока входных регистров, выход которого соединен с первыми входами блоков сравнения группы и вторым входом блока выходных регистров, первый выход которого является информационным выходом устройства, а третий вход и первый вход блока местного управления являются входом задания режима устройства, второй вход блока местного управления является входом задания кода операции устройства, третий вход -синхровходом устройства, первый выход - выходом сигнала прерывания устройства, а второй, третий и четвертый выходы соединены соответственно с третьими входами блоков входных и выходных регистров и управляющими входами блоков сравнения группы, четвертый вход блока выходных регистров соединен с первыми выходами блоков сравнения группы, вторые выходы которых соединены с четвертым входом блока местного управления, пятый вход которого соединен со вторым выходом блока выходных регистров, введены группа блоков памяти страниц, генератор расстановки, блок управления замещением и блок коррекции, причем выход блока входных регистров соединен с первыми входами генератора расстановки и блоков памяти страниц группы, вторые входы которых соединены с выходом генератора расстановки и пятым входом блока выходных регистров, второй вход генератора расстановки соединен с первым выходом регистра общего назначения, второй выход которого, первый выход блока управления замещением и пятый выход блока местного управления соединены соответственно с первым, вторым и третьим входами блока коррекции, выход которого соединен с третьими входами блоков памяти страниц группы, первые выходы которых соединены с шестым входом блока выходных регистров и вторыми входами соответствующих блоков сравнения группы, третьи выходы которых соединены с четвертыми входами соответствующих блоков памяти страниц группы, пятые входы которых являются входом кода операции устройства, а вторые выходы соединены с входом блока управления замещением, второй и третий выходы которого соединены соответственно с седьмым входом блока выходных регистров и шестыми входами блоков памяти страниц группы, шестой и пятый выходы блока местного управления соединены соответственно с седьмыми входами блоков памяти страниц группы и третьим входом генератора расстановки. Генератор расстановки содержит группу элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, дешифратор и коммутатор, причем входы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ группы являются первым входом генератора, а выходы соединены с первым входом коммутатора. второй вход которого и вход дешифратора являются вторым входом генератора, выходы дешифратора и коммутатора образуют выход генератора, третий вход коммутатора является третьим входом генератора. Блок управления замещением содержит pyппy коммутаторов, группу элементов ИЛИ, узел приоритета и дешифратор, при/чем входы коммутаторов группы и элементов ИЛИ группы образуют вход блока, выходы элементов ИЛИ группы соединены с входами дешифратора, первый выход которого является первым выходом блока, а второй выход соединен с управляющими входами коммутаторов группы, выходы которых соединены с входами узла приоритета, соответствующие выходы которого образуют второй и третий выходы блока. Блок коррекции содержит элементы И и ИЛИ, причем первые входы первого, второго и третьего элементов И образуют первый вход блока, первых вход четвертого элемента И является вторым входом блока, вторые входы первого, второго, третьего и четвертого элементов И образуют третий вход блока, выходи первого и четвертого элементов И соединены с входами элемента ИЛИ, выход которого и выходы второго, третьего и четвертого элементов И образуют выход Блок местного управления содержит с первого по тринадцатый элементы И, с первого по шестой элементы ИЛИ и первый и второй триггеры, причем входы первого элемента ИЛИ являются четвертым входом блока, а выход соединен с первым входом первого триггера, выходы второго и третьего элементов ИЛИ соединены соответственно с первыми входами первого и тринадцатого элементов И, первые входы со второго по двенадцатый элементов И и входы второго, третьего и четвертого элементов ИЛИ образуют второй вход блока, вторые и третьи входы с первого по тринадцатый элементов И являются соответственно первым и третьим входами блока, выход первого элемента И является вторым выходом.блока, первый вход второго триггера и четвертый вход восьмого элемента И являются пятым входом блока, вторые входы первого и второго триггеров соединены с выходом тринадцатого элемента И, выход которого является четвертым выходом блока, выход первого триггера соединен с четвертыми входами шестого, одиннадцатого и двенадцатого элементов И, выход второго триггера соединён с пятыми входами шестого и одиннадцатого элементов И и четвертым входом седьмого элемента И, выходы восьмого и девятого элементов И соединены с входами пятого элемента ИЛИ, выход которого и выход десятого элемента И являются третьим выходом блока, выходы одиннадцатого и двенадцатого элементов И являются первым выходом блока, выход четвертого элемента ИЛИ и первые два разряда второго входа блока образуют пятый выход блока, выходы второго и четвертого элементов И соединены с входами шестого элемента ИЛИ, выход которого и выходы второго, третьего, пятого, шестого, седьмого и тринадцатого элементов И и два разряда второго входа блока образуют шестой выход блока. На фиг. 1 приведена структурная схема устройства для управления виртуальной памятью; на фиг. 2 - функциональная схема блока входных регистров; на фиг. 3 - функциональная схема блока памяти страниц; на фиг. 4 - функциональная схема блока сравнения; на фиг. 5 - функциональная схема генератора расстановки; на фиг. 6 - функциональная схема блока управления замеш,ением; на фиг. 7 - функциональная схема блока коррекции; на фиг. 8 - функциональная схема блока выходных регистров; на фиг. 9 функциональная схема элемента памяти; на фиг. 10 - функциональная схема компаратора; на фиг. 11 - функциональная схема узла приоритета; на фиг. 12 - функциональная схема формирователя; на фиг. 13 - фунциональная схема блока местного управления; на фиг. 14 - временная диаграмма тактовых импульсов с шины синхронизации. Устройство для управления виртуальной памятью (фиг. 1) содержит блок 1 входных регистров, блок 2 выходных регистров, управляющий регистр 3, регистр 4 общего назначения, блоки 5 сравнения,, блок 6 местного управления, блоки 7 памяти страниц. генератор 8 расстановки, блок 9 управления замещением, блок 10 коррекции, вход 11 адреса оперативной памяти, вход 12 задания режима, синхровход 13, вход 14 задания кода операции устройства, входы 15-23 блока 6 местного управления, выходы 24-29 блока 6 местного управления, вход 30 устройства, выход 31 блока входных регистров, выход 32 сигнала прерывания и информационный выход 33. Блок 1 входных регистров (фиг. 2) содержит регистр- логического адреса 34, вычитатель 35, группу 36 элементов И, выходы 37-39 регистра 34 логического адреса, выходы 40-42 управляющего регистра 3. Блок 7 памяти страниц (фиг. 3) содержит группы 43-52 элементов памяти, регистры 53 .i 54, дешифратор 55, элементы И 56-71 и элементы ИЛИ 72-75. Блок 5 сравнения (фиг. 4) содержит компаратор 76, регистр 77 и элементы И 78 и 79. Генератор 8 расстановки (фиг. 5) содержит группу 80 элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, коммутатор 81 и дешифратор 82. Блок 9 управления замещением (фиг. 6) содержит элементы ИЛИ 83, дешифратор 84. коммутаторы 85 и узел 86 приоритета. Блок 10 коррекции (фиг. 7) содержит элементы И 87-90 и элемент ИЛИ 91. Блок 2 выходных регистров (фиг. 8) содержит регистр 92 физического адреса, регистр 93 замещаемой страницы, регистр 94 флажков, коммутаторы 95 и 96, формирователи 97 и 98 и элемент ИЛИ 99. Э.лемент памяти групп 43-52 блока 7 памяти страниц (фиг. 9) содержит дешифратор 100 адреса, информационный регистр 101, группу 102 элементов И и коммутатор 103. Компаратор 76 (фиг. JO) содержит элемент ИЛИ-НЕ 104 и в каждом разряде - элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 105. Узел 86 приоритета (фиг. 11) блока 9 управления за.мещением содержит элементы И 106 и ИЛИ 107. Формирователи 97 и 98 (фиг. 12) содержат элементы ИЛИ 108 (предполагается, то устройство содер.жит шестнадцать блоков 7 памяти страниц). Блок 6 местного управления (фиг. 13) содержит второй, - седьмой, тринадцатый, восьмой - - двенадцатый и первый элементы И 109-121, шестой, пятый, первый, второй, третий и четвертый элементы ИЛИ 122-127 и триггеры 128 и 129. Предлагаемое устройство предназначено для обеспечения преобразования виртуальяы.х адресов в физические адреса оперативной памяти и определения свободной страницы в оперативной памяти или замещаемой страницы, (сли в г - ративной памяти свободных страниц не найдено, а также для работы в вычислительной системе, управляемой операционными системами, обеспечивающими одиночную и множественную виртуальную память, а также для управления операционной системой, реализующей работу виртуальных мащин. Для обеспечения этих возможностей в управляющем регистре 3 хранятся следующие системные параметры: -величина, определяющая. число сегментов оперативной памяти, отведенных для области ядра операционной системы, обеспечивающей множественную виртуальную память (поступает с выхода 40 управющего регистра 3); -номер виртуальной мащины, работающей в данный момент времени (поступает с выхода 41 управляющего регистра 3). номер множественной виртуальной памяти, которая реализуется в данный момент времени (поступает с выхода 42 управляющего регистра 3). Номер множественной виртуальной памяти и размер ядра операционной системы заносится в управляющий регистр 3 операционной системы, реализующей множественную виртуальную память. Если операционная система не реализует множественную виртуальную память, то эти разряды управляющего регистра 3 обнулены. Номер виртуальной мащины помещается в управляющий регистр 3 операционной системой, реализуюндей эту возможность. Для других типов операционных систем эти разряды управляющего регистра 3 игнорируются. Если вычислительная система работает под управлением только одной операционной системы, не реализующей виртуальные мащины, то эти разряды управляющего регистра 3 обнулены. При работе с операционной системой, реализующей виртуальные машины, загрузка управляющего регистра 3 осуществляется только под ее управлением. Управляющий регистр 3 реализован на D-триггерах. Блок 1 входных регистров предназначен для формирования полного виртуального адреса, который учитывает но.мер множественной виртуальной памяти и номер реализуемой в данный момент виртуальной мащины. Полный виртуальный адрес образуется как совокупность номера виртуальной мащины. номера множественной виртуальной памяти, которые находятся в управляющем регистре 3, и номеров сегмента, страницы и смещения, которые находятся в регистре 34 логического адреса. Номер сегмента, номер страницы и смещение поступают с выходов 37-39 регистра 3 и логического адреса соответственно. Для динамической переадресации значение смещения, находящееся в регистре 34 логического адреса, не используется.

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

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

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

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

7- номер виртуальной машины и номер виртуальной памяти хранятся в группе 43 элементов памяти;

-номер сегмента и номер страницы хранятся в группе 44 элементов па.мяти (номера виртуальной машины, виртуальной памяти, сегмента и страницы указывают номер виртуальной страницы в вычислительной системе );

-бит обращения (хранится в группе 45 элементов памяти) устанавливается в режиме переадресации при каждом обращении к этой странице;

-бит изменения (хранится в группе 46 элементов памяти) устанавливается в ре0жиме переадресации, если обращение к данной странице производится для записи в нее информации;

-биты частоты использования страницы во время ее нахождения в оперативной па5мяти. Если страница используется часто, то устанавливается бит группы 47 элементов памяти, если страница используется менее часто, то устанавливается бит группы 48 элементов памяти, если страница используется редко, то устанавливается бит группы 49

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

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

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

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

5 указатель.

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

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

5

В каждом разряде групп 43-52 элементов памяти содержатся элементы памяти с дещифратором адреса. В элементе памяти (фиг. 9) выход дешифратора 100 соединен с управляющими входами группы 102 элементов И и коммутатора 103, выход которого соединен с выходом информационного регистра 101, выход которого является информационным входом элемента памяти, а управляющий вход информационного регистра 101 соединен с выходом группы элементов И 102, вход которой является управляющим входом элемента памяти, вход дешифратора 100 адреса является адресным входом элемента памяти, выходом которого является выход коммутатора 103. При обращении к элементу памяти на его адресный вход подается необходимый адрес. Этот адрес дешифрируется дешифратором 100, который выбирает один из элементов И из группы 102 элементов И, и коммутатором 103. При чтении информации на управляющий вход элемента памяти подается потенциал логического нуля, который, управляя элементами И группы 102, блокирует запись информации в регистр 101, а значение выбранного дешифратором 100 с помощью коммутатора 103 разряда регистра 101 поступает на выход элемента,, памяти. При записи входная информация с информационного входа элемента памяти поступает на все разряды информационного регистра 101. Требуемый разряд регистра 101 выбирается дешифратором адреса 100 путем выбора одного элемента И из группы элементов И 102. На второй вход всех элементов И группы 102 элементов И, являющийся управляющим входом элемента памяти, подается потенциал логической единицы, разрешая запись информации. В режиме переадресации наряду с адресом физической страницы формируется адрес свободной физической страницы или, если свободной страницы нет, адрес физической страницы, которая возможно будет замещаться. Адрес свободной или замещае,мой физической страницы используется в случае, если в режиме переадресации опр еделится, что требуемой виртуальной страницы нет в оперативной памяти. В каждом блоке 7 памяти страниц определяется свободная страница или условия замещения страниц с помощью элементов И со следующим приоритетом замещения: -свободная страница; -страница не изменялась и использовалась редко; -страница изменялась, но использовалась редко; -страница не изменялась, но использовалась не часто; -страница изменялась, но использовалась не часто. Страницы, используемые часто, а-также страницы, помеченные как ожидающие ввода-вывода, и страницы, удаление которых запрещено, удалению из оперативной памяти не подлежат. Условия удаления хранятся в регистре 53. Условия коррекции битов частоты использования страницы формируются дешифратором 55. Через фиксированные интервалы времени операционная система проверяет состояние битов обращения. Если бит обращения равен нулю, то устанавливается бит более низкой частоты использования или устанавливается бит редкого использования .страницы, если он уже был установлен. Если бит обращения равен единице, то устанавливается бит самой высокой частоты использования страницы. После окончания корректировки битов частоты использования страниц бит обращения устанавливается в иуль. При загрузке страницы в оперативную память устанавливается бит самой высокой активности. Если страница оперативной памяти используется в операциях вводавывода, то ее биты частоты использования не корректируются. Регистры 53 и 54 реализованы на D-триггерах. В блоках 5 сравнения сравниваются с помощью компаратора 76 виртуальные адреса страниц, поступающих с выхода блока входных регистров 1, с номерами виртуальных страниц, находящихся в соответствующих блоках 7 памяти страниц. Если они совпадают во всех разрядах, выбраиная строка страничной таблицы загружена, а страница не используется системой вводавывода, то вырабатывается сигнал, указывающий, что страница доступна. Если произошло совпадение во всех разрядах и выбранная строка страничной таблицы загружена, но страница используется системой ввода-вывода, то вырабатьшается сигнал, указывающий что страница недоступна. В компараторе 76 (фиг. 10) входы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 105 являются входами компаратора 76, а выходы всех элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 105 соединены со входами элемента ИЛИНЕ 104, выход которого является выходом компаратора 76. Генератор 8 расстановки предназначен для реализации алгоритмов, которые расставляют (перемешивают) случайным образом определенные биты виртуального адреса. Заполнение страничной таблицы, находяшейся в блоках 7 памяти страниц, управляется генератором 8 расстановки путем перемещивания случайным образом битов виртуального адреса, чтобы выбрать одноименные ячейки памяти из каждого блока 7 памяти страниц, в которых с наибольшей вероятностью находится требуемый логический адрес, поскольку несколько значений виртуальных адресов могут иметь одно и то же значение расстановки. Алгоритм расстановки, применяемый в генераторе 8 расстановки для определения адреса входа

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

Для непосредственного обращения к страничной таблице требуемый адрес размещается в (п + а) младщих разрядах, регистра 4 общего назначения, причем значения его п младших разрядов поступают на адресные входы групп 43-52 элементов памяти каждого из блоков 7 памяти страниц. С помощью дешифратора 82 выбирается один из блоков памяти страниц 7. С помощью коммутатора 81 выбирается источник адреса: блок входных регистров 1 или регистр 4 общего назначения.

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

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

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

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

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

Блок 2 выходных регистров предназначен для хранения и формирования физического адреса обращения к оперативной памяти, для хранения и формирования виртуального адреса возможно удаляемой страницы и физического адреса, определяющего ее место в оперативной памяти, и для хранения флажков. При переадресации физический адрес оперативной памяти образуется как совокупность смещения, поступающего с выхода 38 регистра 34 логического адреса, и значений, поступающих с выхода коммутатора 81 генератора 8 расстановки и с выхода формирователя 97. С помощью формирователя 97 определяется а старших разрядов физического адреса, определяемых номером блока 7 памяти страниц, опознавшим виртуальный адрес. Если в слове состояния nporpaMNlbi не установлен бит, определяющий режим преобразования адресов, то физический адрес помещается в регистр 92 физического адреса без преобразования. При переадресации, если ни в одном из блоков 7 памяти страниц не произошло опознание виртуального адреса, то в регистр 93 замещаемой страницы помещаются виртуальный адрес и физический адрес страницы, которая будет замещаться и загружаться. Физический адрес образуется как совокупность значений, поступающих с выхода коммутатора 81 генератора 8 расстановки и с выхода формирователя 98, определяющего номер блока 7 памяти страниц, где производится замещение или загрузка страницы. Из этого блока 7 памяти страниц в регистр замещаемой страницы 93 поступает содержимое из соответствующей строки групп 43 и 44 элементов памяти, определяющее виртуальный адрес страницы. В регистре 94 флажков размещены значения флажков. Для формирования номера блока 7 памяти страниц используются формирователи 97 и 98, которые предназначены для преобразования унитарного кода в двоичный. Форм:--р().:i; i(j)ifr. 12) содержит FI ,,.ом р,1,(ря.и- .элемент li, 108, причем /.лоль j., ; г-в ИЛИ iU8 соединены с ccx/rFieicrвук):1|;1ми Е{ходными разрядами формирователя, выходом которого являются выходы адемс 1ГГОВ ИЛИ Ш8. С помощью элемента ИЛИ 99 определяется, опознал ли хотя бы одни из блоков 6 памяти страниц виртуальный адрес.

Блок 10 коррекции предназначен для управления занесение.м информации в груп 1Ы 50-52 элементов памяти каждого блока 7 па.мяти страниц.

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

В блоке 6 местного управления (фиг. 13) первые пря.мые входы элементов И 113, 114, , первые входы элементов ИЛИ 125 и 126 и первые разряды выходов 28 и 29 блока б являются входом 16 блока 6 местногх) управления, первый прямой вход элемента И 112, и второй разряд выхода 29 блока б являются входом 17 блока 6 местного управления, первый прямой вход элемента И 111, и первый вход элемента ИЛИ 127 являются входом 18 блока 6, первый прямой вход элемента И 109, вторые входы элементов ИЛИ 125 и 127 и второй разряд выхода 28 блока 6 является входом 19 блока 6, первый прямой вход элемента И 110 и второй вход элемента ИЛИ 126 являются входом 20 блока 6, выход элемента ИЛИ 125 соединен с первым прямым входом элемента И 121, выход элемента ИЛИ 126 соединен с первым прямым входом элемента И 115, выход элемента ИЛИ 127 является выходом блока 6, вторые прямые входы элементов И 109-116, 118-121 и второй инверсный вход элемента И 117 соединены с выходом 12 соответствующего разряда регистра слова состояния программы, третьи прямые входы элементов И 109-121 соединены с выходом соответствующих разрядов синхровхода 13, выходы элементов И 109,110, 112 - 115, 118 - 121 и элементов ИЛИ 122 и 123 являются выходами блока 6, выходы элементов И 109 и 111 соединены с входами элемента ИЛИ 122, выход элемента И 109 является выходом блока 6, выходы элементов И 116 и 117 соединены с входами эле.мента ИЛИ 123, выход элемента ИЛИ 99 блока 2 выходных регистров соединен с входом триггера 128 и четвертым прямым входом эле.мепта И 116, выход элемента И 115 сЬединеп с входами синхронизации триггеров 128 и 129, выход элемента И 115 является выходом 27 блока 6, выход триггера 128 соединен с четвертыми инверсными входами элементов И 113 и 119 и четвертым прямым входом элемента И 114, выход триггера 129 соединен с пятыми инверсными входами -цементов И I 13 и 119 и четвертым прямым входом :1леыепта И 120, вход триггера 129 ::;.:r;;iii |; с ВЫХОДОМ элеме.чтз ИЛИ 124,

входы которого соединены с выходами элементов И 79 каждого из блоков 5 сравнения. Триггеры 128 и 129 являются D-триггерами.

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

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

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

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

Если процессор работает в режиме преобразования адреса, то устанавливается соответствующий бит слова состояния программы и указанная выще информация за гружается в управляющий регистр 3. Во время выполнения операции, связанной с обращением к оперативной памяти, устройство управления процессора возбуждает вход 16 блока 6 местного управления. Тогда

0 во время действия импульса СО открывается элемент И 121, по сигналу с выхода 25 которого логический адрес записывается в регистр 34 логического адреса блока 1 входных регистров. Б блоке 1 входных регистров формируется адрес виртуальной

5 страницы так, как описано вы.ще. Разряды адреса виртуальной страницы, кроме смещения, поступают на входы группы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 80 генератора 8 расстановки, результат с выхода которой через коммутатор 81 поступает на адресные входы групп 43-52 элементов памяти каждого из блоков 7 памяти страниц. Информация, прочитанная с выбранной ячейки групп элементов памяти 43, 44, 50 и 52, поступает в соответствующий блок 5

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

5 входных регистров 1 и памяти страниц 7. Если сравнение произощло, выбранная строка группы элементов 43-52 памяти загружена и данная страница не используется

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

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

Если с помощью элемента ИЛИ 99 установлено, что доступ к виртуальной странице возможен (единичное состояние триггера 128), то ее сформированный физический адрес записывается в регистр 92 физического адреса по сигналу с выхода 26 блока 6 местного управления, поступающему на управляющий вход регистра 92 физического адреса через элемент ИЛИ .123 и открытый элемент И 116 во время действия импульса С1. Физический адрес страницы поступает на вход регистра 92 через коммутатор 95. Физический адрес формируется как совокупность номера блока 5 сравнения, где произгощло опознание виртуальных адресов, кода, поступающего с выхода коммутатора 81 генератора 8 расстановки, и смещения, поступающего с выхода 39 регистра 34 логического адреса. Двоичный код номера блока 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 блока 10 коррекции.

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

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

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

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

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

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

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

определяющие действительность строки страничной таблицы, и код, определяющий запрещение удаления страницы из оперативной памяти, а устройство управления процессора возбуждает вход 18 блока 6 местного управления. Таким образом, младшая часть физического адреса страницы с выхода регистра 4 общего назначения через коммутатор 81 генератора 8 расстановки поступает на адресные входы группы 43 - 52 элементов памяти каждого из блоков памяти страниц 7. Старщая часть физического адреса дешифрируется дешифратором 82 генератора 8 расстановки, что позволяет выбрать один из блоков 7 памяти страниц (т. е. соответствующую часть страничной таблицы). Коды установки битов - указателей запрещения удаления и действительности строки страничной таблицы поступают на входы групп 51 и 52 элементов памяти каждого из блоков 7 памяти страниц через элементы И 88 и 89 блока 10 коррекции. В момент действия, импульса С1 открывается элемент И 111 и через элемент ИЛИ 122 сигнал с выхода 28 элемента ИЛИ 122 открывает элемент И 65 того блока 7 памяти страниц, который выбран дещифратором 82 генератора 8 расстановки. Сигнал с выхода открытого элемента И 65, поступающий на управляющие входы групп элементов памяти 51 и 52, вызывает запись информации, поступающей на входы групп 51 и 52 элементов памяти с выхода элементов И 88 и 89 блока 10 коррекции соответственно.

При первоначальной загрузке виртуальной страницы в оперативную память информация об этой странице записывается в соответствующую строку страничной таблицы. При этом устройство управления процессора возбуждает вход 19 блока 6. Так как страница вводится в оперативную память только в том случае, если к ней было обращение, то физические адрес оперативной памяти, куда будет загружаться виртуальная страница,.находится в регистре 93 замещаемой страницы. Процессор помещает адрес физической страницы из соответствующих разрядов регистра 93 замещаемой страницы в младшие разряды регистра 4 общего назначения, в соответствующих старших разрядах которого размещается информация о запрещении удаления страницы из оперативной памяти и бит действительности строки страничной таблицы. Адрес виртуальной страницы размещается в регистре 34 логического адреса блока 1 входных регистров, куда записывается по сигналам с выхода 25 блока 6 местного управления через открытый элемент И 121. Таким образом, младщая часть физического адреса с выходов регистра 4 общего назначения через коммутатор 81 генератора 8 расстановки поступает на адресный вход группы 43- 52 элементов памяти каждого из блоков 7 памяти страниц. Старшая часть физического адреса дешифрируется дешифратором 82 генератора 8 расстановки, что позволяет выбрать один из блоков 7 памяти страниц (т. е. соответствуюшую часть страничной таблицы). В момент действия импульса С1 открывается элемент И 109 блока 6, сигнал с выхода 28 которого и сигнал с выхода элемента ИЛИ 122 открывают элементы И 63, 64, 65, 68 и 70 того блока 7 памяти страниц, который выбран дешифратором 82 генератора 8 расстановки. Сигналы с выходов открытых элементов И 63, 64, 65, 68 и 70 поступают на управляющие входы фупп 43-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 общего назначения (а старших разрядов адреса игнорируются) и устройство управления процессора возбуждает вход 20 блока 6 местного управления. Адрес с выхода регистра 4 общего назначения через коммутатор 81 генератора расстановки 8 поступает на адресные входы групп 43-52 элементов памяти каждого из блоков 7 памяти страниц. В момент действия импульса С1 открывается элемент И 115, по сигналу с выхода 25 которого в каждом блоке 7 осуществляется запись информации, прочитанной из групп 45, 47-50 элементов памяти, в регистр 54. Информация, записанная в регистр 54, анализируется дешифратором 55. В момент действия импульса С2 открывается элемент И 110, сигнал с выхода 28 которого через элементы ИЛИ 72 и 74 поступает на управляющие входы групп элементов памяти 45, 47-49 каждого из блоков 7 памяти страниц. При этом биты обращения обнуляются, а в группы 47-49 элементов памяти записываются сформированные дешифратором 55 значения, После окончания одного цикла процедуры корректировки битов частоты использования страниц в регистре общего назначе устанавливается адрес следующей строки страничной таблицы, и цикл процедуры повторяется. Циклы процедуры корректировки повторяются до тех пор, пока все строки страничной таблицы не будут скорректированы. Таким образом, предлагаемое устройство для управления виртуальной памятью полностью реализует процесс преобразования адресов с помощью аппаратных средств, что особенно эффективно при мультипрограммной работе вычислительной системы. За счет такой реализации процесса преобразования адресов его скорость возрастает. Одновременно с процессом переадресации устройство для управления виртуальной памятью осуществляет определение физической страницы, куда в случае отсутствия требуемой виртуальной страницы в оперативной памяти она будет вводиться. Эта физическая страница определяется так, чтобы обеспечить минимальные задержки в .. „ работе вычислительной системы. Эта возможность устройства значительно повышает быстродействие вычислительной системы, так как в известных вычислительных системах для осуществления подобных действий операционная система осуществляет линейнь1Й поиск в таблице свободных страниц и таблице редко используемых страниц и просматривает память битов изменения. Формула изобретения Устройство для управления виртуальной памятью, содержащее блок входных регист|н в и блок выходных регистров, первые входы которых являются входом адреса оперативной памяти, регистр общего назначения, группу блоков сравнения, блок местного управления, управляющий регистр, выход которого соединен со вторым входом блока входных регистров, выход которого соединен с первыми входами блоков сравнения группы и со вторым входом блока выходных регистров, первый выход которого является информационным выходом устройства, а третий вход и первый вход блока местного управления являются входом задания режима устройства, второй вход блока местного управления является входом задания кода операции устройства, третий вход - синхровходом устройства, первый выход - выходом сигнала прерывания устройства, а второй, третий и четвертый выходы соединены соответственно с третьими входами блоков входных и выходных регистров и управляющими входами блоков сравнения группы, четвертый вход блока выходных регистров соединен с первыми выходами блоков сравнения группы, вторые выходы которых соединены с четвертым входом блока местного управления, пятый вход которого соединен со вторым выходом блока выходных регистров, отличающееся тем, что, с целью повыщения быстродействия, в него введены группа блоков памяти страниц, генератор расстановки, блок управления замещением и блок коррекции, причем выход блока входных регистров соединен с первыми входами генератора расстановки и блоков памяти страниц группы, вторые входы которых соединены с выходом генератора расстановки и пятым входом блока выходных регистров, второй вход генератора расстановки соединен с первым выходом регистра общего назначения, второй выход которого, первый выход блока управления замещением и пятый выход блока местного управления соединены соответственно с первым, вторым и третьим входами блока коррекции, выход которого соединен с третьими входами блоков памяти страниц группы, первые выходы которых соединены с щестым входом блока выходных регистров и вторыми входами соответствующих блоков сравнения группы, третьи выходы которых соединены с четвертыми входами соответствующих блоков памяти страниц группы, пятые входы которых являются входом кода операции устройства, а вторые выходы соединены с входом блока управления замещением, второй и третий выходы которого соединены соответственно с седьмым входом блока выходных регистров и щестыми входами блоков памяти страниц группы, шестой и пятый выходы блока местного управления соединены соответственно с седьмыми входами блоков памяти страниц группы и третьим входом генератора расстановки.

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

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

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

Ч является первым выходом блока, а второй

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

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

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

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

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

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

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

фиг.

J5 соединены со входами шестого элемента ИЛИ, выход которого и выходы второго, третьего, пятого, шестого, седьмого и тринадцатого элементов И и два разряда второго входа блока образуют шестой выход блока. Источники информации, принятые во внимание при экспертизе 1 Карцев М. А. Архитектура ЦВМ. М., «Наука, 1978, с. 158-160. 2. Катцан Г. Вычислительные машины системы 370. М., «Мир, 1974, с. 410-438 (прототип).

omfS om

r xi

Фиг. 5

н7

am 52.

am 78от 81 о т 86

Л,

атЗдо от 11 (У

Д77/Л

om4Z Of

W3

Ш

фиг.1Ч

SU 955 076 A1

Авторы

Заблоцкий Владимир Николаевич

Цесин Борис Вульфович

Даты

1982-08-30Публикация

1980-04-21Подача