Professional Documents
Culture Documents
01 Uvod
01 Uvod
01 Uvod
1.UVOD
dr Zoran Mitrovi
ta je projektovanje logikih kola (logiko projektovanje)? ta je digitalni hardver? Bulova algebra, minimizacija logikih funkcija, statika (za kombinaciona kola) i dinamika (za memorijska kola) analiza, kompjutersko projektovanje Analogna su promenljivama i programabilnim brojaima u softveru
15-Mar-07
Mree i komunikacije Proizvodi za ugradnju u druge sisteme Oprema za naune primene Razni raunarski sistemi
Automobili, igrake, muzike linije, DVD plejeri, razni kuni aparati Testiranje, prihvat raznih informacija, izvetavanje
15-Mar-07
Kratak istorijat
1850: Dord Bul (George Boole) daje osnove bulove algebre
Logike jednaine predstavljaju se simboliki Omoguena je manipulacija logikim izrazima kori enjem matematike
1945: Don fon Nojman (John von Neumann) razvija prvi raunarski program koji je bio memorisan
Prekidaki elementi su vakuumske cevi (velika prednost u odnosu na relea) 18,000 vakuumskih cevi Nekoliko stotina mnoenja u minuti
1946: ENIACprvi elektronski raunar 1947: okli, Britein i Bardin (Shockley, Brittain, Bardeen) pronalaze tranzistor
zamena za vakuumske cevi integracija vie tranzistora u jedno pakovanje otvorena vrata ka modernoj elektronici
15-Mar-07
ta je logiko projektovanje?
ta je projektovanje (dizajn)?
Za zadatu specifikaciju (opis) problema dati nain da se on rei izborom iz skupa raspoloivih komponenti Zadovoljiti zahteve za veliinom, cenom, snagom, izgledom, itd.
ta je logiko projektovanje?
Definisanje skupa digitalnih logikih komponenti koje e obavljati odreenu funkciju upravljanja i/ili obrade podataka i/ili komunikacije; definisati meusobne veze Koje logike komponente izabrati? postoji mnogo tehnolokih implementacija logikih funkcija (npr. komponente sa fiksnom funkcijom, programabilne komponente,...) Projekt treba da se optimizuje i/ili transformie da bi zadovoljila odreena zadata ogranienja
15-Mar-07
ta je digitalni hardver?
Skup sklopova koji prihvataju i odreuju koja je logika vrednost (0 ili 1) i/ili veza koje prenose digitalne (logike) vrednosti npr. digitalna logika gde se napon < 0.8V smatra logikom nulom (0), a napon > 2.0V smatra logikom jedinicom (1) npr. par provodnika gde se 0 i 1 prepoznaju po tome koji provodnik ima vii potencijal (diferencijalni prenos) ili, npr. da orijentacija magnetizacije oznaava 0 ili 1 Primitivni sklopovi digitalnog hardvera logiki raunarski sklopovi (koji prepoznaju logiki nivo i daju pobudu za sledei stepen) oba provodnika na 1 daju pobudu takoe 1 (logiko I) bar jedan provodnik na 1 daje pobudu 1 (logiko ILI) ako je provodnik na 1 daje pobudu 0 (logiko NE) Memorijski sklopovi ulazni nivo pamenje logike vrednosti pobuda log. I pozivanje iz memorije prethodno upamene vrednosti ulazni nivo
Merni instrumenti - Digitalna elektronika 6
15-Mar-07
Z A
15-Mar-07
Merni instrumenti - Digitalna elektronika 8
Prekidai (nastavak)
Povezivanje prekidaa u sloenija kola (bulove funkcije): I
A B
Z AiB
ILI
Z A ili B
B
15-Mar-07
Odrediti da li postoji provodni put koji e upaliti sijalicu Koristiti sijalicu (izlaz iz jednog dela mree) da se ukljue drugi prekidai (ulazi drugih delova mree). Konstruisati sloenije prekidake mree, tj. postoji nain da se poveu izlazi jedne mree sa ulazima druge
15-Mar-07
Relejne mree
Jednostavan nain da se povee provodni put i stanje prekidaa je kori enjem (elektromehanikih) relea. ta je rele?
provodni put koji se sastoji od jednog ili vie ukljuenih prekidaa struja tee kroz namotaj, magnetie jezgro i prouzokuje da se normalno zatvoreni kontakti (nc) otvore kad nema struje, opruga vraa kontakte u normalni poloaj
15-Mar-07
Merni instrumenti - Digitalna elektronika 11
Tranzistorske mree
Relea se sve manje koriste
Neki ormani za kontrolu rada semafora su jo uvek elektromehaniki MOS je Metal-Oxide on Semiconductor C je oznaka za komplementarni, jer postoje i normalno zatvoreni i normalno otvoreni prekidai
15-Mar-07
MOS tranzistori
MOS tranzistori imaju tri prikljuka: drejn, gejt i sors
oni se ponaaju kao prekidai: ako je napon na gejtu (zavisno od tipa tranzistora) neto vii ili nii od napona na sorsu, uspostavlja se provodni put izmeu drejna i sorsa G G S D S D
n-kanal otvoren kad je napon na G nizak zatvara se kad je: napon(G) > napon (S) +
p-kanal zatvoren kad je napon na G nizak otvara se kad je: napon(G) < napon (S)
15-Mar-07
MOS mree
X 3v Y 0v
15-Mar-07
15-Mar-07
15-Mar-07
15-Mar-07
digitalno kolo je kombinaciono ako njegove izlazne vrednosti zavise samo od ulaznih vrednosti
15-Mar-07
15-Mar-07
Sekvencijalna logika
Sekvencijalni sistemi
Ponaanje (izlazne vrednosti) ne zavise samo od trenutnih ulaznih vrednosti, ve i od prethodnih ulaznih i izlaznih vrednosti Izlazi se ne menjaju trenutno nakon promene ulaznih vrednosti Zato ne, i zato je to sekvencijalno ponaanje?
Osnovna apstrakcija projektovanja digitalnih kola je da se razmatra samo stabilno stanje (ne i prelazne pojave)
Izlazi se posmatraju tek nakon isteka dovoljno dugog vremena u kome se sistem stabilizuje nakon odreenih promena stanja
15-Mar-07
Usvojena analiza stabilnog stanja je toliko korisna, da je veina projektanata koriste i kad projektuju sekvencijalna kola:
Memorija u sistemu je predstavljena kao njegovo stanje Promene stanja sistema dozvoljavaju se samo u odreenim trenucima koje diriguje spoljanji periodini takt Period takta je vreme koje protekne izmeu promena stanja. Mora biti dovoljno dugo da sistem dostigne stabilno stanje pre sledee promene stanja na kraju perioda
Merni instrumenti - Digitalna elektronika 23
15-Mar-07
ulazi A, B eka se na ivicu signala takta posmatra se C eka se na sledeu ivicu takta posmatra se ponovo C: ostae nepromenjeno ulazi A, B eka se na ivicu signala takta posmatra se C eka se na sledeu ivicu takta posmatra se ponovo C: moe da se promeni
Sekvencijalna:
A C B Clock
15-Mar-07
Uoptavanja
Neka smo ve videli
digitalno predstavljanje analognih vrednosti tranzistori kao prekidai prekidai kao logika kola primena signala takta za realizaciju sinhronog sekvencijalnog kola
Kombinacione tabele i bulova algebra za predstavljanje kombinacionih logikih kola kodiranje signala sa vie od dva logika nivoa u binarnu formu dijagrami stanja za predstavljanje sekvencijalne logike jezici za opis hardvera za predstavljanje digitalne logike talasni oblici za predstavljanje vremenskog ponaanja
15-Mar-07
Primer
Podsistem kalendara: broj dana u mesecu (za kontrolu prikaza na elektronskom asovniku)
koristi se za kontrolu displeja LCD prikaza na runom asovniku ulazi: mesec, znak za prelaznu godinu izlazi: broj dana
15-Mar-07
Implementacija u softveru
integer broj_dana ( mesec, prelazna_godina) {
switch (mesec) { case 1: return (31); case 2: if (prelazna_godina == 1) then return (29) else return (28); case 3: return (31); ... case 12: return (31); default: return (0); }
15-Mar-07
koliko bita za svaki ulaz/izlaz? binarni broj za mesec etiri bita za 28, 29, 30, i 31 kombinaciono specifikacija kombinacione tabele
ponaanje:
mesec
prestupna
mesec 0000 0001 0010 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 111
prest. 0 1
d28 0 1 0 0 0 0 0 0 0 0 0 0 0
d29 0 0 1 0 0 0 0 0 0 0 0 0 0
d30 0 0 0 0 1 0 1 0 0 1 0 1 0
d31 1 0 0 1 0 1 0 1 1 0 1 0 1
d31 = 1 kad je mesec=0001 ili mesec=0011 ili ... mesec=1100 d31 = (m8'm4'm2'm1) + (m8'm4'm2m1) + ... (m8m4m2'm1') d31 = moe li da se uprosti?
month 0001 0010 0010 0011 0100 ... 1100 1101 111 0000 leap 0 1 d28 0 1 0 0 0 0 d29 0 0 1 0 0 0 d30 0 0 0 0 1 0 d31 1 0 0 1 0 1
15-Mar-07
15-Mar-07
15-Mar-07
Drugi primer
Kombinacija za otvaranje vrata:
ukucajte 3 vrednosti jednu po jednu da bi se otvorila vrata; ako doe do greke u unosu, brava mora da se resetuje; kad se vrata otvore, brava mora da se resetuje ulazi: sekvenca ulaznih vrednosti, reset izlazi: otvaranje/zatvaranje vrata memorija: mora da se pamti kombinacija ili da uvek bude raspoloiva kao ulaz
15-Mar-07
Implementacija u softveru
integer combination_lock ( ) {
integer v1, v2, v3; integer error = 0; static integer c[3] = 3, 4, 2; while (!new_value( )); v1 = read_value( ); if (v1 != c[1]) then error = 1; while (!new_value( )); v2 = read_value( ); if (v2 != c[2]) then error = 1; while (!new_value( )); v3 = read_value( ); if (v2 != c[3]) then error = 1; if (error == 1) then return(0); else return (1);
}
15-Mar-07
Merni instrumenti - Digitalna elektronika 33
koliko bita po ulaznoj veliini? koliko vrednosti u sekvenci? kako znamo kad se unese sledea ulazna vrednost? kako predstavljamo stanja sistema? signal takta je potreban da bismo znali kad moemo da vidimo stanje ulaza (da su se smirili nakon promene) sekvencijalno: sekvenca vrednosti treba da se unese sekvencijalno: pamtiti da li je dolo do greke specifikacija konanih stanja
Ponaanje:
novi unos
vrednost reset
takt
stanje
otvoreno/zatvoreno
15-Mar-07
Merni instrumenti - Digitalna elektronika 34
Stanja: 5 stanja predstavljaju taku izvrenja svako stanje ima izlaze Tranzicija: 6 iz stanja u stanje, 5 sopstvenih tranzicija, 1 globalna promene stanja nastupaju kad takt dozvoli GREKA bazirano na vrednostima ulaza zatvoreno Ulazi: reset, novi, resultati poreenja Izlaz: otvoreno/zatvoreno
C1!=value & new S2 S1 reset C2!=vrednost C3!=vrednost & novi & novi OTVORENO S3
zatvoreno zatvoreno zatvoreno otvoreno C1=vrednost C2=vrednost C3=value & novi & novi & new nije novi nije novi nije novi
15-Mar-07
put podataka memorija za kombinacije komparatori kontrola kontroler konanih stanja kontrola za put podataka promene stanja na osnovu takta novi vrednost C1 C2
multiplekser komparator
jednako reset
C3 mux kontrola
kontroler
takt
jednako
15-Mar-07
otvoreno/zatvoreno
Merni instrumenti - Digitalna elektronika 36
reset
15-Mar-07
nije jednak nije jednak nije jednakl & novi & novi & novi S1 S2 S3 OTVORENO closed closed zatvoreno otvoreno mux=C1 equal mux=C2 equal mux=C3 equal & new & new & new nije novi nije novii nije novi
reset 1 0 0 0 0 0 0 0 0 0 0 0 15-Mar-07
novi 0 1 1 0 1 1 0 1 1
sledee jednako stanje stanje mux S1 C1 S1 S1 C1 0 S1 ERR 1 S1 S2 C2 S2 S2 C2 0 S2 ERR 1 S2 S3 C3 S3 S3 C3 0 S3 ERR 1 S3 OTV. OTV. OTV. ERR ERR
otvoreno/zatvoreno zatvoreno zatvoreno zatvoreno zatvoreno zatvoreno zatvoreno zatvoreno zatvoreno zatvoreno otvoreno otvoreno zatvoreno
stanje moe biti: S1, S2, S3, OTVORENO, ili GREKA porebno je najmanje 3 bita za kodiranje: 000, 001, 010, 011, 100 ili 5: 00001, 00010, 00100, 01000, 10000 biramo 4 bita: 0001, 0010, 0100, 1000, 0000 izlazni mux moe da bude: C1, C2, or C3 potrebno je 2 do 3 bita za kodiranje biramo 3 bita: 001, 010, 100 izlazi otvoreno/zatvoreno moe da bude: otvoreno ili zatvoreno treba 1 ili 2 bita za kodiranje biramo 1 bit: 1, 0
15-Mar-07
stanje moe da bude: S1, S2, S3, OTVORENO, ili GREKA biramo 4 bita: 0001, 0010, 0100, 1000, 0000 izlazni mux moe da bude: C1, C2, ili C3 biramo 3 bita: 001, 010, 100 izlaz otvoreno/zatvoreno moze da bude: otvoreno ili zatvoreno biramo 1 bit: 1, 0
reset 1 0 0 0 0 0 0 0 0 0 0 0 novi 0 1 1 0 1 1 0 1 1 otvoreno/zatvoreno 0 0 0 dobar izbor za kodiranje! 0 0 mux je identian sa 0 poslednja 3 bita stanja 0 0 otvoreno/zatvoreno je 0 identino prvom bitu 1 stanja 1 0 Merni instrumenti - Digitalna elektronika 40 jednako stanje 0001 0 0001 1 0001 0010 0 0010 1 0010 0100 0 0100 1 0100 1000 0000 sledee stanje mux 0001 001 0001 001 0000 0010 010 0010 010 0000 0100 100 0100 100 0000 1000 1000 0000
15-Mar-07
kontroler
otvoreno/zatvoreno
otvoreno/zatvoreno
15-Mar-07
Merni instrumenti - Digitalna elektronika 41
Hijerarhija projekta
sistem
putanja podataka
kontrola
komparator
registri stanja
kombinaciona logika
registri
logika
prekidake mree
15-Mar-07
Merni instrumenti - Digitalna elektronika 42
Pregled
Dat je pregled o emu e se govoriti na kursu
Predstavljanje reenja problema kombinacionim i/ili sekvencijalnim mreama efektivno organizujui projekat hijerarhijski Kori enje modernih alata za razvoj koji omoguavaju produktivan rad sa velikim projektima Kori enje prednosti koje pruaju tehnike optimizacije
U nastavku detaljnije...
15-Mar-07