Det digitale niveau
Niveauer af abstrakte maskiner
Mikroarkitektur: Mic-1 Digitale kredsløb Logiske tilstande: 0 (0-1 V), 1 (2-5 V)
Mikroarkitektur: Mic-1 Kombinatoriske kredsløb Logiske tilstande: 0 (0-1 V), 1 (2-5 V)
Mikroarkitektur: Mic-1 Registre Logiske tilstande: 0 (0-1 V), 1 (2-5 V)
Mikroarkitektur: Mic-1 Timing Logiske tilstande: 0 (0-1 V), 1 (2-5 V)
Transistorer.. i dag Atom-byggestenen i bla Digitale kredsløb Bell Labs 16. december, 1947, William Shockley, John Barden og Walter Brattain. Nobelprisen i 1956...
Transistor - tilstande "Binær kontakt", hvor input-spænding (Vin) styrer kontakten mellem Output-spænding (Vout) og Reference-spænding (Vref) Bipolær transistor Input = 0V (logisk 0) Input = 5V (logisk 1) Output Output Output Input 0V Input OFF 5V Input ON Reference Reference Reference OFF Tilstande: 0 (0-1 V) 1 (2-5 V) ON V in = 0 => Transistor OFF => V out =?? (Svæver.. næste slides) V in = 1 => Transistor ON => V out = Vref = 0 Det tager få pico-sekunder at skifte tilstand
Transistor basis-kredsløb (a,b,c) V in = 0 => Transistor OFF => V out = Vcc = 1 (via modstand) V in = 1 => Transistor ON => V out = Vref = 0 Forsyningsspænding (5V) Output- Spænding???? Modstand Input- Spænding (0V el. 5V) Referencespænding (0V) Tilstande: 0 (0-1 V) 1 (2-5 V)
Transistor basis-kredsløb (a) V in = 0 => Transistor OFF => V out = Vcc = 1 V in = 1 => Transistor ON => V out = Vref = 0 V in NOT 0 1 1 0 V out Tilstande: 0 (0-1 V) 1 (2-5 V)
Transistor basis-kredsløb (b) V in = 0 => Transistor OFF => V out = Vcc = 1 V in = 1 => Transistor ON => V out = Vref = 0 V in NOT 0 1 1 0 V out NAND V 1 V 2 V out 0 0 1 0 1 1 1 0 1 1 1 0 Tilstande: 0 (0-1 V) 1 (2-5 V)
Transistor basis-kredsløb (c) V in = 0 => Transistor OFF => V out = Vcc = 1 V in = 1 => Transistor ON => V out = Vref = 0 NOT NAND NOR V in 0 1 1 0 V out V 1 V 2 V out 0 0 1 0 1 1 1 0 1 1 1 0 V 1 V 2 V out 0 0 1 0 1 0 1 0 0 1 1 0 Tilstande: 0 (0-1 V) 1 (2-5 V)
Gates logiske funktioner af basis kredsløb Boolske funktioner givet ved sandhedstabeller... men digitale kredsløb har forsinkelse...
Hvor mange boolske funktioner med 2 input og 1 output findes der? 2 4 Gates Hvor mange boolske funktioner med n input og m output findes der? (2 m ) (2n ) Boolske funktioner givet ved sandhedstabeller... men digitale kredsløb har forsinkelse...
Hvor mange boolske funktioner med 2 input og 1 output findes der? 2 4 Gates Hvor mange boolske funktioner med n input og m output findes der? (2 m ) (2n ) Boolske funktioner givet ved sandhedstabeller... men digitale kredsløb har forsinkelse...
Hvor mange boolske funktioner med 2 input og 1 output findes der? 2 4 Gates Hvor mange boolske funktioner med n input og m output findes der? (2 m ) (2n ) Boolske funktioner givet ved sandhedstabeller... men digitale kredsløb har forsinkelse...
AND, OR og NOT kredsløb AND, OR, NOT kan bygges af enten NAND eller NOR gates
Eksempel: majoritet Alt kan bygges af AND, OR, NOT (dvs. NAND eller NOR) _ M = ABC + ABC + ABC + ABC
Simplere kredsløb (reducere)
Boolsk algebra
Decoder (f.eks. anvendt i MIC-1 mht B-bus) = 1 når ABC ~ ABC = 000 = 1 når ABC ~ ABC = 001 = 1 når ABC ~ ABC = 010 = 1 når ABC ~ ABC = 011 = 1 når ABC ~ ABC = 100 = 1 når ABC ~ ABC = 101 = 1 når ABC ~ ABC = 110 = 1 når ABC ~ ABC = 111 Vælger et blandt 2 n output udfra n input vælger D i, hvor i = ABC
1-bit left/right shifter (f.eks. anvendt i MIC-1 mht shifter) C = 0 : D1 D2 D3 D4 D5 D6 D7 0 C = 1 : 0 D0 D1 D2 D3 D4 D5 D6
1-bit full-adder Forsinkelse: tiden der går til output korrekt afspejler input
Arithmetic Logic Unit (f.eks. MIC-1) and-or-not 2-4 decoder 1-bit fulladder
Arithmetic Logic Unit (f.eks. MIC-1)
Integrerede kredsløb Transistorer kan laves og sammensættes i silicium Jack Kilby, Texas Instruments, 1958 Robert Noyce, Fairchild Semiconductors, 1959
Core dump (lagre/registre) Fra UNIVAC 1105, 1024 bit og $6000 pr. plade
1-bit SR-latch Husker en tilstand Q afhængig af sidste SR input S: Set, R: Reset
1-bit SR-latch SET (Q=1) Tid: T0 T1 T2 T3 T4 T5 SET Q=1: (S,R,Q,/Q) = (0,0,X,/X) (1,0,X,/X) (1,0,X,0) (1,0,1,0) (0,0,1,0) (0,0,1,0) Tid:T0->T5 [0,1,1,1,0,0] [/X,/X,0,0,0,0] Husker [0,0,0,0,0,0] [X,X,X,1,1,1] Husker en tilstand Q afhængig af sidste SR input S: Set, R: Reset
1-bit SR-latch RESET (Q=0) Tid: T0 T1 T2 T3 T4 T5 RESET Q=0: (S,R,Q,/Q) = (0,0,X,/X) (0,1,X,/X) (0,1,0,/X) (0,1,0,1) (0,0,0,1) (0,0,0,1) Tid: T0->T5 [0,0,0,0,0,0] [/X,/X,/X,1,1,1] Husker [0,1,1,1,0,0] [X,X,0,0,0,0] Husker en tilstand Q afhængig af sidste SR input S: Set, R: Reset
Clock Synkronisering af hændelser, f.eks. indlæsning i registre
Clocked 1-bit D-latch Når clock-signalet er højt indlæses D i latchen ellers huskes level-triggered
Clocked D flip-flop a b c d Når clock-signalet stiger indlæses D i latchen edge-triggered
Lagerkredsløb 2 x 1 bit D flip-flop 8 bit D flip-flop
Eksempel: et 4 x 3 bit lager I 0 -I 2 : Input O 0 -O 2 : Output A 0 -A 1 : Adresse CS: Chip Select RD: Read OE: Output Enable
Dynamisk RAM (DRAM) Robert Noyce og Gordon Moore grundlagde Intel i 1968 I 1970 lanceredes Intel 1103, den første 1 Kbit DRAM chip
Moore's lov (1965) x2 /18mdr Intel 2010: Poulson processor 3,100,000,000 transitorer 544mm2 http://elektronikbranchen.dk/nyhed/intel-saetter-31-mia-transistorer-paa-et-enkelt-stykke-silicium
Intel 4004 og Pentium 4 http://www.intel.com/museum/
SLUT!!!!!!
Ekstra slides
XOR V 1 V 2 V out 0 0 0 0 1 1 1 0 1 1 1 0
XOR V 1 V 2 V out 0 0 0 0 1 1 1 0 1 1 1 0
XOR V 1 V 2 V out 0 0 0 0 1 1 1 0 1 1 1 0 Alt kan bygges af AND, OR, NOT (dvs. NAND eller NOR)
Multiplexer Vælger et blandt 2 n data-input udfra n kontrol-input F = D i, hvor i = ABC
Subtraktion i Mic-1's ALU sub(w 1, W 2 ) = add(w 1, add(neg(w 2 ),1)) Læs A og B: ENA=1, ENB=1 Inverter A: INVA = 1 Vælg add: F 0 = 1, F 1 = 1 Læg én til: INC=1 ALU'en beregner så: add(neg(a), B, 1) = add(b, add(neg(a),1)) = sub(b,a) Derfor understøtter vores ALU operationen B-A
1-bit SR-latch Husker en tilstand Q afhængig af sidste SR input S: Set, R: Reset