Samenvatting Geavanceerde Computerarchitectuur

Maat: px
Weergave met pagina beginnen:

Download "Samenvatting Geavanceerde Computerarchitectuur"

Transcriptie

1 Dumon Willem PROCESSOR STRUCTURE & FUNCTION 12.1 Registers User-visible registers: toegankelijk vr programmeur general purpose-reg: versch functies OF toch vr bep functies (vb enkel floating point) data registers: enkel data, nt bruikbaar in berekeningen v adressen adres registers: algemeen OF bep specifieke adresmode (segment, index of stack pointers) berekenen v adressen condition codes = flags: gezet als resultaat v operaties (k gelezen w, nt geschreven) general specifiek: design-beslissingen (flexibel-simpel snel) controle & statusregisters: program counter PC, instruction register IR, memory adress register MAR, mem buffer reg MBR, program status word PSW (sign, zero, carry, equal,...) supervisor mode = kernel mode: gepriviligeerde instr s uitvoeren dr OS andere registers: wijzen nr Process Control Blocks, interrupt vectors, Instruction Cycle Figuur 1: Normale instruction cycle & uitbreiding met indirecte cycle Indirect cycle als indirecte adressen gebruikt (meer mem-access) extra cycle/stage nodig Data flow: 1

2 Fetch cycle: volgende instr in PC, adres MAR adresbus, Ctrl Unit CU vraagt memread result op databus MBR IR, PC++ Indirect cycle: IR bekijken, als indirect N meest rechtse bits v MBR MAR, CU vraagt mem-read, result (adres v operand) nr MBR Execute cycle: afh v instr (mem-read/write, I/O, register transfers, ALU-ops) Interrupt Cycle: PC opslaan (vr hervatten) in MBR (vb op stack), adres (SP) MAR, MBR mem, PC geladen met adres v interrupt handler 1e instr v interrupt handler fetchen 12.3 Instruction Pipelining cf assembleerlijn/lopende band alles na elkaar in versch stages 2-stage pipeline fetchen = mem-access execute mstal nt apart doen: volgende instr bufferen tijdens executie vorige (prefetch, fetch overlap) executie duurt langer & dr branching volgend adres nt direct gekend wachten 6-stage pipeline: Fetch Instruction, Decode Instruction, Calculate Operands, Fetch Operands, Execute Instruction & Write Operand zelfde tijdsduur problemen: niet alle instr ies alle stages sommige stages k nt samen (mem-conflict) waarden in cache steken & sommige stages niet nodig bij sommige instr ies dus compenseert tijdsduur verschillend (conditional) branching: fetch ed vr niets gedaan, idem vr interrupts dependencies wachten op vorige # stages op bep punt nt mr nuttig (overhead, vl ctrl logic nodig) optimum zoeken! pipeline hazards: deel v pijplijn gestopt omdat omstandigheden gn continue uitvoering toelaten pipeline bubble (cf luchtbel) 1. resource hazard: versch instr ies h zelfde resource nodig (single port mem & gn cache) 2. data hazard: true data- (RAW), anti- (WAR) & output dependency (WAW) 3. control = branch hazard: verkeerde branch-beslissing pipeline clearen multiple streams: meerdere pijplijnen maken per tak extra delays want meer instr ies & in versch streams ng branch = weer extra streams prefetch branch target: bij conditional branch volgende instr + doel v branch fetchen ( beide mogelijkheden fetchen) loop buffer: heel snel geh (cf cache) met laatste fetches (in volgorde) deze buffer checken vr mem-fetch in volgorde dus geen mem-accesstijd, als if-then-else zit alles in buffer, ideaal vr kleine loops/jumps branch prediction: predict never taken predict always taken p 2

3 predict by opcode: afh v instr maken taken/not taken switch: afh v vorige, bits opslaan in temp high-speed-storage, # bits bepaalt lengte gesch branch history table = klein cache-geh, elke entry = adres v branch instr + geschbits + adres v branch-doel/branch-instr zelf (afh v implementatie) verbetering: nt enkel gesch v huidige branch, maar ook v N laatste branches gebruiken delayed branch: progr herschikken dat branches later voorkomen Intel pipelining: Fetch + Decode stage 1 (opcode & adresmode in 1e 3 bytes) + Decode stage 2 (rest v instr) + Execute + Write Back 13 REDUCED INSTRUCTION SET COMPUTERS RISC >> general purpose-registers (reg-gebruik optimaliseren) + kleine simpele instructie set IS + nadruk op instr-pipeline-optimalisatie High-level-progr talen (HLL) semantic gap: architecturen k nt mee complexere arch en CISC RISC: simpeler ipv complex dynamische studies executie v progr meten adhv operaties: simpele verplaatsing v data & sequentiectrle bel, call-return = tijdrovend operands: meestal locale scalaire variabelen dit optimaliseren procedure-aanroepen: tijdrovend, afh v # parameters/locale variabelen & v nestinglevel RISC vl registers of compiler-based registergebruik optimalisatie (operand-referenties) + pipelines goed ontwerpen (branching/calls) + simpele kleinere instructieset 13.1 Grotere registers lokale scalaire variabelen in registers mem-access HW: register windows meer registers, per procedure CPU naar vast # registers (window) laten kijken ipv registers op te slaan & andere op te halen in mem bij call & return registerwindow parameterreg = parameters v methode die deze methode opgeroepen heeft = temp-reg v callprocedure (fysisch dezelfde!) # registerwindows vr recente procedure-activaties, oudere naar mem cirkelvormige buffer door overlappingen, SWP & CWP, als buffer vol oudste naar mem p 3

4 reg-set vr globale variabelen behouden! anders te vl mem-access Figuur 2: Grotere registers vs cache 13.2 Compiler-based register optimalisatie beperkt # reg s (HW) reg s toekennen obv meest gebruikte variabelen: complexe progranalyse! # symbolische reg s mappen op # echte reg s symbolische die nt overlappen k zelfde gebruiken, als niet genoeg reg s geh gebruiken Graph Colouring! als gn kleuren genoeg in geheugen 13.3 RISC architectuur wrom CISC? p 4

5 simpelere compiler? nt zkr: complexe machine-instr ies moeilijker optimaal te gebruiken, optim moeilijker (passen quasi nooit perfect met HLL) kleinere progr s? minder geh nodig MAAR geh-kost, kortere symbolische vorm evenveel bits (meer instr ies = langere opcode), reg s-referenties = minder bits snellere progr s? CU complexer & µprogr control store vl uitgebreider exec-time RISC karakteristieken 1 instr/machine-cycle: 2 operands fetchen uit geh + ALU + result wegschrijven hardwired maken ipv microcode zovl mog reg-naar-reg-operaties: enkel load en store nodig IS & CU simpeler + optim v reg-gebruik nodig 1 of enkele simpele adresseringsmodes IS & CU simpeler 1 of enkele simpele instructieformaten: vaste lengte (words) & veldlocaties (vral opcode) opcode decoderen & reg-operand ophalen tegelijkertijd meer compile-time (opsplitsen in simpelere instr s) = ontwerpers gebruiken delen v CISC & RISC 13.4 RISC Pipelining met nrmle instr s: meestal reg-naar-reg-operaties (instr fetch I + execute E (ALU met reg IO)) als load&store operaties: I + E (mem-adres berekenen) + D (reg-naar-geh of geh-naar-reg operatie) fig b) & c) NOOP omdat branch de sequentiële voortgang onderbreekt fig c) NOOP owv true data dependency! fig d) = c) maar E gesplitst (duurt langst E 1 = reg-read, E 2 = ALU-op + reg-write) even lange stages optimalisatie: p 5

6 delayed branch: NOOP nodig na branch nuttige instr daar zetten! gemakkelijk bij unconditional branches & call/returns conditional: conditie k aangetast w dr voorgaande instructie daar te zetten andere zoeken of NOOP delayed load: instr s reorganiseren dat nuttig werk k w verricht tijdens load (duurt lang) loop unrolling: body v lus in lus u maal herhalen & lus in stappen v u overlopen lus-overhead, parallellisme & betere reg/datacache gebruik 14 INSTRUCTION-LEVEL PARALLELISM & SUPERSCALAR PROCES- SORS superscalair = nrmle instr s (ALU, floating points, integers, load/store, condit.branches) k gelijktijdig gestart & onafh uitgevoerd w meerdere onafh pipelines std methode om highperformance µcpu s te implementeren superpipelined: vl stages doen tasks die < halve clockcycle duren interne freq x2 2 tasks in 1 externe clockcycle instr-level parallellisme: graad waarin (gem) instr s parallel k w uitgevoerd beperkingen: True data dependency = flow dep = Read After Write RAW Procedural dep: instr s na branch (genomen of niet) k nt parallel met instr s vr branch w uitgevoerd (zelfde in gwne scalaire pijplijn mr erger) als instr-lengte nt vast m ganse instr w gedecodeerd om # fetches te weten Resource conflict: 2+ instr s die tegelijkertijd zelfde bron willen bron 2x (vb ALU) 14.1 Ontwerpkwesties Instr-lvl parallellisme: afh v true data & procedural dependencies machine-lvl parallellisme: vermogen v CPU om gebruik te maken v instr-lvl parall., afh v # instr s die k w gefetchd & uitgevoerd tegelijkertijd = # pipelines Als nt genoeg instr lvl parall nt volledig gebruik maken machine-lvl parall & beperkte machine-lvl parall beperkt performantie onafh v programma-aard p 6

7 Instr issue policy = protocol hoe instr s v decode stage nr 1e execute stage gn CPU kijkt vooruit nr welke instr s i/d pipeline k w gebracht 3 volgordes belangrijk: fetch-volgorde, execute-volgorde & volgorde wrin instr s reg s & geh aanpassen pipeline optimaliseren = volgorde aanpassen (mr resultaat moet kloppen!): 1. in-order issue met in-order completion: nt efficiënt, instr s m soms w8en, kan wel >1 instr fetchen 2. in-order issue met out-of-order compl: perform v instr die meerdere cycles nodig h 3. out-of-order issue met out-of-order completion output dep (WAW) complexe logica nodig + moeilijk interrupts afhandelen anti-dependency (WAR): instr k nt afronden vrdat andere zijn operands heeft opgehaald in-order issue = CPU decodeert instr s tt dep & stopt tt dep opgelost out-of-order: decodestage & exec-stage ontkoppelen buffer = instr window: fetch+decode tt buffer vol & als functionele 1heid vrij instr uit window halen CPU k vooruit kijken MAAR dep s/conflicten k instr s blokkeren in instr window Register renaming: opl vr anti- & output-dep s (wrbij waarden in reg s nt mr kloppen met gang v progr) R3c vermijd anti-dep in I2 en output-dep in I1 I3 k direct gelanceerd w p 7

8 Machine parallelisme: 1. base = gn functionele units gedupliceerd, wel out-of-order issuing mogelijk 2. +ld/st = base + extra load/store unit 3. +alu = base + extra ALU 4. +both = base + extra load/store + ALU dupliceren units nt nuttig zonder reg s renaming & groot genoeg instr window nodig (>8) Branch Prediction: vb fetched volgende instr + doelinstr v branch als branch genomen 2 cycles kwijt want 2 stages tss prefetch & exec delayed branch bij RISC? nt nuttig vr superscalair meerdere instr s uitvoeren in delay-slot & instr dep problemen Superscalaire exec: Superscalaire impl: gelijktijdig versch instr s fetchen: versch fetch & decode stages + branch prediction logica logica die true-data-dep bepaalt ivm reg-waarden + mechanismen die deze waarden doorgeven waar nodig mechanismen om versch instr s parallel te lanceren (= issuing) bronnen om versch instr s parallel uit te k voeren mechanismen om processtatus in juiste volgorde te comitten na out-of-order completion 14.2 Pentium 4 operaties: 1. instr s fetchen in statische volgorde v geh 2. instr vertalen in vaste-lengte-risc-instr = micro-operaties = µops 3. µops uitvoeren in superscalaire pipeline: out-of-order execution kan 4. result en v µops comitten nr reg-set in originele progr-volgorde P4 = extern CISC met interne RISC-kern (20-stages-pijplijn) p 8

9 15 CONTROL UNIT OPERATION 15.1 Micro-operaties stages v pipeline bestaan uit µops = atomische acties v CPU FETCH CYCLE 1. PC = adres v volgende instr MAR adresbus 2. CU lanceert READ-commando resultaat op databus MBR & parallel PC+=instr.length 3. data (instr) v MBR IR MBR vrij vr volgende data fetch 3 tijdstappen/4 µops µops groeperen kan (vb PC=+I kan ook in t3) juiste volgorde behouden & conflicten vermijden (vb nt schrijven & lezen in zelfde reg: onvrspelbr) INDIRECT CYCLE 1. adresveld v instr MAR 2. MAR gebruikt om adres v operand op te halen 3. adresveld v IR upgedate v MBR direct adres in IR INTERRUPT CYCLE (afh v machine) 1. inhoud PC MBR: opslaan om terug te keren v interrupt 2. adres waar PC op te slaan MAR & parallel adres v interrupt-routine in PC 3. MBR (oude waarde PC) geheugen p 9

10 minimum # µops: adressen ophalen k meerdere µops vereisen EXECUTE CYCLE: afh v instr (N versch opcodes = N versch µop-sequenties INSTRUCTION CYCLE = alle vrgaande aan elkaar hangen (ICC = Instr Cycle Code) 15.2 Processorcontrole 1. basiselementen v CPU definiëren: ALU, reg s, interne data-paden, externe- & controle unit 2. types µops: transfer tss reg s, v reg nr extern, extern nr reg & arithmetische of logische ops 3. CU-f ties : sequencing (CPU dr µops laten gn in volgorde v progr) & zorgen vr executie v elke µop adhv ctrlesignalen interactie CU andere elementen v processor: inputs: clock, IR (= opcode huidige instr), flags (status CPU & resultaat vorige µop) & ctrlsign n v controlebus (interrupts & ACK s) outputs: in CPU: zorgen voor databeweging & specifieke f ties activeren via controlebus: naar geheugen & I/O-modules 3 types controlesignalen: activeer ALU-f tie, activeer datapad & signalen op externe systeembus of iface (cf figuur) p 10

11 interne CPU-organisatie meestal 1 interne bus als datapad controlesign n vr verplaatsen data v&nr bus v elk reg + temp reg s nodig vr goeie werking ALU (Z-Y) 15.3 Hardwired implementatie CU = combinatorisch circuit: inputs w gecomb tt set output-sign n = controlesign n 4 inputsignalen: 1. flags & controlbus: elke bit betekent iets 2. IR: adhv opcode versch controlesignalen vr versch instr unieke logica/opcode geëncodeerde input DECODER 1 output (n binaire inputs & 2 n outputs) 3. clock: meten tijdsduur µops, periode lang genoeg om signaal te k laten voortplanten dr interne logica CU zendt versch controlesignalen op versch tijdstippen in 1 instr-cycle (versch µops per instr-cycle) versch periodes counter nodig CU Logic vr elk signaal booleanse expressie afleiden adhv inputs vb in boek: P/Q cf ICC p 11

12 15.4 Nadelen complex: vl booleanse logica/expressies, complexe sequenties, moeilijk ontwerp/testen, nt flexibel (moeilijk aanpas/uitbreidbr) MAAR sneller dan microprogrammering & circuits/tools veel beter 16 MICROPROGRAMMED CONTROL 16.1 Basisconcepten mircroprogr = firmware = sequentie v micro-instr s, die elk bestaan uit µops tss HW & SW CU maakt vr elke µop set v ctrl-sign n (aan of uit) alle ctrl-sign n binair voorstellen o/e rij = ctrl word met elke bit = ctrl-sign/ctrl-lijn elke µop = versch patroon in ctrl-word sequentie v ctrl-words per machinecode instr + adres nr volgende µinstr (afh v conditiebits) = horizontale µintsr (1 µinstr = versch bits op 1 meerder µops) interpretatie: 1. µinstr uitvoeren = alle ctrl-lijnen wrv bit = 1 aanzetten, andere uitlaten juiste µops uitgevoerd 2. als vw dr conditiebits = false volgende µinstr in volgorde uitvoeren 3. als vw dr conditiebits = true volgende µinstr aangegeven in adresveld Control Memory CM = verzameling alle µinstr s, sequentieel, behalve laatste v cycle h branch organisatie CM volgorde v cycles (execute = vast adres wrin adres nr juiste routine staat, afh v nodige opcode) architectuur CU: p 12

13 CM: set µinstr s ctrl adresreg: adres v volgende instr ctrl bufferreg: als µinstr gelezen uit CM = ook uitgevoerd want linkerdeel v buffer = verbonden met ctrl-lijnen sequencing logic: laad ctrl-adresreg & lanceert read-commando (a) Control memory organisatie (b) Control Unit architectuur functionering (alles in 1 clock-puls!) 1. sequencing logic lanceerd read-commando naar ctrl-mem 2. woord wrnaar adres in ctrl-adresreg verwijst is ingelezen in ctrl-bufferreg = controlebits 3. inhoud v ctrl-bufferreg genereert ctrl-sign n & volgend adres vr sequencing logic unit 4. sequencing logic unit laadt nieuw adres adhv volgend adres v ctrl-bufreg & ALU-flags: volgende instr = 1 optellen bij ctrl-adresreg nr nieuwe routine springen obv jump-µinstr = adresveld v ctrl-bufreg in ctrl-adresreg nr machine instr-routine springen: = ctrl-adresreg laden adhv opcode in IR bovenste decoder vertaalt opcode in ctrl-mem-adres 5. onderste decoder: gebr vr verticale µinstr s: code gebruikt vr elke actie ipv bits (µop) die w vertaald in juiste bits ctrl-store (= CM) kleiner MAAR terug decoden nt elke combo v bits toelaten want lezen/schrijven zelfde reg nt mog optimaliseren Wilkes control: systeem = matrix gevuld met diodes tijdens machinecycle 1 lijn v matrix geactiveerd sign n op pt n wr diodes staan (1e deel = ctrl-sign n & 2e = adres-sign n ) elke rij = 1 µinstr met conditie-signaal jumps sturen p 13

14 16.2 Micro-instructie sequencing microprogrammed CU: 1. µinstr-sequencing: volgende instr uit CM halen 2. µinstr-executie: ctrl-sign n genereren om de instr uit te voeren tijdens ontwerp samen beschouwen alle2 invloed op instr-formaat & timing CU volgorde-technieken: 1. 2-adresvelden: mogelijk adres = volgende (nrml), jump-adres of IR-code 2. 1-adresveld: mogelijk adres = volgende (= vorige +1 dus gn apart veld nodig), adresveld of IR-code ADD+1 nodig dus trager ctrl-store<< 3. variabel formaat: 2 versch formaten gebruiken, beslissen welke nodig (ofwel ctrl-bits (adres = in volgorde of IR ofwel jump-logica+adres) extra cycle om te beslissen adresgeneratie 1. mapping: opcode vertalen (mbv bovenste decoder) in ctrl-storeadres (1x per cycle) 2. optellen: 2 porties optellen/combineren om adres te vormen 3. residual control: eerder opgeslagen adres (temp-storage) gebr n : subroutines return-adres 16.3 Control Unit Organisatie Cycle = basis = Fetch (adhv adres) + Execute (ctrl-sign n maken interne/externe ctrl-bus) 17 PARALLEL PROCESSING Single instr, single datastream SISD: 1 CPU die 1 instr uitvoert op data die in single mem zit Single instr, multiple - SIMD: simultane uitvoering v enkele processing-elem n, elk met hun data-mem Multiple instr, single - MISD: meerdere CPU s die meerdere instr s uitvoeren Multiple instr, multiple - MIMD: set v CPU s voeren simultaan versch instr-sequenties uit op versch datasets tightly coupled: shared mem, communicatie dr dat geh (SMP of NUMA) loosely coupled: verzameling onafh uni-cpu s of SMP s geconnecteerd om cluster te vormen, communicatie via fixed path of netw-connectie p 14

15 17.1 Symmetrische Multiprocessors SMP EIGENSCHAPPEN: 2(+) gelijkaardige CPU s die zelfde geh & I/O delen, geconnecteerd dr e bus memaccesstijd vr elke CPU toegang tt I/O-app n dr zelfde of gescheiden kanalen iedere CPU k zelfde taken uitvoeren symmetrisch dergelijk systeem gecontroleerd dr OS: interactie tss processors (op job, taak, bestand & data-level) VOORDELEN: performantie: parallellisme beschikbaarh: alle CPU s zelfde f ties 1 CPU die faalt probl uitbreiding: toevoegen CPU mogelijk schaalbaarh: producten verkopen met prijs/perform afh v # CPU s ORGANISATIE: time-shared bus (mstal): adressering (versch elem n op bus), arbitrage & time-sharing voordelen: simpel, flexibel & betrouwbaar (1 apparaat dat uitvalt crash) nadelen: perf gelimiteerd dr bus cycle-time, elke CPU moet lokale cache h (# bus-toegangen ) cache-coherentie? OS ontwerpkwesties: moet overkomen als systeem met 1 CPU gelijktijdige parallelle processen: zelfde stukken code tegelijkertijd gebruiken mgmt f ties nodig (deadlock, invalid ops vermijden) scheduling dr elke processor conflicten vermijden synch: gedeelde adresruimte & IO mutual exclusion geh-mgmt multiport-geh, paging coördineren (consistentie bij pag s delen) betrouwbaarh & fouttolerantie: als 1 CPU uitvalt vloeiend opvangen: herstructureren 17.2 Multithreading & Chip Multiprocessors perf meten adhv snelheid wrmee instr s w uitgevoerd: MIPS = f IPC (gem # instr s/cycle) perf dr f & dr IPC pipelining, superscalair, gebruik pipeline optimaliseren (out-of-order issuing) limieten dr complexiteit & stroomverbruik oplossing: multithreading MT proces = broneigendom (adresruimte & evt controle over IO/files) & scheduling/executie (interleaved met andere, prio, exec-state) proces-switch = operatie die CPU v/h ene nr andere proces omschakelt: adresruimte opslaan & vervangen p 15

16 thread = uitvoerbare 1heid v proces: CPU-context (PC, SP) & eigen dataruimte thread-switch: schakelen v ene thread nr andere binnen proces (minder kostelijk dan proces-switch) implicit MT: parallel uitvoeren threads van 1 proces explicit MT: parallel instr s v versch threads v versch processen uitvoeren, instr s v versch threads interleaven op 1 pipeline & parallel uitvoeren op versch pipelines 1. interleaved MT = fine-grained MT: CPU switched tss 2(+) threads clock-cycle 2. blocked MT = course-grained MT: 1 thread uitvoeren tt event die delay veroorzkt (vb cache miss) andere thread 3. Simultaneous MT = SMT: instr s gelijktijdig gelanceerd v versch threads nr execunits v superscalaire CPU 4. Chip multiprocessing: CPU gekopieerd op chip, elke CPU handelt aparte threads af alle logica beschikbaar per CPU multicore scalaire processors: Single-threaded: simpele pipeline (RISC), gn MT Interleaved MT: cf supra, pipeline stages voll vol, HW nodig vr thread-switches Blocked MT: delay-event zou pipeline stoppen threadswitch superscalaire processors: gwn superscalair: gn MT interleaved MT: per cycle zovl mog instr s v 1 thread (# afh v dependencies) blocked MT: instr s v 1 thread Very Long Instr Word VLIW: meerdere parallelle instr s/woord (dr compiler), evt deel NOOPs interleaved MT VLIW: zelfde vrdelen als zonder VLIW blocked MT VLIW: idem (c) Scalair (d) Superscalair parallelle gelijktijdige uitvoering v versch threads: SMT: versch instr s gelijktijdig lanceren, 1 thread mag alle horiz slots vullen, als genoeg threads max # instr s/cycle p 16

17 chip multiprocessor: meerdere 2-issue superscalaire CPU s, elke CPU krijgt thread tt 2 instr s/cycle/thread 17.3 Voorbeelden Pentium 4: hyperthreading = SMT met support vr 2 threads 2 CPU s IBM Power5: chip multiprocessing + SMT elke chip 2 versch CPU s die elk 2 threads parallel k uitvoeren adhv SMT 18 MULTICORE COMPUTERS 18.1 Performantiekwesties 1. Hardware: performantie dr betere organisatie & hogere freq parallelisme pipelining, superscalair, SMT resultaten want complexere logica nodig, transistors<< mr o/e chip moeilijker ontwerpen, debuggen, testen + verbruikprobl n Regel v Pollack: performantie sti jgingcomplexiteit nt lineaire toename multicore = bijna-lineaire toename (kern k nooit alle cache effectief gebruiken) 2. Software: perf-voordelen afh v effectief gebr v parallellisme klein deel seriële code = grote terugval in perf! wet v Amdahl: speedup = executietijd v progr op enkele CPU executietijd v progr op N parallelle CPU s = 1 (1 f ) + ( f /N) - f = fractie die parallelliseerbr is - gn overhead (communicatie, jobs verdelen/scheduling & cache coherentie) in rek gebr8 vb-progr die profiteren v multicore: db s, java-, multiproces- & multi-instance applicaties 18.2 Multicore organisatie variabelen: # kernen per chip, # levels cache per chip, # gedeelde cache individuele kernen = superscalair of SMT voordelen gedeelde L2-cache: p 17

18 constructieve interferentie vermindert algemene miss rate : ene core roept geh-blok met nodige data op in cache, andere heeft andere data in zelfde geh-blok nodig gedeelde data w nt gedupliceerd deftige frame-vervangingsalgoritmes shared cache per kern = dynamisch afh v uitvoerende threads inter-cpu-communicatie gemakkelijk te integreren dr gedeelde geh-locaties cache-coherentieprobl n beperkt tt L1-cache perf nadelen: dedicated = rapper L2-toegang vr kernen gedeelde L3 k ook perf 18.3 Intel x86 multikernorganisatie 1. Intel Core Duo: 2 x86 superscalaire kernen, dedicated L1, temp-controle per kern Advanced Programmable Interrupt Control (APIC): inter-process interrupts tss kernen, stuurt interrupts nr juiste kern, incl timer zodat OS kern k onderbreken Power Mgmt Logic: monitort temp & CPU-activiteit, past spanning/stroom aan & k subsystemen switchen gedeelde L2 cache (2mb): dynamische toekenning, MESI-support (cache-coh protocol) vr L1, uitgebreide ondersteuning om meerdere Core Duo s in SMP te ondersteunen (lokaal gedeeld algemeen gedeeld) Bus interface FSB 2. Intel Core i7 4 x86 SMT-kernen die elk 4 threads aankunnen, dedicated L2, shared L3 speculatieve fetch vr caches DDR3-geh controller op chip gn FSB QuickPath interconnectie: cache-coherente punt-tt-punt link = hogesnelh link tss CPUchips 21 THE IA-64 ARCHITECTURE motivatie P4 = laatste x86, overstap op nieuwe architectuur: 64-bit veel circuits, snelheid, parallellisme, weg v superscalair instr-lvl parallellisme: impliciet in machine-instr, nt bep dr CPU runtime LIW of VLIW branch predication ipv branch prediction speculative loading p 18

19 Explicit Parallel Instruction Computing EPIC, IA-64 = IS-architectuur vr op EPIC, Itanium = vb v organisatie v deze arch wrm nieuwe arch? nt HW compatibel met x86: alle HW-mogelijkh n al geïmpl expliciet parallellisme: instr-parallellisme compile time CPU gebruikt deze info minder complexe circuits nodig, compiler mr tijd runtime & ziet voll progr ipv stukje std organisatie vl registers hoge graad v parallellisme ondersteunen & expliciet zichtbr (gn reg-renaming dr CPU) versch exec-units (8+ vs nrml 4 bij superscal), afh v # beschikbre transistors 8 parallelle instr s k w gesplitst in 2x4 als mr 4 EU s 1. I-unit: integer bewerking, shift/add, logisch, compare,... adresberekening 2. M-unit: geheugen load/store tss geh&reg s + ALU-ops 3. B-unit: branch-instr s 4. F-unit: floating-point instr s 5. X-unit: extended als nrmle units nt lang genoeg om instr erin te coderen instr formaat p 19

20 meerdere bundels fetchen in 1x, per bundel 3 instr s ( = syllables) + template template = type instr, welke k parallel w uitgevoerd (nt enkel diegene in desbetreffende bundel!) opcode = 4 bits 16 instr s mogelijk opcode + template + other modifying bits (vw n ) vb templ+opcode = jump, OMF = if zero compiler hft instr s gebundeld nt in orig volgorde mapping v instr s op exec-units, tem zwarte strepen = parallel uitvoerbr, er8r dependencies ed assembly language format: [qp] instr [.comp] dest = srcs // ;; stopt reeks parallelle instr s = instr-groep 21.1 Predication = toekenning compiler verwijdert branches dr conditionele uitvoering: (vb met if-then-else) 1. bij if voegt compiler compare toe die 2 predicates creërt: P1 & P2, als compare = true P1 = 1, anders P2 = 1 2. elke instr in then-pad hft referentie nr P1, elke instr in else-pad nr P2 3. CPU voert beide uit, als uitkomst compare gekend ene weg, andere comitten 21.2 Control Speculation = speculative loading data uit geh laden vr CPU het nodig hft geh-delays vrkomen als exception uitstellen tt juiste tijdstip (wr load nodig) als load vóór branch verplaatst probl n Not-a-Thing bit (v te laden reg) setten, w gecheckt in check als NaT = 1 branch nr recovery progr w genomen (OS) 21.3 Data Speculation = advanced loading 1. ld8.a doet load & schrijft bronadres (= wat geladen) in Advanced Load Address Table p 20

21 2. st8 controleert ALAT vr entries die overlappen met hetgeen hij schrijft, zoja match uit ALAT verwijderen 3. ld8.c controleert ALAT ook, als gn match opnieuw loaden, anders gn probl 21.4 Software pipelining loop n rolling loop in stappen v 2 verder zetten en 2 acties per loop doen overhead loops uitsplitsen in hun versch instr s, kijken welke parallel k met andere instr s veronderstelt multi-port geheugen (load & store samen) 21.5 Register set Register stack: procedure krijgt frame (tt 96 reg s) op stack bij call/return, als stack vol oudste nr geh A GEHEUGENCHIPS A.1 Klein & goedkoop - DRAM DRAM = dynamische RAM: op tijd dynamisch verversen anders info weg (condensatoren opnieuw laden) opbouw & werking: geh-cellenveld: 2dim-matrix elke bit opgeslagen in individueel adresseerbare geh-cel (kolom/rijnr) adresbuffer: ontvangt opslagadres (dr externe geh-sturing bep adhv dr CPU ingevoerde adres) opsplitsen in regel- & kolomadres die apart w ingelezen (minder pinnen nodig) = multiplexing Row Adress Strobe-pin regeladres inlezen & nr regeldecoder Column Address Strobe-pin kolomadres inlezen & nr kolomdecoder RAS-CAS-delay = tijd tss rij- & kolomadres inlezing geadresseerde cel geeft inhoud vrij leesversterker I/O-gate data-uitvoerbuffer D out -pin schrijven: Write Enabled D in -pin data-invoerbuffer I/O-gate + leesversterker geadresseerde cel geheugencel = condensator die bit opslaat (lading) & keuzetransistor die condensator kiest (schakelaar) gate v transistor verbonden met woordleiding (1 per regel), bitleidingparen verbonden met sources v transistors (1 paar per kolom), drain verbonden met condensator p 21

22 lezen: voorlaadschakeling: voorlader laadt alle bitleidingparen op tt Vcc/2 + alle bitleidingparen kortgesloten zelfde potentiaal RAS-voorlaadtijd hierna voorlader uitschakelen & geh-cellen benaderen via woordleiding regeladressignaal activeert juiste woordleiding alle verbonden keuzetransistors doorgeschakeld & ladingen vloeien naar bitleidingen probleem: opslagcondensator hft capaciteit <<< bitleiding V op bitleiding verandert hl weinig (100mV, t2 in figuur) als opslagcondensator leeg was (= 0) V klein beetje leesversterker legt bitleiding die aan opslagcondensator hangt aan massa, andere versterkt nr Vcc (t3) als opslagcondensator vol omgekeerde = differentiaalversterking op figuur: V RD = afh v opgeslagen waarde, deze wordt versterkt versterkte opslagsign v elke leesversterker I/O-gates (= 2 gatetransistors, gestuurd dr kolomdecoder, die 1 I/O-gate activeert) I/O-leidingpaar data-uitvoerbuffer versterkt signaal ng eens D out -pin tegelijkertijd komen V v bitleidingparen over1 met gegevens in over1komstige geh-cellen v/d woordleiding gegevens ververst! decoders & leesversterkers uitschakelen, gates in I/O sperren voorlader terug activeren (t4): V v bitleidingen w trg Vcc/2 (t5) nieuwe leescyclus p 22

23 schrijven: geh-sturing geeft RAS-sign + WE-sign te schrijven gegevens via D in invoerbuffer (versterkt) I/O-leidingpaar regeldecoder ontcijfert regeladres activeert juiste woordleiding (dus alle keuzetransistors doorgeschakeld lading aan bitleidingpaar) CAS-sign + kolomadres via adresbuffer kolomdecoder, ontcijfert transfergate doorgeven nr juiste leesversterker (versterkt) afh v databit (0 of 1) V v bitleiding versterken/verzwakken signaal v data-invoerbuffer >> lading in geadresseerde opslagcel gegevens opslaan alle leesversterkers versterken lading in opslagcellen alle gepaarde bitleidingen trug op V waarden v te schrijven gegevens ingewikkeldere RAM: Dual-Port RAM: simultaan lezen/schrijven VRAM: naast parallelle schrijftoegangspoort zr snelle seriële uitgangspoort meerdere bits snel nr buiten sturen DRAM verversen: condensators ontladen vb alle 128 rijen binnen de 2ms verversen RAS-only refresh: blinde leescyclus RAS-sign activeren, regeladres = refreshadres maar geen CAS-sign: nts doorgegeven aan I/O-leidingen & data-uitvoerbuffer externe schakeling (of CPU zelf) nodig om alle adressen te overlopen & door te geven CAS-before-RAS refresh: DRAM-chip hft eigen refresh-schakeling met adresteller, geactiveerd dr CAS bep tijd laag te houden vr RAS te activeren Pin 1-refresh: met specifieke refresh-pin Hidden RAS-only refresh: refresh- verstopt achter leescyclus CAS-sign laag houden, RAS schakelen tijdens leescyclus gelezen geg s blijven geldig tijdens refreshcyclus Hidden Pin 1-refresh: refresh- verstopt achter leescyclus, maar nt trg RAS maar refresh-pin activeren tijdens CAS laag blijft p 23

24 Self-refresh: tijdens t re f m alle processen w gestopt onmogelijk vr pc s! (stand-by mode) (e) RAS-only refresh (f) CAS-before-RAS refresh (g) Pin 1-refresh (h) Hidden RAS-only refresh (i) Hidden Pin 1-refresh (j) Self-refresh DRAM-indelingen: bit- geörienteerd (cf supra), nibble(4 bits)-, byte- & word(2 bytes)-geörienteerd (wide-rams): meer datapinnen = breedte datawoord dat k w verstuurd bij lees/schrijfbenadering DRAM-werkmodi: 1. traditionele modus: iedere keer regel & kolomadres ingeven data lezen/schrijven 2. paginamodus: 1x regeladres, kolomadres aanpassen RAS-sign 1x, iedere keer verversen mbv CAS-sign pagina = regel i/h geh-cellenveld RAS-vrladen & regeladres decoderen overbodig 50% winst in toegangstijd, cyclustijd 70% korter (als data v 1 pag nodig!) 200-tal bewerkingen met 1 actief RAS-sign (schrijf & lees!) 3. hyperpaginamodus = EDO-modus: tijd tss 2 op1volgende CAS-activeringen korter 4. static column modus: cf hyperpaginamodus maar CAS-sign blijft gelijk interne DRAMsturing herkent wijziging automatisch 5. nibble modus: eenvoudige seriële modus: CAS 4x 8reenvolgens omschakelen 4 bits uit geadresseerde rij ophalen & in intern 4bits-tss-geh per CAS-sign bit uitvoeren 6. serial modus: uitgebreide nibble modus nt tt 4 beperkt, afh v interne indeling v/d chip (handig vr beeldschermgegevens, vullen cachelijn) 7. interleaving = geh in meerdere banken opdelen vb 2-wegsinterleaving: even en oneven dubbelwoordadressen splitsen bij seriële benadering: beide banken afwisselend aanspreken, ene bank voorladen terwijl andere w benaderd interleaving + paginamodus combineren: op1volgende pages in versch banken zetten p 24

25 A.2 Geheugenmodulen ipv losse geh-cellen modulen gebruiken: SIMM & SIP (breedte v 9bits, verouderd), PS/2 (breedte 36, 32 of 40bits) of DIMM SIMM & SIP s: vb max in 4 banken verdeeld 4-wegsinterleaving mogelijk Double Inline Memory-Modules DIMM s: 64bits breed, meestal met SDRAM-chips op Synchronous DRAM SDRAM ( SRAM = static RAM): werken in burstmodus (figuur = leesburstmodus) & met synchroon kloksignaal ipv met CAS- & RAS-timing (wel ng aanwezig mr vr read/write/burststop) met of zonder EEPROM: bevat geg s ivm soort module, org v gebruikte DRAMS & timingparam s vr automatische optimale instelling (zonder EEPROM instellen via BIOS) Double Data Rate RAM = SDRAM met datatransp n op opgaande & neergaande klokflank Synchronous Graphic RAM SGRAM: geh op graka s = SDRAM geoptimaliseerd vr hoogst mogelijke overdr8snelh (ipv SDRAM = vr hoogst mog geh-hoeveelh) RAMBus = Rambus Inline Memory Modules RIMM s: op beide flanken v klok gewerkt, controller + RDRAM s + afsluiting bussysteem met DRAM A.3 SRAM - snel & duur opslagcel bestaat (mstal) uit flip-flop, wrv toestand = waarde refresh nt nodig! ( DRAM) flip-flop omschakelen: hoge spanning op Q spanning over Tr 2 = doorschakelen minder spanning op Q = lichtjes sperren v Tr 1 terugkoppeling enz tt omschakeling stabiliteit bep dr verhouding belanstingsweerst n tov doorlaatweerst v transistors: hoe groter hoe stabieler duur, minder opslagcapaciteit cache ook 2dim-matrix: regel- & kolomdecoder, gates v keuzetransistor verbonden met woordleiding, Q/Q met bitleidingpaar kolom en regeladres nt multiplexen, opdeling w intern gedaan meer pinnen nodig bij schrijven geeft leesversterker veel sterker signaal dan flip-flip (die ook al sterk is) overschreven p 25

26 1 modus: std andere (cf DRAM) gn effect eenvoudige sturing (wel complexere interne struct) vluchtigheid v SRAM: stroomuitval detectie = watchdog bovenste deel figuur = spanningstabilisatie (mbv gelijkrichter + condens + spanningstabil) onderste deel = powerfaildetectie: 2 diodes vormen wisselspanning om tt enkel positieve loben als stroomuitval wordt transistor gesperd V = 0 invertor hoge spanning die hertriggerbare multivibrator activeert nog korte tijd stroomvoorziening vb - Non Volatile RAM NOVRAM (nt vluchtig): SRAM uitgebreid met EEPROM wrin alles bij stroomuitval w gebackupped vb - Phase-change RAM PRAM: CMOSRAM + lithiumknopcel + VLSI-controllerchip schakelt batterij of voedingsspanning aan, afh v welke grootst Power Fail detectie: als V<4.25V Chip Enabled blokkeren als CE al actief bij powerfailure, Write Protect f tie vertraagd tt geh-cyclus compleet (duur typisch 10ns) A.4 Permanent Geheugen 1. ROM: gn lading/schakeltoestanden vaste verb ingen tss componenten compact/inflexibel 2. PROM = Programmable ROM: flexibeler info inbranden dr gebruiker = Mask-ROM 3. EPROM = Erasable Programmable ROM: mbv sterke elektrische puls bep verbindingen doorbranden ipv masker: (a) testen of EPROM leeg (inhoud = 0ffH) (b) programmeren VPP = 26V, adres & data aanbrengen, progr-puls v 50ms (c) verifiëren als inhoud klopt fast = interactieve mode progr-puls v 10-20ms wissen mbv UV-licht (TL-lamp of zon ook na lange tijd) p 26

27 4. OTPROM = One Time PROM: EPROM zonder lichtvenster 5. Flash memory = EEPROM s die even flexibel w geprogr dan DRAM/SRAM (zelfde opbouw: geh-matrix), permanente data zonder batterij 6. EAROM = Electrically Alterable ROM 7. EEPROM = Electrically EPROM: UV = duur PIA = Peripheral Interface Adapter: 2x8 bidir poorten + 4 ctrl-lijnen verbind juiste signalen genereren decoderen actie op EEPROM 8. SEEPROM = Serial EEPROM: EEPROM met seriële connectie nr circuitbord (minder pins minder plaats nodig & stroomverbruik A.5 Koppeling v geh-schakelingen aan CPU adres- & selectie-info: geh-schakeling selecteren tss alle andere & juiste cel kiezen directe adressering: n adrespennen (afh v # cellen) & chipselectieklem die w actief gemaakt als juiste adres op adresklemmen multiplex adressering: adres/data-mux = op ene tijdstip adres op pinnen, latere tijdstip data OF adres-mux (regel & kolom cf supra) gegevensinfo (databus): nuttige info die in/uitgevoerd w controlinfo Adresdecoders: vast: adrespinnen mbv logica-elementen verbinden juiste cel selecteren instelbaar: adrespinnen met IC verbinden mapping adresbereik met schakelaars instellen (comparator-ic of EXNOR-poorten) vast-programmeerbaar: vb mbv PROM p 27

Digitale en analoge technieken

Digitale en analoge technieken Digitale en analoge technieken Peter Slaets February 14, 2006 Peter Slaets () Digitale en analoge technieken February 14, 2006 1 / 33 Computerarchitectuur 1 Processors 2 Primair geheugen 3 Secundair geheugen

Nadere informatie

Centrale begrippen hoofdstuk 3. Waarom multiprogramming? Vandaag. processen proces state: running, ready, blocked,... Vragen??

Centrale begrippen hoofdstuk 3. Waarom multiprogramming? Vandaag. processen proces state: running, ready, blocked,... Vragen?? Vragen?? Vandaag Hoofdstuk 4: threads (tentamenstof : 4.1 t/m 4.2) Kleine Opgaven 4.1 (niet alleen ja of nee, ook waarom!) en 4.4 inleveren maandag Centrale begrippen hoofdstuk 3 processen proces state:

Nadere informatie

RAM geheugens. Jan Genoe KHLim. Situering RAM-geheugens. Geheugens. Halfgeleider Geheugens. Willekeurig toegankelijk geheugen

RAM geheugens. Jan Genoe KHLim. Situering RAM-geheugens. Geheugens. Halfgeleider Geheugens. Willekeurig toegankelijk geheugen Jan Genoe KHLim Situering RAM-geheugens Geheugens Halfgeleider Geheugens Serieel toegankelijk geheugen Willekeurig toegankelijk geheugen Read Only Memory ROM Random Access Memory RAM Statische RAM SRAM

Nadere informatie

Geheugenbeheer. ICT Infrastructuren 2 december 2013

Geheugenbeheer. ICT Infrastructuren 2 december 2013 Geheugenbeheer ICT Infrastructuren 2 december 2013 Doelen van geheugenbeheer Reloca>e (flexibel gebruik van geheugen) Bescherming Gedeeld/gemeenschappelijk geheugen Logische indeling van procesonderdelen

Nadere informatie

Computerarchitectuur. H&P App. C. Pipelining

Computerarchitectuur. H&P App. C. Pipelining Computerarchitectuur H&P App. C. Pipelining Kristian Rietveld http://ca.liacs.nl/ Motivatie Pipelining is een techniek die tegenwoordig in iedere CPU wordt gebruikt om de performance te verbeteren. Idee:

Nadere informatie

Inhoud vandaag. Interrupts. Algemeen ARM7 AIC

Inhoud vandaag. Interrupts. Algemeen ARM7 AIC Inhoud vandaag Interrupts Algemeen ARM7 AIC Interrupts Wat is een interrupt? Een interrupt is een onderbreking van de huidige bezigheden ten gevolge van een externe gebeurtenis, zodanig dat de bezigheden

Nadere informatie

von-neumann-architectuur Opbouw van een CPU Processoren 1 december 2014

von-neumann-architectuur Opbouw van een CPU Processoren 1 december 2014 von-neumann-architectuur Opbouw van een CPU Processoren 1 december 2014 Herhaling: Booleaanse algebra (B = {0,1},., +, ) Elke Booleaanse functie f: B n B m kan met., +, geschreven worden Met Gates (electronische

Nadere informatie

Tentamen 17 augustus 2000 Opgaven Computerarchitectuur

Tentamen 17 augustus 2000 Opgaven Computerarchitectuur Tentamen 17 augustus 2000 Opgaven - 1 - Computerarchitectuur Tentamen Computerarchitectuur (213005) 17 augustus 2000 2 bladzijden met 5 opgaven 3 antwoordbladen Het raadplegen van boeken, diktaten of aantekeningen

Nadere informatie

Uitwerking oefententamen Computerarchitectuur December 2016

Uitwerking oefententamen Computerarchitectuur December 2016 Uitwerking oefententamen Computerarchitectuur December 2016 I.a. De overall CPI kan worden berekend met de formule n IC i CPI Instruction count CPI i voor de ratio vullen we telkens de geven frequentie

Nadere informatie

informatica. hardware. overzicht. moederbord CPU RAM GPU architectuur (vwo)

informatica. hardware. overzicht. moederbord CPU RAM GPU architectuur (vwo) informatica hardware overzicht moederbord CPU RAM GPU architectuur (vwo) 1 moederbord basis van de computer componenten & aansluitingen chipset Northbridge (snel) Southbridge ("traag") bussen FSB/HTB moederbord

Nadere informatie

ICT Infrastructuren: Processen en Threads. 18 november 2013 David N. Jansen

ICT Infrastructuren: Processen en Threads. 18 november 2013 David N. Jansen ICT Infrastructuren: Processen en Threads 18 november 2013 David N. Jansen Datum en Ajd van werkcollege na overleg met de aanwezigen: donderdag 8:45 10:30 Leerdoel voor vandaag. Stallings hoofdst 2 4 Hoofddoelen

Nadere informatie

Wat is een busverbinding?

Wat is een busverbinding? Wat is een busverbinding? gemeenschappelijke verbinding tussen CPU, geheugen en I/O-schakelingen onderscheid tussen: databus/adresbus/controlbus intern/extern serieel/parallel unidirectioneel/bidirectioneel

Nadere informatie

slides2.pdf April 12,

slides2.pdf April 12, Werking van CPU CSN CS2 CPU, I/O en Memory management Piet van Oostrum 12 april 2002 De ALU kan alleen eenvoudige operaties uitvoeren (bijv. twee getallen optellen, vermenigvuldigen of testen of iets >

Nadere informatie

Computertechniek vorige examens

Computertechniek vorige examens Computertechniek vorige examens Examen 2009 Groep 1 1. Geef de 2 manieren waarop de adressen van de I/O-module in de adresruimte geïntegreerd kunnen zijn. (memory-mapped en isolated dus) 2. Wat is post-indexering?

Nadere informatie

Geheugenbeheer. ICT Infrastructuren. hoofdstukken 7 en 8.1

Geheugenbeheer. ICT Infrastructuren. hoofdstukken 7 en 8.1 Geheugenbeheer ICT Infrastructuren hoofdstukken 7 en 8.1 Eenvoudig geheugenbeheer OS gebruikt een klein stukje geheugen rest is voor gewone processen OS vrij 0 1000 Eenvoudig geheugenbeheer OS gebruikt

Nadere informatie

Digitale technieken Deeltoets II

Digitale technieken Deeltoets II Digitale technieken Deeltoets II André Deutz 11 januari, 2008 De opgaven kunnen uiteraard in een willekeurige volgorde gemaakt worden geef heel duidelijk aan op welke opgave een antwoord gegegeven wordt.

Nadere informatie

Van Poort tot Pipeline. Ben Bruidegom & Wouter Koolen-Wijkstra AMSTEL Instituut Universiteit van Amsterdam

Van Poort tot Pipeline. Ben Bruidegom & Wouter Koolen-Wijkstra AMSTEL Instituut Universiteit van Amsterdam Van Poort tot Pipeline Ben Bruidegom & Wouter Koolen-Wijkstra AMSTEL Instituut Universiteit van Amsterdam Van Poort tot Pipeline Pipeline processor One cycle machine Calculator File of registers Assembly

Nadere informatie

1 graduaat Elektriciteit/elektronica KHLim - dep. IWT HALFGELEIDER-GEHEUGENS HALFGELEIDER GEHEUGENS STATISCH DYNAMISCH ROM PROM EPROM EEROM

1 graduaat Elektriciteit/elektronica KHLim - dep. IWT HALFGELEIDER-GEHEUGENS HALFGELEIDER GEHEUGENS STATISCH DYNAMISCH ROM PROM EPROM EEROM HALFGELEIDER-GEHEUGENS HALFGELEIDER GEHEUGENS WILLEKEURIG TOEGANKELIJK SERIEEL TOEGANKELIJK RAM ROM SRG CCD MBM STATISCH DYNAMISCH ROM PROM EPROM EEROM (ALLEEN-)LEES GEHEUGEN = ROM ROM = Read Only Memory:

Nadere informatie

Microcontrollers Week 1 Introductie microcontroller Jesse op den Brouw INLMIC/2014-2015

Microcontrollers Week 1 Introductie microcontroller Jesse op den Brouw INLMIC/2014-2015 Microcontrollers Week 1 Introductie microcontroller Jesse op den Brouw INLMIC/2014-2015 Computersysteem Een systeem dat rekenkundige operaties, data manipulaties en beslissingen kan uitvoeren, aan de hand

Nadere informatie

Halfgeleider geheugens:

Halfgeleider geheugens: HALFGELEIDER-GEHEUGENS Halfgeleider geheugens: elektronische schakelingen kunnen binaire informatie opnemen, bewaren en weergeven vaak als geheugenblok in complex digitaal systeem voorbeeld: (micro)computersysteem

Nadere informatie

scc = b) CD AB

scc = b) CD AB Computerarchitectuur en -organisatie (213030) Dinsdag 21 januari 2040, 13.30 17.00 uur 7 bladzijden met 8 opgaven 4 bladzijden met documentatie Let op: Vul het tentamenbriefje volledig in (d.w.z. naam,

Nadere informatie

1 Aanvulling cosy deeltijd

1 Aanvulling cosy deeltijd 1 Aanvulling cosy deeltijd 1.1 Multiprocessor versus multicomputer Het kenmerk van een multiprocessor is dat meer CPU hetzelfde geheugen delen. Voordeel van deze aanpak is het relatief eenvoudige programmeermodel.

Nadere informatie

Sequentiële gepijplijnde machine

Sequentiële gepijplijnde machine Sequentiële gepijplijnde machine Samenvatting controlesignalen Als we de controlesignalen van vorig hoofdstuk nemen, kunnen we per cyclus een naam geven aan de stap. We plaatsen hiervoor wel de registerbeschrijving

Nadere informatie

Multi-core systemen. door Alexander Melchior

Multi-core systemen. door Alexander Melchior Multi-core systemen Multi-cpu & Multi-core Multi cpu & Multi core door Alexander Melchior Toevoeging aan GDP Overdragen Capita Selecta Waarom? Een stukje geschiedenis 2005: Introductie eerste consumenten

Nadere informatie

Memory Management. Virtual Memory. Eisen Memory Management. Verdelen geheugen over meerdere processen

Memory Management. Virtual Memory. Eisen Memory Management. Verdelen geheugen over meerdere processen Memory Management Process control information Entry point to program Process Control Block Verdelen geheugen over meerdere processen Program Branch instruction Virtual Memory Data Reference to data Processen

Nadere informatie

Tentamen Computerorganisatie in aug. 1999, uur. N.B.: Dit tentamen bestaat uit 30 opgaven Totaal aantal bladzijden: 9

Tentamen Computerorganisatie in aug. 1999, uur. N.B.: Dit tentamen bestaat uit 30 opgaven Totaal aantal bladzijden: 9 TECHNISCHE UNIVERSITEIT DELFT Faculteit Informatietechnologie en Systemen Subfaculteit Technische Wiskunde en Informatica Werkeenheid Technische Informatica Tentamen Computerorganisatie in101 27 aug. 1999,

Nadere informatie

18 Embedded systemen 1

18 Embedded systemen 1 18 Embedded systemen 1 r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15(pc) NZCV CPSR Figuur 18.1 ARM-programmeermodel Byte 0 Byte 1 Byte 2 Byte 3 Byte 3 Byte 2 Byte 1 Byte 0 Figuur 18.2 Endian conversie

Nadere informatie

Hoofdstuk 19. Embedded systemen

Hoofdstuk 19. Embedded systemen Hoofdstuk 19 Embedded systemen 1 r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15(pc) NZCV CPSR Figuur 19.1: ARM-programmeermodel. Byte 0 Byte 1 Byte 2 Byte 3 Byte 3 Byte 2 Byte 1 Byte 0 Figuur 19.2:

Nadere informatie

Tentamen Computersystemen

Tentamen Computersystemen Tentamen Computersystemen baicosy6 2e jaar bachelor AI, 2e semester 21 oktober 213, 9u-11u OMHP D.9 vraag 1 Van een Single Cycle Harvard machine hebben de componenten de volgende propagation delay time:

Nadere informatie

Tim Mallezie Architectuur van besturingssystemen: Vraag A2.

Tim Mallezie Architectuur van besturingssystemen: Vraag A2. Procesbeheer: kenmerken van moderne besturingssystemen. 1. Bespreek de (drie) meest typische kenmerken van moderne besturingssystemen. 2. In hoeverre beantwoorden UNIX, Linux en Windows NT hieraan? Geef

Nadere informatie

Hardware Beginners. Processoren. Door Theo De Paepe

Hardware Beginners. Processoren. Door Theo De Paepe Hardware Beginners Processoren Merken en types Intel AMD * Pentium * Pentium II * Pentium III * Pentium 4 * Celeron * K6 * K7 / Athlon (64 BIT) * Duron * Sempron Opbouw En nog: * FPU * Datalijnen * Adreslijnen

Nadere informatie

Geheugen en Adressering. Binding. Binding (2) Logische en Fysieke adresruimten. relocatie register. Dynamic loading

Geheugen en Adressering. Binding. Binding (2) Logische en Fysieke adresruimten. relocatie register. Dynamic loading Geheugen en Adressering Binding Geheugen (main memory, primary storage) is noodzakelijk voor de uitvoering van programma's. te beschouwen als array van adresseerbare bytes (of woorden). verschillende processen

Nadere informatie

Computerarchitectuur en netwerken. Memory management Assembler programmering

Computerarchitectuur en netwerken. Memory management Assembler programmering Computerarchitectuur en netwerken 2 Memory management Assembler programmering Lennart Herlaar 12 september 2016 Inhoud 1 Protectie: Hoe het O.S. programma s tegen elkaar kan beschermen modes memory management

Nadere informatie

Beter, Sneller, Mooier. Processoren 27 maart 2012

Beter, Sneller, Mooier. Processoren 27 maart 2012 Beter, Sneller, Mooier Processoren 27 maart 2012 Beter! Sneller! Krach:gere CPU: microcode Snellere CPU: pipeline, out- of- order execu:on Sneller RAM: cache meer mogelijkheden... Welke extra s kan processor-

Nadere informatie

scc =!F3.!F2 b) CD AB

scc =!F3.!F2 b) CD AB Computerarchitectuur en -organisatie (213030) Dinsdag 21 januari 2040, 13.30 17.00 uur 7 bladzijden met 8 opgaven 4 bladzijden met documentatie Let op: Vul het tentamenbriefje volledig in (d.w.z. naam,

Nadere informatie

Computerarchitectuur en netwerken Toets 1 4 okt

Computerarchitectuur en netwerken Toets 1 4 okt 11.00 13.00 De open vragen moet je beantwoorden op tentamenpapier. De multiple-choice antwoorden moet je op het vragenblad invullen in de rechtervakjes en dat blad inleveren. Schrijf je naam, studentnummer

Nadere informatie

Nederlandse samenvatting (Dutch summary)

Nederlandse samenvatting (Dutch summary) Nederlandse samenvatting (Dutch summary) Ditproefschriftpresenteerteen raamwerk voorhetontwikkelenvanparallellestreaming applicaties voor heterogene architecturen met meerdere rekeneenheden op een chip.

Nadere informatie

Inhoudsopgave. Optimalisatie van de mmips. Forwarding optie 1. Design flow. implementation

Inhoudsopgave. Optimalisatie van de mmips. Forwarding optie 1. Design flow. implementation 2 Inhoudsopgave Optimalisatie van de mmips pc Sander Stuijk Veel gestelde vragen Hoe moet ik forwarding implementeren? Hoe moet ik clipping implementeren? Waarom is mijn simulatie zo traag? Hoe kan ik

Nadere informatie

Samenvatting Computer Architectuur 2006-2007

Samenvatting Computer Architectuur 2006-2007 Sequentiële logica Wat is sequentiële logica We noemen dit ook wel final state machine. Het neemt een ingang en een huidige toestand en vertaalt die via een combinatorische functie in een uitgang en een

Nadere informatie

De computer als processor

De computer als processor De computer als processor DE FYSIEKE COMPUTER Componenten van de computerconfiguratie Toetsenbord Muis Scanner Microfoon (Extern geheugen) Invoerapparaten Uitvoerapparaten Monitor Printer Plotter Luidspreker

Nadere informatie

Software Reverse Engineering. Jacco Krijnen

Software Reverse Engineering. Jacco Krijnen Software Reverse Engineering Jacco Krijnen Opbouw Inleiding en definitie Techniek Assemblers/Disassemblers Compilers/Decompilers Toepassingen Security Overige Softwarebeveiliging Piracy Anti RE technieken

Nadere informatie

Hoofdstuk 18. Embedded systemen

Hoofdstuk 18. Embedded systemen Hoofdstuk 18 Embedded systemen 1 r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15(pc) NZCV CPSR Figuur 18.1 ARM-programmeermodel Byte 0 Byte 1 Byte 2 Byte 3 Byte 3 Byte 2 Byte 1 Byte 0 Figuur 18.2

Nadere informatie

G. Schottert Handleiding Freekie 1. Nederlandse handleiding. Freekie DMX ADRES INSTELLINGEN 1

G. Schottert Handleiding Freekie 1. Nederlandse handleiding. Freekie DMX ADRES INSTELLINGEN 1 DMX ADRES INSTELLINGEN 1 Freekie Nederlandse handleiding Iedere fixture dat verbonden is met serial link moet voorzien worden van een DMX startadres, welke het eerste kanaal is dat de controller gebruikt

Nadere informatie

Microcontrollers Introductie INLMIC Jesse op den Brouw INLMIC/2014-2015

Microcontrollers Introductie INLMIC Jesse op den Brouw INLMIC/2014-2015 Microcontrollers Introductie INLMIC Jesse op den Brouw INLMIC/2014-2015 Microcontroller Uit Wikipedia A microcontroller (sometimes abbreviated µc or uc) is a small computer on a single integrated circuit

Nadere informatie

Les 11: systeemarchitectuur virtuele machines

Les 11: systeemarchitectuur virtuele machines Les 11: systeemarchitectuur virtuele machines Geavanceerde computerarchitectuur Lieven Eeckhout Academiejaar 2008-2009 Universiteit Gent Virtuele machines Motivatie Interfaces Virtualisatie: inleiding

Nadere informatie

High Performance Computing

High Performance Computing High Performance Computing Kristian Rietveld (krietvel@liacs.nl, kamer 138) Groep Computer Systems - Embedded systems - Specifieke software mappen op specfieke hardware. - Hardware synthesis. - Real-time

Nadere informatie

Hoofdstuk 2. De Von Neumann-architectuur

Hoofdstuk 2. De Von Neumann-architectuur Input Interface Output Interface Informatica Deel III Hoofdstuk 2 De Von Neumann-architectuur 2.1. Organisatie. De overgrote meerderheid der digitale computers zijn georganiseerd zoals weergegeven in fig.

Nadere informatie

Vraag 1 (2 punten) (iii) Een lees-opdracht van virtueel adres 2148 seg 0, offset 2148 - idem

Vraag 1 (2 punten) (iii) Een lees-opdracht van virtueel adres 2148 seg 0, offset 2148 - idem Tentamen A2 (deel b) 24-06-2004 Geef (liefst beknopte en heldere) motivatie bij je antwoorden; dus niet enkel ja of nee antwoorden, maar ook waarom. Geef van berekeningen niet alleen het eindresultaat,

Nadere informatie

Waarmaken van Leibniz s droom

Waarmaken van Leibniz s droom Waarmaken van Leibniz s droom Artificiële intelligentie Communicatie & internet Operating system Economie Computatietheorie & Software Efficiënt productieproces Hardware architectuur Electronica: relais

Nadere informatie

Hoe werkt een rekenmachine?

Hoe werkt een rekenmachine? Hoe werkt een rekenmachine? Uit welke hardware-componenten bestaat een rekenmachine? Welke instructies kan de machine uitvoeren? Practicum met de rekenmachine I Constante getallen Instructies van het type

Nadere informatie

DDS chips. DDS = Direct Digital (frequency) Synthesis. Output = sinusvormig signaal. Maximum frequentie = ½ klokfrequentie

DDS chips. DDS = Direct Digital (frequency) Synthesis. Output = sinusvormig signaal. Maximum frequentie = ½ klokfrequentie www.arduino.cc Arduino en DDS DDS chips DDS = Direct Digital (frequency) Synthesis Output = sinusvormig signaal Maximum frequentie = ½ klokfrequentie Frequentie bepaald door tuning word Grootste fabrikant:

Nadere informatie

In te vullen tabellen.

In te vullen tabellen. In te vullen tabellen. Basisprincipes Binair rekenen: omzettingen: decimaal --> hexadecimaal Stel (40)10 = (?)16 40 16-32 2 16 8-0 0 2 =(28) 16 Binair rekenen: omzettingen: binair --> hexadecimaal Stel

Nadere informatie

De CPU in detail Hoe worden instruc4es uitgevoerd? Processoren 28 februari 2012

De CPU in detail Hoe worden instruc4es uitgevoerd? Processoren 28 februari 2012 De CPU in detail Hoe worden instruc4es uitgevoerd? Processoren 28 februari 2012 Tanenbaum hoofdstuk 2 von Neumann - architectuur. Tanenbaum, Structured Computer Organiza4on, FiMh Edi4on, 2006 Pearson Educa4on,

Nadere informatie

Gelijktijdigheid: Wederzijdse Uitsluiting & Synchronisatie Concurrency: Mutual Exclusion & Synchonization (5e ed: 5.1-5.2, Appendix A.

Gelijktijdigheid: Wederzijdse Uitsluiting & Synchronisatie Concurrency: Mutual Exclusion & Synchonization (5e ed: 5.1-5.2, Appendix A. Gelijktijdigheid: Wederzijdse Uitsluiting & Synchronisatie Concurrency: Mutual Exclusion & Synchonization (5e ed: 51-52, Appendix A1) Processes zijn meestal niet onafhankelijk Bijvoorbeeld: 2 processen

Nadere informatie

ES1 Project 1: Microcontrollers

ES1 Project 1: Microcontrollers ES1 Project 1: Microcontrollers Les 5: Timers/counters & Interrupts Timers/counters Hardware timers/counters worden in microcontrollers gebruikt om onafhankelijk van de CPU te tellen. Hierdoor kunnen andere

Nadere informatie

Studentnummer:... Opleiding:... a) Met welke term wordt het interface tussen software en hardware van een processor aangeduid?

Studentnummer:... Opleiding:... a) Met welke term wordt het interface tussen software en hardware van een processor aangeduid? Computerorganisatie (213110) Dinsdag 15 augustus 2000, 13.30 17.00 uur 7 bladzijden met 6 opgaven 3 bladzijden met documentatie Bij dit tentamen mag geen gebruik worden gemaakt van boeken, dictaten of

Nadere informatie

De CB channel controller TMS1022NL/NLL en TMS1023NL/NLL. ( Dit is een maskrom-programmed version van de Texas Instruments TMS1000 family)

De CB channel controller TMS1022NL/NLL en TMS1023NL/NLL. ( Dit is een maskrom-programmed version van de Texas Instruments TMS1000 family) De CB channel controller TMS1022NL/NLL en TMS1023NL/NLL ( Dit is een maskrom-programmed version van de Texas Instruments TMS1000 family) Ik begin even met een korte inleiding over de TMS1000. ( Wil je

Nadere informatie

Klas : 5 Industriële ICT Herhalingsvragen reeks 1 PC-techniek

Klas : 5 Industriële ICT Herhalingsvragen reeks 1 PC-techniek Klas : 5 Industriële ICT Herhalingsvragen reeks 1 PC-techniek VTI St.- Laurentius Neem eerst de tekst in het boek door, doe dit enkele keren en probeer uiteraard te onthouden wat je leest. Los nadien de

Nadere informatie

SOCS: Oefeningen Hoofdstuk 2

SOCS: Oefeningen Hoofdstuk 2 SOCS: Oefeningen Hoofdstuk 2 Digitale Logica Opgave 1 Wat is een transistor? Een transistor bestaat uit een aantal gedopeerde halfgeleiders. Het doperen van de halfgeleiders is het wijzigen van de geleidende

Nadere informatie

Het Versacom systeem is gedefinieerd in DIN 43861, deel 301 als "transfer protocol A".

Het Versacom systeem is gedefinieerd in DIN 43861, deel 301 als transfer protocol A. Versacom Het Versacom protocol (Versatile Communication) wordt gebruikt voor het op afstand programmeren van intelligente ontvangers. Dit protocol verstuurt schakelprogramma's, agenda- en vakantie periodes

Nadere informatie

High Performance Computing

High Performance Computing High Performance Computing Kristian Rietveld (krietvel@liacs.nl, kamer 138) Groep Computer Systems High-Performance Computing Optimizing compilers (generieke codes, maar ook specifieke rekenkernels). Parallel

Nadere informatie

Deel 2 S7 Graph Ont4 - GA3

Deel 2 S7 Graph Ont4 - GA3 Deel 2 S7 Graph Ont4 - GA3 Deel 2 : Graph 09/05 1 Wanneer er in een installatie een sequentiële beweging geprogrammeerd moet worden is het interessant om gebruik te maken van S7 Graph. De progammastructuur

Nadere informatie

De Arduino-microcontroller in de motorvoertuigentechniek (2)

De Arduino-microcontroller in de motorvoertuigentechniek (2) De Arduino-microcontroller in de motorvoertuigentechniek (2) E. Gernaat (ISBN 978-90-79302-11-6) 1 Procescomputer 1.1 Microprocessoren algemeen De informatie-verwerking zoals is behandeld, is vrijwel geheel

Nadere informatie

Microcontrollers Week 2 Opbouw ATmega32 controller, instructies Jesse op den Brouw INLMIC/2014-2015

Microcontrollers Week 2 Opbouw ATmega32 controller, instructies Jesse op den Brouw INLMIC/2014-2015 Microcontrollers Week 2 Opbouw ATmega32 controller, instructies Jesse op den Brouw INLMIC/2014-2015 Blokdiagram ATmega32 2 ATmega32 Features 131 instructies 32 KB Flash ROM programmageheugen 2 KB Intern

Nadere informatie

520JHKHXJHQV -DQ*HQRH.+/LP

520JHKHXJHQV -DQ*HQRH.+/LP 520JHKHXJHQV -DQ*HQRH.+/LP 1 6LWXHULQJ520JHKHXJHQV Geheugens Halfgeleider Geheugens Serieel toegankelijk geheugen Willekeurig toegankelijk geheugen Read Only Memory ROM Random Access Memory RAM Masker

Nadere informatie

Java virtuele machine JVM

Java virtuele machine JVM Implementatie Java Java virtuele machine JVM Java programma vertaald naar byte code instructies Byte code instructies uitgevoerd door JVM JVM is processor architectuur kan in principe in hardware worden

Nadere informatie

VRIJ TECHNISCH INSTITUUT Burg.Geyskensstraat 11 3580 BERINGEN. De PLC geïntegreerd in de PC. Vak: Toegepaste informatica Auteur: Ludwig Theunis

VRIJ TECHNISCH INSTITUUT Burg.Geyskensstraat 11 3580 BERINGEN. De PLC geïntegreerd in de PC. Vak: Toegepaste informatica Auteur: Ludwig Theunis Burg.Geyskensstraat 11 3580 BERINGEN De PLC geïntegreerd in de PC. Vak: Toegepaste informatica Auteur: Ludwig Theunis Versie: vrijdag 2 november 2007 2 Toegepaste informatica 1 De Microprocessor Zowel

Nadere informatie

Halfgeleider geheugens: RAM = Random Access Memory: Onderverdeling: HALFGELEIDER-GEHEUGENS HALFGELEIDER-GEHEUGENS

Halfgeleider geheugens: RAM = Random Access Memory: Onderverdeling: HALFGELEIDER-GEHEUGENS HALFGELEIDER-GEHEUGENS HALFGELEIDER-GEHEUGENS Halfgeleider geheugens: elektronische schakelingen kunnen binaire informatie opnemen, bewaren en weergeven vaak als geheugenblok in complex digitaal systeem voorbeeld: (micro)computersysteem

Nadere informatie

EE1410: Digitale Systemen BSc. EE, 1e jaar, , 6e hoorcollege

EE1410: Digitale Systemen BSc. EE, 1e jaar, , 6e hoorcollege EE4: Digitale Systemen BSc. EE, e jaar, 22-23, 6e hoorcollege Arjan van Genderen, Stephan Wg, Computer Engineering 22-4-23 Delft University of Technology Challenge the future Rooster 4e kwartaal (der voorbehoud)

Nadere informatie

Hoe werkt een computer precies?

Hoe werkt een computer precies? Hoe werkt een computer precies? Met steun van stichting Edict Ben Bruidegom & Wouter Koolen-Wijkstra AMSTEL Instituut Universiteit van Amsterdam Overview Introductie SIM-PL Simulatietool voor werking computer

Nadere informatie

Indirecte adressering

Indirecte adressering Indirecte adressering 1 pagina 1 Absolute adressering - Directe adressering Operand Operand- Supplementaire Beschrijving adres toegangsbreedte (voorbeeld) I 37.4 byte, woord, Ingangen dubbelwoord Q 27.7

Nadere informatie

Hardware-software Co-design

Hardware-software Co-design Jan Genoe KHLim Versie: maandag 10 juli 2000 Pagina 1 Wat is HW/SW Co-design Traditioneel design: De verdeling tussen de HW en de SW gebeurt bij het begin en beiden worden onafhankelijk ontwikkeld Verweven

Nadere informatie

Scan-pad technieken. Zet elk register om in een scan-pad register (twee opeenvolgende D-latches: master-slave):

Scan-pad technieken. Zet elk register om in een scan-pad register (twee opeenvolgende D-latches: master-slave): Zet elk register om in een scan-pad register (twee opeenvolgende D-latches: master-slave): D is de normale data ingang C is de normale fase 1 klok I is de data ingang van het shift-regiester A is de klok

Nadere informatie

From High-Level Language to language of the hardware

From High-Level Language to language of the hardware Overzichtscollege 1 Abstractieniveaus Een computersysteem bestaat uit een hiërarchie van lagen Elke laag heeft een goed gedefinieerde interface naar de bovenliggende en onderliggende lagen Essentieel bij

Nadere informatie

Belangrijkste ideeën/concepten uit OS, incl. proces

Belangrijkste ideeën/concepten uit OS, incl. proces Operating System Overview (Hfst 2) Wat is een OS? Wat was een OS? Evolutie van OS. OS als virtuele machine OS als beheerder van hulpbronnen (resources) Belangrijkste ideeën/concepten uit OS, incl. proces

Nadere informatie

3 Opbouw en karakteristieken van de PLC

3 Opbouw en karakteristieken van de PLC 3 Opbouw en karakteristieken van de PLC 3.1 Blokschema Een PLC bestaat uit 3 delen: - een voeding of PS (Power Supply). Deze zet de netspanning van 230V AC om in 24V DC. - een centrale verwerkingseenheid

Nadere informatie

Virtueel Geheugen en demand paging (1)

Virtueel Geheugen en demand paging (1) Virtueel Geheugen en demand paging (1) Programma's zijn vaak niet in hun geheel in het geheugen nodig, vanwege: zelden gebruikte onderdelen groter gedeclareerde arrays dan nodig als programma helemaal

Nadere informatie

Computerarchitectuur en Netwerken. Computerarchitectuur

Computerarchitectuur en Netwerken. Computerarchitectuur Computerarchitectuur en Netwerken 1 Computerarchitectuur Lennart Herlaar 2 september 2015 Opbouw van het vak Eerst (6 keer) over de opbouw van computer en operating system Collegedictaat Systeemarchitectuur

Nadere informatie

Mobiele communicatie: reken maar!

Mobiele communicatie: reken maar! Mobiele communicatie: reken maar! Richard J. Boucherie Stochastische Operationele Research Toen : telefooncentrale Erlang verliesmodel Nu : GSM Straks : Video on demand Toen : CPU Processor sharing model

Nadere informatie

Oefeningen Interpretatie I Reeks 6 : Registermachines

Oefeningen Interpretatie I Reeks 6 : Registermachines Oefeningen Interpretatie I Reeks 6 : Registermachines Deze oefeningenreeks behandelt het beschrijven van computationele processen aan de hand van registermachineprogrammaʼs. Registermachines manipuleren

Nadere informatie

FORTH op de 80C535 processor met het ATS535 board.

FORTH op de 80C535 processor met het ATS535 board. FORTH op de 80C535 processor met het ATS535 board. ATS535 Het ATS535 board met 8052- ANS-Forth, is een product van de HCC Forth GG en Atelec Hoorn. Het board met de ingebouwde software is een uitstekend

Nadere informatie

TECHNISCHE UNIVERSITEIT EINDHOVEN FACULTEIT DER TECHNISCHE NATUURKUNDE

TECHNISCHE UNIVERSITEIT EINDHOVEN FACULTEIT DER TECHNISCHE NATUURKUNDE TECHNISCHE UNIVERSITEIT EINDHOVEN FACULTEIT DER TECHNISCHE NATUURKUNDE Tentamen Computers bij fysische experimenten (3BB20) op dinsdag 25 oktober 2005 Het tentamen duurt 90 minuten en wordt gemaakt zonder

Nadere informatie

Proeftentamen in1211 Computersystemen I (Opm: de onderstreepte opgaven zijn geschikt voor de tussentoets)

Proeftentamen in1211 Computersystemen I (Opm: de onderstreepte opgaven zijn geschikt voor de tussentoets) TECHNISCHE UNIVERSITEIT DELFT Faculteit Informatietechnologie en Systemen Afdeling ISA Basiseenheid PGS Proeftentamen in1211 Computersystemen I (Opm: de onderstreepte opgaven zijn geschikt voor de tussentoets)

Nadere informatie

Combinatorische schakelingen

Combinatorische schakelingen Practicum 1: Combinatorische schakelingen Groep A.6: Lennert Acke Pieter Schuddinck Kristof Vandoorne Steven Werbrouck Inhoudstabel 1. Doelstellingen... 2 2. Voorbereiding... 3 3. Hardware-practicum...

Nadere informatie

Stappenmotor Interface. Controller

Stappenmotor Interface. Controller Besturing In deze moderne tijd zal de besturing geheel elektrisch worden uitgevoerd. De bedoeling is dat er voor ieder afgaand spoor een wisseladres gebruikt worden. Dit betekend dan een reeks van 24 aansluitende

Nadere informatie

Vakgroep CW KAHO Sint-Lieven

Vakgroep CW KAHO Sint-Lieven Vakgroep CW KAHO Sint-Lieven Objecten Programmeren voor de Sport: Een inleiding tot JAVA objecten Wetenschapsweek 20 November 2012 Tony Wauters en Tim Vermeulen tony.wauters@kahosl.be en tim.vermeulen@kahosl.be

Nadere informatie

ES1 Project 1: Microcontrollers

ES1 Project 1: Microcontrollers ES1 Project 1: Microcontrollers Les 3: Eenvoudige externe hardware & hardware programmeren in C Hardware programmeren in C Inmiddels ben je al aardig op gang gekomen met het programmeren van microcontrollers.

Nadere informatie

in1671 - Operating System Concepten

in1671 - Operating System Concepten in1671 - Operating System Concepten drs J.W.J. Heijnsdijk Faculteit EWI, kamer 09.280 (Mekelweg 4) tel. 85804 email: Heijnsdijk@ewi.tudelft.nl 2005 1-1 Doel van een Operating System Wat is een Operating

Nadere informatie

in1671 - Operating System Concepten Doel van een Operating System Interrupts 3-Lagen model spooling (Simultaneous Peripheral Operation On Line)

in1671 - Operating System Concepten Doel van een Operating System Interrupts 3-Lagen model spooling (Simultaneous Peripheral Operation On Line) in1671 - Operating System Concepten Doel van een Operating System drs J.W.J. Heijnsdijk Faculteit EWI, kamer 09.280 (Mekelweg 4) tel. 85804 email: Heijnsdijk@ewi.tudelft.nl Wat is een Operating System?

Nadere informatie

Nieuwe UEFI Bios en GPT

Nieuwe UEFI Bios en GPT Nieuwe UEFI Bios en GPT 1 schijven. Koopt U een nieuwe Personal Computer (desktop of Notebook) dan komt U vanzelf deze nieuwe zaken tegen. Dit verhaal gaat niet op voor een andere soort computers zoals

Nadere informatie

4 Geheugens 71 4 GEHEUGENS. Waarin je versteld zal staan over het grote aantal verschillende geheugens waarover een computer beschikt.

4 Geheugens 71 4 GEHEUGENS. Waarin je versteld zal staan over het grote aantal verschillende geheugens waarover een computer beschikt. 4 Geheugens 71 4 GEHEUGENS Waarin je versteld zal staan over het grote aantal verschillende geheugens waarover een computer beschikt. 72 www.sleutelboek.eu 4 Geheugens 73 4.1 ROM-geheugen Het ROM (read

Nadere informatie

TECHNISCHE UNIVERSITEIT EINDHOVEN ComputerSystemen Deeltentamen B (weken 6..9) vakcode 2M208 woensdag 19 Maart 2003, 9:00-10:30

TECHNISCHE UNIVERSITEIT EINDHOVEN ComputerSystemen Deeltentamen B (weken 6..9) vakcode 2M208 woensdag 19 Maart 2003, 9:00-10:30 TECHNISCHE UNIVERSITEIT EINDHOVEN ComputerSystemen Deeltentamen B (weken 6..9) vakcode 2M208 woensdag 19 Maart 2003, 9:00-10:30 Algemene opmerkingen (lees dit!): - Dit tentamen duurt ANDERHALF UUR! - Dit

Nadere informatie

PCI Ontwikkelplatformen

PCI Ontwikkelplatformen PCI Ontwikkelplatformen Jan Genoe KHLim In dit deel bespreken we de verschillende ontwikkelplatformen die ter beschikking staan om een PCI kaart te ontwikkelen. 1 Ontwikkelplatformen van PCI kaarten Gebruik

Nadere informatie

DB architectuur. joost.vennekens@denayer.wenk.be

DB architectuur. joost.vennekens@denayer.wenk.be DB architectuur joost.vennekens@denayer.wenk.be DB - logisch perspectief - DB - fysisch perspectief - DBMS Fysische details van databank beheren Zodat gebruiker zich enkel om logische perspectief moet

Nadere informatie

In- en uitgangssignalen van microprocessoren

In- en uitgangssignalen van microprocessoren In- en uitgangssignalen van microprocessoren E. Gernaat 1 Overzicht signalen Informatie van en naar een microprocessor kan parallel of seriëel gebeuren. Bij parallel-overdracht zal elke lijn (draad) een

Nadere informatie

Tentamen Computerorganisatie 28 augustus 1998, uur. N.B.: Dit tentamen bestaat uit 30 opgaven Totaal aantal bladzijden: 11

Tentamen Computerorganisatie 28 augustus 1998, uur. N.B.: Dit tentamen bestaat uit 30 opgaven Totaal aantal bladzijden: 11 TECHNISCHE UNIVERSITEIT DELFT Faculteit Informatietechnologie en Systemen Subfaculteit Technische Wiskunde en Informatica Werkeenheid Technische Informatica Tentamen Computerorganisatie 28 augustus 1998,

Nadere informatie

Cover Page. Author: Vu, Van Thieu Title: Opportunities for performance optimization of applications through code generation Issue Date:

Cover Page. Author: Vu, Van Thieu Title: Opportunities for performance optimization of applications through code generation Issue Date: Cover Page The handle http://hdl.handle.net/1887/18622 holds various files of this Leiden University dissertation. Author: Vu, Van Thieu Title: Opportunities for performance optimization of applications

Nadere informatie

COMPUTERVAARDIGHEDEN EN PROGRAMMEREN

COMPUTERVAARDIGHEDEN EN PROGRAMMEREN COMPUTERVAARDIGHEDEN EN PROGRAMMEREN 3 e les Prof. Dr. Frank De Proft 12 oktober 2004 Tweede les : Inleiding Computerwetenschappen vs. computervaardigheden - Algoritmen 1 Derde les : Enkele basisbegrippen»

Nadere informatie

Computerarchitectuur. H&P Ch 2. Memory Hierarchy Design

Computerarchitectuur. H&P Ch 2. Memory Hierarchy Design Computerarchitectuur H&P Ch 2. Memory Hierarchy Design Kristian Rietveld http://ca.liacs.nl/ Motivatie Hoe dichter bij de CPU, hoe sneller het geheugen. - Maar ook: kleiner en duurder. Programmeurs willen

Nadere informatie

Referentie Handleiding

Referentie Handleiding Version 1.1.5 Referentie Handleiding DiscretePhoton H.264 encoder DiscretePhoton www.discretephoton.com Referentie Handleiding Over DiscretePhoton H.264-encoder DiscretePhoton H.264 encoder Windows versie

Nadere informatie