Computerarchitectuur Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Stored Program Architecture John von Neumann (28-12-1903 – 8-2-1957) Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Blokschema CPU I/O MEMORY Adresbus databus besturingsbus Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Buslijn Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Verbinden van o.a. registers Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Kleinste eenheid een byte? RAM geheugen 1001101101100011 A0 n Bereik 2 An R/W* CS* 0011100101111010 Kleinste eenheid een byte? D0 Dn Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Alle soorten zijn Random Access Memory Soorten geheugen Alle soorten zijn Random Access Memory Statische RAM Dynamische RAM ROM PROM EPROM EEPROM flash EPROM Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Bus timing Adres Data Adres stabiel R/W* Lees cyclus Schrijf cyclus Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
I/O I/O RS0 RSn R/W* registers CS* D0 Dn Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
De CPU Adres Bereik: 2 n BIU data besturing ALU Registers Instructie register 1001001001001110 ICU Registers BIU data TU 1001001001001110 PC Stack pointer besturing ALU Status register Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
CPU = Central Processing Unit Bestaat o.a. uit: ICU = Internal Control Unit ALU = Arithmethische/Logische Unit BIO = (Basic) Input/Output Unit Registers Program Counter Stackpointer Statusregister Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
De ALU B A functie ALU status n z v c C …etc… C=A or B 1 C=A and B 1 C=A and B C=A-B C=A+B C=A+1 C=B C=A functie f0 f1 f2 f3 functie ALU status n z v c C Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Von Neumann Cyclus IF ID EX OF Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Instructies 0011001000010011 68000: move.w a3,d1 15 8 7 0 0011001000010011 0011010000000100 0001000010010011 PC PC + 2 Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
BIU ALU Registers Instructie register 1001101101100011 ICU TU PC 1001001001001110 1001101101100011 ICU Registers BIU TU 1001001001001110 PC 0011100101111010 Stack pointer ALU Status register Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Instructie type Verplaatsing Bewerking Sprong Besturing Logisch Rekenkundig Sprong Conditioneel Niet conditioneel Besturing Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
(Sprong) Ga naar subroutine …….. instructie CALL 23 ……... …….. instructie ……... ……… RET Maak instructie af Save PC 23 PC=23 PC Restore PC Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Het stack mechanisme Stack = ‘stapel’ met een wijzer (SP) naar de laatst beschreven positie PUSH zet item op de stack POP haalt item van de stack Bij PUSH wordt de SP verlaagd Bij POP wordt de SP verhoogd Bij CALL wordt PC (soms) ge’pushed’ Bij RET wordt PC (soms) ge’popt’ Wordt ook gebruikt bij ‘exceptions’ Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology