Harvard Architecture Origin, modell, hur det fungerar

Harvard Architecture Origin, modell, hur det fungerar

De Harvardarkitektur Det är en datorkonfiguration där data och instruktioner för ett program finns i separata celler, som kan hanteras oberoende. 

Det vill säga det är termen som används för ett datorsystem som innehåller två separata områden: för kommandon eller instruktioner och för data. Därför är huvudfunktionen för denna arkitektur att lagra data separat och tillhandahålla olika signalvägar för instruktioner och data.

Källa: Nessa Los - Own Work, CC av -SA 3.0, Commons.Wikimedia

I denna arkitektur kan både formatet och media i dessa två segment av systemet vara ojämlika, eftersom de två parterna består av två separata strukturer.

Några exempel på Harvard -arkitekturer involverar de första datorsystemen, där programinstruktionerna kan vara i ett medium, till exempel på perforerade kort, och den lagrade data kan vara i ett annat medium, till exempel i magnetiska band.

[TOC]

Ansökningar

Denna typ av arkitektur har en bred applikation inom video- och ljudbehandlingsprodukter. Med varje verktyg för att bearbeta video och ljud kan du märka figuren av Harvard Architecture.

Analoga enheter BlackFin -processorer är den specifika enheten där den har uppnått sin huvudanvändning. I andra produkter baserade på elektroniska chips används Harvard -arkitekturen också allmänt.

De flesta datorer använder emellertid von Neumann -arkitektur och använder CPU -cachar för att uppnå en överlappning.

Ursprung

Arbetet som gjordes vid Harvard University på 1940 -talet under ledning av Howard Aiken skapade en original reläbaserad dator, kallad Harvard Mark I, som är termen från vilken begreppet Harvard -arkitektur uppstår.

Den här datorn använde separata minnesenheter för att lagra data och instruktioner. Då har det skett en betydande utveckling med denna arkitektur.

Aiken uppmanade att använda separata minnen för data och för programinstruktionerna, med separata bussar för varje.

Original Harvard Architecture lagrade vanligtvis instruktionerna i perforerade band och data i elektromekaniska räknare.

Datalagring av dessa första maskiner var helt inom den centrala bearbetningsenheten. Å andra sidan gav de inte åtkomst så att instruktionerna lagrades som data. En operatör var tvungen att ladda programmen.

En Harvard -arkitektur kan bearbeta data och utföra instruktionerna samtidigt, eftersom var och en av dem har sin egen adressbuss.

Modell

Denna modell kännetecknas av att informationsbussar och lagring är fysiskt separerade för data och programkod.

Kan tjäna dig: kompositmaskiner

Som bussar fungerar autonomt kan programdata och instruktioner erhållas samtidigt, vilket förbättrar hastigheten på den unika bussdesignen.

Därför är Harvard -modellen att ha större komplexitet. Men att ha bussarna självständigt undvika flaskhalsen som produceras av Von Neumann Architecture.

En dator kan vara snabbare för en krets av en viss komplexitet, eftersom det inte behöver kämpa för en enda minnesbuss att leta efter instruktioner och åtkomst till data.

För att arbeta finns det två minnesadresser. Därför finns det en minnespost för maskininstruktioner och en annan minnespost för data.

Till skillnad från Von Neumann Architecture, som använder en buss för att flytta både instruktioner och minnesdata, använder Harvard Architecture ett minnesområde för data och ett annat för instruktioner.

Modifierad Harvard -arkitektur

I nuvarande datorer finns det ingen upplösning av minnesområden som används av program och data. Av denna anledning kan det sägas att de tekniskt har en von Neumann -arkitektur.

Men modifierad Harvard -arkitektur tjänar till att representera dagens datorer idag.

Även om nuvarande bearbetningsenheter delar minne har de vissa element, till exempel exklusiva instruktioner, som förhindrar data i instruktionerna. Detta kallas modifierad Harvard Architecture.

Således har modifierad Harvard -arkitektur två separata bussar, en för koden och en för data, men i sig är ett fysiskt delat element.

Memory Controller är där ändringen är baserad, eftersom den här enheten är den som hanterar minnet och hur den ska användas.

Moderna datordesigner stöds av modifierad Harvard -arkitektur. De används i mikrokontroller och bearbetning av digital signal.

Hur fungerar Harvard Architecture?

Harvard Architecture har olika områden med minnesadresser för programmet och för data.

Detta resulterar i förmågan att utforma en krets på ett sådant sätt att en buss- och styrkrets kan användas för att hantera informationsflödet från programmets minne och en annan separerad för att hantera informationsflödet till dataminnet.

Användningen av separata bussar innebär att det är möjligt att återhämtning och genomförande av ett program utförs utan avbrott genom någon tillfällig överföring av data till dataminnet.

Kan tjäna dig: de 10 elementen i en viktigare dator

Till exempel, i en enkel version av denna arkitektur, kan programåtervinningsenheten ockuperas genom att återställa följande instruktion i programsekvensen och i parallellt utföra en dataöverföringsoperation som kunde ha varit en del av den tidigare instruktionen av programmet.

På denna nivå har Harvard -arkitekturen en begränsning, eftersom det i allmänhet inte är möjligt att placera programkoden i dataminnet och köra den därifrån.

Tillägg i arkitektur

Till den enkla formen av Harvard -arkitektur kan många befintliga varianter av större komplikation läggas till.

Ett vanligt tillägg är att lägga till en lagring av instruktionscache i programdatabussen, som tillåter instruktionens exekveringsenhet för en snabbare åtkomst till nästa steg i programmet, utan att behöva gå till ett långsammare minne för att få programmets steg Varje gång det krävs.

Minnesadresser

En dator med Harvard Architecture har olika områden med dataadresser och instruktioner: Adressen en av instruktionerna är inte samma område som adressen en av data.

Adressen en av instruktionerna kan innehålla ett värde på tjugo -fyra bitar, medan adressen en av data kan indikera en åtta bitbyte, som inte är en del av det värdet på tjugo -fyra bitar.

Minnesystem

Eftersom du har ett separat minnesområde för instruktioner och data, som separerar både signalerna och lagringen i kod och dataminne, gör detta det möjligt att samtidigt komma åt vart och ett av minnessystemen.

Fördelar

- Det finns mindre möjligheter till korruption i överföringen, eftersom data och instruktioner överförs genom olika bussar.

- Data och instruktioner nås på samma sätt.

- Tillåter olika lagringsmedier för instruktioner och data. Till exempel kan du lägga instruktioner på en ekonomisk rom och data i en dyr ram.

- De två minnena kan använda olika cellstorlekar, som effektivt använder resurser.

- Det finns en högre minnesbandbredd, som är mer förutsägbar för att ha separata minnen för instruktioner och data.

Skyddsnivå

I system som inte har en minnesadministrationsenhet erbjuder en ytterligare skyddsnivå, eftersom data inte kan köras som om det var kod, vilket skulle utsätta systemet för många problem, till exempel buffertflöde.

Kan tjäna dig: kommersiell programvara

Det är därför det är populärt med små integrerade system, till exempel mikrovågsugn eller klocka.

Högre hastighet

Harvard Architecture kan läsa en instruktion och också göra tillgång till dataminnet samtidigt med snabb hastighet.

Erbjuder högre prestanda, eftersom det tillåter samtidigt att få data och instruktioner lagras i separata minnen och resa genom olika bussar.

En Harvard -arkitektur hjälper i allmänhet en dator med en viss komplexitet för att fungera snabbare än en von Neumann -arkitektur, förutsatt att det inte är nödvändigt att dela resurser mellan dataminnen och koden.

Om begränsningarna för stift eller andra faktorer tvingar användningen av en enda buss för att få tillgång till båda minnesutrymmen, kommer sådana fördelar troligen att upphävas i stor utsträckning.

Nackdelar

Större komplexitet och kostnad

Problemet med Harvard Architecture är dess stora komplexitet och kostnad eftersom i stället för en databuss behövs nu två.

Produktionen av en dator med två bussar är mycket dyrare och tar längre tid att tillverka den. Det kräver en styrenhet för två bussar, vilket är mer komplicerat och vars utveckling är dyr och behöver mer tid.

Detta innebär en mer komplex implementering för tillverkare. Det kräver fler stift på CPU, ett mer komplicerat moderkort och att behöva fördubbla RAM -chips, samt en mer komplex cache -design.

Liten användning

Harvard Architecture används inte mycket, så det är svårare att implementera. Det är därför det sällan används utanför CPU.

Men denna arkitektur används ibland inom CPU för att hantera sina kullar.

Missbruk av minnesutrymme

När det finns ledigt utrymme i dataminnet kan det inte användas för att lagra instruktioner och vice versa.

Därför måste de speciella minnen som är tillägnad var och en av dem göras noggrant i sin tillverkning.

Referenser

  1. Listskillnader (2019). Skillnaden mellan von Neumann och Harvard Architecture? Taget från: ListDifferences.com.
  2. PC Magazine (2019). Definition av: Harvard Architecture. Taget från: pcmag.com.
  3. Ravepedia (2019). Harvardarkitektur. Taget från: ravepedia.com.
  4. Scott Thornton (2018). Vad är skillnaden mellan Von-Neumann och Harvard Architectures? Mikrokontrolltips. Taget från: MicroControlertips.com.
  5. Wikipedia, The Free Encyclopedia (2019). Harvardarkitektur. Taget från: i.Wikipedia.org.
  6. The Crazy Programmer (2019). Skillnaden mellan von Neumann och Harvard Architecture. Taget från: ThecrazyProgrammer.com.