Формирователь кода маски

Иллюстрации

Показать все

Реферат

 

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

СОЮЗ СОВЕТСНИХ.

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

РЕСПУБЛИН

„„SU„„1501169

А1 (51) 4 G 11 С 19/00

8 Х. 0!;;М:," г

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

К АВТОРСКОМ,Ф СВИДЕТЕЛЬСТВУ

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

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

ПРИ ГКНТ СССР (21) 4308769/24-24 (22) 24.09 ° 87 (46) 15.08.89. Бнхп. Р 30 (72) А.А.Самусев, А.А.Шостак и А.В.Яскульдович (53) 681.327.6 (088.8) (56) Авторское свидетельство СССР

Р 1171851, кл. G 11 С 19/00, 1983.

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

Р 1262573, кл. G 11 С 19/00, 1985. (54) ФОРМИРОВАТЕ31Ь КОДА МАСКИ (57) Изобретение относится к цифровой вычислительной технике и может

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

Цель изобретения — повышение быстродействия формирователя °

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

ПЗУ, на фиг.3 — пример построения второго блока формирования маски и ! дешифратора на двух элементах ПЗУ.

Формирователь кода маски содержит первый блок 1 формирования маски,,блок 2 дешифрации, мультиплексоры 3, первую группу входов 4 задания кода маски, вторую группу входов 5 задания кода маски, входы 6 задания

1 разрядности данных, входы 7 и 8 сдвига маски, выходы 9. Блок 1 может

2 быть использовано при построении устройств сдвига, блоков памяти и блоков обработки универсальных процессоров цифровых вычислительных машин. Цель изобретения — повышение быстродействия формирователя. Это достигается тем, что формирователь содержит блок дешифрации с соответствующими связями. Блок дешифрации состоит из второго блока формирования кода шасси и дешифратора, с помощью которых формирователь может формировать код шасси слева и справа одновременно. 3 ил., 2 табл. быть выполнен на ПЗУ 10, а блок 2 состоит из второго блока 11 формирования маски и дешифратора 12, которые также могут быть выполнены на ПЗУ.

Блок 1 предназначен для дешифрации младших разрядов кода задания маски и формирования на выходе кода маски.

Блок 1 может быть построен с ис..пользованием элементов И, ИЛИ, ком мутатора.

Блок 1 может быть построен также на одном элементе ПЗУ 10 (фиг. 2), например КР556РТ5. Дпя обеспечения более высокого быстродействия (время задержки 15 нс) блок 1 может быть построен с использованием двух элементов ПЗУ типа 500РТ4 16 или

К1500РТ416, одноименные разрядные входы адресных входов которых соединены между собой и с соответствую— щими адресными входами, а разрядные

1501169

3 выходы элементов ПЗУ соединены с соответствующими разрядными выходами.

Блок 1 функционирует в соответствии с табл.1.

Обозначение Х в табл. 1 означает произвольное значение кода на соответствующем разрядном входе. Табл.1 является также таблицей кодировки для элемента ПЗУ 10. 10

Блок 2 предназначен для дешифрации старших разрядов кода задания маски (на входе 5), формирования на выходе блока 11 кода побайтной маски (или маски для групп бит) и формирования управляющих сигналов.на вы.ходе дешифратора 12 с учетом управляющих сигналов на входах 7, 8 и кода длины операнда на входе 6.

Блок 2 может быть построен с ис — 20 пользованием элементов И, ИЛИ, коммутаторов, дешифратора, сумматора или на элементах ПЗУ (фиг.3), так же, как и блок 1 с использованием тех же интегральных схем. 25

При этом блоки 11 и 12 функционируют в соответствии с табл. 2,где обозначение Х вЂ” произвольное значение кода.

Мультиплексор 3 представляет со- 30 бой стандартный узел>аналогичный по структуре, например, микросхеме типа 1533КП16 или 500ТМ173 (без элементов памяти) .

Формирователь функционирует следующим образом.

В исходном состоянии на входах

4, 5 устанавливается код задания маски. При этом на входах 4 устанавливаются младшие, а на входах 5— старшие разряды кода задания маски.

На входе 10 устанавливается код длины операнда (или код количества групп бит операнда,.которые необходимо выделить (не маскировать)) . На входах

7 и 8 устанавливается .код функции.

В устройстве предусмотрены следующие функции: — "маска слева" (при коде 00 на входах 7, 8);

- "маска справа" (при коде 01 на входах 7, 8); — "единичный код" (при нулевом коде на входах 7, 8, 4, 5); — "нулевой код" (при коде 10 на входах 7, 8); — "маска слева и справа" (при коде 11 на входах 7, 8).

Для этого рассмотрим конкретный пример установки на входе 4 кода m =

100, на входе 5 — кода М = 011, на входе 6 — кода L = 010, К = 64, К = 8 (фиг.1) °

"Маска слева". На входах 7 и 8 установлен код 00. На выходе блока 1. формируется код 00001111 (табл. 1) °

На выходе блока 11 формируется код

00011111 (табл.2). На выходе дешифратора 12 формируется код 00010000.

Под управлением сигналов на выходе дешифратора 12 все мультиплексоры 3, кроме мультиплексора 3 с номером M =

3>передают на выход код с выходов блока 11. На выходе M-го мультиплексора 3 передается код с выхода блока

1. В результате на выходе 9 формируется код:

00000000 00000000 00000000 00001111

11111111 11111111 11111111, т.е. как и задано слева,, сформировано М К + m = 3 8 + 4 = 28 логических нулей.

"Маска справа". На входах 7 и 8 установлен код .01. На выходе блока 1 формируется код 11110000 (фиг. 1).

На выходе блока 11 формируется код

11111000 (см. табл.2). На выходе дешифратора 12 формируется код 00001000.

Под управлением сигналов на выходе дешифратора 12 все мультиплексоры 3, кроме мультиплексора. 3 с номером

N 64 — -М-1= — -3-18-3-1

К 8

= 4, передают на выход код с выходов

N блока 11. На выход (— — М - 1)-ro

К мультиплексора 3 передается код с выхода блока 1. В результате на вьгходе 9 формируется код:

11111111 11111111 11111111 11111111

1111OOOO OOOOOOOO OOOOOOOO OOOOOOOO,,.т.е.. справа сформировано 28 логических нулей.

"Единичный код". На входах 7, 8 и 5 устанавливается нулевой код. На выходах блоков 1 и 11 формируется единичный код (табл. 1 и 2). В результате на все разряды выхода 9 через мультиплексор 3 передаются логические единицы, т.е. формируется единичный код.

"Нулевой код". На входах 7 и 8 устанавливается код 10. На выходе блока 1 формируется нулевой код (см. табл. 1), который под управлением .единичного кода на выходе дешифрато01169

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

Таблица 1

f I (Выходы

0 1 2

0 1

1 1 1

1 1 1

1, 1 1

1 1 1

0 . 1 1

0 0 1

1

1

1 1

0 1

0 0

0 0

0 0

0 0

1

0

0

1

0

0 . 0 0

0 0 0

0 0 0

0 0 0

0 0 1

0 0 1

5 15 ра 12 передается во все разряды выхода 9 через мультиплексоры 3 (см. табл. 2).

"Маска слева и справа". На входах

7 и 8 установлен код 11. Код М на входе указывает номер группы бит (номер байта), до которой необходимо осуществить маскирование слева. При обработке операндов переменной дли-, ны код M в рассматриваемом случае задается младшими разрядами адреса операнда в основной памяти процессора. На входе 10 устанавливается код L длины операнда, т.е. код количества групп бит (байт), которые не требуется маскировать, не считая группу бит (байт), задаваемую кодом

М, Код L задается соответствующим полем команды обработки операндов переменной длины.

При обработке десятичных операндов переменной длины с целью быстрой проверки корректности данных необходимо маскировать 4-разрядный код знака, расположенный в четырех крайних правых разрядах операнда. Это можно делать с помощью формирователя. Для этого на входе 4 необходимо установить код 100. Для рассматриваемого примера кодов m u M положим, что L = 010.

В результате на выходе блока 1 формируется код,11110000 (см.табл.1) .

На выходе блока 11 формируется код

0001 1100 (см. описание блока 2) . На выходе дешифратора 12 формируется . код 00000100. На выход L + 1f = 3 +

+ 2 = 5-го мультиплексора 3 передается код с выхода блока 1. В остальных мультиплексорах 3 на выход передается код с входа блока 11. В результате на выходе 9 формируется код:

00000000 00000000 00000000 111 111 11

11111111 11110000 00000000 00000000, т.е ° формируется код маски, с по-, 10

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

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

2 3 4: 5 6 7

1501169

ПРодолжение таблицы

I f

Вьи оды

5 6: 7

0 1 2

0 1 2 3 4

0 0

0 0

1 1

1 1

1 0

0 0

0 0

0 0

0 0

0 0

0 0 1 1

0 0 1 1

Х 1 0 0

Х 1 0 0

Х 1 0 1

Х 1 0 1

Х 1 1 .0

Х 1 1 0

Х 1 1 1

Х 1 1 1

1 0 Х Х

0 0

1 0

0 1

1 1

0 1

1 1

0 1

1 1

0 1

1 1

Х 0

0 0

0 0

1 1

1 1

1 1

1 1

1 1

1 1

1 0

0 0

0 0

0

1

1

0

0

1 1

0 1

1 1

1 0

0 0

0 0

0 0

0 .. 0

0 . 0

0 0

0 0

15011б9

1 1

ОООООО

i0 OOOOÎO

Ф I

&1 сч

OOOO -О

О

1 сА

ООО -ОО сч 1 ОООООООООООО- ОО ОО ОООООООООО !

I !

"-!ООООООООООООО ОО-ООООООООООО

О 1 -ООООООООООООО О» - -ОО

° е» i» ч — г т ч — е — Q o Q Q Q Q Q ° P Q Q

1 ф ч» т ч е» г ч ч,» ч ° О Q Q Q Q Q Q Q Q Q

1

О i — т — i — ч — т ч — Q О т- т- - Q Q Q О Q i» Q Q Q Q P т — i — i — Q Q — е» t» Q

OO -ОQОО - - - — ОP - - -p

), О »ОО с ) 1 - " ОООО-----О

ОO OOО OQ 00

Q Q ч» Q Q м ч r w т r Q г r r Q Q

ОООООО

С NNNNNRNNNNNN4g ХХХОООО---ООΠ— — 4 — —с4 О -О -О -О -О -О -О - ОХОООООООО - -О !

I

1

Л

1

1 OOOOOOOOOOOOOQ OO

1 с!

1 ф !!

1

I

I c

ОООQQООООООООΠ— ОООООО

Op -pppp 00 000000 0000Î 0

0 0 0 0 O — O 0 0 0 — 0 О О O O 0 0 0 0 0 О O 0 0 0 О О

OPОPО PО ОО ОООО ООООООООО

ppp0Qp-p Qp-ООО-ООООО QOOOO

I ! --- 00PPP--О 0 0 ΠΠΠ— - » » ° О ч — О т ч ° а — с — т т- е» ч» т г» О О

ΠΠΠΠΠΠΠ— ч — ч — м — е — ъ — ч» ч — ч— СХХWХХХХХХХ,ХХХP-P-Q-P-О=Π— 0=

Х W W Х Х Х Х Х Х W Х Х Х W Х Х О О - — О Q — — P О О

ОО - -ОО - -ОО - -ОО "ХООООООООООООООООО - — - -ОООО - - - -ХОООООООООООО -ОООООООО - - - - - - - -О -1501169

Составитель С. Королев

Редактор М. Недолуженко Техред М. Ходанич Корректор Т.Малец

Заказ 4879/51

Тираж 558

Подписное

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

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

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