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

Storlek: px
Starta visningen från sidan:

Download "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"

Transkript

1 1

2 2

3 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 och instruk7onen exekveras. 3

4 4

5 Program kan beskrivas på olika abstrak7onsnivåer. Högnivåprogram: läsbart (för människor), hög abstrak7onsnivå, enkelt a= porta (fly=a 7ll en annan arkitektur), hårdvara osynlig Assembly- och maskinprogram: svåra a= porta 7ll annan arkitektur, hårdvara synlig Olika processorer har olika instruk7onsuppsä=ningar. Men med många gemensamma egenskaper. Tidiga datorer hade väldigt enkla instruk7onsuppsä=ningar. De=a förenklade implementa7onen. När man bestämmer instruk7onsuppsä=ningen tas hänsyn 7ll hur komplext det blir och hur hårdvaran blir. I kursboken används instruk7onsuppsä=ning för MIPS Exempel på arkitekturer: Intel x86, IBM system/370, SUN Sparc Exempel på organisa7on: x86: Intel och AMD kan implementera en arkitektur på olika sä= (men, exekverbara program kan fly=as) 5

6 En processor innehåller normalt e= antal register. I registren kan olika saker lagras, t ex data och instruk7oner. Fördelen med register är a= de är snabbare än primärminne (RAM). För a= öka prestandan (7d för exekvering av e= program) kan en kompilator op7mera maskinkoden så a= mycket register används. Om en beräkning ska göras så kan kompilatorn välja a= mellanlagra värden i register istället för a= mellanlagra värden i minnet. Register kan vara av olika typ. En del register är synliga för användare, t ex: Helt generella, Specifika för data och instruk7oner Specifika för heltal och fly=al Speciella för t ex mul7plika7on/division för a= kunna hantera resultat eller för adressberäkningar: basregister och stackpekare Register kan också vara av typen: Kontroll och statusregister. Dessa register är Inte direkt kontrollerbara av programmeraren, t ex: Programräknare (program counter (PC)): adress 7ll den instruk7on som ska hämtas. Instruk7ons register (IR): senaste instruk7onen som hämtats Memory address register (MAR): adress som ska läsas/skrivas Memory buffer register (MBR): data som ska skrivas eller data som lästs från minnet Program status word (PSW): Olika flaggor (är avbro= på eller av, supervisor mode) Olika processorer har olika konfigura7on av register. Z8000: 16 generella register Intel 80X86, Pen7um: 4 data register, 4 index&adress register, 4 bas (segment) register PowerPC: 2 grupper av generella register. Varje grupp innehåller 32 register och en grupp är för heltal och en är fly=al MIPS: 32 stycken 32- bitars register där R0=0 (viss register används 7ll olika saker, t ex återhoppsadress lagras i R31. 2 extra register för mul7plika7on/division 9

7 10

8 15

9 16

10 17

11 E= minne används för a= lagra 1:or och 0:or. I minnet på bilden kan 8*8 = 64 bitar lagras. På varje plats, adress 0-7, kan 8- bitar med informa7on lagras. På varje plats kan alltså 1 byte lagras. Till exempel, på adress 3 finns byte nummer 3 och dessa data är Det som lagras i minnet är 1:or och 0:or. Om dessa 1:or och 0:or är en instruk7on eller data beror på vad datorn vill a= det ska vara. Om datorn vill ha en instruk7on från plats 3, så kommer tolkas som en instruk7on. Om datorn vill ha data från plats 3, så kommer tolkas som data. För a= adressera e= minne med plats för 8 bytes, behövs 3 bitar (2^3=8). 18

12 19

13 20

14 21

15 22

16 E= minne används för a= lagra 1:or och 0:or. I minnet på bilden kan 8*8 = 64 bitar lagras. På varje plats, adress 0-7, kan 8- bitar med informa7on lagras. På varje plats kan alltså 1 byte lagras. Till exempel, på adress 3 finns byte nummer 3 och dessa data är Det som lagras i minnet är 1:or och 0:or. Om dessa 1:or och 0:or är en instruk7on eller data beror på vad datorn vill a= det ska vara. Om datorn vill ha en instruk7on från plats 3, så kommer tolkas som en instruk7on. Om datorn vill ha data från plats 3, så kommer tolkas som data. För a= adressera e= minne med plats för 8 bytes, behövs 3 bitar (2^3=8). 23

17 E= minne används för a= lagra 1:or och 0:or. I minnet på bilden kan 8*8 = 64 bitar lagras. På varje plats, adress 0-7, kan 8- bitar med informa7on lagras. På varje plats kan alltså 1 byte lagras. Till exempel, på adress 3 finns byte nummer 3 och dessa data är Det som lagras i minnet är 1:or och 0:or. Om dessa 1:or och 0:or är en instruk7on eller data beror på vad datorn vill a= det ska vara. Om datorn vill ha en instruk7on från plats 3, så kommer tolkas som en instruk7on. Om datorn vill ha data från plats 3, så kommer tolkas som data. För a= adressera e= minne med plats för 8 bytes, behövs 3 bitar (2^3=8). 24

18 Byteadresserat minne: Varje adress (0-7) pekar ut en byte som innehåller data. Till exempel, på adress 3 finns byte nummer 3 och dessa data är bitar behövs för a= peka ut byte i minne med 8 bytes (2 3 =8) Wordadresserat minne: Varje adress (0-1) pekar ut e= ord (word) some består av 4 bytes. Till exempel, på adress 1 finns byte 4, 5, 6, och bit behövs för a= peka ut ord (words) i minne med 8 bytes (2 3 =8) 25

19 26

20 27

21 En processor innehåller normalt e= antal register. I registren kan olika saker lagras, t ex data och instruk7oner. Fördelen med register är a= de är snabbare än primärminne (RAM). För a= öka prestandan (7d för exekvering av e= program) kan en kompilator op7mera maskinkoden så a= mycket register används. Om en beräkning ska göras så kan kompilatorn välja a= mellanlagra värden i register istället för a= mellanlagra värden i minnet. Register kan vara av olika typ. En del register är synliga för användare, t ex: Helt generella, Specifika för data och instruk7oner Specifika för heltal och fly=al Speciella för t ex mul7plika7on/division för a= kunna hantera resultat eller för adressberäkningar: basregister och stackpekare Register kan också vara av typen: Kontroll och statusregister. Dessa register är Inte direkt kontrollerbara av programmeraren, t ex: Programräknare (program counter (PC)): adress 7ll den instruk7on som ska hämtas. Instruk7ons register (IR): senaste instruk7onen som hämtats Memory address register (MAR): adress som ska läsas/skrivas Memory buffer register (MBR): data som ska skrivas eller data som lästs från minnet Program status word (PSW): Olika flaggor (är avbro= på eller av, supervisor mode) Olika processorer har olika konfigura7on av register. Z8000: 16 generella register Intel 80X86, Pen7um: 4 data register, 4 index&adress register, 4 bas (segment) register PowerPC: 2 grupper av generella register. Varje grupp innehåller 32 register och en grupp är för heltal och en är fly=al MIPS: 32 stycken 32- bitars register där R0=0 (viss register används 7ll olika saker, t ex återhoppsadress lagras i R31. 2 extra register för mul7plika7on/division 28

22 Det finns olika typer av processorer. 29

23 Aritme7ska och logiska funk7oner ukörs av ALU. ALU:n får via kontrollenheten (instruk7onen) reda på vilken opera7on (OP) som ska uköras. Exempel på opera7oner som ukörs av ALU:n är Add, sub, mul, div, and, or, xor En ALU tar som indata: IN1, IN2 och eventuella status signaler (t ex carry in) Och en ALU genererar: UT och eventuellt status signaler (t ex carry out) Bandbredd/has7ghet i ALU:n bestäms av hur stora tal som kan hanteras på in och utgångar. Om 8- bitar används kan t ex heltal mellan adderas. Fler bitar kräver större bandbredd mellan processor och register. Beroende på vilken typ av processor, så ser ALU:n olika ut. Exempel på olika typer av processorer är: Central processing unit (CPU) fokuserar på a= lösa alla uppginer Digital signaling processor (DSP) fokuserar på a= lösa signalbehandlings problem Graphics Processing Unit (GPU) fokuserar på grafik Fly=als Processor Unit (FPU) fokuserar på fly=al 30

24 Kontrollenheten koordinerar processorn genom a= varje klockcykel ge rä= kontrollsignaler. Kontrollsignalerna ak7verar mikroopera7oner. En kontrollenhet kan vara hårdkodad (hardwired) eller mikroprogrammerad En hardwired består av kombinatorisk logik En mikroprogrammerad implementeras som en CPU i en CPU där varje instruk7on kan ses som e= program Hardwired är snabbare än mikroprogrammerad men svårare a= implementera. Kontrollenheter blir mer och mer mikroprogrammerade. 32

25 33

26 Processorn exekverar e= program. E= program är en sekvens av instruk7oner. Exekveringen av en instruk7on består av en instruk7onscykel, som består av flera steg: Fetch - Execute När processorn exekverar en instruk7on görs det som en sekvens av kontrollsteg (control step). I varje kontrollsteg görs en eller flera mikroopera7oner. Vid exekvering av mikroopera7oner, görs ex : Fly=a innehåll från e= register 7ll e= annat Fly=a innehåll 7ll/från e= register 7ll interface (system bus) så a= data kan fly=as 7ll och från minnen och I/O- enheter. Genomföra aritme7ska opera7oner med hjälp av ALU:n. 34

27 E= exempel på de steg som måste uköras för a= exekvera en instruk7on. Instruk7onen finns i minnet. Programräknaren (PC) håller koll på exekveringen och talar om på vilken plats nästa instruk7on ska hämtas. Processorn hämtar därför det som finns på den adress som PC innehåller. Processorn läser in den data som finns på adressplatsen och placerar bitarna i instruk7onsregisteret (IR). IR är e= register som innehåller den instruk7on som just nu exekveras. Bitarna i IR kollas av för a= ta reda på vad det är för instruk7on (avkodning). I det här fallet är den en fly= av data från en viss plats i minnet 7ll e= register. Processorn läser därför i minnet igen. De bitar som läses in är data och lagras i e= register. I de=a fall register 3. 35

28 36

29 En något mer detaljerad bild av en processor. De tre delarna i processorn är: Nere 7ll vänster finns e= antal register som används för a= lagra data. Överst 7ll vänster si=er ALU:n. ALU:n har två ingångar och en utgång. ALU:n har också e= anta kontrollingångar som används för a= bestämma vad processorn ska göra (addi7on, subtrak7on, etc). Nere 7ll höger finns kontrollenheten. Kontrollenheten tar e= antal insignaler och genererar e= antal utsignaler. Insignaler är statussignaler från ALU:n, delar av IR (där instruk7onen som ska exekveras lagras) och en klocksignal (som bestämmer has7gheten). Utsignaler är kontrollsignaler för a= styra processorn. Det är signaler som bestämmer vad som ska finns på den interna bussen. Om innehållet i programräknaren ska placeras i memory address register (MAR) så ska kontrollenheten se så a= PCout och MARin är öppna. Då kommer det som finns i PC a= fly=as 7ll MAR. Enersom den här processorn bara har en intern buss som kopplar samman allt så kan bara en sak göras på den internabuss. Det blir naturligtvis en konflikt om kontrollenheten öppnar PCout och MBRout sam7digt (det är då flera som driver ledningarna i bussen). 38

30 Antag a= processorn ska exekvera instruk7onen ADD R1, R3. När instruk7onen är exekverad så a= processorn tagit innehållet i R1 och R3 och med hjälp av ALU:n är värdena adderade och resultatet är skrivet i R3. I det första kontrollsteget tas innehållet i PC och placeras i MAR. Det är för a= processorn vill hämta den instruk7on som finns på den plats som pekas ut av PC (det är så långt exekveringen har nå=). Kontrollsignalen READ (läs i minnet) ak7veras så a= minnet hämtar fram rä= data. När innehållet av PC är på den internabussen räknas PC upp e= steg för a= förbereda hämtning av nästa instruk7on. Så, ena ingången av ALU:n har värdet PC. Om Y nollställs, carry- in sä=s, och ALU:n ställs på addi7on så har PC+1 beräknats och resultatet placeras i Z. Notera. I exemplet som används för a= illustrera principen om hur PC räknas upp kan man fak7skt läsa ut en hel del om processorn. För det första, om PC all7d räknas upp med 1 steg så är alla instruk7oner av samma längd, dvs fixed length. För det andra, om minnet är adresserat på byte nivå, dvs den minsta enhet man kan adressera är 1 byte (8- bitar), så kan det inte finnas mer än 2 8 (256) instruk7oner. 39

31 Här ser vi vilka kontrollsignaler som är ak7va i det första kontrollsteget. 40

32 I det andra kontrollsteget laddas PC med det nya värdet (det som beräknades i kontrollsteg 1) 41

33 Här ser vi vilka kontrollsignaler som är ak7va i det andra kontrollsteget. 42

34 43

35 I tredje kontrollsteget är minnet klar, dvs minnet har levererat den data som finns på den plats som PC pekade ut. MBRout ak7veras för a= det inläsa värdet ska fly=as via den internabussen 7ll instruk7onsregistret (IR). IRin ak7veras så a= det som finns på den internabussen läses in. 44

36 Här ser vi vilka kontrollsignaler som är ak7va i det tredje kontrollsteget. 45

37 Nu är FETCH delen avklarad, dvs den del som är samma oavse= vilken instruk7on det är. I EXECUTE delen, beror kontrollenheten på vilken instruk7on som just nu finns i instruk7onsregistret. I de=a exempel är det en addi7on. Den kan inte göras i e= steg utan måste brytas upp i 3 steg. I det första (av de tre stegen) tas det värde som finns i R1 och fly=as 7ll det temporära registret Y. De=a görs genom a= kontrollsignalerna R1out och Yin ak7veras. 46

38 Här ser vi vilka kontrollsignaler som är ak7va i det tärde kontrollsteget. 47

39 I det femte kontrollsteget görs addi7onen. Värdet från R1 är redan kopierat 7ll Y. Nu placeras värdet i R3 på andra ingången 7ll ALU:n och ALU:n gör en addi7on genom kontrollsignalen ADD. Resultatet lagras i det temporäraregistret Z. 48

40 Här ser vi vilka kontrollsignaler som är ak7va i det femte kontrollsteget. 49

41 I det sista kontrollsteget fly=as resultatet från Z 7ll R1. Instruk7onen är nu exekverad. Allt det som gjorts, kontrollsteg 1-6, 7llhör instruk7onscykeln. Notera. Den här instruk7onen tog 6 kontrollsteg a= exekvera. Om varje kontrollsteg tar 1 klockcykel så tar denna instruk7on 6 klockcykler. Prestandan kan ökas genom a= öka klockfrekvensen men det gäller a= vara vaksam så a= den logik som måste exekvera i varje steg hinner med. E= alterna7v 7ll a= öka klockfrekvensen är a= försöka minska antalet kontrollsteg. Det kan göras genom a= försöka op7mera det som görs i varje kontrollsteg. Det kan också göras genom a= försöka bygga bort flaskhalsar. I den här arkitekturer fanns en internbuss. Den begränsade möjligheterna a= snabbt fly=a data, t ex addi7onen delades upp i tre steg enersom det bara fanns en internbuss (vilket gör a= bara en sak i taget kan göras). 50

42 Här ser vi vilka kontrollsignaler som är ak7va i det sjä=e kontrollsteget. 51

43 För a= åstakomma direkt register- register överföring fler bussar. Då kan data fly=as mellan register och processor snabbare. Kostnad blir naturligtvis mer ledningar. För a= kunna fly=a större tal behövs bredare bussar, som leder 7ll fler ledningar. Historiskt se= så har kostnaden vid utveckling av integrerade kretsar legat på själva beräkningen, som görs av transistorer. Man har försökt minska antalet transistorer för a= minska 7llverkningskostnad. Men, nu är trenden a= transistorer kostar mindre. Det som är kostsamt är a= fly=a data. För a= fly=a e= stort tal behövs en bred buss, dvs många ledningar. 52

44 54

45 55

46 56

47 57

48 59

49 60

50 63

51 64

52 65

53 66

54 67

55 68

56 69

57 70

58 71

59 72

60 73

61 74

62 78

63 79

64 80

65 81

66 Här ser vi vilka kontrollsignaler som är ak7va i det femte kontrollsteget. 82

67 83

68 84

69 85

70 86

71 89

72 90

73 91

74 92

75 93

76 94

77 SUN Sparc: 32 general purpose register synliga för en användare där 8 register är globala och 24 ingår i e= fönster (window) Registren i e= fönster delas upp som: 8 register för utdata, 8 register för local, och 8 register för indata Man kan ha 2 7ll 32 fönster, dvs 40 7ll 520 register Vid 2 fönster: 8 register globla, 24 (in/locala/ut) för fönster 1, 16 (in/locala) för fönster 2 (men, in och ut för fönster 1 och 2 delas). 95

78 98

79 För a= hantera I/O, t ex tangentbord (input) och skärm (output) kan man använda minnesmappad I/O eller isolerad I/O. I minnesmappad I/O ses I/O- enheter som en del av minnet. Fördelen är a= samma instruk7oner användas för minnes läsning/skrivning. När man vill göra en I/O opera7on, läser/skriver man 7ll den del av minnet där I/O- enheten si=er. Nackdelen är a= man tar bort en del av adressrymden enersom alla adressledningar inte kan användas 7ll minnet utan vissa används för I/O enheter. I isolerad I/O används speciella instruk7oner för I/O. Då kan man använda hela adressrymden 7ll minne, men man måste ha fler instruk7oner, som kan påverka komplexiteten av processorn. 100

80 LOAD R1, 7 ladda register R1 med det som finns på adressplats 7. Adressplats 7 framstår som en plats i minnet, men det är minnesceller som håller koll på vilken eller vilka tangenter som är netryckta. I exemplet är tangent 3 nedtryckt och det är i det här fallet implementerat så a= då lagras värdet på adressplats 7. STORE R1, 6 tar innehållet i register R1 och placerar värdet på adressplats 6. Värdet i register R1 är ener a= LOAD R1, 7 exekverats lika med De=a värde placeras nu på minnesplats 6 i minnet. Minnesplats 6 är konstruerat så a= en nolla släcker lysdioder i e= sju- segment display medan en e=a tänder en viss lysdiod i sju- segment displayen. 101

81 103

82 104

83 107

84 108

85 109

86 110

87 111

88 112

89 113

90 114

91 115

92 116

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

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 1 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 arkitektur), hårdvara osynlig Assembly- och maskinprogram:

Läs mer

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. 1 3 4 Antag a' processorn ska exekvera instruk3onen ADD R1, R3. När instruk3onen är exekverad så a' processorn tagit innehållet i R1 och R3 och med hjälp av ALU:n är värdena adderade och resultatet är

Läs mer

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. 1 2 3 Antag a' processorn ska exekvera instruk3onen ADD R1, R3. När instruk3onen är exekverad så a' processorn tagit innehållet i R1 och R3 och med hjälp av ALU:n är värdena adderade och resultatet är

Läs mer

Datorarkitekturer med operativsystem ERIK LARSSON

Datorarkitekturer med operativsystem ERIK LARSSON Datorarkitekturer med operativsystem ERIK LARSSON Översikt Processorn Maskininstruktioner Dator Primärminne Data/instruktioner Kontroll Central processing unit (CPU) Fetch instruction Execute instruction

Läs mer

Digitala System: Datorteknik ERIK LARSSON

Digitala System: Datorteknik ERIK LARSSON Digitala System: Datorteknik ERIK LARSSON Dator Primärminne Instruktioner och data Data/instruktioner Kontroll Central processing unit (CPU) Fetch instruction Execute instruction Programexekvering (1)

Läs mer

Grundläggande datavetenskap, 4p

Grundläggande datavetenskap, 4p Grundläggande datavetenskap, 4p Kapitel 2 Datamanipulation, Processorns arbete Utgående från boken Computer Science av: J. Glenn Brookshear 2004-11-09 IT och Medier 1 Innehåll CPU ALU Kontrollenhet Register

Läs mer

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

Program Datorteknik. Kontrollenhet. Exekvering av en instruktion. Abstraktionsnivå: Högnivåspråk. Assemblyspråk. Maskinspråk. Program Datorteknik Abstraktionsnivå: Högnivåspråk ERIK LARSSON» t ex C, C++ Assemblyspråk» t ex ADD R, R Maskinspråk» t ex 000.0 Exekvering av en instruktion Kontrollenhet () Hämta instruktion på 0000000

Läs mer

Datorteknik ERIK LARSSON

Datorteknik ERIK LARSSON Datorteknik ERIK LARSSON Program Abstraktionsnivå: Högnivåspråk» t ex C, C++ Assemblyspråk» t ex ADD R1, R2 Maskinspråk» t ex 001101.101 Exekvering av en instruktion (1) Hämta instruktion på 00001000 (där

Läs mer

Tentamen den 18 mars svar Datorteknik, EIT070

Tentamen den 18 mars svar Datorteknik, EIT070 Lunds Universitet LTH Tentamen den 18 mars 2015 - svar Datorteknik, EIT070 Skrivtid: 14.00-19.00 Tillåtna hjälpmedel: Inga. Maximalt antal poäng: 50 poäng För betyg 3 krävs 20 poäng För betyg 4 krävs 30

Läs mer

Närliggande allokering Datorteknik

Närliggande allokering Datorteknik Närliggande allokering Datorteknik ERIK LARSSON TID Problem: Minnet blir fragmenterat Paging Demand paging Sida (S) Dela upp primärminnet i ramar (frames) och program i sidor (pages) Program 0 RD.0 1 RD.1

Läs mer

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

System S. Datorarkitektur - en inledning. Organisation av datorsystem: olika abstraktionsnivåer. den mest abstrakta synen på systemet Datorarkitektur - en inledning Organisation av datorsystem: olika abstraktionsnivåer System S den mest abstrakta synen på systemet A B C Ett högnivåperspektiv på systemet a1 b1 c1 a2 b3 b2 c2 c3 En mera

Läs mer

Tentamen den 14 januari 2016 Datorarkitektur med operativsystem, EDT621

Tentamen den 14 januari 2016 Datorarkitektur med operativsystem, EDT621 Lunds Universitet LTH Tentamen den 14 januari 2016 Datorarkitektur med operativsystem, EDT621 Skrivtid: 08.00-13.00 Tillåtna hjälpmedel: Inga. Maximalt antal poäng: 50 poäng För betyg 3 krävs 20 poäng

Läs mer

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

F2: Motorola Arkitektur. Assembler vs. Maskinkod Exekvering av instruktioner i Instruktionsformat MOVE instruktionen 68000 Arkitektur F2: Motorola 68000 I/O signaler Processor arkitektur Programmeringsmodell Assembler vs. Maskinkod Exekvering av instruktioner i 68000 Instruktionsformat MOVE instruktionen Adresseringsmoder

Läs mer

Superscalar Bra: Hårdvaran löser allt: Hårdvara detekterar poten6ell parallellism av instruk6oner Hårdvara försöker starta exekvering (issue) av så

Superscalar Bra: Hårdvaran löser allt: Hårdvara detekterar poten6ell parallellism av instruk6oner Hårdvara försöker starta exekvering (issue) av så 1 Superscalar Bra: Hårdvaran löser allt: Hårdvara detekterar poten6ell parallellism av instruk6oner Hårdvara försöker starta exekvering (issue) av så många instruk6oner som möjligt parallellt Hårdvara

Läs mer

Datorarkitekturer med operativsystem ERIK LARSSON

Datorarkitekturer med operativsystem ERIK LARSSON Datorarkitekturer med operativsystem ERIK LARSSON Dator Primärminne Instruktioner och data Data/instruktioner Kontroll Central processing unit (CPU) Fetch instruction Execute instruction Programexekvering

Läs mer

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

Datormodell. Datorns uppgifter -Utföra program (instruktioner) Göra beräkningar på data Flytta data Interagera med omvärlden Datormodell Datorns uppgifter -Utföra program (instruktioner) Göra beräkningar på data Flytta data Interagera med omvärlden Intel 4004 från 1971 Maximum clock speed is 740 khz Separate program and data

Läs mer

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)

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) Datorsystem 2 CPU Förra gången: Datorns historia Denna gång: Byggstenar i en dators arkitektur CPU Visning av Akka (för de som är intresserade) En dators arkitektur På en lägre nivå kan vi ha lite olika

Läs mer

En processor kan ha en klockfrekvens på flera GHz. Det går alltså a9 exekvera en instruk=on väldigt for, givet a9 instruk=onen finns i processorn.

En processor kan ha en klockfrekvens på flera GHz. Det går alltså a9 exekvera en instruk=on väldigt for, givet a9 instruk=onen finns i processorn. 1 2 En processor kan ha en klockfrekvens på flera GHz. Det går alltså a9 exekvera en instruk=on väldigt for, givet a9 instruk=onen finns i processorn. Instruk=onerna =ll programmet som exekveras finns

Läs mer

Digitala System: Datorteknik ERIK LARSSON

Digitala System: Datorteknik ERIK LARSSON Digitala System: Datorteknik ERIK LARSSON Huvudled (H) Trafikljus för övergångsställe Trafikljus för huvudled (H) Trafikljus: Sväng vänster (H->T) Gående - vänta Trafikljus för tvärgata (T) Tvärgata (T)

Läs mer

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

En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär: Lösningsförslag för 725G45-tentan 3/11-10 1. Vad menas med Von Neumann-arkitektur? (2p) En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär: Data och instruktioner lagras i samma

Läs mer

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

Datorteknik. Tomas Nordström. Föreläsning 2. För utveckling av verksamhet, produkter och livskvalitet. Datorteknik Tomas Nordström Föreläsning 2 För utveckling av verksamhet, produkter och livskvalitet. Föreläsning 2 Check av övningar Von Neumann arkitekturen Minne, CPU, I/O Instruktioner och instruktionscykeln

Läs mer

Tentamen den 12 januari 2017 Datorarkitektur med operativsystem, EDT621

Tentamen den 12 januari 2017 Datorarkitektur med operativsystem, EDT621 Lunds Universitet LTH Tentamen den 12 januari 2017 Datorarkitektur med operativsystem, EDT621 Skrivtid: 8.00-13.00 Inga tillåtna hjälpmedel Uppgifterna i tentamen ger maximalt 60 poäng. Uppgifterna är

Läs mer

LV6 LV7. Aktivera Kursens mål:

LV6 LV7. Aktivera Kursens mål: Aktivera Kursens mål: LV6 LV7 Konstruera en dator mha grindar och programmera denna Aktivera Förra veckans mål: Konstruktruera olika kombinatoriska nät som ingår i en dator. Studera hur addition/subtraktion

Läs mer

Digitalteknik EIT020. Lecture 15: Design av digitala kretsar

Digitalteknik EIT020. Lecture 15: Design av digitala kretsar Digitalteknik EIT020 Lecture 15: Design av digitala kretsar November 3, 2014 Digitalteknikens kopplingar mot andra områden Mjukvara Hårdvara Datorteknik Kretskonstruktion Digitalteknik Elektronik Figure:,

Läs mer

TSEA28 Datorteknik Y (och U)

TSEA28 Datorteknik Y (och U) TSEA28 Datorteknik Y (och U) Föreläsning 9 Kent Palmkvist, ISY TSEA28 Datorteknik Y (och U), föreläsning 9, Kent Palmkvist 2017-03-20 2 Dagens föreläsning Byggblocken i en processor Hur de fungerar Grundläggande

Läs mer

Datorarkitekturer med operativsystem ERIK LARSSON

Datorarkitekturer med operativsystem ERIK LARSSON Datorarkitekturer med operativsystem ERIK LARSSON Semantic gap Alltmer avancerade programmeringsspråk tas fram för att göra programvaruutveckling mer kraftfull Dessa programmeringsspråk (Ada, C++, Java)

Läs mer

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

Tentamen i Digitala system - EDI610 15hp varav denna tentamen 4,5hp Tentamen i Digitala system - EDI610 15hp varav denna tentamen 4,5hp Institutionen för elektro- och informationsteknik Campus Helsingborg, LTH 2016-12-22 8.00-13.00 Uppgifterna i tentamen ger totalt 60

Läs mer

Uppgift 1: a) u= a c + a bc+ ab d +b cd

Uppgift 1: a) u= a c + a bc+ ab d +b cd Uppgift 1: a) u= a c a bc ab d b cd b) a b c d u 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 1 1 0 0 1 0 1 0 1 0 1 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1

Läs mer

Läsminne Read Only Memory ROM

Läsminne Read Only Memory ROM Läsminne Read Only Memory ROM Ett läsminne har addressingångar och datautgångar Med m addresslinjer kan man accessa 2 m olika minnesadresser På varje address finns det ett dataord på n bitar Oftast har

Läs mer

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

Minnet. Minne. Minns Man Minnet? Aktivera Kursens mål: LV3 Fo7. RAM-minnen: ROM PROM FLASH RWM. Primärminnen Sekundärminne Blockminne. Ext 15. Aktivera Kursens mål: LV3 Fo7 Konstruera en dator mha grindar och programmera denna Aktivera Förra veckans mål: Konstruktruera olika kombinatoriska nät som ingår i en dator. Studera hur addition/subtraktion

Läs mer

Datorsystemteknik DVGA03 Föreläsning 8

Datorsystemteknik DVGA03 Föreläsning 8 Datorsystemteknik DVGA03 Föreläsning 8 Processorns uppbyggnad Pipelining Större delen av materialet framtaget av :Jan Eric Larsson, Mats Brorsson och Mirec Novak IT-inst LTH Innehåll Repetition av instruktionsformat

Läs mer

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

0.1. INTRODUKTION 1. 2. Instruktionens opcode decodas till en språknivå som är förstålig för ALUn. 0.1. INTRODUKTION 1 0.1 Introduktion Datorns klockfrekvens mäts i cykler per sekund, eller hertz. En miljon klockcykler är en megahertz, MHz. L1 cache (level 1) är den snabbaste formen av cache och sitter

Läs mer

Processor pipelining genom historien (Intel i9-intel i7)

Processor pipelining genom historien (Intel i9-intel i7) Processor pipelining genom historien (Intel i9-intel i7) Besnik Redzepi Lunds Universitet Abstrakt/Sammanfattning Syftet med denna uppsats är att jämföra Intels nya generation processorer och deras pipelining.

Läs mer

SVAR TILL TENTAMEN I DATORSYSTEM, VT2013

SVAR TILL TENTAMEN I DATORSYSTEM, VT2013 Rahim Rahmani (rahim@dsv.su.se) Division of ACT Department of Computer and Systems Sciences Stockholm University SVAR TILL TENTAMEN I DATORSYSTEM, VT2013 Tentamensdatum: 2013-03-21 Tentamen består av totalt

Läs mer

Pipelining i Intel Pentium II

Pipelining i Intel Pentium II Pipelining i Intel Pentium II John Abdulnoor Lund Universitet 04/12/2017 Abstract För att en processor ska fungera måste alla komponenter inuti den samarbeta för att nå en acceptabel nivå av prestanda.

Läs mer

HF0010. Introduktionskurs i datateknik 1,5 hp

HF0010. Introduktionskurs i datateknik 1,5 hp HF0010 Introduktionskurs i datateknik 1,5 hp Välkommna - till KTH, Haninge, Datateknik, kursen och till första steget mot att bli programmerare! Er lärare och kursansvarig: Nicklas Brandefelt, bfelt@kth.se

Läs mer

Läs igenom hela laboration 5 innan du börjar beskriva instruktionsavkodaren i VHDL!

Läs igenom hela laboration 5 innan du börjar beskriva instruktionsavkodaren i VHDL! MCU LABORATION5 Laborationens syfte Läs igenom hela laboration 5 innan du börjar beskriva instruktionsavkodaren i VHDL! I denna laboration ska en enkel MCU (Micro-Controller_Unit) konstrueras. En MCU,

Läs mer

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

Svar till tentamen den 16 december 2013 Datorarkitekturer med operativsystem, EDT621, 7,5 poäng Lunds Universitet LTH Ingenjörshögskolan, Helsingborg Svar till tentamen den 16 december 2013 Datorarkitekturer med operativsystem, EDT621, 7,5 poäng Skrivtid: 08.00-13.00 Tillåtna hjälpmedel: Inga. Maximalt

Läs mer

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

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 Datorhistorik Föreläsning 3 Datorhistorik Datorns uppbyggnad, komponenter Processor, primärminne, sekundärminne Minneshierarkier Inbyggda system, stora datorer I think there is a world market for maybe

Läs mer

Lågnivåprogrammering. Föreläsning 2 Lågnivåprogrammering. Binära tal. En enkel modell av datorns inre

Lågnivåprogrammering. Föreläsning 2 Lågnivåprogrammering. Binära tal. En enkel modell av datorns inre Lågnivåprogrammering Föreläsning 2 Lågnivåprogrammering Förberedelse inför laboration 2. Maskinspråk, assemblerspråk Talrepresentation En enkel dator, komponenter Instruktionsformat, instruktionscykel

Läs mer

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

Per Holm Lågnivåprogrammering 2014/15 24 / 177. int och double = = 2, 147, 483, 647 Lågnivåprogrammering Föreläsning 2 Lågnivåprogrammering Förberedelse inför laboration 2. Maskinspråk, assemblerspråk Talrepresentation En enkel dator, komponenter Instruktionsformat, instruktionscykel

Läs mer

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

Tentamen den 14 januari 2015 Datorarkitekturer med operativsystem, EDT621, 7,5 poäng Lunds Universitet LTH Ingenjörshögskolan, Helsingborg Tentamen den 14 januari 2015 Datorarkitekturer med operativsystem, EDT621, 7,5 poäng Skrivtid: 08.00-13.00 Tillåtna hjälpmedel: Inga. Maximalt antal

Läs mer

TSEA28 Datorteknik Y (och U)

TSEA28 Datorteknik Y (och U) Praktiska kommentarer TSEA8 Datorteknik Y (och U) Föreläsning Kent Palmkvist, ISY Dagens föreläsning Latens/genomströmning Pipelining Laboration tips Sorteringsalgoritm använder A > B i flödesschemat Exemplet

Läs mer

General Purpose registers ALU I T H S V N Z C SREG. Antag att vi behöver skriva in talet 25 till register R18

General Purpose registers ALU I T H S V N Z C SREG. Antag att vi behöver skriva in talet 25 till register R18 F3 Föreläsning i Mikrodatorteknink 2006-08-29 Kärnan i microcontrollern består av ett antal register och en ALU. Till detta kommer också ett antal portar. Det finns 64 st portar. Några är anslutna mot

Läs mer

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

c a OP b Digitalteknik och Datorarkitektur 5hp ALU Design Principle 1 - Simplicity favors regularity add $15, $8, $11 A basic -bit Select between various operations: OR, AND, XOR, and addition Full Adder Multiplexer Digitalteknik och Datorarkitektur hp Föreläsning : introduktion till MIPS-assembler - april 8 karlmarklund@ituuse

Läs mer

Exempeltentamen Datorteknik, EIT070,

Exempeltentamen Datorteknik, EIT070, Lunds Universitet LTH Exempeltentamen Datorteknik, EIT070, Skrivtid: xx.00-xx.00 Tillåtna hjälpmedel: Inga. Maximalt antal poäng: 50 poäng För betyg 3 krävs 20 poäng För betyg 4 krävs 30 poäng För betyg

Läs mer

Datorteknik ERIK LARSSON

Datorteknik ERIK LARSSON Datorteknik ERIK LARSSON Program Abstraktionsnivå: Högnivåspråk» t ex C, C++ Assemblyspråk» t ex ADD R1, R2 Maskinspråk» t ex 001101.101 Semantiskt gap Alltmer avancerade programmeringsspråk tas fram för

Läs mer

TSEA28 Datorteknik Y (och U)

TSEA28 Datorteknik Y (och U) TSE28 atorteknik (och U), föreläsning 9, Kent Palmkvist 29-3-25 3 TSE28 atorteknik (och U) Föreläsning 9 Kent Palmkvist, IS Praktiska kommentarer Laboration 4: MI 2 + 2 h precis som tidigare Simuleringslabbar

Läs mer

Digitalteknik och Datorarkitektur 5hp

Digitalteknik och Datorarkitektur 5hp Foto: Rona Proudfoot (some rights reserved) Vi skall nu kolla närmare på hur det går till när en instruktion utförs. Fetch = + Digitalteknik och Datorarkitektur hp path & Control maj 2 karl.marklund@it.uu.se

Läs mer

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

LABORATION DATORTEKNIK D. Pipelining. Namn och personnummer. Version: (OS,OVA,AN) LABORATION DATORTEKNIK D Pipelining Version: 1.4 2016 (OS,OVA,AN) Namn och personnummer Godkänd 1 blank sida 2 Innehåll 1 Inledning 5 1.1 Syfte................................. 5 1.2 Förberedelser............................

Läs mer

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

Elektroteknik MF1016 föreläsning 9 MF1017 föreläsning 7 Mikrodatorteknik Elektroteknik MF1016 föreläsning 9 MF1017 föreläsning 7 - Inbyggda system - Analog till digital signal - Utvecklingssystem, målsystem - Labutrustningen - Uppbyggnad av mikrokontroller - Masinkod, assemblerkod

Läs mer

TSEA28 Datorteknik Y (och U)

TSEA28 Datorteknik Y (och U) TSEA28 Datorteknik Y (och U), föreläsning 2, Kent Palmkvist 2019-01-22 3 TSEA28 Datorteknik Y (och U) Föreläsning 2 Kent Palmkvist, ISY Praktiska kommentarer Labanmälan öppnar måndag 28/1 kl 12.30 Anmälningssystemet

Läs mer

Datorteknik ERIK LARSSON

Datorteknik ERIK LARSSON Datorteknik ERIK LARSSON Inledning Ken Thompson och Dennis M. Ritchie utvecklade C Turingpriset( Nobelpris i datavetenskap ), 1983 Alan Turing (1912-1954) För deras utveckling av generell OS teori och

Läs mer

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

Lunds Tekniska Högskola Datorarkitektur med operativsystem EITF60. Superscalar vs VLIW. Cornelia Kloth IDA2. Inlämningsdatum: Lunds Tekniska Högskola Datorarkitektur med operativsystem EITF60 Superscalar vs VLIW Cornelia Kloth IDA2 Inlämningsdatum: 2018-12-05 Abstract Rapporten handlar om två tekniker inom multiple issue processorer

Läs mer

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

Moment 2 Digital elektronik. Föreläsning Inbyggda system, introduktion Moment 2 Digital elektronik Föreläsning Inbyggda system, introduktion Jan Thim 1 Inbyggda system, introduktion Innehåll: Historia Introduktion Arkitekturer Mikrokontrollerns delar 2 1 Varför lär vi oss

Läs mer

ALU:n ska anslutas hur då?

ALU:n ska anslutas hur då? Aktivera Kursens mål: LV3 Fo7 Konstruera en dator mha grindar och programmera denna Aktivera Förra veckans mål: Konstruktruera olika kombinatoriska nät som ingår i en dator. Studera hur addition/subtraktion

Läs mer

Föreläsning 1: Intro till kursen och programmering

Föreläsning 1: Intro till kursen och programmering Föreläsning 1: Intro till kursen och programmering λ Kursens hemsida http:www.it.uu.se/edu/course/homepage/prog1/mafykht11/ λ Studentportalen http://www.studentportalen.uu.se UNIX-konton (systemansvariga

Läs mer

TSEA28 Datorteknik Y (och U)

TSEA28 Datorteknik Y (och U) TSE28 atorteknik (och U), föreläsning 9, Kent Palmkvist 28-3-9 3 Praktiska kommentarer TSE28 atorteknik (och U) Föreläsning 9 Kent Palmkvist, IS Laborationsanmälan startar Måndag 26/3 kl 2.3! Laboration

Läs mer

Ext-13 (Ver ) Exempel på RTN-beskrivning av FLEX-instruktioner

Ext-13 (Ver ) Exempel på RTN-beskrivning av FLEX-instruktioner Ext-3 (Ver 203-04-2) Exempel på RTN-beskrivning av FLEX-instruktioner. Figur på sidan 2 i detta häfte visar hur datorn FLEX är uppbyggd. På sidan visas dessutom hur ALU:ns funktion väljs med styrsignalerna

Läs mer

Datorteknik ERIK LARSSON

Datorteknik ERIK LARSSON Datorteknik ERIK LARSSON Laborationer Gå bara på tillfällen där du är anmäld. Moment svarar mot 1.5hp, dvs 40 timmar arbete Schemalagd tid: 4*2 (lektioner)+4*4(laborationer)=20 timmar Material: Finns på

Läs mer

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

Övning1 Datorteknik, HH vt12 - Talsystem, logik, minne, instruktioner, assembler Övning1 Datorteknik, HH vt12 - Talsystem, logik, minne, instruktioner, assembler Talsystem Talsystem - binära tal F1.1) 2 n stycken tal från 0 till 2 n 1 F1.2) 9 bitar (512 kombinationer) Talsystem - 2-

Läs mer

LABORATION DATORTEKNIK Y,C,I DATORTEKNIK D

LABORATION DATORTEKNIK Y,C,I DATORTEKNIK D LABORATION DATORTEKNIK Y,C,I DATORTEKNIK D Beskrivning av MIA-systemet Version: 2.4 1983 (BL) 1998 (TS) 2010 (AE,OVA) 2013 (OVA) 2018 (KP) INNEHÅLL 1. Inledning... 3 2. Maskinspråksprogrammerarens datormodell...

Läs mer

Ett minneselements egenskaper. F10: Minneselement. Latch. SR-latch. Innehåll:

Ett minneselements egenskaper. F10: Minneselement. Latch. SR-latch. Innehåll: F: Minneselement Innehåll: - Latchar - Flip-Flops - egister - Läs- och skrivminne (andom-access Memory AM) - Läsminne (ead Only Memory OM) Ett minneselements egenskaper Generellt sett så kan följande operationer

Läs mer

Vad är programmering Jonas Lindemann

Vad är programmering Jonas Lindemann Vad är programmering Jonas Lindemann Vad är en dator? Består av e1 antal delar som samverkar Processorn U7ör instruk:oner (addera, skriv :ll minne, fly1a minne ) Minnet Lagrar de instruk:oner som skall

Läs mer

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

Foto: Rona Proudfoot (some rights reserved) Datorarkitektur 1. Datapath & Control. December Datorarkitektur Datapath & Control December 28 karl.marklund@it.uu.se Foto: Rona Proudfoot (some rights reserved) Vi skall nu kolla närmare på hur det går till när en instruktion utförs. Fetch PC = PC+4

Läs mer

CPU. Carry/Borrow IX. Programräknare

CPU. Carry/Borrow IX. Programräknare Laboration:. Jämförelser mellan assembler och C. CPU ACCA ACCD ACCB 8-bitars ackumulatorer eller 16- bitars ackumulator CCR 1 1 1 SXH I NZVC Flaggregister Carry/Borrow IX IY PC Indexregister X Indexregister

Läs mer

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

Tentamen i Digitala system - EITA15 15hp varav denna tentamen 4,5hp Tentamen i Digitala system - EITA15 15hp varav denna tentamen 4,5hp Institutionen för elektro- och informationsteknik Campus Helsingborg, LTH 2018-01-09 8.00-13.00 (förlängd 14.00) Uppgifterna i tentamen

Läs mer

Pipelining i Intel 80486

Pipelining i Intel 80486 Lunds Universitet Pipelining i Intel 80486 EITF60 Datorarkitekturer med operativsystem Martin Wiezell 2017-12-04 Abstract This paper gives a brief description of the instruction pipeline of the Intel 80486

Läs mer

Ext-13 (Ver ) Exempel på RTN-beskrivning av FLEX-instruktioner

Ext-13 (Ver ) Exempel på RTN-beskrivning av FLEX-instruktioner Ext-3 (Ver 204-04-08) Exempel på RTN-beskrivning av FLEX-instruktioner. Figur på sidan 2 i detta häfte visar hur datorn FLEX är uppbyggd. På sidan visas dessutom hur ALU:ns funktion väljs med styrsignalerna

Läs mer

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

Minnets komponenter. Digitala System: Datorteknik. Programexekvering. Programexekvering. Enhet för utdata. Enhet för indata CPU. Digitala System: Datorteknik Minnets komponenter ERIK LARSSON Enhet för indata CPU Enhet för utdata Sekundärminne Programexekvering Program i högnivåspråk.. Z:=(Y+X)*3. Kompilator Exekverbart program i

Läs mer

Föreläsning 1: Intro till kursen och programmering

Föreläsning 1: Intro till kursen och programmering Föreläsning 1: Intro till kursen och programmering Kursens hemsida http:www.it.uu.se/edu/course/homepage/prog1/vt11 Studentportalen http://www.studentportalen.uu.se Lärare: Tom Smedsaas, Tom.Smedsaas@it.uu.se

Läs mer

Lösningsförslag till Tenta i Mikrodator

Lösningsförslag till Tenta i Mikrodator Lösningsförslag till Tenta i Mikrodator 050113 1. Vilka register finns det i processorn och vad används dessa till? D0 till D7: Dataregister som används för beräkningar A0 till A6: Adressregister som används

Läs mer

Föreläsningsanteckningar 4. Pipelining

Föreläsningsanteckningar 4. Pipelining Föreläsningsanteckningar 4. Pipelining Olle Seger 2012, olles@isy.liu.se 21 januari 2013 1 Inledning Denna föreläsning handlar om pipelining, som är den helt dominerande processorarkitekturen i dag. Man

Läs mer

4. Pipelining. 4. Pipelining

4. Pipelining. 4. Pipelining 4. Pipelining 4. Pipelining Det finns en pipelinad biltvätt i Linköping spoltvätttork spoltvätt tork spolning tvätt tork De tre momenten tar lika lång tid Alla bilar går igenom samma program Väntetid 1/3

Läs mer

Tentamen PC-teknik 5 p

Tentamen PC-teknik 5 p Tentamen PC-teknik 5 p Lösningar med kommentarer Program: Di2 Datum: 05-01-10 Tid: 13:30-18:30 Lokal He303 Hjälpmedel: Linjal, miniräknare, Instruktionsrepertoar för 8086 (utdelas), Bilaga: Ingen Examinator:

Läs mer

Det finns en hemsida. Adressen är http://www.idt.mdh.se/kurser/ct3760/

Det finns en hemsida. Adressen är http://www.idt.mdh.se/kurser/ct3760/ CT3760 Mikrodatorteknik Föreläsning 1 Torsdag 2005-08-25 Upprop. Det finns en hemsida. Adressen är http://www.idt.mdh.se/kurser/ct3760/ Kurslitteratur är Per Foyer Mikroprocessorteknik. Finns på bokhandeln.

Läs mer

Tentamen i Digitalteknik och Datorarkitektur DV1 5p

Tentamen i Digitalteknik och Datorarkitektur DV1 5p Institutionen för Informationsteknologi Avdelningen för Datorteknik Per O Foyer Tentamen i Digitalteknik och Datorarkitektur DV1 5p Torsdag 1999-08-12 Lokal: Skrivtid: 09.00-15.00. Polacksbackens skrivsal,

Läs mer

GPIO - General Purpose Input Output

GPIO - General Purpose Input Output GPIO - General Purpose Input Output Ur innehållet: Ideala och verkliga signaler Bitvis in- och utmatning Anslutning - fysiskt gränssnitt F407 - GPIO-modul tillämpningar Läsanvisningar: Arbetsbok avsnitt

Läs mer

Tentamen. Datorteknik Y, TSEA28

Tentamen. Datorteknik Y, TSEA28 Tentamen Datorteknik Y, TSEA28 Datum 2016-05-31 Lokal Kåra, T1, T2, U1, U15 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal

Läs mer

TSEA28 Datorteknik Y (och U)

TSEA28 Datorteknik Y (och U) TSEA28 Datorteknik Y (och U), föreläsning 2, Kent Palmkvist 2018-01-16 3 TSEA28 Datorteknik Y (och U) Föreläsning 2 Kent Palmkvist, ISY Praktiska kommentarer Mail kommer skickas ut när labanmälan är möjlig

Läs mer

Datorarkitekturer med operativsystem ERIK LARSSON

Datorarkitekturer med operativsystem ERIK LARSSON Datorarkitekturer med operativsystem ERIK LARSSON Pipelining Tid SSA P Pipelining FI DI CO FO EI WO FI DI CO FO EI WO FI DI CO FO EI WO FI DI CO FO EI WO Superscalar pipelining FI DI CO FO EI WO FI DI

Läs mer

Parallellism i CDC 7600, pipelinens ursprung

Parallellism i CDC 7600, pipelinens ursprung Lunds universitet Parallellism i CDC 7600, pipelinens ursprung Henrik Norrman EITF60 Datorarkitekturer med operativsystem Kursansvarig: Erik Larsson 4 december 2017 INNEHÅLL Parallellism i CDC 7600 Innehåll

Läs mer

TSEA28 Datorteknik Y (och U)

TSEA28 Datorteknik Y (och U) Praktiska kommentarer TSEA8 Datorteknik Y (och U) Föreläsning Kent Palmkvist, ISY Dagens föreläsning RISC Mer information om hur arkitekturen fungerar Begränsningar Lab extra tillfälle för redovisning

Läs mer

Kursupplägg. Examination. Föreläsning 1: Intro till kursen och. Kursmaterial. programmering. Kursboken: Programmera med a multimedia approach

Kursupplägg. Examination. Föreläsning 1: Intro till kursen och. Kursmaterial. programmering. Kursboken: Programmera med a multimedia approach Föreläsning 1: Intro till kursen och Kursens hemsida http://www.it.uu.se/edu/course/homepage/prog1/esvt10 Studentportalen http://www.studentportalen.uu.se Kursmaterial Kursbok Kursprogramvara Tips: Installera

Läs mer

Lösningar till tentamen i EIT070 Datorteknik

Lösningar till tentamen i EIT070 Datorteknik Lösningar till tentamen i EIT070 Datorteknik Institutionen för Elektro- och informationsteknik, LTH Onsdagen den 13 mars 2013, klockan 14:00 19:00 i Vic 2 A-D, 3 A-C. Tillåtna hjälpmedel: på tentan utdelad

Läs mer

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

Datorteknik. Föreläsning 6. Processorns uppbyggnad, pipelining. Institutionen för elektro- och informationsteknologi, LTH. Mål Datorteknik Föreläsning 6 Processorns uppbyggnad, pipelining Mål Att du ska känna till hur processorn byggs upp Att du ska kunna de viktigaste byggstenarna i processorn Att du ska känna till begreppet

Läs mer

IT för personligt arbete F5

IT för personligt arbete F5 IT för personligt arbete F5 Datalogi del 1 DSV Peter Mozelius 1 En dators beståndsdelar 1) Minne 2) Processor 3) Inmatningsenheter 1) tangentbord 2) scanner 3) mus 4) Utmatningsenheter 1) bildskärm 2)

Läs mer

Datorteknik ERIK LARSSON

Datorteknik ERIK LARSSON Datorteknik ERIK LARSSON Så här långt. FÖ2 RISC/CISC FÖ1 Primärminne Instruktioner och data Address Instruction 00001000 0000101110001011 00001001 0001101110000011 00001010 0010100000011011 00001011 0001001110010011

Läs mer

Datorteknik ERIK LARSSON

Datorteknik ERIK LARSSON Datorteknik ERIK LARSSON Programexekvering (1) Hämta instruktion på 00001000 (där PC pekar) Fetch (2) Flytta instruktionen 0000101110001011 till CPU (3) Avkoda instruktionen: 00001 MOVE, 01110001 Adress,

Läs mer

Minnet från processorns sida Datorteknik

Minnet från processorns sida Datorteknik Minnet från processorns sida Datorteknik ERIK LARSSON Processorn ger kommandon/instruktioner med en adress och förväntar sig data. Exempel: READ(ADR) -> DATA Fysisk adress Logisk adress READ 00001000 READ

Läs mer

Föreläsningsanteckningar till Konstruktionsmetoder 981027

Föreläsningsanteckningar till Konstruktionsmetoder 981027 Föreläsningsanteckningar till Konstruktionsmetoder 981027 Jämförelse mellan 68705P3 och 16F84 externt MC68705P3 PIC16F84 I/O 20 13 Kapsling 28-pin DIL 18-pin DIL Drivförmåga på pinnar PortB 10mA Sink,

Läs mer

Design av digitala kretsar

Design av digitala kretsar Föreläsningsanteckningar Föreläsning 15 - Digitalteknik Design av digitala kretsar Efter att ha studerat fundamentala digitaltekniska områden, ska vi nu studera aspekter som gränsar till andra områden.

Läs mer

Så fungerar en dator

Så fungerar en dator Så fungerar en dator Mental bild av en dator Hårdvarumodell av en dator 1 (10) Vad är en dator? En dator är en digital elektronisk mask, och består av tre huvudkomponenter: processor,, enheter för - och

Läs mer

Digital Aritmetik Unsigned Integers Signed Integers"

Digital Aritmetik Unsigned Integers Signed Integers Digital Aritmetik Unsigned Integers Signed Integers" Slides! Per Lindgren! EISLAB! Per.Lindgren@ltu.se! Original Slides! Ingo Sander! KTH/ICT/ES! ingo@kth.se! Talrepresentationer" Ett tal kan representeras

Läs mer

Digital- och datorteknik

Digital- och datorteknik Digital- och datorteknik Föreläsning #8 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Assemblatorer vs kompilatorer En assemblator är ett program

Läs mer

Vad är en dator? Introduktion till datorer och nätverk. Pontus Haglund Institutionen för datavetenskap (IDA) 21 augusti 2018

Vad är en dator? Introduktion till datorer och nätverk. Pontus Haglund Institutionen för datavetenskap (IDA) 21 augusti 2018 . Vad är en dator? Introduktion till datorer och nätverk Pontus Haglund Institutionen för datavetenskap (IDA) 21 augusti 2018 Översikt 2/23 Datorns historia von Neumann-arkitekturen Operativsystem Datornät

Läs mer

Introduktion till programmering

Introduktion till programmering Introduktion till programmering Vad är programmering? Vad gör en dator? Vad är ett datorprogram? 1 (9) Vad är programmering? För att bestämma en cirkels area måste du: 1. Dividera diametern 5 med 2. 2.

Läs mer

Styrenheten 9/17/2011. Styrenheten - forts Arb s 120. LV4 Fo10. Aktivera Kursens mål: Kap 7 Blå

Styrenheten 9/17/2011. Styrenheten - forts Arb s 120. LV4 Fo10. Aktivera Kursens mål: Kap 7 Blå Aktivera Kursens mål: LV4 Fo10 Konstruera en dator mha grindar och programmera denna Aktivera Förra veckans mål: Koppla samman register och ALU till en dataväg Minnets uppbyggnad och anslutning till datavägen

Läs mer

Tentamen den 17 mars 2016 Datorteknik, EIT070

Tentamen den 17 mars 2016 Datorteknik, EIT070 Lunds Universitet LTH Tentamen den 17 mars 2016 Datorteknik, EIT070 Skrivtid: 14.00-19.00 Tillåtna hjälpmedel: Inga. Maximalt antal poäng: 50 poäng För betyg 3 krävs 20 poäng För betyg 4 krävs 30 poäng

Läs mer

Hantering av hazards i pipelines

Hantering av hazards i pipelines Datorarkitektur med operativsystem Hantering av hazards i pipelines Lisa Arvidsson IDA2 Inlämningsdatum: 2018-12-05 Abstract En processor som använder pipelining kan exekvera ett flertal instruktioner

Läs mer