Pobierz spis treści
Transkrypt
Pobierz spis treści
SPIS TREŚCI WYKAZ SKRÓTÓW ............................................................................................ 9 PRZEDMOWA..................................................................................................... 11 1. WPROWADZENIE ........................................................................................ 14 1.1. Uogólniona struktura systemu cyfrowego ................................................ 14 1.2. Główne etapy projektowania systemów cyfrowych ................................. 18 1.2.1. 1.2.2. 1.2.3. 1.2.4. 1.2.5. 1.2.6. ZałoŜenia ogólne........................................................................................ 18 Projektowanie koncepcyjne ....................................................................... 20 Projektowanie strukturalne ........................................................................ 20 Projektowanie funkcjonalne....................................................................... 21 Synteza logiczna ........................................................................................ 21 Projektowanie konstrukcyjne ..................................................................... 22 1.3. Programowalne układy logiczne............................................................... 23 1.3.1. 1.3.2. 1.3.3. 1.3.4. Klasyfikacja programowalnych układów logicznych ................................ 23 „Klasyczne” układy PAL ........................................................................... 28 Uniwersalne układy PAL ........................................................................... 29 ZłoŜone układy PLD .................................................................................. 31 1.4. Charakterystyka procesu projektowania systemów cyfrowych na bazie programowalnych układów logicznych .................................................... 37 1.5. Wnioski ..................................................................................................... 40 1.6. Literatura................................................................................................... 42 2. METODY PROJEKTOWANIA UKŁADÓW KOMBINACYJNYCH..... 43 2.1. Analiza tradycyjnych metod syntezy układów kombinacyjnych.............. 43 2.1.1. Synteza dwupoziomowa ............................................................................ 43 2.1.1.1. Wiadomości ogólne ....................................................................... 43 2.1.1.2. Funkcje wielowartościowe ............................................................ 44 2.1.1.3. Minimalizacja symboliczna ........................................................... 44 2.1.1.4. Programy realizujące metody syntezy dwupoziomowej ................ 45 2.1.2. Synteza wielopoziomowa .......................................................................... 45 2.1.2.1. ZałoŜenia ogólne ........................................................................... 45 2.1.2.2. Metody syntezy wielopoziomowej.................................................. 46 2.1.2.3. Programy realizujące metody syntezy wielopoziomowej .............. 49 2.1.3. Metody syntezy układów kombinacyjnych na układach PLD ................... 49 2.1.3.1. Synteza jednopoziomowych układów kombinacyjnych.................. 49 2.1.3.2. Synteza dwupoziomowych układów kombinacyjnych .................... 50 2.1.3.3. Synteza wielopoziomowych układów kombinacyjnych .................. 51 2.1.4. Charakterystyka przedstawionych metod syntezy układów kombinacyjnych......................................................................................... 52 4 Synteza logiczna układów cyfrowych w strukturach programowalnych 2.2. Właściwości struktur PLD przy syntezie układów kombinacyjnych........ 55 2.2.1. Właściwości „klasycznych” układów PAL................................................ 55 2.2.2. Właściwości uniwersalnych układów PAL................................................ 56 2.2.3. Właściwości układów CPLD ..................................................................... 57 2.3. Synteza jednopoziomowych układów kombinacyjnych (metoda M1) ..... 59 2.4. Synteza jednopoziomowych układów kombinacyjnych z wykorzystaniem montaŜowego łączenia wyjść układu PLD (metoda M2) ......................... 62 2.5. Synteza dwupoziomowych układów kombinacyjnych (metody M3 i M4)..................................................................................... 67 2.6. Synteza wielopoziomowych układów kombinacyjnych z wykorzystaniem pętli sprzęŜeń zwrotnych układu programowalnego (metoda M5)........... 76 2.7. Synteza wielopoziomowych układów kombinacyjnych w przypadku naruszenia ograniczenia na maksymalną rangę koniunkcji (metoda M6) 89 2.8. Weryfikacja rezultatów syntezy układów kombinacyjnych ..................... 98 2.9. Wybór metody syntezy układów kombinacyjnych ................................. 100 2.10. Komputerowa realizacja i rezultaty badań eksperymentalnych metod syntezy układów kombinacyjnych na układach PLD ............................. 104 2.10.1.Komputerowa realizacja przedstawionych metod syntezy układów kombinacyjnych....................................................................................... 104 2.10.2.Warunki przeprowadzania badań eksperymentalnych............................. 105 2.10.3.Rezultaty badań eksperymentalnych metody syntezy jednopoziomowych układów kombinacyjnych z wykorzystaniem montaŜowego łączenia wyjść (metoda M2) .................................................................................. 108 2.10.4.Rezultaty badań eksperymentalnych metody syntezy dwupoziomowych układów kombinacyjnych (metoda M3) .................................................. 110 2.10.5.Rezultaty badań eksperymentalnych metody syntezy wielopoziomowych układów kombinacyjnych z wykorzystaniem sprzęŜeń zwrotnych układu PLD (metoda M5) .................................................................................... 111 2.11. Wnioski ................................................................................................... 114 2.12. Literatura................................................................................................. 116 3. MODELE AUTOMATÓW SKOŃCZONYCH I ICH REALIZACJA W UKŁADACH PROGRAMOWALNYCH .............................................. 125 3.1. 3.2. 3.3. 3.4. 3.5. 3.6. Wiadomości ogólne ................................................................................ 125 Klasy automatów skończonych............................................................... 126 Wspólne modele automatów skończonych ............................................. 130 Modele automatów skończonych z rejestrami na wejściach i wyjściach 132 ZłoŜoność realizacji modeli automatów skończonych............................ 141 Analiza czasowa modeli automatów skończonych ................................. 149 3.6.1. 3.6.2. 3.6.3. 3.6.4. 3.6.5. Główne parametry czasowe układów PLD .............................................. 149 Początek funkcjonowania automatu......................................................... 150 Analiza wykresów czasowych ................................................................. 151 Modele automatów z zatrzaskami na wejściach....................................... 155 Wykorzystanie modeli automatów skończonych w systemach Spis treści 5 cyfrowych ................................................................................................ 156 3.6.5.1. Wykorzystanie modeli automatów skończonych w szeregowych systemach cyfrowych................................................................... 159 3.6.5.2. Wykorzystanie modeli automatów skończonych w potokowych systemach cyfrowych................................................................... 160 3.7. Wybór odpowiedniego modelu automatu skończonego do realizacji..... 162 3.8. Wnioski ................................................................................................... 166 3.9. Literatura................................................................................................. 168 4. METODY PROJEKTOWANIA AUTOMATÓW SKOŃCZONYCH .... 169 4.1. Analiza tradycyjnych metod syntezy układów sekwencyjnych.............. 169 4.1.1. Klasyczne metody syntezy automatów skończonych .............................. 170 4.1.1.1. Minimalizacja stanów wewnętrznych automatów skończonych .. 170 4.1.1.2. Kodowanie stanów wewnętrznych automatu skończonego.......... 171 4.1.1.3. Dekompozycja automatów skończonych ..................................... 172 4.1.2. Minimalizacja symboliczna (synteza dwupoziomowa)............................ 173 4.1.3. Synteza wielopoziomowa ........................................................................ 175 4.1.4. Inne metody syntezy automatów skończonych ........................................ 177 4.1.5. Metody syntezy automatów skończonych zorientowane na struktury programowalne ........................................................................................ 178 4.2. Charakterystyka przedstawionych metod syntezy automatów skończonych............................................................................................ 179 4.3. Metoda syntezy szybkich automatów skończonych klas A i B (metoda A1) ............................................................................................ 184 4.3.1. Metoda syntezy szybkich automatów skończonych klas A i B na uniwersalnych układach PAL .................................................................. 185 4.3.1.1. Ogólny algorytm syntezy ............................................................. 185 4.3.1.2. Kodowanie stanów wewnętrznych............................................... 187 4.3.1.3. Rozszczepienie stanów wewnętrznych przy syntezie szybkich automatów klas A i B................................................................... 191 4.3.2. Metoda syntezy szybkich automatów skończonych na CPLD................. 192 4.3.2.1. ZałoŜenia ogólne ......................................................................... 192 4.3.2.2. Algorytm syntezy ......................................................................... 194 4.3.2.3. Kodowanie stanów wewnętrznych............................................... 194 4.4. Metoda syntezy złoŜonych automatów skończonych klas A i B (metoda A2) ............................................................................................ 196 4.4.1. Cechy architektury układów PLD wykorzystywane przy realizacji złoŜonych automatów skończonych......................................................... 196 4.4.2. Istota metody............................................................................................ 197 4.4.3. Rozszczepienie stanów wewnętrznych .................................................... 199 4.4.4. Kodowanie stanów wewnętrznych........................................................... 200 4.5. Wykorzystanie wyjściowych makrokomórek układu PLD do syntezy automatów skończonych (metody A3 i A4)............................................ 205 4.5.1. Synteza automatów skończonych klasy C ............................................... 206 4.5.1.1. ZałoŜenia ogólne ......................................................................... 206 6 Synteza logiczna układów cyfrowych w strukturach programowalnych 4.5.1.2. Ogólny algorytm syntezy ............................................................. 206 4.5.1.3. Przekształcenie automatu Mealy’ego w automat typu Moore’a.. 208 4.5.1.4. Kodowanie stanów wewnętrznych automatu skończonego klasy C......................................................................................... 209 4.5.2. Synteza automatów skończonych klasy D ............................................... 213 4.5.2.1. ZałoŜenia ogólne ......................................................................... 213 4.5.2.2. Ogólny algorytm syntezy automatów skończonych klasy D ........ 215 4.5.2.3. Przekształcenie automatu skończonego klasy A w automat klasy D......................................................................................... 216 4.5.2.4. Kodowanie stanów wewnętrznych automatu klasy D.................. 216 4.5.3. Ortogonalizacja wierszy macierzy kodowania stanów wewnętrznych automatów skończonych klas C i D ......................................................... 220 4.6. Wykorzystanie wejściowych makrokomórek układu PLD do syntezy automatów skończonych (metody A5 i A6)............................................ 223 4.6.1. ZałoŜenia ogólne metod syntezy automatów skończonych klas E i F ..... 223 4.6.2. Synteza automatów skończonych klasy E................................................ 224 4.6.3. Synteza automatów skończonych klasy F................................................ 233 4.7. Metody syntezy wspólnych modeli automatów skończonych (metody A7, A8, A9 i A10) .................................................................... 233 4.7.1. 4.7.2. 4.7.3. 4.7.4. ZałoŜenia ogólne...................................................................................... 233 Metoda kodowania stanów....................................................................... 235 Algorytm syntezy..................................................................................... 237 Synteza innych wspólnych modeli automatów skończonych .................. 244 4.8. Weryfikacja rezultatów syntezy automatów skończonych ..................... 245 4.8.1. Budowa ciągów wzorcowych wektorów testowych ................................ 246 4.8.2. Optymalizacja algorytmu budowy wzorcowych ciągów testowych ........ 249 4.8.3. Sprawdzenie funkcjonowania syntezowanego automatu skończonego ... 250 4.9. Wybór metody syntezy automatu skończonego...................................... 254 4.10. Badania eksperymentalne metod syntezy automatów skończonych....... 258 4.10.1.Rezultaty badań eksperymentalnych metody syntezy szybkich automatów skończonych klas A i B ......................................................... 259 4.10.2.Rezultaty badań eksperymentalnych metody syntezy złoŜonych automatów skończonych klas A i B ......................................................... 261 4.10.3.Rezultaty badań eksperymentalnych metod syntezy automatów skończonych klas C i D............................................................................ 262 4.10.4.Rezultaty badań eksperymentalnych metod syntezy automatów skończonych klas E i F............................................................................. 265 4.10.5.Rezultaty badań eksperymentalnych metody syntezy wspólnego modelu automatów skończonych klas ADE............................................. 267 4.11. Wnioski ................................................................................................... 269 4.12. Literatura................................................................................................. 271 5. PROJEKTOWANIE UKŁADÓW STEROWANIA LOGICZNEGO NA UKŁADACH PLD.................................................................................. 279 5.1. Informacje ogólne ................................................................................... 279 5.1.1. Zasady sterowania mikroprogramowanego ............................................. 279 Spis treści 5.1.2. 5.1.3. 5.1.4. 5.1.5. 7 5.1.1.1. ZałoŜenia ogólne ......................................................................... 279 5.1.1.2. Układy sterowania i układy operacyjne ...................................... 280 Sieci działań ............................................................................................. 283 Synteza automatów mikroprogramowanych z wykorzystaniem sieci działań...................................................................................................... 284 Analiza metod syntezy automatów mikroprogramowanych na układach PLD.......................................................................................................... 290 5.1.4.1. Synteza automatów mikroprogramowanych na jednym układzie PLD ............................................................................................. 290 5.1.4.2. Synteza jednopoziomowych układów automatów mikroprogramowanych ............................................................... 290 5.1.4.3. Rozszerzenie jednopoziomowych układów AM ze względu na wejścia i wyjścia.......................................................................... 293 5.1.4.4. Dekompozycja automatów mikroprogramowanych (synteza wielopoziomowa)......................................................................... 297 Charakterystyka przedstawionych metod syntezy ................................... 298 5.2. Synteza automatów mikroprogramowanych klas A – F ......................... 300 5.2.1. Synteza automatów mikroprogramowanych klas A i B za pomocą specjalnego podziału sieci działań ........................................................... 300 5.2.2. Synteza automatu mikroprogramowanego Moore’a klasy C ................... 303 5.2.3. Synteza automatów mikroprogramowanych klas D – F .......................... 308 5.3. Synteza jednopoziomowych układów automatów mikroprogramowanych z rozproszoną pamięcią........................................................................... 309 5.3.1. Struktura jednopoziomowego układu AM z rozproszoną pamięcią......... 309 5.3.2. Synteza jednopoziomowego układu AM Mealy’ego z rozproszoną pamięcią ................................................................................................... 313 5.3.3. Synteza jednopoziomowego układu AM Moore’a z rozproszoną pamięcią ................................................................................................... 322 5.4. Synteza układów hierarchicznych automatów mikroprogramowanych.. 330 5.4.1. Synteza układów hierarchicznych szeregowych AM............................... 330 5.4.1.1. Struktura układu hierarchicznego AM ........................................ 331 5.4.1.2. Algorytm syntezy ......................................................................... 334 5.4.1.3. Podział sieci działań na fragmenty ............................................. 335 5.4.2. Realizacja sieci działań z powtarzającymi się fragmentami (synteza dwupoziomowych układów AM)............................................................. 342 5.4.3. Synteza układów hierarchicznych równoległych AM.............................. 347 5.5. Synteza specjalnych struktur układów sterowania logicznego ............... 353 5.5.1. Synteza aperiodycznych układów CLD o róŜnym czasie wykonywania mikrorozkazów ........................................................................................ 353 5.5.1.1. ZałoŜenia ogólne ......................................................................... 353 5.5.1.2. Struktura układu sterowania logicznego ..................................... 355 5.5.1.3. Określenie długości taktu pierwotnego sygnału synchronizacji i czasu wykonywania kaŜdego mikrorozkazu .............................. 355 5.5.1.4. Synteza generatora sygnałów synchronizacji.............................. 358 5.5.1.5. Synteza automatu mikroprogramowanego .................................. 359 8 Synteza logiczna układów cyfrowych w strukturach programowalnych 5.5.2. Synteza aperiodycznych układów CLD z sygnałami potencjałowymi (o róŜnym czasie wykonywania mikrooperacji) ...................................... 365 5.6. 5.7. 5.8. 5.9. Wybór metod syntezy układów sterowania logicznego.......................... 371 Weryfikacja rezultatów syntezy automatów mikroprogramowanych..... 372 Wnioski ................................................................................................... 374 Literatura................................................................................................. 378 6. PAKIET PROGRAMÓW śUBR DO WSPOMAGANIA PROJEKTOWANIA UKŁADÓW CYFROWYCH NA BAZIE LOGIKI PROGRAMOWALNEJ................................................................................ 381 6.1. Informacje ogólne ................................................................................... 381 6.2. Zastosowanie pakietu śUBR do wspomagania procesu projektowania systemów cyfrowych .............................................................................. 381 6.2.1. Opis funkcjonowania urządzenia w postaci pliku tekstowego................. 382 6.2.1.1. Opis układu kombinacyjnego ...................................................... 383 6.2.1.2. Opis automatu skończonego........................................................ 385 6.2.2. Określenie pliku z opisem układu wejściowego ...................................... 386 6.2.3. Ustawienie parametrów układu PLD ....................................................... 386 6.2.4. Ustawienie parametrów syntezy .............................................................. 388 6.2.5. Wybór i wykonanie metody syntezy........................................................ 391 6.2.6. Analiza rezultatów syntezy ...................................................................... 391 6.2.6.1. Plik wejściowy systemu MAX+Plus II......................................... 391 6.2.6.2. Plik wejściowy systemu CUPL ................................................... 393 6.2.6.3. Plik wejściowy w języku ABEL-HDL........................................... 394 6.2.6.4. Plik wejściowy systemu Mach XL................................................ 395 6.2.6.5. Plik w języku VHDL ................................................................... 396 6.2.6.6. Pliki raportów ............................................................................. 397 6.3. Wnioski ................................................................................................... 398 6.4. Literatura................................................................................................. 399 ZAKOŃCZENIE ................................................................................................ 400