INF2270. Datamaskin Arkitektur

Like dokumenter
INF2270. Datamaskin Arkitektur

Dagems temaer. kapittel 4 i Computer Organisation and Architecture. av CPU: von Neuman-modellen. Transfer Language (RTL) om hurtigminne (RAM)

hvor mye hurtigminne (RAM) CPU en kan nyttiggjøre seg av. mens bit ene betraktet under ett kalles vanligvis et ord.

Dagens temaer. Fra kapittel 4 i Computer Organisation and Architecture. Kort om hurtigminne (RAM) Organisering av CPU: von Neuman-modellen

Dagems temaer INF ! Fra kapittel 4 i Computer Organisation and Architecture. ! Kort om hurtigminne (RAM)

IN1020. Datamaskinarkitektur

IN1020. Logiske porter om forenkling til ALU

! Sentrale begreper er adresserbarhet og adresserom. ! Adresserbarhet: Antall bit som prosessoren kan tak samtidig i én operasjon

INF1400 Kap4rest Kombinatorisk Logikk

Intel Core i7. Omid Mirmotahari 4

Intel Core i7. Omid Mirmotahari 4

Forelesning 5. Diverse komponenter/større system

Datamaskinens oppbygning

Kapittel 4: Microarchitecture level

Maskinvaredelen av INF 103: oversikt og innhold (1)

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

TDT4160 DATAMASKINER GRUNNKURS EKSAMEN

Dagens temaer. Dagens temaer hentes fra kapittel 3 i læreboken. Oppbygging av flip-flop er og latcher. Kort om 2-komplements form

Dagens tema. Dagens temaer hentes fra kapittel 3 i læreboken. Repetisjon, design av digitale kretser. Kort om 2-komplements form

SIE 4005, 9/10 (4. Forelesn.)

Dagens temaer. Architecture INF ! Dagens temaer hentes fra kapittel 3 i Computer Organisation and

befinner seg. Deretter leses instruksjonen fra i registerfilen ved ny stigende klokkepuls.

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

SIE 4005, 2/10 (2. Forelesn.)

TDT4160 DATAMASKINER GRUNNKURS EKSAMEN

Notater: INF2270. Veronika Heimsbakk 10. juni 2014

TDT4160 AUGUST, 2008, 09:00 13:00

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

Overordnet maskinarkitektur. Maskinarkitektur zoomet inn. I CPU: Kontrollenheten (CU) IT1101 Informatikk basisfag, dobbeltime 11/9

TDT DESEMBER, 2008, 09:00 13:00

TDT DESEMBER, 2012, 09:00 13:00. Norwegian University of Science and Technology Engineering The Department of Computer and Information Science

INF3430. Funksjoner og prosedyrer Standardbiblioteker Komplekse sekvensielle systemer

Forelesning 9. Registre, tellere og minne

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

Forelesning Instruksjonstyper Kap 5.5

TDT AUGUST, 2011, 09:00 13:00

Prosessoren. Bakgrunnen Innhold LMC. Assemblerkode Oppsummering instruksjonene [Englander kap 6] Hva inneholder den? Hvordan utføres instruksjonene?

INF3430/4431. Funksjoner og prosedyrer Standardbiblioteker Komplekse sekvensielle systemer

Fortsetelse Microarchitecture level

Oppsummering digital-teknikk, teknikk, INF2270

Fortsetelse Microarchitecture level

EKSAMEN I TDT4160 DATAMASKINER GRUNNKURS

INF2270. Sekvensiell Logikk

TDT DESEMBER, 2013, 09:00 13:00. Norwegian University of Science and Technology Engineering The Department of Computer and Information Science

ITPE/DATS 2400: Datamaskinarkitektur og Nettverk

TDT AUGUST, 2013, 09:00 13:00. Norwegian University of Science and Technology Engineering The Department of Computer and Information Science

TDT4160 OG IT2201 DATAMASKINER GRUNNKURS EKSAMEN

EKSAMEN I TDT4160 DATAMASKINER GRUNNKURS

Innhold. 2 Kompilatorer. 3 Datamaskiner og tallsystemer. 4 Oppsummering. 1 Skjerm (monitor) 2 Hovedkort (motherboard) 3 Prosessor (CPU)

Repetisjon digital-teknikk. teknikk,, INF2270

Datamaskinens virkemåte

Institiutt for informatikk og e-læring, NTNU Kontrollenheten Geir Ove Rosvold 4. januar 2016 Opphavsrett: Forfatter og Stiftelsen TISIP

TDT4160 DATAMASKINER GRUNNKURS EKSAMEN

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

ITPE/DATS 2400: Datamaskinarkitektur og Nettverk

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

TDT DESEMBER, 2014, 09:00 13:00. Norwegian University of Science and Technology Engineering The Department of Computer and Information Science

Løsningsforslag til eksamen i INF2270

TDT4160 DATAMASKINER GRUNNKURS EKSAMEN

UNIVERSITETET I OSLO

Hvorfor lære om maskinvare*?

Internminnet. Håkon Tolsby Håkon Tolsby

INF3430/4430. Funksjoner og prosedyrer Standardbiblioteker Komplekse sekvensielle systemer

INF2270. Input / Output (I/O)

INF2270. Input / Output (I/O)

IN1020. Sekvensiell Logikk

Dagens temaer. Dagens temaer er hentet fra P&P kapittel 3. Motivet for å bruke binær representasjon. Boolsk algebra: Definisjoner og regler

Dagens temaer. Dagens temaer hentes fra kapittel 3 i Computer Organisation and Architecture. Sekvensiell logikk. Flip-flop er

Dagens tema. Dagens tema er hentet fra kapittel 4.3 og 4.4. Mer om pipelining Ytelse Hasarder. Pipelining i Pentium-arkitekturen

Teoretisk minnemodell Flyktig minne - SRAM -DRAM Ikke-flyktig minne -ROM -EPROM - EEPROM Flash

IN1020. Minnehierarki

TDT DESEMBER, 2011, 09:00 13:00

AVSLUTTENDE EKSAMEN I. TDT4160 Datamaskiner Grunnkurs. Torsdag 29. November 2007 Kl

Øving 1: Busser, adressemodi, multiplekser og styreord

AVSLUTTENDE EKSAMEN I. TDT4160 Datamaskiner Grunnkurs Løsningsforslag. Torsdag 29. November 2007 Kl

Institiutt for informatikk og e-læring, NTNU CPUens deler og virkemåte Geir Ove Rosvold 4. januar 2016 Opphavsrett: Forfatter og Stiftelsen TISIP

Løsningsforslag til øving 5 TFE4105 Digitalteknikk og Datamaskiner Høsten 2006

Dagens temaer. temaer hentes fra kapittel 3 i Computer Organisation. av sekvensielle kretser. and Architecture. Tilstandsdiagram.

Dagens temaer. Sekvensiell logikk: Kretser med minne. D-flipflop: Forbedring av RS-latch

tema er hentet fra kapittel 4.3 og 4.4 om pipelining Mikroprogrammert Dagens temaer Hard-wired Mikrokode Hasarder Ytelse

INF1400. Sekvensiell logikk del 1

! Ytelsen til I/O- systemer avhenger av flere faktorer: ! De to viktigste parametrene for ytelse til I/O er:

INF 3430/4430. Viktige momenter i syntese og for valg av teknologi

Internminnet. Håkon Tolsby Håkon Tolsby

Dagens tema. Mer MIPS maskinkode. Maske-operasjoner Skift-operasjoner Lesing og skriving Pseudo-instruksjoner Mer om funksjonskall Registeroversikt

1 TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

MAX MIN RESET. 7 Data Inn Data Ut. Load

DM6814/DM5814 User s Manual

En mengde andre typer som DVD, CD, FPGA, Flash, (E)PROM etc. (Kommer. Hukommelse finnes i mange varianter avhengig av hva de skal brukes til:

Løsningsforslag eksamen TDT4160 høsten 2005

TDT DESEMBER, 2014, 09:00 13:00. Norwegian University of Science and Technology Engineering The Department of Computer and Information Science

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

Transkript:

INF2270 Datamaskin Arkitektur

Hovedpunkter Von Neumann Arkitektur ALU Minne SRAM DRAM RAM Terminologi RAM Signaler Register Register overføringsspråk

Von Neumann Arkitektur John von Neumann publiserte i 1945 en model for datamaskin arkitektur som brukes fortsatt den dag i dag. Hovedbidraget hans og unikheten i denne modellen er å bruke et enkelt minneelement som både skal brukes for program og data. 4

Von Neumann Arkitektur Block Diagram Omid Mirmotahari 5

IR: (instruksjonsregister) PC: (program counter / IP (instruksjon pointer)) MAR: (memory address register) MBR: (memory buffer register) Omid Mirmotahari 6

Data- og instruksjonsbus Omid Mirmotahari 7

Aritmetisk logisk enhet (ALU) Omid Mirmotahari 8

Operasjoner som ALU skal utføre: (eksempelvis) AND OR XOR Addisjon Subtraksjon Følgende byggeblokker trenger vi: Omid Mirmotahari 9

Omid Mirmotahari 10

Operasjon a b 0 1 M U Out Operasjon Out X Omid Mirmotahari 11

Operasjon a b 0 1 2 3 M U X Out Operasjon Out 0 0 AND 0 1 OR 1 0 XOR 1 1 Omid Mirmotahari 12

Operasjon mente inn a Add 0 1 2 3 M U X Out Operasjon Out mente ut Omid Mirmotahari 13

1-bit ALU inst = a2a1a0 Inst(2) = a2 invert b Inst(1) = a1 MSB MUX Inst(0) = a0 LSB MUX inst computation 000 a b 001 a b 010 a + b 011 a + b 100 a b 101 a b 110 a + b 111 a - b Omid Mirmotahari 14

N-bit ALU Omid Mirmotahari 15

ALUer i CPU Moderne CPU kan inneholde flere ALUer ALUer kan designes til å håndtere flere funksjoner per trinn og mer komplekse. Alternativt kan man bruke software aktivt til å designe slik at en ALU kan utføre komplekse operasjoner over flere trinn. TRADE-OFF: hvor skal man plassere kompleksiteten, i hardware eller software Ulemper med å sette kompleksitet i hardware er høyere kostnader i fbm strømforbruk, areal og produksjonskost. ALU designet spiller en stor rolle med hensyn på CPU sin ytelse, da det mest komplekse operasjonen setter maksimal klokkefrekvens. Omid Mirmotahari 16

Static Random Access Memory SRAM Omid Mirmotahari 17

Dynamic Random Access Memory - DRAM Omid Mirmotahari 18

RAM terminologi Address space: Word length: Memory size: Omid Mirmotahari 19

RAM Signaler WE, write enable: RAS/CAS, row/column access strobe: OE, output enable: CS, chip select: Omid Mirmotahari 20

DRAM refresh! Kapasitiv (Capacitive) lagring er ikke selvbærende slik som flip-floper. Grunnet de elektriske egenskapene til en kapasitans gjør at den lekker og derav vil verdien gradvis forsvinne med tid. For å kunne opprettholde riktig verdi er man nødt til å friske (refresh) opp verdien. Omid Mirmotahari 21

Static vs. Dynamic RAM SRAM DRAM Aksessering hastighet + Minne tetthet + Behov for refresh + Kompleksitet mht + interne styresignaler Pris pr bit + Omid Mirmotahari 22

Register Transfer Language (RTL) Symbol X [X] M( [M([X])] Forklaring Omid Mirmotahari 23

RTL Eksempel [IR] [MBR] Omid Mirmotahari 24

Eksekvering av instruksjoner Hver instruksjon består av minst tre oppgaver: 1.. 2.. 3.. Omid Mirmotahari 25

Fetch Henter instruksjonen fra minnet og legger den i insruksjonsregisteret IR En ny instruksjon hentes fra minne for hver start på en instruksjonssykel. En tilstandsmaskin (FSM) i kontrollenheten (CU) genererer de riktige styresignalene. 2 6

Decode OpCode: Instruksjonstypen Destination: Resultatet plasseres her Source 1: 1. operand til instruksjonen Source 2: 2. operand til instruksjonen Ikke alle instruksjoner har alle feltene, og noen har flere felter i tillegg. I tillegg må kontrollsignaler til bla. ALU settes slik instruksjonen krever. Omid Mirmotahari 27

Execute Registre eller instruksjonsminnne Register eller addressebuss OBS! Sourceregisterne kan ikke trigges av samme klokkeflanke som destinasjonsregisteret. Omid Mirmotahari 28

Eksempel på eksekvering av Maskinkode Ved oppstart av en CPU vil program telleren (PC) peke til / være initiert til en spesifikk minneadresse. Her i dette eksemplet er dette 0. Mem adr Innhold 0 1 2 3 4 5 6.. Omid Mirmotahari 29

Fetch Henter minneadressen Øker programtelleren Henter ut innholdet i minne Overskriver innholdet i IR med [MBR] Omid Mirmotahari 30

Decode Instruksjonen i IR er nå move 5 Hente ut op-code og settec U Hente ut operanden Hente ut innholdet i operanden Mellomlagre dette til input for ALU Nå må vi hente ut neste verdi for ALU inngangen Omid Mirmotahari 31

Decode forts. Fetch og decode som før Omid Mirmotahari 32

Decode forts. Omid Mirmotahari 33

Decode forts. Fetch og decode som tidligere vist..... [MBR] [B] [MAR] [IR(op er and)] [M([MAR])] [MBR] Omid Mirmotahari 34

Resultat Nå er resultatet skrevet i minneadresse 6. Mem adr Innhold 0 move 4 1 add 5 2 store 6 3 stop 4 1 5 2 6 3.. Omid Mirmotahari 35

RISC vs CISC Hittil har vi sett på hardwired CU arkitektur, hvor det er en hardwired FSM som gir de styresignalene decodet ut fra IR. En mer fleksibel alternativ er å bruke microcode og en enkel prosessor som genererer styresignalene gjennom microinstruction i microprogram memory (typisk ROM) Omid Mirmotahari 36

Hardwired vs. Microprogrammed CU Omid Mirmotahari 37

Fordeler og ulemper Microarchitecture Hardwired Occurrence CISC RISC Flexibility + - Design Cycle + - Speed - + Compactness - + Power - + Men det skal sies at nå i moderne CPU så er avstanden mellom RISC og CISC blitt mye mindre Omid Mirmotahari 38