Presentation is loading. Please wait.

Presentation is loading. Please wait.

FTN Novi Sad Merni instrumenti - Digitalna elektronika

Similar presentations


Presentation on theme: "FTN Novi Sad Merni instrumenti - Digitalna elektronika"— Presentation transcript:

1 FTN Novi Sad Merni instrumenti - Digitalna elektronika
UVOD dr Zoran Mitrović

2 Merni instrumenti - Digitalna elektronika 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) 9-Nov-18 Merni instrumenti - Digitalna elektronika 2

3 Gde logičko projektovanje nalazi primenu?
Standardni razvoj računarskih sistema Procesori, računarske magistrale, periferije Mreže i komunikacije Telefoni, modemi, ruteri Proizvodi za ugradnju u druge sisteme Automobili, igračke, muzičke linije, DVD plejeri, razni kućni aparati Oprema za naučne primene Testiranje, prihvat raznih informacija, izveštavanje Razni računarski sistemi 9-Nov-18 Merni instrumenti - Digitalna elektronika 3

4 Merni instrumenti - Digitalna elektronika 4
Kratak istorijat 1850: Džordž Bul (George Boole) daje osnove bulove algebre Logičke jednačine predstavljaju se simbolički Omogućena je manipulacija logičkim izrazima korišćenjem matematike 1938: Klod Šenon (Claude Shannon) povezuje bulovu algebru sa prekidačima Njegova magistarska teza 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) 1946: ENIAC—prvi elektronski računar 18,000 vakuumskih cevi Nekoliko stotina množenja u minuti 1947: Šokli, Britein i Bardin (Shockley, Brittain, Bardeen) pronalaze tranzistor zamena za vakuumske cevi integracija više tranzistora u jedno pakovanje otvorena “vrata” ka modernoj elektronici 9-Nov-18 Merni instrumenti - Digitalna elektronika 4

5 Šta je logičko projektovanje?
Šta je projektovanje (dizajn)? Za zadatu specifikaciju (opis) problema dati način da se on reši izborom iz skupa raspoloživih komponenti Zadovoljiti zahteve za veličinom, cenom, snagom, izgledom, itd. Šta je logičko projektovanje? Definisanje skupa digitalnih logičkih komponenti koje će obavljati određenu funkciju upravljanja i/ili obrade podataka i/ili komunikacije; definisati međusobne veze Koje logičke komponente izabrati? – postoji mnogo tehnoloških implementacija logičkih funkcija (npr. komponente sa fiksnom funkcijom, programabilne komponente,...) Projekt treba da se optimizuje i/ili transformiše da bi zadovoljila određena zadata ograničenja 9-Nov-18 Merni instrumenti - Digitalna elektronika 5

6 Šta je digitalni hardver?
Skup sklopova koji prihvataju i određuju koja je logička vrednost (“0” ili “1”) i/ili veza koje prenose digitalne (logičke) vrednosti npr. digitalna logika gde se napon < 0.8V smatra logičkom nulom (“0”), a napon > 2.0V smatra logičkom jedinicom (“1”) npr. par provodnika gde se “0” i “1” prepoznaju po tome koji provodnik ima viši potencijal (diferencijalni prenos) ili, npr. da orijentacija magnetizacije označava “0” ili “1” Primitivni sklopovi digitalnog hardvera logički računarski sklopovi (koji prepoznaju logički nivo i daju pobudu za sledeći stepen) oba provodnika na “1” – daju pobudu takođe “1” (logičko I) bar jedan provodnik na “1” – daje pobudu “1” (logičko ILI) ako je provodnik na “1” – daje pobudu “0” (logičko NE) Memorijski sklopovi pamćenje logičke vrednosti pozivanje iz memorije prethodno upamćene vrednosti ulazni nivo pobuda log. I ulazni nivo 9-Nov-18 Merni instrumenti - Digitalna elektronika 6

7 Računanje: apstraktno i implementacija
Računanje kao mentalna razonoda (papir, programi) nasuprot tome implementacija računanja sa fizičkim sklopovima koristeći napone koji predstavljaju logičke vrednosti Osnovne jedinice računanja: predstavljanje: "0", "1" na jednom ili više provodnika (npr. binarni brojevi) dodela vrednosti: x = y računske operacije: x + y – 5 upravljanje tokom programa: sekvenca: A; B; C uslovi: if x == 1 then y petlje: for ( i = 1 ; i == 10, i++) procedure: A; proc(...); B; Naučiti kako se navedeno implementira u hardveru i sklapa u računarske strukture 9-Nov-18 Merni instrumenti - Digitalna elektronika 7

8 Prekidači: osnovni elementi fizičke implementacije
Implementacija prostog kola (strelica pokazuje logičko stanje provodnika “1”): 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 9-Nov-18 Merni instrumenti - Digitalna elektronika 8

9 Merni instrumenti - Digitalna elektronika 9
Prekidači (nastavak) Povezivanje prekidača u složenija kola (bulove funkcije): A B I Z  A i B A ILI Z  A ili B B 9-Nov-18 Merni instrumenti - Digitalna elektronika 9

10 Merni instrumenti - Digitalna elektronika 10
Prekidačke mreže Postavljanje prekidača Odrediti da li postoji provodni put koji će upaliti sijalicu Izgraditi složenije računske operacije Koristiti sijalicu (izlaz iz jednog dela mreže) da se uključe drugi prekidači (ulazi drugih delova mreže). Povezati prekidačke mreže Konstruisati složenije prekidačke mreže, tj. postoji način da se povežu izlazi jedne mreže sa ulazima druge 9-Nov-18 Merni instrumenti - Digitalna elektronika 10

11 Relejne mreže Jednostavan način da se poveže provodni put i stanje prekidača je korišćenjem (elektromehaničkih) relea. Šta je rele? provodni put koji se sastoji od jednog ili više uključenih prekidača struja teče kroz namotaj, magnetiše jezgro i prouzokuje da se normalno zatvoreni kontakti (nc) otvore kad nema struje, opruga vraća kontakte u normalni položaj 9-Nov-18 Merni instrumenti - Digitalna elektronika 11

12 Merni instrumenti - Digitalna elektronika 12
Tranzistorske mreže Relea se sve manje koriste Neki ormani za kontrolu rada semafora su još uvek elektro-mehanički Moderni digitalni sistemi se rade u CMOS tehnologiji MOS je Metal-Oxide on Semiconductor C je oznaka za komplementarni, jer postoje i normalno zatvoreni i normalno otvoreni prekidači MOS tranzistori se ponašaju kao naponski kontrolisani prekidači Slični releima, ali mnogo lakša manipulacija 9-Nov-18 Merni instrumenti - Digitalna elektronika 12

13 MOS tranzistori MOS tranzistori imaju tri priključka: drejn, gejt i sors oni se ponašaju kao prekidači: ako je napon na gejtu (zavisno od tipa tranzistora) nešto viši ili niži od napona na sorsu, uspostavlja se provodni put između 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) –  9-Nov-18 Merni instrumenti - Digitalna elektronika 13

14 MOS mreže X 3v Y 0v koja relacija definiše vezu x i y? x y 0 V 3 V
9-Nov-18 Merni instrumenti - Digitalna elektronika 14

15 Mreže sa dva ulaza X Y 3V koja relacija definiše vezu x, y i z? Z 0V X
9-Nov-18 Merni instrumenti - Digitalna elektronika 15

16 Merni instrumenti - Digitalna elektronika 16
Brzina MOS mreža Šta utiče na brzinu CMOS mreža? punjenje i pražnjenje napona na provodnicima i gejtovima tranzistora 9-Nov-18 Merni instrumenti - Digitalna elektronika 16

17 Predstavljanje logičkog projektovanja
Fizički sklopovi (tranzistori, relea) Prekidači Kombinacione tabele bulova algebra Gejtovi (logička kola) Talasni oblici Ponašanje konačnih stanja Ponašanje registar-transfer Konkurentne apstraktne specifikacije obim kursa digitalne elektronike u okviru Elektronike 2 9-Nov-18 Merni instrumenti - Digitalna elektronika 17

18 Digitalna i analogna kola
O digitalnim sistemima obično se razmišlja kao da imaju samo diskretne, digitalne, ulazne i izlazne vrednosti U stvarnosti realne elektronske komponente se ponašaju kao da imaju analogna, kontinualna stanja behavior Zašto pravimo ovakvu apstrakciju? Zašto ona, ipak, funkcioniše? 9-Nov-18 Merni instrumenti - Digitalna elektronika 18

19 Mapiranje iz fizičkog u binarni svet
Tehnologiija Stanje 0 Stanje 1 Relejna logika Otvoreno kolo Zatvoreno kolo CMOS logika V V Tranzistor tranzistor logika (TTL) V V Fiber optika Svetlo isključeno Svetlo uključeno Dynamičke RAM memorije Ispražnjen kondenz. Napunjen kondenzator Električno brisive memorije (EEPROM) Zarobljeni elektroni Nema zarobljenih elektrona Programabilne ROM memorije Osigurač spaljen Osigurač netaknut Memorije sa magnetnim mehurićima Nema magnetnog mehurića Magnetni mehurič postoji Magnetni diskovi Nema obrtanja fluksa Fluks obrnut Kompakt diskovi Nema zareza Zarez 9-Nov-18 Merni instrumenti - Digitalna elektronika 19

20 Kombinaciona i sekvencijalna digitalna kola
Jednostavan model digitalnog sistema je “crna kutija” sa ulazima i izlazima: Kombinaciona znači “bez memorije" digitalno kolo je kombinaciono ako njegove izlazne vrednosti zavise samo od ulaznih vrednosti ulazi sistem izlazi 9-Nov-18 Merni instrumenti - Digitalna elektronika 20

21 Kombinacioni logički simboli
Često korišćena kombinaciona logička kola imaju standardne logičke simbole koji se nazivaju gejtovima Bafer, NE, (Buffer, NOT) I, NI, (AND, NAND) ILI, NILI, (OR, NOR) A Z A Z jednostavno se implementiraju pomoću CMOS tranzistora B A Z B 9-Nov-18 Merni instrumenti - Digitalna elektronika 21

22 Merni instrumenti - Digitalna elektronika 22
Sekvencijalna logika Sekvencijalni sistemi Ponašanje (izlazne vrednosti) ne zavise samo od trenutnih ulaznih vrednosti, već i od prethodnih ulaznih i izlaznih vrednosti U stvarnosti, sva kola su sekvencijalna Izlazi se ne menjaju trenutno nakon promene ulaznih vrednosti Zašto ne, i zašto je to sekvencijalno ponašanje? 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 određenih promena stanja 9-Nov-18 Merni instrumenti - Digitalna elektronika 22

23 Sinhroni sekvencijalni digitalni sistemi
Izlazi kombinacionih kola zavise samo od trenutnih stanja ulaza Nakon isteka dovoljnog vremenskog intervala Sekvencijalna kola imaju memoriju Čak i kad se čeka da se završi prelazni režim Usvojena analiza stabilnog stanja je toliko korisna, da je većina projektanata koriste i kad projektuju sekvencijalna kola: Memorija u sistemu je predstavljena kao njegovo stanje Promene stanja sistema dozvoljavaju se samo u određenim trenucima koje diriguje spoljašnji periodični takt Period takta je vreme koje protekne između promena stanja. Mora biti dovoljno dugo da sistem dostigne stabilno stanje pre sledeće promene stanja na kraju perioda 9-Nov-18 Merni instrumenti - Digitalna elektronika 23

24 Primeri kombinacione i sekvencijalne logike
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 Sekvencijalna: posmatra se ponovo C: može da se promeni A C B Clock 9-Nov-18 Merni instrumenti - Digitalna elektronika 24

25 Merni instrumenti - Digitalna elektronika 25
Uopštavanja Neka smo već videli digitalno predstavljanje analognih vrednosti tranzistori kao prekidači prekidači kao logička kola primena signala takta za realizaciju sinhronog sekvencijalnog kola Neka ćemo videti u nastavku Kombinacione tabele i bulova algebra za predstavljanje kombinacionih logičkih kola kodiranje signala sa više od dva logička nivoa u binarnu formu dijagrami stanja za predstavljanje sekvencijalne logike jezici za opis hardvera za predstavljanje digitalne logike talasni oblici za predstavljanje vremenskog ponašanja 9-Nov-18 Merni instrumenti - Digitalna elektronika 25

26 Merni instrumenti - Digitalna elektronika 26
Primer Podsistem kalendara: broj dana u mesecu (za kontrolu prikaza na elektronskom časovniku) koristi se za kontrolu displeja LCD prikaza na ručnom časovniku ulazi: mesec, znak za prelaznu godinu izlazi: broj dana 9-Nov-18 Merni instrumenti - Digitalna elektronika 26

27 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); } 9-Nov-18 Merni instrumenti - Digitalna elektronika 27

28 Implementacija - kombinacioni digitalni sistem
Kodiranje: koliko bita za svaki ulaz/izlaz? binarni broj za mesec četiri bita za 28, 29, 30, i 31 ponašanje: kombinaciono specifikacija kombinacione tabele mesec prest. d28 d29 d30 d – – – – – – – – – – – – – – – – – – – – – 111– – – – – – mesec prestupna d28 d29 d30 d31 9-Nov-18 Merni instrumenti - Digitalna elektronika 28

29 Primer – kombinaciona mreža (nastavak)
Kombinaciona tabela – logika – prekidači -gejtovi d28 = 1 kad je mesec=0010 and prest=0 d28 = m8'•m4'•m2•m1'•prest' d31 = 1 kad je mesec=0001 ili mesec=0011 ili ... mesec=1100 d31 = (m8'•m4'•m2'•m1) + (m8'•m4'•m2•m1) (m8•m4•m2'•m1') d31 = može li da se uprosti? simbol za ili simbol za i simbol za ne month leap d28 d29 d30 d – – – – – – – – – 111– – – – – – – – – – – 9-Nov-18 Merni instrumenti - Digitalna elektronika 29

30 Primer – kombinaciona mreža (nastavak)
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') 9-Nov-18 Merni instrumenti - Digitalna elektronika 30

31 Primer – kombinaciona mreža (nastavak)
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') 9-Nov-18 Merni instrumenti - Digitalna elektronika 31

32 Merni instrumenti - Digitalna elektronika 32
Drugi primer Kombinacija za otvaranje vrata: ukucajte 3 vrednosti jednu po jednu da bi se otvorila vrata; ako dođe do greške 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 raspoloživa kao ulaz 9-Nov-18 Merni instrumenti - Digitalna elektronika 32

33 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; v2 = read_value( ); if (v2 != c[2]) then error = 1; v3 = read_value( ); if (v2 != c[3]) then error = 1; if (error == 1) then return(0); else return (1); } 9-Nov-18 Merni instrumenti - Digitalna elektronika 33

34 Implementacija - sekvencijalni digitalni sistem
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 ulaza (da su se smirili nakon promene) sekvencijalno: sekvenca vrednosti treba da se unese sekvencijalno: pamtiti da li je došlo do greške specifikacija konačnih stanja reset vrednost otvoreno/zatvoreno novi unos takt stanje 9-Nov-18 Merni instrumenti - Digitalna elektronika 34

35 Implementacija - sekvencijalni digitalni sistem (nastavak)
Dijagram konačnih stanja Stanja: 5 stanja predstavljaju tačku izvršenja svako stanje ima izlaze Tranzicija: 6 iz stanja u stanje, 5 sopstvenih tranzicija, 1 globalna promene stanja nastupaju kad takt dozvoli bazirano na vrednostima ulaza Ulazi: reset, novi, resultati poređenja Izlaz: otvoreno/zatvoreno GREŠKA zatvoreno C1!=value & new C2!=vrednost & novi C3!=vrednost & novi S1 S2 S3 OTVORENO reset zatvoreno zatvoreno zatvoreno otvoreno C1=vrednost & novi C2=vrednost & novi C3=value & new nije novi nije novi nije novi 9-Nov-18 Merni instrumenti - Digitalna elektronika 35

36 Implementacija - sekvencijalni digitalni sistem (nastavak):
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 mux kontrola multiplekser kontroler takt komparator jednako otvoreno/zatvoreno 9-Nov-18 Merni instrumenti - Digitalna elektronika 36

37 Merni instrumenti - Digitalna elektronika 37
Implementacija - sekvencijalni digitalni sistem (nastavak): kontroler konačnih stanja Kontroler konačnih stanja prepraviti dijagram stanja da uključi i internu strukturu zatvoreno mux=C1 reset jednak & novi nije jednak & novi nije novi S1 S2 S3 OTVORENO GREŠKA mux=C2 mux=C3 otvoreno 9-Nov-18 Merni instrumenti - Digitalna elektronika 37

38 Merni instrumenti - Digitalna elektronika 38
Implementacija - sekvencijalni digitalni sistem (nastavak): kontroler konačnih stanja Kontroler konačnih stanja generisati tabelu stanja (nalik kombinacionoj tabeli) zatvoreno mux=C1 reset equal & new nije jednak & novi nije jednakl & novi nije novi nije novii S1 S2 S3 OTVORENO GREŠKA closed mux=C2 mux=C3 otvoreno reset novi jednako stanje stanje mux otvoreno/zatvoreno 1 – – – S1 C1 zatvoreno 0 0 – S1 S1 C1 zatvoreno S1 ERR – zatvoreno S1 S2 C2 zatvoreno 0 0 – S2 S2 C2 zatvoreno S2 ERR – zatvoreno S2 S3 C3 zatvoreno 0 0 – S3 S3 C3 zatvoreno S3 ERR – zatvoreno S3 OTV. – otvoreno 0 – – OTV. OTV. – otvoreno 0 – – ERR ERR – zatvoreno sledeće 9-Nov-18 Merni instrumenti - Digitalna elektronika 38

39 Implementacija - sekvencijalni digitalni sistem (nastavak): kodiranje
Tabela stanja za kodiranje stanje može biti: S1, S2, S3, OTVORENO, ili GREŠKA 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 može da bude: C1, C2, or C3 potrebno je 2 do 3 bita za kodiranje biramo 3 bita: 001, 010, 100 izlazi otvoreno/zatvoreno može da bude: otvoreno ili zatvoreno treba 1 ili 2 bita za kodiranje biramo 1 bit: 1, 0 9-Nov-18 Merni instrumenti - Digitalna elektronika 39

40 Implementacija - sekvencijalni digitalni sistem (nastavak): kodiranje
Tabela stanja za kodiranje stanje može da bude: S1, S2, S3, OTVORENO, ili GREŠKA biramo 4 bita: 0001, 0010, 0100, 1000, 0000 izlazni mux može 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 novi jednako stanje stanje mux otvoreno/zatvoreno 1 – – – – – – – – – – – – – – – – 0 sledeće dobar izbor za kodiranje! mux je identičan sa poslednja 3 bita stanja otvoreno/zatvoreno je identično prvom bitu stanja 9-Nov-18 Merni instrumenti - Digitalna elektronika 40

41 Merni instrumenti - Digitalna elektronika 41
Implementacija - sekvencijalni digitalni sistem (nastavak): implementacija kontrolera Implementacija kontrolera specijalni element kola (zove se registar), za pamćenje ulaza kad takt to odredi novi jednako reset mux kontrola kontroler takt novi jednako reset otvoreno/zatvoreno mux kontrola komb. logika takt stanje otvoreno/zatvoreno 9-Nov-18 Merni instrumenti - Digitalna elektronika 41

42 Merni instrumenti - Digitalna elektronika 42
Hijerarhija projekta sistem putanja podataka kontrola registri koda registri stanja kombinaciona logika multiplekser komparator registri logika prekidačke mreže 9-Nov-18 Merni instrumenti - Digitalna elektronika 42

43 Merni instrumenti - Digitalna elektronika 43
Pregled Dat je pregled o čemu će se govoriti na kursu Predstavljanje rešenja problema kombinacionim i/ili sekvencijalnim mrežama efektivno organizujući projekat hijerarhijski Korišćenje modernih alata za razvoj koji omogućavaju produktivan rad sa velikim projektima Korišćenje prednosti koje pružaju tehnike optimizacije U nastavku detaljnije... 9-Nov-18 Merni instrumenti - Digitalna elektronika 43


Download ppt "FTN Novi Sad Merni instrumenti - Digitalna elektronika"

Similar presentations


Ads by Google