Professional Documents
Culture Documents
01 Uvod PDF
01 Uvod PDF
1.UVOD
dr Zoran Mitrović
Uvod
Šta je projektovanje logičkih kola (logičko projektovanje)?
Šta je digitalni hardver?
Jezik logičkog projektovanja
Bulova algebra, minimizacija logičkih funkcija, statička (za kombinaciona
kola) i dinamička (za memorijska kola) analiza, kompjutersko projektovanje
Kombinaciona kola u digitalnim sistemima
Analogna su promenljivama i programabilnim brojačima u softveru
Kako da specificiramo/simuliramo/prevedemo naš dizajn
Jezici za opis hardvera (Hardware description languages – HDL)
Alati za simulaciju rada elektronskih kola i sistema
Kompajleri koji vrše sintezu hardverskih blokova našeg dizajna
Mapiranje u programabilni hardver (generisanje koda)
Mreže i komunikacije
Telefoni, modemi, ruteri
Kratak istorijat
1945: Džon fon Nojman (John von Neumann) razvija prvi računarski
program koji je bio memorisan
Prekidački elementi su vakuumske cevi (velika prednost u odnosu na relea)
A Z
zatvaranje prekidača (ako je A = “1” )
i uključivanje sijalice (Z)
Z
A
otvaranje prekidača (ako je A = “0”)
i isključivanje sijalice (Z)
Z ≡ A
15-Mar-07 Merni instrumenti - Digitalna elektronika 8
Prekidači (nastavak)
A
ILI
Z ≡ A ili B
Prekidačke mreže
Postavljanje prekidača
Odrediti da li postoji provodni put koji će upaliti sijalicu
provodni put
koji se sastoji
od jednog ili više
uključenih
prekidača
Tranzistorske mreže
S D S D
n-kanal p-kanal
otvoren kad je napon na G nizak zatvoren kad je napon na G nizak
zatvara se kad je: otvara se kad je:
napon(G) > napon (S) + ε napon(G) < napon (S) – ε
MOS mreže
X koja relacija
definiše
vezu x i y?
3v x y
Y 0V
0v 3V
X Y
3V
koja relacija
Z definiše
vezu x, y i z?
0V
x y z
X Y
0V 0V
3V 0V 3V
Z 3V 0V
3V 3V
0V
15-Mar-07 Merni instrumenti - Digitalna elektronika 15
Sekvencijalna logika
Sekvencijalni sistemi
Ponašanje (izlazne vrednosti) ne zavise samo od trenutnih ulaznih
vrednosti, već i od prethodnih ulaznih i izlaznih vrednosti
Kombinaciona:
ulazi A, B
čeka se na ivicu signala takta
posmatra se C
čeka se na sledeću ivicu takta
posmatra se ponovo C: ostaće nepromenjeno A
Sekvencijalna:
C
B
ulazi A, B
čeka se na ivicu signala takta Clock
posmatra se C
čeka se na sledeću ivicu takta
posmatra se ponovo C: može da se promeni
Primer
Kodiranje:
koliko bita za svaki ulaz/izlaz?
mesec prest. d28 d29 d30 d31
binarni broj za mesec 0000 – – – – –
četiri bita za 28, 29, 30, i 31 0001 – 0 0 0 1
0010 0 1 0 0 0
ponašanje: 0010 1 0 1 0 0
0011 – 0 0 0 1
kombinaciono 0100 – 0 0 1 0
specifikacija mesec
0101 – 0 0 0 1
prestupna 0110 – 0 0 1 0
kombinacione
0111 – 0 0 0 1
tabele 1000 – 0 0 0 1
1001 – 0 0 1 0
1010 – 0 0 0 1
1011 – 0 0 1 0
1100 – 0 0 0 1
1101 – – – – –
111– – – – – –
d28 d29 d30 d31
d28 = m8'•m4'•m2•m1'•leap’
d29 = m8'•m4'•m2•m1'•leap
d30 = (m8'•m4•m2'•m1') + (m8'•m4•m2•m1') +
(m8•m4'•m2'•m1) + (m8•m4'•m2•m1)
d31 = (m8'•m4'•m2'•m1) + (m8'•m4'•m2•m1) +
(m8'•m4•m2'•m1) + (m8'•m4•m2•m1) + (m8•m4'•m2'•m4')
+ (m8•m4'•m2•m1') + (m8•m4•m2'•m1')
d28 = m8'•m4'•m2•m1'•leap’
d29 = m8'•m4'•m2•m1'•leap
d30 = (m8'•m4•m2'•m1') + (m8'•m4•m2•m1') +
(m8•m4'•m2'•m1) + (m8•m4'•m2•m1)
d31 = (m8'•m4'•m2'•m1) + (m8'•m4'•m2•m1) +
(m8'•m4•m2'•m1) + (m8'•m4•m2•m1) + (m8•m4'•m2'•m4')
+ (m8•m4'•m2•m1') + (m8•m4•m2'•m1')
Drugi primer
integer combination_lock ( ) {
integer v1, v2, v3;
integer error = 0;
static integer c[3] = 3, 4, 2;
Kodiranje:
koliko bita po ulaznoj veličini?
koliko vrednosti u sekvenci?
kako znamo kad se unese sledeća
ulazna vrednost?
kako predstavljamo stanja sistema?
Ponašanje:
signal takta je potreban da bismo
znali kad možemo da vidimo stanje novi vrednost reset
ulaza (da su se smirili nakon promene) unos
sekvencijalno: sekvenca vrednosti
treba da se unese
sekvencijalno: pamtiti da li je došlo stanje
do greške takt
specifikacija konačnih stanja
otvoreno/zatvoreno
Interna struktura
put podataka
⌧memorija za kombinacije
⌧komparatori
kontrola
⌧kontroler konačnih stanja
⌧kontrola za put podataka
⌧promene stanja na osnovu takta
novi jednako reset
vrednost
C1 C2 C3
multiplekser
mux
kontroler
kontrola
komparator
takt
jednako otvoreno/zatvoreno
15-Mar-07 Merni instrumenti - Digitalna elektronika 36
Implementacija - sekvencijalni digitalni
sistem (nastavak): kontroler konačnih stanja
GREŠKA
zatvoreno
sledeće
reset novi jednako stanje stanje mux otvoreno/zatvoreno
1 – – – S1 C1 zatvoreno
0 0 – S1 S1 C1 zatvoreno
0 1 0 S1 ERR – zatvoreno
0 1 1 S1 S2 C2 zatvoreno
0 0 – S2 S2 C2 zatvoreno
0 1 0 S2 ERR – zatvoreno
0 1 1 S2 S3 C3 zatvoreno
0 0 – S3 S3 C3 zatvoreno
0 1 0 S3 ERR – zatvoreno
0 1 1 S3 OTV. – otvoreno
0 – – OTV. OTV. – otvoreno
0 – – ERR ERR – zatvoreno
15-Mar-07 Merni instrumenti - Digitalna elektronika 38
Implementacija - sekvencijalni digitalni
sistem (nastavak): kodiranje
Implementacija kontrolera
specijalni element kola
novi jednako reset
(zove se registar), za
pamćenje ulaza
mux kad takt to odredi
kontrola kontroler
takt
otvoreno/zatvoreno
Hijerarhija projekta
sistem
registri logika
prekidačke
mreže
U nastavku detaljnije...