Стековое запоминающее устройство

 

Изобретение относится к цифровой вычислительной технике. Цель изобретения - повышение производительности вычисления за счет сокращения числа обращений в оперативную память. Изобретение можно использовать в устройстве обработки данных . Содержит блок 1 управления, блок 2 регистров, арифметико-логическое устройство 3 реверсивные счетчики 4 и 8, первый и второй формирователи 5 и 6 адреса к мультиплексор 7. 2 ил., 1 табл.

СОЮЗ СОВЕТСКИХ

СОЦИАЛИСТИЧЕСКИХ

РЕСПУБЛИК

ГОСУДАРСТВЕННЫЙ КОМИТЕТ

ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ

ПРИ ГКНТ СССР

1

ОПИСАНИЕ ИЗОБРЕТЕНИЯ ОМа п итанЮ S0/7

К- АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (21) 4336898/24 (22) 26.10.87 (46) 30.05.92, Бюл. N 20 (72) B.Ï. Морозов, В.Н, Б,арулин, С.Г. Наумов, В.Д. Расторгуев, Ю.В, Рычагов, А.Н, Терехов и Н,Ф. Фоминых (53) 681.325(088.8) (56) Авторское свидетельство СССР

N 752484, кл, С 11 С 19/00, 1978.

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

М 1304078, кл. G 11 С 19/00, 1985. (54) С ТЕ КО В О Е ЗАПОМИНАЮЩЕЕ У СТРОЙСТВО

„„, Ц„„1737456 А1 (я)ю G 06 F 12/00, G 11 С 19/00 (57) Изобретение относится к цифровой вычислительной технике. Цель изобретения— повышение производительности вычисления за счет сокращения числа обращений в оперативную память. Изобретение можно использовать в устройстве обработки данных, Содержит блок 1 управления, блок 2 регистров, арифметика-логическое устройство 3 реверсивные счетчики 4 и 8, первый и второй формирователи 5 и 6 адреса к мультиплексор 7. 2 ил., 1 табл.

1737456

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

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

На фиг. 1 представлен пример использования изобретения в устройстве для обработки данных; на фиг. 2 — пример обработки выражения в польсксй инверсной записи.

Устройство обработки данных содержит блок 1 управления, блок 2 регистров (стек), арифметико-логическое устройство 3, пер,вый реверсивный счетчик 4, первый 5 и второй 6 формирователи адреса, мультиплексор 7 и второй реверсивный счетчик 8.

Блок 1 состоит из коммутатора управления счетчиками 4 и 8, выполненного на элементах И 9 — 12 и элементе НЕ 13.

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

Второй формат содержит поле КОП и поле адреса операнда (АД) в памяти, Этот формат используется для загрузки стека данными из памяти и выгрузки из него.

Третий формат содержит поле КОП и поле адреса регистра (Н4), в котором задается номер любого регистра внутри стека относительно его вершины. Регистр на вершине стека считается О, регистр первого уровня под вершиной стека имеет относительный номер 1 и т.д, Команды этого формата позволяют осуществлять доступ к любому регистру в глубине стека.

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

Работа устройства начинается с сброса в ноль счетчиков 4 и 3. Различают два режима обмена данными с оперативной памятью: одиночный и групповой. В одиночном режиме выполняется обмен данными между вершиной стека и оперативной памятью, Любая загрузка в стек в этом режиме увеличивает на "1" содержимое счетчика 4, а выгрузка из стека уменьшает на "1" содержимое счетчика 4. Групповой режим отличается от одиночного тем, что обмен данными с памятью выполняется от дна стека, на который указывает счетчик 8. В этом режиме загрузка или выгрузка соответственно увеличивает или уменьшает на "1" содержимое счетчика 8.

5 В качестве примера рассмотрим счет по формуле а + (с — Ь х а) х (а + d), 10 В обратной польской записи она имеет вид

acbdx — tad + х +.

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

4(а), 4(с), 4(b), 4р, х, —, 4(d), 4р, +, х, +, 20 где (а), ..Ä (d) — адреса операндов а, „., б в памяти ЦВМ, Состояние стека при выполнении этой последовательности команд на фиг. 2.

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

Если принять, что коды команд и адреса операндов в памяти для первого и второго

35 случаев занимают по 1 байту, то длина командного кода для обоих случаев составляет

17 байтов. Если адреса операндов в памяти занимают по 2 байта(что наиболее реально), то командный код для предлагаемого уст40 ройства короче на 2 байта. Следовательно, предлагаемое устройство позволяет сократить время счета и длину командного кода, Рассмотрим пример использования предлагаемого устройства для организации

45 циклов.

Пусты — переменная цикла, N — верхний предел. При входе в цикл на вершину стека помещают значение С, на следующий ни>кний уровень — N. При каждом повторении

50 цикла,! увеличивается на единицу и, если

i< N, тоуправление передается на начало цикла, в противном случае со стека снимают две верхние позиции, а управление передается на следующую команду. При организации

55 вложенных циклов на вершине стека располагаются i u N внутреннего цикла, а в глубине стека — параметры внешнего цикла, В чисто стековых операционных устройствах с.доступом только к вершине стека

1737456 пие адресного ) Формат нз ад .входе

Ннсмоникс Семантика коиапды команды

Действив, выполняеиые над указателем стека s конце такта

Дна не слова команды

Читать на стек значение из памяти

SP: =СР+!

В: $Р+1 КВ АД

ЧР

Читать на стек значение нз регистра SP!=SP+1

К4 Н4.

А: $Р-Н В: «ВГ+1

Писать в память значение из стека

$1 $"-1

ПР

КВ АД

Писать из стека значение в регистр $Р: $Р-1

К12 Н4

Л: ВР

".:ВРИ

Сумма

Разность

Произведение (бинарные, стскоеые операции) $: SP В! SP"! КВ

SP: SÐ-1

Инвертирование знака на яср!хи c (Группа унарних стековых операций) SP:-SP

Р В =$" К8

Регистровая сумма целых, результат s регистр Я $Р-1

Р+

К12 Н4 ч

А: SP

В! $Р-Н

П р и м е ч а н и е, К4, К8, К12 - число битов в коде операции; $Г - указатель с-.ека, Формируемый счетчиками 4 и 8; Н4 (н) - номер регис ра относительно текущей вершины стека; X - -значение безразлично; ДД - поле адресации. переменные цикла храняться в памяти и доступ к ним требует дополнительных временных затрат.

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

В то же время в случае использования статических языков высокого уровня (ЯВУ) (типа Ада, Алгол 68, Модула 2) уже на этапе трансляции известно, сколько регистров потребует процедура для своей работы, т.е, каков ее "аппетит", Зная "аппетит" процедуры и следя за заполненностью регистровой памяти, можно выгружать в оперативную память только часть регистров. Если свободных регистров больше, чем требуется процедуре, то выгрузка вообще может не производиться. Это позволяет экономить время вызова процедуры и возврата, С этой целью предлагаемое устройство содержит счетчик 8. Зная содержимое счетчиков 4 и 8, можно судить о заполненности стека. Если требуется выгрузка стека при вызове процедуры, то требуемое количество регистров выгружается от дна стека.

При выгрузке каждого регистра состояния счетчика 8 увеличивается на единицу, а при загрузке (при возврате из процедуры) уменьшается на единицу, На выход мультиплексора 7 в том случае поступает содержимое счетчика 8. Состояние счетчика 4 при этом не меняется.

Введение подвижного дна стека позволяет выгружать из него наименее часто ис5 пользуемые переменные, так как именно они лежат в глубине стека. Так в приведенном примере организации вложенных циклов на вершине стека лежат переменные внутреннего цикла, т.е, наиболее часто ис10 пользуемые объекты.

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

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

30 счетчиков соединены с первым и вторым информационными входами мультиплексора, выход которого соединен с первыми информационными входами первого и второго формирователей адреса, .вторые информа35 ционные входы которых соединены с входом смещения адреса устройства.

1737456

<х+(с- Ва)х(и+4) = цс3д х- "у4+ «+

17ЙВлу обр щвюй

Ф лкмялъ 4

Составитель А. Ушаков

Редактор Л, Пчолинская Техред M,Ìîðãåíòàë Корректор T. Малец

Заказ 1893 Тираж Подписное

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

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

Производственно-издательский комбинат "Патент", г. Ужгород, yn,Гагарина, 101

Стековое запоминающее устройство Стековое запоминающее устройство Стековое запоминающее устройство Стековое запоминающее устройство 

 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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