Digital och Datorteknik Dig o Dat = DoD LP ED432 (IT), DIT79 (GU), LEU43 (L) LP2 ED25 (Z), DIT79 (GU), ED45 (D) LP4 ED3 (E) Digital och Datorteknik OH LV Kursens mål: Fatta hur en dator är uppbggd (HDW) Fatta hur du du programmerar den (SW) Fatta hur HDW o SW samverkar och därmed kunna använda en modern -processor / -controller Digital teknik Dator teknik Digital och Datorteknik OH LV 2 Kursens mål: Dator teknik nvända en modern processor I/O Minne Maskin kods programmering Maskin instruktioner Digital teknik Kombinatoriska nät Fsik: Logik: Register Kisel Vippor Transistorer Grindar Elektroniska enomen Högnivå språk (Java da C) Kompilator (översättare) vbrott (realtid) Data väg Binär kodning Digital och Datorteknik OH LV 3 tterligare kurser kopplade till ingenjörskompetens och orskningsörberedelse Hardware Description and Veriication Digital hardware (mer digitalteknik, programmerbarhet, VHDL) Dator-sstemteknik (Prestanda) Datastukturer Datakomm Objektorienterad programmering (Java) Maskinorienterad programmering (I/O, assembler o C) Digital- o datorteknik (digitalteknikens o processorns grunder) Moderna elektronikkonstruktionskurser Datorarkitekturkurser Operativsstem Parallellprogrammering Realtidssstem MOP o 4 Sotware Engineering Fundamentals
Hur når vi målet? orts utomatiskt strd borrmaskin Positionera borr Starta borr Borra genom arbetsstcke... ST Fortsätt LD ND CMP BNE --- Beskrivning av unktion BorrStr BorrStat #BMask #BorrNere Fortsätt rb s 7 ssemblerspråk Beskrivning av strsignaler CP: OE PC =, LD dr =, Inc PC = CP2: MR=, LD T = CP3: OE DR =, LD R, 3 = =... Digital och Datorteknik OH LV 5 Kursens Hemsida Sök via studieportalen eller ED25 Z Länkar till kursdokument Senaste ntt Kurs-PM Veckoplanering Laborationsinormation Simulatorer / ED45 D http://www.cse.chalmers.se/edu/ear/2/course/ed25 Z http://www.cse.chalmers.se/edu/ear/2/course/ed45 D Digital och Datorteknik OH LV 6 Hur öljer du kursen Fokusera på: Kursens mål Veckans mål Föreläsningens mål Förbered dig innan öreläsningarna: nvänd Veckoplanering Veckans OH-bilder Bläddra i böckerna Under öreläsningen: Var aktiv VR KTIV (är du trött stanna hemma och sov) Diskutera med en kompis på rasten Eter öreläsningarna: Bearbeta (går-)dagens material nvänd simulatorerna, hemma och i skolan En gång i veckan: Repetera örra veckans mål Jobba med veckans mål Studera kommande veckans mål Digital och Datorteknik OH LV 7 Kursupplägg Föreläsning Fö Simulatorövningar S Laboration L 5 5 Vecka 2 3 4 5 6 7 Tenta Digital och Datorteknik OH LV 8
DigiFle 7.5 Kopplingsboen Datavägar Fle Eterm 6.7 FLE HC2 I/O Borrmaskin Simulator övningar Digital och Datorteknik OH LV 9 Laborationsregler Laborationerna innehåller hemuppgiter. (Se respektive laborations-pm). Dessa uppgiter skall vara lösta och uppvisade öre laborationstillället. Vid laborationstillället delas ut etra uppgiter som du självständigt skall lösa ör att bli godkännd. En handledare skall bedöma arbetet eter laborationen. Kom i tid och hasta ej igenom uppgiterna. Är laborant p g a sjukdom eller annan angelägen orsak örhindrad att delta vid ett laborationstillälle skall detta omedelbart meddelas till laborationscheen. Digital och Datorteknik OH LV Kurslitteratur (KMP) Johnson, Larsson rebrink: Grundläggande digital- och datorteknik. Kompendium, Inst ör datorteknik, CTH, 27. Del. Digital teknik (RB) rbetsbok ör DigiFle. Ver 4, 28. [*(RB2) rbetsbok ör HC2. ] (ET) Kompletterande material CTH 2 (INS) Instruktionslista ör FLE-processorn. (INS2) Instruktionslista ör mikroprocessorn CPU2. (LB) Laborations-PM nr -4. Inst ör datorteknik, CTH, 2. (SIM) Simulatorer ör digitala kretsar, FLE- processorn och HC2-processorn. Programvara ör PC (Windows). Fo Kursens mål: nvända en modern processor Konstruera en dator mha grindar och programmera denna Veckans mål: Beskriva grindar och de verktg som behövs under konstruktionsarbetet Hur kodas tal och tecken i datorn Dagens mål: Inledning till Digital o Datorteknik Kunna använda binära tal Kunna omvandla mellan binära, headecimala och decimala tal Förstå innebörden av olika binära koder Digital och Datorteknik OH LV Digital och Datorteknik o 2
Sierindikator DIGITL- och DTORTEKNIK Vad är digitalteknik ör något? Digitalteknik = Sierteknik Sierindikatorn har sju segment. Man kan utirån välja vilka segment som skall snas och vilka som skall vara osnliga. e a g d Et b c a b c d e g e a g d b c Sierindikator Ett digitalt sstem arbetar med siror. Et Digital och Datorteknik OH LV 3 Digital och Datorteknik OH LV 4 Mikroelektronikens utveckling ntalet transistorer som rms på en kiselbricka... Vad Repr ettorna o nollorna Binärtal Ecess-kod Gra-kod NBCD SCII-kod Digital och Datorteknik OH LV 5 Digital och Datorteknik OH LV 6
Begrepp vid binär kodning begrepp betdelse eempel... bit/bitar bitsträng binärt ord minsta inormationsenhet, kan anta två värden eller sekvens av bitar... kodord κ 7 κ 6 κ 5 κ 4 κ 3 κ 2 κ κ också ett binärt ord men med en astställd kodning (betdelse) ordlängd antal bitar i ordet nibble ordlängden 4 bitar bte ordlängden 8 bitar = (SCII) = 65 (naturligt tal) = -27 (heltal) Decimala positionssstemet; binära tal SEK 25:- 2 2 2 + + 5 25 = 2 4 + 2 3 + 2 2 + 2 + 2 25:- 52:- 52:- 6 8 4 2 = 23 Digital och Datorteknik OH LV 7 Digital och Datorteknik OH LV 8 b = 2 b = 8 b = b = 6 binärt oktalt decimalt headecimalt 2 3 4 5 6 7 2 3 4 5 6 7 2 2 2 3 4 5 6 7 8 9 2 3 4 5 6 7 Digital och Datorteknik OH LV 2 3 4 5 6 7 8 9 B C D E F S2.4 9 Omvandling av ett tal N med basen till basen 2. Talet (N) delas upp i heltalsdel (N (N) (N) 2 H ) och bråktalsdel (N B ). (N) = (N H.N B ) Heltalsdelen och bråktalsdelen behandlas sedan var ör sig. Eempel 2.678 till binärt Digital och Datorteknik OH LV 2 s2.8 Et2
Heltalsdelen: Heltalsdelen skall skrivas med sior i basen 2 som: Et2 Bråktalsdelen: Bråktalsdelen skall skrivas med sior i basen 2 som Et2 (N H ) 2 = d n- d n-2... d Man tänker sig heltalsdelen av talet (N H ) skrivet med na basen 2. (N H ) = d n- 2 n- + d n-2 2 n-2 +...+ d 2 + d 2 Dividera talet med basen 2. (N H ) / 2 = d n- 2 n-2 + d n-2 2 n-3 +...+ d 2 + d 2 - heltal bråktal Eter divisionen "dker" d upp som bråktalsdel (rest). Fortsatt division av det na heltalet med basen 2 ger sirorna d, d 2, d 3,... i talet, ast nu i basen 2. Digital och Datorteknik OH LV 2 (N B ) 2 =. d - d -2... d -m Man tänker sig bråktalsdelen av talet (N B ) skrivet i den na basen 2. (N B ) = d - 2 - + d -2 2-2 +... + d -m 2 -m Multiplicera talet med basen 2. 2(N B ) = d - 2 + d -2 2 - +... + d -m 2 -m+ heltal bråktal Eter multiplikationen "dker" d - upp som heltalsdel. Fortsatt multiplikation av den na bråktalsdelen med basen 2 ger sirorna d -2,d -3,... i talet, ast nu i basen 2. Till sist sätts talet (N) 2 samman av heltalsdelen och bråktalsdelen. (N) 2 = (N H.N B ) 2 = ( d n- d n-2... d. d - d -2... d -m ) 2 Digital och Datorteknik OH LV 22 Heltalsdelen: (2) omvandlas till bas 2 genom successiva divisioner med 2. kvot rest 2/2 = 5 + ½ d = 5/2 = 52 + ½ d = 52/2 = 26 + d 2 = 26/2 = 3 + d 3 = 3/2 = 6 + ½ d 4 = 6/2 = 3 + d 5 = 3/2 = + ½ d 6 = /2 = + ½ d 7 = Sluta som ger (2) = () 2 Digital och Datorteknik OH LV 23 S2.8 Et2 Bråktalsdelen: Talet (,678) omvandlas till bas 2 med successiva multiplikationer heltal bråk 2,678 = +,356 d - = 2,356 = +,72 d -2 = 2,72 = +,424 d -3 = 2,424 = +,848 d -4 = 2,848 = +,696 d -5 = 2,696 = +,392 d -6 = : : Sluta????? som ger (,678) = (...) 2 Digital och Datorteknik OH LV 24 S2.2 Et2
Fo Kursens mål: nvända en modern processor Konstruera en dator mha grindar och programmera denna Veckans mål: Beskriva grindar och de verktg som behövs under konstruktionsarbetet Hur kodas tal och tecken i datorn Dagens mål: Inledning till Digital o Datorteknik Kunna använda binära tal Kunna omvandla mellan binära, headecimala och decimala tal Förstå innebörden av olika binära koder Digital och Datorteknik o 25 GR- KOD Tabell 2.2. Grakoder. Decimal ordning Kodord i trebitars Grakod 2 3 4 5 6 7 8 9 2 3 4 Kodord i rbitars Grakod S2.6 5 Digital och Datorteknik OH LV 26 Gra kod Kodskiva vanlig komponent i olika tper av vinkelgivare. Ljuskällor Detektorer I övergångarna : Koder ändrar sig endast i en bit. Förhindrar tillälliga elavläsningar. Ecesskod Tabell 2.. Ecess-2 n- kodning vid n = 4. E avkoda: 2 Ecess-2 n- n=4 2 3 +2 2 ++ -2 3 = 4 Nivå k Kodord i ecess-2 n- -kod (n=4) -8-7 -6-5 -4-3 -2-2 3 4 5 6 7 S2.5 Digital och Datorteknik OH LV 27 Digital och Datorteknik OH LV 28
NBCD-kod Decimal sira NBCD S2.8 lanumeriska tecken SCII merican Standard Code or Inormation Interchange Tpiskt användningsområde: Tangentbord 2 Skriv (563,782) på NBCD-kod. 3 4 5 6 7 8 9 Digital och Datorteknik OH LV 29 Digital och Datorteknik OH LV 3 Felupptäckande kod - Paritetsbitar b 3 b 2 b paritetsbitsgenerering p Etra bit läggs till så att ordet alltid innehåller jämnt antal ettor (jämn paritet) paritetskontroll Kontrollbit: om udda antal ettor annars c b 3 b 2 b paritetsbitsgenerering p Etra bit läggs till så att ordet alltid innehåller udda antal ettor (udda paritet) paritetskontroll Kontrollbit: om jämnt antal ettor annars c b b 2 b 3 b b 2 b 3 Eempel: Udda paritetsmetod använd i samband med 3-bitars kod. Eempel: Jämn paritetsmetod använd i samband med 3-bitars kod. 32 Digital och Datorteknik OH LV 3 Digital och Datorteknik OH LV 32
Något bitmönster: Sammanattning Kan anges på HE-orm: 2C Kan representera ett binärtal: 2 Kan anges på HE-orm: 2C 6 Motsvarande decimala tal: 2 5 + 2 4 + 2 3 + 2 2 + 2 + 2 = 32+8+4=44 Vad Repr ettorna o nollorna Binärtal Ecess-kod Gra-kod NBCD SCII-kod,,,, etc Förskjuten nollpunkt; plus o minus Enhetsavstånd; en bit ändrar sig Sirorna,9; (,F;,, etc använs ej) Kod ör tet (tangentbord) NBCD-talen: Binär/He-talen [,9] Motsvarande decimala tal: 2 6 +C 6 = 2 6+2 =44 Digital och Datorteknik OH LV 33 Digital och Datorteknik OH LV 34 I DG Veckans mål: Beskriva grindar och de verktg som behövs under konstruktionsarbetet av datorn Hur kodas tal och tecken i datorn Dagens mål: Switchnätsalgebra Kunna använda boolesk algebra Kunna använda unktionstabell Kunna utöra binär evaluering Kunna återge grindarnas sanningstabeller Kunna koppla ihop grindar Fö2 Verktg Boolesk algebra Funktionstabell Karnaughdiagram Digital och Datorteknik o2 35 Digital och Datorteknik OH LV 36
3.2 Boolesk algebra Operatorer: +,,, Data:, Räkneregler: + = = ' = + = = ' = + = = + = = Icke Eller Och S3.7. Kommutativa lagarna + = + = 2. Distributiva lagarna ( + ) = + Satser inom Boolesk algebra. + ( ) = ( + ) ( + ) 7. ssociativa lagarna + ( + ) = ( + ) + ( ) = ( ) 8. De Morgans lagar ( + )' = ' ' ( )' = ' + ' 3. + = = 4. + ' = ' = 5. + = = 6. + = = 9. (')' = S3.8 Digital och Datorteknik OH LV 37 Digital och Datorteknik OH LV 38 Eempel 3.6 Förenkla = + = + = + sats 3 = ( + ) sats 2 = sats 5 = sats 3 S3.9 Dagens mål: Switchnätsalgebra Kunna använda boolesk algebra Kunna använda unktionstabell Kunna utöra binär evaluering Kunna återge grindarnas sanningstabeller Kunna koppla ihop grindar Fö2 Digital och Datorteknik OH LV 39 Digital och Datorteknik o2 4
Funktionstabell Satserna i Boolesk algebra kan enkelt bevisas med hjälp av binär evaluering och utnttjande av räknereglerna ör en Boolesk algebra. Enklast görs detta i tabellorm i en s k unktionstabell. Visa att: ( + )' = ' ' S3.8 Grind ELLER (OR) OCH (ND) INVERTERRE (ICKE, NOT) Logikkrets. +5V () S3.8 S.4 ( Sats 8 De Morgans) NOR Sätt upp alla kombinationer av variablerna!!!! NND V Digital och Datorteknik OH LV 4 Digital och Datorteknik OH LV 42 Några olika teknologier... S3.8 rb pp E TTL (Transistor-Transistor- Logic) MOS (Metal Oide Silicon) CMOS (Complementar MOS) Funktionstabeller ör grundläggande grindtper +5V 5 Volt Inverterare (NOT) Volt Mer om detta kommer i kursen Digitalteknik FK Digital och Datorteknik OH LV 43 Digital och Datorteknik OH LV 44
22V ~ = kg ND - GRIND = kg 5 Volt Funktionstabeller ör grundläggande grindtper = ND (OCH) S3.9 rb pp E 22V ~ = kg = kg Volt Digital och Datorteknik OH LV 45 NND =( ) Digital och Datorteknik OH LV 46 OR - GRIND = kg = kg 5 Volt Funktionstabeller ör grundläggande grindtper =+ OR (ELLER) S3.9 rb pp E 22 V NOR =(+) Volt Digital och Datorteknik OH LV 47 Digital och Datorteknik OH LV 48
Logikkretssmboler ör grundläggande logikoperationer. Funktion Grind Graisk smbol = + = ELLER (OR) OCH (ND) S3.8 S.4 w Utökningar av grindar = 5 Volt 5 Volt = ' = ( +)' = ( )' INVERTERRE (ICKE, NOT) NOR NND Z W = w w Volt Volt Digital och Datorteknik OH LV 49 Digital och Datorteknik OH LV 5 Utökningar av grindar 5 Volt 5 Volt OR, (Eclusive-OR) S3.23 w = + Speciell operationssmbol Z W w = +++w Volt Volt = OR = Så: = + Digital och Datorteknik OH LV 5 Digital och Datorteknik OH LV 52
Z Z = =? = = =? Utökningar av grindar = =++ I DG Fö3 Veckans mål: Beskriva grindar och de verktg som behövs under konstruktionsarbetet av datorn Hur kodas tal och tecken i datorn Dagens mål: Kunna jobba med booleska uttrck och unktioner Kunna ange uttrck på Disjunktiv och Konjunktiv orm Kunna skriva uttrck på Normal / Minimal orm Kunna ange Mintermer och Matermer Kunna minimera unktioner med hjälp av Karnaughdiagram Kunna nalsera och Minimera grindnät Konstruera grindnät bestående av NND och NOR logik Digital och Datorteknik OH LV 53 Digital och Datorteknik o3 54 Begrepp Booleska uttrck och unktioner Disjunktiv / Konjunktiv orm Normal / Minimal orm Mintermer / Matermer Karnaughdiagram Minimering av grindnät Booleska uttrck och Booleska unktioner Booleska uttrck som är ekvivalenta repr. samma Booleska unktion: (,) = (+)' och g(,) = ' utgör olika uttrck ör samma unktion (t (+)' = (' ') enligt sats 8). (jr vanlig algebra) Ett uttrck på disjunktiv orm är en summa av termer, där varje term är en Boolesk produkt av variabler (med eller utan prim): T e (,,w,) = + w + w' s3.4-7 Eempel Kalle: Realisera (,,) = ++' med grindar Ett uttrck på konjunktiv orm är en produkt av aktorer, där varje aktor är en Boolesk summa av variabler (med eller utan prim): T e g(,,w,) = ( + w)( w' + )( ' + ) Digital och Datorteknik OH LV 55 Digital och Datorteknik OH LV 56
Eempel (Kalle orts) Visa hur det Booleska uttrcket (,,) = ++' ) kan örenklas (minimeras) till disjunktiv minimal orm: (Summa av Produkter) 2) kan örenklas (minimeras) till konjunktiv minimal orm: (Produkt av Summor) Digital och Datorteknik OH LV 57 Eempel (Kalle orts) Visa hur (,,) = ++' kan örenklas till disjunktiv (minimal) orm: (Summa av Produkter) (,,) = + + ' = + + ' sats 3 = + ( + ') + ' sats 4 = + + ' + ' sats 2 = + + ' + ' sats = + + ' + ' sats 3 = ( + ) + '( + ) sats 2 = + ' sats 5 = + ' sats 3 Et 3 Kmp s 3.9 Digital och Datorteknik OH LV 58 Visa hur (,,) = ++' kan örenklas till konjunktiv (minimal) orm: (Produkt av summor) (,,) = Eempel (Kalle orts) + + ' = + + + ' sats 4 = ( + ) + '( + ) sats 2 = ( + ) ( + ') sats 2 Digital och Datorteknik OH LV 59 Z Grindnät ör eempel Kalle (,,) = + + ' Z Disjunktiv (minimal) orm (Summa av Produkter) (,,) = + ' Z Digital och Datorteknik OH LV 6 + ' Konjunktiv (minimal) orm (Produkt av summor) (,,) = ( + ) ( + ')
Disjunktiv normal orm och konjunktiv normal orm Vårat gamla eempel Kalle: (,,) = + + ' Rita unktionstabell (3 variabler,, => 2 3 = 8 rader ) Et 3 Digital och Datorteknik OH LV 6 Disjunktiv normal orm och konjunktiv normal orm Vårat gamla eempel Kalle: (,,) = + + ' Et 3 Rita unktionstabell (3 variabler => 2 3 = 8 rader ) ) ) 2) 3) 4) 5) 6) 7) Digital och Datorteknik OH LV 62 ) ) 2) 3) 4) 5) 6) 7) Invariabelkombinationen (,, ) i varje rad i unktionstabellen är unik. Ta ram en unik produkt av invariabler som ger =. (T.e ger rad 6 ) Ta ram produkter ör samtliga rader där unktionsvärdet är och adderar dessa. Summan blir ett uttrck ör den Booleska unktionen = '' + ' + ' + Et 3 ) ) 2) 3) 4) 5) 6) 7) Et 3 S3.6 Invariabelkombinationen (,, ) i varje rad i unktionstabellen är unik. Ta ram en unik summa av invariabler som ger ++=. (T.e ger rad 4 + + ) Ta ram summor ör samtliga rader där unktionsvärdet är och multiplicera dessa. Produkten blir ett uttrck ör den Booleska unktionen = ( + + )( + '+ )('+ + )('+ +') Varje term är unik och innehåller samtliga invariabler. Termerna kallas mintermer och unktionen sägs vara skriven på disjunktiv normal orm. Digital och Datorteknik OH LV 63 Varje aktor är unik och innehåller samtliga invariabler. Faktorerna kallas matermer och unktionen sägs vara skriven på konjunktiv normal orm. Digital och Datorteknik OH LV 64
I DG Fö3 Veckans mål: Beskriva grindar och de verktg som behövs under konstruktionsarbetet av datorn Hur kodas tal och tecken i datorn Dagens mål: Kunna jobba med booleska uttrck och unktioner Kunna ange uttrck på Disjunktiv och Konjunktiv orm Kunna skriva uttrck på Normal / Minimal orm Kunna ange Mintermer och Matermer Kunna minimera unktioner med hjälp av Karnaughdiagram Kunna nalsera och Minimera grindnät Konstruera grindnät bestående av NND och NOR logik Digital och Datorteknik o3 65 Funktionstabell (,, ) ) ) 2) 3) 4) 5) 6) 7) Grakodat ) och 3) + = ( + ) = 3) och 7) + = ( +) = 6) och 7) + = ( + ) = lternativ uppställning (,, ) ) ) 3) 2) 6) 7) 5) 4) = + + Digital och Datorteknik OH LV 66 S3.25-27 Karnaughdiagram Z 3 2 4 5 7 6 min = Z + Digital och Datorteknik OH LV är noll är don t care Z är ett Z är ett är ett Z är don t care 67 = = = S3.3 w w w igurerna 3.27 och 3.28 = = = w w w Digital och Datorteknik OH LV 68
Sammanattning NORML orm Funktionstabell MINIML orm Kranaughdiagram DISJUNKTIV (normal / minimal) orm av Prod E: ( )+(w)+(w) Ettor Mintermer: ( ) = NND / NND - logik KONJUNKTIV (normal / minimal) orm Prod av :or E: (+)( ++w)( +w ) Nollor Matermer: (++) = NOR / NOR - logik Digital och Datorteknik OH LV 69 I DG Fö3 Veckans mål: Beskriva grindar och de verktg som behövs under konstruktionsarbetet av datorn Hur kodas tal och tecken i datorn Dagens mål: Kunna jobba med booleska uttrck och unktioner Kunna ange uttrck på Disjunktiv och Konjunktiv orm Kunna skriva uttrck på Normal / Minimal orm Kunna ange Mintermer och Matermer Kunna minimera unktioner med hjälp av Karnaughdiagram Kunna nalsera och Minimera grindnät Konstruera grindnät bestående av NND och NOR logik Digital och Datorteknik o3 7 Praktikall, minimering av grindnät w w w Ett grindnät med utsignalen och ra insignalerna,,, w är givet. Et4 Kan man konstruera ett "mindre" nät? ) nals 2) Funktionstabell 3) Minimering (Karnaugh) 4) Realicering Digital och Datorteknik OH LV 7 I DG Fö3 Veckans mål: Beskriva grindar och de verktg som behövs under konstruktionsarbetet av datorn Hur kodas tal och tecken i datorn Dagens mål: Kunna jobba med booleska uttrck och unktioner Kunna ange uttrck på Disjunktiv och Konjunktiv orm Kunna skriva uttrck på Normal / Minimal orm Kunna ange Mintermer och Matermer Kunna minimera unktioner med hjälp av Karnaughdiagram Kunna nalsera och Minimera grindnät Konstruera grindnät bestående av NND och NOR logik Digital och Datorteknik o3 72
NND-logik NND-logik Om vi har +B B Hur realicera med NND? B Samma sak B om nu = (C,D) och B = (E,F) B De Morgan: (+B) = B B Disjunktiv orm C D E F C D E F Digital och Datorteknik OH LV 73 Digital och Datorteknik OH LV 74 NOR-logik NOR-logik Om vi har B B Hur realicera med NOR? B Samma sak B B De Morgan: (B) = + B Digital och Datorteknik OH LV 75 B om nu = (C,D) och B = (E,F) Konjunktiv orm C D E F C D E F Digital och Datorteknik OH LV 76