Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Книги / ПРОЕКТИРОВАНИЕ ПОВС (последнее).doc
Скачиваний:
77
Добавлен:
01.06.2015
Размер:
36.23 Mб
Скачать

6.5.Матричное представление функциональных модулей интегрирующих вычислительных структур

Если предположить, что исходная задача представлена в виде матриц коммутации Ар, Аq и вектора начальных значений Υρ0 , то необходимо разработать алгоритм выделения матриц коммутации, которые описывают соединение УРБ в функциональных модулях базисного набора. На основе алгоритма выделения можно рассматривать матричное представление функциональных модулей.

Необходимо отметить тот факт, что использование разработанного алгоритма выделения матриц Rkk базисных операторов дает существенное упрощение коммутирующей среды и процесса настройки задачи в обыкновенных цифровых интегрирующих структурах за счёт сокращения объема настроечной информации. В модульных ИВС использование функциональных модулей и процесс настройки не предполагает обязательного переходного этапа от исходной задачи к матрицам коммутации Ар и Аq0.

Если от систем Шеннона перейти к программным матрицам Аp и Аq и проанализировать некоторые подматрицы этих матриц, которые расположены на главной диагонали Ар (Аq соответственно), то можно заметить следующее:

1) если дана некоторая задача, из класса задач, реализуемого на данной ЦИС, то можно получить для задачиai матрицу коммутации , построенную из матрицАр, Аq.

г

;

де

2) если дана процедура выделения в матрице R(ai) подматриц специального вида, определяющая характерные связи между УРБ, или так называемых подматриц базисных операторов ИВС, то матрица R(ai) порядка nn приводится к матрице порядка mm по следующей схеме: просматривая по главной диагонали все подматрицы порядка , где , сравниваем их с матрицами коммутации элементарных функций ЦИС. Если нашлась такая подматрица, что (- матрица коммутации элементарных функций в ЦИС), то она убирается из матрицыR(ai), а на ее место ставится символ, отмечающий этот факт. После такого преобразования матрицы полученная матрица будет иметь порядок на (n-i) меньший исходного. Такая операция проводится до тех пор, пока в оставшейся после преобразования матрице не обнаруживается ни одной подматрицы, совпадающей с .

Необходимо заметить, что матрицы не обязательно могут быть матрицами коммутации элементарных функций. Под матрицами коммутации элементарных функций понимаются матрицы ,

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

Матрица в данной процедуре называется элементарной. Если рассмотреть все виды выделяемых подматриц , то это есть не что иное, как матричное представление областей в ЦИС, реализующих базисные операторы, или функциональных модулей.

Представим формальное правило преобразования матрицы R(аi·). Дано: матрица Rпn и . Здесь матрицы , где  – множество матриц базисных операторов.

I. Определим процедуру выбора подматриц матрицы Rnn следующим образом:

1) двигаясь по главной диагонали матрицы Rnn вверх (от элемента rnn к элементу r11), выделяем все подматрицы порядка , где ;

2) двигаясь по главной диагонали матрицы Rпn вниз (от элемента r11 к элементу rnn ), выделяем все подматрицы порядка,

где i = 0, 1, 2, . . ., п-2.

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

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

Поэтому при синтезе алгоритма преобразования матрицы Rnn в Rmm необходимо ввести условие анализа матрицы Rnn на выполнение отмеченного ограничения.

Определим схему преобразования следующего вида то естьF' получается из F путем перестановки в F i -строки или j - столбца.

Сформулируем алгоритм преобразования матрицы Rnn в матрицу Rmm, где m<n. Фиксируется i (i – текущий индекс в порядке подматриц - (n-i)), тем самым выбирается подматрица Fi (или Fj).

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

или , гдеt = 1, 2, 3, ..., N.

3. Если , то конъюнкции для всехt равны нулю и выбранная подматрица Fi (или Fj ) не совпадает ни с одной матрицей Rt базисных операторов. Дальнейшее преобразование Fi, Fj не имеет смысла; п.4. При переход на п.6.

4. Сдвигаем Fi (или Fj) порядка на одну клетку вниз или вверх по главной диагонали, пока не достигнем краев Rnn (т.е. элементов r11 или rnn); п.2. При достижении края

5. Фиксируется следующее значение i = i+1; п.Ι.

6. означает истинность конъюнкций или Вычисляем:

Условие a: любой элемент матрицы,должен принадлежать ее главной диагонали.

Условие b: любой элемент матрицы Rf , не принадлежащий главной диагонали, должен быть нулевым.

Приведем полный алгоритм:

1°. Берем i = 0 ; выбираем ; выполняем преобразование и вычисляем .

2°. Если , то п. (N + 2), иначе п. 3°.

3°. Берем i = 1; выбираем двигаясь вверх или вниз по диагонали кr11 или rnn; выполняем преобразование и вычисляем .

4°. Если , то заменяем подматрицуна отмечающий символ, и матрица Rпп заменяется на Rmm порядка , переход на иначе п.5°.

5°. Берем i = 2;

.

.

.

Ν. Берем i = n – 2; Выбираем , двигаясь вверх или вниз по диагонали кr11 или rnn, выполняем преобразование и вычисляем . (N+1). Если , то Rпп заменяется на матрицу Rmm порядка , иначе переход на

Матрица Rпп заменяется на матрицу Rтт порядка . Если матрица Rтт имеет порядок т=1 (при i=0), то Rпп представляет собой матрицу базисного оператора и ее замену производить не нужно.

Конец.

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

Если принять, что элементарный шаг приведенного алгоритма соответствует микрооперации сравнения двух матриц, то количество шагов p алгоритма равно ,

где п – порядок матрицы Rпп; kколичество матриц Rt базисных операторов, k=N – 1.

Проиллюстрируем работу алгоритма на простом примере.

П р и м е р. Дано: матрица и матрица базисного оператора.

1°. i = 0; в качества выбранной подматрицы используется сама матрица R33; выполняем преобразование и вычисляем c:

;

;

Следовательно, проверяем условия для матрицы Rf:

, где - главная диагональ Rf.

2°.: переход на п.3°.

3°.Матрица R33 заменяется на матрицу Rтт порядка .

4°. Конец.

Таким образом, исходную матрицу R33 можно представить следующим образом:

.

Матрица Rmm является отображением исходной задачи в ЦИС, как и матрица Rnn, но ее структура проще, чем структура .

Очевидно, что для больших значений п машинная обработка матрицы Rnn затруднена, т.к. число шагов алгоритма Ρ резко возрастает. Алгоритм показывает принципиальную возможность выделения специальных областей в матрице Rnn, то есть разбиение решающей части ЦИС на области, которые реализуют различные функциональные зависимости.

Для практических целей разработан эвристический алгоритм выделения подматриц, реализуемых функциональными модулями, который представлен в виде программы, включенной в систему программного обеспечения ИВС.

Если теперь строить ЦИС из таких областей (из ФМ), связи внутри которых жестко заданы или программируются, то для таких структур возможно принципиально новое решение основных проблем, стоящих перед разработчиками ЦИС на интеграторах, таких как методы отображения задач, оптимизация, математическое обеспечение и т.д.