De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

1/1/ eindhoven university of technology / faculty of Computer Science 2IC20:Computersystemen Week 2: Microarchitectuur niveau ALU en datapad.

Verwante presentaties


Presentatie over: "1/1/ eindhoven university of technology / faculty of Computer Science 2IC20:Computersystemen Week 2: Microarchitectuur niveau ALU en datapad."— Transcript van de presentatie:

1 1/1/ eindhoven university of technology / faculty of Computer Science 2IC20:Computersystemen Week 2: Microarchitectuur niveau ALU en datapad

2 1/1/ eindhoven university of technology / faculty of Computer Science 2 “Positieve” en “Negatieve” logica  Boole werkt met “waar” / “niet waar”  voor het gemak vertaald in “1” (EEN) en “o” (NUL)  Hardware werkt met voltages “hoog” en “laag”  koppeling Boole aan voltages: afspraak ! 0 volt: “laag” 5 volt: “hoog” negatief: “laag” = 1 positief: “hoog” = 1 ABF 0v0v 0v0v 0v0v 0v0v 5v5v 0v0v 0v0v 0v0v 5v5v 5v5v 5v5v 5v5v ABF ABF

3 1/1/ eindhoven university of technology / faculty of Computer Science 3 Niets gaat vanzelf: “klokken”  Volgorde van operaties op chip van groot belang  Onderdelen moeten gesynchroniseerd worden  Met flip-flops asynchrone operaties in toom houden  Al die flip-flops met een “systeemklok” besturen: DE “klok”  Vaste tijd tussen aktieve klokflanken: de (klok-) cyclustijd  Omgekeerde: klok-frequentie (VLSI: tot 3 GIGAHerz)  Aanmerking op boek: vertragen klokken = SMERIG

4 1/1/ eindhoven university of technology / faculty of Computer Science 4 Een “register” in hardware  Setje flip-flops met identieke stuursignalen Systeem- reset DQ clr Systeem- klok 1 0 MUX sel “Laad register” besturing Ingang “Output enable” (OE) besturing Uitgang: 0, 1, “open” Drie-toestands versterker Engels: “Tri-state” buffer

5 1/1/ eindhoven university of technology / faculty of Computer Science 5 Uitgangen aan elkaar: tri-state buffers ! D0..7Q0..7 OE clr load “B” Laad “B” Lees “B” D0..7Q0..7 OE clr load “A” Laad “A” Lees “A” 8-bit register KlokReset Bus “in” Bus “uit” Laden van register: - Waarde op bus “in” - “Laad” aktief maken - Wachten op klok ! Lezen van register: - “Lees” aktief maken - Waarde op “uit” bus Tri-state buffers op één bus NOOIT tegelijk aktief maken !

6 1/1/ eindhoven university of technology / faculty of Computer Science 6 Extra grapjes met registers  Laden van meerdere bussen  Meer ingangen op ingangs-multiplexer  Verbinden met meerdere uitgangs-bussen  Voor iedere bus een eigen set tri-state buffers  “Lokale” operaties mogelijk  Q uitgangen van flip-flops via combinatorische logica terugkoppelen naar ingangs-multiplexer  Increment (+1), decrement (-1), schuiven…

7 1/1/ eindhoven university of technology / faculty of Computer Science 7 Besturingssignalen van geheugens  Meestal meer geheugen-chips in systeem  “Chip Select” (CS) signaal aktief voor lezen / schrijven  “Aan- en uitzetten” van uitgang soms tijdkritisch  Apart “Output Enable” (OE) signaal vrij standaard  Lees / schrijf besturing apart of gecombineerd  Apart: “Read” (RD) en “Write” (WR) signalen  Gecombineerd: één signaal kiest lezen OF schrijven  Signalen vaak negatieve logica: bijv. CS of /CS

8 1/1/ eindhoven university of technology / faculty of Computer Science 8 Het datapad van de CPU: de kern  In veel computers de plaats waar ALLE berekeningen plaatsvinden !  “Co-processoren” kunnen wel sneller rekenen maar zijn gespecialiseerd in bepaald “genre”  Grafische 3D kaart kan geen wordprocessor draaien !  Afweging: simpel & langzaam of complex & snel  Houden het vandaag overzichtelijk  Dus redelijk simpel…

9 1/1/ eindhoven university of technology / faculty of Computer Science 9 B A C Som Carry FA Carry in (CI) AB A+B BB A De arithmetisch/logische eenheid (1)  Hardware voor één bit valt mee (voorbeeld !)... Carry uit (CO) decoder selA selB F0 F1 Uitgang A B ENB ENA INVA “Bit slice”

10 1/1/ eindhoven university of technology / faculty of Computer Science 10 N, V, Z... COCI De arithmetisch/logische eenheid (2)  Deze “bit slices” koppelen via carry in/uit  Besturing via F0, F1, ENA, ENB en INVA  Tests: onder meer Negative, oVerflow en Zero ALU AB Uitgang ENA, ENB INVA F0, F1 De “broek”

11 1/1/ eindhoven university of technology / faculty of Computer Science 11 Standaard tests op ALU resultaten  Carry out:direct uit MSB bit slice  Auxiliary carry:carry uit bit slice voor bit 3  Negatief (“Sign”):resultaat bit van MSB bit slice  Zero:logische NOR van alle resultaat bits  oVerflow:twee methoden (met zelfde resultaat)  (“Sign A” = “Sign B”) AND (“Sign A”  “Sign result”)  “Carry uit MSB” XOR “Carry uit van (MSB - 1)”  Pariteit:logische XOR van alle resultaat bits MSB = Meest Significante (“linkse”) Bit

12 1/1/ eindhoven university of technology / faculty of Computer Science 12 De (voorbeeld) ALU functies  Vijf stuuringangen en CI: 2 6 = 64 functies ?  In principe wel, maar niet allemaal nuttig…  Waarden doorgeven en constanten genereren: A, B, 0 (nul), 1 (één), -1 (min één)  Reken functies:A+B, A+B+1, B-A, B-A-1, 0-A (NEG), A+1 (INC), B+1, B-1 (DEC)  Logische functies: A AND B, A OR B, NOT A, NOT B  Géén XOR of schuif/roteer operaties 

13 1/1/ eindhoven university of technology / faculty of Computer Science 13 Een goedkoop datapad  Alle registers met één uitgang naar centrale (“B”) bus  Met de benodigde “laad” en “output enable” signalen ! ALU MAR MDR PC IR ACCU HULP A B-bus C-bus Data geheugen Programma geheugen MAR: Memory Address Register MDR: Memory Data Register PC: Program Counter IR: Instruction Register B

14 1/1/ eindhoven university of technology / faculty of Computer Science 14 Spelregels voor het datapad  Alle data-overdrachten op dezelfde manier  Van register, via bussen en combinatorische logica (waaronder ALU en tri-state buffers) naar register lezen uit geheugen is hier combinatorisch !  Alle registers aan systeemklok  Meerdere registers kunnen gelijktijdig waarde laden  Kunnen ook waarden uitwisselen (“exchange”)  Maximaal één overdracht per bus per klok

15 1/1/ eindhoven university of technology / faculty of Computer Science 15 Afhandeling van “ADD ACCU,(MAR)” B ALU MAR MDR PC IR ACCU HULP A Data geheugen Programma geheugen Klok 1: Instructie ophalen PC verhogen (ALU: B+1) Klok 2: Data geheugen lezen HULP  ACCU (ALU: B) Klok 3: ACCU  HULP + MDR (ALU: A+B) Nu weten we pas, welke instructie het is!


Download ppt "1/1/ eindhoven university of technology / faculty of Computer Science 2IC20:Computersystemen Week 2: Microarchitectuur niveau ALU en datapad."

Verwante presentaties


Ads door Google