von Neumann-arkitekturen
Den här artikeln behöver källhänvisningar för att kunna verifieras. (2020-04) Åtgärda genom att lägga till pålitliga källor (gärna som fotnoter). Uppgifter utan källhänvisning kan ifrågasättas och tas bort utan att det behöver diskuteras på diskussionssidan. |
von Neumann-arkitekturen är grunden för den uppbyggnad av datorer som har varit standard sedan 1940-talet. Den är uppkallad efter matematikern John von Neumann, men flera andra forskare var med och utvecklade principerna.
Generell beskrivning
[redigera | redigera wikitext]John von Neumann delade in datorn i fyra huvuddelar, nämligen (med moderna termer):
- aritmetikenhet (matematik-enhet)
- minne (som håller både data och instruktioner)
- styrenhet ("control unit")
- användargränssnitt (input/output)
Detta var inget nytt - samma delar ingår i alla datorer, inklusive Charles Babbages differensmaskin, som är hundra år äldre. Mer specifikt är att von Neumann-arkitekturen har ett gemensamt minne för programinstruktioner och data. Vad som är vad avgörs av sammanhanget. Ett annat kännetecken för von Neumann-arkitekturen är att beräkningarna sker sekventiellt.
Programinstruktionerna verkställs en i taget, data och instruktioner hämtas från minnet ett i taget. Under 1940-talet fanns en konkurrerande arkitektur, baserad på Alan Turings principer, som tydligt skiljer mellan instruktioner och data. Det har gjorts många försök att utveckla nya arkitekturer. Främst gäller det att komma ifrån "von Neumann-flaskhalsen", den sekventiella inläsningen av data från minnet. von Neumann insåg fördelarna med parallell databehandling, men ansåg att det skulle bli för besvärligt att genomföra. Principen om gemensamt minne har också ifrågasatts, eftersom alla programspråk tydligt skiljer mellan data och instruktioner. von Neumann-arkitekturen tillåter att man skriver program som förändrar sin egen programkod, men den möjligheten utnyttjas vanligtvis inte. Å andra sidan är samma princip en förutsättning för något som alla moderna datorer använder sig av dagligen: ett program kan skapa ett annat program och lagra det i minnet.
Moderna datorer
[redigera | redigera wikitext]De flesta moderna datorer bygger på en modifierad Harvardarkitektur. Detta kan vara förvillande, då dessa arkitekturer oftast börjat som Von Neumann-arkitekturer. Detta för att komma runt den så kallade flaskhalsen i Von Neumann-arkitekturen som kraftigt begränsar hastigheten.
Flaskhalsen i von Neumann-Arkitekturer beror på att aritmetikenheten arbetar mot ett gemensamt arbetsminne för data och datorprogram.
von Neumann-arkitekturen i Sverige
[redigera | redigera wikitext]I Sveriges två första datorer BARK och BESK som byggdes i skiftet 1940–1950-tal återspeglas artkitekturvalen mycket tydligt: BARK var en utpräglad Harvardarkitektur medan BESK var en IAS-maskin med utpräglad von Neumann-arkitektur.
Externa länkar
[redigera | redigera wikitext]- Wikimedia Commons har media som rör Von Neumann-arkitekturen.