Буферное запоминающее устройство с ассоциативной адресацией

 

ОПИСАНИЕ

ИЗОБРЕТЕНИЯ

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ

397970

СОюз Соаетских

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

Республик

Зависимое от авт. свидетельства №

Заявлено 03.1,1972 (¹ 1732460/18-24) с присоединением заявки ¹

Приоритет

Опубликовано 17.1Х.1973. Бюллетень ¹ 37

Дата опубликования описания 21.1.1974

М. Кл. G 1lс 15/00

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

Саввта Министрав СССР ла долам изабратений и аткрытий

УДК 681.327.6(088.8) Авторы изобретения

С. С. Андреев, В. Ф. Жиров, В. Г. Комаидровский, В. Л. Ли, В. И. Смирнов и В. 3. Шнитман

Заявитель

БУФЕРНОЕ ЗАПОМИНАЮЩЕЕ УСТРОЙСТВО

С АССОЦИАТИВНОЙ АДРЕСАЦИЕЙ

Известно буферное запоминающее устройство (БЗУ) с ассоциативной адресацией, содержащее блок регистров адреса, подключенный к выходам двухвходовых схем «И», входы которых связаны со счетчиком и первым тригге- 5 ром, .первый блок управления, выход которого подсоединен к счетчику, связанному со вторым блоком управления и блоком образования исполнительного адреса, блок регистров команды, входы которого подключены . к 10 третьему блоку управления, второй триггер, подключенный к блоку схем сравнения, соединенному с выходом счетчика, первый блок определения номера регистра команды, связанный с блоком нумерации регистров коман- 15 ды, подключенным ко второму блоку определения номера регистра команды.

Наличие БЗУ для командной информации позволяет ускорить ее обработку, потому что время или цикл обращения к БЗУ значи- 20 тельно меньше времени обращения к основному ЗУ.

Значительную часть времени работы ЦВМ составляет работа на циклических участках программ. При .наличии БЗУ накопленные в 25 нем команды циклических участков могут быть многократно использованы без обращения к основному ЗУ, хотя время выполнения различных циклических участков программы зависит, например, от числа команд в цикле, ЗО перехода к более старшим по порядку следования в программе командам или возврат K ранее выполнявшимся.

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

Предложенное БЗУ отличается от известного тем, что оно содержит дополнительный блок определения номера регистра команды, первый вход которого подключен,к выходу первого блока определения номера регистра команды, а второй — к единичному выходу второго триггера, блок трехвходовых схем

«И», первые входы которых, подсоединены к выходу дополнительного блока определения номера регистра команды, .вторые — к нулевому выходу первого триггера, третьи — к единичному выходу второго триггера, который подключен ко входу первого блока управления, а выходы — к первому блоку определр= ния номера регистра команды.

397970

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

На черте>кс изображена блок-схема БЗУ.

Устройство содержит блок регистров команды 1, блок регистро в адреса 2, счетчик 8, блок схем сравнения 4, первый блок управления (БУ) 5, второй БУ 6, первый блок определения номера регистра команды (БОНРК)

7, блок нумерации регистров команды (БНРК) 8, второй БОНРК 9, третий БУ 10, блок задания номера регистра команды

БЗНРК 11, четвертый БУ 12, блок образования исполнительного адреса 13, первый 14 и второй 15 триггеры, двухвходовые схемы «И»

16, дополйительный БОНРК 17, блок трехвходовых схем «И» 18, регистр 19. Выход второго

БУ 6 подключен ко,входу основного ЗУ 20, выход которого связан с третьим БУ 10.

Первый .вход 21 дополнительного БОНРК

17 подключен .к:выходу первого БОНРК 7, а второй 22 — к единичному выходу 28 триггера 15.

Первые входы 24 блока трех входовых схем

«И» 18 подсоединены к выходу 25 блока 17, вторые .входы 26 — m первому выходу 27 триггера 14, третьи входы 28 — к единичному выходу 23 триггера 15, а выходы 29 — к.первому

БОНРК 7.

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

Допустим число регистров команды (РК) в блоке 1 равно четырем, т. е. в блоке 1 может быть информация о командах, которые можно записать,в четыре слова. Каждому РК блока 1 может быть присвоен свой номер, определяющий местоположение регистра в устройстве. Обозначим регистры (начиная сверху) через РК> — РКз. В БЗУ с ассоциативной адресацией каждому из РК соответствует свой регистр адреса (PA). В данном случае блок 2 содер>кит также четыре регистра РА —

РАЗ. Адреса в блоке 2 являются адресами ячеек основного ЗУ 20, содержимое которых вызвано,в ячейки БЗУ.

Допустим, из ЗУ 20;в блок 1 выб|раны команды. Очередной адрес в счетчике 3 адресов команд (слов) сравнивается со всеми адресами в блоке 2. При обращении за очередной командой программы возможны две ситуации: содержимое счетчика 8, определяющее адрес очередной команды .программы, либо со впадает с содержимыми одного из регистров блока 2, представляющим адрес слова в блоке 1, либо не совпадает. Факт совпадения адресов фиксируется триггером 14.

В лервом случае триггер 14 посылает в блок

6 сигнал блокировки обращения к ЗУ 20, и производится обращение к БЗУ. Во втором случае триггер 14 разрешает обращение к ЗУ

20, код адреса счетчика 3 передается в ЗУ 20, через цепи считывания которого информации по адресу поступают ia БУ 10. В тот же период обращения .к ЗУ 20 через схемы «И» 16 код адреса из счетчика 8 поступает в тот ре5

ЗО

65 гистр блока 2, который соответствует регистру из блока 1, в который принята информация ЗУ 20. Номер нужного регистра команды и соответспвующего ему регистра адреса ollределястся блоком 8, задающим порядок, очередность заполнения регистров блока 1. Отсюда следует, что каждому регистру команды соответствует свой номер очередности его за|полнения, т. е. изменения его содержимого.

Существуют разные способы и схемные решения задания очередности заполнения регистров блока 1, нумерации его регистров и регистро в блока 2. Одним из них является спосо б заполнения IIIO ста ршинству, т. е. информация заносится,в тот РК, обращение к которому не производилось,по,времени дольше, чем к другим. При,каждом обращении за командами нумерация очередности ячеек БЗУ меняется, при совпадении ад реса в счетчике > с одним из адресов в блоке 2 номер этого совпавшего регистра, а, следовательно, и номер соответствующего ему регистра блока 1, делается с помощью блоков 9 и 8 наименьшим (регистр становится, самым младшим). Номера всех остальных РК возрастают.

При несовпадении адресов PK с самым большим номером очередности (самый «старший» РК), что определяют блоки 8 и 7, принимает под управление блока 10 новую командную информацшо пз ЗУ 20, его PA принимает содержимое из счетчика 8 через схемы

«И» 16. В результате номер очередности этого РК делается наименьшим, а нумерация очередности всех остальных PK из блока PA и,блока 2 возрастает относительно этого младшего в порядке их очередности. После приема нового сло ва из ЗУ 20 в блок 1 содержимое соответствующей команды из регистра выдается,под управлением блока 12, указание, которому о номере нужного РК выдает блок 11, получающий информацию о номере РК от блока 8, управляющего приемом в данный РК. Из блока 1 информация через блок 12 поступает на регистр 19, с которого информация поступает на обработку, т. е. дешифрацию кода операции, образование исполнительного адреса и т, д. Код операции может определить наличие команды передачи управления (условной или безусловной), что фиксируется триггером 15. В этом случае блок 18 образует исполнительный адрес этой, команды, который должен быть передан в счетчик 8. При передаче управления БУ 5 блокирует прибавление единицы к содержимому счетчику 3 и обеспечивает, прием исполнительного адреса из блока 13 в счетчик 8.

При совпадении адресов в блоке 2 и счетчи ке 3 триггер 14 выдает БУ 6 сигнал блокировки обращения к ЗУ 20, блок 9 фиксирует номер РК по:номеру его РА, чем определяется работа блоков 11 и 12,по выдаче информации на регистр 19 из блока 1 и блока 8 по изменению нумерации, т. е. очередности порядка заполнения ячее1к БЗУ нри последующем несовпадении (номер =овпавшего РК по

397970

Таблица 1 а — 3 — РА, а — 2 — РА, а — 1 — РА, а — — РА, к — 3 — РК„ к — 2 — PK к — 1 — PK, к — — РК, Таблица 2 а + 1 — РА, а — 2 — PA а — 1 — PA, а — — РА, о к — 3 — PK к — 2 — PK, к — 1 — Р K.Таблица 3 а — 1 — PA,, а — 2 — РА, а — 1 — РА, а — — РА, к — 1 — PK к — — PK, К2 к — 2 — РК, 40

Таблица 4 к — — PK, к — 3 — PK, к — 2 — РКя к — 1 — PKs

a — 3 — PAo а — 2 — РА, а — 1 — РА, а — — РА,, 60

65 его РЛ становится наименьшим, относительно которого номера всех остальных возрастают

H порядке их Оче1эедности) .

При та,ком способе очередности заполнения блока 1 могут возникнуть режимы, затрудняющие ускорение работы БЗУ по программе. .Возможная ситуация нумерации очередности обращения к РК по приему информации показана в таблице 1, где обозначено: а — адрес слова, к — порядковый (очередной) номер обращения. В,данном случае старшинство регистров блока 1 следующее: РК, РКь РК2, РКз, причем РКо — старший.

Считываемое из ЗУ 20 новое слово при несовпадении записывается .в РКО, который,становится младшим, повышая тем самым старшинство всех остальных РК (таблица 2).

Следующее считывание из ЗУ 20 происходит,в РКь Общее продвижение регистров по старшинству по очередности нарушается, если совпадает адрес в счетчике 8 с одним из адр есов в бл оке 2.

Допустим в РК (см. табл. 2) имеется команда передачи управления, исполнительный адрес которой должен переда вать управление «назад» по адресу а — 3. Команда на

РКз передается в блок 19, и триггер 15 устанавливается в единичное состояние, позволяя тем самым блоку 5 передавать исполнительный адрес команды, передачи у|правления из блока 18 в счетчик 8, и блокируя .прибавление единицы к содержимому счетчика 8. Прибавление единицы к содержимому счетчика 8 осуществляется в отсутствие управления .при работе на линейных участках программы. Изза выборки «вперед» в РКц находятся команды,,следующие по программе за командами, находящимися в РКЗ. В результате адреса из счетчика 8 и блока 2 не совпадают, и информация. из ЗУ 20 по исполнительному адресу команды передачи управления принимается в старший РК, которым является РКь Это нежелательно, так как именно в этом РК могут находиться выбранные ранее команды цикла.

Команды слова с адресом а+1, следующего за командой передачи управления, не входят в число команд цикла, однако в блоке 1 содержатся в РКр, занимая место ко манд цикла. При таком цикле в такой о рганизации приема информации в БЗУ резко снижается его эф фект ион î c Tb.

Очевидно. что имеющееся в блоке 1 команды цикла не исключаются, если команда передачи управления управляется организацией приема из ЗУ 20 по адресу не в старший РК (с порядковым номером обращения к — 3 в таблице 2), à ia РК с предварительно выбранными командами.

Прп наличии в РК команды передачи управления,прием нового слова пз ЗУ 20 по адресу этой команды передачи управления, не совпадающему нп с одним из адресов в

РЛ, производится в РК, с предварительно выбранными командами, т. е. в РК, порядковьш номер обращения к которому является следующим по отношению к порядковому номеру обращения РК, в котором находится команда передачи управления.

Это осуществляется следующим образом.

При установке триггера 15 в единичное состояние блок 17 определяет номер РК с,предварительно выбранными командамп. Значение номера РК:передается через схемы «И» 18 в блок 7 для задания номера РК, для приема по адресу в счетчик 8 — исполнительному адресу команды передачи управления,— из ЗУ

20 с .помощью блока 10 в соответствующий этому номеру РК, информации, относящейся к циклу. Эта информация помещается вместо команд слова, выбранного ранее, «вперед» по отношению к команде, передачи управления.

Изменение нумерации очередности обращения к блоку 1 при совпадении, например, PAi из блока 2 с содержимым счетчика 8 выглядит как.показано в таблице 3.

Старшинство регистров блока 1 при этом следующее: РК:, РКЗ, PI@, РКь

При несовпадении адреса из счетчика 8 с адресами из блока 2 и наличии команды передачи управления в РК, .в РАО записывается адрес из счетчика 8, в РКО принимается слово из ЗУ 20 по этому адресу, затем из этого PI 0 информация поступает на регистр 19. В результате нумерация очередности обращения к регистрам блока 1 изменяется так, как показано в таблице 4.

Старшинство регистров при этом следующее: РК,, РК,, РКО.

В дальнейшем адреса пз счетчика 8 и блока

2 совпадают, так как все команды цикла .имеются в блоке 1. Причем счетчик 8 работает в обычном режиме увеличения своего содержимого на единицу: выполняется участок программы внутри цикла, 397970

Предмет изобретения

Составитель В. Рудаков

Техред Л. Богданова Корректор Т. Добровольская

Редактор Л, Утехина

Заказ 3713, 13 Изд. № 23а Тираж 575 Подписное

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

Москва, Ж-35, Раушская наб., д. 4/5

Типография, пр. Сапунова, 2

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

10 которых подсоединены к выходу дополнительного блока определения номера регистра команды, вторые — к нулевому выходу первого триггера, третьи — к единичному выходу второго триггера, который подключен ко вхоl5 ду,первого блока управления, а выходы — к пер вому блоку определения номера регистра команды.

Буферное запоминающее устройство с ассоциативной адресацией Буферное запоминающее устройство с ассоциативной адресацией Буферное запоминающее устройство с ассоциативной адресацией Буферное запоминающее устройство с ассоциативной адресацией 

 

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

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

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

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

Изобретение относится к вычислительной технике

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

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

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

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