Научная статья на тему 'Проектирование унифицированного набора блоков для заданного класса функциональных схем вычислительных устройств'

Проектирование унифицированного набора блоков для заданного класса функциональных схем вычислительных устройств Текст научной статьи по специальности «Математика»

CC BY
70
9
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Проектирование унифицированного набора блоков для заданного класса функциональных схем вычислительных устройств»

ИЗВЕСТИЯ

ТОМСКОГО ОРДЕНА ОКТЯБРЬСКОЙ РЕВОЛЮЦИИ И ОРДЕНА ТРУДОВОГО КРАСНОГО ЗНАМЕНИ ПОЛИТЕХНИЧЕСКОГО ИНСТИТУТА им. С. М. КИРОВА

Том 269 1976

ПРОЕКТИРОВАНИЕ УНИФИЦИРОВАННОГО НАБОРА БЛОКОВ ДЛЯ ЗАДАННОГО КЛАССА ФУНКЦИОНАЛЬНЫХ СХЕМ ВЫЧИСЛИТЕЛЬНЫХ УСТРОЙСТВ

В. к. ПОГРЕБНОЙ, С. 3. ЯМ'ПОЛЬСКИЙ

(Представлена научно-техническим семинаром кафедры автоматизированных систем

управления и лаборатории управления)

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

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

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

шим интегральным схемам (модулям), а на втором — применительно к блокам.

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

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

В настоящей работе задача проектрования УНБ рассматривается при жестко заданных параметрах блока. Однако это не означает, что для решения данной задачи во второй постановке потребуется разрабатывать принципиально новые методы, так как проектирование УНБ при фиксированнных значениях параметров блока из заданного диапазона ничем ни отличается от решения задачи в первой постановке. Дополнительно потребуется лишь разработать методику оценки вари-, антов УНБ, полученных для различных фиксированых значений параметров блока и выбора среди них оптимального варианта. Одним из основных требований, которым должен удовлетворять УНБ, является высокая применимость блоков набора при реализации схем вычислительных устройств заданного класса. Класс функциональных схем определяется серией логических элементов, на которых разработаны схе-. мы, общностью принципов организации и функционального назначения вычислительных устройств, а также перечня типовых узлов и их различных схемных реализаций (модификаций), используемых при разработке схем.

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

зависящей от величины выборки а, можно распространить на'совокуп-

»

ность Если выборка мала, то выборочные характеристики не отражают с достаточной вероятностью даже наиболее существенные характеристики совокупности Ь. УНБ; построенный на основе характеристик, полученных из малой выборки, даже при наличии весьма эффективных методов будет отражать характеристики только данной выборки. Поэтому применимость блоков такого УНБ для реализации схем, не принадлежащих выборке, будет низка. В этом случае с появлением новых схем необходимо проводить корректировку УНБ.

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

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

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

Разработка и исследование методов проектирования унифицированного набора блоков приводит к необходимости решения ряда задач, которые могут быть объединены в следующие основные группы:

1) структурный анализ функциональных схем;

2) формирование блоков унифицированного набора;

3) определение оптимального размера унифицированного набора.

Для проведения структурного анализа функциональная схема интерпретируется направленным графом б= (Р, (У). Вершинами графа О являются логические элементы схемы либо более сложные логические

структуры, если они содержат невзаимозаменяемые группы входов [1]. Все входы внутри таких групп являются взаимозаменяемыми. При необходимости выходы логического элемента также могут быть разбиты на группы.

Дуга Р^Р) графа характеризует наличие логической связи (выход—вход) между элементами с порядковыми номерами рг и р7-. Вершина графа р^характеризуется видом номерами групп входов и групп выходов г¿. Каждой дуге Р-^Р) ^иставится в соответствие функция связи

Граф (Р, II) анализируемой схемы задается списком связей ррр} ^и с указанием функции связи ¡л,^- и полустепеней исхода а(р*), и захода Р(ру), соответствующих вершин связи. Граф аС=(Р\ V) типовой структуры задается аналогично.

При решении задач структурного анализа рассматривается проблема идентификации графов. При этом более важной и более трудной является проблема тождественного вхождения графов. Известно, что решение подобных задач связано с большим числом переборов, которое с увеличением числа вершин п в графе растет так быстро, что даже для сравнительно небольших п выходит за границы возможностей современных ЭВМ [2]. Для рассматриваемых схем граф О содержит сотни вершин и поэтому полный перебор не представляется возможным. Однако ряд особенностей рассматриваемых графов (число дуг сравнимо с числом вершин; большое разнообразие видов вершин и номеров групп, значений полустепеней исхода и захода вершин) способствует сокращению числа переборов и дает возможность построить весьма эффективные алгоритмы решения задач идентификации графов при структурном ана- 1

лизе схем.

Структурный анализ исследуемой выборки схем осуществляется в три этапа. На первом этапе в схемах выделяются заведомо известные *

типовые структуры (ТС)—типовые узлы цифровых устройств в различных модификациях.

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

Третий этап заключается в выделении среди элементов, не вошедших в типовые узлы, устойчивых сочетаний.

Процесс выделения графа С/=1(Р/, [/') (типовой структуры) в графе б=(Я, и) (функциональной схеме) состоит в последовательной проверке дуг графов С и б по условиям тождественности и эквивалентного дополнения. Две дуги р^р^^и и ,Рт!:пРп£ V тождественны, если спра- *

ведливы условия:

Дуга р^НРу^"1 является эквивалентным дополнением к дуге р$Пр), по отношению к соответствующим дугам р^4"1 и р^1-1 Ркп

графа С, если выполняются следующие условия:

Ри=№1> Чм Фу)-

(1)

а) =

ги — гтт

б) «(Рт)<«(А).

В) «(/>„)<«(/>,), ИРпХИР;).

(2)

а) Р?=Р*+1 при

п

ч

б) •РН при

В) Р) = Р'Г1 при РтЛ\

Г) Р) = р)1 при Pi- Pn+1-

Здесь к— 1, 2 к — порядковые номера дуг последовательности, в которой они выделяются в графах 0/ и О.

Алгоритм выделения графа С построен таким образом, что предварительно в графе О выделяется дуга, удовлетворяющая условию (2) для некоторой /с-й (исходной) дуги графа О'. После этого производится проверка, содержит ли граф О подграф с выделенной дугой, тождественный графу С. Такая проверка производится последовательным присоединением к исходной дуге дуг графа Ог с одновременным поиском для каждой из них дуги в графе О, удовлетворяющей условиям (2), (3). Если такой граф находится, то его дуги запоминаются, а в графе в выделяется вторая дуга, удовлетворяющая условию (2) для исходной дуги графа С, и производится вышеуказанная проверка на наличие подграфа. Если подграф не выделяется, то процесс выделения продолжается так же, как и в случае его выделения.

Если в процессе выделения дуг графа Ог в графе О достигнуть последней /1-й дуги не удается, то делается так называемый обратный ход— дуга графа б, выделенная на предыдущем шаге, исключается из рассмотрения, а взамен ее ищется другая и производится попытка достигнуть Л-ю дугу уже через вновь выделенную дугу. Поиск продолжается до тех пор, пока не будут просмотрены все дуги графа б, удовлетворяющие условию (2) для исходной дуги графа С. Это означает, что граф О не содержит подграф с дугой, удовлетворяющей условию (2) для исходной дуги графа тождественный графу С.

Частичный подграф (Р°, £7°), полученный после выделения в

графе непересекающихся подграфов типовых структур, анализируется с целью выделения в нем всего множества связанных подграфов (индекс / указывает на то, что 1-й подграф содержит } дуг) и разбиения его на группы тождественных графов. По результатам схем, на основе которых определяется перечень устойчивых сочетаний, и производится их выделение в частичных подграфах всех схем выборки по алгоритму выделения ТС.

Устойчивые сочетания, частота использования которых в анализируемой выборке схем превышает некоторое установленное число, принимаются в качестве ТС и наряду с ранее выделенными ТС (типовыми узлами цифровых устройств) ложатся в основу проектирования УНБ.

Задача формирования блоков-набора рассматривается как задача рационального объединения нескольких ТС в блок при условии, что его конструктивные параметры представлены следующими данными:

<3 — максимальное число модулей, которое может содержать блок;

р — максимальное количество контактов разъема блока, которое может быть использовано при распайке входов и выходов ТС, включенных в блок.

Информацию о частоте использования ТС в анализируемой выборке схем можно представить матрицей А = \\аз1 ||аХш, где а —количество схем в анализируемой выборке, о) — количество видов ТС, полученных в результате структурного анализа. Элемент аз1 матрицы А характеризует число ТС 1-го вида в 5-й схеме. Для каждой ТС известно также:

— количество элементов, составляющих ТС 1-го вида;

— количество контактов, необходимых для распайки входов и выходов ТС ¿-го вида.

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

Представим информацию об элементах, содержащихся в модулях *, в виде матрицы А = ||а^ || тХП , где т — количество видов элементов, содержащихся в модулях; п — количество видов модулей. Элемент а^ матрицы А характеризует количество элементов /-го вида в /-м модуле, Введем вектор-столбец В={Ьи Ь2у Ьт }, составляющие которого Ъг характеризуют количество элементов ¿-го вида в рассматриваемой схеме блока. Определим переменную ху, как количество модулей /-го вида, необходимых для покрытия элементов ТС блока.

В принятых обозначениях задача минимизации числа модулей при покрытии элементов блока может быть записана в следующем виде:

п

гшп2- ^ (4)

У—1

при

2 ¿= 1, 2,..,, т; (5)

/=1,2, п; (6)

X}— целое для всех / = 1, 2, ..п. (7)

Для решения задачи (4) -5- (7) с предварительным сокращением ее размерности может быть использован алгоритм, предложенный в работе [3]. Значение целевой функции полученное при решении задачи (4) -г- (7) для 1-го блока, не должно превышать величины

Оценка качества заполнения /-го блока после решения задачи (4) ч- (7) осуществляется по коэффициенту заполнения /С/, который определяется по формуле

<8>

Для определения комбинаций ТС, которые часто встречаются в анализируемой выборке схем, необходимо ввести оценку «связности» между ТС. При наличии такой оценки задача формирования блока сводится к выбору наиболее связанной совокупности ТС, удовлетворяющей ограничениям на конструктивные параметры блока.

Оценка связи между ТС осуществляется по матрице А'—||а'^||зХи>, полученной в результате преобразования матрицы А. Процесс преобразования производится для «сглаживания» пиковых значений элементов матрицы А, которые не являются характерными для всей выборки схем, а встречаются в отдельных схемах и могут быть реализованы блоками, содержащими ТС одного вида. Элементы определяются из условия

* Рассматривается определенная серия интегральных схем (модулей), на которой реализуются анализируемые схемы.

0 <asi=(aSi—kh)<h£,

(9)

где

—максимальное число ТС ¿-го вида, которое может быть включено в один блок,

К— 1, 2, ... — целое число.

Величина —определяется из условий:

а) г1г<СЯ; б) А,< у- (ц. ч.). (10)

Количество ТС /-го вида, используемых в каждой из схем выборки, представляет собой случайную величину. Значения /-й случайной величины на выборке а представлены столбцом Л, матрицы А'. Известно, что одним из важнейших показателей оценки связи между двумя случайными величинами является коэффициент корреляции г ¿у [4]. Наличие корреляции между I-и и /-й ТС в данном случае указывает на то, что появление в схеме г-й ТС влечет с некоторой вероятностыс появление /-й ТС. Такие ТС часто связаны непосредственно логически ми связями, которые могут быть выявлены в процессе структурной анализа и использованы при распределении ТС по блокам унифициро рованного набора [5]. Коэффициенты корреляции формируются в матрицу /?=||ги-||а>хш. Оценка приоритета одной пары ТС по сравнению с другой по одним лишь коэффициентам корреляции является недостаточной. Покажем это на примере данных о частоте использования двух пар ТС в выборке из пяти схем

0 1 2 1 1 б) Аг А, 0 3 2 4

0 1 2 1 1 0 3 2 4

Для обеих пар Гц =1,,однако блок, содержащий пару ТС (а), при покрытии схем будет использован пять раз, а блок, содержащий ТС пары (б), будет использован двенадцать раз. Разумеется, что с этой точки зрения при формировании блоков предпочтение следует отдать паре (б). Для сравнения пар ТС по данному условию строится матрица частот одновременного использования в выборке схем каждой пары ТС Q = ||<7u-|(0)XiJ). Элемент q^ матрицы Q определяется по формуле

а

<7i/5=min {a;/f asj\. (11)

По матрицам jR и Q строится взвешенная матрица Z— ||гг-> Цшх^» определяющая единую оценку связи между ТС:

Ги = $гГ'и+Мг Рг + Р,= 1> (12)

где

r'.j, q'.j — элементы нормированных матриц R' и Q',

—весовые коэффициенты, характеризующие степень влияния элементов матриц R' и Q' на соответствующий элемент матрицы Z.

Для определения оптимальных значений весовых коэффициентов Рг и анализируется функция Ku=f($r, Р^), где Кп — коэффициент использования, подсчитанный для набора блоков при покрытии схем анализируемой выборки. Исследования показали, что эта функция унимодальна, поэтому для нахождения max К может быть использован метод Кифера-Джонсопа [6]. Коэффициенты |Зги соответствующие max/Си» являются оптимальными.

'/< 7 заказ 12787

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

07

Формирование блоков набора осуществляется на основе матрицы Z чутем отыскания наиболее связанной совокупности ТС í, удовлетворяв ощей условиям,

3) Z] Qy 6)2/¿<F, (13)

где Z* — значение целевой функции, полученной при решении задачи (4) -т- (7) для совокупности t.

Частота, с которой /-я ТС должна встречаться в блоках набора, определяется по формуле

у i ап

Ту~ ^ (Д- ч.), (14)

minia;.

j—i

где у— частота использования в блоках набора ТС с минимальной частотой использования в выборке схем. Значение величины у определяет количество блоков в наборе. С увеличением у число блоков в наборе увеличивается.

Набор блоков, сформированный по вышеизложенному методу, содержит все виды ТС и, следовательно, способен покрыть любую функциональную схему заданного класса, представленную совокупностью выделенных в ней ТС. При этом для конкретного набора получается свое значение коэффициента использования Кн- Величина коэффициента Ки зависит от числа типов блоков в наборе Я, от качества решения задачи покрытия схем, а также от того, насколько рациональными оказались комбинации ТС, образующие соответствующие блоки. Если предположить, что задача покрытия решена оптимально, а алгоритм формирования блоков позволяет получить наиболее рациональные комбинации ТС с точки зрения максимума вероятности их совместного использования при покрытии схем, то коэффициент Ки будет зависеть только от величины набора Я.

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

Уменьшение коэффициента /Си и увеличение числа блоков в наборе Я приводит к росту экономических затрат Z на стадии проектирования вычислительных устройств, а также при создании унифицированного набора блоков. Для определения оптимальных значений Кп и Я необходимо найти минимум функции Z=f(/C„, Я). Получить аналитическое выражение данной функции не представляется возможным. Экспериментальное построение ее возможно путем определения трех функций: Zfc—f(Kn), -Zu =/(Я), К и =/ (Я), где Zk—дополнительные экономические затраты, возникающие вследствие отклонения коэффициента Кц от единицы; ZH —дополнительные экономические затраты, возникающие за счет увеличения числа блоков в наборе в процессе его создания и использования.

Функция Zk=f(Kl}) строится в предположении, что Zk —-= f{Ku — 1)=0 и вычисляется для значений К„, изменяющихся в диапазоне от 1 до 0. При построении функций Zn=f (Я) учитываются только дополнительные затраты, возникающие при построении нового бпока. Необходимо заметить, что значение функции Zk отражает абсолютную

величину затрат, возникающих при снижении /(„, и поэтому зависит от общего числа блоков набора, используемых в вычислительном комплексе. В связи с этим оптимальное количество блоков в наборе может быть найдено только относительно некоторого фиксированного по объему количества блоков набора, используемого для покрытия анализируемой выборки схем, так как с изменением этого объема минимум функции 1 будет смещаться в сторону возрастания величины И.

Функция /(И=/(Я) строится по экспериментальным данным, полученным для нескольких вариантов набора блоков с различными значениями величины Я. Коэффициент /Си определяется для каждого варианта по результатам решения задачи покрытия схем выборки а блоками соответствующего варианта.

Построение функции общих затрат Н) по известным

функциям Zн=f(H) и =/(#), полученным при проек-

тировании УНБ для реального вычислительного комплекса, показано на рис. 1.

Набор блоков с Норх = 110, соответствующий значению 2тщ, принимается в качестве унифицированного набора.

1. Автоматизация проектирозания вычислительных устройств на элементах интегральной микроэлектроники. Отчет по НИР, Томск, ТПИ, 1972.

2. А. А. Зыко в. Теория конечных графов. Новосибирск, «Наука», 1969.

3. В. К. Погребной. Покрытие схем вычислительных устройств блоками унифицированного набора. «Изв. ТПИ», т. 211. Томск, 1970.

4. Е. И. Пустыл ьник. Статистические методы анализа и обработки наблюдений. М., «Наука», 1968.

5. В. К. Погребной. Распределение типовых структур вычислительного устройства по блокам унифицированного набора. Статья в настоящем сборнике.

6. Л.-С. Гурин, Я. С. Д ы м а р с к и й, А. Д. М е р к у л о в. Задачи и методы оптимального распределения ресурсов. М., «Советское радио», 1968.

Рис. 1. 7 — функция 1и 2 — функция

2н=((Н); 3 — функция Кн=!(Н); 4 — функция

г=пКи, н)

ЛИТЕРАТУРА

74 7*

99

i Надоели баннеры? Вы всегда можете отключить рекламу.