Arkitektur von Neumann Ursprung, modell, hur det fungerar

Arkitektur von Neumann Ursprung, modell, hur det fungerar

De Von Neumann arkitektur Det är en teoretisk design för en dator att ha ett internt lagrat program som fungerar som bas för nästan alla datorer som för närvarande utförs.

En von Neumann -maskin består av en central bearbetningsenhet, som har inkluderat en logisk aritmetisk enhet och en kontrollenhet, dessutom ett huvudminne, sekundär lagring och inmatning/utgångsenheter.

Källa: David Strigoi - eget arbete, allmän domän, allmänhet.Wikimedia.org

Denna arkitektur antar att varje beräkning extraherar data från minnet, bearbetar dem och sedan skickar dem tillbaka till minnet.

I en von Neumann -arkitektur används samma minne och samma buss för att lagra både data och instruktionerna som kör ett program.

[TOC]

Arkitekturförbättring

Eftersom du inte kan komma åt minnet av data och programmet samtidigt är Von Neumann -arkitekturen benägen att flaskhalsar och att datorprestanda försvagas. Detta är vad som kallas flaskhalsen i Von Neumann, där kraften, prestandan och kostnaden påverkas.

En av de förändringar som gjorts involverade om att ompröva mängden data som verkligen bör skickas till minnet och mängden som kunde lagras lokalt.

På detta sätt, istället för att behöva skicka allt till minnet, kan flera cachar och proxy -cachar minska dataflödet från processorchips till olika enheter.

Ursprung

1945, efter andra världskriget, höjde två forskare autonomt hur man bygger en mer formbar dator. En av dem var matematikern Alan Turing och den andra var forskaren av lika talang John von Neumann.

Den brittiska Alan Turing hade varit involverad i att dechiffrera Enigma -koden i Bletchley Park med hjälp av 'Coloso' -datorn. Å andra sidan hade den amerikanska John von Neumann arbetat med Manhattan -projektet för att bygga den första atombomben, som behövde många manuella beräkningar.

Fram till den tiden var datorer i krigstiden "schemalagda" mer eller mindre återanslutning av hela maskinen för att kunna utföra en annan uppgift. Till exempel tog den första datorn som heter ENIAC tre veckor att återansluta för att göra en annan beräkning.

Det nya konceptet var att i ett minne måste inte bara uppgifterna lagras, utan också programmet som bearbetade att data skulle lagras i samma minne.

Denna arkitektur med det internt lagrade programmet är ofta känt som arkitektur 'von Neumann'.

Denna nya idé innebar att en dator med denna arkitektur skulle vara mycket lättare att omprogrammera. I själva verket skulle programmet vara detsamma som uppgifterna.

Kan tjäna dig: industriell automatisering

Modell

Den huvudsakliga grunden för Von Neumann -modellen är tanken att programmet sparas internt i en maskin. I minnesenheten finns data och även programkoden. Arkitekturdesignen består av:

Källa: av UserJaimeGallego - den här filen härstammar från von Neumann Architecture.SVG, CC BY-SA 3.0, Commons.Wikimedia.org

- Central Processing Unit (CPU)

Det är den digitala kretsen som ansvarar för att utföra instruktionerna i ett program. Det kallas också processor. CPU innehåller ALU, styrenheten och en uppsättning poster.

Logisk aritmetisk enhet

Denna del av arkitekturen är endast involverad i att utföra aritmetiska och logiska operationer om uppgifterna.

De vanliga beräkningarna för att lägga till, multiplicera, dela och subtrahera kommer att finnas tillgängliga, men datajämförelser som ',' mindre än ',' lika med 'kommer också att finnas tillgängligt.

Styrenhet

Kontrollera driften av ALU, minne och ingångs-/utgångsenheterna på datorn, vilket indikerar hur man ska agera inför instruktionerna från programmet som just har läst från minnet.

Kontrollenheten kommer att hantera processen för att flytta data och program från och till minnet. Det kommer också att ta itu med att utföra programinstruktionerna, en åt gången eller i följd. Detta inkluderar idén om en post att innehålla mellanvärden.

Uppgifter

De är höghastighetslagringsområden på CPU. All data måste lagras i ett register innan du kan behandlas.

Minnesadresser innehåller minnesplatsen för de data som de måste nås. Minnesdataposten innehåller data som överförs till minnet.

- Minne

Datorn har ett minne som kan innehålla data, liksom programmet som bearbetar den data. I moderna datorer är detta minne RAM eller huvudminnet. Detta minne är snabbt och tillgängligt direkt med CPU.

RAM är uppdelad i celler. Varje cell består av en adress och dess innehåll. Adressen identifierar unikt varje plats i minnet.

- Entréutgång

Denna arkitektur låter dig fånga idén att en person behöver interagera med maskinen genom inmatningsenheterna.

- Buss

Informationen måste flyta mellan de olika delarna av datorn. På en dator med Von Neumann -arkitekturen överförs informationen från en enhet till en annan längs en buss och ansluter alla CPU -enheter till huvudminnet.

Det kan tjäna dig: 50 rekommenderade videospelbloggar

Adressbussen transporterar dataadresser, men inte data mellan processorn och minnet.

Databussen transporterar data mellan processorn, minnet och de ingångssalade enheterna.

Hur fungerar Von Neumann Architecture?

Den relevanta principen för von Neumann -arkitekturen är att både data och instruktioner i minne lagras och de behandlas på samma sätt, vilket innebär att instruktioner och data är adress.

Det fungerar med fyra enkla steg: sök, avkoda, kör, butik, kallad "maskincykel".

Instruktionerna erhålls av CPU från minnet. CPU avkodar och kör sedan dessa instruktioner. Resultatet lagras igen i minnet efter att instruktionens exekveringscykel är klar.

Leta efter

I detta steg erhålls instruktionerna från RAM och placerar dem i cacheminnet så att kontrollenheten åtkomst till dem.

Avkoda

Kontrollenheten avkodar instruktionerna på ett sådant sätt att den logiska aritmetiska enheten kan förstå dem och sedan skicka dem till den logiska aritmetiska enheten.

Kör

Den aritmetiska logikenheten kör instruktionerna och skickar resultatet igen till cacheminne.

Lagra

När programmets revisor anger att stoppa, laddas det slutliga resultatet till huvudminnet.

Flaskhals

Om en von Neumann -maskin vill utföra en operation med minnesdata måste dessa överföras genom bussen till CPU. Efter beräkningen måste du flytta resultatet till minnet genom samma buss.

Flaskhalsen i Von Neumann inträffar när de data som anges eller tas in från minnet bör ta tid medan den aktuella minnesoperationen är klar.

Det vill säga om processorn just har slutfört en beräkning och är redo att utföra nästa.

Denna flaskhals över tid har blivit värre, eftersom mikroprocessorer har ökat sin hastighet och å andra sidan har minnet inte avancerat så snabbt.

Fördelar

- Kontrollenheten återställer data och instruktioner på samma sätt från minnet. Därför förenklas designen och utvecklingen av styrenheten, att vara billigare och snabbare.

- Uppgifterna för ingångs-/utgångsenheterna och huvudminnet återvinns på samma sätt.

Kan tjäna dig: datavetenskap

- Organisationen av minne utförs av programmerare, som gör att du kan använda all minneskapacitet.

- Hantera ett enda minnesblock är enklare och lättare att uppnå.

- Microcontroller -chipdesignen är mycket enklare, eftersom ett minne kommer att nås. Det viktigaste med mikrokontrollern är tillgång till RAM och i Von Neumann -arkitekturen kan den användas både för att lagra data och för att lagra programinstruktioner.

Utveckling av operativsystem

Den största fördelen med att ha samma minne för program och data är att programmen kan behandlas som om de var data. Med andra ord kan du skriva program vars data är andra program.

Ett program vars data är ett annat program är inget annat än ett operativsystem. I själva verket, om programmen och data inte var tillåtna i samma minnesutrymme, eftersom det händer med Von Neumann -arkitekturen, skulle operativsystemen aldrig ha utvecklats.

Nackdelar

Även om fördelarna långt överstiger nackdelarna är problemet att det bara finns en buss som ansluter minnet med processorn, så att du bara kan få en instruktion eller ett dataelement samtidigt.

Detta innebär att processorn kan behöva vänta längre på att data eller instruktioner ska komma fram. Detta kallas von Neumann flaskhals. Eftersom CPU är mycket snabbare än databussen, betyder det att det ofta förblir inaktivt.

- På grund av den sekventiella behandlingen av instruktionerna är det inte tillåtet att den parallella implementeringen av programmet.

- När du delar minnet finns det en risk att en instruktion om en annan skrivs på grund av ett fel i programmet, vilket gör att systemet blockeras.

- Vissa program med defekter kan inte släppa minnet när de slutar med det, vilket kan göra att datorn blockeras eftersom minnet är otillräckligt.

- Data och instruktioner delar samma databuss, även om hastigheten med vilken var och en måste återvinnas är vanligtvis mycket annorlunda.

Referenser

  1. Semiconductor Engineering (2019). Von Neumann arkitektur. Taget från: semiering.com
  2. Scott Thornton (2018). Vad är skillnaden mellan Von-Neumann och Harvard Architectures? Mikrokontrolltips. Taget från: MicroControlertips.com.
  3. Teach IKT (2019). Von Neumann -maskinen. Taget från: Teach-Ict.com.
  4. Datavetenskap (2019). Von Neumann arkitektur. Taget från: Computerscience.Gcse.guru.
  5. Lär dig det med Mr C (2019). Von Neumann -maskinen. Taget från: LearnItMRC.co.Storbritannien.
  6. Solid State Media (2017). Hur fungerar datorn? Von Neumann -arkitekturen. Taget från: Solidstateblog.com.