Устройство для решения системы алгебраических уравнений
Иллюстрации
Показать всеРеферат
ОП ИСАНИЕ
ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ
Союз Советских
Социалистических
Республик (it) 966702 ф
/ (6! ) Дополнительное к авт. спид-ву (22)»»>«< 12.01.81 (2!) 3272882/18-24 с присоединением заявки № (23) Приоритет
Опубликовано 15.10.82, Бюллетень № 38
Дата опубликования описания 1 7, 10, 82 (5I)M. Кл.
6 06 F 15/32
3Ьеударстмииый комитет
СССР ао делам изабретеиий и атирытий (53) УДК 681.325 (088.8) 1
Институт электродинамики АН Украинской СС и Ойвена,.:-. ., 3#I (7!) Заявители конструкторское бюро Института металлофизи
АН Украинской ССР (54) УСТРОЙСТВО ДЛЯ РЕШЕНИЯ СИСТЕМЫ
АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ
Изобретение относится к вычислительной технике, в частности к специализированным цифровым вычислительным устройствам для решения систем алгебраических уравнений и задач линейно5 го программирования. Оно может быть использовано как автономно, так и в составе цифровых и аналого-цифровых вычислительных комплексов.
Известно цифровое устройство для решения систем алгебраических уравнений.
Известное устройство характеризуется тем, что содержит блоки формирования коэффициентов, сумматоры, регистры, цифровые интеграторы, коммутатор и элементы И (1).
Недостатками этого устройства являются низкие скорости обработки информации, большое количество оборудова- 2о ния и низкая технологичность.
Наиболее близким к предлагаемому является цифровое устройство для решенин систем алгебраических уравнений.
Это устройство характеризуется те что содержит блок уравновешивания, блок синхронизации, блок ввода-выво" да, блок индикации и (w+2 ) вычислительных блоков, каждый из которых состоит из арифметико-логического узла, группы регистров и формирователя адресов (где м - число уравнений решаемой системы алгебраических уравнений). г
В устройстве формирование вектора ,(1("1 производится суммированием арифметико-логическими узлами коэффициентов исходной матрицы, умноженных на знаки невязок и извлеченных из групп регистров, а результаты суммирования выдаются на выход вычислительных блоков за один такт. Выбор коэффициентов из групп регистров осуществляется формирователем адресов. В устройстве также осуществляется покомпонентное вычисление вектора переменных (2 7.
966702
Недостатком устройства является ограниченный класс задач, решаемых устройством, в частности отсутствует возможность решения задач линейного программирования. 5
Цель изобретения - расширение функциональных возможностей данного устройства путем решения задач линейного программирования.
Поставленная цель достигается тем, 10 что устройство для решения системы алгебраических уравнений, содержащее блок ввода- вывода, блок синхронизации, блок уравновешивания и(п +2) вычислительных блоков (где и - число 15 уравнений),причем управляющий вход блока ввода-вывода соединен c(4)-м входом блока уравновешивания, выход синхронизации блока ввода-вывода соединен с входом блока синхронизации, выход которого соединен со входом синхронизации блока уравновешивания, информационный выход блока ввода-.вывода соединен с информационным входом первого вычислительного блока, первый 25 выход i- ro (где = 1,2,...,m +3) вычислительного блока соединен с информационным входом (i+1)-ro вычислительного блока, второй выход 1-го вычислительного блока соединен с 1-м информационным входом блока уравновешиванил, i-й выход которого соединен с управляющим входом 1-го вычислительного блока, дополнительно введен (m+3) вычислительный блок, причем ин35 формационный вход этого блока подключенн к первому выходу (m+2) - co вычисли- о тельного блока, управляющий вход данного блока соединен с (m+3)-м выходом блока уравновешиванил, первый выход
40 (п +3)-го вычислительного блока соединен с информационным входом блока вво" да-вывода, второй выход которого соединен, с (m+3) -м входом блока уравновешивания.
Кроме того, (и+3) вычислительный блок содержит арифметико-логический узел, группу регистров данных, регистр адресов и счетчик адреса, при" чем первый информационный вход арифметико-логического узла является информационным входом блока, второй информационный вход этого узла соединен с выходом группы регистров данных, который является также вторым выходом55 блока, выход счетчика адресов соединен с входом регистра адресов, выход которого соединен с информационным входом группы регистров данных, выход арифметико-логического узла является первым выходом блока, вход счетчика адресов, управляющие входы арифметико-логического узла и группы регистров данных подключены к управляющему входу блока.
На фиг. 1 представлена блок-схема цифрового вычислительного устройства; на фиг . 2 — блок-схема блока вво да-вывода; на фиг. 3 - блок-схема одного из микроавтоматов блока уравновешивания; на фиг. 4 - блок-схема арифметико-логического узла.
Устройство, предназначенное для решения систем алгебраических уравнений и задач линейного программироваI ния, содер>нит блок ввода-вывода 1, блок индикации 2, блок синхронизации 3,. блок уравновешивания 4, (пн-3) вычис-. лительных блоков 5, причем ка>ндый из (m+3)-х вычислительных блоков 5 содержит арийметико-логический узел 6, группу регистров 7 и формирователь адресов 8, а (pe+3 )-ый вычислительный блок 5, кроме арифметико-логического узла 6 и группы регистров 7 данных, содержит счетчик 9 и регистр адресов 10 (везде на чертежах цифрами в скобках обозначены порядковые номера одинаковых по техническому выполнению блоков). Вычислительные блоки соединены последовательно, причем первый вход первого вычислительного бло" ка 5 соединен с первым выходом блока ввода-вывода 1, а первый выход(К+3) вычислительного блока 5 с вторым входом блока ввода-вывода 1. Второй выход блока ввода-вывода 1 соединен с входами блока индикации 2, а третий выход — с входом блока синхронизации 3, выход которого соединен с соответствующим входом блока уравновешивания 4, а(М+4 ) выход блока урав" новешивания 4 соединен с первым входом блока ввода-вывода 1. Группы (в+3 ) вторых выходов блока ура вно вешивания 4 соединены с вторыми входами (управления) вычислительных блоков 5, а группа (ю+3 ) входов - с вторыми выходами (условий) вычислительных блоков 5. Первые входы и выходы вычислительных блоков 5 являются входами и выходами арифметико-логических узлов 6 соответственно, выходы условий — вторыми выходами групп регистров 7, первые входы-выходы которых соединены с первыми входами-выходами узла арифметико-логических ус02
5 9667 ловий 6. B вычислительных блоках 5 с номерами от 1-со до(+?)-го вторые входы (управления)являются входами регистров адресов 8, первые выходы которых соединены с входами управления 5 арифметико-логических узлов 6 и вхо.дами адресов групп регистров 7. В вычислительном блоке 5 с номером (р+3 )
-счетчик 9 и регистр адресов 10 соединен. ны последовательно, выход регистра ад ресов 10 соединен с входом адреса группы регистров 7, а вход управле.ния (м+3)-ro вычислительного блока 5 является входом управления арифметико-.логического узла 6, входом счетчи- >> ка 9 и входом управления группы регистров 7.
Блок ввода- вы вода 1 пр едст а вля ет собой интерфейс ввода-вывода, состоящий из подканалов ручного и автомати-20 ческого ввода-вывода информации, и предназначен для ввода информации и команд, вывода информации, а также для организации обмена информацией и командами при неавтономном (систем- ном использовании предлагаемого устройства. Пример одного из возможных вариантов выполнения блока ввода-вывода 1 приведен на фиг, 2. Он содержит клавиатуру 11, преобразователь 36 десятичного кода в двоичный 12,,мультиплексоры 13 и 14,. узел управления 15, генератор синхро-импульсов 16, входной регистр 17, память 18, узел регистров 19, выходной регистр 20, ком- 35 мутатор 21, преобразователь двоичного кода в двоично-десятичный 22 и мультиплексор 23.
Блок индикации 2 представляет собой устройство отображения алфавитно" цифровой информации и может быть выФ полнен в виде экранного пульта с клавиатурой 13 по любой из известных схем.
Блок синхронизации 3 представляет собой устройство организации серий адресных и управляющих синхро-импульсов и может быть выполнен в виде формирователя импульсных сигналов по любой из известных схем.
Арифметика"логические узлы 6 предназначены для выполнения арифметических и логических операций и могут быть выполнены по любой из известных схем.
Пример выполнения арифметико-логического узла 6 приведен на фиг. 4. Он содержит сумматор 34, регистры 35"38, мультиплексоры 39 и 40. Сумматор 34 выполняет арифметические операции. Регистр 38 служит буфером для совмещения выборки из группы регистров 7 нового операнда с выполнением в арифметико-логическом узле текущей операции.
В регистрах 36 и 37 хранятся операнды текущей операции, а в регистре 35 хра-, нятся операнды результатов. Мультиплексор 39 служит для подключения на вход сумматора 34 или выходную шину 41 регистров 35, 36 и 37. Мультиплексор 40 служит для.подключения регистров 35 и 36 к входам группы регистров 7. Входы регистров 35, 36 и 37 соединены с входной шиной 42. К шине 42 подключен также выход сумматора 34. Связь арифметико-ло гического узла 6 с группой регистБлок уравновешивания представляет собой управляющий автомат для задания порядка выполнения всех подпрограмм вычислительными блоками 5. Он состоит из Уун 3 микроавтоматов, Каждый вычислительный блок 5 управляется своим микроавтоматом. Пример-схема одного из микроавтоматов - показан на фиг.
Такой микроавтомат состоит из узла логических условий 24, элемента И 25, памяти 26, дешифратора 27, счетчика 28, элемента ИЛИ 29, коммутатоSO ров 30 и 31, схемы сравнения 32 и элемента И 33. В память 26 в определенном порядке записаны подпрограммы операций, выполняемые вычислительными блоками 5. Узел логических условий 24 осуществляет анализ результатов операций, выполняемых вычислительными блоками 5. ров 7 осуществляется по шинам 43 и 44.
Узел управления 15 представляет собой управляющий автомат и может быть выполнен по любой из известных схем.
Узел логических. условий 24 и схе" ма сравнения 32 представляют собой схемы сравнения значений двух слов на ра вен ст во.
Заявляемое цифровое вычислительное устройство решает системы алгебраического уравнения
А Х = В1 где А - матрица коэффициентов а„
В - вектор правых частей Ь,;;
М - вектоу переменных X, i = 1,>и, j= 1,п;
n - число уравнений (строк А);
n - число переменных (столбцов
А), 966702 или задачи линейного программирования с целевой функцией, заданной в виде
С =. С,-X„. ф: б где С- - коэффициент целевой функции, и с сйстемой ограничений, заданный в виде .Е у.:М.-.ЗО, i = 1 m В основу алгоритма решения предлагаемого устройства положен знаково-градиентный метод минимизации функционала
;Ф=.X (6„, v где 61 = . K а . Х„. -Ь - элемент вектора невязки.
Предлагаемое устройство работает следующим образом.
Перед началом решения в устройстве устанавливается режим работы и через блок ввода-вывода 1 осуществляется ввод исходной информации. Установ ка режима работы производится клавиатурой 11 блока ввода-вывода 1.
Ввод исходной, информации осуществляется либо клавиатурой 11 при автономном использовании устройства, либо через блок ввода-вывода 1 при системном30 использовании устройства..
Ввод исходной информации осущест- . вляется в такой последовательности: ввод коэффициентов целевой функции; ввод вектора начальных значений не- 33 известных переменных; постоянный ввод коэффициентов матрицы, вектора правых частей системы алгебраических уравнений.
Процедура ввода исходной информа- 4о ции выполняется следующим образом.
Блок ввода-вывода 1 выдает управt ляющие сигналы на блок синхронизации 3 и через него на блок уравновешивания 5, начинает выдавать по одному значению исходные данные, которые поступают на первый вход первого вычислительного блока 5. Блок уравно- вешивания 4 выдает íà (m+2) вычисли° тельных блока 5 команды "Передача 56 данных", на (m +3)-й вычислительный блок 5 команду "Запись! .. Значения коэффициентов целевой функции проходят арифметика-логические узлы 6 вычислительных блоков 5 с номерами от перво- 55 го до (m +2)-ro и поступают на вход арифметико-логического узла 6 (m+3)-го вычислительного блока 5, а затем заносятся в группу регистров 7 данного вычислительного блока 5. Блоки вводавывода 1 и уравновешивания 4 анализируют за вершение за пи си коэффициентов целевой функции, а блок ввода-вывода 1 переводит устройство для записи вектора начальных значений неизвестных переменных. Аналогично процедуре ввода коэффициентов целевой Функции выполняется процедура ввода вектора начальных значений неизвестных веременных, которые заносятся в группу регистров 7 (щ +2)-ro вычислительного блока 5. Затем в группы регистров 7 (1+ п ).го вычислительных блоков 5 построчно заносятся значения коэффициентов матрицы (С ; ) и значеМ) ния правых частей (Ь„-) . После записи исходной информации устройство по команде блоков ввода-вывода 1 и уравновешения 4 переходит к решению системы алгебраических уравнений или задачи линейного программирования.
Итерационный процесс решения начи" нается с вычисления начальных значений вектора невязки E(и вектора градиента hp® (индекс в скобках указывает номер итерации). Вычисления вектора невязки 6< осуществляются в (1+ и)-м вычислительных блоках 5 параллельно и независимо,-дострочно по формуле
K (oo) XN О Х (О) 1 111)j у 0) где — элемент начального вектора
4 невязки; элемент начального, вектора неизвестных переменных;
О„ - коэффициент исходной матрицы
Ь„ - элемент вектора правых частей.
По команде блоков ввода-вывода 1 и уравновешивания 4 по одному значению (о) переменных X переводятся из (m+2)-ro
9 вычислительного блока 5 через блок ввода-вывода 1 в регистры 36, а значения коэффициентов матрицы а„ из групп регистров 7 в регистр 38 арифме-, тико-логических узлов 6 .(1+m)-го вычислительных блоков 5, где происходит их умножение. Операция умножения осуществляется путем анализа блоком уравновешивания 4 значений разрядов пере(о/ менных Х с последующим суммирова3 нием значений коэффициентов. После завершения процедуры умножения а„" и Х
702 10> тельных блоках 5 из групп регистров 7 в арифметико-логические узлы 6 передаются коэффициенты а.„, где выполняется процедура умножения а„„ на
1Х "), которая осуществляется путем многократного суммирования коэйфици" ентов „„. Величины приращении Ь Х (к) равные шагу приращения ф, и знаки приращений д Х ), противоположные зна кам элементов ве ктора градиента
; Vp ", устанавливаются в блоке уравновешивания 4. Полученное произведение по команде блока уравновешивания 4 переводится в группы регистров 7. Затем передаются следующие коэффициенты а„ из гругп регистров 7 в арифметикологические узлы 6, в которых выполняется умнонение этих коэффициентов на приращения д ХР и полученные произедения а b X ) суммируются с предыду щими а„. Д YÄ() . Завершение вычисления приращения вектора невязки д 1 анализируется блоком уравновешивания 4, который переводит устройство для решения новых значений вектора переменных X !к и невязки . гк)
Вычисление новых значений векторов
1 д Х® и P.<к) выполняются суммированием
„ к-!) предыдущих значений векторов Х и » с приращениями Ь Х ) и ht т.е.
9. чбб по команде блока уравновешивания 4 значения переменных Х(переводятся из
i-тых в (i+1)-ые вычислительные блоки 5, а из групп регистров 7 в арифметико-логические узлы 6 значения сле-1 дующих коэффициентов а и процедура !
2 умножения повторяется. Результаты умножения суммируются с величиной b ( и заносятся в группы регистров 7. Вычисление вектора завершается за- !О несением в группы регистров 7 значений 6(, а значения функций Sgn t )в блок уравновешивания 4. Затем блок уравновешивания 4 переводит устройство для вычисления начальных значений !5 вектора градиента, элемент которого . вычисляется по Формуле (o)
Чф = Q à,.Sgn f j =- 1,п
14 11 1 ге пс. 0 при f < 0 .
Вычисление элементов начального значения вектора градиента осуществляется в м-х вычислительных блоках 5»
По команде блока уравновешивания 4
25 значения коэффициентов а„- со знаком, соот ветст вующим е го знаку, умноженному на знак функции Буп Ф,поступают из группы регистров 7 в арифметико1 логические узлы 6, где происходит суммирование со значениями коэффициентов а„, поступающими на их входы.
Данная процедура завершается по ко" манде блока уравновешивания 4 занесением значений элементов начального 35 вектора градиента в группу регистров 7 (m+l)-го вычислительного блока 5 и значений Функций Sgn Ч,О в блок уравновешивания 4, где функция
Sf> !)ф.=W!)ôè с Ф), ) - 40
o p„„<<
Блок уравновешивания 4 фиксирует завершение вычисления начальных значений Ч ОФи переводит устройство в подре>4м итерационного решения.
Итерационный процесс решения начинается с-вычисления приращения невязки по формуле
Ь%(") = Х С3. д X(K) 4=.! ю и где д Х = -Ь ° Sgp !)p, j =1,fl flpH ращения !-того элемента вектора переменных на к-том шаге итерационного процесса; * - шаг приращения 1-того элемента вектора переменных. 55
По команде блока ввода-вывода 1, блока синхронизации 3 и блока уравно, вешивания 4 в (1+e том вычисли",,!,к) (к-В к)
Х = X> aX,, j = 1;и jK) к-1) (К) — + Д61, 1 = 1,П)
Вычисление новых значений векторов выполняется в (1+и) -их вычислительных блоках 5, а вектора - в (m+2)-м вычислительном блоке 5 параллельно.
После выполнения данных вычислений, значения элементов . ) заносятся в (К группы регистров 7 (1 +m)-го вычислительных блоков 5 значения Х- - в 1
j группу регистров 7 (гн.2)-го вычислительного блока 5, а значения йункций
Sgn5 в блок уравновешивания 4, ко< торый переводит устройство для вычис- ления вектора градиента Ч,О . Процедура вычисления вектора градиента выполняется аналогично процедуре вычисления начального вектора градиен" таму .) Блок уравновешивания 4 анали0 ) зирует завершение вычисления вектора градиента Ч p О, значение которого заносится в группу регистров 7 (m+1)-го вычислительного блока 5, фиксирует значения функций Бцпфф - и перево1 дит устроиство для выполнения следующего шага итерационного процесса, ко11 - 9667 то)5ый начинается с вычисления приращения вектора невязки.
При решении задач линейного программирования на каждом шаге итерационного процесса после вычисления вектора невязки с блок уравновеши(о) :вания 4 анализирует значения вектора (к) (К) невязки(и переменной Х . По результатам этого анализа блок уравновешивания 4 выдает команды вычисления )о вектора градиента Vgl по формуле
<к)
sи ) 1
gp, / g („., (К) ц() . 0»фи. X» 0» (Оаа/м- $„ 0, Если на данном итерационном шаге значения элементов векторов невязки и переменной Х ") удовлетворяют необходимым ограничениям, то значение элементов вектора градиента V,Ц (вычис1 ляется по значению коэФфициентов целевой функции C . Если значение векторов невяэки ®) и переменной Х(к) не удовлетворяют необходимым ограничениям, то значения элементов градиента вычисляются аналогично вычислению значений элементов вектора гра- диента для систем алгебраических уравнений.
Итерационный процесс решения завершается по команде блока ввода-вывода 1 и блока уравновешивания 4.
Блок уравйовешивания 4 на каждом ша35 ге итерационного процесса анализирует критерии остановки итерационного процесса. Если эти критерии не выполняются, то итерационный процесс про40 должается. В случае, если критерии остановки выполняются то блок урав-.
) новешивания выдает на блок ввода-вывода 1 сигнал остановки итерационного процесса, который инициирует сигналы остановки во всех микроавтоматах.
Ilo команде блока ввода-вывода 1 блок уравновешивания 4 управляет передачей по одному значению результатов решения по цепочке вычислительных блоков 5 на вход блока ввода-вывода 1, который далее передает эти значения на блок индикации 2. Остановка итерационного процесса и вывод результатов решеыия может также осуществляться с клавиатуры 11 при автономном ис-" 55 пользовании устройства или по команде узла управления 15 при системном использовании устройства.
02 12
Вычислительными блоками 5 управляет блок уравновешивания 4, который на формирователь адреса 8 выдает управляющие команды, а формирователь адресов 8 преобразует эти команды. С вы-.. хода Формирователя адресов 8 на группу регистров 7 поступают команды адреса ячейки памяти "Запись" или "Чтение, а на арифметико-логический
II узел б - команды операций. Группа регистров 7 по команде формирователя ад ресов 8 может записывать инг)ормацию, поступающую с арифметико-логического узла 6, и выдавать информацию на арифметико-логический узел 6 или на блок уравновешивания 4. Арифметико-логичес кий узел 6 по командам, поступающим с формирователя адресов 8, выполняет команды над информацией, поступающей на вход вычислительного блока 5 или с группы регистров 7. Результаты вы:.полненных операций выдаются на выход вычислительного блока 5 или на вход группы регистров 7, Последний вычислительный блок 5, кроме арифметикологического узла 6 и группы регистров 7, имеет счетчик 9 и. регистр адресов 10, включенных последовательно.
Управление работой арифметико-логическим узлом 6 осуществляется непосредственно с блока уравновешивания 4. Задание выполнения операции "Запись" или "Чтения" в группе регистров 7 также осуществляется блоком уравновешивания 4, а адресацию определяют счетчик 9 и регистр адресов 10.
На вход счетчика 9 с блока уравновешивания 4 поступают счетные импульсы.
Счетчик 9 задает команду адреса ячейки памяти в группе регистров 7, которая хранится в регистре адресов 10 до поступления следующего импульса на вход счетчика 9.
Арифметико-логические узлы 6 предназначены для выполнения арифметических и логических операций и имеют одинаковую структуру.
Арифметико-логический узел б работает следующим образом.
Операнды, поступающие на вход арифметико-логического узла 6, размещаются в одном иэ регистров 36 или
37. Для совмещения выполнения текущей операции в арифметико-логическом узле 6 с выборкой операндов из группы регистров 7 служит регистр 38.
После выполнения операции операнд заносится в регистр 35. Операнды с ре966702
13 гистра 37 непосредственно, а с регистра 36 через мультиплексор 39, поступает на входы сумматора 34, который выполняет операцию над операндами.
Результаты операций хранятся в регистре 35.В регистрах 35 и 36 осуществляется необходимый сдвиг. Вывод результатов вычисления на группу регистров 7 осуществляется через мультиплексор 40. Вход арифметико-логи- 1î ческого узла 6 совмещен с выходом сумматора 34, а выход - с входом сумматора 34. Управляющие сигналы по ступают с блока уравновешивания 4 и на все эпементы арифметико-логическо- 15
ro узла 6 по шине 45.
Блок ввода-вывода 1 работает следующим образом.
Шины 47-49 составляют внешний и нтерфей с для свя Зи с каналом вводавывода. Это прямая информационная шина 47, адресная шина 48, управление
49. По шине 50 информация с блока ввода-вывода 1 через мультиплексор ввода 13,и выходного регистра 17 поступает на входы вычислительных блоков 5. Шина 51 используется для передачи синхроимпульсов с генератора 16 и управляющего слова из регистра 19 в блок синхронизации 3 и блок уравновешивания 4. По шине 52 информация с выхода последнего вычислительного блока 5 поступает на выходной регистр
20, а по шине 53 информация поступает на блок индикации 3. По нине 54 сигналы с блока уравновешивания 4 поступают на узел управления 15. Шины 49-54 образуют внутренний интерфейс устройств. При ручном вводе посредством клавиатуры 11 набирается вводимое число и его адрес и выдается сигнал переключения мультиплексоров 13 и 14 на ручной режим ввода. В узел регистров 19 через мультиплексор 14 и память 18 вводится адресная информация. Вводимое число с клавиатуры 11 через-преобразователь 12, мультиплексор t3 и .входной регистр 17 поступают на шину 50. При автоматическом режиме ввода мультиплексоры 13 и 14 пере- о ключаются на шины 47 и 48 соответственно. Информация данных с шины 47 через мультиплексор 14 и память 18 поступает в узел регистров 19, а с узла регистров 19 передается на шину 51, Управление работой блока вводавывода 1 осуществляет узел управления 15 и генератор синхро-импуль14 сов 16. Выводимая информация по сигналам узла управления 15 и генератора синхро-импульса 16 с шины 52 через выходной регистр 20 поступает либо на преобразователь 22 и далее на шину 53, либо через коммутатор 21 на шину 46.
Остановка итерационного процесса и вывод результатов решения осуществляются по команде узла управления 15.
При автономном использовании предлагаемого устройства сигналы остановок итерационного процесса поступают со всех микроавтоматов блока уравновешивания 4 по шине 54 на узел управле- ния 15, который через мультиплексор .14, память 18 и узел регистров 19 выдает команду вывода результатов на блок уравновешивания 4 через шину 51. При системном использовании устройства сигнал остановки итерационного процесса поступает на шину 49.. Остановка итерационного процесса может осу ществляться также клавиатурой 11.
Мультиплексор 23 по команде блока управления 15 осуществляет передачу информации с последнего на первый вычислительные блоки 5 по шине 50.
Все микроавтоматы блока уравновешивания 4 имеют одинаковую структуру и работают следующим образом.
Сигнал с выхода блока ввода-вывода 1 по шине 55 через коммутатор 31 и элемент ИЛИ 29 запускаеТ счетчик 28, который устанавливает номер команды.
Сигнал номера команды с выхода счетчика .28 через дешифратор 27 поступает на вход памяти 26. Память 26 выдает на вычислительный блок 5 по шине 56 сигнал кода операции, выполняемой вычислительным блоком 5, а на коммутаtop 30 номер выполняемой операции.
Узел логических условий 24 по шине 57 принимает с вычислительного блока 5 сигнал результатов выполнения операции и анализирует их.
С выхода узла логических условий 24 сигналы поступают на вход элемента
И 26 и через коммутатор 30 и элемент ИЛИ 29 на второй вход счетчика 28. Счетчик 28 по команде элемента ИЛИ 29 и элемента И 25 устанавливает следующий номер подпрограммы. Сигнал с выхода счетчика 28 через дешифратор 27 поступает на вход памяти 26, которая выдает на шину 54 сигнал кода следующей операции и адрес памяти. При подаче с памяти 26 на шину 56 сигнала кода операции схема сравнения 32 сравнивает данный с сиг15 " 9667 налом подаваемым на вход схемы сравнения 33 с шины 55. Если код операции является последним в подпрограмме, то схема сравнения 33 выдает на узел логических условий 24 команду перехода анализа следующих условий. После выполнения каждого шага итерационного процесса узел логических условий 24 анализирует выполнение критериев остановки итерационного процесса. Если 10 критерии не выполняются, то узел логических условий 24 выдает на элемент И 25 и элемент ИЛИ 30 сигнал о переходе к следующей операции и итерационный процесс повторяется. Если is критерии выполняются, то узел логических условий 24 выдает сигнал на блок ввода-вывода 1 по шине 58. Блок ввода-вывода 1 выдает по шине 55 на элемент И 33 сигнал остановки итера- щ ционного процесса. Элемент И 33 переключает счетчик 28, который через дешифратор 27 выдает сигнал на память 26. Память 26 по шине 56 выдает на вычислительный блок 5 команды 25 подпрограммы вывода информацИи.
В память 26 последнего микроавто- мата записаны только команды кода операции, выполняемой арифметико-логическим узлом 6 и группой регистров 7З0 (m+3)-го вычислительного блока 5. Адрес ячейки памяти в группе регистров 7 (n+3)-го вычислительного блока 5 определяется счетчиком 9 и регистром 10 при подаче с (m+3)-ro микроавтомата блока уравновешивания 4 по шине 59 с элемента 33 счетчика импульсов.
Преимущества предлагаемого устройства в сравнении с известными ранее
40 обусловлены тем, что введение в устройство (m+3) — ro вычислительного блока, в состав которого входят счетчик и регистр адресов, соединенных последовательно, позволяет расширить функциональные возможности предлагаемого устройства в части решения задач линейíîto программирования .
Предполагаемый экономический эффект от использования вычислительных комплексов, частью которых является предлагаемое устройство, составляет
83,0 тыс.руб. в год, а срок окупаемости 0,4 года. . Формула изобретения
1. Устройство для решения системы 55 алгебраических уравнений, содержащее блок ввода-вывода, блок синхронизации, блок уравновешивания и (в+2) 02 16 вычислительных блоков, (где щ — число уравнений), причем управляющий вход блока ввода-вывода соединен с (М+4)-м выходом блока уравновешивания, выход синхронизации блока ввода-вывода соединен с входом блока синхронизации, выход которого соединен с входом синхронизации блока уравновешивания, информационный выход блока ввода-вывода .соединен с информационным входом первого вычислительного блока, первый выход 1 -го (где 1= 1,2,...,в+3) вычислительного блока соединен с ин" формационным входом 4 +1)-го вычислительного блока, второй выход j -го вычислительного блока соединен с 1-м информационным входом блока уравновешивания, i-й выход которого соединен с управляющим входом 1-ro вычислительного блока, о т л и ч а ю щ е е с я тем, что, с целью расширения функциональных возможностей устройства за счет обеспечения решения задач линейного программирования, в устройство введен (m+3) вычислительный блок, причем информационный вход этого бло" ка подключен к первому выходу (m+2)-го вычислительного блока, управляющий вход которого соединен с (п+3)"м выходом блока уравновешивания, первый выход (м+3)-ro вычислительного блока соеди нен с и нформационным входом блока ввода- вывода, второй выход которого соеди не н с (В+3 )- м входом блока ура вновешияания.
2. Устройство по и. 1, о т л и ч а ю щ е е с я тем, что (M+3)-й вычислительный блок содержит арифметико-логический узел, группу регистров данных, регистр адресов и счетчик адреса, причем первый информационный вход арифметико-логического узла явллется информационным входом блока, второй информационный вход этого узла соединен с выходом группы регистров данных, который является также вторым выходом блока, выход счетчика адресов соединен с входом регистра адресов, выход которого соединен с информационным входом группы регистров данных, выход арифметико-:логического. узла яв- ляется первым выходом, вычислительного блока, вход счетчика адресов,. управляющие входы арифметико-логического узла и группы регистров данных подключены к управляющему входу блока.
966702
Источники инФормации, принятые во внимание при экспертизе
1. Авторское свидетельство СССР
559241 кл. э 06 Р 15/32 1977.
18
2. Авторское свидетельство СССР по заявке 2753317/18-24, кл. 6 06 F 15/32, 21.02.79 (прототип)..
966702
Составитель А. Чеканов
Редактор Л. Авраменко Техреду И. Рейвес Корректор С 1екмар
Заказ 7846/67 Тираж 731 Подписное
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035 Москва Ж-Я Раушская наб. g. 4/$
Филиал ППП "Патент", г. Ужгород, ул. Проектная, 4