Специализированный процессор

 

СПЕЦИАЛИЗИРОВАННЫЙ ПРОЦЕССОР , содержащий блок умножения,, первьй выход которого подключен к первому информационному входу первого коммутатора, второй информационный вход которого подключен к информационному выходу первого регистра, информационный вход которого является информационным входом процессора, информационный выход первого блока постоянной памяти подключен к треть ему информационному входу первого коммутатора, первый информационный выход которого подключен к адресным входам первого и второго блоков постоянной памяти, выход сумматора подключен к четвертому информационному входу первого коммутатора, пятьм информационный вход которого подключен к информационному выходу второго блока постоянной памяти, второй регистр, третий регистр, информационный выход которого является информационным выходом процессора, блок управления, отличающийся тем, что, с целью его упрощения, он содержит блок памяти, четвертый регистр, второй и третий коммутаторы, блок деления , выход знака которого подключен к установочному входу четвертого регистра , информационньй выход которого подключен к первому информационному (Л входу второго коммутатора, информационный выход которого подключен к информационному входу третьего регистра , первому информационному входу блока умножения, первому входу сумматора и шестому информацио нному входу первого коммутатора, второй 4 4;: информационный выход которого подключен к информационному входу блока памяти и первому информационному входу третьего коммутатора, информационный выход которого подключен к информационному входу четвертого регистра , второму информационному входу второго коммутатора и информационному входу второго регистра, первый выход которого поразрядно подключен к третьему информационному входу второго коммутатора, информационный выход блока памяти подключен к второму информационному входу третьего коммутатора, установочньй вход второго регистра подключен к

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

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

РЕСПУБЛИН (19) (11)

4(51) С

ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР по делАм изовретений и отнеытий

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

H АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (21) 3624974/24-24 стоянной памяти, выход сумматора под(22) 19.07.83 ключен к четвертому информационному (46) 07.03.85. Бюл. N- 9 входу первого коммутатора, пятый ин(72) А.И. Водяхо, В.В. Грушин, формационный вход которого подключен

В.Г. Лукоянычев, В.У. Плюснин, к информационному выходу второго блоД.В. Пузанов, В.Б. Смолов и В.В. Ша- ка постоянной памяти, второй регистр, ляпин третий регистр, информационный вы(71) Ленинградский ордена Ленина . ход которого является информационным электротехнический институт выходом процессора, блок управления, им. В.И. Ульянова (Ленина) отличающийся тем, что, (53) 681.32(088.8) с целью его упрощения, он содержит (56) 1. Оранский А.М. Аппаратные блок памяти, четвертый регистр, втометоды в ЦифРовой вычислительной рой и третий коммутаторы, блок делетехнике. Минск, изД-во Белорусского ния, выход знака которого подключен университета, 1977, с. 208. к установочному входу четвертого ре2. Оранский А.М., Рейхенберг А.Л* гистра, информационный выход которого

Повышение эффективности вычислений подключен к первому информационному испс)льзованием табличных предпроцес- входу второго коммутатора, информасов. — В кн.: Теория и применение ционный выход которого подключен к С" математических машин. Минск, изд-во информационному входу третьего реБелорусского университета, 1972, гистра, первому информационному вхос. 158-162. ду блока умножения, первому входу

3. Авторское свидетельство СССР сумматора и шестому информационному

М .723581, кл. G 06 F 15/20, 1980 входу первого коммутатора, второй (прототип). информационный выход которого под(54)(57) СПЕЦИАЛИЗИРОВАННЫИ ПРОЦЕС- ключен к информационному входу блоСОР, содержащий блок умножения„ ка памяти и первому информационному первый выход которого подключен к входу третьего коммутатора, информапервому информационному входу перво- ционный выход которого подключен к го коммутатора, второй информацион- информационному входу четвертого реный вход которого подключен к инфор- гистра, второму информационному вхомационному выходу первого регистра, ду. второго коммутатора и информаинформационный вход которого являет- ционному входу второго регистра, ся информационным входом процессора, первый выход которого поразрядно информационный выход первого блока подключен к третьему информационному постоянной памяти подключен к треть - входу второго коммутатора, информаему информационному входу первого ционный выход блока памяти подключен коммутатора, первый информационный к второму информационному входу выход которого подключен к адресньи третьего коммутатора, установочный входам первого и второго блоков по- вход второго регистра подключен к

1144117 выходу модуля блока деления, информационный выход которого подключен к второму информационному входу блока умножения, второй выход которого подключен к информационному входу блока деления, причем блок управления содержит блок постоянной памяти, регистр, первый и второй счетчики, первый и второй коммутаторы, четыре сумматора по модулю два,. дешифратор, два элемента НЕ, шесть элементов И и элемент ИЛИ, при этом в блоке управления информационный выход блока постоянной памяти подключен к информационному входу регистра, выход первого разряда которого подключен к.счетному входу первого счетчика, выход i-ro (i = 1,4) разряда которого подключен к первому входу i-го сумматора по йодулю два, ввиод которого подключен к i-му входу первого элемента И, выход которого подключен к первому входу второго элемента И, выход которого подключен к первому входу элемента ИЛИ, выход которого подключен к первому управляющему входу первого коммутатора блока управления, информационный выход которого поразрядно подключен к информационному входу второго счетчика, информационный выход которого подключен к адресному входу блока постоянной памяти, выходы второго .и третьего разрядов регистра подключены к входам соответственно первого и второго элементов НЕ и соединены соответственно с первым и вторым входами третьего элемента И, выход которого подключен к второму входу второго элемента И и соединен с первыми входами четвертого и пятого элементов И, выходы которых подключены соответственно к второму и

I третьему входам элемента ИЛИ, четвертый вход которого подключен к выходу шестого элемента И, первый и второй входы которого подключены к выходам соответственно первого и второго элементов НЕ, выход четвертого . разряда регистра подключен к второму

Изобретение относится к вычислительной технике и может быть использовано как в качестве периферийного процессора вычислительной системы управляющему входу первого коммутатора блока управления и счетному входу второгО счетчика, вход синхронизации которого является входом запуска процессора, выход пятого разряда регистра подключен к вторым входам четырех сумматоров по модулю два, выход шесто. го разряда регистра подключен к второму входу пятого элемента И, третий вход которого подключен к первому информационному выходу второго коммутатора блока управления, второй информационный выход которого подключен к второму входу четвертого элемента И, выход седьмого разряда регистра подключен к входу дешифратора, выход которого подключен к первому е управляющему входу второго коммутатора блока управления, третий информационный выход которого является выходом аварийного завершения вычислений процессора, первый выход регистра блока управления подключен к первому информационному входу пер вого коммутатора блока управления:, второй информационный вход которого соединен с управляющим входом второго коммутатора блока управления и является входом задания функции процессора,. второй выход регистра блока управления поразрядно подключен к адресному входу блока памяти, выходы восьмого — восемнадцатого разрядов регистра блока управления подключены соответственно к входу синхронизации первого регистра, управляющим входам первого и второго блоков памяти, управляющим входам первого и третьего коммутаторов, управляющим входам второго регистра и второго коммутатора, входам синхронизации четвертого регистра, блока умножения, третьего регистра и блока деления, третий выход регистра блока управления поразрядно подключен к второму входу сумматора, а второй и третий информационные входы второго коммутатора блока управления поразрядно подключены соответственно к второму выходу второго регистра и третьемувыходу блока умножения. г.—.(ВС), так и в качестве вспомогательного процессора, входящего в состав арифметического процессора ВС, для вычислений функций е", ln х, sin x

1144117

Известны процессоры для вычисления элементарных функций табличного. типа на основе постоянного запоминающего устройства (ПЗУ) И .

Подобные устройства отличаются высоким быстродействием, однако при работе с аргументом, содержащим

16-20 двоичных разрядов, объем ПЗУ становится недопустимо большим. В ряде случаев, в частности в современ- 10 ных универсальных ЦВМ общего назначения, необходимо вычисление функции со значительно большей точностью (50-60 двоичных разрядов).

Развитием табличных методов являются таблично-алгоритмические методы, позволяющие при приемлемых аппара-, турных затратах получить вшсокое быстродействие, сочетая его с высокой точностью вычисления P2) .

Наиболее близким к изобретению по технической сущности является специализированный процессор для вычисления функций е", 1п х, sin x содержащий входной регистр, первый 25 выход которого связан с первыми входами множительного устройства (МУ) и сумматора, выход сумматора соединен с первым входом вьгходного регистра и вторым входом второго регистра, выход выходного регистра соединен с первыми входами элементов И первой группы, выходы которых подключены к второму входу МУ, к третьему входу которого подключен первый выход счетчика порядка, выход МУ подключен к первому входу входного регистра и к второму входу сумматора, третий вход которого подключен к выходам элементов И второй группы, первые входы которого подключены к выходу ПЗУ, второй выход входного регистра подключен к первому входу сдвигателя, выхсд сдвигателя соединен с входом ПЗУ третий выЭ 45 ход входного регистра подключен к входу запоминающего устройства,. выход которого соединен с четвертым входом МУ, второй выход счетчика порядка подключен к второму входу

50 сдвигателя, второй вход счетчика порядка и третий вход входного регистра подключены к первому и второму входам процессора, к выходу которого подкггючен выход выходного регистра (3) .

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

40 Кбайт. Другим фактором, ограничивающим число аппаратно реализуемых функций, является существенныгг разброс относительной частоты появления различньгх функций. 11рямая аппаратная реализация в этом случае приводит к снижению эффективности использования оборудования. Принципиально возможна программно аппаратная реализация редко встречающихся функций с использованием арифметических устройств ЦВМ. Однако в современных г высокопроизводительных ЦВМ время пересылки операнда между центральным и периферийным оказывается сравнимо со временем выполнения арифметической операции, что приводит к резкому снижению фактической эффективности от использования специализированного процессора. Поэтому в процессор вводятся средства для аппаратно-программной реализации относительно редко встречающихся функций через аппаратно реализуемый базовый набор.

Остальные элементарные функции (ЭФ) и ряд специальных функций (СФ) (показательный интеграл и интегральные синус и косинус) вычисляются по подпрограммам, хранящимся в микропрограммной памяти спецпроцессора.

Цель изобретения — упрощение процессора.

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

1144117 памяти, выход сумматора подключен к четвертому информационному входу первого коммутатора, пятый информационный вход которого подключен к информационному выходу второго блока 5 постоянной памяти, второй регистр, третий регистр, информационный выход которо го является информационным выходом процессора, блок управления, содержит блок памяти, четвертый регистр, второй и третий коммутаторы, блок деления, выход знака которого подключен к установочному входу четвертого регистра, информационный выход которого подключен к первому 1S информационному входу второго коммутатора, информационный выход которого подключен к информационному входу третьего регистра, первому информационному входу блока. умножения, пер- О вому-входу сумматора и шестому информационному входу первого коммутатора, второй информационный вьгход которого подключен к информационному входу блока памяти и первому информацион- 25 ному входу третьего коммутатора, информационный выход которого подключен к информационному входу четвертого регистра, второму информационному входу второго коммутатора и информационному входу второго регистра, первый выход которого поразрядно подключен к третьему информационному входу второго коммутатора, информационный выход блока памяти подключен к второму информационному входу третьего коммутатора, установочный вход второго регистра подключен к выходу модуля блока деления, информационный выход которого подключен 40 к второму информационному входу блока умножения, второй выход которого подключен к информационному входу блока деления, причем блок управления содержит блок постоянной памяти, 4 регистр, первый и второй счетчики, I первый и второй коммутаторы, четыре сумматора по модулю два, дешифратор, два элемент НЕ, шесть элементов И и элемент ИЛИ, при этом в блоке уп- у равления информационный выход блока постоянной памяти подключен к информационному входу регистра, выход первого разряда которого подключен к счетному входу первого счетчика, выход i-го (i = 1,4) разряда которого подключен к первому входу i-ro сумматора по модулю два, выход которого подключен к i-му входу первого элемента И, выход которого подключен к первому входу второго элемента И; выход которого подключен к первому входу элемента ИЛИ, выход которого подключен к первому управляющему входу первого коммутатора блока управления, информационный выход которого поразрядно подключен к информационному входу второго счетчика, информационный выход которого подключен к адресному входу блока постоянной памяти, выходы второго и третьего разрядов регистра подключены к входам соответственно первого и второго элементов HE и соединены соответственно с первым и вторым входами третьего элемента И, выход которого подключен к второму входу второго элемента И и соединен с первыми входами четвертого и пятого элементов И, выходы которых подключены соответственно к второму и третьему входам элемента ИЛИ, четвертый вход которого подключен к выходу шестого элемента И, первый и второй входы которого подключены к выходам соответственно первого и второго элементов НЕ, выход четвертого разряда регистра подключен к второму управляющему входу первого коммутатора блока управления и счетному входу второго счетчика, вход синхронизации которого является входом запуска процессора, выход пятого разряда регистра подключен к вторым входам четырех сумматоров по модулю два, выход шестого разряда регистра подключен к второму входу пятого элемента И, третий вход которого подключен к первому информационному выходу второго коммутатора блока управления, второй информационный выход которого подключен к второму входу четвертого элемента И, выход седьмого разряда регистра подключен к входу дешифратора, выход которого подключен к первому управляющему входу второго коммутатора блока управления, третий информационный вьг ход которого является- выходом аварийного завершения вычислений процессора, первый выход регистра блока управления подключен к первому информационному входу первого коммутатора блока управления, второй информационный вход которого соединен с управлякицим входом второго

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

Сущность изобретения заключается 2 в многофуйкциональном использовании операционных устройств и применении отнотипных алгоритмов, за счет чего уменьшается оборудование. Оборудование умножителя, которое занимает 39 значительный. объем, используется для деления путем введения небольшого вспомогательного блока и двух регистров. Наличие операции деления позволяет аппаратно реализовать 35 функции типа агсЦх, а микропрограммно все остальные элементарные функции (ЭФ). Вычисление каждой аппаратно реализуемой ЭФ может быть сведено к небольшому числу действий по предварительной обработке аргумента и вычислению степенного ряда одинаковой степени, Кроме того, через аппаратно реализуемые ЭФ и стененные ряды невысокой степени можно вычислять ряд специальных функций.

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

На фиг. 1 представлена структур ная схема предлагаемого процессора, на фиг. 2-4 — функциональные схемы коммутаторов; на фиг. 5 — функциональная схема умножителя; на фиг. 6 - 55 функциональная схема ячейки матрицы умножителя; на фиг. 7 — функциональ-, ная схема перекодировщика умножителя; на фиг. 8 и 9 — функциональные схемы блока деления; на фиг. 10 и

11 — функциональные схемы блока управления; на фиг. 12-18 — блок-схемы алгоритмов вычисления функций е (фиг. 12), 1пх (фиг. 13), sin x и cos х (фиг. 14), arctgx (фиг. 15), -1х (фиг..16), EXPI (фиг. 17), S; (х), С;(х) (фиг. 18).

Специализированный процессор (фиг. 1) содержит регистр 1, коммутатор,2, блоки 3 и 4 постоянной па- мяти, блок 5 памяти, коммутатор 6, . регистры 7 и 8, блок 9 управления, коммутатор 10, блок 11 умножения, блок 12 деления, сумматор 13 и регистр 14.

Коммутатор 2 построен на стандартных микросхемах мультиплексоров (фиг. 2), коммутаторы 6 и 10 — на элементах И-ИЛИ аналогично на соответствующее число входов (фиг. 3 и 4). Блок 5 памяти объемом 16 слов может быть реализован либо в виде набора регистров, либо на быстродействующих интегральных схемах.

Умножитель 11 (фиг. 5) содержит регистры 15 и 16, матрицу 17,. регистр

18, группу 19 элементов Н, регист.ры 20 и 21, коммутаторы 22 и 23, сумматор 24, регистр 25, перекодировщик 26 множителя,, регистр 27 порядка, счетчик 28 порядка, сумматор 29 порядка и коммутатор 30.

Основу умножителя i 1 составляет. итерактивная неполноразрядная (с целью сокращения аппаратурных затрат) матрица 17. С целью увеличения быстродействия матрица 17 работает в знакоразрядной (SD) системе счисления, в которой каждая двоичная цифра представлена знаком и модулем (двумя битами) и состоит из двух каскадов SD-вычитателей.

На фиг. 6 показан i-й разряд

SD-вычитателя, где S — знак разряда уменьшаемого, х, — модуль разряда уменьшаемого, у, — разряд вычитаемого в двоичной форме, t; — знак разряда разности, 2, — модуль разряда разности, С вЂ” перенос-заем N

У

У .) сигнал инвертирования t, j - номер каскада, j = 1,2.

Блок 12 деления (фиг. 8 и P) содержит дешифратор 31 с инверсными выходами,.дешифратор 32 и регистр 33.

На фиг. 8-10 символом И2.обозначена схема сложения по mod2, реали»44»7

10 зуемая стандартной микросхемой, работа которой описывается уравнением шоЫ2 = à. b + а b, где а и Ь вЂ” входные логические переменные.

Блок 9 управления (фиг. 10 и 11) содержит блок 34 постоянной памяти (микропрограмм), регистр 35 (микрокоманд), счетчик 36 (степени полиномов), дешифратор 37 (поля микрокоманды), счетчик 38 (адреса микроко- 10 манды) (Сч АК), дешифратор 39 (кода функции), коммутаторы 40 и 41, элемент ИЛИ 42, элемент НЕ 43, элемент

И 44, Процессор работает следующим об- 15 разом.

Обозначим совокупность битов

/S,, х1/ через х,, /t,, Z;/. — через

Z;, Путем управления инверсией кода знака SD-данных можно менять режим 20 работы $Р-вычитателя.

При N = 0 устройство работает

1 как вычитатель. При И = f выход вычитателя инвертируется. Если независимо проинвертировать х, то на 25 вычитателе можно производить сложе« . « ние: Z = -(— х — у) = х + у. Инвер Ф сия операнда х, подающегося на первыи

i каскад матрицы 17, производится на элементах НЕ 19 по сигналу NO. До начала работы мантисса множимого заносится в регистр 21, а мантисса множителя — в регистр 25. Порядки сомножителей поступают в регистр 27 порядка и счетчик .28 порядка. Порядок произведения формируется на сумматоре 29. Причем порядок аргумента должен заноситься в счетчик 28 порядка.

Сумма частичных произведений

4Р накапливается при циклической работе матрицы 17. В пределах каждого цикла в перекодировщике 26 множителя (фиг. 7) производится анализ очередной группы из четырех разрядов 45 множителя с учетом старшего разряда предыдущей группы и выработка набора сигналов, управляющих левым сдвигом мноьимого на коммутаторах

22 и 23 соответственно перед подачей на матрицу 17 (сигналы М?,О, ML1, ML2, ЖЗ, где число указывает величину сдвига) и режимом. работы SDвычитателей матрицы 17 (сигналы

ИИО, ИИ1, MN2) .

Набор сигналов из блока 26 мультиплексируется с аналогичным набором, приходящим из блока,12 деления, и снимается с выхода коммутатора 30 в виде NO, N1, N2, 1.0, .1, L2, ?.3, Каждый цикл работы блока 11 при умножении включает следующие шаги.

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

17 и величины левых сдвигов множимого на коммутаторах 22 и 23 перед подачей на матрицу 17, 2. Предыдущая сумма частичных произведений в SD-форме (первоначально нулевая) подается на матрицу 17 с регистра 18 (код знака) и регистра 15 (код модуля); одновременно на матрицу 17 поступает сдвинутое множимое.

3. Полученная на выходе матрицы

17 новая сумма частичных произведений в SD-форме принимается на регистр 20 (код знака) и регистр 16 (код модуля) со сдвигом на четыре разряда вправо.

4. Множитель сдвигается на четыре разряда вправо, содержимое регистров 20 и 16 передается на регистры

18 и 15 соответственно.

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

По окончании циклов осуществляется преобразование произведения из

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

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

Для выполнения деления кроме оборудования блока 11 используются регистры 7 и 8 и блок 12 деления, 1

Деление реализуется по методу без восстановления остатка. Частичные остатки вычитаются в SD-форме на матрице 17. При этом функцию SD-вычитателя каждого каскада можно описать так: предыдущий частичный остаток в SD-форме минус соответствующее кратное делителя в двоичной форме равняется новому частичному остатку в SD-форме. Поскольку SDпредставление является избыточным, i 144117

12 то становится возможным формирование цифр частного на основе анализа лишь четырех старших разрядов целителя и шести старших разрядов частичного остатка. После каждого цикла 5 работы формируются четыре разряда частного в SD-форме.

На вход блока 12 поступают четыре старших разряда делителя из регистра 2 1, шесть старших SD-разрядов частичного остатка с регистра 15 (код модуля) и регистра 18 (код знака) и шесть старших SD-разрядов частичного остатка с выхода первого каскада матрицы 17: 1$

Z — код модуля

Т вЂ” код знака

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

SD-разряд частного (Sq — бит знака, поступающий в регистр 7;.mq — бит модуля, поступающий в регистр 8); сигналы управления режимом работы

SD-вычитателей матрицы 17 DNO, DN1 2$ и DN2 сигналы управления сдвигом делителя на коммутаторах 22 и 23 перед подачей на матрицу 17 DLO, DL1, DL2 и DL3, где число указывает величину сдвига. 30

Набор сигналов управления из блока 12 мультиплексируется с аналогичI ным .набором, приходящим из перекодировщика множителя 26, и снимается с выхода коммутатора 30 в.виде NO

N1, N2, L0, L1, ?.2 и ЬЗ.

3$

Перед началом деления делимое заносится в регистр 7, а делитель— в регистр 8. Производится. двоичная

:нормализация делителя при сопутствующих сдвигах делимого влево. Затем делимое передается в регистр 1-5, а делитель — в регистр 21. С последнего на вход блока 12 поступает четыре старших разряда делителя. 4$

Каждый цикл работы блока 11 при делении включает следующие шаги.

1. С регистров 15 и 18 на вход блока 12 поступает для анализа шесть старших разрядов частичного остатка в SD-форме (первоначально— делимое).

2. Частичный остаток в SD-AopMe (первоначально — делимое) подается на первый каскад матрицы 17, где вычисляется новый частичный остаток в SD-форме при подаче соответствующего кратного делителя с выхода коммутатора 22 ° Одновременно содержимое регистров 7 и 8 сдвигается дважды на один разряд влево и в освободившиеся младшие разряды записываются последовательно формируемые в блоке

12 пары бит (mq, Sq), кодирующие две SD-цифры частного.

3. С выхода первого каскада матрицы 17 поступает для анализа в блок 12 шесть старших SD-разрядов

ZI нового частичного остатка.

4.,На втором каскаде матрицы 17 вычисляется следующий частичньп остаток в SD-AopMe,при подаче соответствующего кратного делителя с выхода коммутатора 23. Полученный результат принимается в регистр 20 (код знака) и регистр 16 (код модуля) со сдвигом на четыре разряда влево.

Аналогично пункту 2 повторяется запись двух SD-цифр частных регистров

7 и 8.

5. Содержимое регистров 20 и 16 передается в регистры 18 и 15 соответственно.

По окончании всех циклов осуществляется передача накопленного SD-. частного с регистров 7 (код модуля) и 8 (код знака) транзитом через матрицу 17 на комбинационный сумматор 24, где оно преобразуется подобно SD-произведению в двоичную форму и запоминается в регистре 25 °

Коммутаторы 22, 23 и 30 построены на схемах И-ИЛИ аналогично коммутаторам 6 и 10 .

Сумматор 13 представляет собой обычный двоичный сумматор, на регистры которого слагаемые поступают последовательно из коммутатора 10.

Рассмотрим вычисление ЭФ из аппаратно реализуемого набора. Вычисление ЭФ в процессоре разделяется на два этапа, На первом этапе диапазон изменения аргумента функции

Ф сводится к интервалу (О, 1) . На втором этапе происходит собственно вычисление функции. Приведение аргумента к интервалу выполняется отдельно для каждой функции.

Функция еХ

Пусть представление. чисел в ЦВИ. находится.в диапазоне +/2 — 2" /.

Тогда для функции е" диапазону измейения аргументов соответствуют области изменения функции:

1144117,. х 2й

2 н е"с2й

-й е" <2

Х е= (5) (6) L- P„=3 11 (2) х-en(» е=е .е ъ1 х где е.

«М» 2 рх

Этим трем областям можно соотнести два интервала изменения аргумента.

/х/> К п2 для I u III области

/x/ М En для II области (1) При /х! т д1п2 процессор генерирует т1 сигнал "Вычисление невозможно . Вычисления проводятся только для второй области изменения функции. Мак15 симальный порядок аргумента при этом

В ЕС ЭИВ N = „. 256, тогда 1. = 8.

Для вычисления функций е в уках . Щ эанном диапазоне необходимо-выделить целую часть аргумента, вычислить функции от обеих частей аргумента и затем перемножить полученные зна25 чения: — функция от целой части

»- en<» аргумента; ЗΠ— функция в дробной части аргумента.

Действия по приведению аргумента к интервалу начинаются при поступлении аргумента в регистр 1. Если по- 3 рядок аргумента не равен нулю, то производятся сдвиги мантиссы аргумента с коррекцией порядка. Для этого. мантисса аргумента через коммутаторы 2 и 6 передается в регистр 8, а 49 порядок аргумента — в счетчик 28 порядка. Сдвиги мантиссы продолжают ся до равенства порядка нулю. Из регистра 8 сдвинутая мантисса через коммутатор 10 передается в коммута- 4S тор 2, после чего происходит обраще.— ние к блоку 3. Содержимое дополнительных разрядов регистра 8 (целая часть аргумента), полученное в результате сдвига, служит адресом к блоку 4, 5О

en%» где хранится величина е

Функция 1пх.

Приведение аргумента. функций 1пх к интервалу (О, 11 основано на следующем. Пусть аргумент представлен в виде (4) где M» — мантисса аргумента;

Р» — порядок аргумента.

Логарифмируя равенство (1), получим

In = Inly„t p„g„2

Имеет место равенство. где О г с

z- =и„

М» — мантисса сдвинутая так образом, молет быть представлена кодом 1, Z <, Z, ...,.Z н, где

Z — двоичная цифра числа., Сдвиг выполняется до первой ситуации, при которой перед запятой устанавливается единица, т.е. можно записать

М -М 2к (7)

» где: К - число сдвигов до получения кода (7).

Таким образом, 6ех (» 2 )+ Р„Ь2 = 6 М „- kgn2+P„Bn2

= 4 (1. й) t (P„- kg 6n Z .. (8)

Аргумент функции 1п х передается из регистра 1 в регистр 8, где сдвигается до выделения из мантиссы старюей единицы, с соответствующей коррекцией порядка. Величина (P» — К), полученная на счетчике 28 порядка, служит адресом к блоку 4, где õðàнятся произведения (Р„- K)ln 2.

Функция sin x.

Сведение аргумента функции sin x к интервалу (0, 1) основано на соотноюении

bin» = 6 n(2 я 1(ф =.4п Я, () где К » целое число; (f — переменная в интервале (0, 27, < .. " " " " 2ц„1 " - t 1=2н„ (10) где 0<Е <1.

Два старвих разряда величины Z указцвавт .номер квадранта, в котором находится угол Ц .

Представим величину sin g как В

4пщ = elnFR K * *Sin V (11)

2 7 где 0a f c1.

Вычисление sin « 7 в зависимости от квадранта, в котором находится аргумент, выполняется по формулам

Я

Б! !! — Y

1144117

I квадрант

II квадрант

sin I !!

<1

- s!n — Y

III квадрант

I квадрант

II квадрант

0 сц -Ч=

2. !< ип — (1- V }

I " !! — Ч

III квадрант

IU квадрант (13) n (-х

В этом случае формулы вычисления х !! сое — Ч имеют вид:

Приведение к интервалу начинается с умножения мантиссы аргумента М„ на

1/2!! в блоке 11. Если порядок произ- 25 ведения больше нуля; то выделяется целая часть сдвигами .влево с коррекцией порядка, т.е. получаем переменную Z. Сдвиги выполняются на регистре 8. В зависимости от номера квад- З0 ранта и вида функции /sin х/ или

/cos х/ из единицы вычитается величина 1/2 и К „(формулы 12 и 13) в сумматоре 13. Затем для перехода от переменной 2 к переменной v полученная разность или Z сдвигается на два разряда влево.

Функция arcing x.

В этом случае приведение аргументя к интервалу (О 1) Основяно на 40 известной формуле

a!.C4g X К (Огс (х = (14)

"",-ахи<а(} и i

Поэтому аргумент передается в бло-45 ке 11, где вырабатывается величина

1 х. На этом действия по приведению аргумента заканчиваются.

Функция -1х, Приведение функции х к интерва-50 лу (0, 1) основано на соотношении

1 !-k (х = еГМ х 2 " = Mr 2 " = 2 Г! х 2 = .

Р " (1S) 55

=Й 2 .М =2 + Рх -Мх, где К вЂ” число сдвигов мантиссы .исходного аргумента до первой ca-.

16 туяции нрн которой перед запятой устанавливается единица 1, 2+1, Z

Z — - величина в интервале О, 11

Величина !! + К аппрпнеииируется полиномом 4-й степени.

И вЂ” мантисса результата вычислении 1+ 2 Р— порядок результата вычислении -(Т +2.

Действия по вычислению - х начинаются с анализа знака мантиссы аргумента. Если знак мантиссы отрицательный, то формируется сигнал "Вычитание невозможно". Если знак мантиссы положительный, то анализируется. величина порядка аргумента P,,Если Р

x х

О, то начинается вычисление полинома. Если Рх Ф О, то начинается сдвиг мантиссы аргумента влево с коррекцией порядка до появления в старшем разряде регистра 8 единицы н затем еще один сдвиг влево. После предварительной обработки аргумента начинается вычисление степенноro ряда, аппроксимирующего функцию. Степень ряда одинакова для всех ЭФ, входящих в набор, и равна четырем. Ряд вычисляется по схеме

Горнера: р<х! = ах ° и <ха х ° хи<ах ° «<аи хани!!И!

Для этого сдвинутая мантисса ар- . гумента из регистра 8 передается в блок 11, куда из блока 3 затем поступает коэффициент а . Произведение а< х передается в сумматор 13, где складывается с а>. Затем с выхода сумматора 13 полученная сумма через коммутаторы 2, 6 и 10 поступает вновь в блок 11. Результат вычислений передается либо в регистр 14, либо заносится в блок 5.

После вычисления полинома необходимо выполнить действия по формулам (3), (8), (15) и (14): для функции е — обращение к блоку 4 х эЫх и умножение е на Р(х); для функции 1п х . — обращение к блоку 4 ,и сложение (Р„- k )ln2 с Р(х); для функции x — сложение порядков

Р„12 — и Р ; для функции arctg х2 вычитание Р(х) из — .

Остальные элементарные функции вычисляются микропрограммно, исполь- . зуя известные в математике соотношения между ЭФ.

11441

Специальные функции, реализуемые микропрограммно, вычисляются по следующим. алгоритмам. е

Показательный интеграл.

Для /х/ 4. 5

Exp)(x) =e "(Sj os()

E (1()= Å.!.. » P,/„

=) =0

Вначале по программе вычисляется

-х элементарная функция.е или 1п х.

Затем находится величина полинома и значение искомой функции. Промежуточные результаты вычислений записываются в блок 5 памяти. 15

Интегральный синус и косинус.

Для /х/> 4

S;(x) =-(-„- (cosx V(xlxS;ox l)(x)); е1 20 е;() = (Ä) (Б nx Y(x coS к.U(x)) ... ()-2;"И1 "()=, Ф":

Для /х/4 4 25

6 ;(x1=-- x 2 a„(x )".

n=0

5 с,(») = .å,(-1- С ь„(, "

n=0

В этом случае действия по вычи.слению функции аналогичны предыдущим. Все степенные полиномы вычисляются по схеме Горнера, а их коэффициенты хранятся в блоке 3.

В работе блока 9 используются 35 три типа микрокоманд (MK); операционная NK которая предназначена для управления работой блоков проце сора; ИК безусловного пе рехода (ISR) используемая при вы- 40 числении микропрограммно реализуемых функций; ИК условного перехода (ХЙР), используемая для перехода по логическим условиям, которые вырабатываются комбинационными схемами блока 9 управления.

На вход блока 9 поступают сигнал "Пуск", код задания функции (КОФ), знак мантиссы ар ;умента от. ЦВИ, порядок. аргумента со счетчика 28 порядка, дополнительные разряды, первый и второй разряды регистра .8. Ра17 18 бота блока 9 начинается при поступлении сигнала "Пуск", По этому сигналу начинает работать счетчик 38

Сч AK в режиме прямого счета. Адрес микрокоманды поступает на вход блока 34 микропрограмм, выбранная микракоманда записывается в регистр 35 микрокоманд. Затем в регистр 1 и счетчик 28 порядка записывается аргумент. КОФ записывается в счетчик 38

Сч АК с помощью специально предназначенного для этого разряда в операционной ИК и является адресом первой

MK вычисления данной функции. После этого начинаются действия по предварительной обработке аргумента по указанным алгоритмам. Сигналы е" = О, 6" =Oo. "Вычисление невозможно" (для функции 1п х и )х ) вырабатываются при. некотором значении аргумента и передаются в ЦВИ. При наличии одного из этих символов происходит переход к микрокоманде останова и СП прекращает свою работу. Коммутатор 40 предназначен, кроме того, для анализа состояния разрядов блока 3, регистра

8 и счетчика 28 порядка во время предварительной обработки аргумента.

Сигнал перехода вырабатывается сравнением на элементах И и ИЛИ состояния выходов коммутатора 40 и результата дещифрации поля ИК ТИР на дешиф раторе 37.

После предварительной обработки аргумента начинается вычисление полинома 4-й степени. Также при вычислении специальных функций необходимо находить значение полиномов 5, 6, 8, 9, 10,,14-й степеней. Для этого введен счетчик 36 степени полинома.

Текущее состояние счетчика 36 при вычислении полинома сравнивается с информацией, записанной в поле ИК

ТИР. Равенство величин определяет окончание вычисления полинома и переход по, соответствующему адресу.. ,Останов блока 9 производится ИК ISR по адресу останова.

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

1144117

Фиг. 1

1144117

1разряд Рг аргу енто

ЫРЮО

Ыррур

Д7,юг

БЗрорря Яраяря прозрю

1 144117

1144117

° ° ° °

° ° ° °

° ° ° °

° ° ° °

° ° ° °

Ф ° ° °

° ° ° °

1144117

1144117

Фиг. б

1144317

1144117

1144117

1 f441i7

1144117 ба. УГ

1 !44117

1144117

1144117

1144117

Фиг. 77

1144117

ВНЯВ Заказ 931/40 . Тираж 710 Подр оцое

4апиаа ШШ Патаат, г.Умхород, ул.Проектная, 4

Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор Специализированный процессор 

 

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

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