1
Предложенное устройство относится к вычислительной технике и может быть использовано в вычислительных машинах, структурно ориентированных на решение программ, написанных на алгоритмических языках высокого уровня.
Известно устройство цля изменения адресов в стековой памяти, содержащее ре гистры приема, выдачи, адреса, блок управяйния и арифметический блок 1.
Недостатком известного устройства является большая сложность и невысокое быстродействие, .
Наиболее близким техническим решением к изобретению является устройство для . коррекции базовых регистров при стековом распределении памяти, содержащее регистр приема, блок формирования связующей информации, блок формирования программной информации, блок управления, арифметичес- кий блок, регистр выдачи, регистр адреса, вход которого соединен с выходом арифметического блока, а выход подключен к выходным адресным шинам устройства, вход регистра приема соединен с входными ин-
формационными шинами устройства, входы блока формирования св51зуюшей информации подключены к выходам регистра приема, арифметического блока и блока формирования программной информации, входы которого соединены с выходами регистра приема и арвф метического блока, входы соединены с выходами блока базовых регистров и блока формирования протраммвой информации, входы блока базовых регистров сое динены с выходом регистра приема и выходом блока формирования программной внформации, вход регистра выдачи соединен с выходом блока формирования связующей информации, а выход - с ВЫХОДЕСЫМИ информационными шинами устройства, входы блока управления соединены со входными управляющими шинами устройства и управляк щим выходом блока базовых регистров, а выходы - с управляющими входами арифметического блока, блока формирования программной информации, блока формирования связующей информации, блока :базовых регистров, регистра приема, регистра выдачи и регистра адреса 2.
Недостатком известного устройства яв ляется низкое быстродействие устройства a счет программной коррекции регистров.
Цель изобретения - повышение быстродействия устройства.
Поставленная цель достигается тем, что в устройство введены счетчик и формирователь сигналов утфавления коррекцией, информационный вход счетчика соединен с выходом регистра приема, а управляющий - с выходом блока управления, информационные входы формирователя сигналов управления коррекцией соединены с выходами счетчика и блока базовых регистров, управляющий вход - с выходом блока управления, а выход - со входом блока управления.
Блок-схема устройства приведена на чертеже.
Устройство для коррекции базовых регистров в вычислительцых системах с программированием на языках высокого уровня содержит регистр 1 приема, блок 2 формирования связующей информации, блок 3 формирования программной информации, блок 4 управления, арифметический блок 5, блок б базовых регистров, регистр 7 выдачи, регистр 8 адреса, формирователь 9 сигналов управления коррекцией, счетчик 1О, входные утфавляющие шины 11, входные ийформадионные щины 12, выходные информационные шины 13, выходшые адресные шины 14.
Работа устройства во.время коррекции базовых регистров при решении фортрановской программы выполняется следующим обрасчом.
После приема кода операции и Метки через входные шины 13 и 14 на регистр 1 и.в блок 4 последний начинает вырабатывать управляющие сигналы. Происходит распаковка А етки: номер лексического уровня запускаемой подпрограммы записывается на счетчрщ лексического уровня в блоке 6, а адрес (элемент статической цепочки) переписывается в блок 3. В базовый регистр блока 6, номер которого содержится в счетчике лексического уровня, засылается адрес из Указателя Маркера, стека блока 3. Содержимое счетчика лексического уровня уменьшается на 1. По адресу, записанному в блок 3, через регистр 8 запрашивается Дескриптор пачки описателей массивов, обьявлекных в данной подпрограмме. После приема Дескриптора пачки на регистр 1 запускается формирователь 9 для выработки управляющих сигналов, необходимых при вы полке;1ии коррекции во время запуска форт- рановской подпрограымы. Размер пачки опи
сателей из регистра 1 приема переписывается в счетчик 10. По адресу, содержащемуся в Дескрипторе пачки, через блок 3 и регистр 8 запрашив)ается первый описатель массива. После приема описателя на регистр 1 он переписывается в счетчик лексического уровня, содержимое счетчика лексического уровня и счетчика 10 уменьшается на 1. Затем адрес пачки из блока 3 увеличивается в арифметическо 1 блоке 5 на 1 и считывается следующий описатель с последующей записью его в очередной базовый регистр и т.д., пока содержимое счетчика 10 не станет равным О. В этом случае при равенстве О счетчика лексического уровня процесс коррекции заканчивается. В противном случае последним словом пачки будет косвенная информация, базовый адрес в которой указывает на связующую информацию в стеке программы, в которой описана данная фортрановская подпрограмма Далее коррекция выполняется аналогичным способом.
При обращении в память к элементу массива блок 4 принимает код операции, а регистр 1 - относительный адрес элемента 71, i , где 71 - номер базового регистра, а
1 - номер элемента внутри массива. Относительный адрес передается в блок формирования программной информации, откуда i поступает на вход арифметического блока 5, an- блок базовых регистров для опроса соответствующего базового регистра содержимое которого складывается в метическом блоке 5 с индексом для формирования адреса элемента массива. Полученный адрес выдается в регистр 8 адреса для обращения в оперативную память.
Предложенное устройство для коррекции базовых регистров отличается от указанного тем, что введение нового оборудования и болеее эффективное использование имеющегося позволяют сократить количество обращений в память при обработке массивов за счет размещения описателей массивов в базовых регистрах во время их коррекции при входе в подпрограмму, написанную на Фортране. Это дает возможность аппаратно сформировать адрес, используя содержимое базовых регистров, и выполнять однократный запрос к памяти при обращении к элементу массива. .В результате достигается повышение производительности по сравнению с известными устройствами, у которых описатели массивов размешены в зоне локальных данных стековой памяти и доступ к элементу массива выполняется за два обращения в оперативную память.
название | год | авторы | номер документа |
---|---|---|---|
Устройство для коррекции базовых регистров при стековом распределении памяти | 1976 |
|
SU557364A1 |
Вычислительная система | 1977 |
|
SU692400A1 |
Вычислительная система | 1989 |
|
SU1777148A1 |
Процессор ввода-вывода | 1980 |
|
SU934465A1 |
Центральный процессор | 1991 |
|
SU1804645A3 |
Устройство для синтаксически-управляемого перевода | 1982 |
|
SU1062721A1 |
Устройство для формирования команд | 1978 |
|
SU734686A1 |
Процессор микропрограммируемой ЭВМ | 1979 |
|
SU860077A1 |
КОНТРОЛЛЕР | 1991 |
|
RU2012043C1 |
Устройство для обработки выражений языков программирования | 1974 |
|
SU519715A1 |
Авторы
Даты
1977-05-05—Публикация
1976-04-15—Подача