• Shuffle
    Toggle On
    Toggle Off
  • Alphabetize
    Toggle On
    Toggle Off
  • Front First
    Toggle On
    Toggle Off
  • Both Sides
    Toggle On
    Toggle Off
  • Read
    Toggle On
    Toggle Off
Reading...
Front

Card Range To Study

through

image

Play button

image

Play button

image

Progress

1/84

Click to flip

Use LEFT and RIGHT arrow keys to navigate between flashcards;

Use UP and DOWN arrow keys to flip the card;

H to show hint;

A reads text to speech;

84 Cards in this Set

  • Front
  • Back
  • 3rd side (hint)

Vad är Moores lag?

Antalet transistorer på ett chip växerexponentiellt; det dubblas var 24:e månad

Handlar om antalet transistorer på ett chip

Vem är Von Neumann?

Han skapade Von Neuman Arkitekturen.

Han skapade Von Neuman Arkitekturen.

Handlar om hur en processor är uppbyggd

Vad gör en kompilator?

Kompilatorer översätter program i högnivåspråktill maskinspråk

Handlar om programspråk

Ge exempel på ett högnivåsptåk

C och java



Vad skiljer ett högnivåspråk från ett maskinspråk ?

Ett högnivåspråk är en slags förenkling av maskinspråk. Ett kommando i ett högnivåsrpåk är oftast en samling av kommandon i maskinspråk. Högnivå-kommandot är lättare att förstå för människor än maskin-kommandona .

Görs alla beräkningar (+,-, …, AND, OR) i ALU:n?

Nej, inte de som involverar flyt-tal (floats)

Ge exempel på indata och utdata till en kontrollenhet

Indata kan vara en instruktionskod och utdata styrsignaler för tex alu att genomföra sagd instruktion

Ge exempel på fördelar med att använda register för att lagra data

Data som används ofta läggs på register så det går snabbt att interagera med sagd data



. Om en processor gör ”Fetch” och ”Execute”, vad görs under ”Fetch? Vad görs under ”Execute”? Är det som görs under ”Fetch” samma för alla instruktioner”

Fetch: 1.Hämta instruktion 2. lägg in i cpu 3. Avkoda vad som ska göras.


Excecute: Exekverar själva instuktionen det handlar om.




Fetch gör alltid samma sak för alla instruktioner.

Ge exempel på system där man hittar datorer?

Bilar, tv-apparater, spisar

Vad finns det för olika typer av datorer?

????

Var kan man hitta processorer?

I datorer av olika slag

Vad kännetecknar ett minne som är “volatile”?

Ett minne som förlorar sin data om den tappar strömförsörjning i.e när maskinen som minnet sitter i stängs av.

Ge exempel på minnen som är “volatile”

DRAM (dynamic random accessmemory)

Vad kännetecknar ett minne som är “non-volatile”?

Datan lagrad på ett non-volatile memory finns kvar även om strömförsörjningen släcks.

Ge exempel på minnen som är “non-volatile”

magnetic disk/hard disk

Vid IC tillverkning, vad gör en dicer?

integrated circuit(ic) tillverkas på runda silicon skivor (wafers). På en wafer skrivs ett rutnät av integrated circuts. Dicern skär ut dessa chips (dies). Sedan testas de individuella dies'en och dåliga kastas.

Vem grundade Intel?

Gordon E. Moore (Moores-lag snubben)

Vad består en von Neuman arkitektur av?

1. I/O-devices


2. Memory Unit (Ram i moderna datorer)


3.CPU




Cpu:n i sin tur består av :


1.Control Unit


2. ALU



Vad används en kompilator till?

Att generera maskinkod från ett program skrivet i ett högnivåspråk

Vad händer under “fetch” fasen?

Under fetch-fasen


1. hämtas nästa instruktions som ska köras


2. och läggs in i cpu:n


3. och avkodas( Steg 3 beskrivs ibland som en egen fas som kallas decode)

Vad händer under “execute” fasen?

Instruktionen som hämtats i fetchfasen exekveras.

Vad är en ALU?

"Arithmetic logic unit" gör olika beräkningar av indata och genererar resultat i utdata. Beräkningar som tex "OR" och "Addition"

Varför finns registren i en processor?

För snabb tillgång av olika data som behövs vid olika kommandon

Nämn olika typer av register?

volatile och non-volatile (osäker)



Hur manga flanker finns det i en klockcykel?

1 (osäker) Handlar om "Edge-triggered" Clocking

Hur manga bitar behövs för att lagra ett tal som har värden mellan 0 och 255?

9

Hur många bitar behövs för att lagra en så kallad “unsigned char”?

8 bits (1 byte)

Vilka värden kan en “unsigned char” ha?

0- 255

Hur fungerar två-kompliment?

Används vid symbolisering av negativa tal. Första biten avgör om talet är positivt eller negativt, de resterande vilket tal det är.

Vad är Little Endian?

Ett sätt att bestämma byte ordning på ett tal. I little endian är första biten minst. I.e 1011 är 13 medans det i Big endian skulle vara 11

Vad gör en kontrollenhet i en processor?

Kontrollenheten sköter interaktionen mellan i/o-devices memory och ALU.

Hur lång är en klockperiod i en processor som har en frekvens på 1 GHz?

1/(10^9) Sekunder

Om varje instruktion tar 10 klockcykler, hur manga instruktioner hinner en processor om frekvensen är 1 GHz?

På en sekund hinner den 10^8 stycken

Hur kan val av algoritm påverka hur snabbt ett program exekverar?

Vissa algoritmer leder till att färre instruktioner behöver exekveras

Hur påverkar läsning och skrivning till minnet prestandan hos en processor?

??????

Vad blir det binära talet 101111 decimalt?

47

Vad blir det binära talet 101111 hexadecimalt?

2F

Vad blir det Hexadecimala talet FE1A decimalt?

65 050

Vad blir det Hexadecimala talet FE1A binärt?

1111 1110 0001 1010

Vad är pipelining?

pipelining innebär att exekvera flera instruktioner samtidigt när dessa inte använder samma delar av ett system. T.ex medans en instruktion exekveras kan en annan fetchas

Vilka konflikter kan uppstå i en pipeline?

Structual Hazards( 2 instruktioner försöker använda samma enhet)




Data Hazzard ( en instruktion beror på data från en annan instruktion. De kan därmed inte exekveras samtidigt)




Control Hazzard( Liknande Data hazzard,En branch-condition instruktion kan ogiltigt exekveras om intstruktionen som manipulerar sagd condition exekveras samtidigt som branch-instruktionen)

Vad kan man göra för att undvika konflikter?

Structual Hazards: öka antalet resurser.


Data Hazards: Lägga in en "tom plats" i kön så att instruktioner beroende av varandra inte körs samtidigt ( forwarding/bypassing/stalling )




Control Hazards:




branchpreditcion

Vad är branchprediction?

en strategi för att minska antalet bortslösade klockcyckler vid branchning tillsammans med pipelining.

Vad är spekulativ exekvering?

Vid conditional branch intruktioner kan en processor fortsätta exekvera kod innan sagd conditional har evaluerats. När sedan conditionalen har evaluerats så antingen behålls resultatet av den spekulativa exekveringen (om processorns gissning stämde) eller så kastas resultatet och rätt väg tas.

Delayed branching – vad är det? Vinst? Ge ett exempel.

Delayed branching innebär att instruktionen efter en branchinstruktion exekveras alltid. Istället för att "stall" och vänta på branchens resultat kan processorn fortsätta exekvera kod

Delayed load – vad är det? Vinst? Ge ett exempel.

Delayed Load innebär att instruktionen efter en load instruktionen exekveras alltid. Istället för att "stall" och vänta på loadens resultat kan processorn fortsätta exekvera kod

Ge exempel på en kompilatorteknik som kan användas för att unvika/hantera konflikter i pipelinen.

Delayed-branching

Hur många instruktioner är aktiva i en pipeline med 6-steg?

Idealt 6 stycken

Hur påverkas kontrollenheten av pipelining?

Väldigt lite, den skickar fortfarande samma styrsignaler i klumpar som sedan delas upp i de olika pipe-line-stegen( osäker)

Vad är en load-store architectur?

I en load/store arkitektur får endas load- och store-instruktioner tillgång till minnet. Resten arbetar med registrena i processorn

Vad gör ett operativsystem ?

Hanterar hårdvaruresurser och ger en plattform för att köra applikationer

Vad är multitasking?

Att köra flera program samtidigt

En användare känner att flera program exekverar samtidigt, hur är det möjligt?

Processorn byter mellan program blixtsnabbt.

Vad är ett kontextbyte?

Ett byte av vilken applikation som körs. En ny "kontext" laddas in i processorn som behövs för att köra vald applikation

Hur går ett kontextbyte till? Hur vet man om att det ska ske? Vem är inblandad?

Ett aktivt program har ett processkontrollblock. När processorn ska byta kontext så laddas det in från detta block.


Schemaläggaren bestämmer vilket program som ska exekveras baserat på olika algortimer.

Behövs avbrott för att klara av att göra kontextbyten?

nej

Hur fungerar avbrott?

Avbrott avbryter processorn och säger ger den en ny uppgift att utföra

Om man skapar en struktur för att lagra filer, vad vill man uppnå?

Man vill kunna lagra stora filer och nå data snabbt.

Om man ska läsa in en fil från en hårddisk, vad påverkar lästiden?

Vilket filsystem som användts för att lagra filen och hur snabb hårddisken är.

Vad är superscalar?

En arkitektur-typ av system som tillåter att flera instruktioner exekveras samtidigt oberoende av varandra

Vad är superscalar pipelining?

Köra flera pipelines samtidigt

Vad är skillnaden mellan en superscalar processor och en very long instruction word processor?

En superscalar processor implementerar parallellism med endast hårdvara. WLIW-processor vid kompilering av program.

Vad är skillnaden mellan en tråd och en process?

En process består av en eller flera trådar. Trådar kan exekveras samtidigt

Vad är skillnaden mellan en process och en processor?

En processor är hårdvaran som används för att köra en process

Hur klassificerar Flynn arkitekturer?

Single-instruction single-datastream (SISD)




Single-instruction multiple-datastream (SIMD)




Multiple-instruction single-datastream (MISD)




Multiple-instruction multiple-datastream (MIMD)

Vad hindrar att en processor med 4 cores exekverar ett program 4 gånger snabbare än en processor med 1 core?

Svårigthet att dela upp ett program i 4 delar.

Vad menas med Amdahls lag?

Lagen är en formel över hur mycket snabbare ett program kan köras med hjälp av parallellism. Formeln ger olika svar på olika program baserat på hur stor del av koden som kan delas upp och köras samtidigt.

Vilka konflikter uppkommer i en superscalar processor?

True data dependency


Output dependency


Anti dependency

Vad är in-order och out-of order issue/completion?

Det handlar om huruvida exekvering och felhantering sker i samma ordning som programmet är skrivet(instruktions-ordning) eller inte

Varför används register renaming?

För att förhindra Output dependencyoch anti-dependency. När instruktioner som exekveras samtidigt använder samma register byter man register för en av instruktionerna

Vad är multithreading?

Att flera trådar körs samtidigt

Hur lagras information på en hårddisk?

Information lagras på magnetiska roterandeskivor. Skivorna är uppdelade i olika spår där varje skiva består av fleratusen spår. Ett spår är i sin tur uppdelat i olika sektorer vilka varierar i storlek mellan512 – 4096 bytes.

Vad är random access när man talar om minnen?

Random access är ett minne där man kan nå varjeminnescell utan att behöva söka igenom andra delar av minnet.

Ge exempel på minne som inte har random access?

Minne som inte har random access är exempelvishård diskar och CD-RW

Vad är en minneshierarki?

Minneshierarkindelar upp minne i en pyramidlik form beroende på hur lång tid det tar för CPUnatt nå minnet.Minnen som går snabbast att nå är minne som ligger överst i pyramiden. Dessaminnen är även de minsta minnena. Bredden på pyramiden symboliserar såledesstorleken på minnet medan platsen i höjdled berättar hur lång tid det tar attnå minnet.

Varför uppstår en minneshierarki?

Större minnen är långsammare att accessa ochplocka ut data ifrån. Därför vill man spara data vilken används ofta i småminnen placerade högt upp i ”minnes pyramiden” .

Vad är en cachemiss? Varför uppkommer cachemissar? Hur hanteras det?

Cache missar uppkommer då instruktionen som skahämtas inte finns lagrad i cachen. Detta hanteras genom att data istället hämtas direkt från sekundär minnet, alternativt från ett cache minne på en lägre nivå. Datan sparas samtidigt undan i cache minnet för framtida bruk.

Cacheminnen kan ha olika mappningar – vilka? Hur fungerar varje mappning?

*Direktmappning


* Associativ mappning


* 2-vägs set associativ mappning


* Set associativ mappning

Hur fungerar direktmappning av cache?

Cache-minne m har x antal minnesblock, som block i sekundär minne M ska mappas till. Då kommer första blocket i M mappas till första platsen i m.


Detta fungerar till plats x i M. Sedan kommer block på plats x+1 i M mappas till första platsen i m osv.

Hur fungerar assositativ mappning ?

Minnes-block kan mappas till alla platser i cachen.

I direktmappning, hur ersätts cacherader vid cachemissar?

I direktmappning, hur ersätts cacherader vid cachemissar?

Vad är en ersättningsalgoritm?

Det är en algoritm som bestämmer vilken cachedata som ska skrivas över

Vad menas med att cacheminnet inte är konsistent? Hur hålls ett cacheminne konsistent?

Värdet av en variabel varierar mellan det somfinns sparat i cachen och det som finns sparat i primärminnet. Cacheminnethålls konsistent genom olika typer av skrivstrategier.