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

Relevanta dokument
Digitalteknik och Datorarkitektur

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

Digitalteknik och Datorarkitektur 5hp

Foto: Rona Proudfoot (some rights reserved) Datorarkitektur 1. Datapath & Control. December

Lösningar till tentamen i EIT070 Datorteknik

Datorsystemteknik DVGA03 Föreläsning 8

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

OBS!! Detta är DEL 2 av tentan. För att få ut denna måste du ha lämnat in del 1. Om du inte fått ut del 1 bör du meddela skrivningsvakten. OBS!!

Digitala System: Datorteknik ERIK LARSSON

Datorsystem. Tentamen

Tentamen. Datorteknik Y, TSEA28

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

rd, rs, rt Digitalteknik och Datorarkitektur 5hp ALU register) 32 bit register b 5 bit 32 Registers 32 bit MIPS is a Register-toregister

Datorsystem. Tentamen

SVAR TILL TENTAMEN I DATORSYSTEM, VT2013

Datorarkitekturer med operativsystem ERIK LARSSON

Lösningar till tentamen i EIT070 Datorteknik

Grundläggande datavetenskap, 4p

Pipelining i Intel 80486

SVAR TILL TENTAMEN I DATORSYSTEM, HT2013

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

Tentamen i Digitala system - EITA15 15hp varav denna tentamen 4,5hp

En något mer detaljerad bild av en processor. De tre delarna i processorn är: Nere 3ll vänster finns e' antal register som används för a' lagra data.

En något mer detaljerad bild av en processor. De tre delarna i processorn är: Nere 3ll vänster finns e' antal register som används för a' lagra data.

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

Tentamen i Digitala system - EDI610 15hp varav denna tentamen 4,5hp

NUV 647E. Digitalteknik och Datorarkitektur 5hp. 3x12 = 36 2x12 = 24 1x12 = 12 0x12 = 18

Närliggande allokering Datorteknik

Digitalteknik och Datorarkitektur 5hp

Tenta i Digitalteknik

Tentamen. Datorteknik Y, TSEA28

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)

Tentamen. Datorteknik Y, TSEA28

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

Tentamen den 12 januari 2017 Datorarkitektur med operativsystem, EDT621

Lösningar till tentamen i EIT070 Datorteknik

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

Exempelsamling Assemblerprogrammering

Tentamen i EIT070 Datorteknik

Datorarkitekturer med operativsystem ERIK LARSSON

Omtentamen i CDT204 - Datorarkitektur

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

Jacquards vävstol, 1801

Datorteknik. Föreläsning 7 Historia och framtid. Institutionen för elektro- och informationsteknologi, LTH

Tentamen. Datorteknik Y, TSEA28

Datorarkitekturer med operativsystem ERIK LARSSON

DEC Alpha instruktions Arkitektur

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

Tentamen. Datorteknik Y, TSEA28

Tentamen. Datorteknik Y, TSEA28

Tentamen PC-teknik 5 p

Tentamen. Datorteknik Y, TSEA28

Datorsystem. Exempeltentamen

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

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

Tentamen i IE1204/5 Digital Design måndagen den 15/

Tentamen (Exempel) Datorteknik Y, TSEA28

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

Tentamen PC-teknik 5 p

Pipelining i Intel Pentium II

Tentamen i Digitala system - EITA15 15hp varav denna tentamen 4,5hp

Stack och subrutiner Programmeringskonventionen

Tentamen i Digitalteknik och Datorarkitektur DV1 5p

DatorsystemteknikDAVA14 Föreläsning 9

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

Datorteknik ERIK LARSSON

Lista på registeruppsättningen i PIC16F877A Datablad TTL-kretsar 74-serien

TENTAMEN Datorteknik (DO2005) D1/E1/Mek1/Ö1

Tentamen. Datorteknik Y, TSEA28

Datorteknik ERIK LARSSON

Högskolan i Halmstad Digital- och Mikrodatorteknik 7.5p. Lista på registeruppsättningen i PIC16F877A Datablad TTL-kretsar 74-serien

TENTAMEN. Datorteknik. D1/E1/Mek1/Ö Hjälpmedel: Häfte "ARM-instruktioner", A4-format, 17 sidor. Maxpoäng:

Tentamen (Exempel) Datorteknik Y, TSEA28

Tentamen den 18 mars svar Datorteknik, EIT070

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

Digitala System: Datorteknik ERIK LARSSON

Tentamen (Exempel) Datorteknik Y, TSEA28

Styrteknik: Binära tal, talsystem och koder D3:1

Datorsystemteknik DAV A14 Föreläsning 1

CE_O3. Nios II. Inför lab nios2time

Tentamen den 14 januari 2016 Datorarkitektur med operativsystem, EDT621

Tentamen den 14 januari 2015 Datorarkitekturer med operativsystem, EDT621, 7,5 poäng

Institutionen för elektro- och informationsteknologi, LTH

Datorteknik. Föreläsning 2. Programmering i C och assembler MIPS instruktionsarkitektur. Institutionen för elektro- och informationsteknologi, LTH

Besvara de elektroniska frågorna (se kurshemsidan). Läs kapitel i kursbok.

Mål. Datorteknik. Innehåll. Innehåll (forts) Hur ser ett program ut? Hur skapas maskinkoden?

Institutionen för elektro- och informationsteknologi, LTH

Datorteknik. Föreläsning 3. Assembler, stack och subrutiner, programmeringskonventionen. Institutionen för elektro- och informationsteknologi, LTH

Arm Cortex-A8 Pipeline

Lösningar till valda övningsuppgifter i. Computer Organization & Design The Hardware / Software Interface (2nd ed.)

Datorsystemteknik D. Lösningar till tentamen i kursen EDA330 14/1 2000

Tentamen. Datorteknik Y, TSEA28

Tentamen (Exempel) Datorteknik Y, TSEA28

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

4. Pipelining. 4. Pipelining

Tentamen i EIT070 Datorteknik

Mål. Datorteknik. Innehåll. Vad händer med en add-instruktion? Vad händer med en add-instruktion. Instruktioner som bitmönster i minnet

IE1204 Digital Design

Hantering av hazards i pipelines

Transkript:

Datorarkitektur I Tentamen Lördag 10 April 2010 Ekonomikum, B:154, klockan 09:00 14:00 Examinator: Karl Marklund 0704 73 32 17 karl.marklund@it.uu.se Tillåtna hjälpmedel: Penna Radergummi Linjal Följande gäller: Du får endast skriva dina svar på avsedd plats i detta häfte (linjerat område). Observera att lösningar som inte uppfyller kravet ovan ej kommer att rättas. Du får ej skriva dina lösningar med röd färg. Lösningar som är skrivna med röd färg kommer inte att rättas. Skrivningstid: 5 timmar Vid inlämning Efternamn: Förnamn: Personnummer (10 siffror): Kurs: IT (1DT038) Distans (1DT016) Fristående (1DT016) Fråga Vid rättning Din poäng Maxpoäng 1 Grundläggande begrepp 11 2 Aritmetik 5 3 MIPS-instruktioner 4 4 Minne 5 5 Cache 6 6 Datapath 4 7 MIPS-assembler 5 8 Exceptions och Interrupts 4 9 Pipelining 6 Summa 50 Gräns för godkänt 25 Betyg Termin då jag först registrerades på kursen: Klockslag för inlämning: The question of whether computers can think is just like the question of whether submarines can swim. Edsger W. Dijkstra

1 Grundläggande begrepp En dator kan delas upp i olika funktionella enheter. Rita en figur där den inbördes relationen mellan de funktionella enheterna Register, ALU, CPU, Minne, Kontrollenhet och Cache framgår. Rita inom streckat område (5p) Förklara kortfattat funktionen hos följande enheter: Register: ALU: CPU: Sida 2 av 13

Minne (arbetsminne): Kontrollenhet: Cache: Sida 3 av 13

2 Aritmetik Låt A = 0010 10112 vara ett binärt tal. Ange talet A på decimal form: A10 = Ange talet A på hexadecimal form: A16 = Ange talet -A med hjälp av 8 bitars två-komplement: -A2 = Som ett steg vid representation av flyttal med IEEE 754 normaliseras talet. Förklara vad normalisering är och varför normalisering används: (2p) Sida 4 av 13

3 MIPS-instruktioner Vad menas med att MIPS är en så kallad RISC architecture? (2p) Ett exempel på en så kallad immediate instruktion i MIPS är: addi rd, rs, imm Ange två orakser till varför det i MIPS finns en gräns på hur stor immediatekonstanten imm kan vara? Orsak 1: Orsak 1: Sida 5 av 13

4 Minne Både data och instruktioner lagras som binära tal i minnet. I MIPS är minnet uppdelat i ett stort antal celler. Varje cell (minsta adresserbara enhet) rymmer N stycken bitar, hur många bitar rymmer varje cell. N = En samling av N bitar kallas för: I MIPS kallas en samling av 4xN bitar för: Redogör i text och figur för skillnaderna mellan little endian och big endian: (2p) Rita inom streckat område Sida 6 av 13

5 Cache Vid mappning av en adress till en plats i ett direktmappat cache delas adressen upp i index och tag. Vad menas med index: Vad menas med tag och varför behövs detta: Antag ett direktmappat cache med 8 olika platser, varje plats rymmer lika många bitar som den minsta adresserbara enheten (se fråga 4). Visa hur adressen A = 0x13C delas upp i index och tag: Index = Tag = Antag att vi ändrar så att varje plats i exemplet ovan kan rymma 4 gånger så många bitar som tidigare. Visar hur detta påverkar uppdelningen av index och tag. Index = Tag = Sida 7 av 13

6 Datapath I figuren nedan finns en schematisk bild av en datapath för MIPS. För att styra funktionen används bland annat fyra stycken multiplexrar (A, B, C och D). Förklara varför multiplexer A behövs? Förklara till vad ALUn används vid en load-instruktion? Sida 8 av 13

I bilden över en single cycle datapath för MIPS ovan återfinns förutom ALUn två stycken adderare. Varför kan inte ALUn användas för att utföra dessa additioner? Vilket problem med en single-cycle-implementation försöker man lösa genom en multi-cylcleimplemenation av en datapath för MIPS. Sida 9 av 13

7 MIPS-assembler Nedan återfinns kod för en subrutin i MIPS-assembler. På några ställen har dock text fallit bort. Färdigställ subrutinen genom att skriva på linjerna på raderna markerade med A, B, C och D. ############################################################################ # DESCRIPTION: Checks wether or not two integer arrays A and B are equal. # # INPUT: $a0 - Address to first element of array A. # # $a1 - Address to first element of array B. # # $a2 - Size of arrays, i.e. number of elements to compare. # # OUTPUT: $v0-1 if the arrays are equal, otherwise 0. # ############################################################################ array_equal: li $v0, 1 # Initialize result R = 1 = true/equal li $t0, 0 # Initialize element counter i = 0 for_all_elements: beq $t0, $a2 end_for_all_elements $t2, $t0, 2 # i*4 ### A ### add $t1, $a0, $t2 # A + i*4 $t3, # Element a = A[i] ### B ### add $t1, $a1, $t2 # B + i*4 $t4, # Element b = B[i] ### C ### $t3, $t4, # A[i] =?= B[i] ### D ### (2p) addi $t0, $t0, 1 # i++ j for_all_elements # Next element not_equal: li $v0, 0 # Result R = 0 (arrays not equal) end_for_all_elements: jr $ra # Return to caller Sida 10 av 13

8 Exceptions och Interrupts Beskriv kortfattat vad som sker vid ett exception/interrupt samt ett subrutinanrop genom att i förkekomande fall beskriva hur registren PC, RA, EPC och CAUSE används. Register Exception/Interrupt (2p) Subroutine Call (2p) PC RA EPC CAUSE Sida 11 av 13

9 Pipelining I samband med pipelining kan olika problem (hazards) uppstå. Ett sådant problem är en så kallad datahazard. Förklara vad detta innebär. Det finns flera andra typer av pipeline hazards. Namge ytterligare en hazard samt ge ett exempel på när detta inträffar. -hazard Exempel Sida 12 av 13

En datapath för MIPS med pipelining visas i figuren nedan. Pipelinen består av 5 steg: Instruction Fetch, Instruction Decode, Execution, Memory, Write-Back. 5 Olika instruktioner befinner sig i pipelinen. IF/ID, ID/EX, EX/MEM och MEM/WB betecknar hårdvara som inte återfinns i en single cycle datapath. Vad är detta för något och varför behövs denna hårdvara? (3p) Typ av hårdvara: Denna hårdvara behövs för att: (2p) Sida 13 av 13