Von Neumann Architecture: Egenskaper och begränsningar

Von Neumann Arkitektur

Von Neumann-arkitekturen är den gemensamma arkitekturen för alla PC-processorer. Var och en av processorerna, från ARM till x86, från 8086 till Ryzen genom Pentium. Alla är von Neumann-arkitekturer och alla ärver ett visst vanligt problem.

John Von Neumann var en ungersk-född matematiker som är känd för två saker. Den första är för att ha arbetat med Manhattan-projektet där atombomben som USA släppte mot Japan i slutet av andra världskriget utvecklades. Den andra är utvecklingen av basarkitekturen som våra datorer använder idag, oavsett storlek de är, liksom formen på de program de kör.

Vad är Von Neumann-arkitektur?

Arquitectura Von Neumann

Von Neumann-arkitekturen är baserad på alla PC-processorer, eftersom alla är organiserade med en serie vanliga komponenter, som är följande:

  • Kontrollenhet: In laddning av anskaffnings- och avkodningsstegen i instruktionscykeln.
  • Logisk-aritmetisk enhet eller ALU: In ansvar för att utföra de matematiska och logiska operationer som krävs av programmen.
  • Minne: Det minne i vilket programmet lagras, vilket vi känner som RAM-minne
  • Inmatningsapparat: Från vilken vi kommunicerar med datorn.
  • Utmatningsanordning: Från vilken datorn kommunicerar med oss.

Som du kan se är det den vanliga arkitekturen i alla processorer och det är därför den inte har någon hemlighet, men det finns en annan typ av arkitektur som kallas Harvard-arkitektur där RAM minnet är uppdelat i två olika brunnar, i en av De lagrar programinstruktionerna och data i det andra minnet, med separata bussar för både minnesadressering och instruktioner.

Vilka begränsningar har Von Neumann-arkitekturen?

Den största nackdelen är att RAM-minnet, där instruktionerna och de data som ska bearbetas, är enhetligt och delas genom samma databuss och gemensam adressering. Så instruktionerna och data måste fångas i följd från minnet. Denna flaskhals är den så kallade Von Neumann-flaskhalsen. Det är därför de olika mikroprocessorerna har cachen närmast processorn uppdelad i två typer, en för data och en för instruktioner.

Under senare år har processorhastigheter ökat mycket snabbare än RAM-minne, vilket ökar den tid det tar för data att kommuniceras från minnet. Vad som har tvingat fram lösningar för att lindra detta problem, en produkt från Von Neumanns flaskhals.

I processorerna där Harvard-arkitekturen normalt används är de fristående och har därför inte tillgång till systemets vanliga RAM, utan kör istället sitt eget minne och program isolerat från CPU. Dessa processorer tar emot en lista med data och instruktioner om två olika datagrenar. En för instruktionsminnet och den andra för dataminnet för nämnda processor.

Varför används den i CPU och GPU?

Procesador gör

Den främsta anledningen är det faktum att en ökning av antalet bussar innebär en ökning av själva processorn, eftersom det är nödvändigt att gränssnittet är på utsidan för att kommunicera med det externa minnet. Detta leder till mycket större och mycket dyrare processorer. Så den främsta anledningen till att Von Neumanns arkitektur har blivit standardiserad är kostnad.

Den andra anledningen är att de två minnesbrunnarna behöver synkroniseras så att en instruktion inte gäller felaktiga data. Vilket leder till att man måste skapa koordinationssystem mellan båda minnesbrunnarna. Naturligtvis skulle en stor del av flaskhalsarna elimineras genom att separera båda bussarna. Men det skulle inte heller minska Von Neumanns flaskhals fullständigt.

Detta beror på att Von Neumann-flaskhalsen trots att den är en följd av lagring av data och instruktioner i samma minne också kan förekomma i en Harvard-arkitektur om det inte är tillräckligt snabbt för att driva processorn. Det är därför Harvard-arkitekturer har reducerats särskilt till mikrokontroller och DSP. Medan Von Neumann är vanligt på CPU och GPU