Табличный процессор

 

1. ТАБЛИЧНЫЙ ПРОЦЕССОР, содержащий п операционных блоков, два мультиплексора связи, счетчик команд, регистр команд, адресный fyльтиплeкcop и блок микропрограммного управления, включаюгщй входной коммутатор, счетчик микрокоманд, выходной коммутатор, генератор тактовых импульсов, регистр микрокоманд и блок памяти микропрограмм, управляющий и адресный входы и выхода которого соединены соответственно с выходом генератора тактовых импульсов , выходом счетчика микрокоманд и информационным входом регистра микрокоманд, управляющий вход, счетный вход, первый и второй информационные входы счетчика микрокоманд подключены соответственно к первому выходу выходного коммутатора , выходу входного коммутатора, первому выходу регистра команд и первому выходу регистра микрокоманд, первый и второй входы и второй выход выходного коммутатора соединены соответственно с выходом генератора тактовых импульсов, вторым выходом регистра микрокоманд и управляющим входом адресного мультиплексора, управляющий вход регистра микрокоманд подключен к выходу генератора тактовых импульсов, кроме того, второй выход выходного коммутатора соединен с управляющими входами операционных блоков, счетчика команд, регистра команд, входного коммутатора , первого и второго коммутаторов связи, первым информационным входом гщресного мультиплексора и выходом процессора, второй, третий, четвертый и пятый информационные входы адресного мультиплексора подключены соответственно к второму и третьему выходам регистра команд, (Л выходу счетчика команд и адресному входу процессора, первый информационС ный вход процессора соединен с информационнь1ми входами счетчика команд и о е регистра команд, первыми информационными входами входного коммутатора, первого и второго коммутаторов связи , первый, второй, третий, четвертый и пятый информационные входы и выход 00 4i первого операционного блока подключены соответственно к первому информаи О ционному входу процессора, выходу первого коммутатора связи, первому информационному входу процессора, выходу п-го операционного блока, первому и четвертому информационным входам второго операционного блока, первый, второй, третий и пятый информационные входы -го операционного блока

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

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

РЕСПУБЛИН

„„SU„„1108446 А зшG06F 900

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

ЪЯьл1:, О 11 К 4

H ABTOPCHOINY СВИДЕТЕЛЬСТВУ

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

fl0 ДЕЛАМ ИЗОБРЕТЕНИЙ И OTHPblTHA (2 ) 345 7.102 /1 8-24 (22) 24.06.82 (46) 15.08.84. Бюл. !! - 30 (72) В.Ф.Мелехин (71) Ленинградский ордена Ленина политехнический институт им. М.И.Калинина (53) 681 325(088.8) (56) 1. Авторское свидетельство СССР

11 - 691926, кл.G 06 F 9/00, 1979.

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

Ф 826422, кл . G 06 F 9/00, 1981 (прототип). (54)(57) 1. ТАБЛИЧНЫМИ! ПРОЦЕССОР, содержащий и операционных блоков, два мультиплексора связи, счетчик команд, регистр команд, адресный мультиплексор и блок микропрограммного управления, включающий входной коммутатор, счетчик микрокоманд, выходной коммутатор, генератор тактовых импульсов, регистр микрокоманд и блок памяти микропрограмм, управляющий и адресный входы и выходы которого соединены соответственно с выходом генератора тактовых импульсов, выходом счетчика микрокоманд и информационным входом регистра микрокоманд, управляющий вход, счетный вход, первый и второй информационные входы счетчика микрокоманд подключены соответственно к первому выходу выходного комму-. татора, выходу входного коммутатора, первому выходу регистра команд и первому выходу регистра микрокоманд, первый и второй входы и второй выход выходного коммутатора соединены соответственно с выходом генератора тактовых импульсов, вторым выходом регистра микрокоманд и управляющим входом адресного мультиплексора, управляющий вход регистра микрокоманд подключен к выходу генератора тактовых импульсов, кроме того, второй выход выходного коммутатора соединен с управляющими входами операционных блоков, счетчика команд, регистра команд, входного коммутатора, первого и второго коммутаторов связи, первым информационным вхо. дом адресного мультиплексора и выходом процессора, второй, третий, четвертый и пятый информационные входы адресного мультиплексора под- ключены соответственно к второму и g третьему выходам регистра команд, выходу счетчика команд и адресному входу процессора, первый информацион— ный вход процессора соединен с инфор мационными входами счетчика команд и Ф регистра команд, первыми информационными входами входного коммутатора, первого и второго коммутаторов свя- ® зи, первый, второй, третий, четвертый () и пятый информационные входы и выход QQ первого операционного блока подключены соответственно к первому информа- кф ционному входу процессора, выходу первого коммутатора связи, первому информационному входу процессора, выходу n -ro операционного блока, первому и четвертому информационным входам второго операционного блока, первый, второй, третий и пятый информационные входы 1-го операционного блока (1 (i < n ) подключены к первому информационному входу процессора, четвертый информационньп» вход и выход i -ro операционного блока соединены соответственно с выходом

1! 084 (j-1)-ro операционного блока и четвер тым информационным входом (1+1)-го операционного блока, первый н второй информационные входы и -ro операционного блока соединены с первым информационным входом процессора, третий, четвертый и пятый информационные входы Н-ro операционного блока соединены соответственно с выходом второго коммутатора связи, выходом

P-I)-ro операционного блока и вторым информационным входом процессора, вторые информационные входы первого и второго коммутаторов связи подключены к управляющему входу процессора, отличающийся тем, что, с целью повышения производительности; он содержит регистр множителя, регистр множимого, группу мультиплексоров данных, элемент ИЛИ и группу управлякщих мультиплексоров, управляющие входы которых соединены с вторым выходом выходного коммутатора, управляющие и информационные входы и выходы мультиплексоров данных группы подключены соответственно к второму выходу выходного коммутатора, первому информационному входу процессора и информационному входу регистра множителя, управляющий вход и выход которого соединены соответственно с вторым выходом выходного коммутатора и первым информационным входом первого управляющего мультиплексора, вход и выход элемента ИЛИ подключены соответственно к выходу регистра множителя и второму "информационному входу входного коммутатора, информационный и. управляющий входы регистра множимого соединены соответственно с первым информационным входом процессора и вторым выходом выходного коммутатора,, выходы регистра множимого и адресного мультиплексора подключены к перI вым и вторым информационнык входам соответствующих управляющих мультиплексоров группы, а выходы управляющих мультиплексоров группы соединены с адресными входами соответствующих операционных блокЬв.

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

Изобретение относится к вычислительной технике.

Известно логическое запоминающее устройство, основными компонентами которого являются одноразрядные блоки памяти, в которых табличным способом выполняются логические преобразова«ия, а переносы при сумьыровании

I 108446 выявляются схемно-табличным способом 11 °

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

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

Цель изобретения — повышение производительности.

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

5 I0

45 ного мультиплексора и выходом ггроцессора, второй, третий, четвертый и пятый информационные входы адрес" ного мультиплексора подключены соответственно к второму и третьему выходам регистра команд, выходу счетчика команд и адресному входу процессора, первый информационный вход процессора соединен с информационными входами счетчика команд и регистра команд, первыми информационными входами входного коммутатора, первого и второго коммутаторов связи, первый, второй, третий, четвертый и пятый информационные входы и выход первого операционного блока подключены соответственно к первому информационному входу процессора, вы. ходу первого коммутатора связи, первому информационному входу процессора, выходу n-ro операционного блока, первому и четвертому информационным входам второго операционного блока, первый, второй, третий и пятый информационные входы i-го операционного блока (1

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

Кроме того, операционный блок содержит четыре операционных модуля, включающих блок памяти, два адресных коммутатора, узел формирования переноса, регистр числа, регистр операнда и коммутатор данных, управляющий вход, первый, второй, третий и четвертый информационные входы которого соединены соответственно с управляющим входом, первыM вторым третьим и пятым информационнымй входами блока, управляющий и информационный входы регистра операнда подключены соответственно к управляющему и первому информационному входам блока, управляющий и информационный входы и выход регистра числа соединены соответственно с управляющим входом блока, выходом коммутатора данных и информационным входом блока памяти, адресный вход которого подключен к адресному входу блока и выходам первого и .второго адресных коммутаторов, первый информационные и управляющие входы которых соединены соответственно с адресным и управляющим входами блока, управляющий вход и выход блока памяти подключены соответственно к управляющему входу блока и информационному входу регистра операнда, вторые входы первого и второго адресных коммутаторов соединены соответственно с выходом регистра операнда и четвертым информационным входом блока, первый, второй и третий входы и выход узла формирования переноса подключены соответственно к четвертому информадами 31-35 и управляющим входом 36, вход 35 является адресным входом процессора, регистр 37 команд с информационным и управляющим входами 38 и 39, первым, вторым и третьим выходами 40, 41 и 42, счетчик 43 команд с информационным и управляющим входами 44 и 45, блок 46 микро— программного управления с первым, вторым и третьим входами 47, 48 и 49

55 и выходом 50, счетчик 51 микрокоманд с первым и вторым информационными ционному входу блока, выходу регистра операнда, выходу регистра числа и выI ходу блока.

На фиг. I приведена структурная

5 схема предлагаемого табличного процессора; на фиг. 2 — структурная схема операционного блока, на фиг. 3 — пример реализации узла формирования переноса; на фиг. 4 — при. 10 мер реализации связей между блоками через шину данных; на фиг. 5 пример реализации группы управляющих мультиплексоров; на фиг. 6 пример реализации адресного мульти15; на фиг. 7 — пример реализации счетчика микрокоманд, на . фиг. 8 — временная диаграмма работы процессора; на фиг. 9 — пример реализации выходного коммутатора, 20 на фиг. IO — размещение таблиц в памяти; на фиг. 11 — схема преобразований для формирования адреса при обращении к таблицам умножения; на фиг. 12 — схема алгорит25 ма умножения.

Устройство содержит операционнья блок 1, первый-пятый информационные входы 2 — 6, управлякхций и адресный входы 7 и 8, выход 9 щ операционного блока I, шину IO данных, первый информационный вход I I процессора, мультиплексоры 2 данных с информационными и управляющими входами 13 и 14, регистр 15 множимого с информационным и управ35 ляющим входами 16 и 17, регистр 18 множителя с информационным 19 и управляющим 20 входами, элемент ИЛИ 21, первый управляющий мультиплексор 22

40 группы с первым и вторым информационными входами 23 и 24 и управлякщим входом 25, второй — (n+I)-é управляющие мультиплексоры 26 группы с первым и вторым информационными вхо45 дами 27 и 28 и управляющим входом 29, адресный мультиплексор 30 с первым — пятым информационными вхо08446

7 11 входами 47 и 52, счетным и управляющим входами 53 и 54, блок 55 памяти микропрограмм с адресным и управляющим входами 56 и 57, регистр 58 микрокоманд с информационным и управляющим входами 59 и 60, первым и вторым выходами 61 и 62,генератор 63 тактовых импульсов, выходной коммутатор 64 с первым и вторым входа ми 65 и 66, первым и вторым выходами 54 и 50, выход 50 коммутатора 64 является выходом блока 46 микропрограммного упр авления, входной коммутатор 67 с информационными входами 48, 49 и управлякицим входом 68, первый коммутатор 69 связи с первым и вторым информационными входами 70 и 71 и управляющим входом 72, второй коммутатор 73 связи с первым и вторым информационными входами 74 и 75 и управляющими входами 76,. выход 77 процессора, операционный модуль 78 (фиг. 2), первый — пятый информационные входы 79-83, управляющий и адресный входы 84 и 85, выход 86 модуля 78, блок 87 памяти (одноразрядный) с информационным, адресным и управляющим входами 88, 89 и 90 и выходом 91, первый адресный .коммутатор 92 с первым и вторым информационными входами 93 и 94 и управляющим входом 95, второй адресный коммутатор 96 с первым и вторым информационными входами 97 и 98 и управляющим входом 99, узел 100 формирования переноса с первым, вторым и третьим входами 101, 102 и 103, регистр 104 числа с информационным и управляющим входами 105 и 106, регистр 107 операнда с информационным и управляющим входами 108 и 109, \ коммутатор 110 данных с первым, вторым, третьим и четвертым информационными входами 111, 80, S l и 83 и управля ацим входом 112, элемент

2И-HE 113 (фиг.3), элемент ЗИ-НЕ 114, селектор-мультиплексор 115 на четыре канала (фиг. 4 и 6), элемент

2И-2И-2ИЛИ 116 (фиг. 5), элемент

HE 1 17, счетчик 118 (фиг. 71 со счетным и информационным входами 119 и

120 и входом 121 синхронизации, элемент 2И 122 с входами 5.3 и 125, мультиплексор 123 на два канала с информационными входами 47 и 52 и управляющим входом 124, элемент И 126 (фиг. 9), элемент

ИЛИ 127.

Рассмотрим работу блоков операционного модуля 78 (фиг.2). Одноразрядный блок 87 памяти работает в трех режимах в зависимости от кода

U9g (2 11 На управляющем входе 901 при V>p = 00 — режим хранения инфор" мации, при этом у =R при V

10 — режим чтения, при этом у91 H(A) A X 89 прН 90

fQ IIeIKHI4 9 IIH H, IIIIH Ii H(A): x8S

А = Х 9, где H(A) — содержимое ячейки накопителя с адресом А; х — переменная на входе 88, Х69 код на входе 89 yå1 переменная на выходе 91 (может принимать три значения — О, 1 и R, где R - состояние большого выходного сопротивления).

Код адреса Х> имеет m разрядов

20 и получается из трех кодов

Х89 (m: I J X (m;4) ey aY (2: I), где Х (ш:4) — старшие m-3 разряда кода, подаваемого на вход 8;

У вЂ” сигнал на выходе второ96

ro адресного коммутатора 96;

У9 (2:1)- код на выходе первого адресного коммутато30 ра 92 — знак конкатенации.

Первым адресный коммутатор 92 переключает на выход код Х (2: 1) либо код Х94 (2:1! в эавйсимости от

35 сигнапа U на управляющем входе 95: при IJ 99 = Π— Y92 (2: 1) Х 53 (2: 1 j YSt2: Ij при Б 1 — 7 (2 1) Х9 (2 13W$7

99 .92 94 1о fp4 где у„о+ . у.!о — сигналы на выходах регистра 104 числа и регистра !07 опер аида.

Работой втброго адресного коммму45 татора 96 управляет сигнал на управляющем входе 99:

9 У 91

99 У-96 98 82

50 где х 1 — сигнал переноса из сосед-! него младшего разряда, Поступающий

1на вход 82.

Адресные коммутаторы 92 и 96 позволяют осуществлять независимую ад"

55 ресацию ячеек накопителя в различных разрядах в пределах сегмента иэ четырех либо иэ восьми ячеек, что используется при табличной реализации

40

9 I I 08 поразрядных двухместных и трехместных логических функций.

Узел 100 формирования переноса ре. алиэует логическую функцию

У р У Ь НМ о2 101 1дЗ О2 403 где у — сигнал переноса, подаваемай

85 с выхода узла IOO на выход 86 модуля 78; х „ х — перенос иэ предыдущего разряда; х у — переменная на выходе регистЮ2 ра 107 операнда (первое сл агаемое); х у — переменная на выходе регист463 104 15 ра !04 числа (второе сла" гаемое), Пример реализации блока !00 приве ден на фиг. 3.

Регистр 104 числа работает в двух режимах: при П = Π— режим хранения; при U

Аналогично для регистра 07 операнда: при U ю = Π— режим хранения; при U c = I — режим записи, при у 91

Коммутатор 110 данных работает следующим образом: при 1!2 00 у.1,>: =+ g11 = х yq ° З0 при Ч,щ =01 — у <р =х ) при Ч =10 — у.: =х

112 у ИО " Я

Через коммутатор 110 данных

35 осуществляется связь информационного входа 105 регистра 104 числа с шиной 10 данных (фиг. 1). Шина 10 данных представляет собой 4п (соответственно числу разрядов процессора) проводников, используемых для реализации связей между блоками, Для иллюстр ации способа подключения шины данных к блокам 1 и 12 на фиг.4 приведен пример при числе разрядов

4n=16. !!1ина 10 данных подключена к первому информационному входу Il процессора.

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

446 10 разряда. Первый 2, второй 3, третий 4, четвертый 5 и пятый 6 информационные входы и выход 9 первого операционного блока (фиг. I ) подключены соответственно к первому информационному входу I I процессора, выходу первого коммутатора 69 связи, первому информационному входу 11 процес сора, выходу 9 n-ro операционного блока l первому 2 и четвертому 5 информационным входам второго операционного блока 1. Первый 2, второй 3, третий 4 и пятый 6 информационные входы i-ro операционного блока (I (i (п) подключены к первому информационному входу 11 процессора, четвертый информационный вход 5 и выход 9 i-го операционного блока соединены соответственно с выходом 9 (i-1)-го операционного блока н четвертым информационным входом 5 (i+I)-ro блока 1. Первый 2 и второй 3 информационные входы п-го операционного блока 1 соединены с первым информационным входом 11 процессора. Третий 4, четвертый 5 и пятый 6 информационные входы n-ro операционного блока соединены соответственно с выходом второго коммутатора 73 связи, выходом 9 (п-1)-го операционного блока I и вторым информационным входом процессора, на который подается фиксированный код О.

Рассмотрим работу блоков табличного процессора (фиг.l).

Мультиплексоры !2 данных предназначены для вьщеления четырех разрядов иэ 4п-разрядного кода на шине 10 данных и передачи выделенных разрядов на информационный вход 19 регистра 8. При этом выход первого мультиплексора 12 соответствует первому (младшему) разряду выделенного кода, а выход четвертого мультиплексора 12 — четвертому (старшему) разряду. В соответствии с этим i-й разряд информационного входа 13 j-ro мультиплексора 12 (Х t3 . f i)) подю ключен к 1-му разряду шины IO данных (71<,(13) в соответствии с выражением ц (i +Yto 13; 1 4i+j;ý 20,1, (n-1); 1 1,4.

Каждый 3-й из мультиплексоров 12 переключает на выход один (i-й) из разрядов кода Х 2,1 подаваемого на информационный вход 13, при этом

1108 номер i переключаемого разряда соответствует двоичному коду Ч на управляющем входе 14 : i = V . На

И фиг. 4 приведен пример реализации мультиплексоров 12 данных для 4п=!6 (4п - число разрядов в шине 10 данных) . Они работают следующим образом: приЧ =00-Х . =У (41), 70 при V« = 01 — X„. = « tS:53, при V„.4 10 — Х.q . = У1о (12:97, ри Ч„„= 11 — X: = Y (16:137, Регистры множимого !5 и множителя

18 работают в двух режимах: хранения информации — при нулевых значениях управляющих сигналов и записи — при единичных значениях управляющих сигналов. 20

Первый управляющий мультиплексор 22 группы предназначен для формирования четырех младших разрядов кода адреса X>(4ll1, подаваемых на все и операционных блоков 1 и в них на вхо- 25 ды 85 всех 4п операционных модулей 78

Мультиплексором 22 управляет сигнал

U2 на управляющем входе 25: при

62 =0 на выход переключается код, подаваемый на первый информационный

30 вход 23, ему соответствует код на выходе регистра 18

446 12 мому разрядам выхода адресного муль" типлексора 30. Работой мультиплексоров 26 управляет сигнал П на

29 объединенных управляющих входах 29: при П29 = 0 — Угь (4:1):-Х2 !.4:! j. при этом на пятый-восьмой разряды входов 8 во все и операционных блоков I подаются коды, соответствующие 1, 2, ..., n-й четверкам разря,дов кода на выходе регистра 15 множимого 15; при U29 =1 — У2ь (4: 1,:!

= У 1„8:5), на пятый-восьмой разряды входов 8 во все и операционных бло" ков 1 подается одинаковый код

У (8:51 с выхода адресного мультйплексорà 30.

На фиг. 5 приведен пример реализа ции управляющих мультиплексоров 22 и 26. Адресный мультиплексор 30 предназначен для формирования m-разрядных

1 адресных кодов с использованием информации от различных источников. регистра 37 команд, счетчика 43 команд и блока 46 микропрограммного управления. Мультиплексор 30 имеет четыре ш-разрядных информационных канала. Первому информационному ка" налу В1(m:1) соответствует второй информационный вход 32, второму каналу В2- вход 33, третьему В

3 вход 34, четвертому  — два вхо"

Ф да 31 и 35. При этом

У (4:!):=Х2З {4й1 =У;® (4:1), при П2 =1 на выход переключается код, подаваеилй на второй информационный вход 24, ему соответствуют четыре мпадших разряда на выходе мультиплексора 30 адресных кодов

У22 (4:1): =Х 24(4: 1) =УЗо (4:11, 40

ГДе У 22 У, У. КОДЫ на выхО дах мультиплексоров 22, 30 и регистра 18.

Второй — (п+1)-й управляющие мультиплексоры 26 группы предназначены для формирования пятого-восьмого разрядов кода адреса независимо в п операционных блоках. Для этого четырехразрядные выходы мультиплексоров 26 подключены к пятому-восьмому разрядам m-разрядных входов 8 соответствующих операционных блоков.

Выход регистра 15 множимого, содер-. жащий 4п разрядов (по четыре разряда соответственно) подключен к входам 27 мультиплексоров 26, а входы 28 у всех мультиплексоров 26 объединены и подключены к пятому-восьJ при V =00 при V =01 при V36-10

У (m 1) В Х

30 2 3з

30 В3 Х349

8 (» l3 - q,(: 1 - 4,(:II, ЗЗ(42 (В (m I) — Х (ш.1) — У (m 1), ВФ(п1:13 = С,(m: 1 1-) Хз„(10: 13, где У+„, У42, УЬЗ вЂ” коды на выходах 41 и 42 регистра 37 команд и на выходе счетчика 43 команд, С (ш: 11 J-(m-10) — разрядный фиксированный код 0...0 на входе 35;

Х 1 $1 0: Ig — 10 — разрядный код, подаваемый на вход 31 из блока 46 микропрограммного управления.

Код С = 0...0 соответствует адресу начального сегмента накопителя, содержащего 1024 ячейки, к которым возможна адресация от блока 46 микропрограммногоо управления.

Работой адресного мультиплексора 30 управляет код Ч на управляЗЬ ющем входе 36:

25 при U>> = О - у : х 0. при U <2, = 1 - у З а х . е

Вход 76 подключен к 4п-му разряду шины 10 данных, выходной сигнал у через вход 3 первого операционного блока 1 поступает на вход 80 коммутатора 110 в первом операционном модуле 78 и далее на вход 105 регистра 104 числа. С использованием этих связей в регистр числа передается с циклическим сдвигом на один разряд влево число, считан ное из памяти в шину 10 данных.

Вход 71 коммутатора 69 является управляющим входом процессора, на который подается О. Сигнал х 0 1 используется при арифметическом сдви ге влево и записывается по описанным связям в первый разряд регистра 104 числа.

Второй коммутатор 73 связи предназначен для управления передачей информации в старший разряд при сдвиге вправо на один разряд.

I3 lI при V I I — Y>o В4 Xgg > при Ч I I - Уэ4 . В,, С5 Х

На фиг, 6 приведен пример реализации адресного мультиплексора 30 при m 12;

Регистр 37 команд работает в двух режимах: хранения (при П 0) и записи (при U5> 1). На информационный вход 38 поступает и-разрядный код иэ шины 10 данных

Счетчик 43 команд работает в трех режимах. при U+5 ОО - хранение информации; при U

Первый коммутатор 69 связи предназначен для управления передачей информации в первый (младший) разряд при сдвиге на один разряд: при Ulg 0 у13 при 111 1 у X )g

Вход 74 подключен к первому разряду шины 10 данных. Выходной сигнал у- через вход 4п-го операцион4 ного олока I поступает на вход 81

08446 14 коммутатора 110 данных в 4п-м опера- ционном модуле 78 и далее на вход 105 регистра 104 числа. С использованием этих связей, в регистр числа передается с циклическим сдвигом на один разряд вправо число, считанное из памяти в шийу 10 данных. Сигнал х>® 0 используется при арифметическом сдвиге вправо и записывает"

I0 ся по описанным связям в 4п-й разряд регистра числа.

Счетчик 51 микрокоманд работает следующим образом:

15 У4 при Ч (3: I)000 -режим хранения ин« формации; при Ч . 00! — запись в счетчик 5f

64 кода, подаваемого на вход 47; при Ч =010 - запись в счетчик 51

114 кода, подаваемого . на вход 52; при V =ИΠ— запись в счетчик ко%+ да, подаваемого на вход 52 из регистра мнкрокоманд, и после« дующее прибавление к содержимому счетчика 5! одноразрядного кода 0- 6/00,1).

На фиг. 7 приведен пример реализации счетчика 51. При этом U

54 121 Вф 125

V<4,(3). Мультиплексор 123 работает следующим образом .

П 124 1 %3 ХИ при П „2," Π— У 12 ° - Х

Блок 55 памяти микропрограмм при

U<2=1 осуществляет чтение содержимого ячейки накопителя по адресу

А = Х . Считанный код микрокоманды поступает на вход 59.

Регистр 58 микрокоманд работа4S ет в двух режимах: при U g< = Π— режим хранения информации1 при Ug<= режим записи кода микрокоманды, подаваемого на вход 59.

Входной коммутатор 67 предназначен для выбора одного из осведомительных сигналов, в зависимости от значения которого выполняется модификация содержимого счетчика 51 микрокоманд при реализации условных переходов в микропрограммах. Коммутатор 67 имеет четыре информационных канала, Первому каналу соответствует сигнал х+ на входе 49, поступающий с выхода элемента ИЛИ 21, при Ч Е вЂ” 00 — у6 = х при Ч68 = 01 — 67 ф!1 при ЧЫ = 10 — у 61 Х46 2), при Ч6, = Il -у =Х (3).

Микрокоманда имеет два поля: адреса перехода к следующей микрокоманде и управляющих сигналов.

Код адреса следующей микрокоманды с первого выхода 61 регистра 58 микрокоманд поступает на второй информационный вход 52 счетчика 51 20 микрокоманд. Код управляющих сигналов с второго выхода 62 поступает на второй вход 66 выходного коммутатора 64, в котором осуществляется синхронизация управляющих сигналов тактовыми импульсами в соответствии с требуемой временной диаграммой. Тактовые импульсы вырабатываются генератором 63 и подаются на первый вход 65 выходного комму- 30 татора 64.

В процессоре используется синхронная организуя работы, при которой выборке и выполнению каждой микрокоманды соответствует один цикл, 35 разбитый на такты. Требования к временной диаграмме внутри цикла определяются в основном особенностями элементов, используемых в качестве блоков 87 памяти (фиг. 2), а также элементов, используемых в блоке 55 памяти микропрограмм. На фиг. 8 приведен пример временной диаграмма работы процессора. Каждый цикл Тд разбит на три такта

Первый такт t èñïîëüзуется для считывания очередной микрокоманды из блока 55 по адресу, поступающему на вход 56 из счетчика 51 микрокоманд. Считанная микрокоманда в первом же тактЕ записывается в регистр 58 микрокоманд. Длительность такта t должна превы1 шать время переходных процессов в блоках 55 и 58. Второй и третий такты (t> и t>) используются для обращения к блокам 87 памяти. Сигнал

V (2! разрешения обращения к блоку 87 памяти имеет длительность!

25

15 1108 второму, третьему и четвертому каналам соответствуют сигналы Х !3: ll,:: поступающие с выхода 9 старшего п-го операционного блока, а также иэ 4п-го и первого разрядов шины

10 Данных. Коммутатор 67 работает следующим образом.

446 16 двух тактов t и t>, он инициирует работу встроенных в блоки 87 узлов управления. Длительность второго такта t должна превышать время переходных процессов в узлах управления, дешифраторах адреса и коммутирующих ключах, встроенных в блоки 87 памяти (БИС, ОЗУ). В третьем такте t осуществляется запись кода на выходах регистра 104 числа в блоки 87 памяти, в этом же такте осуществляется модификация содержимого счетчиков команд и микроко" манд. На фиг. 8 показана 1иаграмма сигналов, используемых для синхроии" зации различных управляющих сигналов в табличном процессоре. Часть

cHI HBJIoB (V U, Up Хэ

Ч (1 V6!! Ugg y U9y у ЧИ2 7 требует синхронизации. Эти сигналы изменяются в момент записи считанной иэ блока 55 информации в регистр 58 микрокоманд, что отмечено иа временной диаграмме.

Распределим положение управляющих сигналов в формате микрокоманды (V6Z) и в коде управляющих сигналов V>ä на выходе выходного коммутатора 64.

Для кода Vg на управляющем входе 7 операционного блока (фиг. 2) примем

V (8: !) =Чав (2: l j в11.! о!!109 î Uyp

Бg>о Ч 1 j2: !)

Для кода Ч на выходе 50 выход= ного коммутатора 64

V we (34:13 =Ч,, (34:10 Vso Г9з l! (у уo U g o U î Vy (4:11 о Цжо U 2O 7 (: 1 Чэ (2: 11 о Хэ„(!О: 13 Чьв (2: 11) (т (8:5 ) 1!1т Пйо Ussî Vms (2: 1)) .

В коде Ч выделены две части: старшие двадцать пять разрядов соответствуют несинхронизированным сигналам, а девять младших - синхронизированным. Сигнал V (341 соот ветствует сигналу "Переполнение" и поступает на выход 77 процессора.

Установим соответствие между кодом

Ч - на выходе регистра 58, кодами

V и . Ч 0 на выходах 54 и 50 и тактовымй импульсами Ч6 3: 1g . .на выходе генератора 63 тактовых импульсов.

Согласно временной диаграмме (фиг.8) на управляющие входы 57 и 60 подается первый тактовый им

1108446

17 пульс Vg Г1),. второй н третий та ктовые импульсы подаются на вход 65 и используются в выходном коммутаторе 64 для синхронизации. При этом реапизуются следующие логические функции.

Ч,„4 (3 3 ** Ч д f373 Ч У(2), V f23 Vga 136ЬЬЬИ Ug2(35+g (23, Ч, f13- V<2 ОМ, Vso f34: 10 Vsz f34: 103, Во 93 -V„ 9>(V„(! P Ч„ f23) э

V ti) Ч g(i3 Vggf2j, где i 1,8;

V, (2)-Ч„ГЗ 3 — третий тактовый импульс, Чбйt f Ч 6Э (2 3 — второй тактоВый импульс, Асинхронные управляющие сигналы

Ч (З, Ч р (34:10) берутся непосредственно с соответствующих выходов 62 регистра 58 и в выходном коммутаторе 64 с этими сигналами никаких преобразований не выполня"

1 ется.

На фиг. 9 приведен пример реапиэации выходного коммутатора 64.

В табличном процессоре, структурная схема которого приведена на фиг. 1, все операции преобразования информации выполняются с помощью таблиц, специальным образом расположенных в блоках 87 памяти (БИС, ОЗУ). В этих же блоках памяти известным обоазом хранятся операн" ды, константы и программы вычислений.

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

4р фр

2р (4 р+4) 4 -(42X+<)+l

1(=2,2 х.2 Х.Z =0 ! I

2 1 4-1 х ... х

Фр 1

Особенности выполнения операции при ш > О (с целыми и смешанными числами) сводятся к случаю ш=О и требуют выполнения нескольких дополнительных сдвигов результата.

Рассмотрим операцию CXiD, где

4С - произведение; Х " множимое., D — множитель.

18

Объединяя по четыре разряда, представим числа Х в 2 -ичной ! системе счисления с фиксированной запятой о

ХЕК (Ь )+gj

Х"- . Х.2, O.Х, х .«,х х .43<

1 е> sj г ij где х4), х, х ., х — двоичные разряды, вошедш lе в j 20 группу, со10

0 ответствующую j-му разряду числа в шестнадцатеричной системе счисления, Анапогичным образом получим

Б )= 1 2

"(Cht4)+4 j ч:- -(Фр+41+4 ,С=Г с 2

1

2

Тогда произведение можно представить

<-И-XD„2 +ХВ„2 +...+XI 2

=(...((О+ХВ 2 )2 +XD 2 ), +XD „2 )2 хв„г

В соответствии с полученным пред. ставлением для вычисления произведениМ С можно использовать и-шаговую процедуру

Ъ

С" С 2 +XD 2 1 1 где i — номер шага, д1,п;

С вЂ” произведение на i-M шаге вы. полнения процедуры, С =0, С" = С.

Эта процедура аналогична широко распространенному в ЭВМ способу

35 умножения двоичных чисел с мпадших разрядов множителя, но отличается тем, что каждый шаг соответствует умножению на четыре, а не на один двоичный разряд множителя. Поэтому

40 число шагов уменьшена в четыре раза, за счет чего уменьшается время умножения.

Рассмотрим преобразования, связанные с умножением 4п-разрядного

45 множимого Х на четыре разряда множителя (Р; }: р р

XD D Х.Х.2 (в ) 41-, 2 1 + 4 41 ()(. ) } .где Х и D - четырехраэрядные, 1 целые двоичные числа.

Произведение Х ° D1 есть 8-раз1 ядное целое двоичное число. Пре ставим его в виде

" Г+ )1} fe; )=fl С+ 3 ф:1)=П . Z + .

j x 1 j j j1

I 108446

1 где П.

S 1

Испол ь з уя получим

Х D Х П; дес. дес. дес.

Х

ДВ °

1 дв.

l5 15 225

15 14 210

255 )I)0000 1

254 1101!)00

195 110000)l

llllllll

111 11.110

l l l ) 110) 1110 000!

1101 ) 100

)I00 00)i

195

00010001

00010000

17 00000001

16 00000000

0000 0001

0000 0000

0000 0000

0000 . 0000

1 0000000

0 0000000

0000000!

00000000

0 старшие четыре разряда; младшие четыре разряда произведения. полученное представление, п

К!!.2 =Х и 2 S 2 2

3=1 3 л и

-(4n+4)+%I — -)4п+4 )Ч) -О

=. П. 2 + .2 2

$ j=q 7

=П!+5!2 4.

Отдельные (j-e) .шестнадцатиричные разряды чисел П и S полностью ! определяются значением четырехразрядного кода D и соответствукицего. четырехразрядного кода Х и могут быть представлены как системы логических функций

П (4: )j = F (D (4:)3, Х ° (4: I) );

S . (4:1) = F (D;(4:Ig, Х (4:)J), где j=l,n;

Г), F2 — системы иэ четырех восьмиместных логических функций

Система функций F и F могут быть реализованы табличным способом

2 с использованием последовательности пр еобр аз о наний

D 4 П .

Х.o D. — h. — " 5. где )),п;

) Х < D. ) — множество восьми)0 разрядных кодов Х oD

Ф

F g y > — функции отображения множества кодов на множество адре" сов А блоков памяти, реализуеt алые независимо во всех четверках

f 5 р аз рядов

Р„ .— стандартная операция чтения из блоков памяти, соответствующая отображению множества ад" ресов в множество кодов на вь|ходе

20 блоков памяти. В блоках памяти должны храниться таблицы преобразований ! 1-! )f ° "1-!" соответствующие таблице умножения четырехразрядных двоичных кодов.

Z5 Поясним составление таблиц, используя для удобства чтения представ ление кодов как в двоичной (дв. ,так и в десятичной (дес.) системе счисления. Преобразования определены на 2 наборах значений кода

Х- o D; и могут быть представлены

KaD П S) дес. ! дв. дв.

I8 000000)0 0000 0010

1108446

22 где Х D> — произведение кодов Х и D!, Х o D — результат конкатенации

) (приписынания) кодов Х и Р1, Х e D. в десятичной системе счйсле1 я соответствует десятичному номеру ячейки (адресу) в сегменте из 256 ячеек, столбцы П и S соотнетствуют таблицам сист м F и F из четые рех 8-местных Логических функций.

Для размещения таблиц F отведен . первый сегмент накопителя блоков 87 памяти с адресами (0,...,255), а для размещения таблиц F> - второй сегмент с адресами (256,...5»). В выделенных сегментах таблицы преобразований периодически повторяются в каждой четверке разрядов. Размещение таблиц поясняет фиг. 10.

На фиг. )! приведена схема преобразований для формирования адреса обращения к таблицам систем функций

Р.) и Р2 независимо в каждом операционном блоке 1, содержащий четыре разряда. Она соответствует выражению е

А! fmé )) Aj (12!) =Сз С2:1) 7 С21:, . 203 Х С 4: 1) о )3 (4: )-), где код С =00 определяет область памяти объемом )K слов, к которой имеется доступ на микропрограммном уровне;

V> P ):20 ) — два разряда н управляющем коде на выходе 50 блока 46 микропрограммного управления, которые в выделенной области памяти задают адрес сегмента из 256 ячеек; код Х 00.; -, соответстнует четырем разрядам множимого и четырем разрядам множителя, этот код определяет адрес ячейки в выбранном еегменте памяти.

Рассмотрим реализацию преобразований, показанных на фиг. 11. Для обращения к таблицам используется четвертый канал (В ) адресного мультиплексора 30. За счет соответствующих соединений информационных- входов 35 и 3) образующих четвертый канал, реализуется операция конкатенации

В !(ш! 1) =В С)2:!.) Cу С2: 1) Х С)О:1) =00 7.O f 2):12).

При 7 11 — У у В 00

© gь (21: !23.

Старшие m»»8 4 разряда кода У

3Ь полученного на выходе адресного муль). типлексора 30, лоступают. на старшие

m-8 разрядов адресных входов 8 всех операционных блоков 1. На мпадшие четыре разряда адресных входов 8 через управляющий мультиплексор 22 поступает код D -"У с выходон ре4 18 гистра )8 множителя. Для этого на вход 25 подается управляющий сигнап 025=0 На разряды 5,.",8 вхо-!

О дов 8 н каждом j-м операционном блоке 1 подается код Х с соответ3 ствующих выходов регистра 15 множи- . мого через управляющие мультиплексоры 26. Дпя этого на управлякицие вхо-!

5 ды 29 подается сигнал U =О.

29

Рассмотрим функциональную микропрограмму операции умножения. Поскольку число шагов алгоритма уменьшено в четыре раза, с целью повьнпе20 ния производительности следует испол)ьзонать микропрограмму без циклов. С целью упрощения записей микропрограмму рассмотрим применительно к случаю умножения двух вось25 .миразрядных чисел. На фнг. 12 приведена укрупненная схема алгоритма микропрограммы умножения.

Микропрограмма умножения °

Начало.

Мl. Р1 6 Х, на М2; {» чтение из памяти по адресу А = У „ множимого Х и запись era в регистр ) 5+) °

Р<>-D1 H (Y42) Си ° )3 (Р д) Ото на МЗ, иначе на И4; (» чтение из памяти по адресу А У

42 множителя D, выделение четырех мпадших разрядов (D ) и запись их в,реI гистр 18, проверка содержимого на равенство нулю Ф ).

МЗ. РЧ . 0...0, на М9; (» запись в регистр 104 числа нуля »).

М4. РЧ - Г2(Х,0 ). íà М5; (» вычислеI нне Sтабличным способом,,запись результата в регистр 104 числа РЧ +)

М5. ОЯ +. РЧ, на М6:, (» зались в оперативную ячейку памяти содержимого регистра 104 числа РЧ + ).

И6. РЧ+-(ОЯ > 2, íà М7; (-+ чтение

-4 числа из оперативной ячейки ОЯ и запись со сдвигом на четыре разряда вправо в регистр числа »).

N7..Ð0 - Г„(Х, 0.)),на М8; (» вычисление П табличным способом и запись в регистр 107 операнда » ).

М8. РЧ+-РЧ + PO, на М9 (Ф сумЭ t мирование чисел из регистров числа

104 и операнда 107, и зались результата в регистр числа, результат соответствует. частичному произведению

1 ) 08446

23

С = П + 8 2 ).

Рц Р = Н (Y ) ).8:53 (Р!з)= О на МIО, иначе на М)1 (4 чтение из памяти множителя D, выделение четырех разрядов 5,...,8 (Р ) и запись их в регистр 18, проверка содержимого на равенство нулю 8)

N)0. ОЯ4- РЧ, íà М15; (4 запись числа из регистра числа в оперативную ячейку памяти +).

M) 1. PO+ Fg (Х,Р2), на М)2; (я вычисление S табличным способом, запись результата в регистр операнда 107 ).

М12 РЧ»- (РЧ + РО) 2, на М13; (сложение чисел из регистров числа и операнда и запись результата со сдвигом на четыре разряда вправо в регистр числа Ф).

M) 3. PO+-Р„(Х, Р ), на М14; (Ф вычис ление П табличнйм способом и запись в регистр 107 операнда ).

MI4. РЧ+-РО + РЧ, на М)6; (+ суммирование чисел иэ регистров операнда

107 и числа 104 с записью резуль.тата в регистр числа; результат соответствует произведению С = С

= П + (С - S ) 2 -4 ).

И15. РЧ +.(ОЯ ) 2 4, на И)6;/(Ф чтение ОЯ памяти и запись считанного числа со сдвигом на четыре разряда вправо в регистр числа, записанное число соответствует произведению

С = С ).

М16. Н (Y g)»-РЧ; C СК43 > (СК43 > + I; (+ запись результата в накопитель памяти по адресу

А = У+, модификация содержимого счетчика 43 команд прибавлением единицы ) .

Конец.

Для иллюстрации алгоритма рассмотрим пример умножения двух чи. сел Х = (О), )1111)11 и D (О) ll010001:

И2. D =D(4 13=0001, Р„ О,на М4.

М4. РЧ»-S =1)0)0001, на М5.

М5, М6. РЧ !-S 2 =00001101, íà М7.

N7. РО»-П = 00000000; на М8.

И8. РЧ»-РЧ + PO = 00001101 +

+ 00000000 = 0000! )01, на М9.

М9. Dg = Р(8:51 = 1)01 !! О, íà N)).

Мl! . РО» $ = 00110011, íà М12.

M)2. РЧ»-(РЧ + PO) 2 4 = (00001101 +

+ 00110011) 2 = 00000100, иа И13.

M)3. PO Ï = 11001100, на М14.

М14. РЧ» С = PO + РЧ = 1!001100 +

+ 00000!00 = 110)0000.

Конец.

24

Рассмотрим выполнение в табличном процессоре операции суммирования

РЧ 4- PO + РЧ, которые используются и в алгоритме умножения, Сразу после записи слагаемых в ре" гистры 104 и 107 в узлах 100 формирования переносов возникает переходный процесс, связанный с распространением "волны" переносов, III Этот переходный процесс должен закончиться до;начала следующего цикла работы процесс эра (фиг.9). Суммирование выполняется за один цнкл обращения к блокам 87 памяти. При этом на старшие m-3 разряда адресных входов

89 через входы 8 поступает одинаковый код адреса, определяющий адрес сегмент® из воСьми ячеек, которому соответствуют, например, ячейки с адресами 528,...,535 (фиг. )0). В каждом разряде этого сегмента записана таблица трехместной логической функции у = х1 (+) х (+) х, как показа" но на фиг. 10.

Адресация K ячейкам сегмента lIpH выполнении суммирования осуществляется независимо в каждом разряде. На третий разряд адресного входа 89 подается сигнал с входа 82 через коммутатор 96. Этот сигнал соответствует переносу из соседнего младшего разряда операционного модуля 78, На первый и второй разряды адресного входа. 89 подаются сигналы с выходов регистров )04 и 107 через ком35 мутатор 92. На управляющие входы 95 и 99 подаются единичные сигналы.

Рассмотренная таблица трехместной логической функции может быть использована как две таблицы при вы4О полнении операций реализации пораз-. рядных двухместных логических функций: ,= -,O+-,,= „т, 4 В ячейках 536,... размещаются таблицы других двухместных логических функций. Так, на фиг. 10 показано размещение во всех разрядах ячеек 536,...,539 таблиц функции

50 Уз=х.)х . При реализации двухместных логических функций на управляющие входы коммутаторов 92 и 96 подаются управля ние с на из,=), U»=0.

При этом на третий разряд адрес55 ного входа 89 подается сигнал треть"

его разряда с выхода адресного мультиплексора 30, а на первый и второй разряды входа 89 подаются сигналы с выходов регистров 104 .и 07, соот25

I I 08446

10

25

Hli

V«-010, У,,-О, О;Д-l, О„-1, U 5 0 Озз О Н 12 00 0« "4»

О. — 0» Ч 4 =0» ЧЭб=оо» XS

О 000 000 000, Ч„-ОО, Ч„*10, U =0» U q7 =1, U>< =О, 0 5 0»

V,„-ОО.

М2.

Ч ь-110, У„=O, u„-1, U< l, О =О, .О УО» Ч1 00, U760» О7 О, V„+-0O, О, -О1, Х„-ОООООООООО, V&8 — 00> Чэ =10 О н»ь 0» Ueo =0»

О„,-а, u>p-l, u»--O, Ч =01.

M3..

Ч»54 0 0» У77 О, О 29 =!» Uy I »

9 0 ОМ 0 %2 00 О 0 U72

4 00 ЧэЬ 1! 10 чъ вается код 0...0 иэ ячейки с адресом 528, фиг. IO ).

HII.

V„,=!010, у„,-а, О,-О, и, 0, 0„-0, Оз =о, Ч„,=ОО, О =0, О,-О, о

Ч74 =00, V„=l l, Xg)-0100000000, v&8=00» ЧУ!0» U„06 1» ОМ90»

ЙО » Э 4%

И .

V y»0I0» у =О, UgfI *1, О а=1»

Оз 0» оэ9 0» ч» 2 00» Ота о» О О»

Ч 00,- Чэь- 11 Py) 1000100100»

ЧЬЭ 00» Чзф»»,!» О»оь»»0» up@ 0», \ ветствующие аргументам реализуемых функций. Тип реализуемой функции определяется адресом сегмента и запи. санными в нем таблицами. Адрес сегмента формируется с использованием четвертого канала адресного мультиплексора 30. Соответствующая информа. ция записывается в l4. ..21 разрядах микрокоманды

А(ш:3)А $12:3)00 Ф VS2f21 14), При реализации функции 9 =x,,x таблица которой размещена в ячейках

536» ° ° ° »539» Vgg (2 I I4)= I 00001 IO

При суммировании адресация к сегмейту с таблицей функции х„@ха®

®х осуществляется через четвертый канал адресного мультиплексора 30 (U < II). При этом в 15,...,21 раз рядах микрокоманды должен быть записан код 7 (21:15j = 1000010.

Определим последовательности управляющих сигналов, которые должны быть сформированы в блоке 46 микропрограммного управления при выполнении команды умножения:

0 „=0, U2 *О, U >> 0» V+< 00 (Ф з апись производится в ячейку с адресом

А = 548 001000100100 %) .

N6, 010 $ 0 U «! . О23

=О, ч;„2 11» О,=о» О, =О

Ч„, -00, Ч„-l l, Х =1000100100, Чь8 00, Чзо =10, U gag «l 01оэ=0, д 0 UQ 0

И7.

Vg4=Ol0» у =0, V =1 » О Э=!»

0 =О, О =О, Ч,.12 00, 0 " =0, 0„ .=О, Ч74 ОО, Ч =11, ХЭ =0000000000, Чц =ОО, Чзь =10» О1ОЬ=О, о э=1, О 17 О» О2р О» ОЭф 0» Ч4Ь. =00 °

И8.

Ч54 =01 0» у7 =0» 02у=1» 0 25=!»

» »» 1 7Ь

Ч„, =00, Ч„=l о, 0„,=1, О.16У=О, О 1 -0 О в 0 О з «О Ч, 00

И9 °

Ч 4» I 10» у77 0 О2 1, U

Ч14 «0,1 ЧЭ «О1, X „«О0ОаОООООО, О„,=о, О„=l, О„=О, Ч4,= О.

Иl а., .Ч54=0 ID Ф 7 О О2У 1 U

u.. =0, О 0, У«2СО, О 7ь-а, -, 072 0» Р7»» » 00»Vgg I I » X

l D00100 l00 Ч gg 00, V I I

Цеь=а» Офз О» О77=0» Ощ «О» О о».

Ч45-00 .

Иl l °

V <4.=0 l 0 f У„=Î, о„-- 1, О„=1, О,, =О,О -О,Ч„ -ОО, О„-О О„-оо,Ч,„-00, Ъ- ll, Хэ,. *0100000000, Чь =00, зо О, О1оь =О, О1 Э-1, 07т О, О2е=о, Озз=а, Ч 5=00.

И12.

Ч,. =010„у„=о, О,,=1, U =l,,US% =1i i.. Ом-l» .Ч 2-llt и 7Ь О Uy2«0» V14=00» V 11» (1 0000 0000 Чщ 00 Чщ

Utah О я =о " 77=0 ОФФ Оэ9 =

Ч45=00, И13 4=010, у 00, Uy 1, Up =1, О„= » О„-О, „, 00, О, =О, О„-О, Ч„=ОО, Ч„-11, Х,„=

= 0000000000, V,-ОО, V„-10, О н»ь 0» О АЗ !» О » О» О О»

77 to ЭЗ

М14.

Vg4 010 у7т О, U 1, U2 =!»

О„-1, О;,-1, „,-00, О„=О, О,=О, Vq40D Чэе 11» Х "1000010000

1108446

28

Vgl! =00 Ч вЂ” — 1О, 0 -1, 04рэ =О, 0т! =0, Ugq=0, 0 =О, Ч., рОО.

N15.

Vg<-О1О, у =О, U> =1, 0 =1, 0 у=О» 0 =0» ч 1 =11» 0 !ь =О, 0„=0, V =OO» Ч„-11, 1000100100, Ч =ОО, V 10, 0ц>«!» 0 !щ 0» 01 0» 0 !} 0»

0 э=О, Ч =00.

Н16.

Ч54.=010» ye=00, 02э=1» 02g=l »

095 0» 0 9 О» Ч т»2 00» 07 0» 0>>0 !

Ч !4. =Од» Ч gg =01, У „

= 0d00O00000, V <> =00, Ч =11, 1ое О» 0»оэ =0» U< =0» 02о =О, 0 =О, Ч,=10 .

39

После выполнения последней микрокоманды в микропрограмме (в данном случае М!6) осуществляется переход к микрокоманде, наприме р !! 17, при выполнении которой производится чтение из памяти новой команды по адресу, код которого берется из счетчика команд, запись команды в регистр 37 команд и запись кода операции в счетчик 5! микрокоманд по входу 47. При этом формируются следукицие управляющие сигналы:

И17. V 001, у -О, U„— 1, U -1, 0 0, 0 =0, Ч„, =ОО, э0 =О, 0 =О, (4 00 ° Ч 1 О X 0000000!

При 4n ) 8 в схеме алгоритма на фиг. 12 следует увеличить число фраг ментов, соответствукщих умножению на четыре разряда множителя (М9,...М15). В общем случае при умножении 4п-разрядных чисел для времени умножения t ïîëó÷èì следующую среднюю оценку, полагая, что О и в каждом разряде равновероятны:

15 l

2+ -- . 5 + — + (п-!)«

16 16 !

5 2

«(!+ — 4+--) + l Т

l6 1,, 0(2,875 + 4,88 n) Т .

Составив соответствующую микропрограмму, можно показать, что при использовании известного наиболее распространенного в ЭВМ метода умножения двоичных чисел с младших разрядов потребуется в среднем время

t = (26n+ 6) Т f о

Определим относительное уменьшение времени умножения при использовании таблично-алгоритмического метода: !

4" < у /Tl! ty/То(ч М"ч ty/t

8 58 !2 6 0 78 4 6

16 !О 22,4 0,80 4,9 !

О

32 2!4 41,9 0,805 5,

64 422 81 0,81 5,2

» !

Таким образом, в1!емя умножения уменьшается в среднем, в 5 раз. Это достигается как за .счет уменьшения числа магов в алгоритме (в 4 раза), . так и за счет исключения циклов.

Рассмотрим способ деления в таблич - ном процессоре Т Х: P где Х делимое, P — делитель, Т - частное.

Представим операцию деления последовательностью. двух операций — обраще25 ния и умножения

Т (1/Р) Х

Для операции обращения У I/P воспользуемся итерационной процедурой

30 2

У =2У; — У P где У; — i-е приближение результата, Процедура имеет квадратичную сходимость, т.е. при очередном (i-м}

35 шаге числО верных разрядов в результате У! удваивается.

Рассмотрим способ определения начального приближения Уо =!/Р.

В общем случае 4п-разрядное чис40 ло Р, представленное в форме с фиксированной запятой, может содержать

5 нулей в старших разрядах, О 4 S < n.

Будем рассматривать число P 2, в старшем разряде которого единица.

4S Приближенно представим его числом

R, пять старших разрядов которого совпадают со старшими разрядая4

S числа Р.2,,а остальные равны нулк!

R P ° 2 . Числа R расположены s

50 интервале (2 ", 1-2 ).

Рассмотрим число- Z,,пропорцио-. нальное обратному значению К:

2 — — 2 C(l 2 )..

1 о

»

5S

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

1 108446

t0

Оценим погрешность представления чисел,Р2 числами R

Р 2 -К 2

8 ф

Ф - = 4 - †- 2

@ 2-1

При этом погрешность определения начал ьного приближения

Еь2 . "-1 Р

Ее " F (R) и разместим ee в ячейках, памяти с адресами 512,...,522 . (фиг.10) таким образом, чтобы четы-, ре младших двоичных разряда адреса совпадали с 4п-1, 4п-2, 4п-З, 4п-4 разрядами соответствующих значений

R. Для выделения требуемых разрядов число R сдвигается влево на один разряд, из сдвинутого числа мультиплексорами 12 выделяются четыре старших разряда и записываются в регистр 18.

Для обращения к таблицам F адрес требуемого сегмента памяти поступает иэ блока 46 микропрограммного управ- 15 ления через адресный мультиплексор

30, а адрес требуемой ячейки в сегменте (четыре младших разряда кода адреса на входах 8) - с выхода PI8 через управляющий мультиплексор 22. 20

При этом Vg 11, U gW, U ""1. Таким образом, для определенйя Z табличным способом используются те же технические средства, которые были введены для ускорения уьжоже- 25

НИЯ е. составит

2 1 Р (17Р)

P.2

e — — — 1 а

Р 1

Таким образом, в Zo 6 (!,2 ") можно считать достоверными четыре старших разряда, остальные разряды в числах, являющихся элементаьы таблицы преобразования Е F (R), следует принять равными йулю (фиг.10).

-(5411

Для определения Z Т 2 (1/Р) 2 9 11будем испольэовать итерационную процедуру

Е l+< (Е1-(Р 2 )Е;Е1)2, где i0,1....., В этой процедуре используется число Р, сдвинутое íà S разрядов влево при вычислении R, и число Z, полученное с использованием таблицы.

После вычисления Z с требуемой точностью для определения частного

Т следует выполнить операцию Т =

- ЕХ2 ".

Анализ соответствующей микропрограмм показывает, что время деления указанным способом в сравнении с распространенным методом деления многократным вычитанием делителя и сдвигов уменьшено в среднем на 20Х.

Таким образом, за счет уменьшения времени умножения и деления обеспечивается повышение производительности процессора.

1108446

110844б

1108446

f0

Фиг.4

1108446

1 08446

l 108446

ФигЗ! 108446

Фиг. ф

ВНИИПИ Salas 5866/35 Тираж 699 Подищсвое

Филааа ИПП "Патеат", г. Ужгород, ул..Проектиаи,4

y(f2l 13

1108446

РЕФАТ: Ц

41112: U

Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор Табличный процессор 

 

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

Изобретение относится к устройствам программного управления и предназначено для использования в составе автоматизированных систем управления и регулирования с использованием ЭВМ вышестоящего уровня

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

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

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

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

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

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

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

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