180 likes | 311 Views
Computerarchitectuur. Stored Program Architecture. John von Neumann (28-12-1903 – 8-2-1957). Blokschema. CPU. MEMORY. I/O. Adresbus databus besturingsbus. Buslijn. Verbinden van o.a. registers. RAM geheugen. 1001101101100011. A0. n. Bereik 2. An. R/W*. CS*. 0011100101111010.
E N D
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 MEMORY I/O 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
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
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 Lees cyclus Schrijf cyclus Schrijf cyclus Adres Data Adres stabiel R/W* Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
I/O RS0 RSn I/O R/W* registers CS* D0 Dn Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
De CPU Adres Bereik: 2 n 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
f3 f2 f1 f0 functie 0 0 0 0 C=A 0 0 0 1 C=B 0 0 1 0 C=A+1 0 0 1 1 C=A+B 0 1 0 0 C=A-B 0 1 0 1 C=A and B 0 1 1 0 C=A or B …etc… De ALU B A 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
Instructie register 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 • Logisch • Rekenkundig • Sprong • Conditioneel • Niet conditioneel • Besturing Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
(Sprong) Ga naar subroutine Routine Subroutine …….. instructie instructie CALL 23 instructie instructie ……... …….. instructie instructie ……... ……… instructie RET Maak instructie afSave 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