23--4 Podstwy techniki cyfrowej cz Wykłd dr inż. Rfł Wlkowik Litertur. Podstwy Techniki Cyfrowej, Brry Wilkinson, WKiŁ 2 2. Podstwy Projektowni Ukłdów Cyfrowych, Cezry Zieliński, PWN 22 3. Fundmentls of computer engineering - Logic design nd microprocessors, H.Lm, J. O, J. Wiley nd Sons, 998 4. Język VHDL: projektownie progrmowlnych ukłdów logicznych, Kevin Shkill, WNT 24 5. Ukłdy cyfrowe, Ziór zdń z rozwiąznimi, J.Tyszer, G.Mruglski, Wydwnictwo PP 6. Ukłdy Sclone TTL w systemch cyfrowych, J. Pienkos, J. Turczyński, WkiŁ, 994 7. Cyfrowe ukłdy sclone MOS, P. Gjewski, J.Turczyński, WKiŁ, 998 2
23--4 Zkres przedmiotu Wstęp: przypomnienie lgery Boole, przypomnienie rytmetyk inrn, podstwowe loki funkcjonlne, ukłdy komincyjne i sekwencyjne; podstwowe funkcje logiczne, sposoy przedstwini funkcji logicznych, minimlizcj funkcji logicznych, utomty synchroniczne i synchroniczne TTL, CMOS różne technologie i ich wpływ n włściwości użytkowe ukłdów. Ukłdy pmiętjące: przerzutniki: D, D-ltch, SR, JK-MS; rejestry szeregowe i równoległe, rejestry liczące; pmięci sttyczne i dynmiczne, RAM, ROM, CAM, łączenie pmięci, prmetry, cykle zpisu i odczytu. Liczniki: typy liczników, ich włściwości, liczniki synchroniczne i synchroniczne, inrne, dziesiętne; projektownie liczników. Ukłdy komincyjne: multipleksery i demultipleksery; komprtory, łączenie komprtorów; kodery, dekodery, trnsltory kodów; sumtory: sumtory inrne, dziesiętne, ALU. Ukłdy progrmowlne: PLD, PLA, PAL, FPGA; Współprc ukłdów cyfrowych z otoczeniem; wprowdznie i wyprowdznie dnych, wyświetlnie sttyczne i dynmiczne. Sposoy orgnizcji systemów cyfrowych, itercj w czsie i przestrzeni; Tktownie systemów cyfrowych, częstotliwości mksymlne; Projektownie ukłdów cyfrowych, podejście "ottom-up" i "top-down"; Projektownie ukłdów sterowni 3 Systemy cyfrowe System cyfrowy to ukłd powiąznych ze soą elementów projektowny w celu relizcji tkich zdń jk: przetwrznie informcji (w tym oliczeni) sterownie urządzenimi i innymi systemmi i oiektmi (np. silniki, zwory, piece itp.) Przetwrzne informcje zpisne są z pomocą wrtości z określonego ogrniczonego zioru (np. cyfr w różnych (dl wygody) systemch liczeni). 4 2
23--4 Systemy liczeni * Co już wiemy: [, str 5-22] Pozycyjne systemy liczeni dziesiętny, dwójkowy, ósemkowy, szesnstkowy Konwersje licz między systemmi, konwersje licz ułmkowych Systemy uzupełnieniowe: Uzupełnienie do K (do podstwy K)- Uzupełnienie liczy N zpisnej w systemie o podstwie K do K (podstwy K) definiujemy: K n N Gdzie n jest liczą cyfr liczy N Np. U(345)=655 U2()= Uzupełnienie do K - (do podstwy K - )- Uzupełnienie liczy N zpisnej w systemie o podstwie K do (podstwy) K definiujemy: K n - N 345 U9(344) U(345) 2 U()=U2() * Litertur: Wilkinson, Strony 5-28 5 Reprezentcje licz ze znkiem Znk moduł njstrszy it określ znk liczy, pozostłe ity ez zminy Zstosownie U2 it znku i liczy ujemne w kodzie U2 Zstosownie U it znku i liczy ujemne w kodzie U N ZM U2 U N ZM U2 U -8 - - -7 7-6 6-5 5-4 4-3 3-2 2-6 3
23--4 Reprezentcj uzupełnieniow Do zpisu licz ujemnych użycie kodu U2 Binrn licz dodtni jest zpisywn n wystrczjącej liczie pozycji i uzupełnin zermi n pozycjch rdziej znczących: (3) = () 2 = () 2 Binrn licz ujemn jest zpisywn: w uzupełnieniu do 2 i poprzedzon n pozycji njstrszej i uzupełnion jedynkmi n pozycjch rdziej znczących: (-3) = () 2 = () 2 Notcj uzupełnieniow licz inrnych pozwl n dodwnie licz dodtnich i ujemnych (relizowne stndrdowo jk dl licz inrnych). 7 Dodwnie licz ujemnych wykorzystnie notcji U2-3 (-2) () = -5-3 2 = - -3 5 () = 2 Przeniesienie ignorowne, przeniesieni n njstrszy it i z njstrszego itu s jednkowe. 8 4
23--4 Odejmownie licz dodwnie liczy przeciwnej (3d) (-5d) ------------- (-2d) (5d) (-3d) ---------------- (2d) Binrn licz ujemn licz inrn w uzupełnieniu do 2 = 22 (d) Wyznczenie liczy U2 negcj itów dodnie jedynki = -22 (d) Negcj itów rdziej znczących które są strszych niż njmniej znczący it równy. 9 Odejmownie inrne D dodtni U ujemn D U= DD=D (sprwdzenie przepełnieni) D D2 = D gdy (D>D2) lu U gdy (D<D2) U-D= U U = U (sprwdzenie przepełnieni) 5
23--4 Dodwnie licz przepełnienie (3d) (3d) ------------- (6d) wynik dodtni poprwnie (5d) (5d) ---------------- -(6d) Wynik ujemny - niepoprwny (-3) (-3) ---------------- (-6) wynik ujemny poprwnie (-5) (-5) ----------------- (6) wynik dodtni - niepoprwny Wynik niepoprwny przepełnienie ndmir - gdy przeniesieni n njwyższą pozycję i z njwyższej pozycji są różne. Kody dwójkowo-dziesiętne cyfr dziesiętnych zkodownych z pomocą ciągu 4 itów 6 komincji tych 4 itów jest niewykorzystnych. Kody wgowe pozycj inrn posid przypisną wgę Kody niewgowe pozycj inrn nie posid wgi 2 6
23--4 Kody dwójkowo-dziesiętne wgowe kod nturlny Aiken Wgi 842 2*42 242 742 84-2- cyfr 2 3 4 5 6 7 8 9 3 Kody dwójkowo-dziesiętne niewgowe Kod cyfr 2 3 4 5 6 7 8 9 Z ndmirem 3 Gry Wtts Johnson Wskźników 7 segmentowych 7 2 6 3 5 4 4 7
23--4 Kody detekcyjne kod z 2 z 5 2 z 7 Bin z Bitem przystości Wgi cyfr 2 3 4 5 6 7 8 9 98765432 niewgowy 5432 842 Kody z kontrolą przystości i ze stłą liczą jedynek pozwlją n wykrycie pewnych łędów przy przesyłniu słów kodowych. 5 Liczy dziesiętne kodowne dwójkowo kod BCD 842 Dziesiętny chrkter informcji lecz kodownie dwójkowe cyfr 2345 ()= (BCD) Dodwnie licz w kodzie BCD relizowne tk jk dodwnie licz inrnych, lecz: wystąpienie przeniesieni n kolejną pozycję dziesiętną (kolejne 4 ity) podczs dodwni licz wymg skorygowni (czyli dodni wrtości 6) n tej pozycji, z której przeniesienie wystąpiło wystąpienie wyniku n 4 itch (pozycji dziesiętnej) spoz zkresu (-5) wymg skorygowni wyniku czyli dodni wrtości 6 n tej pozycji dziesiętnej, któr nie jest poprwn, (może wystąpić przeniesienie, które nleży uwzględnić orz propgcj przeniesieni np. dl licz) 3456 6545. 6 8
23--4 Dodwnie w kodzie BCD 89 8 ----- 7 ----------------------- przeniesienie ------------------------ wrtość spoz przedziłu ------------------------ 7 Kody lfnumeryczne Kody służące do kodowni znków w systemch cyfrowych, w urządzenich współprcujących z komputerem, np. drukrki, ekrny lfnumeryczne. Przykłdmi kodów lfnumerycznych są kody: ASCII ISO-7, ISO 8859, Unicode, Windows-25. Kod ASCII ISO-7 7 itowy pełny ziór zwier 28 znków, pierwsze 33 znki służą do sterowni systemu drukowni lu wyświetlni, pozostłe znki to: duze i młe litery, cyfry, znki przestnkowe i inne. 8 9
23--4 Kod ISO-7 9 Alger Boole * Nrzędzie mtemtyki (lger logiki) służąc do opisu i projektowni systemów cyfrowych. Zmienne oolowskie dwuwrtościowe lu. Podstwowe funkcje lgery Bool Iloczyn logiczny I (AND),,,, Sum logiczn LUB (OR),,,,,, Negcj NIE (NOT) lini nd zmienną,, Funkcj oolowsk (logiczn, przełączjc) m zmienne oolowskie i przyjmuje wrtości {,}. Alger Boole jest zgodn z nstępującymi postultmi: * Litertur Wilkinson 35-53 2
23--4 Notcj: Postulty Huntington () Z = {,} ziór wrtości, dowolne zmienne inrne A Domknięcie dziłń: Z AB Z A2 Elementy stłe: Istnieją tkie i : = i = A3 Przemienność: = = A4 Rozdzielność: (c)=c (c)=()(c) A5 Istnienie negcji: dl istnieje : = = 2 Postulty Huntington (2) Zsd dulności: Wyrżenie dulne powstnie poprzez zminę opertorów inrnych i stłych:,,, Jeżeli prwdziwe jest pewne wyrżenie to prwdziwe jest również wyrżenie do niego dulne. 22
23--4 Przeksztłcnie funkcji logicznych Dl minimlizcji postci wyrżeń (funkcji) oolowskich służą tożsmości i twierdzeni lgery oole. Minimlizcj pozwl n uzysknie prostszej, tńszej implementcji funkcji. 23 Twierdzeni lgery Boole Idempotentność (łc. tki sm) =, = Jednoznczność negcji dl kzdego Domincj - dl kżdego = = Podwójn negcj dl istnieje tylko jeden element kzdego Pochłninie - ()= ()= zchodzi = 24 2
23--4 3 Twierdzeni lgery Boole Uproszczenie Minimlizcj - Łączność ()c=(c) () c= ( c) Konsensus (zgod) - ) ( ) ( = = = = ) ( ) ( ) ( ) ( ) ( ) ( ) ( c c c c c c = = 25 Prwo de Morgn......... = = c c c c 26
23--4 Funkcje logiczne i ich wrtości Wrtości Równnie Nzw Skrót rgumentów funkcji funkcji Nzwy Wrtości funkcji ( )( ) () ()( ) () Stł Zero Iloczyn logiczny Zkz przez Identyczn z Zkz przez Identyczn z Sum modulo Sum logiczn Negcj sumy Równowżność Negcj Implikcj Implikcj Implikcj negcj iloczynu Stł AND XOR OR NOR EQU NAND 27 Populrne funkcje logiczne Szczególnie populrne AND, OR, NAND, NOR,XOR,NOT XOR równ dl różnych rgumentów Zleżności dl XOR: = =()( ) ( ) = = = =( )( ) = = Różne interpretcje logiczne wielowejściowych rmek XOR/XNOR. Njczęściej rmk wykryw nieprzystą (XOR) lu przystą liczę jedynek XNOR. 28 4
23--4 System funkcjonlnie pełny Ziór funkcji pozwljący n przedstwienie kżdej innej funkcji logicznej. Przykłdy S.F.P: {NAND}, {OR,AND,NOT}, {NOR} 29 Sposoy przedstwini funkcji logicznych Tlic prwdy j x x x 2*** x n- f 2 3 4 5 * * * 2 n - *** *** *** np. nr we wy 2 3 Zwier wszystkie komincje zero-jedynkowe zmiennych niezleżnych i odpowidjące im wrtości funkcji 3 5
23--4 Sposoy przedstwini funkcji logicznych Tlice Krnugh Zwierją wrtości funkcji umieszczone w polch odpowidjących im komincji wejść. Sąsiednie (w poziomie i pionie tkże cyklicznie) pol tlicy Krnugh odpowidją komincji rgumentów różniącej się jedną wrtością. c Tlic: 2 i 3 zmiennych wejściowych 3 Reprezentcj funkcji logicznych z pomocą tlic Krnugh dc c 32 6
23--4 Sposoy przedstwini funkcji logicznych Dysjunkcyjn (lterntywn) postć knoniczn: Y = f ( x ) U,,..., x = xn j I 2 n j= Gdzie: I j ozncz iloczyn zmiennych niezleżnych przyjmujący wrtość dl j-tej komincji zmiennych (MINTERMy) np. zerow komincj: minterm: x x x 2 x 3 j wrtość funkcji odpowidjąc j-tej komincji zmiennych j 33 Dysjunkcyjn postć knoniczn przykłd iloczyny C in S Cout c in c in 2 c in 3 c in 4 c in 5 c in 6 c in 7 c in S = c in c in c in c in c in c in c in c in S = c in c in c in c in S = (,2,4,7) gdzie liczy oznczją numer kolejny iloczynu (minterm) dl którego wrtość funkcji = 34 7
23--4 Sposoy przedstwini funkcji logicznych Koniunkcyjn (iloczynow) postć knoniczn: Y = f n 2 (,,..., ) = ( ) x x x n j j= Gdzie: S j ozncz sumę zmiennych niezleżnych przyjmującą wrtość dl j-tej komincji zmiennych (MAXTERM), np. zerow komincj: mxterm: x x x 2 x 3 j ozncz wrtość funkcji odpowidjącej j-tej komincji zmiennych S j 35 Konjunkcyjn postć knoniczn - przykłd sumy C in S Cout c in c in 2 c in 3 c in 4 c in 5 c in 6 c in 7 c in S = ( c in ) (c in )( c in )( c in ) ( c in )( c in )( c in )( c in ) S = (c in ) ( c in )( c in )( c in ) S= (,3,5,6) gdzie liczy oznczją numer kolejny sumy (mxterm) dl której wrtość funkcji = 36 8
23--4 Minimlizcj wyrżeń logicznych Postć knoniczn nie jest njprostsz Kryterium kosztu: Redukcj liczy skłdników funkcji (licz rmek) Redukcj liczy literłów (licz wejść rmek) Przeksztłcnie postci knonicznej do postci równowżnej tńszej wg przyjętej funkcji kosztu Przykłd: f(,,c,d)= (5,7,3,5)= d c d cdc dc=c Minimlizcj liczy skłdników z 4 do i liczy literłów z 4 do 2 Zpis funkcji f()= (5,7,3,5)d(,3,4) ozncz rk konkretnego wymgni n wrtość funkcji (dowoln wrtość lu ) dl komincji wejść,3 i 4. 37 Złożeni: Sitk Krnugh wg zmiennych ustlon np. : od njniższej,,c,d Dl n zmiennych: Prostokątn tlic zwierjąc 2 n pól, kżde pole reprezentuje jeden minterm, mintermy odpowidjące sąsiednim polom różnią się wrtością tylko jednej zmiennej. c 3 2 dc 3 2 2 3 4 5 7 6 4 5 7 6 2 3 5 4 8 9 38 9
23--4 Twierdzenie o minimlizcji reguł sklejni =( )= f(,)= )= (,3)= = c F(,,c)= )= (,3,5,7)=c c c c= 39 Metod tlic Krnugh minimlizcji funkcji logicznej TABLICE. Przygotownie tlic dl dnej liczy zmiennych i wpisnie wrtości w polch. W polch w krtórych wrtość jest nieokreslon nleży wpisć symol nieokresloności np. SKLEJENIA. Nrysowć owiednie łączące pol tworzące możliwie njwiększe oszry. Owiednie łączą sąsiednie pol z jedynkmi (dl postci sumcyjnej funkcji) [pol z zermi (dl postci iloczynowej funkcji)]. Sąsiedztwo tkże cykliczne. Owiednie pokrywją grupy pól tworzące prostokąt. Funkcj. Zpisnie postci minimlnej funkcji w oprciu o wykonne sklejeni (owiednie), kżdy minterm (mxterm) musi yć pokryty przez grupę. Uwg: Pol ze znkmi nieokreśloności możn łączyć z dowolnymi innymi polmi (jedynek lu zer w zleżności od postci funkcji) dl uzyskni mksymlnych sklejeń. 4 2
23--4 Minimlizcj sklejeni dl jedynek i zer, funkcj dopełnieniow dc 3 2 4 5 7 6 2 3 5 4 8 9 dc Funkcj f(,,c,d)= (,,2,3,8,9,)d(5,3) f=c d c grup poziom, grup nrożn, grup pionow f =cd dl jedynek f=c (d ) f =(dc)(c)( ) dl zer 4 Terminologi minimlizcji Impliknt: kżdy minterm lu grup mintermów które możn połączyć. Impliknt prosty: impliknt, któego nie możn rozszerzyć przez sklejeni w tlicy Krnugh. Impliknt istotny: impliknt prosty zwierjący minterm nie występujący w żdnym implikncie prostym. 42 2
23--4 Metod minimlizcji dwupoziomowej. Wygeneruj wszystkie impliknty proste 2. Utwórz pokrycie funkcji (mintermów) z pomocą minimlnej liczy implikntów. Uwg: Impliknty istotne są koniecznymi elementmi pokryci funkcji 43 Przykłd dc Impliknty proste: c, dc, d, d Impliknty istotne: c, d,d Impliknty istotne wystrczą do minimlnego pokryci funkcji F(d,c,,)= cd d F(d,c,,)= (dc)(d)( ) 44 22
23--4 Przykłd Relizcj funkcji n rmkch NAND ądź NOR F(d,c,,)= (cd d) =((c) (d ) (d) ) F(d,c,,)= (dc)(d)( ) = ((dc) (d) ( ) ) 45 Przykłd 2 metod Petrick Wyznczenie minimlnego zioru implikntów prostych metod Petrick Przykłd: Jeden impliknt istotny 5 implikntów prostych możn wykorzystć do pokryci 5 mintermów Pokrycie wystąpi, gdy zstosujemy impliknty dl których funkcję Petrick przyjmuje wrtość jeden P x = gdy impliknt x jest używny, gdy imliknt x nie jest używny FP=(P P )(P P 2 )(P 2 P 3 )(P 3 P 4 )(P 4 P 5 ) = P P 3 P 5 P P 2 P 4 46 23
23--4 Metod Quine -McCluskey genercj implikntów prostych wygodn dl funkcji wielu zmiennych Funkcj f(,,c,d)= (,,2,3,8,9,)d(5,3) 2 8 3 5 9 3 2 3, -,2 -,8 -,3 -,5 -,9-2,3-2, - 8,9-8, - 5,3-9,3 -,,2,3,2,8, --,,8,9 --,5,9,3 Impliknty proste d c -- c -- c -- 47 Metod Quine -McCluskey tlic pokryci mintermów 2 3 8 9,,2,3,2,8, --,,8,9 --,5,9,3 W kolumnch tlicy uwzględnimy tylko mintermy z określonymi dl funkcji wrtościmi Impliknty istotne Mintermy pokryte przez impliknty istotne Możliwe wrinty funkcji o minimlnej liczie implikntów: F=d c c c F=d c c 48 24
23--4 Metod Quine -McCluskey. Utwórz grupy mintermów odpowidjące liczie jedynek w ich reprezentcji inrnych. Utworzenie początkowych implikntów. 2. Utwórz wszystkie impliknty przez połączenie implikntów jednej grupy z implikntmi kolejnej grupy jest to możliwe jeżeli różnią się wrtością jednej zmiennej, zzncz wykorzystne do łczeni impliknty. 3. Powtrzj krok 2 zując n implikntch uzysknych w poprzedniej itercji 2 kroku. 4. Wyierz minimlny ziór implikntów prostych. Niewykorzystne w połączenich impliknty tworzą ziór implikntów prostych. 49 dc Minimlizcj funkcji wielowyjściowych dc dc Wyznczenie implikntów prostych dl iloczynu funkcji - wykorzystnie iloczynu zioru mintermów funkcji. Znjdownie pokryci minimlną liczą implikntów wyznczonych dl funkcji f, f2 orz ich iloczynów - f*f2 5 25
23--4 Komputerowo wspomgnie minimlizcji funkcji logicznych Znlezienie pokryci minimlnego jest prolemem NP-trudnym. Ze względu n trudność prolemu dl dużych instncji stosowne są metody przyliżone. rk genercji wszystkich implikntów Zpewnienie pokryci funkcji przez wyrny ziór implikntów 5 26