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

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

Info

Publication number
SU1737456A1
SU1737456A1 SU874336898A SU4336898A SU1737456A1 SU 1737456 A1 SU1737456 A1 SU 1737456A1 SU 874336898 A SU874336898 A SU 874336898A SU 4336898 A SU4336898 A SU 4336898A SU 1737456 A1 SU1737456 A1 SU 1737456A1
Authority
SU
USSR - Soviet Union
Prior art keywords
stack
multiplexer
memory
register
inputs
Prior art date
Application number
SU874336898A
Other languages
English (en)
Inventor
Владимир Петрович Морозов
Валерий Николаевич Барулин
Сергей Герасимович Наумов
Виктор Дмитриевич Расторгуев
Юрий Борисович Рычагов
Андрей Николаевич Терехов
Николай Федорович Фоминых
Original Assignee
Предприятие П/Я А-1129
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Предприятие П/Я А-1129 filed Critical Предприятие П/Я А-1129
Priority to SU874336898A priority Critical patent/SU1737456A1/ru
Application granted granted Critical
Publication of SU1737456A1 publication Critical patent/SU1737456A1/ru

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

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

Description

С
XJ СА
N ел о
Изобретение относитс  к цифровой вычислительной технике и может быть использовано дл  создани  устройств обработки данных, выполн ющих операции в стековом режиме (обратной польской записи).
Цель изобретени  - повышение производительности вычислений за счет сокращени  числа обращений в оперативную пам ть.
На фиг. 1 представлен пример использовани  изобретени  в устройстве дл  обработки данных; на фиг. 2 - пример обработки выражени  в польсксй инверсной записи.
Устройство обработки данных содержит блок 1 управлени , блок 2 регистров (стек), арифметико-логическое устройство 3, первый реверсивный счетчик 4, первый 5 и второй 6 формирователи адреса, мультиплексор 7 и второй реверсивный счетчик 8.
Блок 1 состоит из коммутатора управлени  счетчиками 4 и 8, выполненного на элементах И 9-12 и элементе НЕ 13.
Устройство обработки данных работает следующим образом.
Машинные команды, работающие с предлагаемым устройством, имеюттри формата . Первый формат содержит только поле кода операции (КОП ).В этом формате задаютс  соответствующие арифметические или логические операции над одним или двум  регистрами на вершине стека.
Второй формат содержит поле КОП и поле адреса операнда (АД) в пам ти. Этот формат используетс  дл  загрузки стека данными из пам ти и выгрузки из него.
Третий формат содержит поле КОП и поле адреса регистра (Н4), в котором задаетс  номер любого регистра внутри стека относительно его вершины. Регистр на вершине стека считаетс  0, регистр первого уровн  под вершиной стека имеет относительный номер 1 и т.д. Команды этого формата позвол ют осуществл ть доступ к любому регистру в глубине стека.
Типовые команды, управл ющие работой предлагаемого устройства, приведены в таблице. Дл  определенности глубина регистрового стека выбрана равной 16.
Работа устройства начинаетс  с сброса в ноль счетчиков 4 и 3. Различают два режима обмена данными с оперативной пам тью: одиночный и групповой. В одиночном режиме выполн етс  обмен данными между вершиной стека и оперативной пам тью. Люба  загрузка в стек в этом режиме увеличивает на 1 содержимое счетчика 4, а выгрузка из стека уменьшает на 1 содержимое счетчика 4. Групповой режим отличаетс  от одиночного тем, что обмен
данными с пам тью выполн етс  от дна стека , на который указывает счетчик 8. В этом режиме загрузка или выгрузка соответственно увеличивает или уменьшает на 1 содержимое счетчика 8.
5В качестве примера рассмотрим счет по
формуле
а + (с - b x a) x (a + d).
10В обратной польской записи она имеет
вид
acbdx - tad + x +.
15 Использу  команды из таблицы, вычисление этого выражени  может быть запрограммировано следующим образом:
20
, , , 4p, x, -, , 4p, +, х, +,
где - адреса операндов а d в
пам ти ЦВМ.
Состо ние стека при выполнении этой последовательности команд на фиг. 2.
Таким образом, структура предлагаемого устройства позвол ет хранить многократно используемые или промежуточные значени  непосредственно на регистрах стека. Это экономит число обращений к оперативной пам ти. В случае обычной адресации стека требуетс  два дополнительных обращени  в пам ть.
Если прин ть, что коды команд и адреса операндов в пам ти дл  первого и второго
случаев занимают по 1 байту, то длина командного кода дл  обоих случаев составл ет 17 байтов. Если адреса операндов в пам ти занимают по 2 байта(что наиболее реально), то командный код дл  предлагаемого устройства короче на 2 байта. Следовательно, предлагаемое устройство позвол ет сократить врем  счета и длину командного кода. Рассмотрим пример использовани  предлагаемого устройства дл  организации
циклов.
Пусть i - переменна  цикла, N - верхний предел. При входе в цикл на вершину стека помещают значение С, на следующий нижний уровень - N. При каждом повторении
цикла, i увеличиваетс  на единицу и , если К N , то управление передаетс  на начало цикла , в противном случае со стека снимают две верхние позиции, а управление передаетс  на следующую команду. При организации
вложенных циклов на вершине стека располагаютс  i и N внутреннего цикла, а в глубине стека - параметры внешнего цикла,
В чисто стековых операционных устройствах с доступом только к вершине стека
переменные цикла хран тьс  в пам ти и доступ к ним требует дополнительных временных затрат.
В любом операционном устройстве, имеющем регистровую пам ть (с  вным за- данием номера регистра или стекового вида ), возникает проблема запоминани  и восстановлени  этих регистров при выходе процедуры. Наиболее распространенное решение - выгрузка в оперативную пам ть всех регистров.
В то же врем  в случае использовани  статических  зыков высокого уровн  (ЯВУ) (типа Ада, Алгол 68, Модула 2) уже на этапе трансл ции известно, сколько регистров по- требует процедура дл  своей работы, т.е. каков ее аппетит. Зна  аппетит процедуры и след  за заполненностью регистровой пам ти, можно выгружать в оперативную пам ть только часть регист- ров. Если свободных регистров больше, чем требуетс  процедуре, то выгрузка вообще может не производитьс . Это позвол ет экономить врем  вызова процедуры и возврата . С этой целью предлагаемое устройст- во содержит счетчик 8. Зна  содержимое счетчиков 4 и 8, можно судить о заполненности стека. Если требуетс  выгрузка стека при вызове процедуры, то требуемое количество регистров выгружаетс  от дна стека. При выгрузке каждого регистра состо ни  счетчика 8 увеличиваетс  на единицу, а при загрузке (при возврате из процедуры) уменьшаетс  на единицу. На выход мультиплексора 7 в том случае поступает содержи-
Читать на стек значение из пам ти
Читать на стек значение кэ регистра Писать в пам ть значение из стека
Писатр из стека значение а регистр
Разность
Произведение (бинарные , стековые операции )
Инвертирование знака но псрши с (группа унарных стековых операций)
Регистрова  сумма целых, результат о регистр
Л:-.хB:- SP+1КЗ АД
A:- SP- IBl-Sr-MKl| (Й
A:«SPB:-XK8 АД
A:-SP :-SP-llK12 Hii
S: SPB: SP-1K8
A:-SP H:-sr
КЗ
SJ : sr-1A: SP B:-SP-H K12 H I
ри
и е и а н и e. Kk, к8, К12 - число битов s коде оп-рации; SP - казатель с-зкл. Формируемый счотч клми it и 8; (н) - н0,-..ер реги- с.ра отеюсительно текущей вершины стека; X - э ачсние безразличие .; ЛД - поле адресации.
мое счетчика 8. Состо ние счетчика 4 при этом не мен етс .
Введение подвижного дна стека позвол ет выгружать из него наименее часто используемые переменные, так как именно они лежат в глубине стека. Так в приведенном примере организации вложенных циклов на вершине стека лежат переменные внутреннего цикла, т.е. наиболее часто используемые объекты.

Claims (1)

  1. Формула изобретени  Стековое запоминающее устройство, содержащее блок регистров, информационный вход и выход которого  вл ютс  информационным входом и выходом устройства, два реверсивных счетчика, мультиплексор и блок управлени , соответствующие выходы которого соединены с суммирующими и вычитающими входами первого и второго реверсивных счетчиков и с управл ющим входом мультиплексора .отличающеес  тем, что, с целью повышени  производительности вычислений за счет сокращени  числа обращений в оперативную пам ть, в него введены первый и второй формирователи адреса, выходы которых соединены с первым и вторым адресными входами блока регистров, выходы первого и второго реверсивных счетчиков соединены с первым и вторым информационными входами мультиплексора , выход которого соединен с первыми информационными входами первого и второго формирователей адреса, вторые информационные входы которых соединены с входом смещени  адреса устройства.
    Л:-.хB:- SP+1КЗ АД
    A:- SP- IBl-Sr-MKl| (Й
    A:«SPB:-XK8 АД
    A:-SP :-SP-llK12 Hii
    S: SPB: SP-1K8
    A:-SP H:-sr
    КЗ
    a+ c-8a}x(a+d} acBa -+ad+x+
    .
    4P
    nSoufn
    обращений $ пам ть 4
SU874336898A 1987-10-26 1987-10-26 Стековое запоминающее устройство SU1737456A1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
SU874336898A SU1737456A1 (ru) 1987-10-26 1987-10-26 Стековое запоминающее устройство

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SU874336898A SU1737456A1 (ru) 1987-10-26 1987-10-26 Стековое запоминающее устройство

Publications (1)

Publication Number Publication Date
SU1737456A1 true SU1737456A1 (ru) 1992-05-30

Family

ID=21339607

Family Applications (1)

Application Number Title Priority Date Filing Date
SU874336898A SU1737456A1 (ru) 1987-10-26 1987-10-26 Стековое запоминающее устройство

Country Status (1)

Country Link
SU (1) SU1737456A1 (ru)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Авторское свидетельство СССР Ms 752484, кл. G 11 С 19/00, 1978. Авторское свидетельство СССР № 1304078, кл. G 11 С 19/00, 1985. *

Similar Documents

Publication Publication Date Title
US4212076A (en) Digital computer structure providing arithmetic and boolean logic operations, the latter controlling the former
US4594682A (en) Vector processing
US4675809A (en) Data processing system for floating point data having a variable length exponent part
US3328768A (en) Storage protection systems
US3161763A (en) Electronic digital computer with word field selection
US3909797A (en) Data processing system utilizing control store unit and push down stack for nested subroutines
EP0185215A2 (en) Forth-like language microprocessor
JPS60151761A (ja) 10進演算用に連続したデ−タ装置をアクセスするためのニブルおよびワ−ド・アドレス指定可能なメモリ−
JPS5918737B2 (ja) デ−タ処理システム
US4005391A (en) Peripheral interrupt priority resolution in a micro program data processor having plural levels of subinstruction sets
Blaauw et al. The structure of SYSTEM/360: Part I—Outline of the logical structure
US3302183A (en) Micro-program digital computer
US4346437A (en) Microcomputer using a double opcode instruction
US4179738A (en) Programmable control latch mechanism for a data processing system
EP0264048B1 (en) Thirty-two bit bit-slice
US4424563A (en) Data processor including a multiple word processing method and device
US4799181A (en) BCD arithmetic using binary arithmetic and logical operations
GB1192371A (en) Improvements in or relating to Data Processing Devices
US3394350A (en) Digital processor implementation of transfer and translate operation
US3001708A (en) Central control circuit for computers
GB1003921A (en) Computer cycling and control system
SU1737456A1 (ru) Стековое запоминающее устройство
JPH034936B2 (ru)
US4175284A (en) Multi-mode process control computer with bit processing
US3400380A (en) Digital computer having an address controller operation