Föreläsningsanteckningar 5. Cacheminnen
|
|
- Axel Lindqvist
- för 6 år sedan
- Visningar:
Transkript
1 Föreläsningsanteckningar 5. Cacheminnen Olle Seger 2012 Anders Nilsson Inledning Bakgrunden till att cacheminnen behövs för nästan alla datorer är enkel. Vi kan kallt räkna med att processorn är pipelinad. Typiskt gäller detta: Processorn behöver hämta en ny instruktion varje klockcykel. Ofta behövs också en operand samtidigt. Vår dator behöver ett minne på låt oss säga 1 GB. De här kraven går inte ihop. Processorn är minst 10 gånger snabbare (hungrigare) än ett minne av den storleken. Ett cacheminne är ett litet och snabbt minne, som är placerat mellan CPU och primärminne: Grejen är att automatiskt försöka hålla de oftast använda instruktionerna/data i cacheminnet. Låt oss göra N accesser och anta följande parametrar: 1
2 Medelaccestiden ges av: minne accesstid antal accesser cache t CM N CM primär t P M N P M = N N CM t med = N CM t CM + (N N CM ) t P M N = h t CM + (1 h) t P M, där h = N CM /N kallas träffkvot eller hit ratio. Av formeln framgår att om träffkvoten närmar sig 1, så blir medelaccestiden lika med cacheminnets accestid. En typisk träffvot är 0,95. Ett cacheminne består av en styrenhet (cache controller) och ett snabbt minne: När vi accessar minnet händer följande: När datorn startar är cacheminnet tomt. Varje minnesaccess ger till att börja med en cachemiss, kopiering PM->CM. Vanligt är att vid en cachemiss kopiera flera (t ex 4) instruktioner/data till CM. Kallas en cacheline. Anledningen till att det går att få höga träffkvoter är nu följande: Program innehåller loopar => sannolikheten är stor att samma instruktion/data accessas igen (temporal lokalitet). Program/data är sekvensiella => sannolikheten är stor att också nästa instruktion/data accessas (spatial lokalitet). 2
3 2 Olika typer av cacheminnen Vi går nu direkt på några olika sätta att bygga cacheminnen. Som ett exempel tänker vi oss att primärminnet är 4 GB och att databussen är 32 bitar bred. Minnet är alltså organiserat 1G x 4B. För att adressera primärminnet behövs 32 adressledningar. Vi vill bygga ett cacheminne med storleken 4 kb. Cachelinens storlek ska vara 4 ord = 16 byte. När man resonerar runt cacheminnen, kan det hjälpa att tänka på primärminnet, som indelat i block lika med cacheminnets storlek. Vi tänker ett steg vidare och visar också cachelines: Vi slår också fast att en byte kan finnas på vilken adress som helst i minnet. Ett ord (=4 bytes) kan bara finnas på en adress, som är en multipel av 4. På samma sätt gäller att en cacheline bor på en multiplel av 16 i adressrymden. 2.1 Associativt minne Nedanstående bild visar en associativ cache. Vi har valt storleken 4kB, alltså består den av 256 identiska rader bestående av en komparator, ett tagregister och cachelinen (16 B). Efter att det första blocket i PM har besökts, finns detta i cachen (naturligvis är hela cachelinarna fyllda): 3
4 Observera att vi för varje cacheline, måste spara varifrån i minnet den kommer. Det räcker med att spara cachelinens nummer. I minnet får det plats 2 32 /2 4 = 2 28 cachelines, alltså de 28 mest signifikanta bitarna. I bilden visas de 7 mest signifikanta hex-siffrorna. Vid sökning i cacheminnet jämförs adressens 28 mest signifikanta bitar parallellt med 256 komparatorer med de sparade taggarna. Vid likhet någonstans har vi en cacheträff. Observera att till varje cacheline hör en kontrollbit: valid. Annars kan vi inte skilja på skräp och riktiga data. Vid reset (eller cachetömning) nollställs alla validbitar. 2.2 Direktmappad cache Associativt minne är ett dyrt men bra sätt att bygga cache på. 4kB-cache innehåller alltså 256 komparatorer. Fördelen är att cachelinar kan placeras var som helst i cachen. Hur det går till hoppar vi över. Nedanstående bild visar en direktmappad cache på 4kB. Den innehåller bara en komparator. För att åstadkomma detta kan inte cachelinarna placeras fritt 4
5 längre! Vi tar samma exempel som förra gången. Början på det övre blocket har besökts. Det bör påpekas att ovanstående är bara en metod att bygga en cache med endast en komparator. Hur har det gått till? Vi bestämmer oss för detta: en cacheline från minnet ska placeras på samma relativa position i cacheminnet som i blocket! Denna position (rad) brukar kallas index. Vi gör en formel av detta. (A = adress, CL = cachelinens storlek, CM = cacheminnets storlek) index = (A mod CM)/CL = (A mod 2 12 )/2 4 och taggen är helt enkelt blocknumret och ges av tag = A/CM = A/2 12 5
6 Cachelinen som börjar på adressen 0x ska alltså placeras på index = 0x67 med tag = 0x Vi inser då att cachelinar på adresserna 0xzzzzz670 (z=godtycklig hex-siffra) får samma index. Detta är nackdelen med en-komparatormetoden. 2.3 Flervägscache Den enklaste metoden att råda bot på detta är att helt enkelt duplicera cacheminnet: Detta är en 4-vägs cache på 16 kb. Vid en cachemiss, så hämtas ett data och vi har nu ett val. Vilken av de 4 cachelinarna kommer att bli öveskriven. Vi behöver en så kallad replacement algorithm. En vanlig sådan är LRU=least recently used. Den brukar beskrivas så här. Till varje cacheline hör en liten räknare (kanske 3 bitar). Denna används för att jämföra de 4 cachelinarna med samma index. Detta är ett tänkbart scenario: cache hit: max->cntr 6
7 cache miss: välj cacheline med minst cntr. Fyll på. max->cntr inget: räkna ner alla cntr (aging, dock inte på varje cp) Ovanstående är den vanligaste cachetypen. Givet en viss cachestorlek t ex 16 kb, visar det sig vara bättre att organisera den som 4x4 kb istf 1x16 kb. 2.4 BPT = Branch Prediction Table BPT avser att få bort den förtretliga NOP-en vid ett taget hopp. Betrakta vår dator med en installerad BPT: En BPT, består av ett associativt minne och en styrenhet. I det associativa minnet lagras information om hoppinstruktioner i programmet: hoppets adress, var finns hoppet. hoppadressen, vart hoppar hoppet. 7
8 hoppstatistik. Med exempelvis 2 bitar, kan vi hålla reda på om hoppet är: Strongly Taken (ST), Taken (T), Not Taken (NT) eller Strongly Not Taken (SNT). En styrenhet lyssnar på programflödet och uppdaterar bitarna. Vi antar nu att vi har kört några varv i loopen, så att hoppet finns noterat i BPT. Ännu så länge har hoppet utförts varje gång, så hoppstatistiken säger ST. Vi ser nu att när PC har blivit 24 och hoppet ska hämtas ur programminnet så kan samtidigt PC få värdet 10. Detta är en chansning (prediktering). Någon klockcykel senare får vi reda på om chansningen var korrekt. Om så är fallet är det bara och köra på och vi har vunnit en klockcykel (den där NOP-en). Om inte måste en felaktigt inhämtad instruktion ersättas med NOP. Vi tar en lite närmare titt på detta påstående med ett pipelinediagram. Vi inför ett nytt register SPC = sparad PC. Vi kör detta program som en test. Vi antar att BPT falskeligen predikterar och skissar på vad som händer. LOOP: 10: ZZZ 14: VVV 18: WWW 1C: ADDI R1,R1,1 20: SFEQ R1,R2 24: BF LOOP 28: XXX 2C: YYY PC IR1 IR2 IR3 IR4 Kommentar 24 SFEQ ADDI - - Använd BPT och 10->PC, PC+4 ->SPC 10 BF SFEQ ADDI - Hoppet redan verkställt. 14 ZZZ BF SFEQ ADDI Låt F=0. Fel chansat! SPC-> PC 28 NOP NOP BF SFEQ Vi får stopp på ZZZ,VVV. Sätt hoppstatistik = T. 2C XXX NOP NOP BF Vi är på rätt spår Vi konstaterar efter denna (långt ifrån fullständiga) undersökning: Rätt prediktering. Vinst av två klockcykler. Instruktionen XXX går inte in i pipelinen och någon NOP behövs inte alls. Fel prediktering. Förlust av två klockcykler. Så länge rätt prediktioner överväger vinner vi på att koppla in en BPT. 8
9 2.5 Separata I- och D-cachar Slutligen visar vi denna koppling, som är mycket vanlig. Instruktions- och dataminnena har bytts ut mot cacheminnen. Dessa båda cacheminnen kommunicerar över en gemensam buss mot primärminnet. Vi konstaterar följande: Vid cachemiss i I-cache eller D-cache måste pipelinen stoppas. Båda cacharna använder en gemensam buss mot minnet. Samtidig miss i I-cache och D-cache, innebär påfyllning av en cache i taget. Pipelinen fryst hela tiden. I D-cachen tillkommer en frågeställning: hur ska skrivning mot minnet hanteras. Två taktiker brukar nämnas i litteraturen: 9
10 write-thru. Vid skrivning mot cacheminnet uppdateras även primärminnet. write-back. Uppdateringen av primärminnet sker endast när en cacheline kommer att skrivas över. En extra kontrollbit, dirty, håller reda på om cachelinen ändrats. Endast då måste en skrivning ske. Referenser [1] Josefsson M. (2008): Föreläsningsunderlag TSEA49 Datorteknik D del 2, LiU-tryck. 10
Föreläsning 5 1 CPI Sammanfattning pipelining Cacheminnen
Föreläsning 5 1 CPI Sammanfattning pipelining Cacheminnen associativt minne som cache associativt minne som BPT direkt-mappad cache flervägscache (2,4) I/D-cache pmem 4 1 Så här långt är pipelining enkelt!
Föreläsning 5 1 CPI. Sammanfattning pipelining Cacheminnen
Föreläsning 5 1 CPI Sammanfattning pipelining Cacheminnen associativt minne som cache associativt minne som BPT direkt-mappad cache flervägscache (2,4) I/D-cache DSP = digital signal processor PC pmem
6. Minnen. Associativt minne
6. Minnen Repetition cache-minnen, BPT Minnen allmänt ROM, RAM, DRAM, SDRAM, DDR MMU - Memory management Minnen NEXYS3 Block RAM, distributed RAM, DDR3 Associativt minne A= adress till PM/CM CL = cachelinens
Associativt minne ... A= adress till PM/CM CL = cachelinens storlek CM = cacheminnets storlek. Tag = A/CL = A/2 4 = A(31:4) Adress. K tag.
6. Minnen Repetition cache-minnen, BPT Minnen allmänt ROM, RAM, DRAM, SDRAM, DDR MMU - Memory management Minnen NEXYS3 Block RAM, distributed RAM, DDR3 Tidplan, bilda projektgrupper Associativt minne Tag
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
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
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
Vad bör göras? Steg 1. RISC => pipelining. Parallellism. Pipelining. Nya LDA 13. RISC(reduced instruction set computer) Öka klockfrekvensen
Föreläsning 11 OR-datorn är för långsam! Alternativa arkitekturer kritik av OR-datorn RISC => pipelining LDA 13 (exempelvis) Hämta : 3CP 2 1 CP Absolut,1: 3 CP EXE: 4 CP Summa: 11 CP mem ADR XR SP DR TR
Tentamen den 9 januari 2018 Datorarkitekturer med operativsystem (EITF60)
Lunds Universitet LTH Tentamen den 9 januari 2018 Datorarkitekturer med operativsystem (EITF60) 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
CE_O5. Cacheminne. Hemlaboration 2.
IS1500 Exempelsamling till övning CE_O5, 2014 CE_O5. Cacheminne. Hemlaboration 2. 5.1. Medeltidshistoria Diskutera förloppet då CPU:n gör en läsreferens i huvudminnet dvs information kopieras från huvudminne
Tentamen i Digitala system - EITA15 15hp varav denna tentamen 4,5hp
Tentamen i Digitala system EITA5 5hp varav denna tentamen 4,5hp Institutionen för elektro och informationsteknik Campus Helsingborg, LTH 289 8. 3. (förlängd 4.) Uppgifterna i tentamen ger totalt 6 poäng.
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
Digitalteknik och Datorarkitektur 5hp
Digitalteknik och Datorarkitektur 5hp Minnes-hierarkier och Cache 12 maj 2008 karl.marklund@it.uu.se issa saker använder vi ofta Dessa saker vill vi ha nära till hands Storleken har betydelse Litet är
Datorarkitekturer med Operativsystem
Lunds Tekniska Högskola Campus Helsingborg Datorarkitekturer med Operativsystem EDT621 Rapport Cacheminneshantering för ARM3-processorer 7 december 2015 Pierre Aupeix dat11pau@student.lu.se 1 Abstract
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
Multi-ported cache En rapport om några lösningar till att få flera minnesaccesser simultant.
Multi-ported cache En rapport om några lösningar till att få flera minnesaccesser simultant. Sammanfattning När processorns klockhastighet ökar medför det en ökning av instruktioner vilket såklart ökar
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
Jämförelse av skrivtekniker till cacheminne
Jämförelse av skrivtekniker till cacheminne 1 Innehåll 1. Sammanfattning 2. Inledning 3. Diskussion 4. Referenslista 1. Sammanfattning En rapport innehållande jämförelser av olika skrivtekniker till minnen
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
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
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
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)
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)
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
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
MESI i Intel Core 2 Duo
MESI i Intel Core 2 Duo Sammanfattning Denna rapport beskriver en processor (Intel Core 2 Duo) vars cache coherence protokoll är MESI. Rapporten beskriver hur processorn är uppbyggd, hur många kärnor den
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
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
SVAR TILL TENTAMEN I DATORSYSTEM, HT2013
Rahim Rahmani (rahim@dsv.su.se) Division of SAS Department of Computer and Systems Sciences Stockholm University SVAR TILL TENTAMEN I DATORSYSTEM, HT2013 Tentamensdatum: 2013-10-30 Tentamen består av totalt
Snapdragon 810: Cacheminnet
Snapdragon 810: Cacheminnet Daniel Eckerström dat14dec@student.lu.se Sammanfattnig Snapdragon 810 innehåller två olika processor arkitekturer, ARM Cortex-A53 samt Cortex-A57. Detta för att kunna på ett
Digitala System: Datorteknik ERIK LARSSON
Digitala System: Datorteknik ERIK LARSSON Översikt Minnets komponenter Minneshierarkin Cacheminne Paging Virtuellt minne Minnets komponenter Enhet för indata Primärminne (CPU) Enhet för utdata Sekundärminne
TSEA28 Datorteknik Y (och U)
TSEA8 Datorteknik Y (och U), föreläsning, Kent Palmkvist 8-4-6 TSEA8 Datorteknik Y (och U) Föreläsning Kent Palmkvist, ISY Praktiska kommentarer Laboration 4 tips Sorteringsalgoritm använder A > B i flödesschemat
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
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å
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............................
Föreläsningsanteckningar 2. Mikroprogrammering I
Föreläsningsanteckningar 2. Mikroprogrammering I Olle Seger 2012 Anders Nilsson 2016 Innehåll 1 Inledning 2 2 En enkel dator 2 3 Komponenter 3 3.1 Register............................... 3 3.2 Universalräknare..........................
TSEA28 Datorteknik Y (och U)
TSEA8 Datorteknik Y (och U) Föreläsning Kent Palmkvi, ISY TSEA8 Datorteknik Y (och U), föreläsning, Kent Palmkvi 7-4- Dagens föreläsning Latens/genomrömning Minneyper Läsminne (ROM) Läs och skriv minnen
Datorsystemteknik för E/D
Tentamen i kursen Datorsystemteknik (EDA330 för D och EDA370 för E) 19/8 2000 1(8) Tentamen i kursen Datorsystemteknik (EDA330 för D och EDA370 för E) Datorsystemteknik för E/D 19/8 2000 Tentamensdatum:
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
Tentamen Datorteknik D del 2, TSEA49
Tentamen Datorteknik D del 2, TSEA49 Datum 2012-05-24 Lokal TER2 Tid 8-12 Kurskod TSEA49 Provkod TEN1 Kursnamn Datorteknik D del 2 Institution ISY Antal frågor 6 Antal sidor (inklusive denna 10 sida) Kursansvarig
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
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
Mer datorarkitektur. En titt I datorn Minnen
Mer datorarkitektur En titt I datorn Minnen von Neumann-modellen von Neumann-modellen CPU (Central Processing Unit) Styrenhet hämtar programinstruktioner ALU (Arithmetic and Logical Unit) utför beräkningar
CE_O8. Cacheminne. Hemlaboration 2.
IS1200 Lösningsförslag till övning CE_O8, 2015 CE_O8. Cacheminne. Hemlaboration 2. 8.1. Medeltidshistoria Diskutera förloppet då CPU:n gör en läsreferens i huvudminnet dvs information kopieras från huvudminne
Ö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-
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
Föreläsningsanteckningar 3. Mikroprogrammering II
Föreläsningsanteckningar 3. Mikroprogrammering II Olle Seger 2012 Anders Nilsson 2016 1 Inledning Datorn, som vi byggde i förra föreläsningen, har en stor brist. Den saknar I/O. I denna föreläsning kompletterar
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
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
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
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
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
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
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
Cache-koherens protokoll MESI och MOSI
Handledare: Erik Larsson Lunds Tekniska Högskola HT2016 Cache-koherens protokoll MESI och MOSI Författare: Adnan Mohamed Abstrakt Cache koherens protokoll hanterar cacheminnet i ett multiprocessor system,
Cacheminne och adressöversättning
Cacheminne och adressöversättning From: Central Processing Box 1 COMPUTERLAND 1 Virtual $00005A3C From: Central Processing Box 1 COMPUTERLAND 1 Physical $00005A3C $007B2A3C Innehåll Cacheminnen Cacheminnen
Filsystem - Inode. Datorteknik. Minnets komponenter. Programexekvering. Enhet för indata. Enhet för utdata CPU. Primärminne.
Datorteknik Filsystem - Inode ERIK LARSSON ABBA: Dancing Queen Minnets komponenter Programexekvering Enhet för indata CPU Enhet för utdata Program i högnivåspråk.. Z:=(Y+X)*3. Kompilator Exekverbart program
Datorarkitekturer med operativsystem ERIK LARSSON
Datorarkitekturer med operativsystem ERIK LARSSON Översikt Minnets komponenter Minneshierarkin Cacheminne Paging Virtuellt minne Minnets komponenter Enhet för indata Primärminne (CPU) Enhet för utdata
Tentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2015-08-18 Lokal TERE, TER4 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 7 Antal sidor (inklusive
Cacheminne i en AMD Opteron Processor
Handledare: Erik Larsson Lunds Tekniska Högskola HT15 Cacheminne i en AMD Opteron Processor En rapport om cacheminne och dess struktur, i en 12 kärnig AMD Opteron Magny-Cours processor. Författare: Hamza
Rapport (1,5 HP) Lunds Universitet HT15
Rapport (1,5 HP) Lunds Universitet HT15 Cache-koherens protokoll i Intel Core i7 En rapport om cache-koherens och protokollet som används i Intel Core i7 processorer för att hålla minnet koherent Författare:
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
Cacheminne i en Intel Core 2 Duo-processor
Peter Hesslow EDT621 Cacheminne i en Intel Core 2 Duo-processor Abstrakt Det finns många olika sätt att bygga upp ett datorminne på, och med en flerkärnig processor så blir alternativen ännu fler. Denna
Fö 2: Minnen. Introduktion. Primärminnet. Interna och externa minnen. Introduktion, Klassificiering
Fö 2: Minnen Introduktion, Klassificiering Primärminne Sekundärminne Minneshiearki Cache-minne Introduktion Primärminnet används för att lagra program och data som är aktuella att använda. Sekundärminnet
Ö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. Hur många unsigned integers kan man göra med n bitar? Vilket talområde får dessa
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
DatorsystemteknikDAVA14 Föreläsning 9
DatorsystemteknikDAVA14 Föreläsning 9 epetition: MP likainstruktioneri Exempel på instruktionstyper Processorns uppbyggnad Pipelining törre delen av materialet framtaget av :Jan Eric Larsson, Mats Brorsson
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
Omtentamen i CDT204 - Datorarkitektur
Omtentamen i CDT204 - Datorarkitektur 2012-11-05 Skrivtid: 08.10-12.30 Hjälpmedel: Miniräknare och valfritt skriftligt (ej digitalt) material. Lärare: Stefan Bygde, kan nås på 070-619 52 83. Tentamen är
Tentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2015-10-20 Lokal TERE, TER2 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal sidor (inklusive
Tentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2017-06-02 Lokal G35, TER2, TER4 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal sidor
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
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
Datorsystem. Tentamen
Datorsystem Tentamen 2012-03-17 Instruktioner Samtliga svar skall vara motiverade och läsbara. Eventuella tabeller, illustrationer och beräkningar som används för att nå svaret ska också finnas med i lösningen.
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
Spekulativ exekvering i CPU pipelining
Spekulativ exekvering i CPU pipelining Max Faxälv Datum: 2018-12-05 1 Abstrakt Speculative execution is an optimisation technique used by modern-day CPU's to guess which path a computer code will take,
Cacheminne Intel Core i7
EDT621 Datorarkitekturer med operativsystem 7,5 hp 2015-12-07 Cacheminne i Intel Core i7 Författare: Adnan Karahmetovic Handledare: Erik Larsson Innehåll 1. Inledning... 1 1.1 Syfte... 1 1.2 Frågeställning...
Digital- och datorteknik
Digital- och datorteknik Föreläsning #17 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Tallriksmodellen Stackoperationer Element kan endast
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
Dugga 1 status 41 godkända 39 ej godkända ERIK LARSSON
Datorteknik Dugga 1 status 41 godkända 39 ej godkända ERIK LARSSON e.g. Harvard or Boston Home About Rankings Survey Universities GRUP Initiative Conference Study in China Advertise with Us Home>> Global
Tentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2016-10-18 Lokal TER1 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 7 Antal sidor (inklusive
MESI-Protokollet. Richard Elvhammar. Lund Universitet 4/12-16
MESI-Protokollet Richard Elvhammar Lund Universitet 4/12-16 Abstract För att ett system snabbt ska kunna hantera information så används, å sidan åt primärminnet och sekundärminnet, ett cacheminne. I modern
Lösningsförslag till Tenta i Mikrodator
Lösningsförslag till Tenta i Mikrodator 040117 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
Improved-MOESI Cache koherens Protokoll
Improved-MOESI Cache koherens Protokoll Abstrakt I en multicore, flerkärninga processor med delat minne kan koherens problem förekomma. En lösning till detta är att implementera cache koherens protokoll.
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
TSEA28 Datorteknik Y (och U)
2 4 Dagens föreläsning TSEA28 Datorteknik Y (och U) Föreläsning 13 Kent Palmkvist, ISY 3 Praktiska kommentarer Laboration 5 kommer justeras (anvisningarna skrivs om) Grundidé och bakgrundsmaterial samma!
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
Digital- och datorteknik
Digital- och datorteknik Föreläsning #14 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Vad vi har åstadkommit hittills: Med hjälp av kombinatoriska
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ösningar till tentamen i EIT070 Datorteknik
Lösningar till tentamen i EIT070 Datorteknik Institutionen för Elektro- och informationsteknik, LTH Torsdagen den 13 mars 2014, klockan 14:00 19:00 i MA:10. Tillåtna hjälpmedel: på tentan utdelad formelsamling,
Tentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2017-08-15 Lokal TER4 Tid 14-18 Kurskod Provkod Kursnamn Provnamn Institution Antal frågor 6 Antal sidor (inklusive denna sida) 6 Kursansvarig Lärare som besöker skrivsalen
Datorsystem. Exempeltentamen 2011-10-18
Datorsystem Exempeltentamen 2011-10-18 Instruktioner Samtliga svar skall vara motiverade och läsbara. Eventuella tabeller och beräkningar som används för att nå svaret ska också finnas med i lösningen.
Tentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2017-10-26 Lokal TER1, TER3 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal sidor (inklusive
Lösningsförslag till tentamen i IS1500 Datorteknik
Lösningsförslag till tentamen i IS1500 Datorteknik 2010-12-13 Obs! Dessa lösningsförlag kan vara felakktiga och/eller ofullständ Uppgift 1. Maskinartmetik a) Flyttalet X lagras som 0 1000 0011 000 1001
Cache coherence hos multicoreprocessorer
Cache coherence hos multicoreprocessorer Benjamin Holmqvist, EDT621 December 5, 2016 1 Contents 1 Inledning 3 2 Syfte 3 3 Cache Coherence 3 3.1 Implementering.......................... 4 3.2 Snoop baserade..........................
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
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.
Datorsystem. Tentamen 2011-10-29
Datorsystem Tentamen 2011-10-29 Instruktioner Samtliga svar skall vara motiverade och läsbara. Eventuella tabeller och beräkningar som används för att nå svaret ska också finnas med i lösningen. Ett svar
Digital- och datorteknik
Digital- och datorteknik Föreläsning #23 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Översikt När flera minnesmoduler placeras i processorns
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