SU1269147A1 - Устройство дл предварительной обработки операндов переменной длины - Google Patents

Устройство дл предварительной обработки операндов переменной длины Download PDF

Info

Publication number
SU1269147A1
SU1269147A1 SU843719951A SU3719951A SU1269147A1 SU 1269147 A1 SU1269147 A1 SU 1269147A1 SU 843719951 A SU843719951 A SU 843719951A SU 3719951 A SU3719951 A SU 3719951A SU 1269147 A1 SU1269147 A1 SU 1269147A1
Authority
SU
USSR - Soviet Union
Prior art keywords
input
inputs
output
operands
operand
Prior art date
Application number
SU843719951A
Other languages
English (en)
Inventor
Георгий Павлович Лопато
Александр Петрович Запольский
Анатолий Иванович Подгорнов
Ромуальд Станиславович Мойса
Мария Петровна Орлова
Original Assignee
Предприятие П/Я М-5339
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 Предприятие П/Я М-5339 filed Critical Предприятие П/Я М-5339
Priority to SU843719951A priority Critical patent/SU1269147A1/ru
Application granted granted Critical
Publication of SU1269147A1 publication Critical patent/SU1269147A1/ru

Links

Landscapes

  • Advance Control (AREA)

Abstract

Изобретение относитс  к области вычислительной техники и может бьггь использовано в процессорах ЭВМ средней и высокой производительности. Цель изобретени  - повьппение быстродействи . Устройство содержит регистр , блок управлений вычитанием адресов байтов, два блока вычитани  адресов байтов, две пам ти операндов, два дешифратора, два мультиплексора, два шифратора масок, два элемента И, элемент ИЛИ, триггер и элемент НЕ. Указанна  цель достигаетс  реализаi цией возможности размещени  операндов различной длительности по целочисленW ным границам слой. 5 ил.

Description

Изобретение относитс  к вычислительной технике и может быть исполь зовано в процессорах ЭВМ средней и высокой производительности. Цель изобретени  - повышение, быс родействи . На фиг.1 изображена схема устрой ства дл  предварительной обработки операндов переменной длины-, на фиг.2 - схема-блока управлени  вычи танием адресов байтов; на фиг.З схема первого и второго блоков управлени  вычитанием адресов байтов; на фиг.4 - схема вычитани  адресов байтов пам ти операндов; на фиг.5 - схема перекомпоновки байтов в слове. Предлагаемое устройство (фиг.1) содержит регистр 1, информационный вход 2, первую 3 и вторую 4 пам ти операндов, вход 5 старших разр дов адреса первого операнда, вход 6 старшего разр да адреса второго опе ранда, первый 7 и второй 8 шифраторы масок, вход 9 кода длины операндов , элемент, ИЛИ 10, первый элемент И 11, вход 12 признака конца, элемент НЕ 13, второй элемент И 14, вход 15 синхронизации, триггер 16, вход 17 сброса, блок 18 управлени  вычитанием адресов байтов, первый 19 и второй 20 блоки вычитани  адресов байтов, вход 21 модифицируемых разр дов адресов, вход 22 младших разр дов адреса первого опе ранда, вход 23 младших разр дов вто го операнда, первый 24 и второй 25 мультиплексоры, первый 26 и второй 27 дешифраторы, вход 28 признака обработки операндов, вход 29 призна ка приема и выдачи операндов, выход 30 признака конца предварительной обработки операндов, вход 31 призна ка выдачи операнда во внешнюю пам т выход 32 первого операнда, выход 33 второго операнда. Блок управлени  вычитанием адресов байтов (фиг.2) содержит дешифра тор 34, сумматор 35 по модулю два и узел элементов ИЛИ 36. Первый и второй блоки вычитани  адресов байтов (фиг.З) содержат эле менты И 37 и 38, элемент НЕ 39 и су маторы 40-42 по модулю два. Блок управлени  вычитанием адресов байтов служит дл  указани  ба та в слове, из адреса местной пам т которого необходимо вычесть единицу Первый 19 и второй 20 блоки вычитани  адресов байтов служат дл  вычитани  единицы из адреса байта первого и второго операндов приобращении к пам ти. Устройство работает следующим образом . Перед работой с данными переменной длины в регистр 1 занос тс  значени  двух младших разр дов адресов внешней пам ти дл  каждого операнда, а также условие направлени  обработки. Так как данные в большинстве случаев занимают не одно слово, то на их обработку требуетс  не одна, а группа однотипных микрокоманд (группа микрокоманд считьгаани  первого операнда , считывани  второго операнда, микрокоманд арифметических действий над операндами, группа микрокоманд записи результата во внешнюю пам ть). Указателем вьшолнени  первой микрокоманды в группе служит единичное состо ние триггера 16. Обработка данньпс начинаетс  со считывани  ик из внешней пам ти. Операнд может начинатьс  с любого байта слова, на что указьшает значение двух младших разр дов адреса. Дл  дальнейшей обработки в блоке арифметическо-логическом (БАЛ) устройством осуществл етс  вьфавнивание их по границам слов и разбиение на слова при записи их в первую 3 или во вторую 4 пам ти операндов. В микрокоманде ПАМЯТЬ при считывании операнда из внешней пам ти запись его в пам ти операндов производитс  с отдельной адресацией каждого байта, в отличие от обычного исполнени  микрокоманд, где пам ть адресуетс  до слова. Б первой микрокоманде считанное из внешней пам ти слово пишетс  целиком - полностью в одно слово местной пам ти (нет модификации адресов байтов - вычитани  единицы из значени  адреса местной пам ти соответствующего байта). Все последующие слова в зависимости от младших разр дов адреса внешней пам ти могут писатьс  в местную пам ть с модификацией адресов байтов, т.е. эти слова могут быть записаны по част м .в два смежных слова пам ти операндов (заданное и предыдущее младшее). Така  запись в пам ть операндов компонует операнды по словам, но с
перемещенными байтами. Упор дочение байтов производитс  на мультиплексорах 24 и 25 в микрокомандах АРИФМЕТИКА , . при этом дополн ютс  нул ми недостающие до слова байты с шифраторов 7 или 8.
В микрокомандах АРИФМЕТИКА модификаци  (вычитание) адресов отсутствует .
При записи результата во внешнюю пам ть (по адресу первого операнда) .считывание из пам ти операндов оп ть производитс  с модификацией адресов байтов и их перекомпоновкой на мультиплексоре 24,
На фиг.4 схематично показано вычитание адресов байтов.пам ти операндов и формирование слов в зависимости от направлени  обработки, значени двух младших разр дов адреса ОП край него байта (младшего - дл  пр мого направлени  обработки и старшего дл  обратного направлени  обработки) Дл  примера в пам ти .операндов обрабатываема  информаци  размещаетс  с двадцатого слова.
В двадцать четвертое слово информаци  не записываетс , она всегда перемещаетс  в двадцать третье слово пам ти операндов (длина операнда может быть до шестнадцати байтов).
На фиг.5 показана перекомпоновка байтов внутри слов при вьшолнении микрокоманд АРИФМЕТИКА или записи результата во внешнюю пам ть.
Первый 7 и второй 8 шифраторы масок представл ют собой ППЗУ (программируемое посто нное запоминающее устройство ) объемом пам ти 256 4-разр дных слов кажда . Содержимое ППЗУ дл  первого и второго операндов одинаковое . Адресами ППЗУ  вл ютс  совокупность текущего значени  длины операнда , значение двух младших разр дов адреса внешней пам ти, тип выполн емой микрокоманды (ПАМЯТЬ или АРИФМЕТИКА), направлени  обработки, а также состо ние указател  вьшолнени  первой или последующей микрокоманды в группе (триггер 16),
Дл  модификации текущих значений длин операндов можно также использовать ППЗУ (с другим содержимым), адресами дл  которых могут быть те же значени , что и дл  шифраторов масок (на фиг.1 не показаны).
Работу устройства рассмотрим на примере выполнени  команды дес тичного сложени . Принимаем, что длина первого операнда двенадцать байтов , значение двух младших разр дов адреса внешней пам ти равно 10, длина второго операнда семь байтов и два младших разр да адреса второг операнда равны 01.
Таким образом, дл  считывани  певого операнда из внешней пам ти необходимо четыре микрокоманды ПАМЯТЬ. Считанное из внешней пам ти первое слово пишетс  полностью в пам ть операндов по адресу двадцатого слова (пишетс  и младший чужой байт информации). Единичное состо ние триггера 16 запрещает модификацию адресов байтов пам ти операндов . Синхроимпульсом первой микрокоманды в группе, поступающим по входу 15, этот триггер сбрасываетс  разреша  модификацию адресов байтов
Считанные из внешней пам ти три старших байта второго слова записываютс  в три старших байта заданного в Микрокоманде двадцать перв.ого слова, а младший третий байт записываетс  в двадцатое слово местной пам ти на место третьего чужого байта.
В третьей микрокоманде считывани  из внешней пам ти запись в двадцать второе и двадцать первое слова пам ти операндов производитс  аналогично . В двадцать третье слово записываетс  только три старших чужих байта, а третий младший байт записываетс  в третий-байт двадцать второго слова местной пам ти. Таким образом , первый операнд размещаетс  в трех словах пам ти операндов.
При считьшании последнего -четвертого слова по входу 12 вьщаетс  сигнал конца обработки, по которому в конце микрокоманды устанавливаетс  в единичное состо ние триггер 16.
При считывании второго -операнда запись в пам ть операндов производитс , начина  с двадцать восьмого слова, аналогично считьшанию первого операнда. По окончании считывани 
второй операнд расположен целиком в двух смежных словах пам ти операндов .
В первой микрокоманде АРИФМЕТИКА, как и в последующих, значени  младших разр дов адресов операндов через дешифраторы 26 и 27 управл ют перекомпоновкой байтов операндов. Дл 
512
первого операнда третий байт передаетс  на место нулевого байта, а нулевой, первый, и второй байты первой пам ти 3 операндов передаютс  соответственно на место первого, второго , и третьего байтов. Дл  второго операнда второй и третий байты слова второй пам ти 4 операндов засыпаютс  соответственно на место нулевого и первого байтов, а нулевой и первый на место второго и третьего. Полученный в БАЛ результат пишетс  в пам ть операндов на место первого операнда без перекомпоновки.
Во врем  второй микрокоманды АРИФМЕТИКА шифратор 8 масок, задает нулевое эначение нулевого байта на выходе второго мультиплексора 25 маской 0111 через стробирующий вход мультиплексоров. Б следующей микрокоманде АРИФМЕТИКА задаетс  нулевое значение всего слова второго операнда .
В первой микрокоманде записи результата во внешнюю пам ть по маске записи, равной 1110, из двадцатого слова пам ти операндов пишутс  первый , второй и третий байты результата в нулевой, первый и второй байты слова внешней пам ти после перекомпоновки байтов на первом мультиплексоре 24,
Во второй микрокоманде записи во внешнюю пам ть по маске 1111 три младших байта берутс  из двадцать первого слова местной пам ти, а старший байт благодар  вычитанию а,чресов беретс  из двадцатого слова, после перекомпоновки записываетс  в третий байт слова, а три младших .байта (пер вый, второй и третий) записываютс  Ё нулевой, первый и второй байты слова .
В третьей микрокоманде слово д,л  записи выдаетс  из частей двадцать второго и двадцать третьего слов пам ти операнда с перекомпоновкой.
В четвертой микрокоманде записи во внешнюю пам ть в результате вычитани  адреса записываетс  нулевой байт двадцать третьего слова по маске 0001.
Така  реализаци  обращени  к пам ти операндов при обработке дан;ных переменной длины нар ду с их внутренними перемещени ми позвол ет размещать данные по целочисленным границам слов.
476

Claims (1)

  1. Формула изобретени 
    Устройство дл  предварительной обработки операндов переменной длины содержащее первый и второй шифраторы масок, первую и вторую пам ти операндов , регистр;, причем информационный вход регистра подключен к информационному входу устройства и к информационным входам первой и второй пам тей операндов, старшие разр ды адресных входов которых подключены соответственно к входам старших разр дов адреса первого операнда устройства и к входам старших разр дов адреса второго операнда устройства, первые входы первого и второго шифраторов масок подключены к входу кода длины операндов устройства, отличающеес  тем, что, с целью повышени  быстродействи , в него введены триггер, два элемента И элемент НЕ, элемент ИЛИ, два дешифратора и два мультиплексора, блок управлени  вычитанием адресов байтов содержащий дешифратор, сумматор по Модулю два и узел элементов ИЖ1, кроме того, устройство содержит, первый и второй блоки вычитани  адресов байтов, каждый из которых содержит два элемента И, элемент НЕ и три сумматора по модулю два, причем вход сброса устройства подключен к первому входу элемента ИЛИ, второй вход которого подключен к вьпсоду первого элемента И, первый вход которого подключен к входу синхронизации устройства и к первому входу второго элемента И, второй .вход которого соединен с выходом элемента НЕ, вход которого подключен к втором входу первого элемента И и к входу признака конца обработки устройства, выходы элемента ИЛИ и второго элемента И соединены соответственно с входами установки в единицу и в ноль триггера, пр мой выход которого соединен с вторыми входами первого и второго шифраторов масок и выходом признака конца предварительной обработки операндов устройства, инверсный выход триггера соединен с первым стробирующим входом дешифратора, второй стробир тощий вход которого соединен с входом признака приема и выдачи операнда устройства и третьими входами первого и второго шифраторов масок„ четвертые входы которых соединены с первым входом сумматора по модулю два блока управлени  вычит нием адресов байтов, с выходом регис ра и младшими разр дами информационного входа дешифратора, старшие разр ды информационного входа которого соединены с выходом сумматора по модулю два блока управлени  вычитанием адресов, байтов, второй вход которого соединен с входом признака вьщачи операнда во внешнюю пам ть устройств и с первым информационным входом пер вого дешифратора, .второй информацион ный вход которого соединен с выходом регистра и с информационным входом второго дешифратора, стробирующий вход которого соединен со стробируюпрш входом первого дешифратора, с входом признака обработки операндов устройства и входом записи регистра, выход дешифратора через блок элементов ИЛИ соединен с первыми входами первого сумматора по модулю два и первого элемента И каждого блока вычитани  адресов байтов, второй вход которого соединен с выходом элемента НЕ одноименного блока вычитани  адресов байтов и первым входом второ го злeмeнta И одноименного блока вычитани  адресов байтов, второй вход которого соединен с выходом первого элемента И одноименного блока вычитани  адресов байтов и с первым входом второго сумматора по модулю два 147S одноименного блока вычитани  адресов байтов, выход второго элемента И каждого блока вычитани  адресов байтов соединен с первым входом третьего i сумматора по модулю два одноименного блока вычитани  ад)есов байтов, вторые входы первого, второго и третьего сумматоров по модулю два первого и второго блоков вычитани  адресов байтов соединены соответственно с входом младшего разр да адреса второго операнда устройства, вход модифицируемого разр да адресов операндов устройства соединен с входом элемента НЕ каждого блока вь итани  адресов байтов, выходы первого, второго и третьего сумматоров по модулю два каждого блока вычитани  адресов байтов соединены с младшими разр дами адресного входа одноименной пам ти операндов, выходы первой и второй пам тей операндов соединены соответственно с информационньми входами первого и второго мультиплексоров, управл ющие входы которых соединены соответственно с выходами первого и второго дешифраторов, выходы первого и второго шифраторов масок соединены соответственно со стробирующими входами первого и второго мультиплексоров , выходы которых  вл ютс  соответственно выходом первого операнда устройства и выходом второго операнда устройства.
    физ.2
    фи,3
    x
SU843719951A 1984-04-06 1984-04-06 Устройство дл предварительной обработки операндов переменной длины SU1269147A1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
SU843719951A SU1269147A1 (ru) 1984-04-06 1984-04-06 Устройство дл предварительной обработки операндов переменной длины

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SU843719951A SU1269147A1 (ru) 1984-04-06 1984-04-06 Устройство дл предварительной обработки операндов переменной длины

Publications (1)

Publication Number Publication Date
SU1269147A1 true SU1269147A1 (ru) 1986-11-07

Family

ID=21110996

Family Applications (1)

Application Number Title Priority Date Filing Date
SU843719951A SU1269147A1 (ru) 1984-04-06 1984-04-06 Устройство дл предварительной обработки операндов переменной длины

Country Status (1)

Country Link
SU (1) SU1269147A1 (ru)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Авторское свидгтельство СССР № 767769, кл. G 06 F 15/00, 1977. Авторское свидетельство СССР № 648984, кл. G 06 F 15/00, 1976. *

Similar Documents

Publication Publication Date Title
US5390307A (en) Apparatus for a multi-data store or load instruction for transferring multiple contiguous storage locations in one transfer operation
US4446517A (en) Microprogram memory with page addressing and address decode in memory
KR100413651B1 (ko) 복수레지스터의데이터전송을워드길이가짧은명령으로실현하는정보처리장치및그정보처리방법
KR100282516B1 (ko) 길쌈부호 생성기 및 이를 내장한 디지털 신호 프로세서
US4691282A (en) 16-bit microprocessor system
GB1003921A (en) Computer cycling and control system
SU1269147A1 (ru) Устройство дл предварительной обработки операндов переменной длины
EP0220327B1 (en) Address expanding system
GB1014628A (en) Data processing system
GB1105463A (en) Data processors
GB991734A (en) Improvements in digital calculating devices
US3425036A (en) Digital computer having a generalized literal operation
US4723258A (en) Counter circuit
GB1380750A (en) Control unit for a data processing system
US3222648A (en) Data input device
GB1406312A (en) Memory device
SU637869A1 (ru) Посто нное запоминающее устройсство
SU680477A1 (ru) Арифметическое устройство
SU947866A1 (ru) Устройство управлени пам тью
JPH0241070B2 (ru)
SU849223A1 (ru) Процессор с динамическим микро-пРОгРАММНыМ упРАВлЕНиЕМ
JPS5862685A (ja) 画像メモリ装置
SU560228A1 (ru) Устройство дл передачи информации из основной пам ти в каналы ввода-вывода
JPS6017131B2 (ja) メモリ制御回路
SU682890A1 (ru) Процессор св зи