Komponente digitalnih sistema Kombinacione komponente Sekvencijalne komponente Konačni automati Memorijske komponente Staza podataka
Standardne digitalne komponente (moduli) Obavljaju funkcije za koje je uočeno da su korisne za veliki broj različitih primena Dostupne su u vidu integrisanih kola ili bibliotečkih komponenti i kao takve spremne za direktnu ugradnju u sistem koji se projektuje Kombinacione i sekvencijalne komponente
Standardne digitalne komponente (moduli) Kombinacione komponente izlazne vrednosti zavise isključivo od tekućih (trenutnih) ulaznih vrednosti. Nakon svake promene ulaznih vrednosti, na izlazu se javljaju nove izlazne vrednosti sa kašnjenjem Δt koje je neophodno da bi se izračunao novi rezultat. Ne poseduju osobinu pamćenja Aritmetičke i logičke operacije, kodiranje i dekodiranje podataka, reorganizaciju podataka...
Standardne digitalne komponente (moduli) Sekvencijalne komponente Sadrže memorijske elemente, kao što su leč kola i flip-flopovi. Izlazne vrednosti zavise ne samo od tekućih već i od prethodnih ulaznih vrednosti Registarske komponente prihvatni, pomerački i brojački registri memorijske strukture (RAM, FIFO, stek) staze podataka i upravljačke jednice
Kombinacione komponente Sabirač sa rednim prenosom Sabirač/oduzimač Logička jedinica. ALU Dekoder Multiplekser Demultiplekser Koder Komparator Pomerač ROM PLA
Sabirač sa rednim prenosom x i y i c i+ c i FA s i
Sabirač/oduzimač Primer više-funkcionalnog kola
Logička jedinica Primer logičke operacije OR Logičke operacije se obavljaju po bitovima -nema prenosa između bitskih pozicija
Logička jedinica Postoji 6 različitih logičkih operacija: x i y i f f f 2 f 3 f 4 f 5 f 6 f 7 f 8 f 9 f f f 2 f 3 f 4 f 5 m S m S m 2 S 2 m 3 S 3 x i y i S S S 2 S 3 LU s i
Logička jedinica
Aritmetičko-logička jedinica (ALU) Više-funkcijsko, kombinaciono kolo koje može da obavi bilo koju od više različitih aritmetičkih i logičkih operacija nad parom b-bitnih operanada Broj i složenost operacija podržanih od strane ALU zavise od konkretne realizacije Tipične aritmetičke operacije: sabiranje, oduzimanje, inkrementriranje i dekrementiranje (zasnovane na sabiranju) Tipične logičke operacije: OR, AND, XOR, NOT
Aritmetičko-logička jedinica (ALU) (jedan način realizacije) LE - logički ekspander AE - aritmetički ekspander Logičke operacije: Obavljaju se u LE pri Y = a 3 b 3 a 2 b 2 a b a b Aritemtičke operacije: X=A, B se modifikuje u AE i sabira sa A. LE AE x 3 y 3 LE AE x 2 y 2 LE AE x y LE AE x y c 4 FA c 3 FA c 2 FA c FA c f 3 f 2 f f
Aritmetičko-logička jedinica (primer 4-bitne ALU) Aritemetičke operacije a 3 b 3 a 2 b 2 a b a b LE AE LE AE LE AE LE AE x 3 y 3 x 2 y 2 x y x y c 4 FA c 3 FA c 2 FA c FA c f 3 f 2 f f
Aritmetičko-logička jedinica (primer 4-bitne ALU) Aritmetički ekspander
Aritmetičko-logička jedinica (primer 4-bitne ALU) Logičke operacije
Aritmetičko-logička jedinica (primer 4-bitne ALU)
Dekoder Dekoder n-u-2 n Svaka n-bitna ulazna kombinacija aktivira tačno jedan od 2 n izlaz Dekoder -u-2 Dekoder 2-u-4
Dekoder Sa invertovanim izlazima Realizacija prekidačkih funkcija pomoću dekodera ILI
Koincidentno dekodiranje -realizacija velikih dek. mreža - Dekoder 8-u-6 pomoću dekodera 4-u-6 Bira izlaz iz grupe Bira od 6 grupa od po 6 izlaza
Koincidentno dekodiranje
Hijerarhijsko dekodiranje Dekoder 4-u-6 pomoću dekodera 2-u-4
Hijerarhijsko dekodiranje Dekoder 3-u-8 pomoću dekodera 2-u
Multiplekser Digitalni preklopnik Vrednost selekcionih ulaza određuje (tj. bira) jedan od ulaza čija se vrednost, u datom trenutku, prenosi na izlaz Mux 2-u- mux
Multiplekser Mux 4-u-
Multiplekser Mux 8-u- pomoću mux 2-u-
Multiplekser Mux 2xm-u-m mux 2xm-u-m
Multiplekser Realizacija pomoću dekodera i logičkih kola D 7 D 6 D 5 D 4 D 3 D 2 D D S S S 2 S 2 S S Y D D D 2 D 3 D 4 D 5 D 6 D 7 Y
Multiplekser Realizacija pomoću dekodera i tro-statičkih bafera S S Dekoder 3 2 D D S S Y D 2 D 3 D D D 2 D 3
Demultiplekser Jedinstveni ulaz usmerava na izlaz izabran selekcionim ulazima Realizacija pomoću dekodera
Mux + Dmux = vremenski multipleks
Binarni koder Binarni koder 2 n -u-n Na izlazu se generiše se n-bitni binarni broj koji ukazuje na indeks ulaza čija je vrednost. Aktivan najviše jedan ulaz Funkcija suprotna funkciji dekodera
Koder 4-u-2 Binarni koder
Binarni koder Primer primene w w 7 2 w 2 y 2 6 3 w 3 5 4 w 4 w 5 y y y 2 y y w 6 w 7
Prioritetni koder Prevazilazi ograničenje binarnog kodera da najviše jedan ulaz sme biti aktivan Svakom ulazu je dodeljen prioritet, a izlaz kodera, interpretiran kao binarni broj, ukazuje na indeks aktivnog ulaza najvišeg prioriteta. Najniži prioritet Aktivan je barem jedan ulaz Najviši prioritet
Prioritetni koder Princip realizacije
Prioritetni koder Hijerarhijska realizacija - prioritetni koder 8-u- pomoću kodera 2-u- i multipleksera
Prioritetni koder Primer primene - izbor signal prekida prioritetni koder 4-u-2
Komparator magnitude Univerzalni komparator Poredi dva n-bitna pozitivna cela broja X i Y i generiše tri binarna rezultata: G(X>Y), E(X=Y) L(X<Y) X n x (n-)- G X>Y Y n y (n-)- E L X=Y X<Y
Komparator magnitude 4-bitni komparator
Komparator magnitude 8-bitni komparator pomoću 4-bitnih komparatora
Komparator magnitude Komparator pomoću sabirača (oduzimača) x 3 x 2 x x y 3 y 2 y y X: Y: 7-5 - + X > Y 5-5 - + X = Y 5-7 - + X < Y c 4 n-bitni sabirač c E (X=Y) L (X<Y) G (X>Y)
Iterativna komparatorska mreža 4-bitni komparator Ako je X=Y, odlučivanje se prepušta narednom ( višem ) modulu
Hijerarhijska komparatorska mreža > = inace l je g ako G = = inace l je g ako E < = inace l je g ako L l g Y X
Kombinacioni pomerači i rotatori Izbor operacije dl dd d 7 d 6 d 5 d 4 d 3 d 2 d d S 2 S S y 7 y 6 y 5 y 4 y 3 y 2 y y S2 S S Funkcija X X Nema pomeranja Pomeranje ulevo Rotiranje ulevo Pomeranje udesno Rotiranje udesno X X X dl dd S 2 S S X / dl dd S 2 S S / X dl dd S 2 S S Nema pomeranja Pomeranje ulevo Pomeranje udesno X X dl dd S 2 S S X X dl dd S 2 S S Rotiranje na levo Rotiranje na desno
Kombinacioni pomerači i rotatori 8-bitni univerzalni pomerač/rotator
Kombinacioni pomerači i rotatori Barel pomerač d 7 d 6 d 5 d 4 d 3 d 2 d d mux mux mux mux mux mux mux mux S mux mux mux mux mux mux mux mux S mux mux mux mux mux mux mux mux S 2 y 7 y 6 y 5 y 4 y 3 y 2 y y
ROM ROM - Read Only Memory Kao univerzalni, programabilni logički element Kao memorija za permanentno čuvanje informacija ROM nxm Kapaciteta n reči od m bita Poseduje k=log 2 n adresinih linija i m izlaznih linija Može da realizuje m logičkih funkcija k promenljivih
Programabilni simboli A B C D
ROM - struktura U svakom preseku ILI matrice nalazi se prekidač koji se programiranjem može otvoriti/zatvoriti Promenljive Može da realizuje 4 proizvoljne funkcije 4 promenljive Generator minterma (potpunih proizvoda) ILI matrica (sumiranje logičkih proizvoda)
ROM - primer
PLA A 3 A 2 A A PLA - Programmable Logic Array (programabilno logičko polje) OR polje ILI matica Za sumiranje logičkih proizvoda 2 3 4 I matrica Za formiranje logičkih proizvoda AND polje 5 6 7 Izlazno polje Za komplementiranje izlazne funkcije F 3 F 2 F F
PLA - primer
LUT Logički blok: LUT - univerzalni logički blok sa malim brojem ulaza (n = 4-6) i jednim izlazom. Realizuje se kao RAM 2 n x. Sadržaj RAM-a definiše logičku funkciju. x x 2 / / / / Dvoulazni LUT može da realizuje proizvoljnu funkciju dve promenljive f
LUT realizacija funkcije x x 2 f x f x 2
LUT primena kod FPGA kola (logički blok) Logički blok = LUT + flip-flop
FPGA (realizacija složenijih funkcija) Logički blok f = f + f 2 = x x 2 + x 2 x 3.