Процессор для обработки массивов данных

Номер патента: 1293737

Авторы: Галькевич, Гребенчук, Манько, Рвачев, Шевченко

Есть еще 8 страниц.

Смотреть все страницы или скачать ZIP архив

Текст

) (11) СПУБЛИ 51)4 С 06 Р 15/ ОПИСАНИЕ ИЗОБРЕТК АВТОРСКОМУ СВИДЕТЕЛЬСТВУ ЯМ оени ч з(54) ПРОЦЕССВОВ ДАННЫХ ОБРАБОТКИ МАСС лати вычислительно ехники и може остроении выч использоваться при ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССРПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ(71) Институт проблем машиностАН УССР и Специальное конструкское бюро Института радиофизикэлектроники АН УССР(57) Изобретение относитс лнтельных систем для реализации операций над дифференциальными кортежами, в частности при решении дифференциальных уравнений в частных производных. Цель изобретения - повыше ние производительности при выполнении кортежных операций сложения, вычитания, умножения и деленияПоставленная цель достигается тем, что про.цессор содержит блок ввода-вывода,блок управления, регистр входных данных, регистр результата, входной ивыходной мультиплексоры, с первогопо третий блоки оперативной памяти,с первого по седьмой мультиплексоры,с первого по шестой регистры, блокумножения, арифметический блок,первый и второй блоки постоянной памяти, блок вычисления. обратной величины. Повышение производительностидостигается за счет организации конвейерных вычислений для кортежныхопераций. 1 з.п, ф-лы, 8 ил.55 17 12937 цать восьмой узла микропрограммного управления подключены к группе нхо-дов счетного узла, Тридцать девятый, выход узла микропрограммного управления подключен к управляющему входу мультиплексора условий, сороковой выход узла микропрограммного управления подключен к первому информационному входу мультиплексора условий, сорок первый выход узла микропрограм много управления подключен к входу останова узла пуска-останова, первый выход счетного узла подключен к первому входу узла сравнения и первому информационному входу узла формирования адресов, выходы с второго по пятый счетного узла подключены к входам с второго по пятый соответственно узла сравнения и информационным входам с второго по пятый соответственно узла формирования адресов, выход первого поля условий регистра команд подключен к шестому входу узла сравнения, выход второго поля условий регистра команд подключен к седьмому входу узла сравнения, выходы первого и второго полей условий регистра команд объединены и подключены к восьмому входу ; узла сравнения, выход четвертого поля условий регистра команд подключен к девятому входу узла формирования адресов, выходы с первого по седьмой узла сравнения подключены к информационным входам соответственно с третьего по девятый мультиплексора условий, выход которого подключен ко входу условий узла микропрограммного управления, выходы с второго по шестой узла формирования адресов подключены соответственно к шестнадцатому, семнадцатому, двадцать второму, двадцать четвертому и двацать пятому выходам блока управления, при этом узел пуска-останова содержит генератор тактовых импульсов, З-К-триггер, и элемент И и одновибратор, вход пуска узла пуска-останова подключен к входу одно 50 вибратора, выход которого подключен ко входу 3 триггера, вход останона узла пуска-останова подключен к входу К триггера, выход генератора тактовых импульсов подключен к первому входу элемента И узла пуска-останова и тактовому входу триггера, прямсй выход триггера подключен к второму входу элемента И узла пуска 18останова, выход элемента И узла пуска-останона подключен к выходу узла пуска-останона, при этом счетный узел содержит пять счетчиков, с первого по четвертый входы счетного узла подключены к входам установки н ноль соответственно с первого по четвертый счетчиков, пятый вход счетного узла подключен к входу записи начального значения пятого счетчика, вхо" ды с шестого по десятый счетного узла подключены к счетным входам соответственно с первого по пятый счетчиков, выходы с первого по пятый счетного узла подключены к ныкодам соответственно с первого по пятый счетчиков, выход четвертого счетчика подключен к информационному входу пятого счетчика, при этом узел сравнения содержит с первого по седьмой элементы сравнения и мультиплексор, первый вход узла сравнения подключен к первому входу первого элемента сравнения, второй вход узла сравнения подключен к первому входу второго элемента сравнения,и первому входу третьего элемента сравнения, третий вход узла сравнения подключен к первому входу четвертого элемента сравнения, четвертый вход узла сравнения подключен к первому входу пятого элемента сравнения, пятый вход узла сраВнения подключен к первому входу шестого элемента сраннения и второму входу третьего элемента сравнения, шестой вход узла сравнения подключен к первому входу седьмого элемента сравнения и первому информационному входу мультиплексора блока сравнения, седьмой вход узла сравнения подключен к второму входу седьмого элемента сравнения и второму информационному входу мультиплексора блока сравнения, восьмой вход узла сравнения подключен к второму входу первого элемента сравнения, девятый вход узла сравнения подключен к второму входу второго элемента сравнения, десятый вход узла сравнения подключен к второму входу четвертого элемента сравнения, второй вход шестого элемента сравнения подключен к входу нулевого потенциала устройства, выход седьмого элемента сравнения подключен к управляющему входу мультиплексора узла сравнения, выход которого подключен к второму входу пятого элемента сраннения, выход пер 19 12937 вого элемента сравнения подключен к первому выходу узла сравнения, выход второго элемента сравнения подключен к второму выходу узла сравнения, выход пятого элемента сравнения подключен к третьему выходу узла сравнения, первый выход третьего элемента сравнения подключен к четвертому выходу узла сравнения, выход четвертого элемента сравнения подклю чен к пятому выходу узла сравнения, выход шестого элемента сравнения подключен к шестому выходу узла сравнения, второй выход третьего элемента сравнения подключен к седьмому выходу 15 узла сравнения, при этом узел Формирования адресов содержит пять сумматоров, три вычитателя, с первой по четвертую постоянные памяти, три мультиплексора, пять регистров адре са, первый информационный вход узла формирования адресов подключен к первым информационным входам первого и второго мультиплексоров. узла формирования адресов, второи информаи25 ционный вход узла формирования адресов подключен к первым входам первого сумматора, второго сумматора, вторым информационным входам первого и второго мультиплексоров узла формирования адресов и первому информационному входу третьего мультиплексора узла формирования адресов, третий информационный вход узла формирования адресов подключен к вто рому входу первого сумматора, первым входам третьего сумматора, третьего вычитателя и пятого сумматора, четвертый информационный вход узла формирования адресов подключен к первым входам первого и второго вычитателей, пятый информационный вход узла формирования адресов подключен к второму входу второго вычитателя и адресНому входу третьей постоянной памяти, первый управляющий вход узла формирования адресов подключен к управляющим входам мультиплексора с первого по третий узла формирования адресов, второй, третий, четвертый управляющие входы узла формирования адресов подключены к синхровхадам соответственно пятого, четвертого и третьего регистров адреса узла Формирования адресов, пятый, шестой управляющие входы узла формирования37 20 адресов подключены к входам записисоответственно первого и второго регистров адреса узла формирования адресов, выход .первого сумматора подключен к второму входу первого вычитателя и адресному входу первойпостоянной памяти, выход первого вычитателя подключен к адресному входу второй постоянной памяти, выходтретьей постоянной памяти подключен к второму входу второго сумматора, выход второго вычитателя подключен к второму входу третьего вычитателя, адресному входу четвертой постоянной памяти и первому выходуузла формирования адресов, выход первой постоянной памяти подключен квторому входу третьего сумматора,выход второй постоянной памяти подключен к первому входу четвертогосумматора, выход второго сумматораподключен к информационному входупервого регистра адреса узла Формирования адресов, выход четвертой постоянной памяти подключен к второмувходу пятого сумматора, выход которого подключен к информационному входу второго регистра адреса узла Формирования адресов, выход третьеговычитателя подключен к второму входучетвертого сумматора, выход третьегосумматора подключен к третьим информационным входам первого и второго мультиплексоров и второму и третьему информационным входам третьегомультиплексора узла формирования адресов, выход четвертого сумматораподключен к четвертым информационнымвходам с первого по третий мультиплексоров узла формирования адресов,выходы первого, второго и третьегомультиплексоров узла формированияадресов подключены к информационнымвходам соответственно третьего, четвертого, пятого регистров адресаузла формирования адресов, выходыпятого, четвертого и третьего регистров адреса узла формирования адресов подключены соответственно к второму, третьему и четвертоМу выходамузла формирования адресов, выходыпервого и второго регистров адреса узла Формирования адресовподключены к пятому шестому выходам узла формирования адресов.211293737Таблица 1 ЗУ ЗУ ВЗ ЗУ 2 ОЗ То ж ОЗУ ОЗУЗ ОЗУЗ ОЗУ ЗУЗ То ж 16 ЗУЗ 0 ОЗУ Таблиц ОЗУ ОЗУ ЗУЗ ЗУ 1 УЗ ОЗУ 1 о же ОЗУ 1 ОЗУ ЗУ 2 4 0 ЗУ 1 и ц а ОЗУ 1 ОЗ У 1 ОЗУ 2 ОЗУЗ ОЗУ ОЗ 3 ОЗУ 2 403 ОЗУ 1 ЗУ ВЗУ ЗУ 2 ЗУ 2 12 45 У 2 13ОЗУ УЗ ОЗУ 2 ОЗУ У 1 ОЗУ 2 ЗУЗ ОЗУЗ У 2 ОЗУ 1 ЗУ ОЗУЗ ЗУ 1 ЗУ 2 ЗУ 2 ОЗ ОЗУ 1 ОЗУЗ ЦстУ ОЗУ ОЗУ 11 12 22Продолжение табл. 2 УЗ ОЗУ У ОЗУ ЗУ 1ОЗУ 2 ОЗУЗ ЗУ 1 ОЗУ 2 ОЗУЗ ОЗУЗ ОЗУЗ1293737 Состав Техред ель В. СмиОлейник но ктор Л, Пчелинск рректор В. Бутя каз 388 Подписи водственно-полиграфическое предприятие, г. Ужгород, ул. Проектная,/54 Тираж 67 ВНИИПИ Государственного по делам изобретений 113035, Москва, )(-35, Рау1.293737Изобретение относится к вычислительной технике и может быть исполь зовано при построении вычислительных систем для решения различных задач, в частности для решения дифференци альных уравнений в частных производных.В прикладной математике существует класс задач, в которых возникает необходимость обрабатывать массивы, особого вида, так называемые дифференциальные кортежи. Этот класс задач включает в себя решение дифференциальных уравнений в частных производных, описывающих физико-механические поля (тепловые, деформационные, злектродинамические и др.), где применяется стратегия дифференцирования сложных аналитических выражений с использованием понятия дифференциального кортежа и кортежных операций над ним, которые подчиняются законам кортежной алгебры.Определение понятия дифференциального кортежа.Пусть Функция 1(х)ЕС (Я), (С (Я) пространство непрерывных в ЯеК функций) задана вместе с частными производными до и-го порядка включительно. Вектор-функция 1(х)=Щ ,130 1, ) называется дифференциальным кортежем и-го порядка Функции (х) если она является образом отображенияЕс:С (Я)-С"(Я)"1 С (Я) ха ее компоненты определяются формулами1 =0 Б, У кпЫд +Я) г +1,т-к+ 1где х - знак прямого произведения,(ш-С)спространств ГС (Я)1(1.=0, 1, ,и);с/-=(Ы, а й ) - мультиндекс,х (х, х х )еК Р50Размещение компонентов дифференциального кортежа осуществляется группами в порядке возрастания производных (Ы =0,1п), а в каж 55 дой из групп приоритет имеют производные по аргументам с меньшим индексом, т.е. дифференциальный кортеж имеет следующую структуру: Определение кортежных операций.Операцией над дифференциальнымкортежом ц (х)60 функций Б;(х),=1,2 п, порождаемой функцией,называется закон формирования дифАеренциального кортежа Й:К - К,УЕВ , Я=ппп(п) соответствующегосуперпозиции И(1 Б ,.,1 )Согласно приведенным определениям дифференциальный кортеж естьмассив, операции над которыми подчиняются законам кортежной алгебры,отличающимися от законов обычнойалгебры, и компоненты которого Формируются особым образом.Цель изобретения - повышение производительности устройства при выполнении кортежных операций,На фиг. 1 представлена Функциональная схема матричного процессора,на фиг. 2 - схема блока управления,на фиг. 3 - схема узла пуска-останова; на фиг. 4 - схема счетного узла",на фиг.5 - схема узла сравнения, нафиг. 6 - схема узла формированияадресов, на фиг. 7 - алгоритм операции деления кортежей; на фиг, 8 -микропрограмма деления кортежей.Матричный процессор для обработки массивов содержит блок 1 вводавывода, блок 2 управления, мультиплексор 3 входных данных, регистр 4входных данных, регистр 5 результата, выходной мультиплексор 6, триблока 7-9 оперативной памяти, тривходных мультиплексора 10-12 блоковоперативной памяти, три выходныхрегистра 13-15 блоков оперативнойпамяти, блок 16 умножения, два входных мультиплексора 17 и 18 блокаумножения, выходной регистр 19 блока умножения, арифметический блок20, два входных мультиплексора 20 и21 арифметического блока, два блока23 и 24 постоянной памяти, два выходных регистра 25 и 26 блоков по. -стоянной памяти, блок 27 вычисленияобратной величины.Первый информационный вход блока1 ввода-вывода подключен к выходувыходного мультиплексора 6, второй. управления к первому информационному входу входного мультиплексора 3.Второй выход 31 блока управления подключен к внешней ЭВМ. Управляющийвход блока ввода-вывода подключен квыходу 32 блока управления, выходы10,33-40 блока управления подключены квходам записи соответственно регистра 4 входных данных, регистров 13,14 и 19 регистра 5 результата, ре 915гистров 15, 25 и 26, выходы 41-49блока управления подключены к управляющим входам соответственно мультиплексора 6, мультиплексоров 22, 10,11, 17, 18 и 21, мультиплексора 3и мультиплексора 12, выходы 50-5220блока управления подключены к входамзаписи-считывания блоков 7-9 оперативной памяти соответственно, выходы153-57 блока управления - к адресным 25входам блоков 7-9 оперативной памяти и блоков 23 и 24 постоянной памяти, выход 58 блока управления - квходу кода операции арифметическогоблока, второй информационный вход 30входного мультиплексора 3 - к выходу выходного мультиплексора 6, третий информационный вход входногомультиплексора 3 - к выходу блока27 вычисления обратной величины, чет вертый информационный вход входногомультиплексора 3 - к уровню логической "1" устройства, выход входногомультиплексора 3 - к информационномувходу регистра 4 входных данных, вход 40которого подсоединен к входу блока27 вычисления обратной величины,третьим информационным входам мультиплексоров 10, 11, 17 и 18 и первомуинформационному входу мультиплексора12, информационный вход регистра результата 5 подключен к выходу арифметического блока 20, выход регистра результата 5 - к первым информационным входам выходного мультиплексора 6 и мультиплексора 22, информационный вход блока 7 оперативной памяти - к выходу мультиплексора 10,выход блока 7 оперативной памяти -к инфоРмационному входу регистра 13,.выход которого соединен с первыми информационными входами мультиплексоров17, 18 и 21, вторыми информационнымивходами мультиплексоров 22 и 11 и выходного мультиплексора 6, и четвертым информационным входом мультиплексора 12, информационный вход блока 8 оперативной памяти подключен к выходу мультиплексора 11, выход блока 8 оперативной памяти - к информационному входу регистра 14, выход которого связан с вторыми информационными входами мультиплексоров 17, 18, 21 и 10 и третьими информационными входами мультиплексоров 22 и 12 и выходного мультиплексора 6, информационный вход блока 9 оперативной памяти подключен к выходу мультпплексора 12, выход блока 9 оперативной памяти - к информационному входу регистра 15, выход которого подсоединен к четвертым информационным входам мультиплексоров 17, 18, 21, 22, 10 и 11 и выходного мультиплексора 6, выходы мультиплексоров 17 и 18 под-, ключены соответственно к первому и второму информационным входам блока 16 умножения, выход блока 23 постоянной памяти подсоединен к информационному входу регистра 25, выход которого связан с третьим информационным входом блока 16 умножения, выход блока 24 постоянной памяти подключен к информационному входу регистра 26, выход которого соединен с четвертым информационным входом блока 16 умножения, выход которого подключен к информационному входу регистра 19, выход которого связан с третьим информационным входом мультиплексора 21, выходы мультиплексоров 21 и 22 подключены соответственно к первому и второму информационным входам арифметического блока 20.Структура блока ввода-вывода 1 зависит от интерфейса внешней ЭВМ. В качестве элементной базы для блока ввода-вывода можно использовать микропроцессорные комплекты с наращиваемой разрядностью, например, микропроцессоры серии 585/589,1802, 1804.Выполнение блока 2 управления зависит от типа конкретной ЭВМ и типа обмена между матричным процессором и ЭВМ.На фиг, 2 приведена структурная схема блока управления, реализующего программный обмен с внешней ЭВМ. Он содержит узел пуска-останова 59, регистр 60 команд, узел 6 1 микропрограммного управления, счетный узел 62, узел 63 сравнения, узел5 12937 64 формирования адресов и мультиплексор 65.Первый разряд 66 входа блока управления подключен к входу пуска узла пуска-останова 59 и входу сброса узла 5 микропрограммного управления 61, второй разряд входа блока подсоединен к входу записи регистра команд 60, третий разряд 67 входа блока - к первому информационному входу мультиплексора условий 65, остальные разряды входа блока - к информационным входам регистра команд 60, вход 68 узла пуска-останова 59 подключен к выходу узла 61 микропрограммного управления, выход 69 узла пуска-оста- нова 59 - к тактовому входу узла 61 микропрограммного управления, выход поля операций (КОП) регистра 60 команд соединена с входом старших разрядов кода команды узла 61 микропрограммного управления, выход поля адреса (М) регистра 60 команд - с входом младших разрядов кода команды узла 61 микропрограммного управления, выходы 70-75 узла микропрограммного управления - с соответствующими управляющими входами узла 64 формирования адресов, выход 76 вузла микропрограммного управления - с выходом 32, выходы 77-97 узла 61 микропро. граммного управления - соответственно с выходами 33-52, 58 блока 2 управления, выходы 98-107 узла 61 микропрограммного управления - с соответствующими входами счетного узла 62, выход 108 узла 61 микропрограммного управления - с управляющим входом мультиплексора 65 условий, выход 109 узла 61 микропрограммного управле ния - с вторым информационным входом мультиплексора 65 условий, выходы 110-114 счетного узла 62 подключены к соответствующей группе информационных входов узла 63 сравнения и уз ла 64 формирования адресов, выход первого поля условий (и) регистра 60 команд подсоединен к входу 115 узла 63 сравнения, выход второго поля условий (и ) регистра 60 команд - 50 к входу 116 узла 63 сравнения, выходы первого (п) и второго (и ) полей условий регистра 60 команд объединены и подключены к входу 117 узла 63 сравнения, выход третьего поля усло вий (Л) регистра 60 команд соединен с входом 118 узла 63 сравнения, вход 119 узла 63 сравнения подключен к 37соответствующему выходу узла 64 Формирования адресов, выходы 120-126 уэ"ла 63 сравнения подсоединены к соответствующим информационным входам мультиплексора 65 условий, выход которого подключен к входу условий узла61 микропрограммного управления, выходы 127-131 узла 64 формирования адресов соединены соответственно с выходами 53, 54, 52, 56, 57 блока 2управления.Структурная схема узла 59 пускаостанова приведена на фиг. 3. Узел59 содержит генератор 132 тактовыхимпульсов, Л-К-триггер 133, элементИ 134 и одновибратор 135, вход 66узла 59 пуска-останова подключен квходу одновибратора 135, выход которого подсоединен к входу Л триггера 133,вход 68 узла пуска-останова 59 - ковходу К триггера 133, выход генератора 132 тактовых импульсов подключен к первому входу элемента И и тактовому входу триггера 133, прямойвыход которого соединен с вторым входом элемента И 134, выход которогоподключен к выходу 69 узла 59 пускаостанова.Счетный узел 62 содержит счетчики 136-140, входы 98-101 счетногоузла 62 подключены к входам установки в ноль соответственно счетчиков136-139, вход 102 счетного узла 62соединен с входом записи начальногозначения счетчика 140, входы 103-107счетного узла 62 - с счетными входами соответственно счетчиков 136-140,выходы счетчиков 136-140 подключенысоответственно к выходам 110-114счетного узла 62, выход счетчика 139подсоединен к информационному входусчетчика 140,Узел 63 сравнения содержит элементы 141-147 сравнения и мультиплексор 148, вход 110 узла сравнения подключен к первому входу элемента 141 сравнения, вход 111 узла сравнения - к первому входу элементасравнения 142 и первому входу элемента 143 сравнения, вход 112 узла сравнения - к первому входу элемента 144сравнения, вход .113 узла сравнения -к первому входу элемента 145 сравне -ния, вход 114 узла сравнения - кпервому входу элемента 146 сравненияи второму входу элемента 143 сравнения, вход 115 узла сравнения - кпервому входу элемента 147 сравнения7 12937и первому информационному входу мультиплексора 148, вход 116 узла сравнения - к второму входу элемента 147сравнения и второму информационномувходу мультиплексора 148, вход 117 5узласравнения - к второму входу элемента 141 сравнения, вход 118 узласравнения - к второму входу элемента142 сравнения, вход 119 узла сравнения - к второму входу элемента 144 10сравнения, второй вход элемента 146сравнения подсоединен к входу нулевого потенциала устройства, выходэлемента 147 сравнения - к управляющему входу мультиплексора 148, выход которого соединен с вторым входом элемента 145 сравнения, выходыэлементов 141, 142, 145, 144 и 146сравнения, подключены соответственнок выходам 120, 121, 122, 124 и 125узла сравнения, первый и второй выходы элемента сравнения подключенысоответственно к выходам 123 и 126узла сравнения.1 25Узел формирования адресов содержит сумматоры 149-153, вычитатели 154-156, блоки 157-160 постояннойпамяти, мультиплексоры 16 1-63, регистры 164-168 адреса, вход 110 узла. 64 формирования адресов подключен кпервым информационным входам мультиплексоров 161 и 162, вход 111 узла64 Формирования адресов - к первымвходам сумматоров 149 и 150 мультиплексора 163 и вторым входам мульти 35плексоров 161 и 162, вход 112 узла64 формирования адресов - к второмувходу сумматора 149, первым входамсумматоров 151 и 153, вход 114 узла 4064 Формирования адресов - к второмувходу вычитателя 155 и адресномувходу блока 159 постоянной памяти,управляющие входы 70 узла формирования адресов подключены к управляющим входам мультиплексоров 16 1-163,управляющие входы 71-75 узла Формирования адресов - к входам записи соответственно регистров 168, 167,164 и 165 адреса, выход сумматора 50149 соединен с вторым входом вычитателя 154 и адресным входом постоянной памяти 157, выход вычитателя 154подключен к адресному входу постоянной памяти 158, выход постоянной памяти 159 связан с вторым входом сумматора 150, выход вычитателя 155 подключен к второму входу вычитателя 156,адресному входу постоянной памяти 160 37 8и выходу 119 узла 64 формирования. адресов, выход постоянной памяти 157подключен к второму входу сумматора151, выход постоянной памяти 158 - кпервому входу сумматора 152, выходсумматора 150 - к информационномувходу регистра адреса 164, выход постоянной памяти 160 - к второму входусумматора 153, выход которого подключен к информационному входу регистра165 адреса, выход вычитателя .156 -соединен с вторым входом сумматора152, выход сумматора 151 подключен ктретьим информационным входам мультиплексоров 161 и 162 и второму и третьему информационным входам мультиплексора 163, выход сумматора 152 -к четвертым информационным входаммультиплексоров 161-163, выходы которых соединены соответственно с ин"формационными входами регистров 166-167 адреса, выходы регистров 168,167, 166, 164 и 165 адреса подключенысоответственно к выходам 127-13 1 узлаформирования адресов.В блоке управления матричного процессора реализован аппаратно-микропрограммный принцип управления. Наличие независимых счетчиков р, д,в, 1, , аппаратных схем сравненияи отдельных схем Формирования адресовОЗУ 1, ОЗУ 2, ОЗУЗ, ПЗУ 1, ПЗУ 2 позволяет организовать конвейерное выполнение операций, что существенно увеличивает производительность матричного процессора.Матричный процессор для обработкимассивов выполняет следующие операции:1. Пересылка данных2 . У(р) =А(р)Х(р) +В(р), р=ОИ3, У(р)=А(р)Х(р), 114, У(р)=Х (р)+ Фю ом формате реализованы кортеж ные о Тип о ерации умножения и делен ерации определяется соде ля КОП. Функциональное н поля М определяется по т Яе жи 1-1х 13 в операци В операци р вычисл Уго н ние л. яются п оляежейРас и иопредеЦ, и Б соотв ют порядоственно.работы м коричсмотрим принци роцессора на п ной из самых с ции деления кор уется формулой 39) /2+1 смере в ог ия лне ижных операцижей, котора опера реали ся от нуля доортежа. Индексуля для кяждог зменяе ндекс С С Й(Р)ц (Р) порядок и, где и -изменяется тп. Индекс Матрич формата ко+г ы процесманды.1-й форм На фиг7 перации для На фиг. 8 а деления кеден алгоритм эзвольной ЭВМ. и проиприведена микропрограмртежей в матричном прослед цессоре Схемб- ыыполнена несбы показатьных дей андартн овмещен вии в одномцию конвейер полнен различтакжелений. жени акте,ых вычи рга одерж стр адре я один и микропро местонахождениянальное назначен перанполя10, 11 и 14 ные действия мые аппарат- увеличение 7, 8,числителтактах няются вып М 1 в таб 1,для кол. 2 - для табл. 3 -в та ций, ций. я к счетчиков и ан условий. Такть участвуют в ор ализ соотве с индексами анизации к тст а,Явейера.выполнеей рабоколичество пеоманде "Перетричныи перацииследующи манда и в регис роцессор еления к р и длинежных о орте- ациях ае образом внешней Э 60 комаВМ записывды, а зате ется Кроме перечисленных операций матричный процессор для обработки массивов выполняет кортежные операции: 11. "+" СложениеИ(р)=0, (р)+П,(р)12. "-" Вычитание=о :014. "/" Деление Индексы р именяются линейн14 индексы р, рформулам:р=( т,+1 с) ( т,+1 с+ р =(+З) (т+З Р =(тн-д- (пт В этом формате реализованыщие операции:1) пересылка данных;2) векторные операции 2-5;3) кортежные операции слои вычитания,Тип операции определяется сием поля КОП.Поле М - модификация команд опр еделяюща дов. Функциприведено Пересылка" торных опер тежных опер Поле М определяет редаваемых данных в сылка", длину вектор жа в векторных и кор соответственно. Поле КОП определяетии 6-8 и матричныеФункциональное назн определяется по табл, 2 для векторных операций10 векторной операции 8 по деляют длину векторов, ных операций 9 и 10 пол деляют размер матрицы Так, например, в ре микрокоманды записывае 16-ти начальных адресо граммы. и одновременно незави50 ные схемы осуществляю ные опеи 9 и 10, поля М И=О Для Х опре 11 12внешняя ЭВМ подает на устройство сигнал 66 "пуск", который устанавливает в "0" регистр адреса микрокоманды и разрешает прохождение тактовыхимпульсов 69. По первому тактовомуимпульсу выбирается микрокоманда изнулевого адреса. Эта микрокомандаразрешает передачу начального адреса микропрограммы, определяемого полями команды КОП и М.В соответствии с содержимым поляМ может быть 16 различных микропрограмм для каждой операции, определяемой полем КОП. Эти микропрограммыразличаются только местоположениемоперандов, поэтому рассмотрим однуиз них при значении М=О, что в соответствии с табл. 3 означает, что операнды П и Бнаходятся соответственно в ОЗУ 1 7 и ОЗУ 2 8, а результат Ипомещается в ОЗУЗ 9.В третьем такте обнуляются счетчики р и ш и значение П (О), т.е.нулевой элемент кортежа Пзагружается в блок 27 вычисления обратной величины.В четвертом такте увеличиваетсяна 1 содержимое счетчика ш 139 и одновременно анализируется условиешп . При выполнении этого усломин. вия в следующем такте формируетсяА ОЗУЗ Р и содержимое Р4 записывается в ОЗУЗ, затем вырабатываетсясигнал "Останов" 68, по которомузапрещается прохождение тактовых импульсов 69.В пятом такте индексу ь присваивается значение ш.В шестом такте вычисляется индекс Е=ш, увеличивается на 1 содержимое счетчика Р 136, счетчик ь.138 обнуляется и в арифметическомблоке 20 формируется константа "0",которая записывается в РР 5.В седьмом такте происходит формирование адресов ПЗУ 1 23, ПЗУ 2 24,ОЗУ 2 8 и ОЗУЗ 9, в узле 64 формирования адресов по формулам:АПЗУ 1 = М 1 1)+АПЗУ 2 = М 1 В+АОЗУ 2 = М 1(ЦЗ+1-АОЗУЗ = М 1 гЗ+1где гч.+1, =ш-г.Сформированные адреса записываются в регистры 164, 165, 167 и 166,в этом же такте значение индекса 3увеличивается на 1 и одновременноанализируется условие 1 Е, 93737 12 5 10 15 20 25 30 35 40 В операциях деления и умножения кортежей вычисления двойных сумм отличаются тем, что в .операции деления не производится суммирования при +=в или д= при 1=1. Поэтому в операции деления анализируется условие 1=0, а в операции умнажения хС,Вычисление двойной суммы в тактах 10 и 11 продолжается пока хФ 1. При выполнении условия =1 в двенадцатом такте формируются адреса ОЗУ 1 7 и ОЗУ 3 9, равные Р, и записываются в регистры 168, 166.В 13-м такте в ОЗУЗ записывается результат выполнения операции 45 50 55 Поскольку управление записью в регистры 164, 165, 167 и 166 и сигнал +1 105 стробируются тактовыми импульсами, то вполне допустимо использовать предыдущее значение индексадля формирования адреса и изменить значение 1 одновременно с записью адреса в регистр.С этого такта начинает формироваться конвейер для вычисления двойной суммы. Если 3 Е в седьмом такте то далее следуют такты, в которых соответственно выполняются такие действия: 8 а - информация из запоминающих устройств 9, 8, 29 и 24 записывается в .регистры 15, 14, 25 и 26;8 б - в блоке 16 выполняется умножение и результат записывается в регистр 19, 8 в - в арифметическом устройстве 20 выполняется сложение РЗ (19)+РР(5) и запись результата в РР(5).Если условие 1 т К не выполняется в седьмом такте, то в такте 8 выполняются действия, аналогичные 8 а, и, кроме того, повторяются действия такта 7. Таким образом, такт 8 объединяет действия тактов 7 и 8 а.Аналогично такт 9 объединяет действия тактов 7, 8 а, 8 б, а такт 10 включает в себя действия, выполняемые в тактах 7, 8 а, Яб, 8 в, т.е. такт 10 реализует 4-ступенчатый конвейер .выполнения операций.Такты 9 а, 9 б, 10 а используются для завершения конвейерной операции.В одиннадцатом такте по сигналу 33 результат вычисления обратной величины .записывается из блока 27 и Р 4. Здесь же индекс . увеличиваетвхся на 1 и одновременно анализируется условие = 6.1293737 13В 14-м такте содержимое ОЗУЗ 9 по адресу Р умножается на содержимое 1 Р4 и результат записывается в ОЗУ, В этом же такте индекс 1 уменьшается на 1 и анализируется условие 5 г,"О. При невыполнении этого условия процесс вычислений продолжается с такта 6, а при выполнении - с такта 4,Конвейерный принцип вычислений, реализованный для кортежных опера-, ций умножения и деления для матричных и некоторых векторных операций, повышает быстродействие матричного процессора.Формула из обретения 1информационному входу второго регистра, выход которого подключен квторым информационным входам второго,четвертого и пятого мультиплексоров,третьему информационному входу выходного мультиплексора, второму информационному входу шестого мультиплексора и третьему информационномувходу первого мультиплексора, выход блока умножения подключен к информационному входу третьего регистра, выход которого подключен к третьему информационному входу шестого мультиплексора,первый выход блока ввода-вывода подключен к входу блока управления, второй выход блока ввода-вывода подключен квыходу резуль.ата устройства, второйинформационный вход блока ввода;вывода подключен к информационному входу устройства, третий информационныйвход блока ввода-вывода подключен квходу задания режимов работы устройства, выход регистра входных данныхподключен к третьим информационнымвходам второго, третьего, четвертогои пятого мультиплексоров, первый выход блока управления подключен к входу задания режима работы блока вводавывода, выходы с второго по шестойблока управления подключены к входамзаписи соответственно регистра входных данных, первого регистра, второгорегистра, третьего регистра, регистрарезультата, выходы с седьмого по тринадцатый блока управления подключенык управляющим входам соответственно 45 выходного мультиплексора, первого,второго, третьего, четвертого, пятого,шестого мультиплексоров, четырнадцатый и пятнадцатый выходы блока управления подключены к входам эаписи - 50 считывания соответственно первогои второго блоков оперативной памяти,шестнадцатый и семнадцатый выходыблока управления подключены к адресным входам соответственно первогои второго блоков оперативной памяти, восемнадцатый выход блока управления подключен к входу кода операцииарифметического блока, о т л и ч а ющ и й с я тем, что, с яелью повышения,1,Процессор для обработки массивов данных, содержащий блок ввода-вывода, блок управления, регистр входных данных, регистр результата, выходной мультиплексор, первый и второй блоки оперативной памяти, первый и второй мультиплексоры, первый и второй регистры, блок умножения, третий и четвертый мультиплексоры, третий регистр, пятый и шестой мультиплексоры, арифметический блок, выход которого подключен к информационному входу регистра результата, выход .которого подключен к первому информационному входу первого мультиплексора, первому информационному входу выходного мультиплексора и первым информационным входам второго и третьего мультиплексоров, выход первого мультиплексора подключен к первому информационному входу арифметического блока, выход выходного мультиплексора подключен к первому информационному входу блока ввода-вывода, выход второго мультиплексора подключен к информационному входу первого блока оперативной памяти, выход третьего.мультиплексора подключен к информационному входу второго блока оперативной памяти, выход первого блока оперативной памяти подключен к информационному входу первого регистра, выход которого подключен к первым информационным входам четвертого и пятого мультиплексоров, второму информационному входу третьего мультиплексора, второму информационному входу выходного мультиплексора, первому информационному входу шестого мультиплексора, и второму инфор" мационному входу первого мультиплексора, выходы четвертого и пятого мультиплексоров подключены соответственно к первому и второму информационнымвходам умножителя, выход шестого мультиплексора подключен квторому информационному входу арифметического блока, выход второго,блока оперативной памяти подключен кмультиплексора, выход выходногомультиплексора подключен к второму информационному входу входного муль 5 типлексора, третий информационный вход входного мультиплексора подключен к выходу блока вычисления обратной величины, управляющий вход входного мультиплексора подключен к девятнадцатому выходу блока управления, выход входного мультиплексора подключен к инфОрмационному входу регистра входных данных, выход которого подключен к входу блока вычисления обратной величины и первому информационному входу седьмого мультиплексора, выход регистра результата подключен к второму информационному входу седьмого мультиплексора, выход второго регистра подключен к третьему инФормационному входу седьмого мультиплексора, выход первого регистра подключен к четвертому информационному входу седьмого мультиплексора, выход которого подключен к информационному входу третьего блока оперативной памяти, управляющий вход седьмого мультиплексора подключен к дванадцатому выходу блока управления, адресный вход третьего блока оперативной памяти подключен к двадцать первому выходу блока управления, вход чтенияэаписи третьего блока оперативной памяти подключен к двадцать второму выходу блока управления, выход третьего блока оперативной памяти подключен . к информационному входу четвертого регистра, вход записи которого подключен к двадцать третьему выходу блока управления, выход четвертого регистра подключен к четвертым информационным входам мультиплексоров с первого по шестой и выходного мультиплексора, выход первого блока постоянной памяти подключен к информационному входу пятого регистра, выход второго блока постонной памяти подключен к информационному входу 45 1512937 производительности при выполнении кортежных операций сложения, вычитания, умножения и деления, в него введены входной мультиплексор, третий блок оперативной памяти, седьмой мультиплексор, четвертый регистр, первый и второй блоки постоянной памяти,пятый и шестой регистры, блок вычисления обратной величины, первый выход блока ввода-вывода подключен к пер вому информационному входу входного 37 16шестого регистра, выходы пятого и. шестого регистров подключены соответственно к третьему и четвертому информационным входам блока умноже- ния, адресные входы первого и второго блоков постоянной памяти подключены соответственно к двадцать четвертому и двадцать пятому выходам блока управления, входы записи пятого и шестого регистров подключены соответственно к двадцать шестому и двадцать седьмому выходам блока управления.2. Процессор по п. 1, о т л и ч аю щ и й с я тем, что блок управления содержит узел пуска-останова, регистр команд, узел микропрограммного управления, счетный узел, узел срав- нения,узел формирования адресов,мультиплексор,первый разряд входа блока подключен к входу пуска узла пуска-останова и входу сброса узла микропрограм- много управления, второй разряд входа блока подключен к входу записи регистра команд блока, третий разряд входа блока подключен к первому информационному входу мультиплексора условий, остальные разряды входа блока подключены к информационным входам регистра команд блока, выход узла пуска-останова подключен к тактовому входу узла микропрограммногоуправления, выход поля операций ре= гистра команд подключен ко входу старших разрядов кода команды узла микропрограммного управления, выход поля адреса регистра команд подключен к входу младших разрядов команды узла микропрограммного управления, выходы с первого по шестой узла микропрограммного управления подключены к управляющим входам соот,ветственно с первого по шестой узла формирования адресов, седьмой выход узла микропрограммного управления подключен к первому выходу блока, выходы с восьмого по двадцать первый узла микропрограммного управления подключены к выходам соответственно с второго по пятнадцатый блока, выходы с двадцать второго по двадцать восьмой узла микропрограммного управления подключены соответственно к выходам с восемнадцатого по двадцатый, двадцать второму, двадцать третьему, двадцать шестому .и двадцать седьмому блока управления, выходы с двадцать девятого по трид

Смотреть

Заявка

3940687, 30.04.1985

ИНСТИТУТ ПРОБЛЕМ МАШИНОСТРОЕНИЯ АН УССР, СПЕЦИАЛЬНОЕ КОНСТРУКТОРСКО-ТЕХНОЛОГИЧЕСКОЕ БЮРО ИНСТИТУТА РАДИОФИЗИКИ И ЭЛЕКТРОНИКИ АН УССР

РВАЧЕВ ВЛАДИМИР ЛОГВИНОВИЧ, ГАЛЬКЕВИЧ АЛЕКСАНДР АЛЕКСАНДРОВИЧ, ГРЕБЕНЧУК АННА ЯКОВЛЕВНА, МАНЬКО ГРИГОРИЙ ПАВЛОВИЧ, ШЕВЧЕНКО АЛЕКСАНДР НИКОЛАЕВИЧ

МПК / Метки

МПК: G06F 17/10, G06F 19/00

Метки: данных, массивов, процессор

Опубликовано: 28.02.1987

Код ссылки

<a href="https://patents.su/16-1293737-processor-dlya-obrabotki-massivov-dannykh.html" target="_blank" rel="follow" title="База патентов СССР">Процессор для обработки массивов данных</a>

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