Historisch gezien zijn er 2 soorten Computers geweest:
- Fixed Program Computers – Hun functie is zeer specifiek en ze konden niet geprogrammeerd worden, b.v. Rekenmachines.
- Computers met opgeslagen programma’s – Deze kunnen worden geprogrammeerd om veel verschillende taken uit te voeren, toepassingen worden erop opgeslagen, vandaar de naam.
De moderne computers zijn gebaseerd op een concept van opgeslagen programma’s, geïntroduceerd door John Von Neumann. In dit concept van opgeslagen programma’s worden programma’s en gegevens opgeslagen in een afzonderlijke opslageenheid, geheugens genaamd, en worden zij op dezelfde wijze behandeld. Dit nieuwe idee betekende dat een computer die met deze architectuur was gebouwd, veel gemakkelijker te herprogrammeren zou zijn.
De basisstructuur ziet er als volgt uit,
Het is ook bekend als IAS-computer en bestaat uit drie basiseenheden:
- De centrale verwerkingseenheid (CPU)
- De hoofdgeheugeleenheid
- Het invoer/uitvoerapparaat
Laten we ze eens in detail bekijken.
- Control Unit –
Een control unit (CU) behandelt alle besturingssignalen van de processor. Zij stuurt alle in- en uitvoerstromen, haalt code op voor instructies en regelt hoe gegevens zich door het systeem bewegen.
- Arithmetic and Logic Unit (ALU) –
De arithmetic logic unit is dat deel van de CPU dat alle berekeningen uitvoert die de CPU nodig heeft, b.v. optellen, aftrekken, vergelijken. Het voert logische bewerkingen, bit-shifting-bewerkingen en rekenkundige bewerkingen uit.
Figuur – Basisstructuur van de CPU, ter illustratie van ALU - Main Memory Unit (Registers) –
- Accumulator: Slaat de resultaten op van berekeningen die door de ALU zijn gemaakt.
- Programmateller (PC): Houdt de geheugenplaats bij van de volgende instructies die moeten worden afgehandeld. De PC geeft dit volgende adres vervolgens door aan het Memory Address Register (MAR).
- Memory Address Register (MAR): Hierin worden de geheugenplaatsen opgeslagen van instructies die uit het geheugen moeten worden opgehaald of in het geheugen moeten worden opgeslagen.
- Memory Data Register (MDR): Het slaat instructies op die uit het geheugen worden opgehaald of gegevens die naar het geheugen moeten worden overgebracht en in het geheugen moeten worden opgeslagen.
- Current Instruction Register (CIR): Het slaat de meest recent opgehaalde instructies op terwijl het wacht om gecodeerd en uitgevoerd te worden.
- Instruction Buffer Register (IBR): De instructie die niet onmiddellijk moet worden uitgevoerd, wordt in het instructiebufferregister IBR geplaatst.
- Invoer-/uitvoerapparaten – Programma of gegevens worden in het hoofdgeheugen gelezen vanaf het invoerapparaat of de secundaire opslag onder controle van de invoerinstructie van de CPU. Uitvoerapparaten worden gebruikt om de informatie van een computer uit te voeren. Als bepaalde resultaten door de computer worden geëvalueerd en in de computer worden opgeslagen, kunnen we deze met behulp van uitvoerapparaten aan de gebruiker presenteren.
- Bussen – Gegevens worden van het ene deel van een computer naar het andere doorgegeven, waarbij alle belangrijke interne componenten met de CPU en het geheugen worden verbonden, door middel van bussen. Typen:
- Data Bus: Deze vervoert gegevens tussen de geheugeneenheid, de I/O-apparaten en de processor.
- Adres Bus: Deze vervoert het adres van gegevens (niet de eigenlijke gegevens) tussen geheugen en processor.
- Control Bus: Deze vervoert besturingscommando’s van de CPU (en statussignalen van andere apparaten) om alle activiteiten binnen de computer te besturen en te coördineren.
Von Neumann-knelpunt –
Wat we ook doen om de prestaties te verbeteren, we kunnen niet ontkomen aan het feit dat instructies slechts één voor één kunnen worden uitgevoerd en alleen sequentieel kunnen worden uitgevoerd. Deze beide factoren houden de bekwaamheid van de CPU tegen. Dit wordt gewoonlijk aangeduid als de “Von Neumann bottleneck”. We kunnen een Von Neumann processor voorzien van meer cache, meer RAM, of snellere componenten, maar wil men oorspronkelijke winst boeken in CPU-prestaties, dan moet er een invloedrijke inspectie plaatsvinden van de CPU-configuratie.
Deze architectuur is zeer belangrijk en wordt gebruikt in onze PC’s en zelfs in Super Computers.