Digitalne strukture: učno gradivo s predavanj

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Digitalne strukture: učno gradivo s predavanj"

Transcript

1 Digitalne strukture: učno gradivo s predavanj Tadej Kotnik Univerza v Ljubljani Fakulteta za elektrotehniko šolsko leto 2010/2011

2 Številski sistemi in kode

3 Številski sistemi Najpreprostejše štetje zareze (od 6000 pr.n.št.) Evropa Vzhodna Azija Južna Amerika

4 Številski sistemi Egipčanski sistem (od 3000 pr.n.št.) I črtica jarem vrv vodna lilija prst roke žaba mož se čudi

5 Številski sistemi Egipčanski sistem (od 3000 pr.n.št.) = 3244 = 21237

6 Številski sistemi Babilonski sistem (od 1900 pr.n.št.)

7 Številski sistemi Babilonski sistem (od 1900 pr.n.št.) = 55* * *60 0 =

8 Številski sistemi Rimski sistem (od 250 n.št.) I V X L C D M = * = 1910

9 Številski sistemi Indijsko arabski sistem = desetiški z ničlo (od 300 pr.n.št.)

10 Številski sistemi Dvojiški (binarni) in šestnajstiški (heksadecimalni) sistem (B65F) 16 = 11* * * *16 0 = = (46687) 10 ( ) 2 = = (10.375) 10

11 Številski sistemi Dvojiški sistem pretvorba iz desetiškega (41) 10 = = = (101001) 2

12 Kode in kodiranje Osnovni pojmi (digitalno) kodiranje: prirejanje števil, črk in drugih znakov v obliko, ki je primerna za zapis v dvojiškem sistemu dekodiranje: obratna pretvorba iz kodirane v osnovno obliko bit: osnovna enota informacije v dvojiškem sistemu bajt, byte, beseda: skupina osmih bitov

13 Kode in kodiranje Delitev kod kode številske (BCD = Binary Coded Decimal) splošne (alfanumerične) utežnostne neutežnostne ASCII Unicode reflektivne enokoračne druge

14 Kode in kodiranje Utežnostne številske kode število (digit) naravna BCD ( ) bikvinarna BCD ( ) naravna BCD koda: preprosto kodiranje in dekodiranje, tudi na pamet seštevanje ne deluje vedno: koda primerna za prenos številskih podatkov, a sama ne omogoča odkrivanja napak

15 Kode in kodiranje Utežnostne številske kode število (digit) naravna BCD ( ) bikvinarna BCD ( ) bikvinarna BCD koda: zaradi lastnosti pomikanja enic je uporabna za štetje... abakus Suan-pan, okoli leta 1200

16 Kode in kodiranje Utežnostne številske kode število (digit) naravna BCD ( ) bikvinarna BCD ( ) bikvinarna BCD koda:... z dodatnimi operacijami pa tudi za aritmetiko računalnik IBM 650, 1953

17 Kode in kodiranje Utežnostne številske kode število (digit) naravna BCD ( ) bikvinarna BCD ( ) bikvinarna BCD koda: parnost enic omogoča odkrivanje napak brez dodatnih sredstev

18 Kode in kodiranje Neutežnostne številske kode število (digit) reflektivna BCD koda reflektivna BCD koda: zaradi zrcalnosti omogoča preprosto določanje komplementa 25 = =

19 Kode in kodiranje Neutežnostne številske kode število (digit) enokoračna Grayeva koda število (digit) enokoračna Grayeva koda Grayeva koda: enokoračna (sosednji števili se razlikujeta le enem od štirih bitov) reflektivna (če z njo kodiramo šestnajstiška osmiška ali štiriška števila)

20 Kode in kodiranje Kodiranje kota / zasuka število (digit) binarna koda Grayeva koda binarni kodirnik Grayev kodirnik

21 Kode in kodiranje Alfanumerične kode 7-bitna ASCII koda 0 NUL SOH STX ETX EOT ENQ ACK VEL BS TAB LF VF FF CR SO SI 16 DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US 32 SP ! " # $ % ' ( ) * +, -. / : ; < = >? A B C D E F G H I J K L M N O 80 P Q R S T U V W X Y Z [ \ ] ^ _ 96 ` a b c d e f g h i j k l m n o 112 p q r s t u v w x y z { } ~ DEL

22 Kode in kodiranje Alfanumerične kode 7-bitna ASCII koda osmi bit - kontrola parnosti PAR = 57 = "9" = 64 = "@" = 87 = "W" = 123 = "{" = NAPAKA!

23 Kode in kodiranje Alfanumerične kode Unicode (UTF-8, UTF-16) 8-bitni Unicode: kot ASCII, a brez kontrole paritete znotraj same kode; tako omogoča 2 8 = 256 različnih znakov namesto 2 7 = 128, vendar je napake potrebno iskati z dodatnimi kontrolnimi kodami 16-bitni Unicode: dve besedi (bajta) namesto ene, s tem omogoča 2 16 = različnih znakov, kar pokrije: -latinske črke z diakritiki: à, á, â, ã, ä, å, æ, ă, ā,... -grške črke: α, β, γ, δ, ε, ζ, η, θ,... - cirilske črke: б, в, г, д, ж, з, и, й, л,......,ז, ה,ד,ב,א črke: -hebrejske ٣,... ٥,,ي جع,ؤ številke: -arabske črke in - matematične in druge posebne znake:,,,,,,,,,,...

24 Kode in kodiranje Odkrivanje in odpravljanje napak odkrivanje (detekcija): ugotavljamo le, ali je prišlo do napake odpravljanje (korekcija): določimo, kje je prišlo do napake in napačne podatke nadomestimo s pravilnimi

25 Kode in kodiranje Odkrivanje in odpravljanje napak z bitom za kontrolo parnosti odkrijemo vsako enojno napako (napako enega bita) v besedi (bajtu) če je verjetnost enojne napake majhna, je verjetnost dvojne napake (torej dveh enojnih napak hkrati) še precej manjša: p - verjetnost, da je v posameznem bitu prišlo do napake, P m - verjetnost, da je v posamezni besedi prišlo do m napak, primer: p = 10-4 P 1 = 7.994*10-4, P 2 = 2.798*10-7

26 Kode in kodiranje Odkrivanje in odpravljanje napak za določitev besede, ki vsebuje napako, kontroli parnosti bitov v besedi ("horizontalni" kontroli) dodamo še "vertikalno" kontrolo parnosti po besedah besede napaka: parnost v besedi se ne ujema kontrolni bit v besedi bit z napačno vrednostjo kontrolna beseda napaka: parnost v vertikali se ne ujema

27 Kode in kodiranje Odkrivanje in odpravljanje napak če želimo še večjo natančnost, uvedemo dodatne kontrole (parnost po diagonali, dodatne kontrolne besede,...) v "vertikalni kontroli" se namesto same parnosti uporabljajo tudi vsote po različnih modulih ali komplement takšne vsote (checksum, ciklična kontrola,...) pri večji, predvsem pa spremenljivi pogostosti napak je smiselno prilagajati tudi pogostost kontrole prilagodljiva kontrola parnosti je osnova odkrivanja in odpravljanja napak tudi v najučinkovitejših sodobnih kodah za prenos podatkov: turbo kode (mobilna telefonija, satelitske komunikacije), LDPC kode (WiMAX, digitalna televizija)

28 Booleova algebra

29 Booleova algebra Izjave in Booleove spremenljivke vsako izjavo obravnavamo kot spremenljivko če je izjava resnična (pravilna), ima ta spremenljivka vrednost 1, če je neresnična (nepravilna), pa vrednost 0 pravimo, da gre za Booleovo spremenljivko George Boole ( )

30 Booleova algebra Izjave in Booleove spremenljivke vsako izjavo obravnavamo kot spremenljivko če je izjava resnična (pravilna), ima ta spremenljivka vrednost 1, če je neresnična (nepravilna), pa vrednost 0 pravimo, da gre za Booleovo spremenljivko naslovnica Booleove knjige The Mathematical Analysis of Logic

31 Booleova algebra Izjave in Booleove spremenljivke tip spremenljivke angleško zaloga vrednosti kompleksna complex vsa kompleksna števila ( ) realna real vsa realna števila ( ) celoštevilska integer vsa cela števila ( ) Booleova Boolean števili 0 in 1

32 Booleova algebra Operacije z izjavami disjunkcija = logično seštevanje = ALI (angl. OR); simboli +, V, ll konjunkcija = logično množenje = IN (angl. AND); simboli, Λ, negacija = logično zanikanje = NE (angl. NOT); simbola, vhodni izjavi izhodna izjava ČE dežuje ALI slaba vremenska napoved POTEM vzamem dežnik operacija med vhodnima izjavama (dežuje) + (slaba vremenska napoved) = (vzamem dežnik)

33 Booleova algebra Operacije z izjavami disjunkcija = logično seštevanje = ALI (angl. OR); simboli +, V, ll konjunkcija = logično množenje = IN (angl. AND); simboli, Λ, negacija = logično zanikanje = NE (angl. NOT); simbola, (vzamem dežnik) = (dežuje) + (slaba vremenska napoved) dežuje slaba napoved ALI (+) vzamem dežnik dežuje slaba napoved dežnik NE NE NE NE DA DA DA NE DA DA DA DA pravilnostna tabela za disjunkcijo

34 Booleova algebra Operacije z izjavami disjunkcija = logično seštevanje = ALI (angl. OR); simboli +, V, ll konjunkcija = logično množenje = IN (angl. AND); simboli, Λ, negacija = logično zanikanje = NE (angl. NOT); simbola, (vzamem dežnik) = (dežuje) + (slaba vremenska napoved) dežuje slaba napoved ALI (+) vzamem dežnik x y x + y pravilnostna tabela za disjunkcijo

35 Booleova algebra Operacije z izjavami disjunkcija = logično seštevanje = ALI (angl. OR); simboli +, V, ll konjunkcija = logično množenje = IN (angl. AND); simboli, Λ, negacija = logično zanikanje = NE (angl. NOT); simbola, (vzamem dežnik) =((dežuje) + (slaba vremenska napoved)) ((peljem se z avtomobilom)) dežuje slaba napoved avtomobil ALI (+) NE ( ) IN ( ) vzamem dežnik x y x y x x pravilnostni tabeli za konjunkcijo in negacijo

36 Booleova algebra Operacije z izjavami disjunkcija = logično seštevanje = ALI (angl. OR); simboli +, V, ll konjunkcija = logično množenje = IN (angl. AND); simboli, Λ, negacija = logično zanikanje = NE (angl. NOT); simbola, vrstni red izvajanja operacij: - brez oklepajev: najprej negacija, nato konjunkcija, na koncu disjunkcija - morebitne oklepaje upoštevamo enako kot v običajni aritmetiki - negacija nad izrazom z več spremenljivkami se izvaja, kot da je izraz v oklepajih - kot pri običajnem množenju tudi tukaj znak včasih opustimo x z + y z + x y z x (z + y) z + x y z x y =(x y) x+y = (x+y) xy = x y xz + (yz + xy)z + zx

37 Booleova algebra Aksiomi in teoremi aksiomi (postulati): pravila, ki se med seboj ne izključujejo in jih privzamemo brez preverjanja teoremi: dodatna pravila, ki jih lahko izpeljemo iz aksiomov Huntingtonovi postulati: sistem aksiomov (eden od možnih), ki omogoča postavitev pravil za sistem operacij {+,, } P1 x +0 = x P3 x + y = y + x nevtralnost P1' x 1 = x P3' x y = y x P2 x + x = 1 komplementarnost P4 (x + y)+z = x +(y + z) P2' x x = 0 P4' (x y) z = x (y z) P5 x (y + z) = x y + x z P5' x + y z = (x + y) (x + z) te lastnosti ustrezajo algebrski strukturi (kolobarju), odtod "Booleova algebra" komutativnost asociativnost distributivnost

38 Booleova algebra Vennovi diagrami z Vennovimi diagrami grafično ponazorimo Booleove spremenljivke in operacije med njimi kot množice disjunkcija med Booleovima spremenljivkama je ekvivalentna uniji med množicama, konjunkcija preseku, negacija pa komplementu x x konstanta 1 konstanta 0 funkcija f(x)=x f(x) = x x y x y x y x z y f(x,y) = xy f(x,y) = x + y f(x,y) = xy f(x,y,z) = xy + z

39 Booleova algebra Trije načini dokazovanja teoremov iz aksiomov in že dokazanih teoremov s pravilnostno tabelo (popolna indukcija) z Vennovimi diagrami Teorem T1: x + 1 = 1 Dokaz iz aksiomov: x + 1 = (x + 1) 1 (uporabili smo P1': x 1 = x) = (x + 1) (x + x) (P2: x + x = 1) = x + 1 x (P5': x + y z = (x + y) (x + z) = x + x 1 (P3': x y = y x) = x + x (P1': x 1 = x) = 1 (P2: x + x = 1)

40 Booleova algebra Trije načini dokazovanja teoremov iz aksiomov in že dokazanih teoremov s pravilnostno tabelo (popolna indukcija) z Vennovimi diagrami Teorem T1: x + 1 = 1 Dokaz s pravilnostno tabelo: x 1 x

41 Booleova algebra Trije načini dokazovanja teoremov iz aksiomov in že dokazanih teoremov s pravilnostno tabelo (popolna indukcija) z Vennovimi diagrami Teorem T1: x + 1 = 1 Dokaz z Vennovimi diagrami: x + = funkcija f(x)=x konstanta 1 konstanta 1

42 Booleova algebra Teoremi z eno in dvema spremenljivkama T1 x +1 = 1 T2 x + x = x T3 x x = x T4 x 0 = 0 T5 x = x T6 x + x y = x T7 x (x + y)= x T8 (x + y) y = x y T9 x y + y = x + y T10 x + y + x = 1 T11 x y x = 0 T12 x + y = x y T13 x y = x + y

43 Preklopne funkcije in logična vrata

44 Preklopne funkcije in logična vrata Načini zapisa Booleove (preklopne) funkcije zapis v eksplicitni (analitični) obliki: - za preproste funkcije (ena, dve, tri spremenljivke): f(a,b), f(x,y,z) -za funkcije n spremenljivk: f(x 1,x 2,x 3,...,x n ) zapis s pravilnostno tabelo zapis z Vennovim diagramom zapis s Karnaughovim diagramom (K-diagramom) f(x,y)= xy x y f(x,y) x y

45 Preklopne funkcije in logična vrata K-diagram za funkcije dveh in treh spremenljivk kroge Vennovega diagrama spremenimo v pravokotnike in jih sistematično razporedimo x 1 x x 1 0 x 1 x 2 x 1 x 2 x 1 x 2 x 2 1 x 1 x 2 x 1 x 2 x 3 x 1 x x 1 x 2 x 2 x 1 0 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 x 3 x 3 1 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3

46 Preklopne funkcije in logična vrata K-diagram za funkcije štirih spremenljivk x 3 x 4 x 1 x x 2 x 1 00 x 4 01 x

47 Preklopne funkcije in logična vrata K-diagram za funkcije petih spremenljivk x 4 x 5 x 2 x x 1 = 0 x 4 x 5 x 2 x x 1 =

48 Preklopne funkcije in logična vrata K-diagram za funkcije petih spremenljivk

49 Preklopne funkcije in logična vrata K-diagram za funkcije šestih spremenljivk

50 Preklopne funkcije in logična vrata Minterm in maksterm minterm funkcije f(x 1,x 2,x 3,...,x n ): konjunkcija (Booleov produkt) vseh spremenljivk funkcije, v kateri vsaka spremenljivka nastopa enkrat, bodisi v osnovni (nenegirani) ali v negirani obliki mintermi f(x 1,x 2 ): m 0 =x 1 x 2, m 1 =x 1 x 2, m 2 =x 1 x 2 in m 3 =x 1 x 2 maksterm funkcije f(x 1,x 2,x 3,...,x n ): disjunkcija (Booleova vsota) vseh spremenljivk funkcije, v kateri vsaka spremenljivka nastopa enkrat, bodisi v osnovni (nenegirani) ali v negirani obliki makstermi f(x 1,x 2 ): M 0 =x 1 +x 2, M 1 =x 1 +x 2, M 2 =x 1 +x 2 in M 3 =x 1 +x 2

51 Preklopne funkcije in logična vrata Minterm in maksterm v K-diagramu x 1 x 2 x x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 1 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x vsak minterm predstavlja eno polje K-diagrama (odtod tudi ime člen, ki ustreza minimalni površini) vsak maksterm predstavlja vsa polja K-diagrama razen enega (člen, ki ustreza maks 0 m 0 m 2 m 6 m 4 1 m 1 m 3 m 7 m 5

52 Preklopne funkcije in logična vrata Minterm in maksterm v K-diagramu x 1 x 2 x x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 1 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x 3 x 1 x 2 x m 0 m 2 m 6 m 4 M 2 =x 1 +x 2 +x 3 1 m 1 m 3 m 7 m 5 vsak minterm predstavlja eno polje K-diagrama (odtod tudi ime člen, ki ustreza minimalni površini) vsak maksterm predstavlja vsa polja K-diagrama razen enega (člen, ki ustreza maksimalni površini) negacija vsakega minterma je eden od makstermov, negacija vsakega maksterma pa eden od mintermov: m i = M 2 n -1-i, M i = m 2 n -1-i

53 Preklopne funkcije in logična vrata Popolni normalni (kanonični) obliki zapisa preklopne funkcije popolna disjunktivna normalna oblika (PDNO): vsota mintermov popolna konjunktivna norm. oblika (PKNO): produkt makstermov

54 Preklopne funkcije in logična vrata Pretvorba iz PDNO v PKNO in obratno f(x 1,x 2,x 3 )= m 1 + m 4 + m 7 = M 7 M 5 M 4 M 2 M 1 m M f(x 1,x 2,x 3,x 4 )= M 1 M 4 M 7 M 11 M 12 M 14 M 15 = m 15 + m 13 + m 12 + m 10 + m 9 + m 7 + m 6 + m 5 + m 2 M m

55 Preklopne funkcije in logična vrata Zapis PDNO in PKNO iz pravilnostne tabele x y z f(x,y,z) PDNO: poiščemo vse vrstice, v katerih funkcija zavzame vrednost 1; zapišemo vsoto njim ustreznih mintermov (0 - sprem. negiramo, 1 - ne negiramo) f(x,y,z) = xyz + xyz + xyz + xyz + xyz = m 1 + m 2 + m 3 + m 6 + m 7 PKNO: poiščemo vse vrstice, v katerih funkcija zavzame vrednost 0; zapišemo produkt njim ustreznih makstermov (1 - sprem. negiramo, 0 - ne negiramo) f(x,y,z) = (x+y+z)(x+y+z)(x+y+z) = M 7 M 3 M 2

56 Preklopne funkcije in logična vrata Zapis PDNO in PKNO iz pravilnostne tabele x y z f(x,y,z) PDNO: poiščemo vse vrstice, v katerih funkcija zavzame vrednost 1; zapišemo vsoto njim ustreznih mintermov (0 - sprem. negiramo, 1 - ne negiramo) f(x,y,z) = xyz + xyz + xyz + xyz + xyz = m 1 + m 2 + m 3 + m 6 + m 7 PKNO: poiščemo vse vrstice, v katerih funkcija zavzame vrednost 0; zapišemo produkt njim ustreznih makstermov (1 - sprem. negiramo, 0 - ne negiramo) f(x,y,z) = (x+y+z)(x+y+z)(x+y+z) = M 7 M 3 M 2

57 Preklopne funkcije in logična vrata Zapis PDNO in PKNO iz K-diagrama x 1 x 2 x PDNO: poiščemo vsa polja, v katerih je zapisana vrednost 1; zapišemo vsoto mintermov, ki jih predstavljajo ta polja f(x 1,x 2,x 3 )= x 1 x 2 x 3 +x 1 x 2 x 3 +x 1 x 2 x 3 +x 1 x 2 x 3 = m 2 + m 6 + m 3 + m 5 PKNO: poiščemo vsa polja, v katerih je zapisana vrednost 0; zapišemo produkt makstermov, ki jih predstavljajo komplementi teh polj f(x 1,x 2,x 3 )= =(x 1 +x 2 +x 3 )(x 1 +x 2 +x 3 )(x 1 +x 2 +x 3 )(x 1 +x 2 +x 3 ) = M 7 M 3 M 6 M 0

58 Preklopne funkcije in logična vrata Veitchev diagram x x 1 1 x x x 2 m 3 m 1 0 m 0 m 2 = m 0 m m 2 m 0 1 m 1 m 3 x 2 m 1 m 3 Veitchev diagram za f(x 1,x 2 ) K-diagram za f(x 1,x 2 ) ekvivalentni Veitchev diagram

59 Preklopne funkcije in logična vrata Veitchev diagram x 1 x 1 x 2 x 2 m 6 m 7 m 3 m 2 x4 m 4 m 5 m 1 m 0 x 3 Veitchev diagram za f(x 1,x 2,x 3 ) x 3 Veitchev diagram za f(x 1,x 2,x 3,x 4 )

60 Preklopne funkcije in logična vrata Zapis preklopnih funkcij z logičnimi vrati disjunkcija konjunkcija negacija (ALI, OR) (IN, AND) (NE, NOT) mednarodni standard IEC ameriški standard ANSI/IEEE 91,91a

61 Preklopne funkcije in logična vrata Zapis preklopnih funkcij z logičnimi vrati (simbolna shema) f(x,y,z) = xz + xyz x 1 pravimo, da smo funkcijo realizirali v dveh nivojih ("dvonivojska logika") y z nivo f(x,y,z) 0. nivo 1. nivo

62 Preklopne funkcije in logična vrata Zapis preklopnih funkcij z logičnimi vrati (simbolna shema) f(x,y,z) = xz + xyz x pri risanju simbolne sheme negatorje pogosto izpustimo, tako spremenljivke kot njihove negirane vrednosti pa prikažemo kot vhodne signale y z 1 f(x,y,z) x z 2. nivo 1. nivo

63 Preklopne funkcije in logična vrata Preklopne funkcije dveh spremenljivk (operatorji) x 1 x 2 f 0 f 1 f 2 f 3 f 4 f 5 f 6 f 7 f 8 f 9 f 10 f 11 f 12 f 13 f 14 f 15 0 x 1 x 2 x 2 x trivialne funkcije: dejansko konstante ali funkcije ene spremenljivke osnovne funkcije: + (OR), (AND), (NOR), (NAND) izpeljane funkcije: (XOR), (NXOR), dve implikaciji in dve negirani implikaciji

64 Preklopne funkcije in logična vrata Funkcijsko polni sistemi funkcijsko poln sistem: nabor preklopnih funkcij dveh spremenljivk, ki omogoča zapis poljubne preklopne funkcije ker ima vsaka preklopna funkcija svojo pravilnostno tabelo, iz vsake pravilnostne tabele pa lahko zapišemo funkcijo v PDNO, je sistem {+,, } funkcijsko poln to je elementarni FPS tudi sistem {+, } je funkcijsko poln, saj lahko vsako konjunkcijo nadomestimo s kombinacijo disjunkcije in negacije: xy = x + y in odtod xy = x + y prav tako je {, } funkcijsko poln sistem, saj lahko disjunkcijo nadomestimo s kombinacijo konjunkcije in negacije: x + y = xy in odtod x + y = xy

65 Preklopne funkcije in logična vrata Funkcijsko polni sistemi Ali obstajajo funkcijsko polni sistemi z eno samo funkcijo? sistem { } je funkcijsko poln: negacija: x x = xx = x + x = x disjunkcija: (x x) (y y) = x y = x y = x + y = x + y konjunkcija:(x y) (x y) = (x y) = xy = xy tudi sistem { } je funkcijsko poln: negacija: x x = x + x = xx = x konjunkcija:(x x) (y y) = x y = x + y = xy disjunkcija: (x y) (x y) = (x y) = x + y

66 Preklopne funkcije in logična vrata Funkcijsko polni sistemi poljubno preklopno funkcijo je torej mogoče realizirati izključno z vrati NAND, pa tudi izključno z vrati NOR poleg sistemov { }, { }, {, } in {+, }, za katere smo že pokazali, da so FPS, sta takšna tudi sistema {,+,0} in {,,1} podobne dualne povezave, kot sta de Morganova teorema pri paru (,+), imamo tudi pri paru (, ) in pri paru (, ), pri slednjem paru pa sta funkciji hkrati še negaciji druga druge: (,+) (, ) (, ) x + y = x y x y = x y x y = x y = x y x y = x + y x y = x y x y = x y = x y

67 Preklopne funkcije in logična vrata Zapis preklopnih funkcij z logičnimi vrati (nadaljevanje) NOR NAND XOR (EXOR) NXOR (XNOR, EQU) IEC =1 =1 ANSI/IEEE 91,91a

68 Preklopne funkcije in logična vrata Dvovhodna logična vrata x y 1 +(x,y)=x+y x y 1 (x,y)=x+y = x y x y (x,y)=x y x y (x,y)=x y = x y x y =1 (x,y)=x y x y =1 (x,y)=x y = x y enakovredna zapisa za dvovhodni NXOR (EQU) x y =

69 Preklopne funkcije in logična vrata Tri- in večvhodna logična vrata x 1 x 1 y z x +(x,y,z)=x+y+z y z x (x,y,z)=x+y+z (x y) z = x+y z = x+y+z y z (x,y,z)=x y z y z (x,y,z)=x y z (x y) z x =1 x =1 y z (x,y,z)=x y z y z (x,y,z)=x y z (x y) z

70 Preklopne funkcije in logična vrata Pretvorba binarnega zapisa števila v Grayevo kodo g i = b i b i+1 b n b n-1... b 2 b 1 b 0 g n g n-1... g 2 g 1 g 0 binarna Grayeva b 3 b 2 b 1 =1 =1 b 0 =1 g 3 =b 3 b 4 =b 3 0=b 3 g 2 g 1 g 0

71 Preklopne funkcije in logična vrata Poenostavljanje preklopnih funkcij PDNO in PKNO je preprosto zapisati in pretvarjati iz druge v drugo, a za realizacijo z logičnimi vrati potrebujemo veliko število le-teh, in to kar treh različnih vrst (AND, OR, NOT) v praksi želimo preklopno funkcijo realizirati čim bolj preprosto: (i) s čim manjšim skupnim številom vrat in/ali (ii) s čim manj različnimi vrstami vrat za (i) minimiziramo funkcijo; pri PDNO uporabimo teorem xy + xy = x(y + y) = x v pomoč pa nam je tudi K-diagram za (ii) prevedemo operatorje; FPS {+,, } nadomestimo z bolj primernim za realizacijo obravnavane funkcije: {, }, {+, }, { } ali { }, včasih tudi {,,1} (npr. pretvorba binarno-gray) ali {,+,0}

72 Preklopne funkcije in logična vrata Minimizacija sosednja minterma: minterma (konjunktivna izraza), ki se razlikujeta po negaciji natanko ene spremenljivke sosednja minterma lahko skrajšamo v konjunktivni izraz, ki vsebuje eno spremenljivko manj: x 1 x 2 x 3 + x 1 x 2 x 3 = x 1 x 3 (x 2 + x 2 ) = x 1 x 3 x 1 x 2 x 3 x 4 + x 1 x 2 x 3 x 4 = x 1 x 2 x 4 (x 3 + x 3 ) = x 1 x 2 x 4 če krajši izraz še vedno vsebuje člena, ki se razlikujeta po eni sami negaciji, lahko postopek ponovimo: x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 = x 1 x 3 (x 2 + x 2 )+ x 1 x 3 (x 2 + x 2 ) = x 1 x 3 + x 1 x 3 = x 1 (x 3 + x 3 ) = x 1

73 Preklopne funkcije in logična vrata Sosednost v K-diagramu sosednji polji, ki obe vsebujeta enici, sta sosednja minterma: tudi preko robov: x 3 x 4 x 1 x x 1 x 200 x 3 x sosednost preko robov je jasno razvidna, če diagramu dodamo še dve njegovi kopiji: x 1 x x 3 x

74 Preklopne funkcije in logična vrata Minimizacija s K-diagramom glavni vsebovalnik (GV): 2 k sosednjih mintermov v skupini polj, ki je pravokotne oblike; tudi minterm brez sosedov je GV (k=0) ključni minterm (KM): minterm, vsebovan le v enem GV potrebni GV (PGV): GV, ki vsebuje x 1 x 2 vsaj en KM x 3 x postopek minimizacije: funkcijo zapišemo s K-diagramom,

75 Preklopne funkcije in logična vrata Minimizacija s K-diagramom glavni vsebovalnik (GV): 2 k sosednjih mintermov v skupini polj, ki je pravokotne oblike; tudi minterm brez sosedov je GV (k=0) ključni minterm (KM): minterm, vsebovan le v enem GV potrebni GV (PGV): GV, ki vsebuje x 1 x 2 vsaj en KM x 3 x postopek minimizacije: funkcijo zapišemo s K-diagramom, 2. označimo vse GV,

76 Preklopne funkcije in logična vrata Minimizacija s K-diagramom glavni vsebovalnik (GV): 2 k sosednjih mintermov v skupini polj, ki je pravokotne oblike; tudi minterm brez sosedov je GV (k=0) ključni minterm (KM): minterm, vsebovan le v enem GV potrebni GV (PGV): GV, ki vsebuje x 1 x 2 vsaj en KM x 3 x postopek minimizacije: funkcijo zapišemo s K-diagramom, 2. označimo vse GV, 3. označimo vse KM,

77 Preklopne funkcije in logična vrata Minimizacija s K-diagramom glavni vsebovalnik (GV): 2 k sosednjih mintermov v skupini polj, ki je pravokotne oblike; tudi minterm brez sosedov je GV (k=0) ključni minterm (KM): minterm, vsebovan le v enem GV potrebni GV (PGV): GV, ki vsebuje x 1 x 2 vsaj en KM x 3 x postopek minimizacije: 1. funkcijo zapišemo s K-diagramom, 2. označimo vse GV, 3. označimo vse KM, označimo vse PGV in zapišemo vsoto členov, ki jih pokrivajo; to je minimalna disjunktivna normalna oblika (MDNO) preklopne funkcije f(x 1,x 2,x 3,x 4 ) = x 1 x 2 x 3 + x 1 x 2 x 4 + x 1 x 2 x 3 + x 1 x 2 x 4

78 Preklopne funkcije in logična vrata Prevedba operatorjev iz {+,, } v { } za prevedbo iz DNO uporabimo naslednjiformuli(teorema): x 1 x 2 x 3...x k + y 1 y 2 y 3...y m z 1 z 2 z 3...z n = x 1 x 2 x 3...x k + y 1 y 2 y 3...y m z 1 z 2 z 3...z n = x 1 x 2 x 3...x k y 1 y 2 y 3...y m... z 1 z 2 z 3...z n = (x 1 x 2 x 3...x k, y 1 y 2 y 3...y m,..., z 1 z 2 z 3...z n ) = ( (x 1,x 2,x 3,...,x k ), (y 1,y 2,y 3,...,y m ), (z 1,z 2,z 3,...,z n )) in x = x x primer: f(x 1,...,x 4 )= x 1 x 2 x 3 + x 1 x 3 x 4 + x 1 x 2 x 3 + x 1 x 3 x 4 = ( (x 1,x 2,x 3 ), (x 1,x 3,x 4 ), (x 1,x 2,x 3 ), (x 1,x 3,x 4 )) = ( (x 1,x 2, (x 3,x 3 )), (x 1,x 3, (x 4,x 4 )), ( (x 1,x 1 ),x 2,x 3 ), ( (x 1,x 1 ), (x 3,x 3 ), (x 4,x 4 )))

79 Preklopne funkcije in logična vrata Posebne funkcije linearne funkcije: f(x 1,x 2,...,x n )= a 0 a 1 x 1 a 2 x 2... a n x n, a i {0,1} pozitivno monotone funkcije: x 1 y 1, x 2 y 2,..., x n y n f(x 1,x 2,...,x n ) f(y 1,y 2,...,y n ) lokalno simetrične funkcije glede na x i in x k : f(x 1,x 2,...,x i,...,x k,...,x n ) = f(x 1,x 2,...,x k,...,x i,...,x n ) (pišemo x i ~ x k ) globalno simetrične funkcije: simetrične glede na vsak par {x i,x k }, t.j. za vsak par {x i,x k }velja x i ~ x k zapis: S a,b,... (x 1,x 2,...x n ) funkcija, ki v PDNO vsebuje vse minterme z a nenegiranimi spremenljivkami, vse minterme z b nenegiranimi spremenljivkami,... S 3 (x 1,x 2,x 3 ) = x 1 x 2 x 3 S 1 (x 1,x 2,x 3 ) = x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 S 0,3 (x 1,x 2,x 3,x 4 ) = x 1 x 2 x 3 x 4 + x 1 x 2 x 3 x 4 + x 1 x 2 x 3 x 4 + x 1 x 2 x 3 x 4 + x 1 x 2 x 3 x 4

80 Preklopne funkcije in logična vrata Posebne funkcije pragovna funkcija: f(x 1,x 2,...,x n ), za katero obstajata takšna množica celih števil {w 1,w 2,...,w n } in takšno celo število P, da velja številom w 1,w 2,...,w n pravimo uteži, številu P pa prag funkcije. pragovni element: skupina logičnih vrat, katere izhod f je pragovna funkcija vhodov {x 1,x 2,...,x n }

81 Preklopne funkcije in logična vrata Živčna celica (nevron) dendrit aksonski končič dve stanji: aktivno (oddaja signal) in pasivno (ne oddaja) povezave med nevroni so sinapse; na eni strani je končič aksona, na drugi dendrit prevajanje vselej v smeri dendrit soma akson sinapse ekscitacijske (signal na aksonu - signal na dendritu) ali inhibicijske (signal "negirajo") soma glede na signale z dendritov in glede na svoj prag pošlje živčni signal naprej v akson (aktivira nevron) ali ne jedro soma akson trije nevroni v človeških možganih Photo Researchers, 2006

82 Preklopne funkcije in logična vrata Formalni nevron pragovni model nevrona formalni nevron je pragovni element, s katerim lahko približno opišemo ali simuliramo obnašanje dejanskega biološkega nevrona izberemo število sinaps (n), njihovo naravo (torej množico {w 1,w 2,...,w n }, kjer za ekscitacijske sinapse izberemo w i > 0, za inhibicijske w i <0) in prag aktivacije nevrona (P) zapišemo pravilnostno tabelo, iz nje DNO in odtod realizacijo z logičnimi vrati torej realizacijo pragovnega elementa x 1 x 2 x 3 Σw i x i y

83 Preklopne funkcije in logična vrata Zakasnitve v sistemih logičnih vrat in hazard pri dosedanji obravnavi smo privzeli, da se logična vrata na spremembo vrednosti na (enem ali več) vhodih odzovejo brez zakasnitve da se torej sočasno s spremembo x oziroma x 1, x 2,..., x n spremeni tudi f(x) oziroma f(x 1, x 2,..., x n ) pri dejanskih logičnih vratih pa so ne glede na tehnološko izvedbo vselej prisotne zakasnitve prehodni pojav: časovni potek vrednosti izhodne in notranjih spremenljivk v strukturah, sestavljenih iz logičnih vrat, od trenutka, ko se spremeni vrednost na vhodu, do trenutka, ko se vrednost na izhodu ustali na pravilni vrednosti hazard: možnost, da ob spremembi na vhodu pride do začasne spremembe izhoda v vrednost, ki je glede na vrednosti na vhodih nepravilna

84 Preklopne funkcije in logična vrata Statični in dinamični hazard statični hazard: možnost, da ob spremembi vhoda, ob kateri se pravilna vrednost izhoda ne spremeni, pride do začasne spremembe izhoda na nepravilno vrednost in nato do vrnitve na pravilno vrednost dinamični hazard: možnost, da ob spremembi vhoda, ob kateri se pravilna vrednost izhoda spremeni, ta sprememba sicer nastopi, nato pa pride do začasnega preskoka nazaj na nepravilno vrednost in do ponovne vrnitve na pravilno vrednost; preskokov pred ustalitvijo na pravilni vrednosti je lahko tudi več

85 Preklopne funkcije in logična vrata Statični hazard x z y 1 a c b 1 f sprememba (x,y,z) iz (1,1,1) v (1,1,0): x(t) y(t) z(t) a(t) f(x,y,z) = xz + yz f(1,1,1) = = 1 f(1,1,0) = = 1 b(t) c(t) f(t)

86 Preklopne funkcije in logična vrata Statični hazard K-diagram vezja: x xy z z 1 1 f y f(x,y,z) = xz + yz f(1,1,1) = = 1 f(1,1,0) = = 1 hazard odpravimo tako, da dodamo člen, ki pokrije problematični prehod: f(x,y,z) = xz + yz + xy

87 Preklopne funkcije in logična vrata Statični hazard K-diagram vezja: x xy z z 1 f y hazard odpravimo tako, da dodamo člen, ki pokrije problematični prehod: f(x,y,z) = xz + yz + xy

88 Preklopne funkcije in logična vrata Dinamični hazard

89 Preklopne funkcije in logična vrata Tehnološke izvedbe preklopnih funkcij preklopne funkcije izvedemo z električno krmiljenimi stikali -odzačetka 1930-ih: releji - od sredine 1940-ih: elektronke (hitrejše, brez gibljivih delov) -odzačetka 1950-ih: tranzistorji (še hitrejši, manjši in cenejši) -odzačetka 1960-ih: integrirana vezja (vsi tranzistorji, ostali elementi logičnih vrat in povezave med njimi združeni v skupno strukturo iz trdnih polprevodnih snovi)

90 Preklopne funkcije in logična vrata Tehnološke izvedbe preklopnih funkcij od sredine 1950-ih: RTL tehnologija (Resistor-Transistor Logic) iz bipolarnih tranzistorjev in uporov; od konca 1950-ih: DTL (Diode-Transistor Logic) iz bipolarnih tranzistorjev, diod in uporov; od začetka 1960-ih: TTL (Transistor-Transistor Logic) iz bipolarnih tranzistorjev in uporov; v integriranih vezjih hitro izrinila starejši tehnologiji od sredine 1960-ih: NMOS / PMOS (n-channel /p-channel Metal-Oxide Semiconductor) iz unipolarnih tranzistorjev (MOS FET MOS Field-Effect Transistor) od konca 1970-ih: CMOS (Complementary MOS) iz parov NMOS in PMOS tranzistorjev z zrcalno simetričnimi karakteristikami; danes že skoraj povsem izrinila TTL

91 Preklopne funkcije in logična vrata Izvedba preklopnih funkcij v tehnologiji CMOS n-kanalni MOSFET tranzistor (NMOS) p-kanalni MOSFET tranzistor (PMOS) komplementarna vezava (CMOS) U GS >0 in I DS >0 U DS >0 sicer I DS =0 U GS <0 in I DS <0 U DS <0 sicer I DS =0 x T 1 T 2 f(x) 0V skl raz 5V 5V raz skl 0V

92 Preklopne funkcije in logična vrata Izvedba preklopnih funkcij v tehnologiji CMOS NOT (negator) v izvedbi CMOS x T 1 T 2 f(x) 0 S R 1 1 R S 0 NAND v izvedbi CMOS x y T 1 T 2 T 3 T 4 f(x,y) 0 0 S R R S S R S R R S R S R S S R 0 AND v izvedbi CMOS

93 Preklopne funkcije in logična vrata Starejše tehnološke izvedbe preklopnih funkcij vrata NAND v RTL tehnologiji (prototip) vrata NAND v DTL tehnologiji (prototip) vrata NAND v TTL tehnologiji (prototip) vrata NAND v TTL tehnologiji (primer dejanske izvedbe)

94 Preklopne funkcije in logična vrata Integrirana vezja razporeditev logičnih vrat NOR v integriranem vezju SN74HC02N (štirikratni dvovhodni NOR proizvajalca Texas Instruments z izvedbo logičnih vrat v tehnologiji CMOS in z izvedbo ohišja v tehnologiji DIP)

95 Preklopne funkcije in logična vrata Poimenovanje integriranih vezij 1. predpona (neobvezna), 1- do 3-mestna črkovna: proizvajalec 2. predpona, 2-mestna številska: pogoji za pravilno delovanje 1. del korena, 1- do 3-mesten črkovni: tehnološka izvedba logičnih vrat 2. del korena, 2- ali 3-mesten številski: funkcija vezja pripona (neobvezna), 1- do 3-mestna črkovna: tehnološka izvedba ohišja SN74HC02N

96 Preklopne funkcije in logična vrata Poimenovanje integriranih vezij 1. predpona (neobvezna), 1- do 3-mestna črkovna: proizvajalec 2. predpona, 2-mestna številska: pogoji za pravilno delovanje SN74HC02N AD Analog Devices DP National Semiconductor F,FC Fairchild MC Motorola PA Intel SA Signetics SC,SE Philips SN Texas Instruments zunanja temperatura od 55 C do +125 C ("vojaška izvedba") 74 zunanja temperatura od 40 C do +85 C ("civilna izvedba"); nekaj nižji maksimalni dovoljeni tokovi kot pri "54"

97 Preklopne funkcije in logična vrata Poimenovanje integriranih vezij 1. del korena, 1- do 3-mesten črkovni: tehnološka izvedba logičnih vrat koda LS AS ALS F HC HCT AHC AHCT ALVC AUC tehnologija TTL TTL TTL TTL CMOS CMOS CMOS CMOS CMOS CMOS napetost (V) vrata f(x,y) = x y : zakasnitev (ns) izh. tok pri f = 0 (ma) izh. tok pri f = 1 (ma) poraba moči (mw) a) 0.01 a) 0.03 a) 0.03 a) 0.01 a) 0.01 a) SN74HC02N 0.55/ 0.38/ 0.06/ 0.07/ 0.54/ 0.05/ MHz b) MHz b) MHz b) MHz b) MHz b) MHz b) a) v stacionarnem stanju b) pri periodičnem preklapljanju

98 Preklopne funkcije in logična vrata Poimenovanje integriranih vezij 2. del korena, 2- ali 3-mesten številski: funkcija vezja SN74HC02N 00 4x 2-vhodni NAND 02 4x 2-vhodni NOR 08 4x 2-vhodni AND 10 3x 3-vhodni NAND 11 3x 3-vhodni AND 20 2x 4-vhodni NAND 21 2x 4-vhodni AND 27 3x 3-vhodni NOR 32 4x 2-vhodni OR 86 4x 2-vhodni XOR BCD kodirnik 10/4 s prioriteto 148 binarni kodirnik 8/3 s prioriteto vhodni multipleksor 155 2x 4-izhodni demultipleksor 85 4-bitni primerjalnik velikosti bitni paralelni seštevalnik bitna 8-operacijska ALU 73 2x spominska celica JK 79 2x spominska celica D 91 8-bitni pomikalni register......

99 Preklopne funkcije in logična vrata Poimenovanje integriranih vezij pripona (neobvezna), 1- do 3-mestna črkovna: tehnološka izvedba ohišja J,N Y F,FK D,DB,W,PW... DIP (dual in-line package) SIP (single in-line package) PGA (pin grid array) SMD (surface-mount device)... SN74HC02N

100 Kombinacijska vezja

101 Kombinacijska vezja Gradniki nizke, srednje in visoke stopnje integracije kombinacijsko vezje (angl. combinational logic circuit): vezje, katerega izhodi so Booleove funkcije Booleovih vhodnih spremenljivk kombinacijska vezja so sestavljena iz logičnih vrat (AND, OR, XOR, NAND, NOR, NXOR,...), ki smo jih spoznali v prejšnjem poglavju integrirana vezja, ki vsebujejo do 10 logičnih vrat (t.j. nekaj deset tranzistorjev), uvrščamo med gradnike nizke stopnje integracije (angl. Small Scale Integration (SSI) circuits)

102 Kombinacijska vezja Gradniki nizke, srednje in visoke stopnje integracije v tem poglavju bomo spoznali tipične gradnike srednje stopnje integracije (angl. Medium Scale Integration (MSI)), ki vsebujejo do 100 logičnih vrat: - kodirnike in dekodirnike, - multipleksorje in demultipleksorje, - primerjalnike in seštevalnike, - aritmetično-logične enote (ALU) v prihodnjem poglavju pa bomo govorili o tipičnih gradnikih visoke stopnje integracije (angl. Large Scale Integration (LSI)), ki vsebujejo do vrat; danes so tipični predstavniki preprosta programirljiva vezja (PROM, EPROM, EEPROM, PAL, PLA,...)

103 Kombinacijska vezja Gradniki nizke, srednje in visoke stopnje integracije vezja SSI so bila vrhunec tehnologije od konca 1950-ih do sredine 1960-ih, vezja MSI od konca 1960-ih do začetka 1970-ih, vezja LSI, med katerimi so bili že prvi mikroprocesorji in bralno-pisalni pomnilniki, pa od sredine do konca 1970-ih v 1980-ih so sledila vezja zelo visoke stopnje integracije (angl. Very Large Scale Integration (VLSI) od do 10 6 vrat), v 1990-ih pa ultra visoke stopnje integracije (angl. Ultra Large Scale Integration (ULSI) več kot 10 6 vrat, redkeje uporabljano) danes imajo nekatera vezja že več kot vrat, okrajšave SSI, MSI, LSI oz. VLSI pa uporabljamo le še kot sinonime za vezja z nekaj, nekaj deset, nekaj sto do nekaj tisoč oz. več logičnimi vrati, saj dobesedni pomen npr. pojma "zelo visoka stopnja integracije" ne odraža več trenutnega stanja tehnologije

104 Kombinacijska vezja Vezja z več vhodi in izhodi logična vrata kombinacijsko vezje z dvema ali več vhodi in enim izhodom: f dvovhodna vrata n f večvhodna vrata kodirniki in dekodirniki tudi izhodov je več: 2 n 2 n /n n n n/2 n 2 n multipleksorji in demultipleksorji dve vrsti vhodov, podatkovni in izbirni (naslovni): kodirnik 2 n M n multipleksor dekodirnik D 2 n n demultipleksor

105 Kombinacijska vezja Kodirniki kodirnik (angl. encoder) na izhodih generira kodo (binarno, BCD,...) naslova (številke) vhoda, na katerem je enica najpreprostejši primer: binarni kodirnik 4/2 x 0 x 1 x 2 x 3 y 1 y to je nepopolna pravilnostna tabela; vezje na njeni osnovi bo delovalo pravilno le, če bo enica vedno na natanko enem vhodu; v tem primeru velja y 1 =x 2 +x 3 ; y 0 =x 1 +x 3 delovanje pri preostalih vhodnih kombinacijah običajno določimo tako, da vhodom pripišemo prioriteto; tako dobimo kodirnik s prioriteto (angl. priority encoder) 0 ali 1 (ni pomembno) x 0 x 1 x 2 x 3 y 1 y x 0 x 1 x 4/2 2 x 3 kodirnik 4/ y 1 y najvišja prioriteta

106 Kombinacijska vezja Kodirniki x 0 x 1 x 2 x 3 y 1 y x 0 x 1 x 2 x x 0 x 1 x 2 x y 1 (x 0,x 1,x 2,x 3 )=x 2 +x 3 y 0 (x 0,x 1,x 2,x 3 )=x 1 x 2 +x 3

107 Kombinacijska vezja Kodirniki y 1 (x 0,x 1,x 2,x 3 )=x 2 +x 3 y 0 (x 0,x 1,x 2,x 3 )=x 1 x 2 +x 3 x 0 1 y 1 x 1 x y 0 x 0 x 1 x 2 x 3 = 4/2 kodirnik 4/2 s prioriteto y 1 y 0 x 3

108 Kombinacijska vezja Kodirniki Primera standardnih kodirnikov: binarni kodirnik 8/3 (n = 3, izhod v binarni kodi) BCD kodirnik 10/4 (n = 4, izhod v BCD kodi, zato le 10 namesto 16 vhodov) 8/3 kodirnik 8/3 (simbolna shema) binarni kodirnik 8/3 SN74LS148NS (Texas Instruments) 10/4 kodirnik 10/4 (simbolna shema) BCD kodirnik 10/4 SN74LS147FK (Texas Instruments)

109 Kombinacijska vezja Dekodirniki dekodirnik (angl. decoder) generira enico na tistem izhodu, katerega naslov (številka) ustreza vrednosti kode (binarne, BCD,...) na vhodu najpreprostejši primer: binarni dekodirnik 2/4 x 1 x 0 y 0 y 1 y 2 y tokrat je pravilnostna tabela popolna, določanje prioritete zato ni potrebno, iz tabele pa hitro razberemo: y 0 = x 1 x 0 y 1 = x 1 x 0 y 0 y 2/4 1 y 2 y 3 dekodirnik 2/4 x 1 x 0 y 2 = x 1 x 0 y 3 = x 1 x 0

110 Kombinacijska vezja Dekodirniki y 0 = x 1 x 0 y 1 = x 1 x 0 y 2 = x 1 x 0 y 0 y 3 = x 1 x 0 x 1 1 y 1 y 2 = y 0 y 2/4 1 y 2 y 3 dekodirnik 2/4 x 1 x 0 x 0 1 y 3

111 Kombinacijska vezja Dekodirniki negacija izhoda pove, da dekodirnik na aktivnem izhodu generira ničlo, na neaktivnih pa enice Primera standardnih dekodirnikov: dekodirnik 4/10 (iz BCD kode) dekodirnik 4/16 (iz binarne kode) 4/10 4/16 dekodirnik 4/10 (simbolna shema) dekodirnik 4/16 (simbolna shema) BCD dekodirnik 4/10 74HC42 (Philips Semiconductors) binarni dekodirnik 4/16 DM74154N (National Semiconductor)

112 Kombinacijska vezja Pozitivna in negativna logika če v integriranem vezju logični enici ustreza višja, logični ničli pa nižja napetost (npr. 1 = +5V, 0 = 0V), pravimo, da gre za vezje s pozitivno logiko če v integriranem vezju logični enici ustreza nižja, logični ničli pa višja napetost (npr. 1 = 0V, 0 = +5V), pa gre za vezje z negativno logiko poglavitni vzrok za uporabo negativne logike je možnost gradnje vezja z manjšim številom vrat in/ali s hitrejšimi vrati prototipa kodirnika 4/2 in dekodirnika 2/4, ki smo ju obravnavali, smo zapisali v DNO in izvedli z vrati AND in OR; dejanske izvedbe pretežno uporabljajo vrata NAND in/ali NOR, ki tudi pogosto delujejo hitreje v negativni logiki kot v pozitivni

113 Kombinacijska vezja Multipleksorji multipleksor (angl. multiplexer, MUX) ima 2 n podatkovnih in n izbirnih vhodov ter en izhod na izhodu je vrednost tistega podatkovnega vhoda (Booleove spremenljivke), katerega naslov je zapisan na izbirnih vhodih 2 n M n 2 n -vhodni multipleksor d 0 d 7 M s2 s1s0 8-vhodni multipleksor y s 2 s 1 s 0 y d d d d d d d d 7 y = s 2 s 1 s 0 d 0 + s 2 s 1 s 0 d 1 + s 2 s 1 s 0 d 2 + s 2 s 1 s 0 d 3 + s 2 s 1 s 0 d 4 + s 2 s 1 s 0 d 5 + s 2 s 1 s 0 d 6 + s 2 s 1 s 0 d 7 = m 0 d 0 + m 1 d m 7 d 7 y = m d izhod (skalar) vektor podatkovnih vhodov skalarni produkt (vsota produktov) vektor mintermov izbirnih vhodov

114 Kombinacijska vezja Multipleksorji multipleksor (angl. multiplexer, MUX) ima2 n podatkovnih in n izbirnih vhodov ter en izhod na izhodu je vrednost tistega podatkovnega vhoda (Booleove spremenljivke), katerega naslov je zapisan na izbirnih vhodih 2 n M n 2 n -vhodni multipleksor d 0 d 7 M s2 s1s0 8-vhodni multipleksor y s 2 s 1 s 0 y d d d d d d d d 7 y = s 2 s 1 s 0 d 0 + s 2 s 1 s 0 d 1 + s 2 s 1 s 0 d 2 + s 2 s 1 s 0 d 3 + s 2 s 1 s 0 d 4 + s 2 s 1 s 0 d 5 + s 2 s 1 s 0 d 6 + s 2 s 1 s 0 d 7 = m 0 d 0 + m 1 d m 7 d 7 y = m d vektorska enačba multipleksorja

115 Kombinacijska vezja Multipleksorji s 1 s 0 y y = s 1 s 0 d 0 + s 1 s 0 d 1 + s 1 s 0 d 2 + s 1 s 0 d 3 (primerno za izvedbo AND-OR) 0 0 d d d d 3 = s 1 s 0 d 0 + s 1 s 0 d 1 + s 1 s 0 d 2 + s 1 s 0 d 3 = s 1 s 0 d 0 s 1 s 0 d 1 s 1 s 0 d 2 s 1 s 0 d 3 = ( (s 1, s 0, d 0 ), (s 1, s 0, d 1 ), (s 1, s 0, d 2 ), (s 1, s 0, d 3 )) (primerno za izvedbo NAND-NAND) za vajo izrišite simbolne sheme 4-vhodnega multipleksorja: v izvedbi z negatorji ter vrati AND in OR v izvedbi z negatorji ter vrati NAND

116 Kombinacijska vezja Uporaba multipleksorja za realizacijo preklopne funkcije z multipleksorjem lahko realiziramo poljubno preklopno funkcijo: trivialna realizacija: za y=f(x 1,x 2,...,x n ) uporabimo 2 n -vhodni multipleksor; na izbirne vhode pripeljemo spremenljivke, na podatkovne pa konstante iz izhodnega stolpca pravilnostne tabele x 1 x 2 x 3 y M x 1 x 2 x 3 y

117 Kombinacijska vezja Uporaba multipleksorja za realizacijo preklopne funkcije z multipleksorjem lahko realiziramo poljubno preklopno funkcijo: netrivialna realizacija: uporabimo manjši multipleksor; na izbirne vhode pripeljemo nekaj spremenljivk, na podatkovne pa preostale spremenljivke, njihove funkcije in/ali konstante x 1 x 2 x 3 y y = x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 = x 1 x 2 x 3 + x 1 x 2 x 3 + x 1 x 2 (x 3 +x 3 )+x 1 x 2 x 3 = x 1 x 2 (x 3 )+x 1 x 2 (x 3 )+x 1 x 2 (1) + x 1 x 2 (x 3 ) x 3 x 3 1 M x 3 x1 x2 y

118 Kombinacijska vezja Multipleksorji Primera standardnih multipleksorjev: 16-vhodni multipleksor dvojni 8-vhodni multipleksor (dva 8-vhodna, skupni izbirni vh.) M M 16-vhodni multipleksor (simbolna shema) M 16-vhodni MUX DM74150N (National Semiconductor) dvojni 8-vhodni multipleksor (simbolna shema) dvojni 8-vhodni MUX CPK (National Semiconductor)

119 Kombinacijska vezja Multipleksorji dvojni multipleksor je najpreprostejši primer splošnejšega vektorskega multipleksorja; navadnemu multipleksorju v takšni terminologiji pravimo skalarni multipleksor d 0 d 1 M y d 0,0 d 0,1 M y 0 d 1,0 d 1,1 M y 1 d k,0 d k,1 M y k d 2 n-1 d 0,2 n-1 d 1,2 n-1 d k,2 n-1 s n s n-1 s 0 2 n -vhodni skalarni multipleksor s n s n-1 s 0 s n s n-1 s 0 k 2 n -vhodnih skalarnih multipleksorjev s skupnimi izbirnimi vhodi s n s n-1 s 0

120 Kombinacijska vezja Multipleksorji dvojni multipleksor je najpreprostejši primer splošnejšega vektorskega multipleksorja; navadnemu multipleksorju v takšni terminologiji pravimo skalarni multipleksor d 0 d 1 d 2 n-1 M s n s n-1 s 0 2 n -vhodni skalarni multipleksor y k-bitni vhodi d 1,0 d d 1,1 0,0 d 0,1 d 1,2 n-1 d 0,2 n-1 d k,0 d k,1 d k,2 n-1 M M s n s n-1 s 0 y 0 M y 1 k 2 n -vhodni vektorski multipleksor y k k-bitni izhod s n s n-1... s 0 y 0 y 1... y k d 0,0 d 1,0... d k, d 0,1 d 1,1... d k, d 0,2 d 1,2... d k, d 0, 2 n -1 d 1, 2 n d k, 2 n -1

121 Kombinacijska vezja Multipleksorji dvojni multipleksor je najpreprostejši primer splošnejšega vektorskega multipleksorja; navadnemu multipleksorju v takšni terminologiji pravimo skalarni multipleksor s n s n-1... s 0 y 0 y 1... y k d 0,0 d 1,0... d k, d 0,1 d 1,1... d k, d 0,2 d 1,2... d k, y 0 = m 0 d 0,0 + m 1 d 0, m 2 n-1d 0,2 n-1 y 1 = m 0 d 1,0 + m 1 d 1, m 2 n-1d 1,2 n-1 y 2 = m 0 d 2,0 + m 1 d 2, m 2 n-1d 2,2 n-1 y k = m 0 d k,0 + m 1 d k, m 2 n-1d k,2 n d 0, 2 n -1 d 1, 2 n d k, 2 n -1 y = m D matrika podatkovnih vhodov skalarni produkt vektor izhodov vektor mintermov izbirnih vhodov

122 Kombinacijska vezja Multipleksorji dvojni multipleksor je najpreprostejši primer splošnejšega vektorskega multipleksorja; navadnemu multipleksorju v takšni terminologiji pravimo skalarni multipleksor s n s n-1... s 0 y 0 y 1... y k d 0,0 d 1,0... d k, d 0,1 d 1,1... d k, d 0,2 d 1,2... d k, y 0 = m 0 d 0,0 + m 1 d 0, m 2 n-1d 0,2 n-1 y 1 = m 0 d 1,0 + m 1 d 1, m 2 n-1d 1,2 n-1 y 2 = m 0 d 2,0 + m 1 d 2, m 2 n-1d 2,2 n-1 y k = m 0 d k,0 + m 1 d k, m 2 n-1d k,2 n d 0, 2 n -1 d 1, 2 n d k, 2 n -1 y = m D matrična enačba vektorskega multipleksorja

123 Kombinacijska vezja Demultipleksorji demultipleksor (angl. demultiplexer) ima en podatkovni in n izbirnih vhodov ter 2 n izhodov vrednost podatkovnega vhoda se prenese na tisti izhod, katerega naslov je zapisan na izbirnih vhodih D n 2 n 2 n -izhodni demultipleksor d D y 0 y 7 s 2 s 1 s 0 8-izhodni demultipleksor s 2 s 1 s 0 y 0 y 1... y d d y 0 = s 2 s 1 s 0 d = m 0 d y 1 = s 2 s 1 s 0 d = m 1 d y 7 = s 2 s 1 s 0 d = m 7 d vektor izhodov y = m T d podatkovni vhod (skalar) d vsota produktov (skalarni produkt) transponirani vektor mintermov izbirnih vhodov

124 Kombinacijska vezja Demultipleksorji demultipleksor (angl. demultiplexer) ima en podatkovni in n izbirnih vhodov ter 2 n izhodov vrednost podatkovnega vhoda se prenese na tisti izhod, katerega naslov je zapisan na izbirnih vhodih D n 2 n 2 n -izhodni demultipleksor d D y 0 y 7 s 2 s 1 s 0 8-izhodni demultipleksor s 2 s 1 s 0 y 0 y 1... y d d y 0 = s 2 s 1 s 0 d = m 0 d y 1 = s 2 s 1 s 0 d = m 1 d y 7 = s 2 s 1 s 0 d = m 7 d y = m T d d vektorska enačba (skalarnega) demultipleksorja

125 Kombinacijska vezja Demultipleksorji če 2 n -izhodnemu demultipleksorju na podatkovni vhod vežemo enico, dobimo dekodirnik n/2 n x 1 x 0 2/4 y 0 y 1 y 2 y 3 x 1 x 0 y 0 y 1 y 2 y d x 1 D x 0 y 0 y 1 y 2 y 3 x 1 x 0 y 0 y 1 y 2 y d n n/2 n = 2 n d d 0 1 D 2 n dekodirnik 2/4 s pravilnostno tabelo d 4-izh. demultipleksor s pravilnostno tabelo n

126 Kombinacijska vezja Demultipleksorji več enakih demultipleksorjev s skupnimi izbirnimi vhodi lahko obravnavamo kot vektorski demultipleksor; navadni demultipleksor je v takšni terminologiji skalarni demultipleksor d D s n s n-1 s 0 y 0 y 1 2 n -izhodni skalarni demultipleksor y 2 n-1 k-bitni vhod D y k,0 d k y k,1 y 1,0 y 1,1 d y 1 D 0,0 y 0,1 d 0 D s n s n-1 s 0 y 1,2 n-1 y 0,2 n-1 y k,2 n-1 k-bitni izhodi k 2 n -izhodni vektorski demultipleksor Y = m T d matrična enačba vektorskega demultipleksorja

127 Kombinacijska vezja Primerjalniki (komparatorji) n-bitni primerjalnik enakosti (angl. identitity comparator) ima dva n-bitna (= vektorska) vhoda in en izhod, ki pove, ali sta števili na obeh vhodih enaki (t.j. ali so vsi istoležni biti obeh vhodov enaki): a 0 =1 b 0 a 1 b 1 =1 a 2 =1 A B A=B b 2 a 3 =1 4-bitni primerjalnik enakosti (simbolna shema) 8-bitni primerjalnik enakosti MC74AC521 (Motorola) b 3 izvedba 4-bitnega primerjalnika enakosti z vrati NXOR in AND

128 Kombinacijska vezja Primerjalniki (komparatorji) n-bitni primerjalnik velikosti (angl. magnitude comparator) ima dva n-bitna vhoda in tri izhode, ki odražajo razmerje velikosti števil na vhodih: (A<B)=a 3 b 3 A B A<B A=B A>B +(a 3 b 3 )a 2 b 2 +(a 3 b 3 )(a 2 b 2 )a 1 b 1 +(a 3 b 3 )(a 2 b 2 )(a 1 b 1 )a 0 b 0 4-bitni primerjalnik velikosti (simbolna shema) (A=B)= (a 3 b 3 )(a 2 b 2 )(a 1 b 1 )(a 0 b 1 ) (A>B)=(A<B)(A=B) 4-bitni primerjalnik velikosti DM74LS85 (Natl. Semiconductor)

129 Kombinacijska vezja Seštevalniki n-bitni seštevalnik (angl. adder) ima dva n-bitna vhoda, na katera privedemo binarna zapisa dveh n-bitnih števil, na izhodu pa dobimo binarni zapis njune vsote in podatek, ali je pri seštetju prišlo do prenosa z najvišjega bita z 1-bitnim polovičnim seštevalnikom (angl. half adder, HA) dobimo 1-bitno vsoto (s) in podatek o prenosu na višji bit (c) a b HA polovični 1-bitni seštevalnik s c a b c s c = ab s = a b

130 Kombinacijska vezja Seštevalniki vhod za prenos pri prvem FA v kaskadi in izhod za prenos pri zadnjem omogočata združevanje takšnih seštevalnikov v večje 1-bitni polni seštevalnik (angl. full adder, FA) upošteva še morebitni prenos z nižjega bita (c vh ) s kaskadno vezavo FA dobimo n-bitni serijski (zaporedni) seštevalnik (angl. ripple adder) a b c vh FA c izh polni 1-bitni seštevalnik s a b c vh c izh s c izh = ab + (a b)c vh s = a b c vh c i = a i b i + (a i b i )c i-1 s i = a i b i c i-1 enačbe in zgradba n-bitnega serijskega seštevalnika a 0 FA b 0 s 0 a 1 b 1 s 1 a n-1 FA FA c vh c 0 c 1 c n-2 b n-1 s n-1 c izh

131 Kombinacijska vezja Seštevalniki v serijskem seštevalniku za izračun s 1 in c 1 potrebujemo c 0, za izračun s 2 in c 2 potrebujemo c 1,..., ker ima odziv vsakega FA zakasnitev, se pravilne vrednosti s 0, s 1,..., s n-1 ne pojavijo naenkrat, temveč druga za drugo celotni zakasnilni čas serijskega seštevalnika je tako odvisen od njegove velikosti (t.j. od n) a 0 FA b 0 s 0 a 1 FA c vh c 0 b 1 s 1 c 1 c i = a i b i + (a i b i )c i-1 s i = a i b i c i-1 enačbe in zgradba n-bitnega serijskega seštevalnika a n-1 FA c n-2 b n-1 s n-1 c izh

132 Kombinacijska vezja Seštevalniki paralelni (vzporedni) seštevalnik (angl. carry look-ahead adder) vse prenose izračuna samo iz vhodnih podatkov: označimo c vh = c -1, G i = a i b i in P i = a i b i ; tedaj je c 0 = G 0 + c -1 P 0 s 0 = P 0 c -1 c 1 = G 1 + c 0 P 1 = G 1 +G 0 P 1 + c -1 P 0 P 1 s 1 = P 1 c 0 c 2 = G 2 + c 1 P 2 = G 2 +G 1 P 2 +G 0 P 1 P 2 + c -1 P 0 P 1 P 2 s 2 = P 2 c 1 k 1 k k c = G + G P + c P s k = P k c k 1 k k j i -1 i j = 0 i= j+ 1 i= 0

133 Kombinacijska vezja Seštevalniki paralelni seštevalnik tako zgradimo iz treh delov: modul PG določi vse P i in G i modul prenosov določi vse c i modul vsote določi vse s i k 1 k k ck = Gk + G j Pi + c -1 Pi j = 0 i= j+ 1 i= 0 s k = P k c k 1 c -1 =c vh a 0 a 1 P0 P1 a n-1 b 0 b 1 modul PG Pn-1 G0 G1 modul pren. c 0 c 1 modul vsote s 0 s 1 s n-1 b n-1 Gn-1 c n-2 c n-1 =c zgradba n-bitnega izh paralelnega seštevalnika 4-bitni paralelni seštevalnik DM74LS283 (Fairchild)

134 Kombinacijska vezja Seštevalniki za odštevanje uporabimo binarni zapis števil s predznakom: najpomembnejši bit predstavlja predznak (1-negativno, 0-pozitivno), število a pa je dvojiški komplement števila a, ki ga dobimo tako, da v binarnem zapisu števila a zamenjamo vse enice z ničlami in obratno, nato pa rezultatu prištejemo 1 na ta način z n biti lahko zapišemo števila od 2 n-1 +1 do 2 n bitni zapis števil s predznakom bitni zapis števil s predznakom

135 Kombinacijska vezja Seštevalniki razliko (b a) izračunamo tako, da številu b prištejemo dvojiški komplement a, morebitni prenos z najvišjega bita pa zanemarimo izračun razlik (7 3) ter (2 3) v 4-bitnem zapisu: 0111 (= +7) 0010 (= +2) (= -3) (= -3) (= +4) 1111 (= -1) če imata a in b enaka predznaka in sta znotraj območja izbranega n-bitnega zapisa, je opisani izračun razlike vselej pravilen v bolj splošnem primeru, ko imata a in b različna predznaka, pa lahko pride do preliva, t.j. dejanska vrednost (b a) preseže območje n-bitnega zapisa, dobljeni rezultat pa je zato napačen

136 Kombinacijska vezja Aritmetično-logična enota (ALU) aritmetično-logična enota (angl. arithmetic logic unit, ALU) je večnamensko vezje, ki izvaja logične in aritmetične operacije na podatkovne vhode dovedemo Booleove spremenljivke ali binarni zapis števil, z izbirnimi vhodi pa določimo operacijo, ki bo izvedena 4-bitna 8-operacijska ALU SN74LS382-N (Texas Instruments) S 2 S 1 S 0 izhod B minus A A minus B A plus B A B A + B A B seznam operacij SN74LS382-N 4-bitna 32-operacijska ALU 74LS181 (Signetics)

137 Programirljiva kombinacijska vezja

138 Programirljiva kombinacijska vezja Programirljivost v kombinacijskih vezjih, ki smo jih obravnavali v prejšnjem poglavju, so povezave med logičnimi vrati vnaprej določene in nespremenljive pravimo, da vezja niso programirljiva v tem poglavju pa bomo spoznali nekaj osnovnih programirljivih vezij (angl. Programmable Logic Device, PLD), v katerih nekatere povezave v notranjosti določa uporabnik: - programirljivi bralni pomnilnik (PROM), -izbrisljivi PROM (EPROM), -električno izbrisljivi PROM (EEPROM), - EEPROM s hitrim izbrisom (Flash) - programirljivo logično mrežo (PLA), - programirljivo logično polje (PAL)

139 Programirljiva kombinacijska vezja Pomnilna mreža pomnilna mreža je struktura, ki v notranjosti hrani urejeno N-terico M-bitnih besed, z zunanjostjo pa jo povezuje N 1-bitnih vhodov in M 1-bitnih izhodov, ki delujejo kot en M-bitni (vektorski) izhod na izhodu dobimo tisto besedo, na vhodu katere je enica M 1 j 1 0 x 0 k 0,M-1... k 0,j... k 0,1 k 0,0 0 1 x 1 k 1,M-1... k 1,j... k 1,1 k 1, x i k i,m-1... k i,j... k i,1 k i,0 i x 2-1 k n 2 n -1,M-1... k 2 n -1,j y... M-1 y... j... k 2 n -1,1 k 2 n -1,0 2n 1 y 1 y0

140 Programirljiva kombinacijska vezja Pomnilna mreža pomnilna mreža je struktura, ki v notranjosti hrani urejeno N-terico M-bitnih besed, z zunanjostjo pa jo povezuje N 1-bitnih vhodov in M 1-bitnih izhodov, ki delujejo kot en M-bitni (vektorski) izhod na izhodu dobimo tisto besedo, na vhodu katere je enica M 1 j k 0,M-1... k 0,j... k 0,1 k 0, k 1,M-1... k 1,j... k 1,1 k 1, k i,m-1... k i,j... k i,1 k i,0 i k 2 n -1,M-1... k 2 n -1,j k... i,m-1 k... i,j... k 2 n -1,1 k 2 n -1,0 2n 1 k i,1 ki,0

141 Programirljiva kombinacijska vezja Pomnilna mreža pomnilna mreža je struktura, ki v notranjosti hrani urejeno N-terico M-bitnih besed, z zunanjostjo pa jo povezuje N 1-bitnih vhodov in M 1-bitnih izhodov, ki delujejo kot en M-bitni (vektorski) izhod na izhodu dobimo tisto besedo, na vhodu katere je enica M 1 j 1 0 x 0 k 0,M-1... k 0,j... k 0,1 k 0,0 0 1 x 1 k 1,M-1... k 1,j... k 1,1 k 1, x i k i,m-1... k i,j... k i,1 k i,0 i x 2-1 k n 2 n -1,M-1... k 2 n -1,j y... M-1 y... j... k 2 n -1,1 k 2 n -1,0 2n 1 y 1 y0 vhodno-izhodne povezave mreže torej podaja izraz y N 1 ali matrično x k j i i, j i 0 y = x K kjer ima lahko le eden od vhodov x i vrednost 1

142 Programirljiva kombinacijska vezja Pomnilna mreža spomnimo se, kako deluje kodirnik: če je na i-tem vhodu enica, na preostalih pa ničle, dobimo na izhodu M-bitni vektor, ki predstavlja M-bitni zapis kode (binarne, BCD,...) za število i 8/3 binarni kodirnik 8/3 (M=3) in njegova pravilnostna tabela x 0 x 1 x 2 x 3 x 4 x 5 x 6 x 7 y 2 y 1 y

143 Programirljiva kombinacijska vezja Pomnilna mreža tudi pomnilno mrežo lahko obravnavamo kot kodirnik, le da izhodni vektor {k i,0, k i,1,..., k i,m-1 } v splošnem ni ena standardnih kod za število i, temveč poljubno zaporedje M bitov, ki smo ga zapisali (programirali) v i-to vrstico mreže M 1 j k 0,M-1... k 0,j... k 0,1 k 0, k 1,M-1... k 1,j... k 1,1 k 1, k i,m-1... k i,j... k i,1 k i,0 i k 2 n -1,M-1... k 2 n -1,j k... i,m-1 k... i,j... k 2 n -1,1 k 2 n -1,0 2n 1 k i,1 ki,0 zagotoviti moramo še, da bo v vhodnem vektorju x enica le v i-ti vrstici, ki jo želimo brati vhode mreže povežemo na izhode dekodirnika iz binarne kode, na vhode le-tega pa pripeljemo binarni zapis števila i

144 Programirljiva kombinacijska vezja Bralni pomnilnik (ROM) iz binarnega dekodirnika in splošnega kodirnika smo sestavili bralni pomnilnik (angl. Read-Only Memory, ROM): binarni zapis števila i (naslov i-te vrstice) a n-1... a 1 a 0 x 0 =0 k 0,M-1... k 0,j... k 0,1 k 0,0 x 1 =0 k 1,M-1... k 1,j... k 1,1 k 1,0.iiiii.iiiii.iiiii x i =1 k i,m-1... k i,j... k i,1 k i,0.iiiii.iiiii.iiiii kodirnik (pomnilna mreža) x 2 n -1=0 k 2 n -1,M-1... k 2 n -1,j... k 2 n -1,1 k 2 n -1,0 dekodirnik bralni pomnilnik (ROM) binarna vrednost, shranjena v i-ti vrstici kodirnika y M-1 =k i,m-1... y j =k i,j... y 1 =k i,1 y 0 =k i,0

145 Programirljiva kombinacijska vezja Programirljivi bralni pomnilnik (PROM) a 1 a povezave v matriki AND so stalne (niso programirljive) kodirnik (matrika OR) povezave v matriki OR določa uporabnik (so programirljive) dekodirnik (matrika AND) 1 y 3 1 y 2 1 y 1 1 y 0

146 Programirljiva kombinacijska vezja Uporaba PROM za shranjevanje in branje podatkov a 1 a ) na vhod vpišemo binarni naslov vrstice, ki jo želimo prebrati 1) s prekinjanjem povezav v pomnilni mreži (kodirniku) vanjo vpisujemo ničle, preostale povezave so enice kodirnik = = = = dekodirnik ) na izhodu preberemo vsebino naslovljene vrstice y 3 y 2 y 1 y 0

147 Programirljiva kombinacijska vezja Uporaba PROM za realizacijo preklopnih funkcij a 1 a kodirnik y 3 (a 1,a 0 )=a 1 a 0 + a 1 a 0 y 2 (a 1,a 0 )=a 1 a 0 + a 1 a 0 y 1 (a 1,a 0 )=a 1 a 0 y 0 (a 1,a 0 )=a 1 a 0 + a 1 a 0 dekodirnik y 3 y 2 y 1 y 0

148 Programirljiva kombinacijska vezja Izvedbe pomnilnika PROM prvotni programirljivi bralni pomnilnik (angl. Programmable Read-Only Memory, PROM) je enkrat električno zapisljiv: povezave so varovalke, ki jih prežgemo z visoko napetostjo (10-30 V); z vsako prežgano varovalko izbrišemo enega od mintermov v eni od izhodnih funkcij y j (a k,a k-1,...,a 1,a 0 ) v izbrisljivem PROM (angl. Erasable PROM, EPROM): povezave so MOS tranzistorji, v katerih z visoko napetostjo (10 V) ustvarimo trajno neprevodno plast; ob izpostavitvi ultravijolični svetlobi (valovna dolžina ~235 nm) se ta plast poruši, kar omogoči ponovno programiranje

149 Programirljiva kombinacijska vezja Izvedbe pomnilnika PROM v električno izbrisljivem PROM (angl. Electrically Erasable PROM, EEPROM ali E 2 PROM) izvedemo brisanje z izpostavitvijo tranzistorjev v pomnilni mreži napetosti nasprotne polaritete od tiste, ki jo uporabljamo za pisanje; pisanje, branje in brisanje potekajo korakoma po zaporednih besedah (byte-ih) pomnilnika EEPROM s hitrim izbrisom (Flash) ima besede organizirane v strani (po besed), strani pa v bloke ( strani); zaradi višje zmogljivosti postopoma izrinjajo starejše izvedbe; -v različici NOR Flash poteka pisanje in branje po besedah, brisanje pa po blokih (t.j. izbriše se celoten blok naenkrat); primer uporabe je vezje BIOS v osebnih računalnikih; -v različici NAND Flash poteka pisanje in branje po straneh, brisanje pa po blokih; primer uporabe je zunanji pomnilnik s priključkom v formatu USB ("USB ključ")

150 Programirljiva kombinacijska vezja EPROM in EEPROM 32 KB (256 Kbit) EPROM M27C256B (ST Microelectronics) 8 KB (64 Kbit) EEPROM AT28C64B (Atmel)

151 Programirljiva kombinacijska vezja Flash 2 GB (16 Gbit) SLC NAND Flash EEPROM TC58NVG4S2EBA00 (Toshiba) 128 GB MLC/e-MMC NAND Flash EEPROM THGBM2T0DBFBAIF (Toshiba)

152 Programirljiva kombinacijska vezja Flash klasični trdi disk z magnetnim zapisom (angl. hard disk drive - HDD) trdi "disk" iz pomnilnika Flash (angl. solid-state drive - SSD) SSD: + nekajkrat hitrejši + porabi manj moči + brez gibljivih delov dražji (zaenkrat) manjša pomnilna gostota (-II-)

153 Programirljiva kombinacijska vezja Programirljiva logična mreža (PLA) v vseh naštetih izvedbah vezij PROM obsežnost dekodirnika eksponentno narašča s številom vhodnih spremenljivk za realizacijo obsežnejših preklopnih funkcij zato potrebujemo velik in posledično drag bralni pomnilnik programirljiva logična mreža (angl. Programmable Logic Array, PLA) je bolj prilagodljiva od bralnega pomnilnika, saj je programirljiv tudi dekodirni del pomnilnika, t.j. matrika AND zaradi večje prilagodljivosti je vezje PLA precej manjše od vezja PROM, ki bi ga potrebovali za realizacijo iste preklopne funkcije

154 Programirljiva kombinacijska vezja Programirljiva logična mreža (PLA) a 3 a 2 a 1 a programirljiv kodirnik (matrika OR) programirljiv dekodirnik (matrika AND) 1 y 3 1 y 2 1 y 1 1 y 0

155 Programirljiva kombinacijska vezja Programirljiva logična mreža (PLA) y 3 (a 3,a 2,a 1,a 0 )=a 3 a 0 a 3 a 2 a 1 a 0 y 2 (a 3,a 2,a 1,a 0 )=a 2 a 1 + a 2 a 1 a 0 + a 2 a y 1 (a 3,a 2,a 1,a 0 )=a 2 a 1 a 0 y 0 (a 3,a 2,a 1,a 0 )=a 2 a 1 + a 2 a 0 programirljiv kodirnik (matrika OR) programirljiv dekodirnik (matrika AND) 1 y 3 1 y 2 1 y 1 1 y 0

156 Programirljiva kombinacijska vezja Programirljiva logična mreža (PLA) 16x48x8 PLA vezje 82S100 [16 vhodov, 48 vrat AND, 8 vrat OR / izhodov; 2x16x48=1536 varovalk v matriki AND in 48x8=384 v matriki OR] (Signetics)

157 Programirljiva kombinacijska vezja Programirljivo logično polje (PAL) vezja PLA so sicer bolj prilagodljiva, a hkrati počasnejša od vezij PROM, saj so zakasnitve signala na programirljivih povezavah praviloma daljše kot na nespremenljivih, zato se danes le še redko uporabljajo v programirljivem logičnem polju (angl. Programmable Array Logic, PAL) je programirljiva le matrika AND, matrika OR pa je nespremenljiva; takšno vezje deluje hitreje kot PLA, a je manj fleksibilno

158 Programirljiva kombinacijska vezja Programirljivo logično polje (PAL) a 3 a a 1 a nespremenljiv kodirnik (matrika OR) programirljiv dekodirnik (matrika AND) 1 y

159 Programirljiva kombinacijska vezja Programirljivo logično polje (PAL) a 3 a a 1 a nespremenljiv kodirnik (matrika OR) programirljiv dekodirnik (matrika AND) 1 y y(a 3,a 2,a 1,a 0 )=a 3 a 2 a 1 + a 3 a 2 a 0 + a 3 a 0 + a 3 a 1 a 0

160 Programirljiva kombinacijska vezja Programirljivo logično polje (PAL) 16x64x8 PAL vezje PAL16L8 [od 10 do 16 vhodov, 8x8=64 vrat AND, od 8 do 2 izhodov; 2x16x64=2048 varovalk v matriki AND] (MMI)

161 Programirljiva kombinacijska vezja Programirljivo logično polje (PAL) v prvotnih vezjih PLA in PAL je programiranje tako kot v PROM potekalo s prežiganjem varovalk in je bilo izvedljivo le enkrat; postopoma so jih pričela nadomeščati vezja, ki vsebujejo tudi spominske celice; to pri podobni velikosti vezja omogoča večjo prilagodljivost v t.i. generičnih logičnih poljih (angl. Generic Array Logic, GAL) so povezave dekodirnika programirljive električno (kot v vezjih EEPROM), zato je mogoče vsako povezavo izbrisati in/ali ponovno vzpostaviti; novejša vezja PAL in GAL vsebujejo na nekaterih izhodih pomnilne mreže tudi spominske celice in jih lahko uporabljamo tudi za izvajanje sekvenčnih funkcij, zato bomo ta vezja obravnavali med programirljivimi sekvenčnimi vezji

162 Računalniško podprto načrtovanje digitalnih struktur

163 Računalniško podprto načrtovanje dig. struktur Pregled programskih orodij minimizator (angl. minimizer) je programsko orodje za avtomatizirano poenostavljanje preklopnih funkcij z urejevalnikom shematskih prikazov (angl. schematic editor) izrišemo simbolno shemo vezja simulator vezij (angl. circuit simulator) omogoča simulacijo in analizo delovanja načrtovanega vezja v strojno opisnem jeziku (angl. hardware description language, HDL) opišemo gradnike vezja in povezave med njimi v obliki, ki omogoča realizacijo vezja s programirljivo makrostrukturo sintetizator geometrije (angl. layout designer) izdela načrt postavitve elementov in povezav na nivoju tiskanega vezja (postavitev integriranih vezij in ostalih komponent na tiskani plošči, angl. PCB layout) ali na nivoju integriranega vezja (postavitev tranzistorjev in ostalih elementov v čipu, angl. IC layout)

164 Računalniško podprto načrtovanje dig. struktur Minimizatorji minimizatorji omogočajo poenostavljanje preklopnih funkcij z različnimi metodami minimizacije (Quine-McCluskeyev algoritem, Petrickova metoda, algoritem Espresso,...), prevedbe operatorjev (AND-OR OR-AND XOR NAND NOR...) in realizacije funkcij (z MUX, PROM, PAL...): - Logic Friday*( - Minilog*( mnoga programska orodja za simulacijo in sintezo že vsebujejo algoritme za minimizacijo in prevedbo funkcij; če imamo na razpolago takšno orodje, ne potrebujemo ločenega minimizatorja * brezplačen

165 Računalniško podprto načrtovanje dig. struktur Minimizatorji: Logic Friday določitev vhodnih in izhodnih spremenljivk

166 Računalniško podprto načrtovanje dig. struktur Minimizatorji: Logic Friday vnos podatkov v pravilnostno tabelo

167 Računalniško podprto načrtovanje dig. struktur Minimizatorji: Logic Friday (1) (2) (1) minimizacija v DNO (2) realizacija F 1 z MUX, prevedba F 2 v NOR

168 Računalniško podprto načrtovanje dig. struktur Urejevalniki shematskih prikazov v urejevalniku shematskih prikazov izrišemo simbolno shemo vezja, ki ga načrtujemo, kar je uporabno za dokumentiranje, predstavlja pa tudi izhodišče tako za simulacijo in analizo delovanja vezja kot za končno sintezo geometrije vezja: - CadSoft Eagle*( - geda*(prej gschem, - NI Multisim (prej Electr. Workbench; - OrCAD Capture ( - TARGET 3001!*( paketi za simulacijo in sintezo geometrije vezij imajo pogosto že vgrajene tudi tovrstne urejevalnike * obstaja tudi brezplačna verzija

169 Računalniško podprto načrtovanje dig. struktur Urejevalniki shematskih prikazov: OrCAD Capture razporedimo logična vrata vezja, v katerem smo v poglavju Preklopne funkcije in logična vrata (str. 46) ugotovili pojav dinamičnega hazarda

170 Računalniško podprto načrtovanje dig. struktur Urejevalniki shematskih prikazov: OrCAD Capture vrata povežemo med seboj v preučevano vezje

171 Računalniško podprto načrtovanje dig. struktur Urejevalniki shematskih prikazov: OrCAD Capture dodamo še vhodne signale

172 Računalniško podprto načrtovanje dig. struktur Simulatorji vezij s simulatorjem vezij preučujemo časovne poteke notranjih in izhodnih spremeljivk (preklopnih funkcij) v vezjih: - Logisim*( - OrCAD PSpice A/D ( - Simulo*( - Synopsis HSPICE ( - Virtuoso Spectre ( profesionalne izvedbe vsebujejo knjižnice s podatki o dejanskih integriranih vezjih različnih proizvajalcev in tehnologij, kar omogoča analizo zakasnitev, padcev napetosti, tokov, porabe moči ipd. * brezplačen

173 Računalniško podprto načrtovanje dig. struktur Simulatorji vezij: OrCAD PSpice A/D v programu OrCAD Capture poimenujemo spremenljivke (x 1,x 2,...A,B,...), dodamo sonde za njihov zajem, nato pa s klikom na ikono aktiviramo simulacijo

174 Računalniško podprto načrtovanje dig. struktur Simulatorji vezij: OrCAD PSpice A/D s tem se zažene program OrCAD PSpice A/D, ki izvede simulacijo delovanja vezja in prikaže časovne poteke spremenljivk, ki jih zajemamo s sondami

175 Računalniško podprto načrtovanje dig. struktur Strojno opisni jeziki strojno opisni jeziki (HDL), med katerimi sta danes najbolj razširjena VHDL in Verilog, omogočajo realizacijo najrazličnejših digitalnih vezij s programirljivimi makrostrukturami (CPLD, FPGA); takšna realizacija poteka v treh korakih: -v urejevalniku besedila (angl. text editor) napišemo kodo (program), ki v sintaksi izbranega HDL opisuje gradnike vezja in povezave med njimi, -s prevajalnikom (angl. HDL compiler) kodo prevedemo v splošno obliko, primerno za programiranje makrostruktur -s sintetizatorjem (angl. HDL synthesizer) priredimo prevedeno kodo specifični makrostrukturi, v kateri nato s programatorjem (angl. CPLD/FPGA programmer) vzpostavimo povezave, ki zagotovijo njeno delovanje skladno z opisom delovanja vezja v HDL

176 Računalniško podprto načrtovanje dig. struktur VHDL (1) (2) (1) pisanje in (2) prevajanje kode VHDL v orodju VisualHDL

177 Računalniško podprto načrtovanje dig. struktur Programatorji univerzalni programator vezij, ki omogoča tudi programiranje makrostruktur

178 Računalniško podprto načrtovanje dig. struktur Sintetizatorji geometrije vezij s sintetizatorjem geometrije vezja izdelamo načrt postavitve elementov in povezav na nivoju tiskanega vezja: - Allegro PCB ( - Altium Designer ( - CadSoft Eagle*( - OrCAD PCB Designer (prej OrCAD Layout, ali na nivoju integriranega vezja: - Encounter ( - Magma Hydra/Talus ( - Synopsis Galaxy Custom Designer LE -... * obstaja tudi brezplačna verzija

179 Računalniško podprto načrtovanje dig. struktur Sintetizatorji geometrije tiskanih vezij: OrCAD PCB Designer sinteza geometrije tiskanega vezja matične plošče osebnega računalnika

180 Računalniško podprto načrtovanje dig. struktur Sintetizatorji geometrije tiskanih vezij: OrCAD PCB Designer sinteza geometrije tiskanega vezja matične plošče osebnega računalnika (povečava)

181 Računalniško podprto načrtovanje dig. struktur Sintetizatorji geometrije integriranih vezij: Encounter sinteza geometrije integriranega vezja

182 Sekvenčna vezja

183 Sekvenčna vezja Kombinacijsko in sekvenčno izvajanje nalog s kombinacijskimi vezji izvajamo naloge, katerih rezultat (izhod) je v vsakem trenutku enolično določen s trenutno vrednostjo končnega števila dejavnikov (vhodov) za izvedbo naloge te dejavnike in rezultat izrazimo z Booleovimi spremenljivkami, zapišemo pravilnostno tabelo, odtod preklopno funkcijo in iz nje zgradimo vezje za izvajanje nalog, katerih rezultat ni odvisen le od trenutne, temveč tudi od preteklih vrednosti vhodov, pa potrebujemo še način shranjevanja podatkov če je zgodovina vhodov, ki vpliva na rezultat, časovno omejena, lahko tudi takšno nalogo načeloma opišemo s pravilnostno tabelo, v kateri navedemo izhodne vrednosti pri vseh možnih zaporedjih vrednosti vhodov x 1 x 2 y t -n... t -1 t 0 t 0 x 1 x 2... x 1 x 2 x 1 x 2 y

184 Sekvenčna vezja Kombinacijsko in sekvenčno izvajanje nalog t -n... t -1 t 0 t 0 x 1 x 2... x 1 x 2 x 1 x 2 y enice funkcije y so mintermi... celotna funkcija y pa je njihova vsota: y(t 0 ) = x 1 (t -n )x 2 (t -n )... x 1 (t -1 )x 2 (t -1 )x 1 (t 0 )x 2 (t 0 ) +... kombinacijsko vezje, ki izvaja takšno funkcijo, lahko zgradimo z n zakasnilnimi elementi: x 1 (t 0 ) t t x 1 (t -1 ) x 1 (t -2 ) t x 1 (t -n ) 1 y(t 0 )... x 2 (t 0 ) t t x 2 (t -1 ) x 2 (t -2 )... t x 2 (t -n ) za splošno nalogo takšne vrste, kjer na rezultat vpliva dolga zgodovina vhodov, je tak pristop zelo okoren; če zgodovina ni omejena, pa je sploh neizvedljiv

185 Sekvenčna vezja Spremenljivke stanja, stanja in sekvenčna vezja v praksi se običajno omejimo na naloge, katerih rezultat je moč zapisati kot funkcijo končnega števila trenutnih vrednosti vhodov in končnega števila vrednosti notranjih spremenljivk spremenljivk stanja; celotnemu naboru spremenljivk stanja pravimo stanje sekvenčno vezje (angl. sequential logic circuit): vezje, katerega naslednje stanje in vrednosti na izhodih so enolično določeni s trenutnim stanjem in trenutnimi vrednostmi na vhodih ker je število spremenljivk stanja končno, te spremenljivke pa so Booleove, je končno tudi število možnih stanj; če je spremenljivk stanja n, je torej število možnih stanj 2 n v sinhronskem sekvenčnem vezju (angl. synchronous sequential circuit) vse strukture spremenijo stanje sočasno; to dosežemo s proženjem, ki je lahko aperiodično ali periodično (npr. s pulzi ure)

186 Sekvenčna vezja Spominske celice: primitivna spominska celica sekvenčna vezja temeljijo na gradnikih, ki jim omogočajo pomnjenje (hranjenje) podatkov o prejšnjem stanju spominskih celicah najpreprostejšo, t.i. primitivno spominsko celico, zgradimo iz dveh zaporedno vezanih negatorjev: če na vhod pripeljemo vrednost x, se po eni zakasnitvi na izhodu prvega negatorja pojavi x, po še eni pa na izhodu drugega negatorja x x 1 x 1 x

187 Sekvenčna vezja Spominske celice: primitivna spominska celica sekvenčna vezja temeljijo na gradnikih, ki jim omogočajo pomnjenje (hranjenje) podatkov o prejšnjem stanju spominskih celicah najpreprostejšo, t.i. primitivno spominsko celico, zgradimo iz dveh zaporedno vezanih negatorjev: če na vhod pripeljemo vrednost x, se po eni zakasnitvi na izhodu prvega negatorja pojavi x, po še eni pa na izhodu drugega negatorja x 1 x 1 x če stikalo preklopimo, s tem ustvarimo povratno zvezo, ki bo odtlej v spominski celici vzdrževala zapisani vrednosti x in x če želimo v spominsko celico shraniti novo vrednost spremenljivke x, ponovno preklopimo stikalo na vhod in nato nazaj v povratno zvezo

188 Sekvenčna vezja Spominske celice: primitivna spominska celica za zapisovanje v primitivno spominsko celico potrebujemo stikalo v digitalni izvedbi je to dvovhodni multipleksor: s x x x 1 1 = x x x 1 1 M x zapisovanje trenutne vrednosti x s = 0: zapisovanje trenutne vrednosti x pomnjenje zapisane vrednosti x s = 1: pomnjenje zapisane vrednosti x

189 Sekvenčna vezja Spominske celice: primitivna spominska celica ker velja x=x x = x x, lahko namesto iz para zaporednih negatorjev primitivno spominsko celico z enakim delovanjem zgradimo tudi iz para zaporednih vrat NOR ali para zaporednih vrat NAND: x x x 1 1 = x 1 x 1 x x x x x zapisovanje trenutne vrednosti x = pomnjenje zapisane vrednosti x

190 Sekvenčna vezja Spominske celice: nesinhronizirana zapaha SR in S R izvedbi s parom dvovhodnih vrat omogočata predelavo v obliko, v kateri stikala (multipleksorja) ne potrebujemo več, saj za zapisovanje in pomnjenje uporabimo po en vhod vsakih vrat: 1 1 S 1 R nesinhronizirani zapah SR S R nesinhronizirani zapah SR

191 Sekvenčna vezja Spominske celice: nesinhronizirana zapaha SR in S R ker sta S in R vhoda zapaha SR, S in R pa vhoda zapaha SR, vezji teh spominskih celic običajno prikažemo nekoliko drugače: S 1 R 1 S R S 1 S = 1 = R nesinhronizirani zapah SR R nesinhronizirani zapah SR

192 Sekvenčna vezja Spominske celice: nesinhronizirana zapaha SR in S R da bi bili ti spominski celici uporabni, potrebujemo še dostop do vrednosti, ki jih hranita vrednosti na izhodih njunih vrat kot bomo spoznali v nadaljevanju, sta ti vrednosti (tako kot v primitivni spominski celici) pri pravilnem delovanju oziroma uporabi spominske celice negaciji druga druge; običajno ju označujemo s simboloma Q in Q (to sta spremenljivki stanja spominske celice) S 1 Q S Q R 1 Q R Q nesinhronizirani zapah SR nesinhronizirani zapah SR

193 Sekvenčna vezja Spominske celice: nesinhronizirani zapah SR S 1 Q 1 R Q naslednji stanji Q in Q S R Q * Q * 0 0 Q Q ) pri R=0 postavimo S=1: -ker velja x 1 = 0, bo po eni zakasnitvi na izhodu zgornjih vrat vrednost Q=0, ki se bo prenesla tudi na zgornji vhod spodnjih vrat; -ker je 0 0 = 1, bo po drugi zakasnitvi na izhodu spodnjih vrat vrednost Q=1, ki se bo prenesla tudi na spodnji vhod zgornjih vrat; -ker je 1 1 = 0, to ne bo spremenilo vrednosti na izhodu zgornjih vrat in celica bo ostala v stanju {Q=1,Q=0} 2) ohranimo R=0 in vrnimo S na vrednost 0: - na izhodu zgornjih vrat imamo 0 1=0, na izhodu spodnjih pa 0 0 = 1; celica torej ostaja v vzpostavljenem stanju {Q=1,Q=0}

194 Sekvenčna vezja Spominske celice: nesinhronizirani zapah SR S 1 1 R S R Q * Q * 0 0 Q Q Q Q 3) pri S=0 postavimo R=1: -ker velja x 1 = 0, bo po eni zakasnitvi na izhodu spodnjih vrat vrednost Q=0, ki se bo prenesla tudi na spodnji vhod zgornjih vrat; -ker je 0 0 = 1, bo po drugi zakasnitvi na izhodu zgornjih vrat vrednost Q=1, ki se bo prenesla tudi na zgornji vhod spodnjih vrat; -ker je 1 1 = 0, to ne bo spremenilo vrednosti na izhodu spodnjih vrat in celica bo ostala v stanju {Q=0,Q=1} 4) ohranimo S=0 in vrnimo R na vrednost 0: - na izhodu zgornjih vrat imamo 0 0=1, na izhodu spodnjih pa 1 0 = 0; celica torej ostaja v vzpostavljenem stanju {Q=0,Q=1}

195 Sekvenčna vezja Spominske celice: nesinhronizirani zapah SR S 1 1 R S R Q * Q * 0 0 Q Q Q Q 5) postavimo sedaj hkrati S=1 in R=1: -ker velja x 1 = 0, bo po eni zakasnitvi na izhodu zgornjih vrat vrednost Q=0 in hkrati na izhodu spodnjih vrat vrednost Q=0, obe se bosta sočasno tudi prenesli na vhoda; -ker je 1 0=0 1 = 0, to ne bo spremenilo vrednosti na izhodih vrat in celica bo ostala v stanju {Q=0,Q=0} 6) vrnimo S in R na vrednost 0: - če prej vrnemo R, velja analiza iz primera (1) in dobimo stanje {Q=1, Q=0}; če prej S, pa analiza iz primera (3) in stanje {Q=0, Q=1}; - če obe vrednosti vrnemo na 0 sočasno ali ne vemo, katera se je vrnila prej, pa stanja celice ne moremo predvideti

196 Sekvenčna vezja Spominske celice: nesinhronizirani zapah SR S 1 1 R S R Q * Q * 0 0 Q Q Q Q Q = Q!!! s kombinacijo {S=1, R=0} torej v celico zapišemo vrednost Q=1, s kombinacijo {S=0, R=1} vrednost Q=0, pri kombinaciji {S=0, R=0} pa se zapisana vrednost ohranja odtod tudi ime celice: z vhodom S=1 v celico zapišemo vrednost 1, z vhodom R=1 pa jo z zapisom vrednosti 0 spet izbrišemo (angl. set = postaviti, reset = vrniti v izhodiščno stanje) pri naštetih treh kombinacijah je dosledno tudi poimenovanje notranjih spremenljivk Q in Q, saj je Q dejansko vselej negacija Q pri kombinaciji {S=1, R=1} pride do "protislovnega" stanja {Q=0, Q=0}, po vrnitvi na {S=0,R=0} pa stanje ni več predvidljivo

197 Sekvenčna vezja Spominske celice: nesinhronizirani zapah S R (angl. S R latch) S R S R Q * Q * Q Q Q Q Q = Q!!! na enak način lahko analiziramo tudi delovanje zapaha SR in ugotovimo, da s kombinacijo {S=1, R=0} vanj zapišemo vrednost Q=1, s {S=0,R=1} vrednost Q=0, pri {S=0,R=0} se zapisana vrednost ohranja, pri {S=1, R=1} pa nastopi stanje, v katerem velja Q=1 in Q=1 (t.j. Q ni negacija Q) in stanje po vrnitvi na {S=1,R=1} ni več predvidljivo zapah SR torej deluje enako kot zapah SR, le (i) z negativno vhodno logiko namesto pozitivne (odtod tudi ime) in (ii) s "protislovnim" stanjem {Q=1, Q=1} namesto {Q=0,Q=0}

198 Sekvenčna vezja Spominske celice: nesinhronizirana zapaha SR in S R S R S R 1 1 Q Q Q Q S Q R Q simbol S Q R Q S R Q * Q * 0 0 Q Q pravilnostna tabela S R Q * Q * Q Q Q Q * S R vzbujalna tabela Q Q * S R

199 Sekvenčna vezja Spominske celice: sinhronizirani zapah SR nesinhronizirana zapaha SR in S R se vseskozi odzivata na vhoda to odzivnost lahko časovno omejimo tako, da na vhoda zapaha SR dogradimo par vrat AND, na vhoda zapaha SR pa par vrat NAND: S 1 Q S Q C C R 1 Q R Q

200 Sekvenčna vezja Spominske celice: sinhronizirani zapah SR delovanje obeh zapahov smo tako sinhronizirali s signalom C (angl. clock = ura oz. control = nadzor, kontrola); vrednosti S in R imata dostop v notranjost vezja le takrat, ko je C=1: S S 1 Q S S Q C=1 R R 1 Q x 1=x C=1 x 1=x s sinhronizacijo smo dobili celici, ki imata obe vhoda S in R ter se na kombinacije {S=1,R=0}, {S=0,R=1} in {S=0,R=0} odzivata enako, le pri "prepovedani" kombinaciji {S=1, R=1} zavzameta v izvedbi na levi Q in Q vrednost 0, v izvedbi na desni pa vrednost 1 R R Q

201 Sekvenčna vezja Spominske celice: sinhronizirani zapah SR ker je pri pravilni uporabi delovanje obeh celic enako, ju pogosto poimenujemo kar z istim imenom sinhronizirani zapah SR (angl. SR latch with control oz. SR latch with enable) S 1 Q S Q C R 1 Q C R Q zaradi tehnoloških prednosti vrat NAND je v uporabi predvsem desna različica sinhronizirani zapah SR v izvedbi NAND

202 Sekvenčna vezja Spominske celice: sinhron. zapaha SR v izvedbah NOR in NAND S C R S C R 1 1 Q Q Q Q S Q C R Q simbol S Q C R Q S R C Q * Q * 0 1 S R C Q * Q * Q Q Q Q pravilnostna tabela Q Q Q Q Q Q * S R vzbujalna tabela Q Q * S R

203 Sekvenčna vezja Spominske celice: zapahi SR in S R zapahi SR in SR so uporabni za izvajanje nalog, pri katerih sta pogoja za zapis enice in za zapis ničle (izbris enice) med seboj neodvisna primer: preprosta alarmna naprava aktivira jo signal s senzorja, deaktivira pa signal z vezja, v katero vtipkamo kodo za deaktivacijo 1 S Q senzorji gibanja (vezja s svetlobno občutljivimi elementi fotoupori, fotodiodami,...) shranjeno geslo EEPROM A B A=B primerjalnik enakosti R Q alarm (zvočnik) tipkovnica

204 Sekvenčna vezja Spominske celice: zapahi SR in S R integrirano vezje DM74LS279 (Fairchild) s štirimi nesinhroniziranimi zapahi S R: zapaha 1 in 3 imata po dva vhoda S in en vhod R, za vpis enice mora biti ničla vsaj na enem vhodu S (t.j. veljati mora 1S 1 1S 2 =0 oz. 3S 1 3S 2 = 0); zapaha 2 in 4 sta običajna zapaha S R s po enim vhodom S in enim vhodom R

205 Sekvenčna vezja Spominske celice: zapah D če je namen celice pomnjenje (hranjenje) 1-bitnega podatka, za zapis tega podatka potrebujemo le en vhod (in ne dveh neodvisnih) takšno spominsko celico lahko zgradimo tako, da v vhodni del sinhroniziranega zapaha SR dodamo negator, ki zagotavlja R = S: S Q D S=D Q C C R Q 1 Q R=D tako onemogočimo nastop "prepovedane" kombinacije {S=1, R=1}

206 Sekvenčna vezja Spominske celice: zapah D v takšni celici pri C=1 zavzame Q vrednost vhoda D, pri C=0 pa vhod D ne vpliva na zapisano vrednost; v celico torej zapisujemo 1-bitni podatek D (angl. datum = podatek oz. data = podatki) odtod tudi poimenovanje zapah D (angl. Dlatch); ker ta celica pri C=1 prepušča vrednost D na izhod Q, jo nekateri imenujejo tudi prepustni ali "prosojni" zapah (angl. transparent latch) D Q D C Q * Q * Q Q * D C 1 Q D Q C Q simbol Q Q pravilnostna tabela vzbujalna tabela

207 Sekvenčna vezja Spominske celice: zapahi in flip-flopi nesinhronizirani zapahi so celice brez proženja, saj se na spremembe vhodov odzivajo vseskozi sinhronizirani zapahi se odzivajo le v tistih časovnih intervalih, ko je C=1, zato jim pravimo tudi celice s statičnim proženjem odzivnost lahko še dodatno omejimo le na tiste trenutke, ko se vrednost C spremeni; tedaj govorimo o dinamičnem proženju, spominskim celicam s takšno lastnostjo pa pravimo celice z dinamičnim proženjem oz. krajše flip-flopi odzivnosti ob spremembi C z vrednosti 0 na 1 pravimo proženje ob pozitivni fronti, odzivnosti ob spremembi C z vrednosti 1 na 0 pa proženje ob negativni fronti

208 Sekvenčna vezja Spominske celice: flip-flop D s proženjem ob pozitivni fronti flip-flop D s proženjem ob pozitivni fronti (angl. positive-edgetriggered D flip-flop) tvorita dva zapaha D in dva negatorja: 1) pri C=0 postavimo D=1: D D 1 Q 1 D 2 Q 2 Q -ker jec 1 =1, levi zapah prepušča D C 1 Q 1 C 2 Q 2 Q 1 =1 na Q 1 =D 2 =1; -ker jec 2 = 0, se na desnem zapahu ohranja dosedanji Q 2 =Q 1 1 C 2) ohranimo D=1, postavimo C=1: -ker jec 1 = 0, se na levem zapahu ohranja Q 1 =D 2 =1; -ker jec 2 = 1, desni zapah prepušča D 2 =1 na Q 2 in dobimo Q 2 =Q=1 3) ohranimo D=1, vrnimo C na vrednost 0: -ker jec 1 = 1, levi zapah prepušča D 1 =1 na Q 1 =D 2 =1 (kot prej); -ker jec 2 = 0, se na desnem zapahu ohranja Q 2 =Q=1; - D = 1 se torej zapiše v flip-flop (t.j. v Q) le ob prehodu C iz 0 na 1

209 Sekvenčna vezja Spominske celice: flip-flop D s proženjem ob pozitivni fronti flip-flop D s proženjem ob pozitivni fronti (angl. positive-edgetriggered D flip-flop) tvorita dva zapaha D in dva negatorja: 4) če korake analize (1)-(3) ponovimo še pri D=0, ugotovimo, da se tudi D=0 zapiše v flip-flop (t.j. v Q) le ob le ob prehodu C iz 0 na 1 D C D 1 Q 1 C 1 Q D 2 Q 2 C 2 Q 2 Q Q prikazana spominska celica torej zapisuje vrednost D le ob prehodu C iz 0 na 1 proženju ob pozitivni fronti signala C; v simbolu flip-flopa takšno proženje odraža trikotnik ob vhodu C: flip-flope pogosto prožimo periodično, t.j. s pulzi ure, zato spremenljivko C in/ali vhod v simbolu označujemo tudi s CLK (angl. clock) D Q CQ = D Q Q C L K

210 Sekvenčna vezja Spominske celice: flip-flop D s proženjem ob negativni fronti flip-flop D s proženjem ob negativni fronti (angl. negative-edgetriggered D flip-flop) dobimo z odstranitvijo prvega negatorja: D D 1 Q 1 D 2 Q 2 Q D D 1 Q 1 D 2 Q 2 Q C 1 Q 1 C 2 Q 2 Q C 1 Q 1 C 2 Q 2 Q C 1 1 C 1 razlog, da v flip-flopu D s proženjem ob poz. fronti signal C dovajamo na C 2 skozi dva negatorja in ne neposredno, je v zakasnitvah negatorjev; pri izvedbi z dvema negatorjema proženje (dvig C z 0 na 1) najprej zapre prvi zapah D in šele nato odpre drugega; pri neposrednem dovajanju C na C 2 pa bi bil vrstni red nasproten in bi bila nekaj časa odprta (t.j. bi prepuščala) oba zapaha

211 Sekvenčna vezja Spominske celice: flip-flopa D s proženjem ob poz. in neg. fronti D D C Q Q D C Q Q Q Q D Q CQ D C Q * Q * Q Q Q Q * D C 1 1 D C L K Q Q simbol pravilnostna tabela vzbujalna tabela D D 1 Q 1 C 1 Q 1 D 2 Q 2 C 2 Q 2 Q Q D Q CQ D C Q * Q * Q Q Q Q * D C 1 D C L K Q Q

212 Sekvenčna vezja Spominske celice: zapahi D in flip-flopi D zapahe D in flip-flope D uporabljamo za izvajanje nalog, ki temeljijo na zapisovanju, pomnjenju (hranjenju) in branju podatkov med najpomembnejšimi vezji, ki vsebujejo zapahe in flip-flope D, so pomikalni registri in statični bralno-pisalni pomnilnik (SRAM), najdemo pa jih tudi v nekaterih števcih; zgradbo in delovanje teh vezij bomo spoznali v nadaljevanju integrirano vezje DM74LS74A (Fairchild) z dvema flip-flopoma D s proženjem ob pozitivni fronti in z možnostjo prednastavitve pomnjene vrednosti: s PR = 0 v flip-flop ne glede na C in D zapišemo Q=1 (angl. preset = prednastaviti); s CLR = 0 v flip-flop ne glede na C in D zapišemo Q = 0 (angl. clear = izbrisati); Ker PR in CLR omogočata spreminjanje Q ob poljubnem trenutku, pravimo, da sta to asinhronska vhoda flip-flopa

213 Sekvenčna vezja Spominske celice: flip-flop T v doslej obravnavane spominske celice z ustrezno izbiro vrednosti na vhodih zapisujemo vrednost Q=0 ali Q=1; včasih pa želimo trenutno stanje Q (za katero ni nujno, da ga poznamo) negirati spominsko celico s takšnim delovanjem lahko zgradimo iz flip-flopa D, ki mu izhod Q povežemo z vhodom D; stanje Q se tako negira ob vsaki pozitivni fronti signala na vhodu C: za nadzor nad odzivnostjo celice izvedemo povratno zvezo z izhoda Q skozi vrata XOR, na drugi vhod teh vrat pa dovedemo signal T (angl. toggle = preklapljati); tako dobimo flip-flop T (angl. T flip-flop), ki se pri T=1 odziva na proženje (t.j. negira Q ob vsaki poz. fronti na vhodu C), pri T=0 pa vzdržuje obstoječe stanje Q T C =1 D Q CQ Q+1=Q Q+0=Q D Q CQ Q Q Q Q

214 Sekvenčna vezja Spominske celice: flip-flopi T flip-flopi T so najpogostejši gradniki števcev T C =1 D Q CQ Q Q T T Q CQ C L K Q Q simbol T C Q * Q * Q Q 0 Q Q 1 Q Q pravilnostna tabela Q Q * T vzbujalna tabela

215 Sekvenčna vezja Spominske celice: flip-flop JK flip-flop JK (angl. JK flip-flop, po njegovem izumitelju Jacku Kilbyju) združuje zmožnosti doslej obravnavanih celic, saj omogoča tako zapis vrednosti (stanja) Q=0 ali Q=1 kot negiranje trenutnega stanja Q J K C 1 1 D Q CQ Q Q J Q C K Q simbol J K C Q * Q * 0 0 Q Q Q Q pravilnostna tabela Q Q * J K vzbujalna tabela flip-flope JK najdemo v serijskih seštevalnikih in nekaterih števcih, a se v števcih danes uporabljajo redkeje od flip-flopov D in T Q Q

216 Sekvenčna vezja Spominske celice: flip-flopi JK zaradi svoje prilagodljivosti so flip-flopi JK uporabni v fazi razvoja in testiranja sekvenčnih vezij (npr. na protoboardu), z njimi pa lahko izvedemo tudi druge flip-flope: T C J Q C K Q flip-flop T, izveden s flip-flopom JK integrirano vezje DM74LS109A (Fairchild) z dvema flip-flopoma J K (t.j. K v negativni logiki) s proženjem ob poz. fronti (CLK) in možnostjo prednastavitve pomnjene vrednostiq(przazapis1,clrzazapis0)

217 Sekvenčna vezja Stabilizatorji preklopnikov za vnos podatkov v digitalne sisteme, pa tudi za njihov zagon in zaustavitev, pogosto uporabljamo mehanske preklopnike: stikala, tipke in rotacijske preklopnike: načeloma bi logično 1 oz. 0 lahko dovedli kar s stikalom s sponkama na ustrezni napetosti in ozemljitvi (a), a priklop neposredno na vir +U lahko privede do prevelikih tokov v digitalne +U gradnike med njihovim preklapljanjem za omejitev teh tokov med vir +U in P sponko vgradimo upor (nekaj kω) (b) (a) +U (b) P

218 Sekvenčna vezja Stabilizatorji preklopnikov ker je vhodna upornost digitalnih gradnikov v stacionarnih razmerah zelo visoka (pri CMOS več GΩ), je padec napetosti na uporu zanemarljiv in P +U v času, ko se takšno stikalo nahaja med sponkama, napetost P ni določena, pri "plavajoči" vhodni napetosti pa digitalni gradniki delujejo nezanesljivo nedoločenost lahko odpravimo tako, da uporabimo stikalo z le eno sponko (t.j. enopolno stikalo), vejo z uporom pa prestavimo za stikalo (c);takodobiupor pri razklenjenem stikalu vlogo "dvigovalca" nivoja napetosti P (angl. pull-up resistor) +U za diskretizacijo izhodnih napetostnih nivojev dodamo na izhod stikala še negator za negativno izhodno logiko, P ali dva negatorja za pozitivno (d) (d) 1 +U (b) +U (c) 1 P P P D

219 Sekvenčna vezja Stabilizatorji preklopnikov +U P 1 1 P D tudi delovanje takšnega preklopnika pa ni brezhibno, saj lahko zaradi prožnosti stikala ob preklopu pride do kratkotrajnih vibracij, v času katerih (~5-30 ms) se stik večkrat prekine in spet vzpostavi: začetek preklopa +U P 0 P D +U 0 stik odboj

220 Sekvenčna vezja Stabilizatorji preklopnikov ker so zakasnitve v digitalnih gradnikih znatno krajše od časa vibriranja preklopnika, se ti gradniki odzovejo na vsak stik in odboj posebej to odpravimo s stabilizatorjem preklopnika (angl. switch debouncer oz. debounce circuit), ki ga zgradimo z zapahom SR +U 1) ko je stikalo v zgornji legi, je A=0 in B=+U, zato je S=0 in R=1, t.j. S=1 in R=0, zato se na izhodu vzdržuje stanje Q=P D =1 A S Q P D 2) ko se stikalo giblje navzdol in zgornja sponka B izgubi stik z ozemljitvijo, postane A=+U in R Q s tem S=1, t.j. S=0; ker je R=0, se na izhodu ohranja stanje Q=P D =1 3) ko se stikalo dotakne spodnje lege, postane +U B=0 in s tem R=0, t.j. R=1, zato Q=P D =0 4) če se stikalo odbije, spodnja sponka začasno izgubi stik z ozemljitvijo, zato postane B=+U in R=0, a ker je S=0, se ohranja Q=P D =0

221 Sekvenčna vezja Stabilizatorji preklopnikov ker so zakasnitve v digitalnih gradnikih znatno krajše od časa vibriranja preklopnika, se ti gradniki odzovejo na vsak stik in odboj posebej to odpravimo s stabilizatorjem preklopnika (angl. switch debouncer oz. debounce circuit), ki ga zgradimo z zapahom SR +U 5) če korake (1)-(4) ponovimo še za preklop stikala iz spodnje lege v zgornjo, ugotovimo, da se tudi v tem primeru že ob prvem dotiku A S Q P stikala z zgornjo sponko vzpostavi stanje D B Q=P D =1, ki se ohrani tudi ob odbojih stikala R Q 6) celotna analiza (1)-(5) seveda velja le, če odboji niso nikoli tako izraziti, da bi se stikalo dotaknilo nasprotne sponke; to +U zagotovimo z ustreznim dimenzioniranjem stikala, prožnostjo vzmeti v njem ipd.

222 Sekvenčna vezja Registri register (angl. register) jeskupina dveh ali več spominskih celic D iz n celic dobimo n-bitni register; vanj najpogosteje zapišemo en n-bitni podatek, lahko pa tudi n neodvisnih 1-bitnih podatkov ločimo registre z dinamičnim proženjem (iz flip-flopov D, zato imenovani tudi n-bitni flip-flopi D) in reg. s statičnim proženjem (iz zapahov D, n-bitni zapahi D) prek vhoda C sinhroniziramo zapis podatkov v vse celice (bite) registra D 0 D Q Q 0 CQ D 1 D Q Q 1 CQ D 2 D Q Q 2 CQ D 3 D Q Q 3 CQ C 4-bitni flip-flop D D 0 D Q Q 0 C Q D 1 D Q Q 1 C Q D 2 D Q Q 2 C Q D 3 D Q Q 3 C Q C 4-bitni zapah D

223 Sekvenčna vezja Registri 4-bitni flip-flop D s proženjem ob poz. fronti 74HC175N (Motorola); MR: izbris vseh Q (master reset) CP: proženje (control/clock pulse) 8-bitni flip-flop D 74HC273N in 8-bitni zapah D 74HC373N (oba Philips); zapis v celice zapaha je mogoč pri LE = 1 (latch enable), branje izhodov pa pri OE = 0 (output enable, neg. logika)

224 Sekvenčna vezja Števci D Q Q 0 T Q Q 0 n-bitni števec (angl. counter) je skupina n spominskih celic, katerih množica stanj {Q 0,Q 1,...,Q n 1 }predstavlja n-bitno število, ki se ob vsakem proženju poveča za 1 n-bitni serijski števec (angl. ripple counter) zgradimo iz n flip-flopov D ali T s proženjem ob negativni fronti, v katerih izhode Q kaskadno povežemo s prožilnimi vhodi C izvedba s flip-flopi D prišteje 1 ob vsaki neg. fronti C, izvedba s flipflopi T pa le, če je ob neg. fronti C E=1 (angl. enable = aktivirati) C D D D CQ Q CQ Q CQ Q CQ Q 1 Q 2 4-bitni ser.št. s f.-f. D C T T CQ Q CQ Q CQ Q 3 T Q Q 1 Q 2 Q 3 CQ E 4-bitni ser.št. s f.-f. T

225 Sekvenčna vezja Števci če izhod Q 3 enega 4-bitnega serijskega števca povežemo z vhodom C drugega takšnega števca, dobimo C CQ C CQ 8-bitni serijski števec; iz treh D Q Q 1 T Q Q 1 4-bitnih dobimo tako 12-bitnega, CQ CQ iz štirih 16-bitnega itd. serijski števci so preprosti, a podobbno kot serijski seštevalniki, ki smo jih opisali med kombinacijskimi vezji, D Q Q 2 T Q Q 2 so počasni, saj Q 0 vpliva na Q 1 šele po eni zakasnitvi flip-flopa, na Q 2 po še eni zakasnitvi itd. CQ CQ serijski števci so asinhronski; D Q Q 3 T Q Q 3 čeprav ima v števcu vsak flip-flop CQ CQ svoj vhod C, proženje teh vhodov E ne poteka sinhrono, t.j. sočasno 4-bitni ser.št. s f.-f. D 4-bitni ser.št. s f.-f. T D Q Q 0 T Q Q 0

226 Sekvenčna vezja Števci in diagrami stanj eno od orodij za analizo delovanja sekvenčnih vezij je t.i. diagram stanj oz. diagram prehajanja stanj (angl. state diagram), ki podaja vsa stanja vezja in vse prehode med njimi ker si pri števcih stanja vselej sledijo v enakem vrstnem redu, vsi prehodi pa se zgodijo ob enakem pogoju, so diagrami stanj števcev preprosti; diagram stanj 4-bitnega serijskega števca je takšen: E=1 E=1 E=1 E=1 E=1 E=1 E= E=1 E= E=1 E=1 E=1 E=1 E=1 E=1 E= če so za posamezen prehod poleg proženja potrebni dodatni pogoji, jih dopišemo k puščici; pri ser. števcu s flip-flopi D teh ni, saj šteje ob vsakem proženju, pri ser. števcu s flip-flopi T pa je pogoj E=1

227 Sekvenčna vezja Števci 1 T Q Q 0 sinhronski števec (angl. synchronous counter) zgradimo iz flip-flopov T s proženjem ob pozitivni fronti, njihove vhode C pa povežemo na skupni signal C C CQ T Q Q 1 ker pri štetju negacija posameznega bita nastopi le, če imajo vsi nižje ležeči biti vrednost 1, izhode Q vežemo kaskadno na vhode T celic, ki vsebujejo višje ležeče bite; izhod Q 0 vežemo neposredno, vse ostale pa prek vrat AND CQ T Q CQ Q 2 T Q Q 3 CQ 4-bitni sinhronski števec

228 Sekvenčna vezja Števci 1 T Q Q 0 proženje flip-flopov in s tem spreminjanje stanj Q je sočasno, zato je tak števec sinhronski, a spremembe na vratih AND potujejo kaskadno; če naslednje proženje nastopi prehitro, vrednosti na vhodih T, do katerih se te spremembe še niso razširile, lahko še niso pravilne in pride do napake za pravilno delovanje takšnega števca mora biti na vhodu T zgornjega flip-flopa enica, tak števec pa (podobno kot serijski števec, izveden s flip-flopi D) tudi ne omogoča deaktivacije štetja (ni vhoda E) C CQ T Q CQ T Q CQ T Q Q 1 Q 2 Q 3 CQ 4-bitni sinhronski števec

229 Sekvenčna vezja Števci E T Q Q 0 deaktivacijo omogočimo tako, da tudi kaskadno vezavo Q 0 izvedemo skozi vrata AND, na vhod zgornjega flip-flopa T in hkrati na drugi vhod dodanih vrat AND pa privedemo signal E tako dobimo sinhronski števec z aktivacijo (angl. synchronous counter with enable), ki šteje le pri E=1 spremembe se skozi vrata AND tudi tu širijo kaskadno, zato prekratek zamik med zaporednimi proženji (oz. previsoka frekvenca ure pri periodičnem proženju) privede do napak pri štetju C CQ T Q CQ T Q CQ T Q Q 1 Q 2 Q 3 CQ 4-bitni sinhr. števec z aktivacijo

230 Sekvenčna vezja Števci E T Q Q 0 za povsem paralelno delovanje števca C se moramo izogniti kaskadnemu širjenju podatkov o vrednostih nižje ležečih bitov, zato v vsak flip-flop dovedemo podatke o vseh nižje ležečih bitih za to potrebujemo vrata AND z ustreznim številom vhodov: zgornja so tudi tukaj 2-vhodna (E in Q 0 ), sledijo 3-vhodna (E, Q 0, Q 1 ), nato 4-vhodna itd. tako dobimo sinhronski paralelni števec z aktivacijo (angl. synchronous parallel counter with enable), ki je najhitrejša, a hkrati tudi najobsežnejša izvedba digitalnega števca CQ T Q CQ T Q CQ T Q CQ Q 1 Q 2 Q 3 4-bitni sinhr. par. števec z aktivacijo

231 Sekvenčna vezja Števci 4-bitna sinhronska paralelna števca: 74HCT161 z binarnim štetjem ( ) in 74HCT160 z BCD štetjem ( ) (oba Philips); CEP: aktivacija štetja (count enable parallel) PE: asinhronska prednastavitev števca z vhodov D 0 -D 3 (parallel enable, pri PE=0 prednastavitev) 4-bitni sinhronski paralelni števec s štetjem navzgor in navzdol DM- 74LS169 (Natl. Semiconductor); U/D = 1: štetje navzgor ( ) U/D = 0: navzdol ( )

232 Sekvenčna vezja Pomikalni registri pomikalni register (angl. shift register) je register, zgrajen tako, da se podatki v njem ob vsakem proženju pomaknejo za en bit serijski pomikalni register (angl. serial-in, serial-out shift register, SISO shift register) in serijsko-paralelni pomikalni register (angl. serial-in, parallel-out shift register, SIPO shift register) zgradimo iz kaskade flip-flopov D SI C D Q CQ D Q CQ D Q CQ D Q SI D Q Q 1 C CQ D Q CQ D Q CQ SO D Q Q 2 Q 3 Q 4 CQ CQ 4-bitni pomikalni register SISO 4-bitni pomikalni register SIPO

233 Sekvenčna vezja Pomikalni registri v pomikalnem registru SISO je navzven dosegljiv le en izhod, uporaben pa je za zakasnitev signala; če na C dovedemo periodično proženje, izhod n-bitnega registra zaostaja za vhodom za n pulzov ure SI C D Q CQ D Q CQ SI D Q Q 1 C CQ D Q CQ Q 2 v pomikalnem registru SIPO so navzven dosegljivi izhodi iz vseh flip-flopov, uporabljamo pa jih predvsem pri pretvorbah podatkov iz serijske v paralelno obliko D Q CQ D Q SO D Q CQ D Q Q 3 Q 4 CQ CQ 4-bitni pomikalni register SISO 4-bitni pomikalni register SIPO

234 Sekvenčna vezja Pomikalni registri in krožni števci s pomikalnim registrom lahko zgradimo tudi krožni števec (angl. ring counter), katerega stanje tvorijo ničle in ena enica, ki se ob vsakem proženju pomakne za eno mesto oz. en bit; diagram stanj 4-bitnega krožnega števca torej izgleda takole: izvedemo ga s 4-bitnim registrom SIPO, v katerega ob prvih štirih proženjih zapišemo zaporedje {1,0,0,0}, nato pa SI povežemo z izhodom Q 4 SI D Q Q 1 C D D D CQ Q CQ Q CQ Q CQ 4-bitni pomikalni register SIPO Q 2 Q 3 Q 4

235 Sekvenčna vezja Pomikalni registri in krožni števci 4-bitni dvosmerni pomikalni register 74HCT194 (Philips); S 0 =0,S 1 = 0: pomikanje deaktivirano S 0 =0,S 1 = 1: pomikanje v levo (branje podatka iz D SL ) S 0 =1,S 1 =0:pomikanje v desno (branje podatka iz D SR ) S 0 =1,S 1 = 1: paralelni zapis vhodov D 0 -D 3

236 Sekvenčna vezja Analiza in sinteza sekvenčnih vezij analiza sekvenčnega vezja je postopek, s katerim pridemo do razumevanja vezja (t.j. iz zgradbe vezja dobimo opis delovanja), sinteza pa postopek, s katerim načrtujemo vezje, ki bo izvajalo zastavljene naloge (t.j. iz opisa delovanja dobimo zgradbo vezja) oba postopka sta najpreprostejša v primeru sinhronskih sekvenčnih vezij s periodičnim dinamičnim proženjem takšnim vezjem bomo odslej rekli sekvenčna vezja z uro (angl. clocked sequential circuits); besedi "sinhronska" in "dinamično" bomo opustili, saj je praviloma ura namenjena sinhronizaciji, proženje s pulzi ure pa je dinamično (t.j. celice v teh vezjih so flip-flopi) v shematskih prikazih teh vezij bomo signal, ki dovaja pulze ure, označili s "CLK", v simbolih flip-flopov D, T in JK v vezjih pa bomo obdržali splošnejši "C" (control/clock/count/...), saj so sami flip-flopi enaki ne glede na to, ali je proženje periodično ali aperiodično

237 Sekvenčna vezja Analiza sekvenčnih vezij pri analizi delovanja sekvenčnega vezja so nam v pomoč tabele, enačbe in diagrami, ki opisujejo delovanje vezja na nivoju posameznih flip-flopov: - vzbujalna tabela flip-flopa, ki smo jo že spoznali pri obravnavi posameznih flip-flopov - karakteristična tabela flip-flopa, - karakteristična enačba flip-flopa in - karakteristični diagram flip-flopa... ter na nivoju vezja kot celote: - vzbujalne enačbe sekvenčnega vezja, - enačbe stanj in izhodov sekvenčnega vezja, - tabela stanj in izhodov sekvenčnega vezja in - diagram stanj sekvenčnega vezja, preprosta primera katerega smo spoznali pri opisu delovanja navadnega in krožnega števca

238 Sekvenčna vezja Karakteristična tabela, enačba in diagram flip-flopa D karakteristična tabela flip-flopa podaja njegovo naslednje stanje (Q * ) kot funkcijo vhodov (D / T / J in K) in trenutnega stanja (Q); dobimo jo s predelavo iz vzbujalne tabele, v kateri prestavimo stolpce tako, da si sledijo vhodi, trenutno stanje in naslednje stanje karakteristično enačbo flip-flopa dobimo, če iz karakteristične tabele flip-flopa (tako kot iz pravilnostne tabele preklopne funkcije) zapišemo vsoto mintermov in rezultat poenostavimo karakteristični diagram podaja pravila prehajanja stanj še grafično D Q CQ flip-flop D Q Q * D vzbuj. tabela D Q Q * karakt. tabela Q * = DQ + DQ = D karakteristična enačba D=1 D=1 Q=0 Q=1 D=0 D=0 karakteristični diagram

239 Sekvenčna vezja Karakteristična tabela, enačba in diagram flip-flopa T T Q CQ flip-flop T Q Q * T vzbuj. tabela T Q Q * karakt. tabela Q * = TQ + TQ = T + Q karakteristična enačba T=0 T=1 Q=0 Q=1 T=0 T=1 karakteristični diagram

240 Sekvenčna vezja Karakteristična tabela, enačba in diagram flip-flopa JK J Q C K Q flip-flop JK Q Q * J K vzbuj. tabela J K Q Q * Q * = JQ + KQ karakteristična enačba JK=1 0 JK= 1 0 Q=0 Q=1 0 JK=0 1 0 JK= 11 karakteristični diagram 0 1 karakt. tabela

241 Sekvenčna vezja Mealyjeva in Mooreova vezja po principu delovanja delimo sekvenčna vezja z uro na: - Mealyjeva vezja, v katerih so tako naslednje stanje kot izhodi funkcije vhodov in trenutnega stanja, - Mooreova vezja, v katerih je naslednje stanje funkcija vhodov in trenutnega stanja, izhodi pa so funkcije zgolj trenutnega stanja tako Mealyjeva kot Mooreova vezja tvorijo trije deli: - vhodna kombinacijska struktura, v katero vstopajo vhodi in (prek povratne zveze) stanje vezja ter določa naslednje stanje - sekvenčna struktura iz flip-flopov, v kateri je zapisano trenutno stanje vezja, vsi flip-flopi pa so proženi z istim signalom (CLK), - izhodna kombinacijska struktura, v katero vstopajo vhodi in stanje (pri Mealyjevih vezjih) oziroma le stanje (pri Mooreovih) ter določa izhode

242 Sekvenčna vezja Mealyjeva in Mooreova vezja vhodi vhodna kombinacijska struktura določanaslednje stanje vzbujanje sekvenčna struktura zapisuje in hrani stanje stanje izhodna kombinacijska struktura določaizhode izhodi ura Mealyjevo vezje vhodi vhodna kombinacijska struktura določanaslednje stanje vzbujanje sekvenčna struktura zapisuje in hrani stanje stanje izhodna kombinacijska struktura določaizhode izhodi ura Mooreovo vezje

243 Sekvenčna vezja Mealyjeva in Mooreova vezja v sekvenčnih vezjih z več izhodi so lahko ti tudi različnih tipov: nekateri Mealyjevi, drugi Mooreovi v Mooreovih vezjih so izhodi sinhronski, t.j. spreminjajo se samo ob proženjih, ko se spreminjajo tudi stanja v sekvenčni strukturi vezja v Mealyjevih vezjih pa so izhodi asinhronski, saj sprememba vhodov vpliva na izhode tudi mimo sekvenčne strukture, zato se lahko izhodi spremenijo tudi med dvema proženjema (lahko tudi večkrat); ker v Mealyjevih vezjih vhodi vplivajo na izhode po dveh poteh z različnima zakasnitvama, lahko začasno pride tudi do nepravilne vrednosti izhodov, ki traja do trenutka, ko se sprememba vhodov odrazi tudi na izhodu sekvenčne strukture ti težavi Mealyjevih vezij odpravimo tako, da spreminjanje vhodov omejimo na le eno spremembo na en pulz ure, izhode pa vzorčimo le enkrat na pulz; oboje lahko izvedemo s spominskimi celicami

244 Sekvenčna vezja Primer analize vezja z uro oglejmo si postopek analize sekvenčnega vezja z uro na primeru vezja na desni vhod x vzbujanje stanje 1 D 0 D Q CQ Q 0 Q 0 vezje ima en vhod (x), dve spremenljivki stanja (Q 0 in Q 1, t.j. 4 možna stanja: Q 0 Q 1 = 00,01,10,11) in en izhod (y) sekvenčno strukturo tvorita dva flip-flopa D s proženjem ob poz. fronti, strukturo pa ob vsakem proženju vzbujamo skozi vhoda D 0 in D D 1 D Q CQ CLK izhod Q 1 y

245 Sekvenčna vezja Primer analize vezja z uro vezje je Mealyjevo, saj vhod vpliva na izhodno kombinacijsko strukturo v vezju tudi neposredno, ne le skozi stanje sekvenčne strukture x 1 sekvenčna struktura D D Q CQ Q Q 0 Q 0 Q 1 vh. komb. struktura CQ CLK 1 izh. komb. struktura 1 y

246 Sekvenčna vezja Vzbujalne enačbe vzbujalne enačbe sekvenčnega vezja podajajo vhode v posamezne flip-flope kot funkcije trenutnih stanj teh flip-flopov in vhodov vezja: D 0 = Q 0 x + Q 1 x = (Q 0 +Q 1 )x D 1 = Q 0 x x vzbujanje 1 D 0 D 1 D Q CQ D Q CQ CLK Q 0 Q 0 Q y

247 Sekvenčna vezja Enačbe stanj in izhodov enačbe stanj dobimo z vstavitvijo vzbujalnih enačb vezja v karakteristične enačbe ustreznih flip-flopov, enačbe izhodov pa razberemo iz zgradbe vezja: x 1 stanje D Q CQ D Q Q 0 Q 0 Q 1 Q 0* = D 0 = (Q 0 +Q 1 )x CQ Q 1* = D 1 = Q 0 x CLK y = (Q 0 +Q 1 )x 1 izhod 1 y

248 Sekvenčna vezja Tabela stanj in izhodov tabelo stanj in izhodov dobimo tako, da zapišemo vse kombinacije trenutega stanja in vhodov, nato pa iz enačb stanj in izhodov določimo naslednje stanje in izhode za vsako kombinacijo: x 1 D Q CQ D Q Q 0 Q 0 Q 1 Q 0* =(Q 0 +Q 1 )x Q 1* =Q 0 x y =(Q 0 +Q 1 )x Q 0 Q 1 x Q 0* Q* 1 y CLK CQ y

249 Sekvenčna vezja Diagram stanj diagram stanj dobimo iz tabele st. in izh.: za vsako stanje narišemo krog in vanj vpišemo vrednosti Q 0 Q 1...Q n, za vsak prehod pa puščico ter ob njej vhod, ki povzroči ta prehod, in izhod, ki nastopi ob prehodu x 1 D Q CQ D Q Q 0 Q 0 Q 1 Q 0 Q 1 x Q 0* Q 1 * y CQ CLK y

250 Sekvenčna vezja Diagram stanj diagram stanj dobimo iz tabele st. in izh.: za vsako stanje narišemo krog in vanj vpišemo vrednosti Q 0 Q 1...Q n, za vsak prehod pa puščico ter ob njej vhod, ki povzroči ta prehod, in izhod, ki nastopi ob prehodu x 1 D Q CQ D Q Q 0 Q 0 Q 1 Q 0 Q 1 x Q 0* Q 1 * y 0/0 CQ / CLK y

251 Sekvenčna vezja Diagram stanj diagram stanj dobimo iz tabele st. in izh.: za vsako stanje narišemo krog in vanj vpišemo vrednosti Q 0 Q 1...Q n, za vsak prehod pa puščico ter ob njej vhod, ki povzroči ta prehod, in izhod, ki nastopi ob prehodu x 1 D Q CQ D Q Q 0 Q 0 Q 1 Q 0 Q 1 x Q 0* Q* 1 y 0/ /0 0/ / CLK CQ y

252 Sekvenčna vezja Diagram stanj diagram stanj dobimo iz tabele st. in izh.: za vsako stanje narišemo krog in vanj vpišemo vrednosti Q 0 Q 1...Q n, za vsak prehod pa puščico ter ob njej vhod, ki povzroči ta prehod, in izhod, ki nastopi ob prehodu x 1 D Q CQ D Q Q 0 Q 0 Q 1 Q 0 Q 1 x Q 0* Q* 1 y 0/ /0 0/1 01 0/1 1/0 1/ CQ CLK y

253 Sekvenčna vezja Diagram stanj diagram stanj dobimo iz tabele st. in izh.: za vsako stanje narišemo krog in vanj vpišemo vrednosti Q 0 Q 1...Q n, za vsak prehod pa puščico ter ob njej vhod, ki povzroči ta prehod, in izhod, ki nastopi ob prehodu x 1 D Q CQ D Q Q 0 Q 0 Q 1 Q 0 Q 1 x Q 0* Q 1 * y 0/0 1/ /0 0/ /0 0/1 0/1 1/ CQ CLK y

254 Sekvenčna vezja Poimenovanje stanj stanja lahko tudi poimenujemo: Q 0 Q 1 =00=S 0,Q 0 Q 1 =01=S 1,... ter temu prilagodimo tabelo stanj in izhodov ter diagram stanj x 1 D Q CQ D Q Q 0 Q 0 Q 1 Q 0 Q 1 x Q 0* Q* 1 y x=0 x=1 S S * y S * y S 0 S 0 0 S 1 0 S 1 S 0 1 S 3 0 S 2 S 0 1 S 2 0 S 3 S 0 1 S CQ CLK y

255 Sekvenčna vezja Poimenovanje stanj stanja lahko tudi poimenujemo: Q 0 Q 1 =00=S 0,Q 0 Q 1 =01=S 1,... ter temu prilagodimo tabelo stanj in izhodov ter diagram stanj x 1 D Q CQ D Q Q 0 Q 0 Q 1 x=0 x=1 S S * y S * y S 0 S 0 0 S 1 0 S 1 S 0 1 S 3 0 S 2 S 0 1 S 2 0 S 3 S 0 1 S 2 0 0/0 1/0 S 0 0/1 S 2 1/0 0/1 0/1 1/0 S 1 1/0 S CQ CLK y

256 Sekvenčna vezja Besedni opis delovanja vezja iz diagrama stanj sekvenčnega vezja je najlažje razumeti tudi delovanje vezja: če izhajamo iz stanja S 0, ima izhod vrednost 0 tako dolgo, dokler ima vhod vrednost 1 ob spremembi vhoda na 0 dobi izhod vrednost 1, vezje pa se vrne v S 0 0/0 S 0 0/1 1/0 S 2 vezje je torej detektor 0/1 0/1 (vhodnega) S zaporedja "10" 1 1/0 S 3 x 1/0 1/ D Q CQ D Q CQ CLK Q 0 Q 0 Q 1 y

257 Sekvenčna vezja Poimenovanje stanj in kodirna tabela za boljše razumevanje delovanja vezja so lahko poimenovanja stanj tudi opisna npr. pri vezjih, ki upravljajo delovanje semaforjev na križišču: RD(eča), RU(mena), ZE(lena) če stanja poimenujemo opisno, diagram stanj več ne vsebuje podatkov o binarnih vrednostih spremenljivk stanja, zato moramo za popoln opis delovanja vezja priložiti še kodirno tabelo, ki podaja dogovor o kodiranju stanj: S Q 0 Q 1 Q 2 RD-RD RD-RU RD-ZE RD-RU RD-RD RU-RD ZE-RD RU-RD RD- RD1 RU- RD2 RD- RU1 ZE- RD RD- ZE RU- RD1 RD- RU2 RD- RD2

258 Sekvenčna vezja Diagrami stanj Mealyjevih in Mooreovih vezij tako v Mealyjevih kot v Mooreovih vezjih vhodi vplivajo na sekvenčno strukturo in s tem na stanje vezja; vsak prehod med stanjema je tako odvisen od vhodov, zato v diagramu stanj vrednosti vhodov pišemo ob ustrezni puščici v Mealyjevih vezjih so izhodi odvisni tako od stanja kot neposredno od vhodov, zato v diagramu stanj vrednosti izhodov pišemo ob puščici, ki podaja prehod iz ustreznega stanja ob ustrezni vrednosti vhodov v Mooreovih vezjih pa so izhodi odvisni samo od stanja, zato v diagramu stanj njihove vrednosti navajamo kar ob ustreznih stanjih 1/0 1/1 S 0 0/1 S 1 1/1 0/0 0/0 S 2 diagram stanj Mealyjevega vezja S 0 /0 S 1 /1 0 1 S 2 /0 0 diagram stanj Mooreovega vezja

259 Sekvenčna vezja Analiza in sinteza sekvenčnih vezij postopek analize sekvenčnega vezja z uro, ki smo ga spoznali na primeru detektorja zaporedja "10", je sestavljen iz naslednjih korakov: 1) določimo vzbujalne enačbe flip-flopov 2) določimo enačbe stanj in izhodov 3) zapišemo tabelo stanj in izhodov (stanja lahko tudi poimenujemo) 4) narišemo diagram stanj (pri opisnih imenih dodamo kodirno tabelo) 5) podamo besedni opis delovanja vezja pri sintezi vezja sledimo tem korakom približno v nasprotnem redu: 1) podamo besedni opis delovanja vezja 2) narišemo diagram stanj (število stanj lahko nato še minimiziramo) 3) zapišemo kodirno tabelo in tabelo stanj 4) določimo enačbe stanj in izhodov ter jih minimiziramo 5) izberemo vrsto flip-flopov in določimo vzbujalne enačbe 6) narišemo simbolno shemo vezja

260 Sekvenčna vezja Primer sinteze vezja z uro tudi postopek sinteze sekvenčnega vezja z uro si oglejmo na primeru vezja, ki deluje kot detektor zaporedja besedni opis delovanja: sekvenčno vezje naj bo Mooreovo, deluje pa naj kot detektor vhodnega zaporedja x="111"; ob takem zaporedju naj se na izhodu pojavi y=1, sicer pa naj bo na izhodu y=0 diagram stanj: -v izhodiščnem stanju S 0 bo y= pri x=0 bo vezje ostalo v S 0 S -pri x=1 bo prešlo v S 1 (detekcija "1"), 0 /0 0 S 1 /0 kjer bo še vedno y=0 1 -pri x=0 se bo vezje iz S 1 vrnilo v S 0, pri x=1 pa bo prešlo v S 2 S 2 /0 (detekcija "11"), še vedno z y=0

261 Sekvenčna vezja Primer sinteze vezja z uro tudi postopek sinteze sekvenčnega vezja z uro si oglejmo na primeru vezja, ki deluje kot detektor zaporedja besedni opis delovanja: sekvenčno vezje naj bo Mooreovo, deluje pa naj kot detektor vhodnega zaporedja x="111"; ob takem zaporedju naj se na izhodu pojavi y=1, sicer pa naj bo na izhodu y=0 diagram stanj:... (nadaljevanje) 0 1 -pri x=0 se bo vezje iz S 2 vrnilo v S 0, S pri x=1 pa prešlo v S 3 (detekcija "111"), 0 /0 0 S 1 /0 kjer bo y=1, saj je prišlo do detekcije "111" pri x=0 se bo vezje tudi iz S 3 vrnilo v S 0, pri x=1 pa bo ostalo v S 3, saj tudi zaporedja štirih in več enic vsebujejo "111" S 3 /1 S 2 /0 1 1

262 Sekvenčna vezja Primer sinteze vezja z uro za štiri različna stanja, S 0 -S 3, bomo potrebovali dve spremenljivki stanja; kot običajno ju poimenujmo Q 0 in Q 1, izberimo pa tudi običajni način kodiranja, ki ga podaja spodnja kodirna tabela tabelo stanj in izhodov dobimo iz diagrama stanj: iz vsakega od osmih prehodov med stanji razberemo ustrezne vrednosti Q 0*,Q 1* in y 0 S 0 /0 0 S 3 / S 1 /0 1 S 2 /0 S Q 0 Q 1 S S S S Q 0 Q 1 x Q 0* Q 1 * y

263 Sekvenčna vezja Primer sinteze vezja z uro enačbe stanj in izhodov zapišemo iz tabele stanj in izhodov kot vsote mintermov, ki jih nato minimiziramo (pri obsežnejših izrazih si pomagamo s K-diagramom in/ali drugimi postopki poenostavljanja) za Q 0 in Q 1 potrebujemo dve spominski celici; če izberemo flip-flopa D, velja Q * = D, zato sta vzbujalni enačbi kar enaki enačbama stanj Q 0 Q 1 x Q 0* Q 1 * y Q 0* = Q 0 Q 1 x + Q 0 Q 1 x + Q 0 Q 1 x = (Q 0 +Q 1 )x Q 1* = Q 0 Q 1 x + Q 0 Q 1 x + Q 0 Q 1 x = (Q 0 +Q 1 )x y = Q 0 Q 1 x + Q 0 Q 1 x = Q 0 Q 1 D 0 = (Q 0 +Q 1 )x D 1 = (Q 0 +Q 1 )x

264 Sekvenčna vezja Primer sinteze vezja z uro iz vzbujalnih enačb obeh flip-flopov in enačbe izhoda sledi še zgradba vezja, ki jo podaja simbolna shema na desni x 1 D Q CQ Q 0 y = Q 0 Q 1 x + Q 0 Q 1 x = Q 0 Q 1 1 D Q Q 1 D 0 = (Q 0 +Q 1 )x D 1 = (Q 0 +Q 1 )x CQ CLK Q 1 y

265 Tristanjski izravnalniki in vodila

266 Tristanjski izravnalniki in vodila Izravnalnik izravnalnik (angl. buffer oz. noninverting buffer) zgradimoizdveh zaporednih negatorjev; z njim dosežemo, da se morebitni raznoliki vhodni napetostni nivoji "izravnajo" pretvorijo bodisi v nivo, ki v dani tehnologiji ustreza logični enici, ali pa v nivo, ki ustreza logični ničli: U D [V] simbol izravnalnika = U 1 1 vezje U D U[V] karakteristika izravnalnika

267 Tristanjski izravnalniki in vodila Izravnalnik s histerezo in negator s histerezo izravnalnik s histerezo (angl. buffer with hysteresis oz. Schmitt-trigger buffer) preklopi iz ničle v enico pri nekoliko višji vhodni napetosti kot pa iz enice v ničlo; tako je izhod ob preklopih manj občutljiv na morebitni šum v vhodnem signalu negator s histerezo (angl. U D [V] 5 inverter with hysteresis oz. Schmitt-trigger inverter) 4 deluje enako, le z negativno 3 izhodno logiko (t.j. ima približno zrcalno karateristiko) simbol izravnalnika s histerezo U[V] karakteristika izravnalnika s histerezo simbol negatorja s histerezo

268 Tristanjski izravnalniki in vodila Tristanjski izravnalnik tristanjski izravnalnik (angl. three-state buffer) ima še kontrolni vhod, pri vrednosti 0 na njem pa je izhod deaktiviran deaktivirani izhod se obnaša tako, kot da bi bila njegova povezava z vhodom prekinjena (to je tretje stanje izravnalnika t.i. stanje visoke impedance), prekinitev pa dejansko ni izvedena z mehanskim stikalom, temveč s tranzistorji tudi trist. izr. imajo lahko negativno logiko in/ali histerezo: 1 1 = simbol tristanjskega izravnalnika nadomestno vezje 1 1 1

269 Tristanjski izravnalniki in vodila Vodila vodilo (angl. bus) je pot, po kateri se v digitalnem sistemu prenašajo podatki serijsko vodilo (angl. serial bus) je 1-bitno podatki potujejo po enem samem vodniku, bit za bitom; danes najbolj razširjen je protokol USB (angl. universal serial bus = univerzalno serijsko vodilo) paralelno vodilo (angl. parallel bus) pa za prenos podatkov uporablja več vzporednih vodnikov; n-bitno paralelno vodilo tako omogoča sočasen prenos celotnega n-bitnega podatka; v osebnih računalnikih so danes najbolj razširjene različice paralelnih vodil PCI (angl. peripheral component interconnection = medsebojna povezava perifernih komponent) in SCSI (angl. small computer system interface = vmesnik za male računalniške sisteme) tristanjski izravnalniki so bistven gradnik tako v serijskih kot v paralelnih vodilih, saj omogočajo, da več komponent digitalnega sistema pošilja podatke po istem vodilu (seveda ne sočasno)

270 Tristanjski izravnalniki in vodila Tristanjski izravnalniki in serijska vodila 1-bitno vodilo princip delovanja serijskega vodila prikazuje vezje na desni: - osem komponent digitalnega sistema (na sliki niso prikazane) generira osem različnih 1-bitnih izhodnih podatkov d 0 -d 7, ki dostopajo do vodila vsak skozi svoj tristanjski izravnalnik - deaktivacijske vhode izravnalnikov krmili binarni dekodirnik 3/8, ki zagotavlja, da podatke po vodilu vselej pošilja le ena komponenta - komponenti pošiljanje podatkov po vodilu omogočimo tako, da njen binarni naslov dovedemo na vhode dekodirnika (npr. pri x 2 x 1 x 0 =101 je na vodilu d 5 ) x 2 x 1 x 0 3/8 d 0 d 1 d 2 d

271 Tristanjski izravnalniki in vodila n-bitni tristanjski vmesniki in paralelna vodila po n-bitnem paralelnem vodilu prenašamo n-bitne podatke; da podatke po vodilu vselej pošilja le ena komponenta, zagotavlja n-bitni tristanjski vmesnik (angl. n-bit three-state buffer), ki ga tvori n tristanjskih izravnalnikov: E a 0 1 y 0 x 2 1 x 1 a 1 y 1 x 0 3/8 n 1 = d 0,0 d 0,n 1 n 1 d 1,0 d 1,n 1 n 1 d 2,0 d 2,n 1 n 1 n-bitno vodilo simbol n-bitnega tristanjskega vmesnika a n 1 vezje 1 y n 1 d 7,0 d 7,n 1 n 1

272 Tristanjski izravnalniki in vodila Tristanj. vmesniki s histerezo in dvosmerni tristanj. vmesniki tako v serijskih kot v paralelnih vodilih lahko občutljivost na šum znižamo z uporabo tristanjskih izravnalnikov s histerezo n-bitni dvosmerni tristanjski vmesnik (angl. n-bit three-state transmitter-receiver oz. n-bit three-state transceiver) omogoča, da zamenjamo vlogi vhodov in izhodov vmesnika 8-bitni, 8-bitni dvosmerni in 16-bitni tristanjski vmesnik SN74LS541, SN74LS245 in SN74ABT16540 (vsi Texas Instruments); vsak ima histerezo približno 0.4 V 32-bitni tristanjski vmesnik 74VCX32244 (Fairchild Semiconductor)

273 Programirljiva sekvenčna vezja

274 Programirljiva sekvenčna vezja Bralno-pisalni pomnilnik (RAM) spomnimo se zgradbe in delovanja bralnega pomnilnika (ROM/PROM): povezave v pomnilni mreži vzpostavljamo oz. prekinjamo s posebnimi orodji (z nekajkrat večjo napetostjo od običajne, z UV svetlobo ipd.)

275 Programirljiva sekvenčna vezja Bralno-pisalni pomnilnik (RAM) bralno-pisalni pomnilnik (angl. random-access memory, RAM) ima podobno zgradbo, a povezave v mreži izvedemo s spominskimi celicami; to omogoči zapisovanje skozi vhode brez posebnih orodij

276 Programirljiva sekvenčna vezja Statični bralno-pisalni pomnilnik (SRAM) statični bralno-pisalni pomnilnik (angl. static RAM, SRAM) je zgrajen iz spominskih celic SRAM (angl. SRAM cells) celico SRAM sestavljajo vrata AND, zapah D in tristanjski izravnalnik: I 1 D Q S C Q W O = I O S W simbol na vhod I (angl. input = vhod) dovedemo podatek, ki ga želimo zapisati v celico, izhod O (angl. output = izhod) pa povežemo z vodilom vhod S (angl. select = izbrati) določa, kdaj je celica aktivna: pri S=1 ima zapisani podatek Q dostop do vodila, pri S=0 pa ne vhod W (angl. write = pisati) omogoča zapis podatka v aktivno celico: če je S=1 in hkrati W=1, se vrednost z vhoda I zapiše v stanje Q

277 a 1 a dekodirnik Programirljiva sekvenčna vezja Statični bralno-pisalni pomnilnik (SRAM) write enable chip select output enable WE CS OE x 3 x 2 x 1 x 0 kodirnik I O I O I O I O S S S S W W W W I O I O I O I O S S S S W W W W I O I O I O I O S S S S W W W W I O I O I O I O S S S S W W W W y 3 y 2 y 1 y 0

278 a 1 a dekodirnik Programirljiva sekvenčna vezja Statični bralno-pisalni pomnilnik (SRAM) write enable chip select output enable WE CS OE x 3 x 2 x 1 x 0 kodirnik I O I O I O I O S S S S W W W W I O I O I O I O S S S S W W Pisanje Wpodatka: W 1) na vhode x 3 -x 0 dovedemo 4-bitni I O I O podatek, I O ki ga želimo I O zapisati S S S S W W 2) na vhoda W a 1 -a 0 dovedemo W naslov vrstice, v katero ga želimo zapisati I O I O3) postavimo I O CS = 1 Iin OWE = 1 S S S S W W 4) postavimo W WE = 0W y 3 y 2 y 1 y 0

279 a 1 a dekodirnik Programirljiva sekvenčna vezja Statični bralno-pisalni pomnilnik (SRAM) write enable chip select output enable WE CS OE x 3 x 2 x 1 x 0 kodirnik I O I O I O I O S S S S W W W W I O I O I O I O S S S S W W Branje podatka: W W 1) na a 1 -a 0 dovedemo naslov vrstice, I O I O iz katere I O želimo prebrati I O podatek S S S S W W 2) postavimo W CS = 1 Win OE = 1 3) odčitamo podatek na izhodih y 3 -y 0 I O I O I O I O S S S S W W W W y 3 y 2 y 1 y 0

280 Programirljiva sekvenčna vezja Statični bralno-pisalni pomnilnik (SRAM) I O S = W I 1 D Q S C Q W O ker se zapah odziva na spremembe na vhodu D ves čas, ko je C=1, morajo vrednosti I in s tem vrednosti na podatkovnih vhodih x i ostati stalne ves čas, ko je S=1 in W=1; pri uporabi flip-flopa to ne bi bilo potrebno, a bi bilo vezje z enakim številom celic dvakrat večje zahteva po čim večjem številu celic SRAM v vezju je tudi razlog, da v dejanskih tehnoloških izvedbah vrata AND nadomestimo z vrati NOR: I S W O = I 1 D Q S 1 C Q W O

281 Programirljiva sekvenčna vezja Statični bralno-pisalni pomnilnik (SRAM) pri pisanju moramo biti še posebej pozorni na to, da se v času, ko je W=1, ne spreminjajo vrednosti na naslovnih vhodih a i, sicer v enem pisalnem ciklu pride do zapisa istega podatka v dve ali več vrstic v osnovni izvedbi SRAM, ki smo jo obravnavali doslej, moramo dovajanje podatkov na naslovne vhode a i, podatkovne vhode x j ter kontrolne vhode CS, WE in OE med seboj sinhronizirati z ustrezno vhodno logiko, ki jo dogradimo k vezju pomnilnika; ker sam pomnilnik te logike ne vsebuje, ga imenujemo tudi asinhronski SRAM v sinhronskem SRAM (SSRAM) je ta vhodna logika že vgrajena; onemogoča spremembe a i in x j med trajanjem pisalnega cikla, prožena pa je dinamično, kar zagotavlja še časovno natančen in sočasen zajem podatkov

282 Programirljiva sekvenčna vezja Statični bralno-pisalni pomnilnik (SRAM) nekatere različice SRAM, od nekaterih najstarejših asinhronskih do najsodobnejše sinhronske izvedbe QDR SSRAM (quad-data-rate = štirikratna hitrost prenosa podatkov), uporabljajo ločeni vodili za vhodne in izhodne podatke preostale izvedbe SRAM, npr. LW SSRAM (late-write = zakasnjeno zapisovanje) in ZBT SSRAM (zero-bus-turnaround = preklop smeri vodila brez zakasnitve), pa so narejene za dvosmerno vodilo: WE CS OE I O S W I O S W I O S W I O S W I O S W I O S W I O S W I O S W x/y 3 x/y 2 x/y 1 x/y 0

283 Programirljiva sekvenčna vezja Statični bralno-pisalni pomnilnik (SRAM) 8K 8 SRAM HM6264 z 8192-imi 8-bitnimi vrsticami in 512K 8 SRAM HM s imi 8-bitnimi vrsticami (oba Hitachi); I/O pri WE = 1 delujejo kot vhodi (skoznje zapisujemo podatke v vrstice, pri WE = 0 pa kot izhodi (skoznje podatki dostopajo iz pomnilnika na vodilo) 2M 36 QDR II SSRAM µpd (NEC/Renesas) z imi 36-bitnimi vrsticami

284 Programirljiva sekvenčna vezja Dinamični bralno-pisalni pomnilnik (DRAM) dinamični bralno-pisalni pomnilnik (angl. dynamic RAM, DRAM) je zgrajen iz spominskih celic DRAM (angl. DRAM cells) celico DRAM sestavljata le en tranzistor in en kondenzator: C G S D napetost na kondenzatorju (U C ) je 1-bitni podatek navpični vodnik je povezan z vodilom napetost na vodoravnem vodniku določa, kdaj ima podatek dostop do vodila; tranzistor je zgrajen tako, da ima povezava S-D pri U GS >0 nizko upornost in omogoča tok v obe smeri (t.j. tako I DS >0 kot I DS <0), pri U GS 0 pa zelo visoko upornost in deluje kot razklenjeno stikalo

285 a 1 a 0 dekodirnik 1 1 Programirljiva sekvenčna vezja Dinamični bralno-pisalni pomnilnik (DRAM) kodirnik write enable chip select output enable WE CS OE x/y 3 x/y 2 x/y 1 x/y 0

286 a 1 a 0 dekodirnik 1 1 Programirljiva sekvenčna vezja Dinamični bralno-pisalni pomnilnik (DRAM) kodirnik write enable chip select output enable WE CS OE Pisanje podatka: 1) na x 3 -x 0 dovedemo podatek 2) postavimo CS = 1 in WE = 1; napetost se z x 3 -x 0 prenese na kondenzatorje na vrhu navpičnih vodnikov 3) na a 1 -a 0 dovedemo naslov vrstice, v katero želimo zapisati podatek; tranzistorji v tej vrstici se odpro in napetost z navpičnih vodnikov se prenese na kondenzatorje v celicah DRAM v tej vrstici 4) postavimo WE = x/y 3 x/y 2 x/y 1 x/y 0

287 a 1 a 0 dekodirnik 1 1 Programirljiva sekvenčna vezja Dinamični bralno-pisalni pomnilnik (DRAM) kodirnik write enable chip select output enable WE CS OE Branje podatka: 1) na x 3 -x 0 dovedemo napetost na meji med območjema logične 0 in 1 (U CC /2) 2) postavimo CS = 1 in WE = 1; U CC /2 se prenese na kond. na vrhu navpičnih vodnikov 3) postavimo WE = 0; U CC /2 ne vzdržujemo več 4) na a 1 -a 0 dovedemo naslov vrstice; tranzistorji vrstice se odpro, kondenzatorji z U C =0 se naelektrijo, z U C = U CC pa razelektrijo, kar napetost na ustreznih navpičnih vodnikih zniža pod U CC /2 oz. zviša nad U CC /2 5) postavimo OE = 1; izravnalniki pretvorijo 1 1 napetosti 1 1 pod oz. 1 nad 1U CC /2 v1 y i =0 1 oz. 1 6) odčitamo podatek na izhodih y 3 -y 0 x/y 3 x/y 2 x/y 1 x/y 0

288 Programirljiva sekvenčna vezja Dinamični bralno-pisalni pomnilnik (DRAM) ker pride ob vsakem branju podatka do delne razelektritve kondenzatorjev, v katerih je zapisana logična 1, in delne naelektritve kondenzatorjev, v katerih je zapisana logična 0, je potrebno prebrano vrstico osvežiti: ob branju jo shranimo v register in jo nato ponovno zapišemo kondenzatorji v celicah DRAM se tudi sicer postopoma praznijo, zato je potrebno občasno osveževati tudi neprebrane vrstice; v tipičnih celicah DRAM se napetost na kondenzatorjih prepolovi po približno 100 ms, zato vse zapisane podatke osvežujemo vsakih 64 ms tudi pomnilnik DRAM je v osnovi asinhronski, če mu dodamo logiko za sinhronizacijo vhodov, pa dobimo sinhronski DRAM (SDRAM) večina današnjih izvedb, vključno z vsemi različicami trenutno najbolj razširjenega DDR SDRAM (double data rate = dvakratna hitrost prenosa podatkov), uporablja dvosmerno vodilo

289 Programirljiva sekvenčna vezja Dinamični bralno-pisalni pomnilnik (DRAM) 4 GB DDR3 SDRAM modul MT16JSS51264H (Micron Technology) vsebuje 8 vezij 8M 64 DDR3 SDRAM s po imi 64-bitnimi vrsticami

290 Programirljiva sekvenčna vezja Generično logično polje (GAL) spomnimo se sedaj še programirljivega logičnega polja (PAL), ki ga uporabljamo za izvedbo preklopnih funkcij: povezave programiramo v dekodirniku (spet s posebnimi orodji), kodirnik pa je nespremenljiv

291 Programirljiva sekvenčna vezja Generično logično polje (GAL) v generičnih logičnih poljih (angl. Generic Array Logic, GAL) so programirljive povezave dekodirnika električno izbrisljive (kot v vezjih EEPROM), novejša vezja PAL in GAL pa vsebujejo tudi spominske celice (predvsem flip-flope D), zato jih lahko programiramo za izvajanje tako kombinacijskih kot sekvenčnih funkcij vezja PAL16L8, PAL16R4, PAL16R6 in PAL16R8 (Texas Instruments); L8 je povsem kombinacijski, R4, R6 oz. R8 pa vsebujejo 4, 6 oz. 8 flip-flopov D; vezji GAL16V8 (Lattice) in PALCE16V8 (AMD) lahko emulirata delovanje vseh štirih vezij

292 Programirljiva sekvenčna vezja Kompleksno programirljivo vezje (CPLD) vezja PROM, PLA, PAL in GAL uvrščamo med enostavna programirljiva vezja (angl. Simple Programmable Logic Devices, SPLD) za reševanje nalog, ki so preobsežne za eno samo vezje SPLD, lahko uporabimo dve ali več takšnih vezij, lahko pa uporabimo tudi kompleksno programirljivo vezje (angl. Complex Programmable Logic Device, CPLD), ki v enem integriranem vezju združuje več vezij SPLD (najpogosteje PAL/GAL), shematsko pa ga lahko prikažemo takole: SPLD SPLD SPLD SPLD SPLD SPLD SPLD SPLD programirljiva matrica povezav (angl. programmable interconnect matrix oz. programmable switch matrix, PSM) omogoča povezavo poljubnega zunanjega vhoda ali izhoda SPLD na poljubni vhod katerega od preostalih SPLD ali zunanji izhod vhodno-izhodni blok (angl. input-output block, IOB) tvorijo vhodi in izhodi vezja CPLD ter njihove povezave s PSM

293 Programirljiva sekvenčna vezja Kompleksno programirljivo vezje (CPLD) CPLD MAXII EPM570G (Altera) s 57 vezji SPLD in 34 vhodno-izhodnimi bloki; deluje pri napetosti 1.8 V in z maksimalno frekvenco 304 MHz

294 Programirljiva sekvenčna vezja Električno programirljivo polje vrat (FPGA) alternativa vezju CPLD je električno programirljivo polje vrat (angl. Field-Programmable Gate Array, FPGA) vezja CPLD so zgrajena iz nekaj vezij PAL ali GAL, vezja FPGA pa iz znatno manjših programirljivih logičnih blokov (angl. programmable logic block oz. configurable logic block), ki omogočajo le izvajanje preprostih kombinacijskih in/ali sekvenčnih funkcij, a je teh blokov bistveno več (tudi več stotisoč), tvorjenje bolj zapletenih funkcij pa omogoča izredno prilagodljiva matrica povezav: programirljivi logični blok (PLB) je zgrajen iz nekaj deset celic SRAM, nekaj multipleksorjev in nekaj flip-flopov D programirljiva matrica povezav omogoča povezavo poljubnega izhoda PLB na poljubni vhod katerega od preostalih PLB vhodno-izhodni blok tvorijo vhodi in izhodi vezja FPGA, vsak blok je programirljiv

295 Programirljiva sekvenčna vezja Električno programirljivo polje vrat (FPGA) FPGA Spartan-6 XC6SLX45T (Xilinx) s 6822 programirljivimi logičnimi bloki, vsak od katerih vsebuje 60 celic SRAM in 8 flip-flopov D; deluje pri napetosti 1.2 V in z maksimalno frekvenco 390 MHz

Booleova algebra. Izjave in Booleove spremenljivke

Booleova algebra. Izjave in Booleove spremenljivke Izjave in Booleove spremenljivke vsako izjavo obravnavamo kot spremenljivko če je izjava resnična (pravilna), ima ta spremenljivka vrednost 1, če je neresnična (nepravilna), pa vrednost 0 pravimo, da gre

Διαβάστε περισσότερα

Preklopna vezja 1. poglavje: Številski sistemi in kode

Preklopna vezja 1. poglavje: Številski sistemi in kode Preklopna vezja 1. poglavje: Številski sistemi in kode Številski sistemi Najpreprostejše štetje zareze (od 6000 pr.n.št.) Evropa Vzhodna Azija Južna Amerika Številski sistemi Egipčanski sistem (od 3000

Διαβάστε περισσότερα

Preklopne funkcije in logična vrata

Preklopne funkcije in logična vrata Načini zapisa Booleove (preklopne) funkcije zapis v eksplicitni (analitični) obliki: - za preproste funkcije (ena, dve, tri spremenljivke): f(a,b), f(x,y,z) -za funkcije n spremenljivk: f(x 1,,x 3,...,x

Διαβάστε περισσότερα

Preklopna vezja 3. poglavje: Preklopne funkcije in elementi

Preklopna vezja 3. poglavje: Preklopne funkcije in elementi Preklopna vezja 3. poglavje: Preklopne funkcije in elementi Trije načini zapisa Booleove (preklopne) funkcije zapis v eksplicitni (analitični) obliki: - za preproste funkcije (ena, dve, tri spremenljivke):

Διαβάστε περισσότερα

Številski sistemi in kode

Številski sistemi in kode Številski sistemi in kode Štetje in merjenje Diskretne in zvezne količine diskretne količine vrednotimo s štetjem zvezne količine vrednotimo z merjenjem (s tehtnico, metrom, termometrom,...) k merjenju

Διαβάστε περισσότερα

KODE ZA ODKRIVANJE IN ODPRAVLJANJE NAPAK

KODE ZA ODKRIVANJE IN ODPRAVLJANJE NAPAK 1 / 24 KODE ZA ODKRIVANJE IN ODPRAVLJANJE NAPAK Štefko Miklavič Univerza na Primorskem MARS, Avgust 2008 Phoenix 2 / 24 Phoenix 3 / 24 Phoenix 4 / 24 Črtna koda 5 / 24 Črtna koda - kontrolni bit 6 / 24

Διαβάστε περισσότερα

Funkcijske vrste. Matematika 2. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 2. april Gregor Dolinar Matematika 2

Funkcijske vrste. Matematika 2. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 2. april Gregor Dolinar Matematika 2 Matematika 2 Gregor Dolinar Fakulteta za elektrotehniko Univerza v Ljubljani 2. april 2014 Funkcijske vrste Spomnimo se, kaj je to številska vrsta. Dano imamo neko zaporedje realnih števil a 1, a 2, a

Διαβάστε περισσότερα

Odvod. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 5. december Gregor Dolinar Matematika 1

Odvod. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 5. december Gregor Dolinar Matematika 1 Matematika 1 Gregor Dolinar Fakulteta za elektrotehniko Univerza v Ljubljani 5. december 2013 Primer Odvajajmo funkcijo f(x) = x x. Diferencial funkcije Spomnimo se, da je funkcija f odvedljiva v točki

Διαβάστε περισσότερα

Funkcije. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 14. november Gregor Dolinar Matematika 1

Funkcije. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 14. november Gregor Dolinar Matematika 1 Matematika 1 Gregor Dolinar Fakulteta za elektrotehniko Univerza v Ljubljani 14. november 2013 Kvadratni koren polinoma Funkcijo oblike f(x) = p(x), kjer je p polinom, imenujemo kvadratni koren polinoma

Διαβάστε περισσότερα

Diferencialna enačba, v kateri nastopata neznana funkcija in njen odvod v prvi potenci

Diferencialna enačba, v kateri nastopata neznana funkcija in njen odvod v prvi potenci Linearna diferencialna enačba reda Diferencialna enačba v kateri nastopata neznana funkcija in njen odvod v prvi potenci d f + p= se imenuje linearna diferencialna enačba V primeru ko je f 0 se zgornja

Διαβάστε περισσότερα

Funkcije. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 21. november Gregor Dolinar Matematika 1

Funkcije. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 21. november Gregor Dolinar Matematika 1 Matematika 1 Gregor Dolinar Fakulteta za elektrotehniko Univerza v Ljubljani 21. november 2013 Hiperbolične funkcije Hiperbolični sinus sinhx = ex e x 2 20 10 3 2 1 1 2 3 10 20 hiperbolični kosinus coshx

Διαβάστε περισσότερα

Zaporedja. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 22. oktober Gregor Dolinar Matematika 1

Zaporedja. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 22. oktober Gregor Dolinar Matematika 1 Matematika 1 Gregor Dolinar Fakulteta za elektrotehniko Univerza v Ljubljani 22. oktober 2013 Kdaj je zaporedje {a n } konvergentno, smo definirali s pomočjo limite zaporedja. Večkrat pa je dobro vedeti,

Διαβάστε περισσότερα

Tretja vaja iz matematike 1

Tretja vaja iz matematike 1 Tretja vaja iz matematike Andrej Perne Ljubljana, 00/07 kompleksna števila Polarni zapis kompleksnega števila z = x + iy): z = rcos ϕ + i sin ϕ) = re iϕ Opomba: Velja Eulerjeva formula: e iϕ = cos ϕ +

Διαβάστε περισσότερα

Odvod. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 10. december Gregor Dolinar Matematika 1

Odvod. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 10. december Gregor Dolinar Matematika 1 Matematika 1 Gregor Dolinar Fakulteta za elektrotehniko Univerza v Ljubljani 10. december 2013 Izrek (Rolleov izrek) Naj bo f : [a,b] R odvedljiva funkcija in naj bo f(a) = f(b). Potem obstaja vsaj ena

Διαβάστε περισσότερα

- navpični niz matrik A in

- navpični niz matrik A in 5. PREKLOPNE STRUKTURE ALI PREKLOPNI NOGOPOLI 5. atrično opisovanje preklopnih vezij in struktur 5.. Osnovna simbolika Vektor: an vodoravni vektor a m navpični vektor atrika: A :m :n :n - matrika reda

Διαβάστε περισσότερα

C A B - vodoravni niz matrik A in B. ; c a - transpozicija matrike C. Spremenljivke A, B, C so matrike z razsežnostmi: t x n ter m x t.

C A B - vodoravni niz matrik A in B. ; c a - transpozicija matrike C. Spremenljivke A, B, C so matrike z razsežnostmi: t x n ter m x t. 5. PREKLOPNE STRUKTURE ALI PREKLOPNI NOGOPOLI 5. atrično opisovanje preklopnih vezij in struktur 5.. Osnovna simbolika Vektor: an vodoravni vektor atrika: a m navpični vektor A :m :n :n - matrika reda

Διαβάστε περισσότερα

LOGIČNE STRUKTURE IN SISTEMI I. prof. dr. Andrej Dobnikar

LOGIČNE STRUKTURE IN SISTEMI I. prof. dr. Andrej Dobnikar LOGIČNE STRUKTURE IN SISTEMI I prof. dr. Andrej Dobnikar 5. februar 2004 2 Splošne informacije Predavatelj: prof. dr. Andrej Dobnikar govorilne ure: četrtek, 3:00-4:00 kabinet v 8. nadstropju Asistent:

Διαβάστε περισσότερα

Funkcije. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 12. november Gregor Dolinar Matematika 1

Funkcije. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 12. november Gregor Dolinar Matematika 1 Matematika 1 Gregor Dolinar Fakulteta za elektrotehniko Univerza v Ljubljani 12. november 2013 Graf funkcije f : D R, D R, je množica Γ(f) = {(x,f(x)) : x D} R R, torej podmnožica ravnine R 2. Grafi funkcij,

Διαβάστε περισσότερα

Logične strukture in sistemi

Logične strukture in sistemi Univerza v Ljubljani Fakulteta za računalništvo in informatiko Logične strukture in sistemi Prvi del Andrej Dobnikar Ljubljana, marec 2009 Kazalo Uvod 7 2 Zgodovinski pregled 9 2. Algebra razredov.................................

Διαβάστε περισσότερα

Zaporedja. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 15. oktober Gregor Dolinar Matematika 1

Zaporedja. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 15. oktober Gregor Dolinar Matematika 1 Matematika 1 Gregor Dolinar Fakulteta za elektrotehniko Univerza v Ljubljani 15. oktober 2013 Oglejmo si, kako množimo dve kompleksni števili, dani v polarni obliki. Naj bo z 1 = r 1 (cosϕ 1 +isinϕ 1 )

Διαβάστε περισσότερα

Delovna točka in napajalna vezja bipolarnih tranzistorjev

Delovna točka in napajalna vezja bipolarnih tranzistorjev KOM L: - Komnikacijska elektronika Delovna točka in napajalna vezja bipolarnih tranzistorjev. Določite izraz za kolektorski tok in napetost napajalnega vezja z enim virom in napetostnim delilnikom na vhod.

Διαβάστε περισσότερα

matrike A = [a ij ] m,n αa 11 αa 12 αa 1n αa 21 αa 22 αa 2n αa m1 αa m2 αa mn se števanje po komponentah (matriki morata biti enakih dimenzij):

matrike A = [a ij ] m,n αa 11 αa 12 αa 1n αa 21 αa 22 αa 2n αa m1 αa m2 αa mn se števanje po komponentah (matriki morata biti enakih dimenzij): 4 vaja iz Matematike 2 (VSŠ) avtorica: Melita Hajdinjak datum: Ljubljana, 2009 matrike Matrika dimenzije m n je pravokotna tabela m n števil, ki ima m vrstic in n stolpcev: a 11 a 12 a 1n a 21 a 22 a 2n

Διαβάστε περισσότερα

*M * Osnovna in višja raven MATEMATIKA NAVODILA ZA OCENJEVANJE. Sobota, 4. junij 2011 SPOMLADANSKI IZPITNI ROK. Državni izpitni center

*M * Osnovna in višja raven MATEMATIKA NAVODILA ZA OCENJEVANJE. Sobota, 4. junij 2011 SPOMLADANSKI IZPITNI ROK. Državni izpitni center Državni izpitni center *M40* Osnovna in višja raven MATEMATIKA SPOMLADANSKI IZPITNI ROK NAVODILA ZA OCENJEVANJE Sobota, 4. junij 0 SPLOŠNA MATURA RIC 0 M-40-- IZPITNA POLA OSNOVNA IN VIŠJA RAVEN 0. Skupaj:

Διαβάστε περισσότερα

Algebraične strukture

Algebraične strukture Poglavje V Algebraične strukture V tem poglavju bomo spoznali osnovne algebraične strukture na dani množici. Te so podane z eno ali dvema binarnima operacijama. Binarna operacija paru elementov iz množice

Διαβάστε περισσότερα

MATEMATIČNI IZRAZI V MAFIRA WIKIJU

MATEMATIČNI IZRAZI V MAFIRA WIKIJU I FAKULTETA ZA MATEMATIKO IN FIZIKO Jadranska cesta 19 1000 Ljubljan Ljubljana, 25. marec 2011 MATEMATIČNI IZRAZI V MAFIRA WIKIJU KOMUNICIRANJE V MATEMATIKI Darja Celcer II KAZALO: 1 VSTAVLJANJE MATEMATIČNIH

Διαβάστε περισσότερα

Kontrolne karte uporabljamo za sprotno spremljanje kakovosti izdelka, ki ga izdelujemo v proizvodnem procesu.

Kontrolne karte uporabljamo za sprotno spremljanje kakovosti izdelka, ki ga izdelujemo v proizvodnem procesu. Kontrolne karte KONTROLNE KARTE Kontrolne karte uporablamo za sprotno spremlane kakovosti izdelka, ki ga izdeluemo v proizvodnem procesu. Izvaamo stalno vzorčene izdelkov, npr. vsako uro, vsake 4 ure.

Διαβάστε περισσότερα

Na pregledni skici napišite/označite ustrezne točke in paraboli. A) 12 B) 8 C) 4 D) 4 E) 8 F) 12

Na pregledni skici napišite/označite ustrezne točke in paraboli. A) 12 B) 8 C) 4 D) 4 E) 8 F) 12 Predizpit, Proseminar A, 15.10.2015 1. Točki A(1, 2) in B(2, b) ležita na paraboli y = ax 2. Točka H leži na y osi in BH je pravokotna na y os. Točka C H leži na nosilki BH tako, da je HB = BC. Parabola

Διαβάστε περισσότερα

1. Definicijsko območje, zaloga vrednosti. 2. Naraščanje in padanje, ekstremi. 3. Ukrivljenost. 4. Trend na robu definicijskega območja

1. Definicijsko območje, zaloga vrednosti. 2. Naraščanje in padanje, ekstremi. 3. Ukrivljenost. 4. Trend na robu definicijskega območja ZNAČILNOSTI FUNKCIJ ZNAČILNOSTI FUNKCIJE, KI SO RAZVIDNE IZ GRAFA. Deinicijsko območje, zaloga vrednosti. Naraščanje in padanje, ekstremi 3. Ukrivljenost 4. Trend na robu deinicijskega območja 5. Periodičnost

Διαβάστε περισσότερα

Kotne in krožne funkcije

Kotne in krožne funkcije Kotne in krožne funkcije Kotne funkcije v pravokotnem trikotniku Avtor: Rok Kralj, 4.a Gimnazija Vič, 009/10 β a c γ b α sin = a c cos= b c tan = a b cot = b a Sinus kota je razmerje kotu nasprotne katete

Διαβάστε περισσότερα

8. Diskretni LTI sistemi

8. Diskretni LTI sistemi 8. Diskreti LI sistemi. Naloga Določite odziv diskretega LI sistema s podaim odzivom a eoti impulz, a podai vhodi sigal. h[] x[] - - 5 6 7 - - 5 6 7 LI sistem se a vsak eoti impulz δ[] a vhodu odzove z

Διαβάστε περισσότερα

2. ΛΟΓΙΚΕΣ ΠΥΛΕΣ. e-book ΛΟΓΙΚΗ ΣΧΕ ΙΑΣΗ ΑΣΗΜΑΚΗΣ-ΒΟΥΡΒΟΥΛΑΚΗΣ- ΚΑΚΑΡΟΥΝΤΑΣ-ΛΕΛΙΓΚΟΥ 1

2. ΛΟΓΙΚΕΣ ΠΥΛΕΣ. e-book ΛΟΓΙΚΗ ΣΧΕ ΙΑΣΗ ΑΣΗΜΑΚΗΣ-ΒΟΥΡΒΟΥΛΑΚΗΣ- ΚΑΚΑΡΟΥΝΤΑΣ-ΛΕΛΙΓΚΟΥ 1 2. ΛΟΓΙΚΕΣ ΠΥΛΕΣ e-book ΛΟΓΙΚΗ ΣΧΕ ΙΑΣΗ ΑΣΗΜΑΚΗΣ-ΒΟΥΡΒΟΥΛΑΚΗΣ- ΚΑΚΑΡΟΥΝΤΑΣ-ΛΕΛΙΓΚΟΥ 1 ΟΙ ΛΟΓΙΚΕΣ ΠΥΛΕΣ NOT, AND ΚΑΙ OR Οι βασικές πράξεις της Άλγεβρας Boole είναι οι πράξεις NOT, ANDκαι OR. Στα ψηφιακά

Διαβάστε περισσότερα

SKUPNE PORAZDELITVE VEČ SLUČAJNIH SPREMENLJIVK

SKUPNE PORAZDELITVE VEČ SLUČAJNIH SPREMENLJIVK SKUPNE PORAZDELITVE SKUPNE PORAZDELITVE VEČ SLUČAJNIH SPREMENLJIVK Kovaec vržemo trikrat. Z ozačimo število grbov ri rvem metu ( ali ), z Y a skuo število grbov (,, ali 3). Kako sta sremelivki i Y odvisi

Διαβάστε περισσότερα

DIGITALNA TEHNIKA 2010/2011

DIGITALNA TEHNIKA 2010/2011 DIGITALNA TEHNIKA 2010/2011 TEORETIČNE VAJE IN KOLOKVIJI 15 ur 1. Številski sistemi (15.10.2010) 2. Boolova algebra, Huntingtonovi postulati, PDNO, PKNO (22.10.2010) 3. Minimizacija Boolovih funkcij, MDNO

Διαβάστε περισσότερα

IZPIT IZ ANALIZE II Maribor,

IZPIT IZ ANALIZE II Maribor, Maribor, 05. 02. 200. (a) Naj bo f : [0, 2] R odvedljiva funkcija z lastnostjo f() = f(2). Dokaži, da obstaja tak c (0, ), da je f (c) = 2f (2c). (b) Naj bo f(x) = 3x 3 4x 2 + 2x +. Poišči tak c (0, ),

Διαβάστε περισσότερα

1 Fibonaccijeva stevila

1 Fibonaccijeva stevila 1 Fibonaccijeva stevila Fibonaccijevo število F n, kjer je n N, lahko definiramo kot število načinov zapisa števila n kot vsoto sumandov, enakih 1 ali Na primer, število 4 lahko zapišemo v obliki naslednjih

Διαβάστε περισσότερα

DIGITALNA TEHNIKA 2014/2015 (nazadnje spremenjeno )

DIGITALNA TEHNIKA 2014/2015 (nazadnje spremenjeno ) DIGITALNA TEHNIKA 2014/2015 (nazadnje spremenjeno 26.11.2014) SEMINARSKE VAJE 15 ur 1. Številski sistemi (vadite sami doma) 2. Boolova algebra, Huntingtonovi postulati (vadite sami doma) 3. Kanonična oblika

Διαβάστε περισσότερα

Stikalni pretvorniki. Seminar: Načrtovanje elektronike za EMC Boštjan Glažar

Stikalni pretvorniki. Seminar: Načrtovanje elektronike za EMC Boštjan Glažar Stikalni pretvorniki Seminar: Načrtovanje elektronike za EMC 9. 3. 2016 Boštjan Glažar niverza v Ljubljani Fakulteta za elektrotehniko Tržaška cesta 25, SI-1000 Ljubljana Vsebina Prednosti stikalnih pretvornikov

Διαβάστε περισσότερα

Definicija. definiramo skalarni produkt. x i y i. in razdaljo. d(x, y) = x y = < x y, x y > = n (x i y i ) 2. i=1. i=1

Definicija. definiramo skalarni produkt. x i y i. in razdaljo. d(x, y) = x y = < x y, x y > = n (x i y i ) 2. i=1. i=1 Funkcije več realnih spremenljivk Osnovne definicije Limita in zveznost funkcije več spremenljivk Parcialni odvodi funkcije več spremenljivk Gradient in odvod funkcije več spremenljivk v dani smeri Parcialni

Διαβάστε περισσότερα

13. Jacobijeva metoda za računanje singularnega razcepa

13. Jacobijeva metoda za računanje singularnega razcepa 13. Jacobijeva metoda za računanje singularnega razcepa Bor Plestenjak NLA 25. maj 2010 Bor Plestenjak (NLA) 13. Jacobijeva metoda za računanje singularnega razcepa 25. maj 2010 1 / 12 Enostranska Jacobijeva

Διαβάστε περισσότερα

Kotni funkciji sinus in kosinus

Kotni funkciji sinus in kosinus Kotni funkciji sinus in kosinus Oznake: sinus kota x označujemo z oznako sin x, kosinus kota x označujemo z oznako cos x, DEFINICIJA V PRAVOKOTNEM TRIKOTNIKU: Kotna funkcija sinus je definirana kot razmerje

Διαβάστε περισσότερα

Numerično reševanje. diferencialnih enačb II

Numerično reševanje. diferencialnih enačb II Numerčno reševanje dferencaln enačb I Dferencalne enačbe al ssteme dferencaln enačb rešujemo numerčno z več razlogov:. Ne znamo j rešt analtčno.. Posamezn del dferencalne enačbe podan tabelarčno. 3. Podatke

Διαβάστε περισσότερα

PONOVITEV SNOVI ZA 4. TEST

PONOVITEV SNOVI ZA 4. TEST PONOVITEV SNOVI ZA 4. TEST 1. * 2. *Galvanski člen z napetostjo 1,5 V požene naboj 40 As. Koliko električnega dela opravi? 3. ** Na uporniku je padec napetosti 25 V. Upornik prejme 750 J dela v 5 minutah.

Διαβάστε περισσότερα

Enačba, v kateri poleg neznane funkcije neodvisnih spremenljivk ter konstant nastopajo tudi njeni odvodi, se imenuje diferencialna enačba.

Enačba, v kateri poleg neznane funkcije neodvisnih spremenljivk ter konstant nastopajo tudi njeni odvodi, se imenuje diferencialna enačba. 1. Osnovni pojmi Enačba, v kateri poleg neznane funkcije neodvisnih spremenljivk ter konstant nastopajo tudi njeni odvodi, se imenuje diferencialna enačba. Primer 1.1: Diferencialne enačbe so izrazi: y

Διαβάστε περισσότερα

NEPARAMETRIČNI TESTI. pregledovanje tabel hi-kvadrat test. as. dr. Nino RODE

NEPARAMETRIČNI TESTI. pregledovanje tabel hi-kvadrat test. as. dr. Nino RODE NEPARAMETRIČNI TESTI pregledovanje tabel hi-kvadrat test as. dr. Nino RODE Parametrični in neparametrični testi S pomočjo z-testa in t-testa preizkušamo domneve o parametrih na vzorcih izračunamo statistike,

Διαβάστε περισσότερα

Funkcije več spremenljivk

Funkcije več spremenljivk DODATEK C Funkcije več spremenljivk C.1. Osnovni pojmi Funkcija n spremenljivk je predpis: f : D f R, (x 1, x 2,..., x n ) u = f (x 1, x 2,..., x n ) kjer D f R n imenujemo definicijsko območje funkcije

Διαβάστε περισσότερα

Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju

Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju RAČUN OSTATAKA 1 1 Prsten celih brojeva Z := N + {} N + = {, 3, 2, 1,, 1, 2, 3,...} Osnovni primer. (Z, +,,,, 1) je komutativan prsten sa jedinicom: sabiranje (S1) asocijativnost x + (y + z) = (x + y)

Διαβάστε περισσότερα

Analiza možnosti realizacije logičnih reverzibilnih vrat v trostanjskem kvantnem celičnem avtomatu

Analiza možnosti realizacije logičnih reverzibilnih vrat v trostanjskem kvantnem celičnem avtomatu Univerza v Ljubljani Fakulteta za računalništvo in informatiko Mark Rolih Analiza možnosti realizacije logičnih reverzibilnih vrat v trostanjskem kvantnem celičnem avtomatu diplomska naloga na univerzitetnem

Διαβάστε περισσότερα

Matematika 1. Gregor Dolinar. 2. januar Fakulteta za elektrotehniko Univerza v Ljubljani. Gregor Dolinar Matematika 1

Matematika 1. Gregor Dolinar. 2. januar Fakulteta za elektrotehniko Univerza v Ljubljani. Gregor Dolinar Matematika 1 Mtemtik 1 Gregor Dolinr Fkultet z elektrotehniko Univerz v Ljubljni 2. jnur 2014 Gregor Dolinr Mtemtik 1 Izrek (Izrek o povprečni vrednosti) Nj bo m ntnčn spodnj mej in M ntnčn zgornj mej integrbilne funkcije

Διαβάστε περισσότερα

Matematika I (VS) Univerza v Ljubljani, FE. Melita Hajdinjak 2013/14. Pregled elementarnih funkcij. Potenčna funkcija. Korenska funkcija.

Matematika I (VS) Univerza v Ljubljani, FE. Melita Hajdinjak 2013/14. Pregled elementarnih funkcij. Potenčna funkcija. Korenska funkcija. 1 / 46 Univerza v Ljubljani, FE Potenčna Korenska Melita Hajdinjak Matematika I (VS) Kotne 013/14 / 46 Potenčna Potenčna Funkcijo oblike f() = n, kjer je n Z, imenujemo potenčna. Število n imenujemo eksponent.

Διαβάστε περισσότερα

Ψηφιακά Συστήματα. 2. Κώδικες

Ψηφιακά Συστήματα. 2. Κώδικες Ψηφιακά Συστήματα 2. Κώδικες Βιβλιογραφία 1. Φανουράκης Κ., Πάτσης Γ., Τσακιρίδης Ο., Θεωρία και Ασκήσεις Ψηφιακών Ηλεκτρονικών, ΜΑΡΙΑ ΠΑΡΙΚΟΥ & ΣΙΑ ΕΠΕ, 2016. [59382199] 2. Floyd Thomas L., Ψηφιακά ηλεκτρονικά,

Διαβάστε περισσότερα

Poglavje 7. Poglavje 7. Poglavje 7. Regulacijski sistemi. Regulacijski sistemi. Slika 7. 1: Normirana blokovna shema regulacije EM

Poglavje 7. Poglavje 7. Poglavje 7. Regulacijski sistemi. Regulacijski sistemi. Slika 7. 1: Normirana blokovna shema regulacije EM Slika 7. 1: Normirana blokovna shema regulacije EM Fakulteta za elektrotehniko 1 Slika 7. 2: Principielna shema regulacije AM v KSP Fakulteta za elektrotehniko 2 Slika 7. 3: Merjenje komponent fluksa s

Διαβάστε περισσότερα

Κεφάλαιο Τρία: Ψηφιακά Ηλεκτρονικά

Κεφάλαιο Τρία: Ψηφιακά Ηλεκτρονικά Κεφάλαιο Τρία: 3.1 Τι είναι αναλογικό και τι ψηφιακό µέγεθος Αναλογικό ονοµάζεται το µέγεθος που µπορεί να πάρει οποιαδήποτε τιµή σε µια συγκεκριµένη περιοχή τιµών π.χ. η ταχύτητα ενός αυτοκινήτου. Ψηφιακό

Διαβάστε περισσότερα

VEKTORJI. Operacije z vektorji

VEKTORJI. Operacije z vektorji VEKTORJI Vektorji so matematični objekti, s katerimi opisujemo določene fizikalne količine. V tisku jih označujemo s krepko natisnjenimi črkami (npr. a), pri pisanju pa s puščico ( a). Fizikalne količine,

Διαβάστε περισσότερα

Splošno o interpolaciji

Splošno o interpolaciji Splošno o interpolaciji J.Kozak Numerične metode II (FM) 2011-2012 1 / 18 O funkciji f poznamo ali hočemo uporabiti le posamezne podatke, na primer vrednosti r i = f (x i ) v danih točkah x i Izberemo

Διαβάστε περισσότερα

4. Načrtovanje logičnega in sekvenčnega vodenja

4. Načrtovanje logičnega in sekvenčnega vodenja 4. Načrtovanje logičnega in sekvenčnega vodenja Dve vrsti logičnih krmilij: Kombinacijska krmilja stanje vhodnih signalov se neposredno preslika v stanje izhodnih signalov takšno krmilje ne vsebuje pomnilnih

Διαβάστε περισσότερα

DISKRETNA FOURIERJEVA TRANSFORMACIJA

DISKRETNA FOURIERJEVA TRANSFORMACIJA 29.03.2004 Definicija DFT Outline DFT je linearna transformacija nekega vektorskega prostora dimenzije n nad obsegom K, ki ga označujemo z V K, pri čemer ima slednji lastnost, da vsebuje nek poseben element,

Διαβάστε περισσότερα

Iterativno reševanje sistemov linearnih enačb. Numerične metode, sistemi linearnih enačb. Numerične metode FE, 2. december 2013

Iterativno reševanje sistemov linearnih enačb. Numerične metode, sistemi linearnih enačb. Numerične metode FE, 2. december 2013 Numerične metode, sistemi linearnih enačb B. Jurčič Zlobec Numerične metode FE, 2. december 2013 1 Vsebina 1 z n neznankami. a i1 x 1 + a i2 x 2 + + a in = b i i = 1,..., n V matrični obliki zapišemo:

Διαβάστε περισσότερα

Podobnost matrik. Matematika II (FKKT Kemijsko inženirstvo) Diagonalizacija matrik

Podobnost matrik. Matematika II (FKKT Kemijsko inženirstvo) Diagonalizacija matrik Podobnost matrik Matematika II (FKKT Kemijsko inženirstvo) Matjaž Željko FKKT Kemijsko inženirstvo 14 teden (Zadnja sprememba: 23 maj 213) Matrika A R n n je podobna matriki B R n n, če obstaja obrnljiva

Διαβάστε περισσότερα

Frekvenčna analiza neperiodičnih signalov. Analiza signalov prof. France Mihelič

Frekvenčna analiza neperiodičnih signalov. Analiza signalov prof. France Mihelič Frekvenčna analiza neperiodičnih signalov Analiza signalov prof. France Mihelič Vpliv postopka daljšanja periode na spekter periodičnega signala Opazujmo družino sodih periodičnih pravokotnih impulzov

Διαβάστε περισσότερα

Osnove matematične analize 2016/17

Osnove matematične analize 2016/17 Osnove matematične analize 216/17 Neža Mramor Kosta Fakulteta za računalništvo in informatiko Univerza v Ljubljani Kaj je funkcija? Funkcija je predpis, ki vsakemu elementu x iz definicijskega območja

Διαβάστε περισσότερα

Osnove elektrotehnike uvod

Osnove elektrotehnike uvod Osnove elektrotehnike uvod Uvod V nadaljevanju navedena vprašanja so prevod testnih vprašanj, ki sem jih našel na omenjeni spletni strani. Vprašanja zajemajo temeljna znanja opredeljenega strokovnega področja.

Διαβάστε περισσότερα

Ψηφιακά Συστήματα. Ενότητα: Ψηφιακά Συστήματα. Δρ. Κοντογιάννης Σωτήρης Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Ψηφιακά Συστήματα. Ενότητα: Ψηφιακά Συστήματα. Δρ. Κοντογιάννης Σωτήρης Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Ψηφιακά Συστήματα Ενότητα: Ψηφιακά Συστήματα Δρ. Κοντογιάννης Σωτήρης Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

Reševanje sistema linearnih

Reševanje sistema linearnih Poglavje III Reševanje sistema linearnih enačb V tem kratkem poglavju bomo obravnavali zelo uporabno in zato pomembno temo linearne algebre eševanje sistemov linearnih enačb. Spoznali bomo Gaussovo (natančneje

Διαβάστε περισσότερα

V tem poglavju bomo vpeljali pojem determinante matrike, spoznali bomo njene lastnosti in nekaj metod za računanje determinant.

V tem poglavju bomo vpeljali pojem determinante matrike, spoznali bomo njene lastnosti in nekaj metod za računanje determinant. Poglavje IV Determinanta matrike V tem poglavju bomo vpeljali pojem determinante matrike, spoznali bomo njene lastnosti in nekaj metod za računanje determinant 1 Definicija Preden definiramo determinanto,

Διαβάστε περισσότερα

Matematika. Funkcije in enačbe

Matematika. Funkcije in enačbe Matematika Funkcije in enačbe (1) Nariši grafe naslednjih funkcij: (a) f() = 1, (b) f() = 3, (c) f() = 3. Rešitev: (a) Linearna funkcija f() = 1 ima začetno vrednost f(0) = 1 in ničlo = 1/. Definirana

Διαβάστε περισσότερα

Analiza 2 Rešitve 14. sklopa nalog

Analiza 2 Rešitve 14. sklopa nalog Analiza Rešitve 1 sklopa nalog Navadne diferencialne enačbe višjih redov in sistemi diferencialnih enačb (1) Reši homogene diferencialne enačbe drugega reda s konstantnimi koeficienti: (a) 6 + 8 0, (b)

Διαβάστε περισσότερα

Ψηφιακά Ηλεκτρονικά. Κεφάλαιο 1ο. Άλγεβρα Boole και Λογικές Πύλες. (c) Αμπατζόγλου Γιάννης, Ηλεκτρονικός Μηχανικός, καθηγητής ΠΕ17

Ψηφιακά Ηλεκτρονικά. Κεφάλαιο 1ο. Άλγεβρα Boole και Λογικές Πύλες. (c) Αμπατζόγλου Γιάννης, Ηλεκτρονικός Μηχανικός, καθηγητής ΠΕ17 Ψηφιακά Ηλεκτρονικά Κεφάλαιο 1ο Άλγεβρα Boole και Λογικές Πύλες Αναλογικά μεγέθη Αναλογικό μέγεθος ονομάζεται εκείνο που μπορεί να πάρει οποιαδήποτε τιμή σε μια περιοχή τιμών, όπως η ταχύτητα, το βάρος,

Διαβάστε περισσότερα

Εισαγωγή στην Πληροφορική

Εισαγωγή στην Πληροφορική Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Εισαγωγή στην Πληροφορική Ενότητα 2: Ψηφιακή Λογική Ι Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

Διαβάστε περισσότερα

Προγραμματισμός Ι (HY120)

Προγραμματισμός Ι (HY120) Προγραμματισμός Ι (HY120) #4 κυριολεκτικά & μετατροπή τύπων 1 Σπύρος Λάλης Κυριολεκτικά (literals) Συχνά θέλουμε να αρχικοποιήσουμε μεταβλητές του προγράμματος με μια συγκεκριμένη τιμή υπάρχει επίσης η

Διαβάστε περισσότερα

Πανεπιστήμιο Πατρών Τμήμα Φυσικής Εργαστήριο Ηλεκτρονικής. Ψηφιακά Ηλεκτρονικά. Άλγεβρα Boole και Λογικές Πύλες 2. Επιμέλεια Διαφανειών: Δ.

Πανεπιστήμιο Πατρών Τμήμα Φυσικής Εργαστήριο Ηλεκτρονικής. Ψηφιακά Ηλεκτρονικά. Άλγεβρα Boole και Λογικές Πύλες 2. Επιμέλεια Διαφανειών: Δ. Πανεπιστήμιο Πατρών Τμήμα Φυσικής Ψηφιακά Ηλεκτρονικά Άλγεβρα Boole και Λογικές Πύλες Επιμέλεια Διαφανειών: Δ. Μπακάλης Πάτρα, Φεβρουάριος 2009 Αξιωματικός Ορισμός Άλγεβρας Boole Άλγεβρα Boole: είναι μία

Διαβάστε περισσότερα

Kvadratne forme. Poglavje XI. 1 Definicija in osnovne lastnosti

Kvadratne forme. Poglavje XI. 1 Definicija in osnovne lastnosti Poglavje XI Kvadratne forme V zadnjem poglavju si bomo ogledali še eno vrsto preslikav, ki jih tudi lahko podamo z matrikami. To so tako imenovane kvadratne forme, ki niso več linearne preslikave. Kvadratne

Διαβάστε περισσότερα

Izpeljava Jensenove in Hölderjeve neenakosti ter neenakosti Minkowskega

Izpeljava Jensenove in Hölderjeve neenakosti ter neenakosti Minkowskega Izeljava Jensenove in Hölderjeve neenakosti ter neenakosti Minkowskega 1. Najosnovnejše o konveksnih funkcijah Definicija. Naj bo X vektorski rostor in D X konveksna množica. Funkcija ϕ: D R je konveksna,

Διαβάστε περισσότερα

D f, Z f. Lastnosti. Linearna funkcija. Definicija Linearna funkcija f : je definirana s predpisom f(x) = kx+n; k,

D f, Z f. Lastnosti. Linearna funkcija. Definicija Linearna funkcija f : je definirana s predpisom f(x) = kx+n; k, Linearna funkcija Linearna funkcija f : je definirana s predpisom f(x) = kx+n; k, n ᄀ. k smerni koeficient n začetna vrednost D f, Z f Definicijsko območje linearne funkcije so vsa realna števila. Zaloga

Διαβάστε περισσότερα

DIGITALNE STRUKTURE Zapiski predavanj

DIGITALNE STRUKTURE Zapiski predavanj DIGITALNE STRUKTURE Zapiski predavanj Branko Šter, Ljubo Pipan Koraki pri načrtovanju vezij na osnovi VHDL (in drugih HDL jezikov): bločni diagrami / hierarhija kodiranje v VHDL prevajanje kode, preverjanje

Διαβάστε περισσότερα

Προγραμματισμός Ι (ΗΥ120)

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 5: Κυριολεκτικά Συνδυασμοί / Μετατροπές Τύπων Αριθμητική Χαρακτήρων Κυριολεκτικά (literals) 2 Κάποιες μεταβλητές του προγράμματος πρέπει συνήθως να αρχικοποιηθούν με συγκεκριμένη

Διαβάστε περισσότερα

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ψηφική Σχεδίαση

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ψηφική Σχεδίαση Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Ψηφική Σχεδίαση Ενότητα 4: Υλοποίηση Κυκλωμάτων με πύλες NOT AND και NOR, περιττή συνάρτηση, συνάρτηση ισοτιμίας. Δρ. Μηνάς Δασυγένης @ieee.ormdasygg Εργαστήριο

Διαβάστε περισσότερα

Fazni diagram binarne tekočine

Fazni diagram binarne tekočine Fazni diagram binarne tekočine Žiga Kos 5. junij 203 Binarno tekočino predstavljajo delci A in B. Ti se med seboj lahko mešajo v različnih razmerjih. V nalogi želimo izračunati fazni diagram take tekočine,

Διαβάστε περισσότερα

Statistična analiza. doc. dr. Mitja Kos, mag. farm. Katedra za socialno farmacijo Univerza v Ljubljani- Fakulteta za farmacijo

Statistična analiza. doc. dr. Mitja Kos, mag. farm. Katedra za socialno farmacijo Univerza v Ljubljani- Fakulteta za farmacijo Statistična analiza opisnih spremenljivk doc. dr. Mitja Kos, mag. arm. Katedra za socialno armacijo Univerza v Ljubljani- Fakulteta za armacijo Statistični znaki Proučevane spremenljivke: statistični znaki

Διαβάστε περισσότερα

Tema 1 Osnove navadnih diferencialnih enačb (NDE)

Tema 1 Osnove navadnih diferencialnih enačb (NDE) Matematične metode v fiziki II 2013/14 Tema 1 Osnove navadnih diferencialnih enačb (NDE Diferencialne enačbe v fiziki Večina osnovnih enačb v fiziki je zapisana v obliki diferencialne enačbe. Za primer

Διαβάστε περισσότερα

II. LIMITA IN ZVEZNOST FUNKCIJ

II. LIMITA IN ZVEZNOST FUNKCIJ II. LIMITA IN ZVEZNOST FUNKCIJ. Preslikave med množicami Funkcija ali preslikava med dvema množicama A in B je predpis f, ki vsakemu elementu x množice A priredi natanko določen element y množice B. Važno

Διαβάστε περισσότερα

Copyright, 2006 ΚΑΓΙΑΜΠΑΚΗΣ ΜΑΝΟΣ

Copyright, 2006 ΚΑΓΙΑΜΠΑΚΗΣ ΜΑΝΟΣ Copyright, 2006 ΚΑΓΙΑΜΠΑΚΗΣ ΜΑΝΟΣ ΣΚΟΠΟΣ ΤΗΣ ΕΝΟΤΗΤΑΣ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΨΗΦΙΑΚΗ ΤΕΧΝΟΛΟΓΙΑ ΥΛΙΚΑ ΕΞΑΡΤΗΜΑΤΑ ΨΗΦΙΑΚΩΝ ΛΟΓΙΚEΣ ΠΥΛΕΣ NOT, AND, OR, NAND, NOR, XOR, XNOR ΠΙΝΑΚΕΣ ΑΛΗΘΕΙΑΣ FLIP - FLOP RS, D, JK,

Διαβάστε περισσότερα

Univerza v Ljubljani Fakulteta za računalništvo in informatiko MATEMATIKA. Polona Oblak

Univerza v Ljubljani Fakulteta za računalništvo in informatiko MATEMATIKA. Polona Oblak Univerza v Ljubljani Fakulteta za računalništvo in informatiko MATEMATIKA Polona Oblak Ljubljana, 04 CIP - Kataložni zapis o publikaciji Narodna in univerzitetna knjižnica, Ljubljana 5(075.8)(0.034.) OBLAK,

Διαβάστε περισσότερα

Integralni račun. Nedoločeni integral in integracijske metrode. 1. Izračunaj naslednje nedoločene integrale: (a) dx. (b) x 3 +3+x 2 dx, (c) (d)

Integralni račun. Nedoločeni integral in integracijske metrode. 1. Izračunaj naslednje nedoločene integrale: (a) dx. (b) x 3 +3+x 2 dx, (c) (d) Integralni račun Nedoločeni integral in integracijske metrode. Izračunaj naslednje nedoločene integrale: d 3 +3+ 2 d, (f) (g) (h) (i) (j) (k) (l) + 3 4d, 3 +e +3d, 2 +4+4 d, 3 2 2 + 4 d, d, 6 2 +4 d, 2

Διαβάστε περισσότερα

Gimnazija Krˇsko. vektorji - naloge

Gimnazija Krˇsko. vektorji - naloge Vektorji Naloge 1. V koordinatnem sistemu so podane točke A(3, 4), B(0, 2), C( 3, 2). a) Izračunaj dolžino krajevnega vektorja točke A. (2) b) Izračunaj kot med vektorjema r A in r C. (4) c) Izrazi vektor

Διαβάστε περισσότερα

2. Άλγεβρα Boole και Λογικές Πύλες

2. Άλγεβρα Boole και Λογικές Πύλες 2. Άλγεβρα Boole και Λογικές Πύλες 2.1 Βασικοί ορισμοί Η άλγεβρα Boole μπορεί να οριστεί με ένα σύνολο στοιχείων, ένα σύνολο τελεστών και ένα σύνολο αξιωμάτων. Δυαδικός τελεστής ορισμένος σε ένα σύνολο

Διαβάστε περισσότερα

Uvod v programirljive digitalne sisteme. Andrej Trost Univerza v Ljubljani Fakulteta za elektrotehniko

Uvod v programirljive digitalne sisteme. Andrej Trost Univerza v Ljubljani Fakulteta za elektrotehniko Uvod v programirljive digitalne sisteme Andrej Trost Univerza v Ljubljani Fakulteta za elektrotehniko http://lniv.fe.uni-lj.si/pds.html Ljubljana, 2015 Kazalo 1 Digitalna vezja in sistemi 3 1.1 Elektronska

Διαβάστε περισσότερα

1. Trikotniki hitrosti

1. Trikotniki hitrosti . Trikotniki hitrosti. Z radialno črpalko želimo črpati vodo pri pogojih okolice z nazivnim pretokom 0 m 3 /h. Notranji premer rotorja je 4 cm, zunanji premer 8 cm, širina rotorja pa je,5 cm. Frekvenca

Διαβάστε περισσότερα

1. Έντυπα αιτήσεων αποζημίωσης... 2 1.1. Αξίωση αποζημίωσης... 2 1.1.1. Έντυπο... 2 1.1.2. Πίνακας μεταφράσεων των όρων του εντύπου...

1. Έντυπα αιτήσεων αποζημίωσης... 2 1.1. Αξίωση αποζημίωσης... 2 1.1.1. Έντυπο... 2 1.1.2. Πίνακας μεταφράσεων των όρων του εντύπου... ΑΠΟΖΗΜΙΩΣΗ ΘΥΜΑΤΩΝ ΕΓΚΛΗΜΑΤΙΚΩΝ ΠΡΑΞΕΩΝ ΣΛΟΒΕΝΙΑ 1. Έντυπα αιτήσεων αποζημίωσης... 2 1.1. Αξίωση αποζημίωσης... 2 1.1.1. Έντυπο... 2 1.1.2. Πίνακας μεταφράσεων των όρων του εντύπου... 3 1 1. Έντυπα αιτήσεων

Διαβάστε περισσότερα

Državni izpitni center SPOMLADANSKI IZPITNI ROK *M * NAVODILA ZA OCENJEVANJE. Sreda, 3. junij 2015 SPLOŠNA MATURA

Državni izpitni center SPOMLADANSKI IZPITNI ROK *M * NAVODILA ZA OCENJEVANJE. Sreda, 3. junij 2015 SPLOŠNA MATURA Državni izpitni center *M15143113* SPOMLADANSKI IZPITNI ROK NAVODILA ZA OCENJEVANJE Sreda, 3. junij 2015 SPLOŠNA MATURA RIC 2015 M151-431-1-3 2 IZPITNA POLA 1 Naloga Odgovor Naloga Odgovor Naloga Odgovor

Διαβάστε περισσότερα

Tabele termodinamskih lastnosti vode in vodne pare

Tabele termodinamskih lastnosti vode in vodne pare Univerza v Ljubljani Fakulteta za strojništvo Laboratorij za termoenergetiko Tabele termodinamskih lastnosti vode in vodne pare po modelu IAPWS IF-97 izračunano z XSteam Excel v2.6 Magnus Holmgren, xsteam.sourceforge.net

Διαβάστε περισσότερα

Poliedri Ines Pogačar 27. oktober 2009

Poliedri Ines Pogačar 27. oktober 2009 Poliedri Ines Pogačar 27. oktober 2009 Pri linearnem programiranju imamo opravka s končnim sistemom neenakosti in končno spremenljivkami, torej je množica dopustnih rešitev presek končno mnogo polprostorov.

Διαβάστε περισσότερα

ΣΧΕΔΙΑΣΗ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

ΣΧΕΔΙΑΣΗ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΣΧΕΔΙΑΣΗ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΑΛΓΕΒΡΑ BOOLE 2017, Δρ. Ηρακλής Σπηλιώτης Γενικοί ορισμοί Αλγεβρική δομή είναι ένα σύνολο στοιχείων και κάποιες συναρτήσεις με πεδίο ορισμού αυτό το σύνολο. Αυτές οι συναρτήσεις

Διαβάστε περισσότερα

Matrike. Poglavje II. Matrika je pravokotna tabela realnih števil. Na primer: , , , 0 1

Matrike. Poglavje II. Matrika je pravokotna tabela realnih števil. Na primer: , , , 0 1 Poglavje II Matrike Matrika je pravokotna tabela realnih števil Na primer: [ ] 1 1 1, 2 3 1 1 0 1 3 2 1, 0 1 4 [ ] 2 7, Matrika je sestavljena iz vrstic in stolpcev Vrstici matrike [ ] 1 1 1 2 3 1 [ ]

Διαβάστε περισσότερα

Κεφάλαιο 1. Συστήματα αρίθμησης και αναπαράστασης

Κεφάλαιο 1. Συστήματα αρίθμησης και αναπαράστασης Κεφάλαιο 1 Συστήματα αρίθμησης και αναπαράστασης 1.1 Εισαγωγή Οι υπολογιστές αναπαριστούν όλα τα είδη πληροφορίας ως δυαδικά δεδομένα. Έτσι, για την ευκολότερη και ταχύτερη επεξεργασία των διαφόρων πληροφοριών,

Διαβάστε περισσότερα

Uporabna matematika za naravoslovce

Uporabna matematika za naravoslovce Uporabna matematika za naravoslovce Zapiski predavanj Študijski programi: Aplikativna kineziologija, Biodiverziteta Študijsko leto 203/4 doc.dr. Barbara Boldin Fakulteta za matematiko, naravoslovje in

Διαβάστε περισσότερα

Arduino-FPGA vremenska postaja

Arduino-FPGA vremenska postaja Laboratorij za načrtovanje integriranih vezij Univerza v Ljubljani Fakulteta za elektrotehniko Arduino-FPGA vremenska postaja DES 2013/14 - razvoj vgrajenega sistema Arduino grafični vmesnik Arduino Leonardo

Διαβάστε περισσότερα

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. Συνδιαστικά Λογικά Κυκλώματα / Ολοκληρωμένα Κυκλώματα 1

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. Συνδιαστικά Λογικά Κυκλώματα / Ολοκληρωμένα Κυκλώματα 1 ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων Συνδυαστική Λογική / Ολοκληρωμένα Κυκλώματα (Μέρος Γ) Διδάσκουσα: Μαρία Κ. Μιχαήλ Περίληψη Έξοδοι υψηλής εμπέδησης: απομονωτές tri-state, πύλες μετάδοσης Ολοκληρωμένα

Διαβάστε περισσότερα

Analiza I. (študijsko gradivo) Matija Cencelj

Analiza I. (študijsko gradivo) Matija Cencelj Analiza I (študijsko gradivo) Matija Cencelj 2. maj 2007 2 Kazalo 1 Uvod 5 1.1 Izjave............................... 5 1.2 Množice.............................. 7 1.3 Relacije..............................

Διαβάστε περισσότερα

UNIVERZA V MARIBORU FAKULTETA ZA KEMIJO IN KEMIJSKO TEHNOLOGIJO. Petra MATEMATIKA I

UNIVERZA V MARIBORU FAKULTETA ZA KEMIJO IN KEMIJSKO TEHNOLOGIJO. Petra MATEMATIKA I UNIVERZA V MARIBORU FAKULTETA ZA KEMIJO IN KEMIJSKO TEHNOLOGIJO Petra Žigert Pleteršek, Matevž Črepnjak Visokošolski učbenik z rešenimi nalogami MATEMATIKA I Maribor 03 Naslov publikacije: Visokošolski

Διαβάστε περισσότερα

Matematika 1. Gabrijel Tomšič Bojan Orel Neža Mramor Kosta

Matematika 1. Gabrijel Tomšič Bojan Orel Neža Mramor Kosta Matematika Gabrijel Tomšič Bojan Orel Neža Mramor Kosta 6. november 200 Poglavje 2 Zaporedja in številske vrste 2. Zaporedja 2.. Uvod Definicija 2... Zaporedje (a n ) = a, a 2,..., a n,... je predpis,

Διαβάστε περισσότερα