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

 

ОПИСАНИЕ

ИЗОБРЕТЕНИЯ

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (61) Дополнительное к авт. саид-ву— (22) Заявлено 260979 (21) 2821049/18-24

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

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

Республик (iij 840903 (51) м. К>.з

G F 9/06 с присоединением заявки ¹

Государственный комитет

СССР по делам изобретений и открытий (23) Приоритет

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

Дата опубликования описания 230681 (53) УДК 681. 325 (088. 8) (54) УСТРОЙСТВО ДЛЯ УПРАВЛЕНИЯ БУФЕРНОЙ

ПАМЯТЬЮ

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

Известны устройства для буферизации команд, содержащие буферные регистры, регистры кода операций, дешифратор кода операций, блок наращивания адресов командной информации 10 (блок наращивания адресов), регистр . непосредственного байта, регистр адреса общих регистров, блок анализа заполнения буфера (блок формирования приращений), блок управления выбор- !5 кой команд, блок управления продвижением командной информации ).1.).

Недостатком такого устройства является большая сложность. 20

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

Недостатком такого устройства является большой объем оборудования.

Цель изобретения - сокращение оборудования.

Поставленная цель достигается тем, что в устройство для управления буферной памятью, содержащее первый и второй буферные регистры, блок формирования приращений, регистр кода операций, регистр адреса, первый блок наращивания адресов, причем информационный вход первого буферного регистра соединен с первым входом устройства, выход регйстра адреса соединен с первым выходом устройства, первый разрядный выход второго буферного регистра соединен с первым информационным входом регистра адреса, введен второй блок наращивания адресов, причем первый информационный вход второго буферного регистра соединен с первым входом устройства, адресные входы первого и второго буферного регистра соединены с первым выходом первого блока наращивания адресов, второй выход первого блока наращива ния адресов соединен со вторым выхо,дом устройства, первый разрядный вы840903 ход nepaoro буферного регистра соединен со вторым информационным входом регистра адреса, вторые разрядные выходы первого и второго буферных регистров соединены с третьим выходом устройства, третьи разрядные выходы первого и второго буфврнОго региатра соединены соответственно с первым и ,вторым информационными входами регист ра кода операций, четвертые разрядные выходы первого и второго буферных рвгк"фов соединены соответственно с первым и вторым входами блока формирования приращений, первый выход второ- . го блока наращивания адресов соединен с третьим входом блока формирования.приращений и с адресными входа- 15 ми регистра кода операции и регистра адреса, первый выход блока формирования приращений соединен с входом первого блока наращивания адресов, второй выход блока формирования прира-Щ щвний соединен с входом второго блока наращивания адресов, второй выход второго блока наращивания адресов соединен с четвертым выходом устройства выхОд регистра кода Операции 25 соединен с пятым выходом устройства, четвертый вход блока формирования сигналов приращения соединен со вторым входом устройства.

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

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

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

18, 19, триггеры 20, 21. Цля пояснения работы устройства использованы следующие обОзначения, принятые в системе команд ЕС ЭВМ

RR - формат команды длиной в одно полуслово (два байта);

Р.Х,Я,В5 - форматы команд длиной в два полуслова {четыре байта);

SS — формат команды длиной в три полуслова (шесть байтов);

R„операнда, R - адрес регистра второго операнда;

В„ — адрес первого регистра базы,  — адрес, второго регистра базы;

О,, — смещение адреса первого операнда;

0 — смещение адреса второго операнда;

Х1- адрес регистра индекса второго операнда.

Буферные регистры 1 и 2, входящие в устройство для управления .буферной памятью, имеют общий вход 8 для записи командных слов из памяти. Командные слова поочередно записываются в первый и во второй регистры. Очередность записи определяется содержимым второго младшего разряда счетчика команд первого блока 4 наращивания адресов. Таким образом четные командные слова (второй разряд счетчика О) записываются в первый регистр 1, нечетные (второй разряд = 1)- во вто- рой регистр 2.

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

Блок 4 состоит иэ (и-2) разрядного счетчика 15 и 2-х разрядного регистра 16 с сумматором 17. (и - число разрядов адреса памяти, необходимых для адресации каждого полуслова). Регистр с сумматором служит для наращивания адреса команд на количество полуслов, содержащихся в выполняемой команде.

Если выполняется командра формата

840903

RR, то приращение равно единице, если RX, RS, Я, приращение равно 2, а SS — 3. При начальной загрузке в первом цикле выбирается командное слово, соответствующее начальному адресу последовательности команд, а во втором цикле происходит безусловное наращивание на два содержимого счетчика 15 первого блока 4 .наращивания. адресов и выборка следующего Командного слова в незагруженный буферный регистр.

Блок 3 формирования приращений соединен с теми разрядами буферных регистров 1 и 2, в которых могут на ходиться поля, определяющие формат команды (разряды 0,1 и 16, 17 буферных (5 регистров). Блок 3 анализирует формат команды и вырабатывает соответствующее приращение для первого и второго блоков наращивания адресов 4 и

5. Эти приращения поступают на пер- 20 вый вход блока 3 с входа 14. Переключение блока формирования приращений 3 на анализ возможных (четырех) полей форматов осуществляется под управлением двух младших разрядов 75 счетчика 15 второго блока 5 наращивания адресов. Блок 3 выполнен на коммутаторах 18 и 19 и триггерах

20, 21 ° Первый коммутатор 18 служит для подключения полей форматов команды, находящихся в разных разрядах буферных регистров 1 и 2. Второй коммутатор 19 вырабатывает в соответствии с кодом формата команды, поступающим с первого коммутатора 18, код приращения и выдает его на второй выход блока 3. Первый триггер 21 слу- жит для запоминания на один цикл признака того, что следующая выполняемая команда — формата SS, Это необходимо для проведения второй индек- 40 сации при выполнении команды формата SS. Второй триггер 20 хранит признак начала линейного участка программы для формирования безусловного наращивания адреса в блоке 4 на два. 45

Второй блок наращивания адресов 5 аналогичен блоку 4. Однако блок 5 служит для хранения текущего адреса обрабатываемой команды, тогда как блок 4 управляет опережающей выборкой командных слов из памяти.. Два младших разряда адреса текущей команды в блоке 5 управляют подключени Ем полей формата команд для их анализа в блоке 3 и записью полей кода операции в регистр кода операции 6 и полей адресов регистров общего назначения (полей R< R< R, Х, В) в регистр 7 адресов. Блок 5, начиная с некрторого такта цикла обработки команды, т.е. после модификации адре=40 са на величину выработанного блоком

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

Функционирование устройства рассмотрим на примере обработки следующей последовательности команд: RX„

SS, RX, RR. Пусть pec,íà÷àëà первой команды соответствует четному слбву и четному полуслову (т.е. первый и второй разряды счетчика = О).

Начальный адрес заносится в нулевом цикле одновременно в оба блока наращивания адресов 4 и 5 ° В первом цикле выборки из памяти в буферный регистр 1 выбирается командное слово, в котором полностью находится первая команда RX. Затем происходит безусловное наращивание на два счетчика .блока 4 и во втором цикле выборки из памяти в буферный регистр 2 выбираются первые два полуслова команды SS

Одновременно с опережающей вйборкой, блок 3, подключенный к 0 и 1 разрядам буферного регистра 1, анализирует код формата первой выбранной команды и вырабатывает приращение, равное двум (так как первая команда

RX), которое поступает в блоки 4 и

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

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

RX, происходит модификация счетчиков 15 блоков 4 и 5 (в блоке 4 - на два такта раньше), и блок 3 переключается на анализ кода формата следую щей команды SS. В счетчике блока 4 устанавливается новый адрес, по кото» рому в третьем цикле из памяти выбирается и записывается, в буферный регистр 1 командное слово, содержащее третье полуслова команды SS и первое полуслово следующей команды RX. Так как для выполнения команды SS необходимы две операции индексации (для первого и второго операнда), то совместить с выполнением предыдущей команды удается только одну (первую) индексацию. Первая индексация совмещается с последним циклом выполнение команды RX. В этом же цикле происходит прибавление к счетчикам 15 блоков 4 и 5 части приращения (а именно

840903 единицы), выработанного блоком 3.

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

RX и команду формата RR. Необходимо отметить, что выборка очередного командного слова и занесение в освобоt0 дившийся буферный регистр происходит автоматически, как только сумма приращений, поступающих из блока 3, становится больше двух (но не более, 15 чем на единицу). В общем случае выбор,ка может повторяться каждый цикл и .при постоянном адресе происходит повторая запись информации в один и то же буферНый регистр (подтзерждение информации).

В последнем цикле выполнение команды SS происходит индексация,адресов операндов следующей команды RX.

Первое полуслово команды RX находится во второй половине буферного ре20

25 гистра 1, а второе полуслово - в первой половине регистра 2, и все необходимые для индексации поля доступны.

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

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

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

Таким образом, устройство эффектив-, Формула изобретения

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

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

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

840903

3. Устройство по п. 1, о т л ич а ю щ е е с я тем, что блок формирования приращений содержит два коммутатора и два триггера, причем первый вход первого коммутатора соединен с первым входом блока, второй вход первого коммутатора соединен со вторым 5 входом блока, первый вход второго коммутатора соединен с четвертым входом блока, третий вход первого коммутатора соединен с третьим входом блока, выход первого коммутатора соеди- !О нен со вторым входом второго коммутатора и с входом первого триггера, выход первого триггера соединен с третьим вкодом второго коммутатора; первый выход второго коммутатора соеди- . нен с входом второго. триггера и с первым выходом блока, второй выход второго коммутатора соединен со вторым выходом блока, четвертый вход второго коммутатора соединен с выходом второго триггера.

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

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

М 438990, кл. G 06 F 9/00, 1973»

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

Р 610109, кл. G 06 F 9/00, 1978 (прототип).

840903

1 I+

/ ,г

Фиг.3

Заказ 4767/72 Тираж 745

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

113035, Москва, Ж-35, РаУшскаЯ наб., д. 4/5

Подписное

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

Составитель М. Кудряшев

Редактор Н. Пушненкова Техред И. Майорош Корректор В. Бутяга

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

 

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

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

Изобретение относится к области приема распределяемого содержимого

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

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

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