![]() | |
![]() |
Электронные компоненты Мануалы GET„A PUT D как представление каскадного вызова процедур. Если граф подвешен за входной узел, то вызов процедур производится по направлению движения потока данных; если же граф подвешивается за выходной узел, то процедуры вызываются в направлении, противоположном потоку данных. В обоих случаях для управления приемом и выдачей данных требуются вспомогательные процедуры GET и PUT. Альтернативой вертикальному управлению является горизонтальное управление, схематически представленное на рис. 4.7. При этом методе потоком данных между модулями управляет отдельный блок. Хотя и можно непосредственно перейти от исходного ИПГ к горизонтальному структурному графу, показанному на рис. 4.7,6, по-видимому, лучше на практике в общем случае вначале перерисовать информационный граф так, чтобы включить в него управляющий модуль (рис. 4.7, а). Другой подход заключается в использовании иерархического управления, как показано на рис. 4.8. Здесь (рис. 4.8, о) в ИПГ включен управляющий модуль, который воздействует только на центральную часть графа, а конечные узлы управляются непосредственно модулями F1 и F3. Иерархический структурный граф, реализующий этот ИПГ, приведен на рис. 4.8,6, где модули F1, F2 и F3 реализованы в виде блоков с соответствующими процедурами сопряжения GET, CONTROL и PUT. Функции преобразования F1, F2 и F3 введены в тела этих блоков. Смешанный подход, представленный на рис. 4.9, включает отдельные черты принципов горизонтального, вертикального и иерархического управления. Одной из привлекательных особенностей стратегии проектирования, ориентированной на потоки данных, является то, что ИПГ сами по себе не предопределяют никаких решений в отношении того, будут ли они реализовываться в виде последовательных или иных систем. Значительная часть проекта мо-
Рис. 4.6. Вертикальное управление последовательным потоком данных. («Вертикальная» структурная схема получается непосредственно из диаграммы последовательногэ потока данных путем «подвешивания ее за один конец».) ![]() УПРАВЛЕНИЕ 1 о->-0 ![]() [а] Видоизмененный граф последовательного потока данных, отображающий возможности прямого управления, ![]()
{6} "Горизонтальный" структурный граф. Рис. 4.7. Горизонтальное управление последовательным потоком данных. жег быть поэтому выполнена до принятия конкретного решения по данному вопросу. В наших примерах до сих пор приводились структурные графы только для последовательных систем. Однако один и тот же ИПГ может быть использован в качестве основы построения систем как с последовательной,так и с параллельной структурой. На практике нередко по нему бывает проще разработать структурный граф для параллельной системы, чем для последовательной, поскольку часто отсутствует необходимость в явном выделении самостоятельной функции управления. На рис. 4.10,0 приведены два примера структурных схем параллельной системы, которая неносредственно реализует последовательный ИПГ без какого-либо отдельного явно выраженного блока управления. Это возможно потому, что задачи автономны и вообще отсутствует необходимость вводить какую-либо особую иерархию управления на связях структурной ![]() УПРАВЛЕНИЕ ![]() ![]() ci (а) Видоизмененный граф последовательного потока данных, отражающий возможности иерархического управления . f1 PACK GET S ![]() CONTROL 2 РАСК ![]() PUT C ![]() « PACK \б) Иерархический структурный граф в виде совокупности пакетов. Рис. 4.8. Иерархическое управление последовательным потоком данных» 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 [ 39 ] 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 |
||||||||||||||||||||||||||||