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

ZIP архив

Текст

(51)5 8 06 Е 1200, 6 11 С 19 О ОСУДАРСТВЕННЫЙ КОМИТЕТО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМРИ ГКНТ СССР ОПИСАНИЕ ИЗОБРЕТЕНИЯ ВИДЕТЕЛЬСТВ АВТОРС(57) Изобретение числительной техн повышение прои ния за счет сакра оперативную пам использовать в ус ных, Содержит бл регистров, арифм ство 3 реверсивн и второй формиро типлексор 7. 2 ил,пулат юлиан"Юл ю бд 4 ь.( Д о(56) Авторское свидетельство СССРМ 752484, кл, С 11 С 1900, 1978.Авторское свидетельство СССРМ. 1304078, кл. 6 11 С 19/00, 1985,(54) СТЕКОВОЕ ЗАПОМИНАЮЩЕЕ УСТРОЙСТВО относится к цифровой выике, Цель изобретения - зводительности вычислещения числа обращений в ять. Изобретение можно тройстве обработки данок 1 управления, блок 2 етико-логическое устройые счетчики 4 и 8, первый ватели 5 и б адреса к муль табл.Изобретение относится к цифровой вычислительной технике и может быть использовано для создания устройств обработкиданных, выполняющих операции в стековомрежиме (обратной польской записи).Цел ь изобретения - по вы ш ение и роизводительности вычислений за счет сокращения числа обращений в оперативнуюпамять.На фиг. 1 представлен пример использования изобретения в устройстве для обработки данных; на фиг. 2 - пример обработкивыражения в польсксй инверсной записи.Устройство обработки данных содержитблок 1 управления, блок 2 регистров (стек),арифметико-логическое устройство 3, пер,вый реверсивный счетчик 4, первый 5 и второй б формирователи адреса,мультиплексор 7 и второй реверсивныйсчетчик 8,Блок 1 состоит из коммутатора уп равления счетчиками 4 и 8, выполненного на элементах И 9 - 12 и элементе НЕ 13.Устройство обработки данных работаетследующим образом,Машинные команды, работающие спредлагаемым устройством, имеюттри формата, Первый формат содержит только полекода операции (КОП ),В этом формате задаются соответствующие арифметические илилогические операции над одним или двумярегистрами на вершине стека,Второй формат содержит поле КОП иполе адреса операнда (АД) в памяти, Этотформат используется для загрузки стекаданными из памяти и выгрузки из него.Третий формат содержит поле КОП иполе адреса регистра (Н 4), в котором задается номер любого регистра внутри стекаотносительно его вершины, Регистр на вершине стека считается О, регистр первогоуровня под вершиной стека имеет относительный номер 1 и т.д, Команды этого формата позволяют осуществлять доступ клюбому регистру в глубине стека.Типовые команды, управляющие работой предлагаемого устройства, приведены втаблице. Для определенности глубина регистрового стека выбрана равной 1 б.Работа устройства начинается с сбросав ноль счетчиков 4 и 3. Различают два режима обмена данными с оперативной памятью: одиночный и групповой. Водиночном режиме выполняется обмен данными между вершиной стека и оперативнойпамятью, Любая загрузка в стек в этом режиме увеличивает на "1" содержимое счетчика 4, а выгрузка из стека уменьшает на "1"содержимое счетчика 4. Групповой режимотличается от одиночного тем, что обмен данными с памятью выполняется от дна стека, на который указывает счетчик 8, В этом режиме загрузка или выгрузка соответственно увеличивает или уменьшает на "1" содержимое счетчика 8,5 В качестве примера рассмотрим счет поформулеа + (с - Ь х а) х (а + д).10 В обратной польской записи она имеет видасЬбх - сад + х+.15 Используя команды из таблицы, вычисление этого выражения может быть запрограммировано следующим образом:4 а, 4 с, 4 Ь, 4 р, х, - , 4 Щ 4 р, +, х, +,20где а, ,о - адреса операндов а, ., с впамяти ЦВМ,Состояние стека при выполнении этойпоследовательности команд на фиг. 2.25 Таким образом, структура предлагаемого устройства позволяет хранить многократно используемые или промежуточныезначения непосредственно на регистрахстека, Это экономит число обращений к опе 30 ративной памяти. В случае обычной адресации стека требуется два дополнительныхобращения в память,Если принять, что коды команд и адресаоперандов в памяти для первого и второго35 случаев занимают по 1 байту, то длина командного кода для обоих случаев составляет17 байтов, Если адреса операндов в памятизанимают по 2 байта(что наиболее реально),то командный код для предлагаемого уст 40 ройства короче на 2 байта. Следовательно,предлагаемое устройство позволяет сократить время счета и длину командного кода,Рассмотрим пример использованияпредлагаемого устройства для организации45 циклов,Пусты - переменная цикла, К - верхнийпредел. При входе в цикл на вершину стекапомещают значение С, на следующий никний уровень - Й. При каждом повторении50 цикла, увеличивается на единицу и, если1 К, то управление передается на начало цикла, в противном случае со стека снимают двеверхние позиции, а управление передаетсяна следующую команду. При организации55 вложенных циклов на вершине стека располагаются и й внутреннего цикла, а в глубине стека - параметры внешнего цикла,В чисто стековых операционных устройствах с.доступом только к вершине стека1737456 Значение адресного ) Формат слова нз адр.входе1 2 Ннсмоникс Семантика командыкоманды Дейстеив, еыполняещые над указателем стека еконце такта команды Читать на стекзначение из памяти БР:ЯР+ В:щЯР+1 КЯ АД А:"Х ЧР Читать на стекзначение из регистра ЯР;ЯР+1 К 4 Н 4. А: БР-Н В: ЯР+1 Писать е памятьзначение из стека ЯР ЯР ПР КВ АД Л:ЯР Писать из стеказначение е регистр ЯР:ЯРК 12 Н 4 Л: ЬР;ЯР Н СуммаРазностьПроизведение (бинарные) стскосые операции) Я; ЯР В:"ЯР"1 КВ ЯР:щЯРИнвсртирсеание знакана ассзине группаунарних стекогыхопераций) ЬР:-ЬР,ер В 5 ь К 8 Регистровая суммацелых, результат ерегистр Я."ЯРР+ К 12 Н 1, ч А: ЯР В:БР"Н П р и м е ц а н и е, К 4, К 8, К 12 - число битое з коде операции; ЯР - указатель с-.ека, Формируемый счетчиками 4 и 8; Н 4 (Н) - номер регистра относительно текущей вершины стека; Х - значение безразлично; АД - полс адресации. переменные цикла храняться в памяти и доступ к ним требует дополнительных временных затрат.В любом операционном устройстве, имеющем регистровую память (с явным заданием номера регистра или стекового вида), возникает проблема запоминания и восстановления этих регистров при выходе процедуры. Наиболее распространенное решение - выгрузка в оперативную память всех регистров.В то же время в случае использования статических языков высокого уровня (ЯВУ) (типа Ада, Алгол 68, Модула 2) уже на этапе трансляции известно, сколько регистров потребует процедура для своей работы, т.е, каков ее "аппетит", Зная "аппетит" процедуры и следя за заполненностью регистровой памяти, можно выгружать в оперативную память только часть регистров. Если свободных регистров больше, чем требуется процедуре, то выгрузка вообще может не производиться, Это позволяет экономить время вызова процедуры и возврата, С этой целью предлагаемое устройство содержит счетчик 8. Зная содержимое счетчиков 4 и 8, можно судить о заполненности стека. Если требуется выгрузка стека при вызове процедуры, то требуемое количество регистров выгружается от дна с 1 ека, При выгрузке каждого регистра состояния счетчика 8 увеличивается на единицу, а при загрузке (при возврате из процедуры) уменьшается на единицу, На выход мультиплексора 7 в том случае поступает содержимое счетчика 8. Состояние счетчика 4 при этом не меняется.Введение подвижного дна стека позволяет выгружать из него наименее часто ис пользуемые переменные, так как именноони лежат в глубине стека. Так в приведенном примере организации вложенных циклов на вершине стека лежат переменные внутреннего цикла, т,е, наиболее часто ис пользуемые объекты. Формула изобретения Стековое запоминающее устройство,содержащее блок регистров, информацион ный вход и выход которого являются информационным входом и выходом устройства, два реверсивных счетчика, мультиплексор и блок управления, соответствующие выходы которого соединены с суммирующими и вы читающими входами первого и второго реверсивных счетчиков и с управляющим входом мультиплексора, о т л и ч а ю щ е е с я тем, что, с целью повышения производительности вычислений за счет сокращения числа обраще ний в оперативную память, в него введеныпервый и второй формирователи адреса, выходы которых соединены с г)ервым и вторым адресными входами блока регистров, выходы первого и второго реверсивных 30 счетчиков соединены с первым и вторыминформационными входами мультиплексора, выход которого соединен с первыми информационными входами первого и второго формирователей адреса, .вторые информа ционные входы которых соединены с входом смещения адреса устройства.1737456 а-г-ба) ц+б) = ас 8 о -+оА+ + йети обрац вюзи 7 шаков ал Корректор Т, Мале Редакт Пчолинска Тиражарственного комитета по изобр 113035, Москва, Ж, Рауш роизводственно-издательский комбинат "Патент", г, Ужгород, ул,Гагарина,Заказ 1893 ВНИИПИ оставитель ехред М,Мо Подписноеениям и открытиям при ГКНая наб 4/5

Смотреть

Заявка

4336898, 26.10.1987

ПРЕДПРИЯТИЕ ПЯ А-1129

МОРОЗОВ ВЛАДИМИР ПЕТРОВИЧ, БАРУЛИН ВАЛЕРИЙ НИКОЛАЕВИЧ, НАУМОВ СЕРГЕЙ ГЕРАСИМОВИЧ, РАСТОРГУЕВ ВИКТОР ДМИТРИЕВИЧ, РЫЧАГОВ ЮРИЙ БОРИСОВИЧ, ТЕРЕХОВ АНДРЕЙ НИКОЛАЕВИЧ, ФОМИНЫХ НИКОЛАЙ ФЕДОРОВИЧ

МПК / Метки

МПК: G06F 12/00, G11C 19/00

Метки: запоминающее, стековое

Опубликовано: 30.05.1992

Код ссылки

<a href="https://patents.su/4-1737456-stekovoe-zapominayushhee-ustrojjstvo.html" target="_blank" rel="follow" title="База патентов СССР">Стековое запоминающее устройство</a>

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