Datorarkitektur. Fö 9: Datorarkitektur. Datororganisation. Typiska Arkitekturattribut. Introduktion till datorarkitektur.



Relevanta dokument
Datorsystem 2 CPU. Förra gången: Datorns historia Denna gång: Byggstenar i en dators arkitektur. Visning av Akka (för de som är intresserade)

Datorarkitekturer med operativsystem ERIK LARSSON

Grundläggande datavetenskap, 4p

0.1. INTRODUKTION Instruktionens opcode decodas till en språknivå som är förstålig för ALUn.

SVAR TILL TENTAMEN I DATORSYSTEM, VT2013

Svar till tentamen den 16 december 2013 Datorarkitekturer med operativsystem, EDT621, 7,5 poäng

In- och Utenheter. Fö 3: In/Ut matning och kopplingsstruktur. Några exempel. Egenskaper. In- och Utenheter. Styrning.

Närliggande allokering Datorteknik

Pipelining i Intel 80486

Datormodell. Datorns uppgifter -Utföra program (instruktioner) Göra beräkningar på data Flytta data Interagera med omvärlden

Moment 2 Digital elektronik. Föreläsning Inbyggda system, introduktion

Pipelining i RISC-processorn. Joakim Lindström Institutionen för informationsbehandling Åbo Akademi E-post: jolindst@abo.fi

Datorteknik. Tomas Nordström. Föreläsning 2. För utveckling av verksamhet, produkter och livskvalitet.

Datorsystemteknik DAV A14 Föreläsning 1

Datorarkitekturer med operativsystem ERIK LARSSON

Processor pipelining genom historien (Intel i9-intel i7)

Datorteknik ERIK LARSSON

Fö 7: Operativsystem. Vad är ett operativsystem? Målsättning med operativsystem. Styr operativsystemet datorn?

HF0010. Introduktionskurs i datateknik 1,5 hp

Program Datorteknik. Kontrollenhet. Exekvering av en instruktion. Abstraktionsnivå: Högnivåspråk. Assemblyspråk. Maskinspråk.

Minnet från processorns sida Datorteknik

System S. Datorarkitektur - en inledning. Organisation av datorsystem: olika abstraktionsnivåer. den mest abstrakta synen på systemet

Vad bör göras? Steg 1. RISC => pipelining. Parallellism. Pipelining. Nya LDA 13. RISC(reduced instruction set computer) Öka klockfrekvensen

Datorarkitekturer med operativsystem ERIK LARSSON

Det finns en hemsida. Adressen är

Digitala System: Datorteknik ERIK LARSSON

Datorsystem. Exempeltentamen

Mikroprogrammering I

Lunds Tekniska Högskola Datorarkitektur med operativsystem EITF60. Superscalar vs VLIW. Cornelia Kloth IDA2. Inlämningsdatum:

Arm Cortex-A8 Pipeline

Datorarkitekturer med operativsystem ERIK LARSSON

F2: Motorola Arkitektur. Assembler vs. Maskinkod Exekvering av instruktioner i Instruktionsformat MOVE instruktionen

En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär:

Datorsystemteknik DVGA03 Föreläsning 8

Övning1 Datorteknik, HH vt12 - Talsystem, logik, minne, instruktioner, assembler

DEC Alpha instruktions Arkitektur

MIKRODATORTEKNIK 2012 INNEHÅLLSFÖRTECKNING

4. Pipelining. 4. Pipelining

32 Bitar Blir 64 Sammanfattning

Datorarkitekturer med operativsystem ERIK LARSSON

Datorhistorik. Föreläsning 3 Datorns hårdvara EDSAC. Eniac. I think there is a world market for maybe five computers. Thomas Watson, IBM, 1943

Datorteknik ERIK LARSSON

Pipelining i Intel Pentium II

Föreläsningsanteckningar 2. Mikroprogrammering I

Datorteknik ERIK LARSSON

Digital- och datorteknik

Digitala System: Datorteknik ERIK LARSSON

LUNDS UNIVERSITET. Parallell exekvering av Float32 och INT32 operationer

Programmering A. Johan Eliasson

Datorteknik ERIK LARSSON

Fö 8: Operativsystem II. Minneshantering. Minneshantering (1) Minneshantering (2) Minneshantering och Virtuelltminne.

Tentamen den 12 januari 2017 Datorarkitektur med operativsystem, EDT621

TSEA28 Datorteknik Y (och U)

TSEA28 Datorteknik Y (och U)

Datorarkitektur. Informationsteknologi sommarkurs 5p, Agenda. Slideset 3

Program kan beskrivas på olika abstrak3onsnivåer. Högnivåprogram: läsbart (för människor), hög abstrak3onsnivå, enkelt a> porta (fly>a 3ll en annan ar

F5: Högnivåprogrammering

F5: Högnivåprogrammering

Hantering av hazards i pipelines

Föreläsningsanteckningar 4. Pipelining

Datorarkitekturer med operativsystem ERIK LARSSON

Tentamen den 18 mars svar Datorteknik, EIT070

DatorsystemteknikDAVA14 Föreläsning 9

Elektroteknik MF1016 föreläsning 9 MF1017 föreläsning 7 Mikrodatorteknik

Institutionen för datavetenskap 2014/15

Hannes Larsson - IDA 2, LTH Campus Helsingborg. NEC V R 4300i. Interlock-handling EDT621

Distribuerade Informationssystem VT-04

Fetch-Execute. Datorteknik. Pipelining. Pipeline diagram (vid en viss tidpunkt)

IBM POWER4, den första flerkärniga processorn och dess pipelines.

Datorsystem. Tentamen

Parallellism i CDC 7600, pipelinens ursprung

Datorarkitektur I. Tentamen Lördag 10 April Ekonomikum, B:154, klockan 09:00 14:00. Följande gäller: Skrivningstid: Fråga

Random Access Memory. Amare Reda Jenny Holmberg Henrik Kreipke Gaylord Kaya

Tenta i Digitalteknik

LABORATION DATORTEKNIK D. Pipelining. Namn och personnummer. Version: (OS,OVA,AN)

SIMD i Intel s P5- baserade Pentium MMX

Tentamen den 14 januari 2016 Datorarkitektur med operativsystem, EDT621

Grunderna i stegkodsprogrammering

Datorsystemteknik DAV A14 Föreläsning 1

Datorteknik ERIK LARSSON

c a OP b Digitalteknik och Datorarkitektur 5hp ALU Design Principle 1 - Simplicity favors regularity add $15, $8, $11

Datorsystem. Tentamen

Datorsystem. Tentamen

Minnet. Minne. Minns Man Minnet? Aktivera Kursens mål: LV3 Fo7. RAM-minnen: ROM PROM FLASH RWM. Primärminnen Sekundärminne Blockminne. Ext 15.

Minnets komponenter. Digitala System: Datorteknik. Programexekvering. Programexekvering. Enhet för utdata. Enhet för indata CPU.

Program som ska exekveras ligger i primärminnet. Processorn hämtar instruk7on för instruk7on. Varje instruk7on, som är e= antal 1:or och 0:or, tolkas

Föreläsningsanteckningar 3. Mikroprogrammering II

TSEA28 Datorteknik Y (och U)

Digitalteknik och Datorarkitektur 5hp

SVAR TILL TENTAMEN I DATORSYSTEM, HT2013

Intel Pentium. Intel khz. 32 million 2600MHz. Copyright 2005 Benny Thörnberg, Mattias O Nils

Målsättning med kursen

TSEA28 Datorteknik Y (och U)

EDA451 - Digital och Datorteknik 2010/2011. EDA Digital och Datorteknik 2010/2011

Flera processer. Minneshantering. Trashing kan uppstå ändå. Ersätta globalt

Datorteknik. Föreläsning 6. Processorns uppbyggnad, pipelining. Institutionen för elektro- och informationsteknologi, LTH. Mål

Per Holm Lågnivåprogrammering 2014/15 24 / 177. int och double = = 2, 147, 483, 647

Övning1 Datorteknik, HH vt12 - Talsystem, logik, minne, instruktioner, assembler

IT för personligt arbete F5

TSEA28 Datorteknik Y (och U)

Transkript:

Fö 9: Datorarkitektur Introduktion till datorarkitektur. RISC eller CISC? Datorarkitektur Datorarkitektur: De attribut hos ett datorsystem som är synliga för programmerare, eller har en direkt påverkan på den logiska exekveringen av ett program. Klassifikation av datorsystem. Applikationer. Typeset by FoilTEX 1 Typeset by FoilTEX 2 Datororganisation Komponenter och kommunikationsvägar som realiserar en arkitekturspecifikation. Typiska Arkitekturattribut Instruktionsuppsättningen. Datarepresentation. I/O mekanismer. Antal och typer av register. Instruktionsexekvering. Exempelvis Pipelining. Exempel: Multiplikation. - Arkitektur: Maskininstruktion för multiplikation eller inte? - Organisation: speciell komponent för multiplikation eller inte? Minnesorganisation. Kommunikationsstruktur. Typeset by FoilTEX 3 Typeset by FoilTEX 4

Arkitekturegenskaper Exempel: Registerorganisation Kommersiella datorer har ofta en akritekturgrund som kan utökas. - Arkitekturen bevaras över flera generationer. - Organisation förändras beroende på implementationsteknik. Instruktionsuppsättningen en avgörande faktor. Typeset by FoilTEX 5 Typeset by FoilTEX 6 Moores lag Complex Instruction Set Computer Egenskaper hos en CISC arkitektur: Stort antal instruktioner (>200). Komplexa instruktioner och datatyper. - Exempel: Hårdvaru stöd för flyttalsformat (float och double). Hårdvarustöd för högnivå operationer - SWITCH/CASE. Mikroprogrammering används för att implementera instruktioner. Minnet ofta en flaskhals. Komplicerade typer av adressering. Typeset by FoilTEX 7 Typeset by FoilTEX 8

Argument för CISC Förenklar för kompilatorer. Mindre program kan ge bättre prestanda. - Mindre minne används. - Färre hämtcykler. - Färre instruktioner exekveras totalt. Problem med CISC Komplex och tidskrävande dekodning av instruktioner. Stöd för alla högnivå språk/konstruktioner stöds kan inte stödjas. Komplex design. Typeset by FoilTEX 9 Typeset by FoilTEX 10 Analys av programexekvering (1) Instruktionsfrekvens: - flytta data: 33% - villkorstest/hopp: 20% - Aritmetik/logik: 16% - Övriga: mellan 0.1% och 10%. Analys av programexekvering (2) Operandtyper: - 75-80% skalärer (heltal, flyttal, tecken, etc). - 20-25% arrayer/structar; 90% är globala variabler. Addresseringssätt: - Majoriteten använder enkla sätt (80%). Typeset by FoilTEX 11 Typeset by FoilTEX 12

Slutsatser Enkla instruktioner dominerar stort. Enkla adresseringssätt dominerar. Åtkomst av operander vanligt. Operander är enkla och kan vanligtvis lagras direkt i register. Optimering av CALL/RETURN viktigt. Reduced Instruction Set Computer Egenskaper hos en RISC Arkitektur: Litet antal instruktionstyper. Enkla instruktionsformat. En instruktion per maskincykel. Stort antal generella register. Bara LOAD och STORE mot minne. Enkla instruktioner är att föredra! Typeset by FoilTEX 13 Typeset by FoilTEX 14 Fördelar med RISC Enklare hårdvara för dekodning och exekvering. Snabbare CPU. Mindre area. Stort antal register på CPU. Färre minnesåtkomster med hjälp av temporära register. Nackdelar med RISC En operation kan kräva flera maskin instruktioner. - Fler minnesåtkomster totalt. - Försämrad exekveringshastighet. Större program. Mera minne måste användas. Svårare lågnivå programmering. Svårare att skriva effektiva kompilatorer. Effektiv pipelining av instruktioner. Mindre designkomplexitet; lägre designkostnad. Typeset by FoilTEX 15 Typeset by FoilTEX 16

CISC vs RISC Exempel: Intel i486, CISC 32-bitars processor: - Register: 8 Generella, 6 adress register (16 bitar), 2 status/kontroll register, 1 instruktionspekare (PC). - Flyttalsenhet (Matematikprocessor). - Mikroprogrammerad styrenhet. Instruktionsuppsättning: - 235 Maskininstruktioner. Exempel: FYL2XP1 x y utför y log 2 (x + 1) på 313 klockcykler. - Instruktionsstorlek: 1-12 bytes (genomsnitt 3.2). - Adresseringssätt: 11. Typeset by FoilTEX 17 Typeset by FoilTEX 18 Exempel: Intel i486, CISC (2) Minnesorganisation: - Adresslängd: 32 bitar ( 4 GB rymd). - Segmenterat minne (minnesskydd). - Stöd för demand paging. Virtuellt minne. - 8 KB internt cacheminne. Instruktionsexekvering: - Reg Reg, Reg Minne, Minne-Minne. - Instruktionspipeline: Fetch, Decode1, Decode2, Execute, Write-back. Exempel: SPARC, RISC Scalable Processor Architecture 32-bitars processor. - Heltals enhet. - Flyttalsenhet. 69 maskininstruktioner. 32 bitars virtuell adressrymd ( 4 GB). 40 520 generella 32 bitars register (2 32 överlappande registerfönster). Typeset by FoilTEX 19 Typeset by FoilTEX 20

Proceduranrop Högnivå program: Majoriteten av tiden för CALL och RETURN. Komplexa operationer som översätts till många maskininstruktioner. In/Ut parametrar. Lokala variabler. Registerfönster Bra med många generella register Problem: Om de måste sparas i primärminne vid proceduranrop. Lösning: Register delas in i överlappande fönster. - Varje proceduranrop tilldelas ett fönster. - Överlappning möjliggör parameteröverförning. Majoriteten av alla proceduranrop har endast några enstaka parametrar. Typeset by FoilTEX 21 Typeset by FoilTEX 22 Mikrodatorarkitektur (1) Processorkomponenter på ett chip. Ett moderkort: - 32 bitars processor. - Primärminne + Styrhårdvara. - Egen processor för flyttal. - En buss med kontakter för expansionskort. Mikrodatorarkitektur (2) Sekundärminneskort och I/O kort pluggas in på bussen. Extra primärminne på kort. Typeset by FoilTEX 23 Typeset by FoilTEX 24

Stordator Många bussar. Snabb processor. Specialprocessorer. Databasstöd. Driftssäkerhet, Minnesskydd, Åtkomstsäkerhet. Typiska applikationer (1) Mikrodatorer: - Hemanvändning. - Dokumenthantering, Skrivbordsapplikationer. - Spel. - Professionella Arbetsstationer. Minidatorer: - Nätverksserver. - Större arbetsstationer. - Industriell processkontroll. Typeset by FoilTEX 25 Typeset by FoilTEX 26 Typiska applikationer (1) Stordatorer: - Databashantering. - Transaktioner. - Administrativa system. Superdatorer: - Simulering. - Bild/Video behandling. - Väderprognoser. Sammanfattning Arkitekturen beskriver den utåt synliga delen av en dator. Antal register, Maskininstuktioner, etc. Arkitekturen är gemensam för en processor familj. - Program är portabla. Sekvensiell exekvering av instruktioner begränsar hastigheten. - Instruktions pipelining. - Flera processorer. Komplex instruktionsuppsättning (CISC). - Komplicerad styrenhet, mikroprogrammering. RISC Arkitektur. Typeset by FoilTEX 27 Typeset by FoilTEX 28