Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Synteza logiczna w projektowaniu układów cyfrowych

Podobne prezentacje


Prezentacja na temat: "Synteza logiczna w projektowaniu układów cyfrowych"— Zapis prezentacji:

1 Synteza logiczna w projektowaniu układów cyfrowych
(Wpływ syntezy logicznej na jakość realizacji układów cyfrowych) System cyfrowy XZ D Z UW – z bloków funkcjonalnych US UW US – automat lub układ mikroprogramowany XP ZY F

2 Przykład syntezy strukturalnej
Konwerter kodu binarnego na kod BCD: W kodzie BCD (Binary Coded Decimal) każda cyfra liczby zapisanej w kodzie dziesiętnym jest przedstawiana czterobitową liczbą binarną Np. liczba 489 zostanie zapisana jako wektor binarny z wykorzystaniem 12 bitów (3  4 bity) BCD

3 Celem jest pokazanie różnych metod projektowania
Konwerter Bin2BCD 1 27BIN 27BCD 1 0  liczby  99 BIN/BCD Celem jest pokazanie różnych metod projektowania i wykazanie, że najlepszą realizację uzyskamy stosując zaawansowane procedury syntezy logicznej

4 Metoda +3 27 = 1 1 1 1 LDA LDB LB LDB  5 NIE TAK  8 LDB := LDB
27 = 1 1 1 1 LDA LDB LB LDB  5 NIE TAK  8 LDB := LDB LDB := LDB+3

5 LDA LDB LB LDB < 5 1 1 LDB < 5 2 1 LDB < 5 3 1 LDB < 5 4 1 LDB < 5 1 5 1 1 1 LDB < 5 1 1 6 1 1 LDB  5 1 1 1 1 7 + 1 1 1 1 LDB < 5 1 1 1 8 1 1 1 1 1 LDBCD = 1 1 1 1 = 27 2 7

6 Algorytm konwersji z kodu BIN na BCD
START LOAD (LB) LDA := 0 LDB := 0 LK := 8 Liczba konwertowana zapisana jest w postaci binarnej LDB  5 TAK Przekształcenie polega na wykonaniu określonej liczby prostych operacji LDB := LDB + 3 NIE LDA  5 TAK Wykorzystuje proste operacje na liczbach binarnych: przesunięcie w lewo, zwiększenie o 3, porównanie ze stałą. NIE LDA := LDA + 3 LDA := SHL(LDA,LDB3) LDB := SHL(LDB,LB7) LB := SHL(LB) LK := DEC(LK) NIE LK = 0 TAK LD := LDA  LDB KONIEC

7 Algorytm konwersji Rejestry LB, LDA, LDB z operacjami:
KONIEC LOAD (LB) LDA := 0 LDB := 0 LK := 8 LDB  5 LDB := LDB + 3 LDA := LDA + 3 LDA  5 START LDA := SHL(LDA,LDB7) LDB := SHL(LDB,LB7) LB := SHL(LB) LK := DEC(LK) LD := LDA  LDB LK = 0 NIE TAK Rejestry LB, LDA, LDB z operacjami: zeruj wpisz, przesuń. Licznik LK z operacjami: ustaw, zmniejsz o 1. Sumator Komparator

8 Opis strukturalny UW US LK LB MUX  K R4 R3 R2 R1 A B LB Y LK = 0 10 S
8 LK 4 „8” LOAD1 DEC LK = 0 4 LB R3 R2 R1 S3 S2 S1 A B MUX 1 UW LB Y LK = 0 10 US S K  5 „5” „3” 4 K 4 A B K  5 R4 LOAD2 8 Y = LD

9 Stosując rutynowe metody…
uzyskaną strukturę zapisujemy w języku opisu sprzętu i kompilujemy w systemie Quartus SPECYFIKACJA FUNKCJONALNA (HDL) SYNTEZA OPIS RTL TRANSLACJE SPECYFIKACJI SIEĆ LOGICZNA OPTYMALIZACJA ODWZOROWANIE TECHNOLOGICZNE 54 LEs ─ 33 mln/sek 9

10 Konwerter Bin2BCD Tradycyjną metodę syntezy strukturalnej
1 Tradycyjną metodę syntezy strukturalnej skonfrontujemy z nowoczesnymi metodami syntezy logicznej 10

11 Konwerter Bin2BCD na poziomie logicznym
Wejścia Wyjścia * * * * BIN/BCD 11

12 Komputerowe projektowanie…
SPECYFIKACJA FUNKCJONALNA (HDL) SYNTEZA OPIS RTL TRANSLACJE SPECYFIKACJI SIEĆ LOGICZNA OPTYMALIZACJA ODWZOROWANIE TECHNOLOGICZNE 24 LEs ─ 313 mln/sek 12

13 Odwzorowanie technologiczne Specjalistyczne oprogramowanie
Mając świadomość, że metody syntezy logicznej są niedoskonałe System komercyjny Specyfikacja HDL Synteza funkcjonalna Synteza logiczna Odwzorowanie technologiczne Specjalistyczne oprogramowanie akademickie nowocześnie wykształcony inżynier 13

14 Specjalizowana procedura dekompozycji
TITLE " Decomposed project: bin2bcd "; % Translated from DEMAIN format % % Warsaw University of Technology % % Institute of Telecommunications % SUBDESIGN A ( in_1, in_2, in_3, in_4 :INPUT; in_5, in_6, in_7 :INPUT; out_1, out_2, out_3, out_4 :OUTPUT; out_5, out_6, out_7, out_8 :OUTPUT; ) VARIABLE g1_1, g1_2, g1_3, g3_1 :LCELL; g2_1, g2_ :LCELL; BEGIN ---- Level TABLE (in_1, in_2, in_3, in_4) => (g1_1); B"1000" => B"0"; B"0011" => B"0"; B"0001" => B"1"; B"1011" => B"1"; END TABLE; (in_6, g1_1, g2_1, g2_2) => (out_7); B"0X10" => B"0"; END; # Konwerter bin2bcd .type fr .i 7 .o 8 .p 100 .e Procedura dekompozycji  13 komórek (!!!) 352 mln/sek 14

15 Realizacja programowa
KONIEC LOAD (LB) LDA := 0 LDB := 0 LK := 8 LDB  5 LDB := LDB + 3 LDA := LDA + 3 LDA  5 START LDA := SHL(LDA,LDB3) LDB := SHL(LDB,LB7) LB := SHL(LB) LK := DEC(LK) LD := LDA  LDB NIE TAK LK = 0 Procesor AMD Athlon™ 64X2 Dual Core GHz – 9,17 mln/sek 15

16 Porównanie realizacji BIN2BCD
Liczba elementów logicznych ─ liczba słów Synteza strukturalna – 54 LEs ─ 33 mln/sek Synteza logiczna: system komercyjny Quartus – 24 LEs ─ 313 mln/sek system specjalizowany – 13 LEs ─ 352 mln/sek Procesor AMD Athlon™ 64X2 Dual Core GHz – 9,17 mln/sek 16

17 Więcej na ten temat w książce:
17

18 zastępuje się układem kombinacyjnym lub pamięcią ROM
Filtr f5 w technice DA .type fr .i 11 .o 11 .p 2048 . .type fr .i 7 .o 11 .p 128 . Układ mnożenia zastępuje się układem kombinacyjnym lub pamięcią ROM R e j s t r y ROM + R .type fr .i 11 .o 11 .p 2048 .type fr .i 7 .o 11 .p 128 18

19 Synteza programem Vivado 2015.4.2 Dla układu Virtex-7
Bez redukcji Synteza programem Vivado Dla układu Virtex-7 19

20 Dla układu Virtex-7 (xc7vx330tffg1157-2)
Po redukcji Synteza programem Vivado Dla układu Virtex-7 (xc7vx330tffg1157-2) 20

21 Realizacje układu AR filtru f5
Bez redukcji argumentów Z redukcją argumentów System and chip LE pcs Vivado Virtex-7 (xc7vx330tffg1157-2) LUT6 LUT5 LUT4 LUT3 LUT2 MUXF7 MUXF8 330 86 49 34 32 5 1 9 Altera Quartus II Stratix V (5SEE9H40I2) ALUT7 ALUT6 ALUT5 ALUT4 ALUT3 62 294 2675 1022 1677 140 160 65 61 PrecisionRTL Synthesis VIRTEX-7 (7VX330TFFG1157) LUT 1915 (total) Nie zapominajmy o syntezie logicznej w projektowaniu układów cyfrowych 21


Pobierz ppt "Synteza logiczna w projektowaniu układów cyfrowych"

Podobne prezentacje


Reklamy Google