60
3. Synteza układów o wielu wejściach (kilkadziesiąt i więcej).
Jak wspomnieliśmy już wcześniej, podane metody minimalizacji nie mają wtedy zastosowania ze względu na złożoność obliczeń, (ilość operacji i wymagana objętość pamięci). W grę wchodzi wówczas projektowanie układów w wersji iteracyjnej, o czym będzie mowa w następnym punkcie, lub zastosowania suboptymalnych metod minimalizacji.
4. Synteza funkcji silnie nieokreślonych.
Istnieją metody łatwej minimalizacji funkcji wielu zmiennych, jeżeli dla wielu próbek argumentów funkcja nie jest określona.
Szczegóły dotyczące wymienionych tu problemów syntezy Czytelnik znajdzie w książce Traczyka [28, str. 83-1563.
2.3. UKŁADY ITERACYJNE [28, str. 124]
Syntezę układu kombinacyjnego o wielu wejściach można często znacznie uprościć projektując go jako układ iteracyjny. Warunkiem takiego projektowania jest posiadanie opisu układu w postaci rekurencyjnej, tzn. takiej, że każde kolejne wejście (lub grupa wejść) w identyczny sposób modyfikuje stan układu wywołany działaniem wejść dotychczas rozpatrywanych. W konsekwencji układ ma postać łańcucha identycznych bloków, zakończonego blokiem wyjściowym, jak to przedstawiono na rys. 2.16.
Rys. 2.16. Struktura układu iteracyjnego
Projektowanie układu 7/ wersji iteracyjnej jest łatwe, ponieważ projektuje się tylko jeden blok o niewielkiej liczbie wejść, zaś realizacja techniczna jest dogodna ze względu na powtarzalność bloków.
Przykład 2.9
Zaprojektować układ kombinacyjny o n wejściach x^,x2.....xQ podający
na wyjście 1, gdy przynajmniej na trzech sąsiednich wejściach są jedynki.
Gdy n jest duże, konwencjonalne zaprojektowanie układu byłoby bardzo trudne. Gdy układ chcemy zaprojektować jako iteracyjny, musimy wyznaczyć zespół sygnałów, przesyłanych pomiędzy blokami, opisujących efekt działania dotychczas rozpatrywanych wejść (stan układu).
Przyjmijmy, że do każdego z bloków na rys. 2.16 podłączone jest tylko jedno z wejść x^(M=1). Zbiór możliwych stanów układu wraz z odpowiadającymi im kodami sygnałów przesyłanych między blokami przedstawiono na rys. 2.17a.
o
SUN |
Mt "U Mi |
MIC WYSTANA JltKU tttlA 3 JCWifK A MA wuicw *IQKV PUAWltO są 8 |
II |
we wystaniu je suit saiA 3 jtpmi* a ma wuietu iuxv MJAWIU sil, 4IWNKA WOŁANA lAtOCUJKOWAĆ WYKIWANA, SfBlf. |
Dl |
MIC VY*T\UtA JISICU SUłA 3 mWCK A MA WtJiciACK H«0> \ IŁfiKU HWtIWA* jąeuo hjam*v W* JCWMK) |
ID |
wvm,mA scaia 3 JCWMCK |
11 |
K\» |
l*\ * |
>u Mi | |
1 |
1 |
1 |
1 |
I |
1 |
8 |
1 |
1 |
I |
1 |
1 |
0 |
1 |
ł |
1 |
1 |
1 |
1 |
1 |
i |
1 |
! |
1 |
i |
t |
i |
ł |
1 |
1 |
\ |
1 |
Rys. 2,17. Kodowanie stanów (a) i tablica przejść (b) układu iteraeyjnego
z przykładu 2.9
Rys. 2.18. Schemat bloku układu iteraeyjnego z przykładu 2.9
Następnie układamy tabelę przejść stanów wywołanych przez sygnały wejściowe, co przedstawiono na rys. 2.17b.
Tablica z r^s. 2.17b określa dwie funkcje
P11 = p1i+1xi + p1l+1 p2i+1 + p2i+1xi
P2Ł = P11+1P21+1 + p2i+1xl