Digital och Datorteknik Dig o Dat = DoD LP EDA432 (IT), DIT79 (GU), LEU43 (L) LP2 EDA25 (Z), DIT79 (GU), EDA45 (D), LEU43 (L) LP4 EDA3 (E) Digital och Datorteknik o tterligare kurser kopplade till ingenjörskompetens och orskningsörberedelse Hardware Description and Veriication Digital hardware (mer digitalteknik, programmerbarhet, VHDL) Moderna elektronikkonstruktionskurser Dator-sstemteknik (Prestanda) Datastukturer Datakomm Objektorienterad programmering (Java) Maskinorienterad programmering (I/O, assembler o C) Digital- o datorteknik (digitalteknikens o processorns grunder) Datorarkitekturkurser Operativsstem Parallellprogrammering Realtidssstem MOP o 2 Sotware Engineering Fundamentals 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 o 3 Kursens mål: Dator teknik Anvä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 Ada C) Kompilator (översättare) Avbrott (realtid) Data väg Binär kodning Digital och Datorteknik o 4
Hur når vi målet? Arb s 4 Hur når vi målet? orts Arb s 7 Beskrivning av datorns användning och unktion Automatiskt strd borrmaskin Positionera borr Starta borr Borra genom arbetsstcke... Adressbuss (8) Adress MR Läs Minne Processor MW Skriv Dataväg CP Datadel Adressdel Data ut Data in Strenhet MR Databuss (8) A B F(AB) A F(AB) A F(A) B Beskrivning av strsignaler CP: OE PC =, LD Adr =, Inc PC = CP2: MR=, LD T = CP3: OE DR =, LD R, 3 = =... Digital och Datorteknik o 5 Digital och Datorteknik o 6 Kursens Hemsida Sök via studieportalen EDA25 eller http://www.cse.chalmers.se/edu/course/eda25 Länkar till kursdokument Senaste ntt Kurs-PM Veckoplanering Laborationsinormation Simulatorer Digital och Datorteknik o 7 Hur öljer du kursen Fokusera på: Kursens mål Veckans mål Föreläsningens mål Förbered dig innan öreläsningarna: Använd Veckoplanering Veckans OH-bilder Bläddra i böckerna Under öreläsningen: Var AKTIV (är du trött stanna hemma och sov) Diskutera med en kompis på rasten Eter öreläsningarna: Bearbeta (går-)dagens material Anvä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 o 8
Hur öljer du öreläsningarna Fokusera på: Föreläsningens mål Var AKTIV Anteckna sid/igur/eempelanvisningar! Anteckna/rita i era böcker Diskutera med en kompis på rasten Ställ rågor Vad menar du Vid öreläsningens slut: Repetera (ma 5 min) Kmp s. Arb s Et DigiFle 7.5 Kopplingsboen Datavägar Fle Eterm 6.7 FLE HC2 I/O Borrmaskin Simulatorer Digital och Datorteknik o 9 Digital och Datorteknik o 8 3 5 Fö: Sim: LAB: Schema Vanliga veckor LP2 HT Må Ti On To Fr LAB LAB A D 8.-.45 8.- LAB.45 4225 LAB 4225 Fö HC Sal 4225: Datortekniks kurslab. Föreläsningar / Demonstration Handledd självverksamhet. Laboration Sim C 3.5-5. ES63 Fö HC LAB B 3.5-7. LAB 4225 Sim D 3.5-5. ES63 Fö HC LAB C 3.5-7. LAB 4225 Demo HC Sim A 8.-9.45 ED248 Sim B.-.45 ED248 SCHEMAN 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 o 2
Kurslitteratur (KMP) Johnson, Larsson Arebrink: Grundläggande digital- och datorteknik. Kompendium, Inst ör datorteknik, CTH, 27. Del. Digital teknik (ARB) Arbetsbok ör DigiFle. Ver 4, 28. (ARB2) Arbetsbok ör HC2. (ET) Kompletterande material CTH 2 (INS) Instruktionslista ör FLE-processorn. (INS2) Instruktionslista ör mikroprocessorn CPU2. (LAB) Laborations-PM nr -4. Inst ör datorteknik, CTH, 2. (SIM) Simulatorer ör digitala kretsar, FLE- processorn och HC2-processorn. Programvara ör PC (Win95/98/2/NT/P/ME). Kursens mål: Använda en modern processor Konstruera en dator mha grindar och programmera denna Veckans mål: Beskriva grindar och och de verktg som behövs under konstruktionsarbetet Hur kodas tal och tecken i datorn Dagens mål: Inledning till Digital o Datorteknik Binära tal Talomvandling Koder Fo Digital och Datorteknik OH LV 3 Digital och Datorteknik o 4 Sierindikator DIGITAL- och DATORTEKNIK 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 Ingångar a b c d e g +5V a g b e c d Sierindikator V Et För denna sierindikator antas gälla att när en "etta" läggs på en av dess ingångar te a, så sns a-segmentet i sierönstret. En "nolla" på en ingång medör att motsvarande segment är osnligt. Sierindikatorn som visas här har matningsspänningen 5V. Det normala är då en "etta" motsvaras av spänningen +5V relativt jord och en nolla av V Digital och Datorteknik o 5 Digital och Datorteknik o 6
a b c d e g a g b e c d Sierindikator Et Räknare (Sekvenskrets) 2 4 8 Et a = a b = Kodomvandlare c = g b 2 d = (Kombinatorisk e = e c 4 krets) = g = d 8 Sierindikator Ett digitalt sstem arbetar med siror. Digital och Datorteknik o 7 Digital och Datorteknik o 8 Mikroelektronikens utveckling Antalet transistorer som rms på en kiselbricka... Vad Repr ettorna o nollorna l l l l l Binärtal Ecess-kod Gra-kod NBCD ASCII-kod Digital och Datorteknik o 9 Digital och Datorteknik o 2
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 o 2 3 4 5 6 7 8 9 A B C D E F S2.4 2 Bin Dec He 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 A B 2 C 3 D 4 E 5 F Omvandla 2 till ett headecimalt tal 2 A 2 A 6 Digital och Datorteknik o 22 s2.8 Et2 Heltalsdelen: Heltalsdelen skall skrivas med sior i basen 2 som: Et2 Omvandling av ett tal N med basen till basen 2. (N) (N) 2 (N H ) 2 = d n- d n-2... d Man tänker sig heltalsdelen av talet (N H ) skrivet med na basen 2. Talet (N) delas upp i heltalsdel (N H ) och bråktalsdel (N B ). (N H ) = d n- 2 n- + d n-2 2 n-2 +...+ d 2 + d 2 (N) = (N H.N B ) Heltalsdelen och bråktalsdelen behandlas sedan var ör sig. 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 Eempel 2.678 till binärt 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 o 23 Digital och Datorteknik o 24
Bråktalsdelen: Bråktalsdelen skall skrivas med sior i basen 2 som (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 Et2 (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 = som ger (2) = () 2 S2.8 Et2 Digital och Datorteknik o 25 Digital och Datorteknik o 26 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 = : : som ger (,678) = (...) 2 S2.2 Et2 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 o 27 Digital och Datorteknik o 28
GRA- 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 o 29 NBCD-kod Skriv (563,782) på NBCD-kod. Decimal sira NBCD 2 3 4 5 6 7 8 9 Digital och Datorteknik o 3 S2.8 ASCII-koden. Alanumeriska koder 2 3 4 5 6 7 b6b5b4 b3b2bb NUL DLE SP @ P ` p SOH DC! A Q a q ST DC2 2 B R b r ET DC3 # 3 C S c s EOT DC4 $ 4 D T d t ENQ NAK % 5 E U e u ACK SN 6 F V v BEL ETB 7 G W g w BS CAN ( 8 H h HT EM ) 9 I i LF SUB * : J Z j VT ESC + ; K [Ä k {ä FF FS, < L \Ö l ö CR GS - = M ]Å m }å S RS. > N ^ n ~ 6 7 8 9 A B S US /? O _ o RUBOUT Digital och Datorteknik (DEL) o 3 2 3 4 5 C D E F S2.27 E A =4 6 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 NBCD-talen: Binär/He-talen [,9] Motsvarande decimala tal: 2 6 +C 6 = 2 6+2 =44 Digital och Datorteknik o 32
Vad Repr ettorna o nollorna l Binärtal,,,, etc l Ecess-kod Förskjuten nollpunkt; plus o minus l Gra-kod Enhetsavstånd; en bit ändrar sig l NBCD Sirorna,9; (A,F;,, etc använs ej) l ASCII-kod Kod ör tet (tangentbord) I DAG 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 Boolesk algebra Funktionstabell Binär evaluering Grindar Fö2 Digital och Datorteknik o 33 Digital och Datorteknik o2 34 Switchnätsalgebra S3. 3.2 Boolesk algebra Operatorer: +,,, Data:, S3.7 In Signaler Switchnät (grindnät) Ut Signaler Räkneregler: + = = ' = + = = ' = + = = + = = Icke Eller Och Digital och Datorteknik o2 35 Digital och Datorteknik o2 36
. Kommutativa lagarna + = + = 2. Distributiva lagarna ( + ) = + Satser inom Boolesk algebra. + ( ) = ( + ) ( + ) 7. Associativa lagarna + ( + ) = ( + ) + ( ) = ( ) 8. De Morgans lagar ( + )' = ' ' ( )' = ' + ' 3. + = = 4. + ' = ' = 5. + = = 6. + = = 9. (')' = S3.8 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: ( + )' = ' ' ( Sats 8 De Morgans) Sätt upp alla kombinationer av variablerna!!!! S3.8 Digital och Datorteknik o2 37 Digital och Datorteknik o2 38 Logikkrets. S3.8 S.4 Några olika teknologier... Grind ELLER (OR) +5V TTL (Transistor-Transistor- Logic) MOS (Metal Oide Silicon) CMOS (Complementar MOS) OCH (AND) INVERTERARE (ICKE, NOT) () +5V NOR NAND V Digital och Datorteknik o2 39 Mer om detta kommer i kursen Digitalteknik FK 4
S3.8 Arb App E Funktionstabeller ör grundläggande grindtper Funktionstabeller ör grundläggande grindtper Inverterare (NOT) = AND (OCH) NAND =( ) S3.9 Arb App E Digital och Datorteknik o2 4 Digital och Datorteknik o2 42 Funktionstabeller ör grundläggande grindtper =+ OR (ELLER) S3.9 Arb App E Logikkretssmboler ör grundläggande logikoperationer. Funktion Grind Graisk smbol = + = ELLER (OR) OCH (AND) S3.8 S.4 NOR =(+) = ' = ( +)' = ()' INVERTERARE (ICKE, NOT) NOR NAND Digital och Datorteknik o2 43 Digital och Datorteknik o2 44
Utökningar av grindar Utökningar av grindar w = w = Z W = w Z W = +++w Digital och Datorteknik o2 45 Digital och Datorteknik o2 46 OR, (Eclusive-OR) S3.23 Utökningar av grindar = OR = + Speciell operationssmbol Så: = + Z Z = =? = = =? = =++ Digital och Datorteknik o2 47 Digital och Datorteknik o2 48
I DAG 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: Booleska uttrck och unktioner Disjunktiv / Konjunktiv orm Normal / Minimal orm Mintermer / Matermer Karnaughdiagram Minimering av grindnät NAND / NOR logik Eempel Kalle: Begrepp Booleska uttrck och unktioner Disjunktiv / Konjunktiv orm Normal / Minimal orm Mintermer / Matermer Karnaughdiagram Minimering av grindnät Realisera (,,) = ++' med grindar Digital och Datorteknik o3 49 Digital och Datorteknik o3 5 Eempel (Kalle orts) Booleska uttrck och Booleska unktioner s3.4-7 Realisera (,,) = ++' med grindar 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' Ett uttrck på konjunktiv orm är en produkt av aktorer, där Z ' + ' varje aktor är en Boolesk summa av variabler (med eller utan prim): T e g(,,w,) = ( + w)( w' + )( ' + ) Digital och Datorteknik o3 5 Digital och Datorteknik o3 52
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 o3 53 Eempel (Kalle orts) Visa hur (,,) = ++' kan örenklas till konjunktiv (minimal) orm: (Produkt av summor) (,,) = + + ' = + + + ' sats 4 = ( + ) + '( + ) sats 2 = ( + ) ( + ') sats 2 Digital och Datorteknik o3 54 Z Grindnät ör eempel Kalle (,,) = + + ' Z Disjunktiv (minimal) orm (Summa av Produkter) (,,) = + ' Z Digital och Datorteknik o3 55 + ' Konjunktiv (minimal) orm (Produkt av summor) (,,) = ( + ) ( + ') 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 o3 56
) ) 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 = '' + ' + ' + 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 o3 57 Et 3 S3.6 Etersom det inns en minterm ör varje rad i unktionstabellen inns det sammanlagt 2 3 = 8 mintermer ör en unktion av tre variabler. Se tabell 3.8 i kompendiet! i 2 3 ' 2 ' 3 ' m = m = m 2 = ' 2 ' 3 ' 2 3 ' m 3 = m 4 = ' 2 3 2 ' 3 ' m 5 = m 6 = 2 ' 3 2 3 ' m 7 = 2 3 2 3 4 5 6 7 Digital och Datorteknik o3 58 ) ) 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 aktor är unik och innehåller samtliga invariabler. Faktorerna kallas matermer och unktionen sägs vara skriven på konjunktiv normal orm. Digital och Datorteknik o3 59 Etersom det inns en materm ör varje rad i unktionstabellen inns det sammanlagt 2 3 = 8 matermer ör en unktion av tre S3.8 variabler. Se tabell 3.9 i kompendiet! i 2 3 + 2 + 3 + 2 + 3 s = s = s 2 = + 2 '+ 3 s 3 = + 2 '+ 3 ' s 4 = '+ 2 + 3 s 5 = '+ 2 + 3 ' s 6 = '+ 2 '+ 3 s 7 = '+ 2 '+ 3 ' 2 3 4 5 6 7 Man ser ibland uttrcket kanonisk orm i stället ör normal orm. Digital och Datorteknik o3 6
Funktionstabell (,, ) ) ) 2) 3) 4) 5) 6) 7) Grakodat ) och 3) + = ( + ) = 3) och 7) + = ( +) = 6) och 7) + = ( + ) = Alternativ uppställning (,, ) ) ) 3) 2) 6) 7) 5) 4) = + + Digital och Datorteknik o3 6 S3.25-27 Karnaughdiagram Z 3 2 4 5 7 6 min = Z + Digital och Datorteknik o3 är noll är don t care Z är ett Z är ett är ett Z är don t care 62 Karnaughdiagram Kan användas ör ra variabler (med visst besvär upp till se) w W Z + W Z = = = = S3.3 w w w igurerna 3.27 och 3.28 = = = w w w Digital och Datorteknik o3 63 Digital och Datorteknik o3 64
Karnaughdiagram Konjunktiv orm Sammanattning NORMAL orm Funktionstabell MINIMAL orm Kranaughdiagram (W+ ++Z )(W+ + +Z ) = (W+ +Z )+ = (W+ +Z ) w DISJUNKTIV (normal / minimal) orm av Prod E: ( )+(w)+(w) Ettor Mintermer: ( ) = NAND / NAND - logik KONJUNKTIV (normal / minimal) orm Prod av :or E: (+)( ++w)( +w ) Nollor Matermer: (++) = NOR / NOR - logik Digital och Datorteknik o3 65 Digital och Datorteknik o3 66 Praktikall, minimering av grindnät Et4 Sammanattning NAND- och NOR-logik w w w Ett grindnät med utsignalen och ra insignalerna,,, w är givet. Kan man konstruera ett "mindre" nät? ) Anals 2) Funktionstabell 3) Minimering (Karnaugh) 4) Realicering Digital och Datorteknik o3 67 C D E F C D E F???? Samma sak Samma sak Digital och Datorteknik o3 68