Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Книги / Книга Проектирование ВПОВС (часть 2)

.pdf
Скачиваний:
88
Добавлен:
01.06.2015
Размер:
4.62 Mб
Скачать

поступающих чисел, в нашем случае – 5. На первые входы схем умножения поступают операнды из входных регистров, а на вторе входа значения коэффициентов BKS ( AKS ), , считываемые из блока постоянной памяти. Адресом ячеек, где хранятся коэффициенты, является код операции. Это позволяет осуществить настройку на выполняемую операцию выбором соответствующего множества коэффициентов. В табл. 5.3 приведены значения коэффициентов

A

(B

),

для различных дифференциальных операций (обобщенное

KS

KS

 

интегрирование, дифференцирование, интегрирование первого и второго порядка точности). Как следует из таблицы, коэффициенты могут принимать значения 0, ±1, ±2, 3 и, следовательно, схемы умножения, в рассматриваемом случае могут быть заменены коммутатором, Если ПЭ будет ориентирован на

более сложные формулы, т. е.

S / K 2

, то для коэффициентов с высокими

 

номерами потребуются схема умножения. Однако на практике, формулы с погрешностью на h3 обеспечивают, как правило, необходимую точность моделирования.

В качестве основы построения многовходового сумматора могут быть использованы ПЗУ или четырехвходовые сумматоры.

331

S

K

-2

-1

0

+1

+2

332

Таблица 5.3

 

 

 

 

 

Левые формулы

 

 

 

 

 

 

 

 

 

 

 

 

Правые формулы

 

 

 

 

 

 

Центральные

 

 

A

 

(h

2

)

B

 

(h

2

)

A (h

3

)

B

 

(h

3

)

A

 

(h

2

)

B

 

(h

2

)

A (h

3

)

B

 

(h

3

)

A

(h

3

)

B

 

(h

3

)

 

 

 

 

 

KS

 

 

 

 

 

 

KS

 

 

KS

 

KS

 

 

 

KS

 

 

 

KS

 

 

 

 

 

 

 

KS

 

 

 

KS

 

 

 

KS

 

 

 

 

 

 

 

KS

 

 

 

 

 

 

K = 0

 

K = 0

 

K = 0

 

K = 0

 

K = 0

 

K = 0

 

K = 0

 

K = 0

 

K = 0

 

K = 0

 

 

 

0

 

 

 

0

 

 

 

p

 

 

 

0

 

 

 

 

0

 

 

 

0

 

 

0

 

 

 

 

0

 

 

 

0

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

p

 

 

 

q

 

 

2 p

 

 

q

 

 

 

 

0

 

 

 

0

 

 

0

 

 

 

 

0

 

 

 

p

 

 

 

p

 

 

 

 

1

 

 

 

1

 

 

2 p

 

 

1

 

 

1 2 p

1 2 q

2 4 p p

1 2 q

2(1 2 p )

2(1 2 q )

 

 

0

 

 

 

0

 

 

0

 

 

 

0

 

 

 

p

 

 

 

q

 

 

4 p

 

 

 

0

 

 

 

p

 

 

 

q

 

 

 

 

0

 

 

 

0

 

 

0

 

 

 

0

 

 

 

 

0

 

 

 

0

 

 

 

p

 

 

 

0

 

 

 

0

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

332

Математическое обеспечение синхронного интегродифференцирую-

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

на одну задачу. Оперативная перестройка системы отсутствует. Уровень машинного языка фактически совпадает со входным языком системы, в

качестве которого используется мнемоника обобщенной системы Шеннона.

Команды ПЭ двухадресные. Адреса содержат два поля. В первом поле указывается номер пространственной переменной, а во втором – номера подынтегральных или интегральных переменных.

Множество всех кодов операций равно числу операций, используемых в обобщенной системе Шеннона. Формат команды для случая двух переменных и узлового процессора, состоящего из 10 ПЭ, имеет вид

0

3

5

6

18

19

20

31

0 - 3 – код операции;

4 –

указатель номера пространственной переменной

0 x

,

1

1

 

 

5 –

бит расширения номеров пространственных переменных;

 

6 – 17 – указатель номеров подынтегральных переменных aрk

18 – указатель номера пространственной переменной;

19 – бит расширения номеров пространственных переменных;

20 + 31 – указатель номеров интегральных переменных aqk Номер переменной связан с указателем следующим образом: y0 1 a 20

x

;

2

 

y

0

dt

a 21

 

 

 

y

2

 

a 22

 

 

 

.......................

y

n

 

a 2n

 

 

 

333

Иными словами, номер переменной есть степень двойки в указателе

номера. Если

a 2

2

2

5

2

7

 

 

 

берется сумма переменных

164

.

 

d

t

y

2

 

 

d

y

5

t

 

d

t

 

y

7

 

,

то

Для иллюстрации приведем программу узлового процессора,

ориентированного на моделирование линейного волнового уравнения

 

2

u

 

 

t

2

 

 

 

2

u

 

 

2

u

 

 

 

 

 

 

x

2

 

x

2

 

 

 

 

 

 

 

 

 

1

 

 

 

2

.

Обобщенная система Шеннона, эквивалентная двухмерному волновому уравнению, имеет вид

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

 

 

 

,

можно сделать

кратными

P

(P )

1

2

или

P P

P

1

2

 

 

. Тогда, как нетрудно увидеть, TОБ

TОБ .

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

так и векторной структур. Это достигается введением в систему специальных коммутаторов шин (см. рис. 5.30).

2x Коммутатор

Коммутатор x1

 

 

 

...

 

11

12

13

...

1P1

21

 

22

 

23

 

...

2P1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

...

...

...

...

...

P21

 

P22

 

P23

 

...

P2P1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 5.30

336

Каждый коммутатор позволяет сформировать векторную структуру по направлениям соответственно x1 и x2. При этом получается векторная структура с двумя магистралями. Суммируя результаты, можно отметить, что предложенные принципы построения, а именно:

-узловое распараллеливание на основе обобщенной системы Шеннона,

-аппаратное выполнение операций,

-синхронное управление.

позволяет соединить аналоговые методы структурного программирования с цифровой обработкой, В результате в системе достигается скорость обработки сравнимая с аналоговыми машинами. Верхняя граничная частота полосы пропускания такой системы равна 102 103 Гц. Быстродействие, определяемое при решении тестовой задачи (моделирование уравнений акустики), равно 21

МОПС (миллионов операций в секунду). В качестве формулы для оценки быстродействия использовано выражение

где

Q

*

 

Q (N

R)

on

 

Q

*

 

 

 

 

V

 

 

 

 

,

 

c

 

T

 

 

 

реш

 

 

 

 

 

 

, 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