поступающих чисел, в нашем случае – 5. На первые входы схем умножения поступают операнды из входных регистров, а на вторе входа значения коэффициентов BKS ( AKS ), , считываемые из блока постоянной памяти. Адресом ячеек, где хранятся коэффициенты, является код операции. Это позволяет осуществить настройку на выполняемую операцию выбором соответствующего множества коэффициентов. В табл. 5.3 приведены значения коэффициентов
A |
(B |
), |
для различных дифференциальных операций (обобщенное |
KS |
KS |
|
интегрирование, дифференцирование, интегрирование первого и второго порядка точности). Как следует из таблицы, коэффициенты могут принимать значения 0, ±1, ±2, 3 и, следовательно, схемы умножения, в рассматриваемом случае могут быть заменены коммутатором, Если ПЭ будет ориентирован на
более сложные формулы, т. е. |
S / K 2 |
, то для коэффициентов с высокими |
|
номерами потребуются схема умножения. Однако на практике, формулы с погрешностью на h3 обеспечивают, как правило, необходимую точность моделирования.
В качестве основы построения многовходового сумматора могут быть использованы ПЗУ или четырехвходовые сумматоры.
331
Математическое обеспечение синхронного интегродифференцирую-
щего процессора со структурным программированием не развито и ограничивается машинным языком. Это связано, прежде всего, со спецификой применения синхронных моделирующих систем. Каждая отдельная система в процессе эксплуатации ориентируется на весьма узкий круг задач, как правило,
на одну задачу. Оперативная перестройка системы отсутствует. Уровень машинного языка фактически совпадает со входным языком системы, в
качестве которого используется мнемоника обобщенной системы Шеннона.
Команды ПЭ двухадресные. Адреса содержат два поля. В первом поле указывается номер пространственной переменной, а во втором – номера подынтегральных или интегральных переменных.
Множество всех кодов операций равно числу операций, используемых в обобщенной системе Шеннона. Формат команды для случая двух переменных и узлового процессора, состоящего из 10 ПЭ, имеет вид
0 - 3 – код операции;
4 – |
указатель номера пространственной переменной |
0 x |
, |
1 |
1 |
|
|
5 – |
бит расширения номеров пространственных переменных; |
|
6 – 17 – указатель номеров подынтегральных переменных aрk
18 – указатель номера пространственной переменной;
19 – бит расширения номеров пространственных переменных;
20 + 31 – указатель номеров интегральных переменных aqk Номер переменной связан с указателем следующим образом: y0 1 a 20
y |
0 |
dt |
a 21 |
|
|
|
y |
2 |
|
a 22 |
|
|
|
....................... |
y |
n |
|
a 2n |
|
|
|
333
Иными словами, номер переменной есть степень двойки в указателе
Для иллюстрации приведем программу узлового процессора,
ориентированного на моделирование линейного волнового уравнения
Обобщенная система Шеннона, эквивалентная двухмерному волновому уравнению, имеет вид
y |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
d |
t |
y |
|
dt; |
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1. d |
|
y |
|
y |
d |
|
y ; |
|
|
|
|
|
t |
|
3 |
2 |
|
|
t |
1 |
|
|
|
2. d y |
3 |
y d |
t |
y ; |
|
|
|
|
|
|
t |
|
|
3 |
|
|
1 |
|
|
|
3. |
d |
|
y |
|
y |
|
d |
|
y |
4 |
; |
|
|
|
|
|
|
|
t |
5 |
|
t |
|
|
|
|
|
|
|
|
0 |
|
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
4. |
d |
|
y |
|
y |
|
d |
|
y |
5 |
; |
|
|
|
|
|
|
|
t |
6 |
|
t |
|
|
|
|
|
|
|
|
0 |
|
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
5. |
d |
|
y |
|
y |
|
d |
|
y |
4 |
; |
|
|
|
|
|
|
|
t |
7 |
|
t |
|
|
|
|
|
|
|
|
0 |
|
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6. |
d |
|
y |
|
y |
|
d |
|
y |
7 |
; |
|
|
|
|
|
|
|
t |
|
|
t |
|
|
|
|
|
|
|
|
8 |
0 |
|
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
d |
|
y |
2 |
d |
y |
6 |
d y |
; |
|
|
t |
|
t |
|
|
|
t |
8 |
|
1. ИНТ2_0.320,0.002
2. ИНТ2_0.008,0.002
3. ИДИФ2_0.001,0.016
4. ИДИФ2_0.001,1.016
5. ИДИФ2_0.001,1.016
6. ИДИФ2_0.001,1.128
Здесь ИНТ – обозначение операции (интегрирование), ИДИФ – обозначение операции интегродифференцирования, если в первом операнде указана переменная y0, то выполняется операция дифференцирования. Индекс y символа кода операции указывает на порядок формулы численного – интегрирования (1 – первый, 2 – второй и т. д.).
334
Как уже говорилось, интегродифференцирующая система ориенти-
рована на решение узкого круга задач, поэтому число ПЭ выбирается таким,
что каждому уравнению системы Шеннона можно поставить в соответствие свой ПЭ. Однако область решения может меняться в весьма широких пределах.
Число узловых процессоров всегда ограничено. На выбор числа узловых процессоров влияет широкий спектр условий, объем оборудования, время моделирования и т. д. Однако ясно, что в подавляющем большинстве случаев их число всегда меньше размерности пространства. Это требует мультиплексирования оборудования, т. е. использования одного и того же узлового процессора для обработки данных разных точек пространства.
Операция мультиплексирования в синхронных системах осуществляется путем сканирования множества узловых процессоров по пространству. Сканирование осуществляется чаще всего слева направо, сверху вниз и от плоскости с меньшим номером к плоскостям с большими номерами, При переходе с одной точки пространства на другую необходимо запоминать содержимое регистров ПЭ и записывать в них данные, относящиеся к новой точке. Это требует введения дополнительной памяти данных в каждый ПЭ. Память секционирована, число секций определяется максимальным числом точек,
которые может обрабатывать узловой процессор. Количество ячеек в каждой секции выбирается равным числу регистров ПЭ, без учета регистров обмена.
Общее число регистров ПЭ, изображенного на рис. 5.30, равно 4. При работе с
сосредоточенной |
памятью |
время |
|
шага |
|
|
распишется |
и |
|
равно |
T |
T |
T |
T |
|
n p 4( |
3 |
|
c |
), |
где |
|
3 |
– время записи, |
|
c |
– время |
Ш |
ОБ |
ВЫП |
ЗАП |
|
|
|
|
|
|
считывания. Для уменьшения времени записи/считывания общую память можно разбить на блоки по числу регистров и совместить запись результата со считыванием нового значения. В этом случае цикл работы системы сохраняется и, как прежде, состоит из времени обработки и времени обмена. Нетрудно проверить, что при сохранении числа ПЭ в УП время сканирования по пространству не зависит от типа структуры, Действительно, пусть имеется – область N1 N1 R , где N1 – размерность (число точек) но x1, N2 – по x2 , R –
335
число уравнений системы Шеннона, и Р*r – размерность структур, где p –
число узловых процессоров, r – число процессорных элементов. Тогда, время отсчета будет равно
T |
|
|
N |
|
R |
N |
|
|
, |
|
|
|
1 |
|
|
T |
ОБ |
|
|
|
|
|
|
2 |
шаг |
|
|
|
|
P |
|
r |
|
|
|
|
где ] [ – большее целое, |
T |
|
– |
время |
выполнения шага. В случае, если |
|
шаг |
|
структура организована, в виде матрицы
T |
|
N |
|
|
|
N |
|
|
|
R |
T |
, |
|
|
|
|
|
1 |
|
|
|
|
|
2 |
|
|
|
|
|
P |
P |
r |
ОБ |
|
|
|
|
|
|
|
|
|
|
шаг |
|
|
|
|
|
|
|
|
1 |
2 |
|
|
|
|
1 |
|
|
|
|
2 |
|
|
|
r |
|
|
|
|
|
|
|
|
|
|
|
P |
|
|
|
|
P |
|
|
|
|
|
|
|
|
|
|
|
Добавлением пустых |
точек |
|
в |
N |
(N |
2 |
) |
их всегда |
|
|
1 |
|
|
|
|
|
. Тогда, как нетрудно увидеть, TОБ |
TОБ . |
Однако с целью большей гибкости (адаптации) системы к решаемой задаче следует предусматривать возможность формирования как матричной,
так и векторной структур. Это достигается введением в систему специальных коммутаторов шин (см. рис. 5.30).
Коммутатор x1
... |
... |
... |
... |
... |
P21 |
|
P22 |
|
P23 |
|
... |
P2P1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Каждый коммутатор позволяет сформировать векторную структуру по направлениям соответственно x1 и x2. При этом получается векторная структура с двумя магистралями. Суммируя результаты, можно отметить, что предложенные принципы построения, а именно:
-узловое распараллеливание на основе обобщенной системы Шеннона,
-аппаратное выполнение операций,
-синхронное управление.
позволяет соединить аналоговые методы структурного программирования с цифровой обработкой, В результате в системе достигается скорость обработки сравнимая с аналоговыми машинами. Верхняя граничная частота полосы пропускания такой системы равна 102 103 Гц. Быстродействие, определяемое при решении тестовой задачи (моделирование уравнений акустики), равно 21
МОПС (миллионов операций в секунду). В качестве формулы для оценки быстродействия использовано выражение
, Q – число математических операций (21),
N – число шагов по переменной х (8 104) и R – число шагов по переменной
(50).
Задача решается приблизительно за 4 с. для системы 2 х 10, откуда и получается указанное быстродействие, Аналогичная задача на БЭСМ 6
решается 48 мин, следовательно, предлагаемая система более чем в 700 раз превышает быстродействие универсальной ЭВМ. Однако такие характеристики достигаются ценой чрезмерно жесткой специализации. Переход к задаче, даже принадлежащей данному классу, но большей сложности может оказаться невозможным, если число уравнений системы Шеннона превышает множество ПЭ узлового процессора.
337
Сочетание программного и синхронного принципов управления снижает эффективность системы. Это связано, прежде всего, с тем, что при синхронном управлении среднее вреда выполнения операций не зависит от ее типа и всегда равно времени выполнения максимальной операции. Следовательно, время решения обратно пропорционально отношению числа уравнений исходной системы к числу ПЭ узлового процессора (УП), т.е. чем выше сложность исходной системы и меньше вычислительная мощность УП, тем больше время решения. Асинхронное управление, при котором минимизируется среднее время выполнения операций, позволяет снизить скорость увеличения времени решения. Так как операции интегрирования и дифференцирования по
сложности близки друг к другу, то среднее время можно определить как
t |
cp |
p |
ид |
1(1 p) |
диф, где |
Р – частота появления обобщенного |
|
|
|
– время выполнения обобщенного интегрирования,
|
диф |
|
ИИТ |
– |
время |
выполнения |
операций |
интегрирования |
и |
|
|
дифференцирования. На рис. 5.31 приведены графики зависимости среднего времени от частоты появления обобщенной операции и зависимости времени решения при синхронном и асинхронном выполнении операции, а также частоты появления обобщенной операции в зависимости от сложности задачи.
Значения рассчитаны для узлового процессора, содержащего 10 ПЭ. Как видно из графика, с ростом сложности задачи время решения на асинхронной интегродифференцирующей системе растет медленнее. Это связано с уменьшением числа операций обобщенного интегрирования и, как следствие,
ведет к снижению среднего времени выполнения шага интегрирования.
338
|
|
1,0 |
|
|
1,7 |
0,9 |
|
|
|
|
|
1,6 |
0,8 |
|
|
1,5 |
0,7 |
|
|
1,4 |
0,6 |
|
|
1,3 |
0,5 |
|
|
1,2 |
0,4 |
|
|
1,1 |
0,3 |
|
|
1,0 |
0,2 |
|
|
0,9 |
0,1 |
|
|
0,8 |
|
|
|
|
|
|
0,1 |
|
|
Частота появления |
|
обобщённой операции |
С |
|
|
|
|
|
|
Д |
|
|
|
И |
|
Р |
|
ый |
|
tС |
н |
|
н |
|
|
е |
о |
|
|
и |
хр |
|
|
ен |
н |
|
ен |
с |
|
м |
|
и |
|
|
а |
|
Из |
|
н |
|
|
еш |
|
|
р |
|
|
|
Т |
|
|
Треш на асинхронной ИДС
0,2 |
0,3 |
0,4 |
0,5 |
0,6 |
0,7 |
0,8 |
0,9 |
1,0 |
Рис. 5.31
График зависимости среднего времени и времени решения на синхронной, асинхронной ИДС от частоты появления обобщенной операции интегрирования.
5.4. Организация и исследование асинхронных систем с узловым
распараллеливанием и программным управлением
В тех случаях, когда операционная сложность задач меняется в широком диапазоне, эффективность синхронных систем существенно снижается в области больших значении Q (см. рис. 5.32), В связи с чем были осуществлены теоретические исследования и экспериментальная проверка систем с программным управлением матричных систем с узловым распараллеливанием.
Архитектура матричной системы сохраняется неизменной как для синхронной, так и асинхронной систем. Узловой процессор также сохраняет свою конфигурацию. Его основу составляют r процессорных элементов,
связанных по полному графу. Существенным отличием является то, что в УП
339
добавляется программная память. Схема такого УП показана на рис.5.32.
Узловой процессор содержит память программ, разбитую на N секций. Каждая секция содержит программу управления своим ПЭ. В тех случаях, когда ансамбль ПЭ выполняет одинаковые операции, допускается управление из одной произвольной секции. Управление распределением команд осуществляется центральным устройством управления (ЦУУ) и коммутатором команд. Данные, над которыми проводятся операции, распределены по ПЭ.
Таким образом, в соответствии с известной классификацией [186] в УП реализуются два режима обработки данных: режим S 1МД, когда управление осуществляется от одной секции всеми ПЭ, и режим М1МД, когда каждый ПЭ управляется своей секцией.
5.4.1.Организацию вычислений в асинхронной интегро-
дифференцируищей системе
Рассмотрим организацию вычислений в асинхронной интегродиф-
ференцируищей системе. Система организована в виде иерархической структуры, включающей несколько уровней иерархии: матрица узловых процессоров, узловой процессор, процессорный элемент, операционный блок.
Архитектура узлового процессора с программным управлением показана на рисунке 5.32.
340