Harvard Architecture
On januari 24, 2022 by adminGCSE Computer Architecture (14-16 år)
- En redigerbar PowerPoint-lektionspresentation
- Redigerbara repetitionshandledningar
- En ordlista som täcker de viktigaste terminologierna i modulen
- Topic mindmaps för att visualisera nyckelbegreppen
- Utskrivbara flashcards för att hjälpa eleverna att aktivt minnas och känna sig trygga-upprepning
- En frågesport med tillhörande svarsnyckel för att testa kunskap och förståelse av modulen
A-Level The characteristics of contemporary processors (16-18 years)
- En redigerbar PowerPoint-lektionspresentation
- Editable revision handouts
- En ordlista som täcker de viktigaste terminologierna i modulen
- Topic mindmaps för att visualisera nyckelbegreppen
- Utskrivbara flashcards för att hjälpa eleverna att aktivt minnas och känna sig säkra.baserad repetition
- En frågesport med tillhörande svarsnyckel för att testa kunskap och förståelse av modulen
INLEDNING
Mikrokontroller använder i allmänhet två typer av arkitektur.
- Von Neumann-arkitektur
- Harvard-arkitektur
Von Neumann-arkitekturen består av styrenhet, aritmetisk och logisk enhet, in- och utdata samt register.
I Von Neumann-arkitekturen, som används av många mikrokontroller, finns minnesutrymmet på samma buss och därmed är det meningen att instruktioner och data ska använda samma minne. Den använder begreppet dator med lagrat program.
Harvardarkitekturen består av aritmetisk logikenhet, dataminne, in-/utgång, dataminne, instruktionsminne och kontrollenhet.
Harvardarkitekturen har separata minnen för data och instruktioner. På så sätt kan både instruktioner och data hämtas samtidigt, vilket gör det bekvämt för användarna.
I Harvard-arkitekturen används instruktioner i skrivskyddade minnen och data i skrivskyddade minnen.
Harvard-arkitekturen används oftast med CPU:n, men den används ibland med huvudminnet, eftersom den är lite komplicerad och dyrare.
Storleken på minnet för både instruktioner och data är olika i fallet med Harvard-arkitekturen. Programmen kan aldrig köras automatiskt och organisationen av minnet ligger inte i användarens händer. Vi kan titta på de olika egenskaperna hos Harvardarkitekturen i den här artikeln.
EXEMPEL PÅ HARVARDARKITKTUREN
Ett exempel på Harvardarkitektur är de tidiga datorernas stordatorsystem där instruktionerna lagras i ett programmeringsmedium, t.ex. hålkort, och data lagras i det andra [programmeringsmedium, t.ex. band. Resultaten av Harvardarkitekturen är deras motsvarande bilder.
Dataflödesmaskiner och reduktionsmaskiner är också exempel på Harvardarkitektur. De uppvisar en hög grad av parallellism vilket innebär att resultaten från data och instruktioner kan erhållas samtidigt.
Kvantdatorer kan också nämnas som ett exempel på Harvardarkitektur. Skillnaden mellan andra datorer och kvantdatorer är den tid de behöver för att slutföra en uppgift och den ordning i vilken de prioriterar sina tidsangivelser.
Enigma-maskiner som användes under världskrigen följer också Harvard-arkitekturen,
Ett annat viktigt exempel på Harvard-arkitektur är DIGITAL SIGNAL PROCESSOR, som i första hand är beroende av begreppet Harvard-arkitektur. Låt oss se, hur DSP fungerar i detalj.
DIGITAL SIGNAL PROCESSOR
- Digitala signalprocessorer används för att strömma data och de används för att hämta flera instruktioner samtidigt med hjälp av en specialiserad minnesarkitektur och separat data- och programminne.
- DSP:er manipulerar matematiskt förfaranden som tar hänsyn till verkliga aspekter som ljud, video, röst, tryck och digitaliserar dem.
- De används också för att utföra matematiska operationer som addition, subtraktion, multiplikation och division. Behandlingen av signaler är viktig eftersom den information som de innehåller måste visas och analyseras så att de kan omvandlas till en annan signal, till det format som användarna kräver, så att de finner det intressant.
- Analog-till-digitalkonverterare tar sig an uppgiften att omvandla ovanstående aspekter till digitala signaler i form av 0:or och 1:or. DSP tar sedan den digitaliserade signalen och bearbetar dem.
- Den tar de digitaliserade signalerna och omvandlar dem till analoga signaler igen med hjälp av Analog to Digital Convertor vilket gör dem användbara för den verkliga världen. Hastigheten med vilken alla dessa processer sker är mycket hög.
- Låt oss se hur den digitala signalprocessorn fungerar på Mp3-enheter. Den tar i allmänhet emot ingångarna via mottagare och omvandlar dem till en digital signal (i form av 0:or och 1:or) med hjälp av analog-digitalomvandlare. Efter konverteringsfasen utförs kodning och den kodade filen sparas därmed i minnet.
- Nästan kommer avkodningsfasen, där filen tas från minnet, konverteras till analoga signaler med hjälp av en digital-analog omvandlare och sedan tas utgången emot via högtalarsystemet. Detta är den process som sker i Mp3-enheten. Den utför också komplexa funktioner som volymkontroll, redigering av frekvenser och så vidare.
- En DPS kan användas av datorn för att styra saker som effektivitet, överföring osv. Signalerna går först genom bearbetningsfasen och sedan genom överföringsfasen. Vid telekonferenser används telefonsignaler för att överföra ljud- och videoledningar. Signalernas kvalitet kan manipuleras eller improviseras för att framstå som bättre för användarens ögon. Den kommer att vara osynlig för användarens ögon. Exempel, ekoavbrott på telefoner.
- Och även om signaler i den verkliga världen kan bearbetas på ett analogt sätt kan dessa digitalt bearbetade signaler överföras med hög hastighet och de är mycket exakta.
KOMPONENTER INOM EN DSP
Digital signalprocessor består av följande delar:
Programminne:
Den använder bearbetade data och lagrar programmet inne i minnet. Det är i allmänhet icke-flyktigt. I detta programminne används flashminne, där omprogrammering är möjlig med hjälp av ett hårdvarugränssnitt. Och programminne använder i allmänhet begreppet stack.
Dataminne:
Dataminne kallas Random Access Memory. Det är en tillfällig plats för lagring av variabler och konstanter under programutförandet. Mängden minne som är RAM, varierar från en mikrokontroller till en annan.
Compute Engine:
Den utför matematiska operationer och samlar in data och program från sina respektive platser. Den samlar in instruktioner från programminnet och den samlar även in data från dataminnet.
Input/Output:
Tekniken som används för att överföra data från en extern enhet och en mikrokontroller kallas Input/Output. Användaren kommunicerar med mikrokontrollern genom Input/Output. Användarna matar in sina data via inmatningsenhetens tangentbord och hämtar önskad utdata från den externa enhetens skrivare eller hårddiskar. Dessa Input/Output-enheter kallas periferier och är de vanligaste enheterna som används i mikrokontrollersystemet.
ARCHITKTUR FÖR DIGITAL SIGNAL PROCESSOR
SVARUMEDELSARCHITKTUR:
Instruktionsuppsättningarna som används i DSP är oregelbundna. Medan de vanliga instruktionsuppsättningarna används vid vanliga operationer i en dator, används DSP-uppsättningarna vid specialiserade matematiska operationer.
Assembleringsprogram läggs i allmänhet in i bibliotek för återanvändning, i stället använder andra maskiner kompilatormetoder för att lagra viktiga algoritmer. Många program som används i DSP är i allmänhet handskrivna för att underlätta programmeringen.
Datainstruktionerna omfattar olika operationer såsom aritmetiska instruktioner, booleska instruktioner, logiska instruktioner och, flödesinstruktioner.
Programflödet består av pipelined arkitektur och flera ackumulatorer.
HARDWARE ARKITEKTUR:
Hårdvaruarkitekturen består av fysiska komponenter i ett system. I allmänhet ger de utrymme för andra system att passa in i enheten och de bedömer också de andra programvarukomponenterna. De ger också utrymme för effektiv användning av programvarukomponenter. De kombinerar de olika sektorerna inom ingenjörsvetenskapen för att arbeta tillsammans och utveckla nya maskiner och arkitektur.
Vi måste dock inse att hårdvarukomponenterna inte kan fungera ordentligt utan hjälp av programvarukomponenter. Om vi till exempel tar ett modernt flygplan måste vi använda inbäddad mjukvarukod för att få det att fungera effektivt.
HUSARKITEKTUR:
Digitala signalprocessorer används i allmänhet för att köra data och de använder specialiserad minnesteknik för att hämta data och instruktioner separat på olika vägar (begreppet Harvard-arkitektur) och data och instruktioner hämtas på samma buss som används i Von Neumann-arkitekturen.
Minnet använde ibland cached storage för att känna till fördröjningsoperationer.
VIRTUELLT MEMORIUM:
DSP:er använder i allmänhet inte virtuellt minne eftersom de förlitar sig på multitaskingoperationer. Operationer som använder virtuellt minne använder i allmänhet konceptet konceptväxling som bevisligen ökar latensen.
MODERN DSP’S
Moderna digitala signalprocessorer ger ännu bättre resultat. Detta beror på att de är utformade på låg nivå, har ett avancerat cacheminne osv.
Design av DSP:er kan ha olika hastigheter. Det finns många digitala signalprocessorer med låg hastighet som är utformade för att utföra specifika uppgifter.
XMOS tillverkar många mikrokärniga processorer. De är lätt programmerbara med hjälp av språket C.
SEVA är en modern DSP som använder MAC-struktur.
Analog Devices använder SHARC-baserade DSP-system.
Microchip Technologies används i PIC 24-bilder.
De flesta DSP:er använder fasta aritmetiska värden. Flytande DSP:er kan bli ogiltiga vid dynamiska värden. Många produktkonstruktörer använder flytande DSP:er om de anser att enheten ska vara kostnadseffektiv samt i utbyte mot tillförlitlig programvara mot dyra hårdvarusystem.
Moderna DSP:er används i allmänhet i lätt implementerbara algoritmer.
Fördelar och nackdelar med DSP:er
Fördelar:
- De är mycket exakta. Deras utdata har hög noggrannhet jämfört med analoga enheter.
- Reorganisering av analoga enheter kan visa sig vara mycket svårt. I digitala signalprocessorer är det enkelt eftersom koden blir flashad på några sekunder, vilket gör det bekvämt för användarna.
- Algoritmer på hög nivå kan implementeras med hjälp av specifika metoder.
- Kostnaden för implementering i digitala signalprocessorer är mycket lägre jämfört med de analoga processorerna.
- DSP:erna kan lätt nedmonteras jämfört med andra processorer.
- DSP:erna kan också drivas offline, vilket gör dem tillgängliga för enkel transport.
CONS:
- Det är ganska komplext eftersom den använder sig av konverterare. ADC (analog till digital omvandlare) och DAC (digital till analog omvandlare).
- Varje DSP har separata hård- och mjukvaruenheter. Därför kan DSP inte användas utan lämplig utbildning.
- Det krävs mer bandbredd för digital överföring än för analog överföring.
- IC måste användas med försiktighet eftersom de är mycket dyra.
- Vi måste behärska begreppen klart och tydligt eftersom den befintliga kontrollenheten är mer komplex och en omkonstruktion skulle bli ett tråkigt arbete.
FACTA OM HARVARD-ARKITEKTUREN
- Harvard-arkitekturen snabbar upp processorhastigheten. Eftersom data och instruktioner lagras i separata bussar är det mycket fördelaktigt för många användare.
- Harvard Architecture följer ”Pipeline”-arrangemanget. Om utförandet av en instruktion pågår, hämtas den andra instruktionen från minnet. Detta gör det möjligt att överlappa instruktionerna, vilket ökar utförandegraden avsevärt.
- RISC (Reduced Instruction Set Computer) och CISC (Complex Instruction Set Computer) är de metoder som används i Harvard-arkitekturen. I RISC-mikrokontroller är data 8 bitar, medan instruktioner är 12 eller 16 bitar breda. På så sätt utförs allting samtidigt, vilket leder till ökad prestanda.
- I CISC är både data och instruktioner 8 bitar breda. De har i allmänhet över 200 instruktioner. Men de kan inte exekveras samtidigt utan hämtas samtidigt.
- Exekveringsenheten består av 2 aritmetiska och logiska enheter, 1 shifter, 1 multiplikator, ackumulatorer osv. De kan således utföra aritmetiska operationer på ett stabilt sätt och med utmärkt parallellitet.
- Många mikrokontroller använder också Lookup Table. (LUT). De används för moduleringsändamål.
Fördelar och nackdelar med HARVARD-arkitekturen
Fördelar:
- Då data och instruktioner lagras i separata bussar finns det mycket få chanser till korruption.
- Data som använder läs- och skrivläge och instruktioner som använder skriv- och läsläge drivs på samma sätt. De kan också nås på samma sätt.
- I allmänhet finns det två minnen, ett för data och ett för instruktioner, de har olika cellstorlekar och utnyttjar resurserna mycket effektivt.
- Bandbredden som används för minnet är mer förutsägbar.
- De ger generellt sett hög prestanda eftersom data och bussar förvaras i separata minnen och färdas på olika bussar.
- Parallell åtkomst till data och instruktioner kan upprätthållas.
- Skemaläggning skulle inte längre behövas eftersom det finns separata bussar för data och instruktioner.
- Programmerare kan utforma minnesenheten enligt sina krav.
- Kontrollenheten får data och instruktioner från ett minne. Därmed förenklas styrenhetens arkitektur.
- Det outnyttjade dataminnet kan inte användas av instruktioner och det lediga instruktionsminnet kan inte användas av data. Minnet som är avsett för varje enhet måste balanseras noggrant.
- Programmet kan inte skrivas av maskinen på egen hand som i Von Neumann-arkitekturen.
- Control Unit tar längre tid att utveckla och är på den dyra sidan.
- Det finns 2 bussar i arkitekturen. Detta innebär att moderkortet blir mer komplext, vilket i sin tur innebär att det finns två RAM-minnen och därmed tenderar att ha en mycket komplex cachekonstruktion. Det är anledningen till att den används mest inuti CPU:n och inte utanför den.
- Produktionen av datorer med två bussar tar längre tid att tillverka och är återigen på den dyra sidan, liksom kontrollenheten.
- Den har fler stift på sina IC:er. Därför är det mycket svårt att implementera den.
- Den används inte i stor utsträckning, så utvecklingen av den skulle vara på efterkälken.
- Den gör inte det mesta av den centrala processorenheten, alltid.
- Basics: Den är baserad på Harvard I-datormodellen.
- Minne: Den har separat minne för data och instruktioner. Således kan varje system i minnet nås samtidigt.
- Instruktionsbehandling: I Harvard-arkitekturen kan instruktionsbehandlingen slutföras i en enda fas om pipelines finns på sina lämpliga platser.
- Kostnad: Kontrollenhet i Harvard-arkitekturen tar längre tid att utveckla och är på den dyra sidan.
- Användningsområden: De används främst i mikrokontroller och digitala signalprocessorer.
- Instruktioner är bredare än data. I det här fallet, om instruktionerna skulle behandlas separat, kan de leda till ett mer tillförlitligt resultat. Om de däremot placeras i samma cell som data tenderar de att överlappa varandra, vilket leder till irrgångar.
- Vi bör se upp om cacheminnena är skrivskyddade. Detta beror på att om Caches har Read-Write-alternativet kan det ta längre tid att utveckla dem och de kan också bli komplicerade.
- De bör ha separat bandbredd för bättre optimering.
- Väldigt effektivt när det gäller ”JIT”, Just in Time Compilers, där copy-paste-straffet inte är straffbart, metaprogrammering är närvarande och självmodifierande kod finns också tillgänglig.
- Varvid programmeringsaspekten skulle vara det viktigaste. Eftersom det med mikrokontroller skulle vara svårt att designa och utveckla andra varianter eftersom moderkorten inuti dem skulle vara komplexa att förstå och skulle visa sig vara en tråkig uppgift på det hela taget.
- Inbäddade processorer kan utvecklas eftersom de är tänkta att ha egenskaper som i sin tur främjar korskoppling över båda sidorna, om de har stor minnesbandbredd och platt adresslänk.
- Konceptet med stack är implementerat. Adressenheten bör inte bli komplicerad eftersom den kan behöva köra minst 2 vägar parallellt. Programräknaren och stackpekaren skulle finnas med. Register som finns i pekarna kan ökas eller minskas.
- Vissa digitala signalprocessorer använder ”LIFO”-konceptet. Senast in först ut. Detta kallas också för hårdvarustapel. På detta sätt kan vi skjuta och plocka stacken snabbare, därför krävs det inte användning av adressbussar.
DISADVANTAGER:
SAMMANFATTNING AV HARVARD-ARKITEKTUREN
Så vi bör välja att använda Harvard-arkitekturen om,
KONKLUSION:
Därmed har vi diskuterat Harvard-arkitekturen i detalj. Vi har också sett alla fördelar och nackdelar med Harvardarkitekturen. Exempel har diskuterats för att göra det tydligare för användarens ögon. Vi måste alltså se till att vi behärskar arkitekturen helt och hållet för att få de bästa resultaten av den. Vi bör också ha klart för oss i vilka fall vi bör använda Harvard- och Von Neumann-arkitekturen och använda det vi använder på ett effektivt sätt. Du får gärna skriva kommentarer och dela med dig av dina förslag för att diskutera mer!!!
- https://en.wikipedia.org/wiki/Harvard_architecture
- https://tdck.weebly.com/uploads/7/7/0/5/77052163/03_-_harvard_architecture_comparison.pdf
- https://www.google.com/search?q=advantages+of+harvard+architecture&safe=strict&tbm=isch&source=iu&ictx=1&fir=sJHdbNlHdCfBnM%253A%252C3B-t13LzqLeqjM%252C_&vet=1&usg=AI4_-kQJCxwrxhCUXW7xWDgGIGpD3yUVAA&sa=X&ved=2ahUKEwinsPip1tfpAhVIwKQKHYUXCdsQ9QEwCnoECAUQHA#imgrc=g1JuuAOnXWWyKM&imgdii=jUPAKYHNfW-wyM
- https://www.sciencedirect.com/topics/engineering/harvard-architecture
Lämna ett svar