Harvard Architecture Origin, Model, How It Works
- 2422
- 470
- Oliver Christiansen
De Harvard -arkitektur Det er en datakonfigurasjon der dataene og instruksjonene til et program finnes i separate celler, som kan adresseres uavhengig av.
Det vil si at det er betegnelsen som brukes til et datasystem som inneholder to separate områder: for kommandoer eller instruksjoner og for data. Derfor er hovedfunksjonen til denne arkitekturen å lagre dataene separat, og gi forskjellige signalruter for instruksjoner og data.
Kilde: Nessa LOS - EGEN ARBEID, CC BY -SA 3.0, Commons.WikimediaI denne arkitekturen kan både formatet og media i disse to segmentene av systemet være ulik, siden de to partiene består av to separate strukturer.
Noen eksempler på Harvard -arkitekturer involverer de første datasystemene, der programinstruksjonene kan være i et medium, for eksempel på perforerte kort, og de lagrede dataene kan være i et annet medium, for eksempel i magnetbånd.
[TOC]
applikasjoner
Denne typen arkitektur har en bred applikasjon i video- og lydbehandlingsprodukter. Med hvert verktøy for å behandle video og lyd kan du legge merke til figuren til Harvard Architecture.
Analoge enheter Blackfin -prosessorer er den spesielle enheten der den har oppnådd sin viktigste bruk. I andre produkter basert på elektroniske brikker er Harvard -arkitektur også mye brukt.
Imidlertid bruker de fleste datamaskiner Von Neumann -arkitektur og bruker CPU -hurtigbuffer for å oppnå en overlapping.
Opprinnelse
Arbeidet som ble gjort ved Harvard University på 1940 -tallet under ledelse av Howard Aiken opprettet et originalt stafettbasert datamaskin, kalt Harvard Mark I, som er begrepet som begrepet Harvard -arkitektur oppstår.
Denne datamaskinen brukte separate minneenheter for å lagre data og instruksjoner. Så har det vært en betydelig utvikling med denne arkitekturen.
Aiken ba om å bruke separate minner for dataene og for programinstruksjonene, med separate busser for hver.
Original Harvard -arkitektur lagret vanligvis instruksjonene i perforerte bånd og data i elektromekaniske tellere.
Datalagring av disse første maskinene var helt innenfor den sentrale prosesseringsenheten. På den annen side ga de ikke tilgang slik at instruksjonene ble lagret som data. En operatør måtte laste inn programmene.
En Harvard -arkitektur kan behandle dataene og utføre instruksjonene samtidig, fordi hver av dem har sin egen adressebuss.
Modell
Denne modellen er karakterisert at informasjonsbusser og lagring er fysisk atskilt for data og programkode.
Kan tjene deg: komposittmaskinerNår busser fungerer autonomt, kan programdata og instruksjoner fås samtidig, og dermed forbedre hastigheten på den unike bussdesignet.
Derfor er Harvard -modellen å ha større kompleksitet. Å ha bussene uavhengig av unngå flaskehalsen produsert av Von Neumann -arkitekturen.
En datamaskin kan være raskere for en krets med en viss kompleksitet, fordi det å lete etter instruksjoner og få tilgang til dataene ikke trenger å kjempe for en enkelt minnebuss.
For å jobbe er det to minneadresser. Derfor er det en minnepost for maskininstruksjoner og en annen minnepost for data.
I motsetning til Von Neumann -arkitektur, som bruker en buss for å flytte både instruksjoner og minnedata, bruker Harvard Architecture et minneområde for data og en annen for instruksjoner.
Modifisert Harvard -arkitektur
I nåværende datamaskiner er det ingen oppløsning av minneområder som brukes av programmer og data. Av denne grunn kan det sies at de teknologisk har en von Neumann -arkitektur.
Modifisert Harvard -arkitektur tjener imidlertid til å representere dagens datamaskiner i dag.
Selv om gjeldende prosesseringsenheter deler minne, har de visse elementer, for eksempel eksklusive instruksjoner, som forhindrer dataene i instruksjonene. Dette kalles modifisert Harvard -arkitektur.
Dermed har modifisert Harvard -arkitektur to separate busser, en for koden og en for data, men minnet i seg selv er et fysisk delt element.
Minnekontrolleren er der endringen er basert, fordi denne enheten er den som administrerer minnet og hvordan den skal brukes.
Moderne datamaskindesign støttes av modifisert Harvard -arkitektur. De brukes i mikrokontrollere og digital signalbehandling.
Hvordan fungerer Harvard Architecture?
Harvard Architecture har forskjellige områder med minneadresser for programmet og for data.
Dette resulterer i muligheten til å designe en krets på en slik måte at en buss- og kontrollkrets kan brukes til å håndtere flyt av informasjon fra programmets minne og en annen atskilt for å håndtere flyt av informasjon til dataminnet.
Bruk av separate busser betyr at det er mulig at utvinning og utførelse av et program blir utført uten avbrudd ved noen sporadisk overføring av data til dataminnet.
Kan tjene deg: de 10 elementene til en viktigere datamaskinFor eksempel, i en enkel versjon av denne arkitekturen, kan programgjenopprettingsenheten være okkupert ved å gjenopprette følgende instruksjon i programsekvensen og i parallell utføre en dataoverføringsoperasjon som kunne ha vært en del av den forrige instruksjonen i programmet.
På dette nivået har Harvard -arkitektur en begrensning, siden det generelt ikke er mulig å plassere programkoden i dataminne og utføre den derfra.
Tillegg i arkitektur
Til den enkle formen for Harvard -arkitektur kan mange eksisterende varianter av større komplikasjoner legges til.
Et vanlig tillegg er å legge til en lagring av instruksjonsbuffer i programmets databuss, som lar instruksjonene utførelsesenhet for en raskere tilgang til neste trinn i programmet, uten å måtte gå til et tregere minne for å få trinnet i programmet Hver gang det kreves.
Minneadresser
En datamaskin med Harvard -arkitektur har forskjellige områder med dataadresser og instruksjoner: Adressen en av instruksjonene er ikke det samme området som adressen en av data.
Adressen en av instruksjonene kan inneholde en verdi av tjue -fire biter, mens adressen en av data kan indikere en åtte -bit byte, som ikke er en del av den verdien av tjue -four -biter.
Minnesystem
Siden du har et eget minneområde for instruksjoner og data, som skiller både signalene og lagring i kode og dataminne, gjør dette det mulig å få tilgang til hvert av minnesystemene.
Fordeler
- Det er mindre muligheter for korrupsjon i overføringen, siden dataene og instruksjonene overføres gjennom forskjellige busser.
- Dataene og instruksjonene får tilgang til på samme måte.
- Tillater forskjellige lagringsmedier for instruksjoner og data. For eksempel kan du legge instruksjoner på en økonomisk ROM og data i en dyr RAM.
- De to minnene kan bruke forskjellige cellestørrelser, noe som gjør effektiv ressursbruk.
- Det er en høyere minnebåndbredde, som er mer forutsigbar for å ha separate minner for instruksjoner og data.
Beskyttelsesnivå
I systemer som ikke har en minneadministrasjonsenhet tilbyr et ekstra beskyttelsesnivå, siden data ikke kan utføres som om det var kode, noe som vil utsette systemet for mange problemer, for eksempel bufferoverløp.
Kan tjene deg: kommersiell programvareDet er derfor det er populært blant små integrerte systemer, for eksempel mikrobølgeovn eller klokke.
Høyere hastighet
Harvard -arkitektur kan lese en instruksjon og også gjøre tilgang til dataminne samtidig med rask hastighet.
Tilbyr høyere ytelse, siden det tillater samtidig å skaffe data og instruksjoner som kan lagres i separate minner og reise gjennom forskjellige busser.
En Harvard -arkitektur vil generelt hjelpe en datamaskin med et visst nivå av kompleksitet til å fungere raskere enn en von Neumann -arkitektur, forutsatt at det ikke er nødvendig å dele ressurser mellom dataminner og koden.
Hvis begrensningene for pinner eller andre faktorer tvinger bruken av en enkelt buss for å få tilgang til begge minneområdene, vil slike fordeler sannsynligvis bli annullert i stor grad.
Ulemper
Større kompleksitet og kostnad
Problemet med Harvard -arkitektur er dens store kompleksitet og kostnad fordi, i stedet for en databuss, er det nå nødvendig.
Produksjonen av en datamaskin med to busser er mye dyrere og tar lengre tid å produsere den. Det krever en kontrollenhet for to busser, noe som er mer komplisert og hvis utvikling er dyr og trenger mer tid.
Dette betyr en mer kompleks implementering for produsenter. Det krever flere pinner på CPU, et mer sammensatt hovedkort og å måtte doble RAM -brikkene, samt en mer kompleks cache -design.
Liten bruk
Harvard -arkitektur brukes ikke mye, så det er vanskeligere å implementere. Det er derfor det sjelden brukes utenfor CPU.
Imidlertid brukes denne arkitekturen noen ganger i CPU for å håndtere åsene.
Misbruk av minneplass
Når det er ledig plass i dataminne, kan det ikke brukes til å lagre instruksjoner og omvendt.
Derfor må de spesielle minnene som er dedikert til hver av dem, gjøres nøye balanserte i deres produksjon.
Referanser
- Listeforskjeller (2019). Forskjell mellom von Neumann og Harvard -arkitektur? Hentet fra: listdifferenser.com.
- PC Magazine (2019). Definisjon av: Harvard Architecture. Hentet fra: pcmag.com.
- Ravepedia (2019). Harvard -arkitektur. Hentet fra: ravepedia.com.
- Scott Thornton (2018). Hva er forskjellen mellom Von-Neumann og Harvard-arkitekturer? Mikrokontroller -tips. Tatt fra: Mikrokontrollerte.com.
- Wikipedia, The Free Encyclopedia (2019). Harvard -arkitektur. Hentet fra: i.Wikipedia.org.
- The Crazy Programmer (2019). Forskjell mellom von Neumann og Harvard -arkitektur. Hentet fra: thecrazyprogrammer.com.
- « Karakteristiske nettverk, typer, fordeler og ulemper
- Heterotroph ernæringsegenskaper, stadier, typer, eksempler »