Forelesning Forgreningspredikering Kap 4.5 Superskalaritet Kap 4.5 Spekulativ utføring Kap 4.5
|
|
- Kamilla Fosse
- 7 år siden
- Visninger:
Transkript
1 TDT4160 Datamaskiner Grunnkurs Forelesning 8.11 Forgreningspredikering Kap 4.5 Superskalaritet Kap 4.5 Spekulativ utføring Kap 4.5
2 Dagens tema Forgreningspredikering (4.5) Hoppinstruksjoner og samlebånd Utsatt hoppinstruksjon Predikeringsteknikker Superskalaritet (4.5) Parallellitet og avhengigheter Ut-av-rekkefølge utføring Registeromdøping Spekulativ utføring (4.5)
3 Samlebånd og hoppinstruksjoner For å hente instruksjon tidlig, må adresse være klar Som regel: Sekvensielt Unntak: Hoppinstruksjoner (15-20%) Spesielt: Betinget (=forgreningsinstruksjoner) I1 I2 I3 I4 I5 I6 Normal sekvensiell utføring I1 I2 I3 I4 I5 I6 I15 I16 I17 Effekt av betinget hoppinstruksjon
4 Effekt av betinget hoppinstr.
5 Kodeeksempel BNE Else betinget hoppinstruksjon Hopp hvis i ulik 0 (Not Equal) BR Next ubetinget hoppinstruksjon Hopp alltid til Next Enkelt? Tar tid å dekode instruksjon og finne Nextadresse Vanskelig å hente rett instruksjoner inn tidlig!
6 Utsatt hoppinstruksjon I Hent Instr. E Utfør D - Hovedlager Setter inn NOOP (gjør ingenting) etter ubetinget hoppinstruksjon Slipper dermed å tømme samlebånd Enkelt, men ikke effektivt Fjerner NOOP og bytter rekkefølge. Utfører alltid instruksjon etter hoppinstr. Mer effektivt, men mer komplisert
7 Forgreningspredikering?? Gjett hvilken målinstruksjon som kommer til å bli valgt av betinget hoppinstruksjon og hent denne Gjette-teknikker : Statiske: Tar ikke hensyn til programhistorie Dynamiske: Ser på hva programmet har gjort tidligere Veldig mye brukt
8 Statisk FP Aldri anta hopp Alltid anta hopp Studier viser at dette er mer enn 50% riktig Gjett basert på type forgreningsinstruksjon Eks: BNE hopper alltid, BEQ hopper aldri Korrekthet på mer enn 75% rapportert Gjett basert på hoppretning Eks: Anta hopp bakover, anta aldri hopp fremover Hint fra kompilator (f.eks. ved løkker)
9 DFP: Bruk av 1 historiebit (1/2) Når ny betinget hoppinstruksjon blir utført Bruk 1 bit til å lagre om det ble hopp eller ikke Neste gang: Anta at det samme vil skje Hvis rett: Gjett det samme neste gang også Hvis feil: Bytt gjetting
10 DFP: Bruk av 1 historiebit (2/2) I1: i=0 I2: I5: i=i+1 I6: if i < 5 jump I2 I7:... Anta at vi starter i tilstand Predict not taken To gale gjettinger: Første gjennomløp (gjetter ikke hopp) Når i = 5 (gjetter hopp)
11 DFP: Lagring av historiebits Tabell over betingede hoppinstruksjoner som er utført Organisert på adresse Ser på historiebits for å gjette, oppdaterer etter utføring
12 DFP: Bruk av 2 historiebits Endrer ikke gjett på bakgrunn av bare en feilpred. Fungerer litt bedre på eksempelkode I1: i=0 I2: I5: i=i+1 I6: if i < 5 jump I2 I7:...
13 DFP: Bruk av historietabell For enkelte hoppinstr. kjenner man ikke måladr. før operandene er klare. Hva om vi bufrer måladr.? Historietabell ADD k, l 102 CMP k, i 103 BNE CMP m, BEQ Adresse Måladr Historiebits Hopp Ikke hopp
14 Superskalaritet Et samlebånd er bra, flere er enda bedre! Eksempel Henter to instruksjoner om gangen Dupliserer steg 2-5 Har dermed opptil 10 instruksjoner under utføring Figuren tilsvarer ca. den første Pentium-prosessoren
15 Problemer ved superskalaritet Ikke alt kan utføres i parallell I1: R3 = R3 * R5 I2: R4 = R3 + 1 ;Trenger resultatet fra I1 Resultatet må bli lik sekvensiell utføring Forskjellige begrensninger på parallellitet: Sanne dataavhengigheter Les-etter-skriv (RAW) Utavhengigheter Skriv-etter-skriv (WAW) Antiavhengigher Skriv-etter-les (WAR) Ressurskonflikter (Hoppinstruksjoner)
16 Sanne dataavhengigheter Eksempel: I1: R3 = R3 * R5 I2: R4 = R3 + 1 En instruksjon trenger resultatet av en tidligere Også et problem ved vanlige samlebånd
17 Utavhengigheter Skriv-etter-skriv (WAW) Eksempel: I1: R3 = R3 * R5 I2: R4 = R3 + 1 I3: R3 = R5 + 1 I4: R7 = R3 * R4 I3 må fullføre etter I1 for at R3 skal bli rett Bare et problem dersom to instruksjoner skriver resultat samtidig eller ute av rekkefølge
18 Antiavhengigheter Skriv-etter-les (WAR) Eksempel: I1: R3 = R3 * R5 I2: R4 = R3 + 1 I3: R3 = R5 + 1 I4: R7 = R3 * R4 I2 må lese R3 før verdien blir overskrevet av I3 Bare et problem hvis en instruksjon skriver resultat før en tidligere får lest operander
19 Dagens oppgave Finn: Sanne dataavh. (RAW) Utavhengigheter (WAW) Antiavhengigheter (WAR) Program: I1: R3 = R0 * R1 I2: R4 = R0 + R2 I3: R5 = R0 + R1 I4: R6 = R1 + R4 I5: R7 = R1 * R2 I6: R1 = R0 R2 I7: R3 = R3 * R1 I8: R1 = R4 + R4
20 Ressurskonflikter Flere instruksjoner ønsker å bruke samme ressurs Eksempel (gitt kun en ALU): I1: R4 = R2 + 1 I2: R5 = R3 + 1 Ressurser: Lager, hurtigbuffer, busser, registre... Løsning: Vent eller dupliser ressurs
21 Scoreboard Avhengigheter gjør at prosessor av og til må vente. Hvordan skal den finne ut når? Scoreboard: Oversikt over instruksjoner under utføring og bruk av registre Vent med ny instruksjon hvis: Operand skrives av en aktiv instr. (RAW) Resultat skrives av en aktiv instr. (WAW) Resultat leses av en aktiv instr. (WAR)
22 Scoreboard: Eksempel Program: I1: R3 = R0 * R1 I2: R4 = R0 + R2 I3: R5 = R0 + R1 I4: R6 = R1 + R4 I5: R7 = R1 * R2 I6: R1 = R0 R2 I7: R3 = R3 * R1 I8: R1 = R4 + R4 Eksempelprosessor: 8 registre (R0-R7) Tildeling ( issue ) skjer i rekkefølge Fullføring ( retire ) skjer i rekkefølge 2 instr. kan tildeles hver klokkesyklus Addisjon/subtraksjon tar 2 klokkesykler, multiplikasjon tar 3
23
24 Ut-av-rekkefølge utføring Må instruksjoner utføres i programrekkefølge? I1: R1 = R2 + R3 I2: R4 = R1 + R6 I3: R7 = R8 + R9 Endring av rekkefølge kan bedre ytelse Endring av tildeling oppstart av utførsel Endring av fullføring tilbakeskriving av resultat Gir upresise avbrudd. Hvor skal vi returnere? Derfor ofte bare ut-av-rekkefølge tildeling Eneste krav: Resultatet må bli riktig!
25 Registeromdøping (1/2) Ut- og Anti-avhengigheter egentlig ressurskonflikter To instruksjoner ønsker å bruke samme register Ressurskonflikter løses ved duplisering Prosessoren har flere registre enn de som er synlig Dynamisk allokering Hver gang et register skrives til, bytter prosessor register Men: Hjelper ikke mot sanne dataavhengigheter! R3 = R3 * R5 R4 = R3 + 1 R3 = R5 + 1 R7 = R3 * R4 R3 = R3 * R5 R4 = R3 + 1 S1 = R5 + 1 R7 = S1 * R4
26 Registeromdøping (2/2) Program (gammel): I1: R3 = R0 * R1 I2: R4 = R0 + R2 I3: R5 = R0 + R1 I4: R6 = R1 + R4 I5: R7 = R1 * R2 I6: R1 = R0 R2 I7: R3 = R3 * R1 I8: R1 = R4 + R4 Program (ny): I1: R3 = R0 * R1 I2: R4 = R0 + R2 I3: R5 = R0 + R1 I4: R6 = R1 + R4 I5: R7 = R1 * R2 I6: S1 = R0 R2 I7: R3 = R3 * S1 I8: S2 = R4 + R4
27 Ut-av-rekkefølge tildeling & Ut-av-rekkefølge fullføring
28 Ut-av-rekkefølge og hoppinstr. Har sett: Endring av rekkefølge kan øke ytelse Avhengigheter begrenser endringsmuligheter Men hva med betingede hoppinstruksjoner? I1: IF R2 < 10 JUMP I7 I2: R3 = R3 + R1 Kan I2 utføres før I1? Så langt: Nei, bare bytting innenfor basic blocks Basic block: Kode til og med hoppinstruksjon
29 Basic blocks
30 Spekulativ utføring Opprinneligprogram: I1: <instr1> I2: <instr2> I3: load r1, X I4: add r3 = r1, r4 Ønsket program: I1: load r1, X I2: <instr1> I3: <instr2> I4: add r3 = r1, r4 Anta at henting fra hovedlager tar to sykler Bytter for å unngå forsinkelse Hva hvis <instr2> er en betinget hoppinstr.? Ikke sikkert at load skal utføres! Hva hvis load gir en exception? Spekulativ utføring av load
31
Fakultet for informasjonsteknologi, Oppgave 1 Flervalgsspørsmål ( multiple choice ) 15 %
Side 1 av 10 NTNU Norges teknisk-naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Løsningsforslag til
DetaljerForelesning 1.11. Optimalisering av μark Kap 4.4
TDT4160 Datamaskiner Grunnkurs Forelesning 1.11 Optimalisering av μark Kap 4.4 Dagens tema Optimalisering av μark (4.4) Instruction Fetch Unit Mic-2 Samlebånd Mic-3 Instruksjonskø Mic-4 Optimalisering
DetaljerEKSAMENSOPPGAVE I FAG TDT4160 DATAMASKINER GRUNNKURS. D: Ingen trykte eller håndskrevne hjelpemiddel tillatt. Bestemt, enkel kalkulator tillatt.
Side 1 av 8 Norges teknisk-naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap EKSAMENSOPPGAVE I FAG TDT4160 DATAMASKINER GRUNNKURS Faglig kontakt under eksamen: Jon Olav
DetaljerFakultet for informasjonsteknologi, Oppgave 1 Flervalgsspørsmål ( multiple choice ) 15 %
Side 1 av 9 NTNU Norges teknisk-naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap Løsningsforslag til eksamen
DetaljerForelesning Instruksjonstyper Kap 5.5
TDT4160 Datamaskiner Grunnkurs Forelesning 22.11 Instruksjonstyper Kap 5.5 Dagens tema Instruksjonstyper (5.5) Datatransport Datamanipulering Betingede hoppinstruksjoner Prosedyrekall Løkker I/O Eksempler
DetaljerOppgave 1 Flervalgsspørsmål ( multiple choice ) 15 %
Side 2 av 9 Oppgave 1 Flervalgsspørsmål ( multiple choice ) 15 % Denne oppgaven skal besvares på eget svarark sist i oppgavesettet. Dersom du finner flere alternativer som synes å passe, setter du kryss
DetaljerTDT4160 OG IT2201 DATAMASKINER GRUNNKURS EKSAMEN
Norwegian University of Science and Technology Faculty of Information Technology, Mathematics and Electrical Engineering The Department of Computer and Information Science TDT4160 OG IT2201 DATAMASKINER
DetaljerForelesning ISA-nivået Kap 5.1
TDT4160 Datamaskiner Grunnkurs Forelesning 10.11 ISA-nivået Kap 5.1 Dagens tema Instruksjonssettarkitektur (5.1) Hva er ISA? Bakoverkompatibilitet Hva omfatter ISA? Minnemodeller Registre Instruksjoner
DetaljerLøsningsforslag eksamen TDT4160 høsten 2005
Løsningsforslag eksamen TDT4160 høsten 005 NB! Ved en feil er summen av prosentvektene for alle oppgavene 90 % og ikke 100 %. For å korrigere dette, ble alle resultater delt på 0,9. Oppgave 1 Alternativ
DetaljerTDT4160 Datamaskiner Grunnkurs 2008. Gunnar Tufte
1 TDT4160 Datamaskiner Grunnkurs 2008 Gunnar Tufte 2 Auka yting 3 Auka yting CPU 4 Parallellitet Essensielt for å øke ytelse To typer: 1) Instruksjonsnivåparallellitet Fleire instruksjonar utføres samtidig
DetaljerAVSLUTTENDE EKSAMEN I. TDT4160 Datamaskiner Grunnkurs Løsningsforslag. Torsdag 29. November 2007 Kl. 09.00 13.00
Side 1 av 13 NTNU Norges teknisk-naturvitenskapelige universitet BOKMÅL Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap AVSLUTTENDE EKSAMEN
DetaljerForelesning Adresseringsmodi Kap 5.4
TDT4160 Datamaskiner Grunnkurs Forelesning 21.11 Adresseringsmodi Kap 5.4 Dagens tema Adresseringsmodi (5.4) Hva? Gjennomgang av 6 forskjellige modi Bruk av stakk Eksempler Repetisjon: Instruksjonsformat
DetaljerForelesning 15.11. Datatyper Kap 5.2 Instruksjonsformat Kap 5.3 Flyttall App B
TDT4160 Datamaskiner Grunnkurs Forelesning 15.11 Datatyper Kap 5.2 Instruksjonsformat Kap 5.3 Flyttall App B Dagens tema Datatyper (5.2) Heltall Ikke-numeriske datatyper Instruksjonsformat (5.3) Antall
DetaljerFortsetelse Microarchitecture level
1 Fortsetelse Microarchitecture level IJVM 2 Implementasjon Detaljar for å utføre instruksjonssettet Ein gitt implementasjon har ein gitt yting Endre ytinga Teknologi (prosess) Transistor implementasjon
DetaljerDagens temaer. tema er hentet fra kapittel 4.3 og 4.4 om pipelining. til neste ukes forelesning (hvis tid) INF ! Mikrokode. !
agens temaer! agens! Mer tema er hentet fra kapittel 4.3 og 4.4 om pipelining! Ytelse! Hasarder! Mikrokode! Hard-wired! Mikroprogrammert! RISC! Introduksjon og CISC! ordeler og ulemper til neste ukes forelesning
DetaljerIntel Core i7. Omid Mirmotahari 4
INF2270 Pipeline Hovedpunkter Oppsummering av én-sykel implementasjon Forbedring av én-sykel designet Introduksjon til pipelining Oppbygning av datapath med pipelining Intel Core i7 Omid Mirmotahari 4
DetaljerIN1020. Datamaskinarkitektur
IN1020 Datamaskinarkitektur Hovedpunkter Von Neumann Arkitektur BUS Pipeline Hazarder Intel Core i7 Omid Mirmotahari 4 Von Neumann Arkitektur John von Neumann publiserte i 1945 en model for datamaskin
DetaljerTDT4160 Datamaskiner Grunnkurs Gunnar Tufte
1 TDT4160 Datamaskiner Grunnkurs 2011 Gunnar Tufte 2 Kapittel 4: Microarchitecture level 3 Auka yting IJVM 4 IJVM: MicrArch vs Instruction Set Architecture Instruksjonsset: Minnemodell: MIC 1 MIC 2 ISA
DetaljerEKSAMEN I TDT4160 DATAMASKINER GRUNNKURS
Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Side 1 av 12 Faglig kontakt under eksamen: Magnus Jahre (952 22 309) EKSAMEN I TDT4160 DATAMASKINER GRUNNKURS
DetaljerAVSLUTTENDE EKSAMEN I. TDT4160 Datamaskiner Grunnkurs. Torsdag 29. November 2007 Kl. 09.00 13.00
Side 1 av 11 NTNU Norges teknisk-naturvitenskapelige universitet BOKMÅL Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap AVSLUTTENDE EKSAMEN
DetaljerForelesning ISA: IJVM Kap 4.2
TDT4160 Datamaskiner Grunnkurs Forelesning 27.10 ISA: IJVM Kap 4.2 Dagens tema Repetisjon: ISA vs. mikroarkitektur ISA: IJVM (4.2) Lagring av lokale variable Minnemodell Instruksjonssett Metodekall Kompilering
DetaljerOverordnet maskinarkitektur. Maskinarkitektur zoomet inn. I CPU: Kontrollenheten (CU) IT1101 Informatikk basisfag, dobbeltime 11/9
IT1101 Informatikk basisfag, dobbeltime 11/9 Hittil: sett på representasjon av informasjon og manipulering av bits i kretser Idag: hever oss til nivået over og ser på hvordan program kjører i maskinen
DetaljerTDT4160 AUGUST, 2008, 09:00 13:00
Norwegian University of Science and Technology Faculty of Information Technology, Mathematics and Electrical Engineering The Department of Computer and Information Science TDT4160 DATAMASKINER GRUNNKURS
DetaljerPensumoversikt - kodegenerering. Kap. 8 del 1 kodegenerering INF5110 v2006. Hvordan er instruksjonene i en virkelig CPU? Arne Maus, Ifi UiO
Pensumoversikt - kodegenerering Kap. 8 del 1 kodegenerering INF5110 v2006 Arne Maus, Ifi UiO 8.1 Bruk av mellomkode 8.2 Basale teknikker for kodegenerering 8.3 Kode for referanser til datastrukturer (ikke
DetaljerTDT4160 Datamaskiner Grunnkurs Gunnar Tufte
1 TDT4160 Datamaskiner Grunnkurs 2011 Gunnar Tufte 2 Kapittel 4: Microarchitecture level 3 Ny Arkitektur: IJVM 4 Instruksjonsett Stack basert 5 Mikroprogramm 0001010010000000000000111 001111000000010000001000
DetaljerTDT4160 Datamaskiner Grunnkurs 2011. Gunnar Tufte
1 TDT4160 Datamaskiner Grunnkurs 2011 Gunnar Tufte 2 Bussar og busshierarki Tape Optical Bus 3 CPU og buss komunikasjon Tape Optical Bus 4 Buss linjer Bus Adr/data Bit 0 Adr/data Bit 1 Adr/data Bit 2 Adr/data
DetaljerIntroduksjon til DARK assembly
Introduksjon til DARK assembly Magnus Jahre Institutt for datateknikk og informasjonsvitenskap 2 Plan Assembly vs. Java Dark stakkmaskin Oversikt over stakkmaskinen Dark stakkmaskin eksempel Dark Load-Store
DetaljerTDT4160 Datamaskiner Grunnkurs 2008. Gunnar Tufte
1 TDT4160 Datamaskiner Grunnkurs 2008 Gunnar Tufte 2 I dag Kva er inni 8051, P4 og UltraSparc Digital logic level (start kapitel 3) VIKTIG MELDING Alle som har brukt NTNU-passord for AoC pålogging må skifte
DetaljerDagens tema. Dagens tema er hentet fra kapittel 4.3 og 4.4. Mer om pipelining Ytelse Hasarder. Pipelining i Pentium-arkitekturen
Dagens tema Dagens tema er hentet fra kapittel 4.3 og 4.4 Mer om pipelining Ytelse Hasarder Pipelining i Pentium-arkitekturen Mikrokode Hard-wired Mikroprogrammert RISC og CISC Fordeler og ulemper 1/41
DetaljerLøsningsforslag til øving 5 TFE4105 Digitalteknikk og Datamaskiner Høsten 2006
Løsningsforslag til øving 5 TFE4105 Digitalteknikk og Datamaskiner Høsten 2006 Oppgave 1 Papirsimulering av utførende enhet Styreordsekvens Registeroperasjon 011 011 001 0 0010 0 1 R3 R3 + R1 ; R3 = 01100111
DetaljerTDT4160 DATAMASKINER GRUNNKURS EKSAMEN
Norwegian University of Science and Technology Faculty of Information Technology, Mathematics and Electrical Engineering The Department of Computer and Information Science TDT4160 DATAMASKINER GRUNNKURS
DetaljerTDT4160 Datamaskiner Grunnkurs Gunnar Tufte
1 TDT4160 Datamaskiner Grunnkurs 2011 Gunnar Tufte 2 Kapittel 4: Microarchitecture level 3 Kapittel 4: Microarchitecture level Nivå mellom Under Instruction Level Architecture (ISA) Over Digital logic
Detaljer4/5 store parallelle maskiner /4 felles hukommelse in 147, våren 1999 parallelle datamaskiner 1. når tema pensum.
Parallellitet når tema pensum 27/4 felles hukommelse 9.2 9.3 4/5 store parallelle maskiner 9.4 9.6 in 147, våren 1999 parallelle datamaskiner 1 Tema for denne forelesningen: kraftigere enn én prosessor
DetaljerDagens temaer. Fra kapittel 4 i Computer Organisation and Architecture. Kort om hurtigminne (RAM) Organisering av CPU: von Neuman-modellen
Dagens temaer Fra kapittel 4 i Computer Organisation and Architecture Kort om hurtigminne (RAM) Organisering av CPU: von Neuman-modellen Register Transfer Language (RTL) Instruksjonseksekvering Pipelining
DetaljerForelesning 3.11. Hurtigbuffer Kap 4.5
TDT4160 Datamaskiner Grunnkurs Forelesning 3.11 Hurtigbuffer Kap 4.5 Dagens tema Hurtigbuffer (4.5) Repetisjon: Hva, hvorfor og hvordan Avbildning Skriveoperasjoner Hurtigbuffer ( cache ): Hvorfor? Hurtigbuffer:
DetaljerForelesning 5. Diverse komponenter/større system
Forelesning 5 Diverse komponenter/større system Hovedpunkter Komparator Dekoder/enkoder MUX/DEMUX Kombinert adder/subtraktor ALU En minimal RISC - CPU 2 Komparator Komparator sammenligner to 4 bits tall
DetaljerOppgaver til kodegenerering etc. INF-5110, 16. mai, 2014
Oppgaver til kodegenerering etc. INF-5110, 16. mai, 2014 Oppgave 1: Vi skal se på koden generert av TA-instruksjonene til høyre i figur 9.10 i det utdelte notatet, side 539 a) Se på detaljene i hvorfor
DetaljerKap. 8 del 1 kodegenerering INF5110 Vår2007
Kap. 8 del 1 kodegenerering INF5110 Vår2007 Stein Krogdahl, Ifi UiO Forelesninger framover: Tirsdag 8. mai: Vanlig forelesning Torsdag 10. mai: Ikke forelesning Tirsdag 15. mai: Vanlig forelesning (siste?)
DetaljerITPE/DATS 2400: Datamaskinarkitektur og Nettverk
ITPE/DATS 2400: Datamaskinarkitektur og Nettverk Forelesning 9: Instruksjonsettarkitektur 3 Knut H. Nygaard / T. M. Jonassen Institute of Computer Science Faculty of Technology, Art and Design Oslo and
DetaljerTDT4160 DATAMASKINER GRUNNKURS EKSAMEN
Norwegian University of Science and Technology Faculty of Information Technology, Mathematics and Electrical Engineering The Department of Computer and Information Science TDT4160 DATAMASKINER GRUNNKURS
DetaljerDagens temaer. Dagens emner er hentet fra Englander kapittel 10 (side ) Mer om adresseringsmodi. RISC og CISC-prosessorer.
agens temaer agens emner er hentet fra nglander kapittel 10 (side 279-318 ) Mer om adresseringsmodi RISC og CISC-prosessorer Pipelining Skalare og superskalare prosessorer 26.09.03 IN 103 1 Mer om adresseringsmodi
DetaljerNORGES TEKNISK- NATURVITENSKAPELIGE UNIVERSITET INSTITUTT FOR DATATEKNIKK OG INFORMASJONSVITENSKAP
Side 1 av 13 NORGES TEKNISK- NATURVITENSKAPELIGE UNIVERSITET INSTITUTT FOR DATATEKNIKK OG INFORMASJONSVITENSKAP Faglig kontakt under eksamen: Institutt for datateknikk og informasjonsvitenskap, Gløshaugen
Detaljertema er hentet fra kapittel 4.3 og 4.4 om pipelining Mikroprogrammert Dagens temaer Hard-wired Mikrokode Hasarder Ytelse
Dagens temaer 1 Dagens Mer tema er hentet fra kapittel 4.3 og 4.4 om pipelining Ytelse Pipelining Hasarder i Pentium-arkitekturen Mikrokode Hard-wired RISC Mikroprogrammert og CISC Fordeler og ulemper
DetaljerTDT4160 Datamaskiner Grunnkurs 2008. Gunnar Tufte
1 TDT4160 Datamaskiner Grunnkurs 2008 Gunnar Tufte 2 Dagens forelesing Kapittel 1 Datamaskinsystem Kapittel 2 start 3 Gunnar Fakta Datamaskingruppa Biologisk inspirerte system: Unconvential Computing Machines
DetaljerDagems temaer. kapittel 4 i Computer Organisation and Architecture. av CPU: von Neuman-modellen. Transfer Language (RTL) om hurtigminne (RAM)
Dagems temaer Fra Kort Organisering Register kapittel 4 i Computer Organisation and Architecture om hurtigminne (RAM) av CPU: von Neuman-modellen Transfer Language (RTL) Instruksjonseksekvering Pipelining
DetaljerNORGES TEKNISK- NATURVITENSKAPELIGE UNIVERSITET INSTITUTT FOR DATATEKNIKK OG INFORMASJONSVITENSKAP
Side 1 av 11 NORGES TEKNISK- NATURVITENSKAPELIGE UNIVERSITET INSTITUTT FOR DATATEKNIKK OG INFORMASJONSVITENSKAP Faglig kontakt under eksamen: Institutt for datateknikk og informasjonsvitenskap, Gløshaugen
DetaljerINF1400 Kap4rest Kombinatorisk Logikk
INF4 Kap4rest Kombinatorisk Logikk Hovedpunkter Komparator Dekoder/enkoder MUX/DEMUX Kombinert adder/subtraktor ALU FIFO Stack En minimal RISC - CPU Komparator Komparator sammenligner to tall A og B 3
Detaljer! Sentrale begreper er adresserbarhet og adresserom. ! Adresserbarhet: Antall bit som prosessoren kan tak samtidig i én operasjon
agems temaer Oppbygging av RAM! ra kapittel i Computer Organisation and Architecture! Kort om hurtigminne (RAM)! Organisering av CPU: von Neuman-modellen! Register Transfer Language (RTL)! Instruksjonseksekvering!
DetaljerDagems temaer INF ! Fra kapittel 4 i Computer Organisation and Architecture. ! Kort om hurtigminne (RAM)
Dagems temaer! ra kapittel 4 i Computer Organisation and Architecture! Kort om hurtigminne (RAM)! Organisering av CPU: von Neuman-modellen! Register Transfer Language (RTL)! Instruksjonseksekvering! Pipelining
DetaljerEKSAMEN I TDT4160 DATAMASKINER GRUNNKURS
Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Side 1 av 18 Faglig kontakt under eksamen: Magnus Jahre (952 22 309) EKSAMEN I TDT4160 DATAMASKINER GRUNNKURS
Detaljer! Repetisjon: ! Forutsetinger: ! Ideelt sett gir en k-trinns pipeline en faktor k i hastighetsøkning. ! Benyttes derimot ekte pipelining, behøves
agens temaer er om pipeling! agens! er tema er hentet fra kapittel 4.3 og 4.4 om pipelining! Ytelse! Hasarder! ikrokode! RISC! Introdksjon! Hard-wired! ikroprogrammert og CISC! ordeler og lemper til neste
DetaljerIntel Core i7. Omid Mirmotahari 4
INF2270 Pipeline Hovedpunkter Oppsummering av én-sykel implementasjon Forbedring av én-sykel designet Introduksjon til pipelining Oppbygning av datapath med pipelining Intel Core i7 Omid Mirmotahari 4
DetaljerFortsetelse Microarchitecture level
1 Fortsetelse Microarchitecture level 2 Kva kan datamaskiner (frå 1. forelesing) Aritmetiske Logiske funksjonar Flytte data frå ein plass til ein anna Test er eit tal 0? Gjere desse operasjonane FORT Berekne
DetaljerOppgaver til kodegenerering etc. INF-5110, 12. mai, 2015
Oppgaver til kodegenerering etc. INF-5110, 12. mai, 2015 Oppgave 1: Vi skal se på koden generert av TA-instruksjonene til høyre i figur 9.10 i det utdelte notatet, side 539 a) (repetisjon fra forelesningene)
DetaljerForelesning Mikroprogram for IJVM Kap 4.3
TDT4160 Datamasiner Grunnurs Forelesning 31.10 Miroprogram for IJVM Kap 4.3 Dagens tema Repetison: IJVM Miroaritetur IJVM-Instrusoner Registerbru Miroprogram for IJVM (4.3) Micro Assembly Language (MAL)
Detaljerhvor mye hurtigminne (RAM) CPU en kan nyttiggjøre seg av. mens bit ene betraktet under ett kalles vanligvis et ord.
Oppbygging av RAM Sentrale begreper er adresserbarhet og adresserom Adresserbarhet: Antall bit som prosessoren kan tak samtidig i én operasjon (lese- eller skrive-operasjon). 9.. INF Antall bit som kan
DetaljerOppsummering Assemblerkode Hopp Multiplikasjon Kode og data Array Oppsummering
Uke 34 Uke 35 Uke 36 Uke 37 Uke 38 Uke 39 Uke 40 Uke 41 Uke 42 Uke 43 Uke 44 Uke 45 Uke 46 Uke 47 sikkerhet datanett programvare digitale kretser Prosessoren II Kort oppsummering Løkker og tester Mer om
DetaljerDatamaskinens virkemåte
Geir Ove Rosvold 6. januar 26 Opphavsrett: Forfatter og Stiftelsen TISIP Resymé: I denne leksjonen ser vi på den grunnleggende virkemåten til en datamaskin. Vi ser på de forskjellige delene - blant annet
DetaljerDen siste dagen. Pensumoversikt Hovedtanker i kurset Selvmodifiserende kode Overflyt Veien videre... Eksamen
Den siste dagen Pensumoversikt Hovedtanker i kurset Selvmodifiserende kode Overflyt Veien videre... Eksamen En oppsummering Oppsummering Pensum Læreboken til og med kapittel 7, kompendiet, forelesningene
DetaljerTDT4160 DATAMASKINER GRUNNKURS EKSAMEN
Norwegian University of Science and Technology Faculty of Information Technology, Mathematics and Electrical Engineering The Department of Computer and Information Science TDT4160 DATAMASKINER GRUNNKURS
DetaljerEn oppsummering (og litt som står igjen)
En oppsummering (og litt som står igjen) Pensumoversikt Hovedtanker i kurset Selvmodifiserende kode Overflyt Eksamen En oppsummering Oppsummering Pensum læreboken til og med kapittel 7 forelesningene de
DetaljerDagens tema: Enda mer MIPS maskinkode
Dagens tema: Enda mer MIPS maskinkode (P&H: 3.6 3.8 + 6.1 + A.6 + A.10) Pseudoinstruksjoner Flere instruksjoner Mer om funksjonskall Stakken Avhengigheter Direktiver Alt er bit! Kommunikasjon med C Ark
DetaljerSIE 4005, 9/10 (4. Forelesn.)
SIE 4005, 9/10 (4. Forelesn.) Tredje forelesning: 8.1 The control unit 8.2 Algorithmic state machines 8.3 Design example: Binary multiplier 8.4 Hardwired Control Fjerde forelesning: litt repetisjon 8.4
DetaljerDagens temaer. Mer om adresseringsmodi. Indeksert adressering med offset og auto-inkrement eller dekrement. Register-indirekte adressering
agens temaer Mer om adresseringsmodi LC-2 har fem adresseringmodi : Umiddelbar, Register, irekte, Indirekte og Base+Offset. agens emner er hentet fra nglander kapittel 10 (side 279-318 ) Mer om adresseringsmodi
DetaljerTDT4110 IT Grunnkurs Høst 2016
TDT4110 IT Grunnkurs Høst 2016 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Auditorieøving 1 Vennligst fyll ut følgende informasjon i blokkbokstaver
DetaljerPensum Hovedtanker Selvmodifiserende Overflyt Veien videre Eksamen. Oppsummering
Oppsummering Pensum Grovt sett er alt fra forelesningene og øvingsoppgavene pensum. Detaljert oversikt finnes på kurssidene. Hovedtanker fra kurset Litt om eksamen Hvorfor har dere lært dette? Ikke mange
DetaljerTDT4160 Datamaskiner Grunnkurs 2011. Gunnar Tufte
1 TDT4160 Datamaskiner Grunnkurs 2011 Gunnar Tufte 2 Lager 2.1 2.2 Hard disc Tape storage RAM Module Optical disc Register bank Core memory 3 Ein-prosessor maskin 4 Lager og prosessor overordna Tape Optical
DetaljerTDT4105 IT Grunnkurs Høst 2016
TDT4105 IT Grunnkurs Høst 2016 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Auditorieøving 1 Vennligst fyll ut følge informasjon i blokkbokstaver Navn:
DetaljerNorsk informatikkolympiade runde. Sponset av. Uke 46, 2016
Norsk informatikkolympiade 2016 2017 1. runde Sponset av Uke 46, 2016 Tid: 90 minutter Tillatte hjelpemidler: Kun skrivesaker. Det er ikke tillatt med kalkulator eller trykte eller håndskrevne hjelpemidler.
DetaljerTDT4258 Eksamen vår 2013
Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Side 1 av 8 TDT4258 Eksamen vår 2013 Løsningsforslag Oppgave 1 Flervalgsoppgave (16 poeng) Du får 2 poeng
DetaljerSemantikk. Dagens tema Kjøresystemer (Ghezzi&Jazayeri 2.6, 2.7) Semantikk. Semantikk. En måte å svare på: gi semantikken til språket!
agens tema Kjøresystemer (Ghezzi&Jazayeri.,.) Innledende om semantikk Operasjonell semantikk / SIMPLESEM Bokholderi og minneorganisering Forskjellige språkklasser... en beskrivelse av hva som skjer når
DetaljerTDT DESEMBER, 2008, 09:00 13:00
Norwegian University of Science and Technology Faculty of Information Technology, Mathematics and Electrical Engineering The Department of Computer and Information Science TDT4160 DATAMASKINER GRUNNKURS
DetaljerDel 4 Noen spesielle C-elementer
Del 4 Noen spesielle C-elementer 1 RR 2016 Header-filer inneholder Prototypene til funksjonene i standard biblioteket Verdier og definisjoner som disse funksjonene bruker #include #include
DetaljerKjøresystemer. Hva er et kjøresystem? Den abstrakte maskinen SIMPLESEM (2.6) Klassifisering av språk: Parametre (2.7.7) Statiske språk (
Kjøresystemer Hva er et kjøresystem? Den abstrakte maskinen SIMPLESEM (2.6) Klassifisering av språk: Statiske språk (2.7.1-2.7.2) FORTRAN, COBOL Stakk-baserte språk (2.7.3-2.7.4) ALGOL 60 Dynamiske språk
DetaljerDagens tema. Mer MIPS maskinkode. Maske-operasjoner Skift-operasjoner Lesing og skriving Pseudo-instruksjoner Mer om funksjonskall Registeroversikt
Dagens tema Mer MIPS maskinkode (P&H: 4.4 + 3.6 + 3.3 + A.6 + A.10) Maske-operasjoner Skift-operasjoner Lesing og skriving Pseudo-instruksjoner Mer om funksjonskall Registeroversikt Ark 1 av 16 Forelesning
DetaljerINF3430/4430. Funksjoner og prosedyrer Standardbiblioteker Komplekse sekvensielle systemer
INF3430/4430 Funksjoner og prosedyrer Standardbiblioteker Komplekse sekvensielle systemer 19.09.2006 Agenda Funksjoner og operatorer Prosedyrer Begrepet overload Biblioteker Package/package body Standard
DetaljerINF3430/4430. Funksjoner og prosedyrer Standardbiblioteker Komplekse sekvensielle systemer
INF3430/4430 Funksjoner og prosedyrer Standardbiblioteker Komplekse sekvensielle systemer 2005-10-26 Agenda Funksjoner og operatorer Prosedyrer Begrepet overload Biblioteker Package/package body Standard
DetaljerNORGES TEKNISK-NATURVITENSKAPELIGE UNIVERSITET INSTITUTT FOR DATATEKNIKK OG INFORMASJONSVITENSKAP
Side 1 av 9 NORGES TEKNISK-NATURVITENSKAPELIGE UNIVERSITET INSTITUTT FOR DATATEKNIKK OG INFORMASJONSVITENSKAP Faglig kontakt under eksamen: Jon Olav Hauglid, Tlf 93440 Institutt for datateknikk og informasjonsvitenskap,
DetaljerOppsummering av digitalteknikkdelen
Oppsummering av digitalteknikkdelen! Følgende hovedtemaer er gjennomgått! Boolsk Algebra! von Neuman-arkitektur! Oppbygging av CPU! Pipelining! Cache! Virtuelt minne! Interne busser 09.05. INF 1070 1 Boolsk
DetaljerTDT4160 Datamaskiner Grunnkurs 2011
1 TDT4160 Datamaskiner Grunnkurs 2011 Gunnar Tufte 2 Dagens forelesing Kven er Eg? Kva gjer eg Kva kan eg TDT4160 2011 Fagstab Førelesningar Øvingar Pensum Kapittel 1 Structured Computer Organization Historie
DetaljerOppbygningen av en datamaskin Det viktigste i en moderne datamaskin er hovedkortet («motherboard»):
Oppbygningen av en datamaskin Det viktigste i en moderne datamaskin er hovedkortet («motherboard»): Grovt sett inneholder det En prosessor Minne (for både program og data) Klokke Kontrollere for periferutstyr.
Detaljer4/2 enkel pipelining in 147, våren 1997 pipelining 1. Pipelining. når tema læreboka. 11/3 problemer
Pipelining når tema læreboka 4/2 enkel pipelining 6. 6.3 /3 problemer 6.4 6.7 in 47, våren 997 pipelining Time 6 P 7 8 9 2 2 A Task order A B C D Time 6 P 7 8 9 2 2 A Task order A B C D in 47, våren 997
DetaljerKapittel 6. Høynivå møter lavnivå Fra C til assembly Fra assembly til maskinkode Linking og lasting
Kapittel 6 Høynivå møter lavnivå Fra C til assembly Fra assembly til maskinkode Linking og lasting CISC eller RISC Komplekst eller enkelt. Hva er raskest? Pipelining Smart bruk av registre Kode for lavt
DetaljerEksamensoppgave i TDT4258 Energieffektive Datamaskinsystemer
Institutt for Datateknikk og Informasjonsvitenskap Eksamensoppgave i TDT4258 Energieffektive Datamaskinsystemer Faglig kontakt under eksamen: Magnus Jahre Tlf.: 952 22 309 Eksamensdato: 19. Mai 2014 Eksamenstid
DetaljerTDT4160 16. DESEMBER, 2013, 09:00 13:00. Norwegian University of Science and Technology Engineering The Department of Computer and Information Science
Norwegian University of Science and Technology Engineering The Department of Computer and Information Science TDT416 DATAMASKINER GRUNNKURS EKSAMEN 16. DESEMBER, 213, 9: 13: Kontakt under eksamen: Gunnar
DetaljerLøsningsforslag til eksamen i IN 147(A)
Løsningsforslag til eksamen i IN 147(A) Dag Langmyhr (oppgave 1, 4 og 6) ØysteinGranLarsen (oppgave 2, 3 og 5) 31. mai 1999 1 Oversettelse Funksjonen strxxx går gjennom en tekst og finner adresessen til
DetaljerModerne datamaskinarkitektur
Geir Ove Rosvold 4. januar 2016 Opphavsrett: Forfatter og Stiftelsen TISIP Resymé: Denne leksjonen beskriver en del moderne mekanismer som brukes til å øke ytelsen til CPU. De mekanismene som beskrives
DetaljerINF3430. Funksjoner og prosedyrer Standardbiblioteker Komplekse sekvensielle systemer
INF3430 Funksjoner og prosedyrer Standardbiblioteker Komplekse sekvensielle systemer Innhold Funksjoner og operatorer Prosedyrer Begrepet overload Biblioteker Package/package body Standard biblioteker
DetaljerØving 1: Busser, adressemodi, multiplekser og styreord
Øving 1: Busser, adressemodi, multiplekser og styreord Del 1: Busser Besvar hver enkelt oppgave ved å sette ring rundt det svaralternativet du mener er riktig. For hvert enkelt spørsmål er det kun ett
DetaljerEksamensoppgave i TDT4258 Energieffektive Datamaskinsystemer
Institutt for Datateknikk og Informasjonsvitenskap Eksamensoppgave i TDT4258 Energieffektive Datamaskinsystemer Faglig kontakt under eksamen: Magnus Jahre Tlf.: 952 22 309 Eksamensdato: 19. Mai 2014 Eksamenstid
DetaljerMaskinvaredelen av INF 103: oversikt og innhold (1)
Maskinvaredelen av INF 3: oversikt og innhold () Boolsk algebra: Regning med og, og AND, OR og NOT Analyse og design av logiske kretser: AND, OR og NOT som byggeblokker Hukommelse og sekvensiell logikk:
DetaljerNorsk informatikkolympiade runde
Norsk informatikkolympiade 2017 2018 1. runde Sponset av Uke 46, 2017 Tid: 90 minutter Tillatte hjelpemidler: Kun skrivesaker. Det er ikke tillatt med kalkulator eller trykte eller håndskrevne hjelpemidler.
Detaljerpublic static <returtype> navn_til_prosedyre(<parameter liste>) { // implementasjon av prosedyren
Prosedyrer Hensikten med en prosedyre Hensikten med en prosedyre er, logisk sett, å representere en jobb eller en funksjonalitet i et eller flere programmer. Bruk av entall er viktig: vi har generelt en
DetaljerDet viktigste i en moderne datamaskin er hovedkortet («motherboard»):
Hovedkortet Det viktigste i en moderne datamaskin er hovedkortet («motherboard»): Hovedkortet Grovt sett inneholder et hovedkort En prosessor Minne (for både program og data) Klokke Kontrollere for periferutstyr.
DetaljerDagens tema. Rask-maskinen. Rasko-kode Raskas-kode. Litt datamaskinhistorie Registre og lagre Instruksjoner
Dagens tema Dagens tema Rask-maskinen Litt datamaskinhistorie Registre og lagre Instruksjoner Rasko-kode Raskas-kode Dagens tema En overikt RusC-program x = x+1; ADD R1,R2,R1 Raskas-kode Kompilator rusc
DetaljerEn overikt. Dagens tema. Datamaskinenes historie. Rask-maskinen Litt datamaskinhistorie Registre og lagre Instruksjoner. Rasko-kode.
Dagens tema Dagens tema Dagens tema En overikt RusC-program x = x+1; ADD R1,R2,R1 Raskas-kode Rask-maskinen Litt datamaskinhistorie Registre og lagre Instruksjoner Kompilator rusc raskas Rasko-kode 401020000000001...
DetaljerKapittel 3: Digital logic level
1 Spørjetime 2008 2 Spørsmål (botn opp) Fulladder, halvadder etc Avbrudahandtering 1 Adressedekoding Generelle I/O-berekningar (rekne klokke antal bit) DMA Arbitrering IJVM (litt om alt) IJVM-mikroprogramm
DetaljerKodegenerering, del 2: Resten av Kap. 8 pluss tilleggsnotat (fra kap. 9 i ASU ) INF5110 V2007
Kodegenerering, del 2: Resten av Kap. 8 pluss tilleggsnotat (fra kap. 9 i ASU ) INF5110 V2007 Stein Krogdahl, Ifi UiO NB: Innfører noen begreper som først og fremst har mening om man skal gå videre med
Detaljerulike stegene utføres på egne hardware-enheter som ikke er instruksjon kan deles opp i sekvensielle steg som løses etterhverandre
Dagens temaer Dagens er tema er hentet fra kapittel 4.3 og 4.4 om pipelining Ytelse Pipelining Hasarder i Pentim-arkitektren ikrokode Hard-wired ikroprogrammert RISC og CISC og lemper ordeler er om pipeling
Detaljer