1/1/ / faculty of Computer Science eindhoven university of technology 5B040:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 7(1): Flow of.

Slides:



Advertisements
Verwante presentaties
Exxellence Group Maarten van der Hoek.
Advertisements


Spic en Span Of CCleaner
1/1/ / faculty of Electrical Engineering eindhoven university of technology 5JJ20:Computerarchitectuur EIT OGO-1.2 addendum (1): Het ontwerpen van processoren.
1/1/ / faculty of Electrical Engineering eindhoven university of technology 5JJ20:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 3(2): Instructietypen.
Par. 3.1 Computers zijn overal
Hardware (1) NSG Informatica.
Week 1: overzicht computersysteem-organisatie
1/1/ / faculty of Electrical Engineering eindhoven university of technology 5JJ20:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 4(2): Digitale.
ICT Infrastructuren 26 november 2007 David N. Jansen.
1/1/ /e/e eindhoven university of technology 5JJ20:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 2(1): Inleiding InstructieSetArchitectuur.
Week 6: Invoer / uitvoer “devices” adresdecodering
PowerPC Practicum. Introductie Doel practicum = Computers begrijpen Leer de werking van een computer door een emulator te bouwen.
1/1/ eindhoven university of technology / faculty of Computer Science 2IC20:Computersystemen Week 4: Instructieformaten adressering assembleertalen (zelfstudie.
1/1/ /e/e eindhoven university of technology 5JJ20:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 2(2): Instructieformaten adressering assembleertalen.
Week 2: Microarchitectuur niveau ALU en datapad
1/1/ eindhoven university of technology / faculty of Computer Science 2IC20:Computersystemen Week 6: Practicumprocessor invoer en uitvoer.
5JJ20: Computerarchitectuur 2M200: Inleiding Computersystemen
Computerarchitectuur
VBA en VBS Een introductie.
C programma int main(){ } Compilatie met devc++ in file main.c Gecompileerd programma in file FirstProgram.exe Mov R1, 120 Mov R2, 160 ADD R1, R2.
VHDL Peter Slaets KHLim Functies en procedures Functies –type conversie functies »bit vector to integer en omgekeerd –verkorte componenten met maar 1 output.
De processor.
5JJ20: Computerarchitectuur 2M200: Inleiding Computersystemen
1/1/ /e/e eindhoven university of technology 5JJ20:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 3(1): Instructietypen (1)
1/1/ / faculty of Electrical Engineering eindhoven university of technology 5JJ20:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 1(2): overzicht.
1/1/ / faculty of Computer Science eindhoven university of technology 5B040:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 8(2): Multi-processing.
1/1/ / faculty of Computer Science eindhoven university of technology 5JJ20:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 7(2): Vertalen.
1/1/ / faculty of Electrical Engineering eindhoven university of technology 5JJ20:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 6(1): Invoer.
1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.
Frank Stalpers en Ad Baars
Consoleprogramma’s Hoofdstuk 19. Visual Basic.NET voor studenten2 In dit hoofdstuk … Hoe consoletoepassingen maken In- en uitvoer bij consoleprogramma’s.
Slide 1Programmatuur voor real-time controleYolande Berbers RTPReal-Time Programmatuur laag-niveau programmeren uit hoofdstuk 15 van Alan Burns, Andy Wellings,
Een echte re stack-machine nMemory nRegisters R0 R1 R2 R3 R4 PC SP MP nMemory uProgram uStack uMemory nRegisters uProgr.counter uStack pointer uMark pointer.
Installatie van de banksoftware. Stop de CD in de cd-lezer van de transfercomputer. Het installatieprogramma zal automatisch starten, anders via verkenner.
Hoe werkt een rekenmachine?
Computerarchitectuur
Security Technology PICT les 1
SPAM SPAM. Heeft u veel SPAM? Kan uw provider het niet tegenhouden?
Event Handling in Embedded Systems.  Wat is een event?  Welke events zijn het meest “time-critical”?  Welke toestand wordt door de CPU opgeslagen?
1/1/ /e/e eindhoven university of technology OGO 1.2 project Startbijeenkomst Een microprocessor… …om warm voor te lopen.
Operating Systems Informatica.
, 17h30Recursie 1 Inleiding tot recursie Karel Popelier.
1/1/ eindhoven university of technology / faculty of Computer Science 2IC20:Computersystemen Week 3: Instructietypen (1)
1/1/ eindhoven university of technology / faculty of Computer Science 2IC20:Computersystemen Week 4: Inleiding InstructieSetArchitectuur (ISA) datatypen.
1/1/ eindhoven university of technology / faculty of Computer Science 2IC20:Computersystemen Week 3: Instructietypen (2)
1/1/ eindhoven university of technology / faculty of Computer Science 2IC20:Computersystemen Week 4: Digitale logica niveau: “systeem-architectuur” cpu-chips.
1/1/ eindhoven university of technology / faculty of Computer Science 2IC20:Computersystemen Week 2: IDaSS.
Het timing model in VHDL
1/1/ / faculty of Computer Science eindhoven university of technology 5B040:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 9(1): Virtual.
1/1/ / faculty of Electrical Engineering eindhoven university of technology 5JJ20:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 5(2): Microarchitectuur.
Verband In Bijbel geen onderscheid tussen 'gewone' en 'bijzondere' verschijnselen van de Geest.
HOGESCHOOL ROTTERDAM / CMI Computersystemen 2 (TIRCCMS02 - Operating systems)
BIOS en Opstarten.
Basisfuncties Operating System.
Tircms02-p les 3 Functies Strings Structuren. Functies 1. main() 2. { int k; k = 10 ; printf(“%d\n”,fac(k)); } 3. int fac(n) int n; 4. { int f; f= 1;
HOGESCHOOL ROTTERDAM / CMI Computersystemen 2 (TIRCCMS02 - Operating systems)
Besturingssysteem Vaak wordt de Engelse term gebruikt: Operating System ( OS ) Plaats van het OS in een computersysteem: Hardware Applicatie Operating.
De Transmeta Crusoe processor Een VLIW CPU met x86 compatibiliteit.
Cache Prestatie & Energieverbruik. Overzicht Voorbeelden energieverbruik Cache.
Vervolg C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Onderwerpen voor vandaag Een embedded systeem: ARM bord.
2PROJ5 – PIC assembler Hogeschool Utrecht / Institute for Computer, Communication and Media Technology 1 Les 3 - onderwerpen Instruction timing Shadow.
Installatie Windows 10 woensdag 30 september 2015.
HOGESCHOOL ROTTERDAM / CMI Computersystemen 1
Computersystemen 2 (TIRCCMS02 - Operating systems)
Digitale Methoden Onderdeel van vak Computer Systemen
3 Hardware 3.1 De processor en intern geheugen
Besturingssystemen Ga verder met een muisklik..
Wat gaan we doen? Herhaling ARM assembler instructies
Small Basic Console deel 2
Transcript van de presentatie:

1/1/ / faculty of Computer Science eindhoven university of technology 5B040:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 7(1): Flow of Control

1/1/ / faculty of Computer Science eindhoven university of technology Sequentiele programma’s en sprongen ‘Gewone’ commando’s verhogen PC met 1. PC is dan een lineare functie in de tijd. Met sprongen wordt deze lineariteit verbroken. Program counter Time Program counter Time Sprongen

1/1/ / faculty of Computer Science eindhoven university of technology Procedure BProcedure A Subroutines: Bestaan uit een aanroep (call) en een terugkeer (return) Slaan terugkeeradres op in de stack (voor recursie) callreturn

1/1/ / faculty of Computer Science eindhoven university of technology Voorbeeld met recursie: n! met recursieve procedure: procedure(var n:integer); var h:integer; begin if (n  1) then begin h:=n; n:=n-1; fac(n); n:=h*n; end end;

1/1/ / faculty of Computer Science eindhoven university of technology In assembler: main: mult: CJNE A,#01,mult SJMP exit exit: PUSH ACC DEC ACC ACALL main POP B MUL A,B RET Stack ?? 3 adr 2 CJNE A,#01,mult SJMP exit PUSH ACC DEC ACC ACALL main CJNE A,#01,mult PUSH ACC DEC ACC ACALL main CJNE A,#01,mult RET adr:POP B MUL A,B RET POP B MUL A,B RET

1/1/ / faculty of Computer Science eindhoven university of technology Coroutines: Gaat om twee procedures die afwisselend gedeeltelijk worden uitgevoerd. Coroutines roepen elkaar expliciet aan. Geen call en return, maar resume opdracht. Kunnen worden gebruikt voor simulatie van multi-processing.

1/1/ / faculty of Computer Science eindhoven university of technology Coroutines: voorbeeld coroutine a coroutine b resume b resume a stack: b1 a1 a2 a3 a4 b2 b3 b1a2a2 b2a3b3a4 b4 Stackgrootte blijft constant! (Exchange!)

1/1/ / faculty of Computer Science eindhoven university of technology Coroutines:nadelen voor multitasking Maximaal 2 routines ‘tegelijk’ Programma moet zelf ‘exchange’ uitvoeren Geen ‘echte’ multitasking, omdat plaatsen onderbrekingen in het programma bekend zijn (nl bij de ‘exchange’ commando’s)

1/1/ / faculty of Computer Science eindhoven university of technology Foutje; bedankt: TRAPS! Traps worden veroorzaakt door uitzonderlijke gevallen in het programma (overflow etc.) Worden gegenereerd door het programma zelf. Roepen automatisch en onmiddelijk een speciale procedure aan (trap-handler). Vervangen veel expliciete controles in programma’s. Programma’s daardoor sneller (en minder fautgevoelig)

1/1/ / faculty of Computer Science eindhoven university of technology Effe storen: INTERRUPTS! Interrupts onderbreken het lopende programma van buitenaf. Zijn qua timing onvoorspelbaar. Voorkomen veel wachttijd van de CPU. Kunnen veel oorzaken hebben (I/O, timer-overflow, binnenkomend gesprek bij fax) Roepen een interrupt-handler aan.

1/1/ / faculty of Computer Science eindhoven university of technology Hardware: interrupt ontvangen Toestel geeft interrupt signaal aan CPU CPU handelt huidige commando af en geeft bevestiging aan het toestel Toestel geeft extra informatie (bv. IRQ-nummer, sprongadres of tabel-index) {CPU haalt informatie op en bewaart die tijdelijk} CPU zet PC (en vaak PSW) op de stack CPU roept interrupt handler aan (welke dat is, is afhankelijk van de extra informatie)

1/1/ / faculty of Computer Science eindhoven university of technology Hardware: interrupt (voorbeeld) Vector PC PSW Hulp SP Tabel Stack data adres IRQ ACK I/OCPU Memory

1/1/ / faculty of Computer Science eindhoven university of technology Software: interrupt afhandelen Bewaar alle registers. Zoek uit welk toestel de interrupt veroorzaakte Haal overige gegevens op (status etc). Handel de interrupt af (bijv. I/O error, volgende programma starten etc.) Geef aan toestel door dat interrupt is afgehandeld Herstel alle registers Geef Return From Interrupt commando

1/1/ / faculty of Computer Science eindhoven university of technology Interrupts: opmerkingen Interrupt handlers moeten transparant zijn. Als interrupts te lang duren (langer dan de periodetijd van de interrupt) krijgt het hoofdprogramma geen kans om verder te draaien. Voor tijdkritische interrupts (bijv. tijdens het branden van een CD) worden high-priority interrupts gebruikt. Zijn veel beter voor multitasking dan coroutines.