STEMMA

Vad är bäst?

Varje arkitektur har sina fördelar: Allt annat lika har Harvard-modellen ett försprång när det gäller prestanda. Von Neumann-modellen är mer flexibel.

Moderna hybrider

Nuförtiden är de flesta datorer för allmänna ändamål (PC, Mac osv.) hybridkonstruktioner som ger dig det bästa av båda arkitekturerna. Djupt inne i processorn arbetar de enligt Harvard-modellen och använder separata cacheminnen för instruktioner och data för att maximera prestandan. Men både instruktions- och datacacherna laddas automatiskt från ett gemensamt minnesutrymme. Ur ett programmeringsperspektiv verkar dessa datorer vara rena Von Neumann-maskiner med många gigabyte virtuell lagring.

Mikrokontroller

Mikrokontroller som de som driver Arduinos är utformade för inbyggda tillämpningar. Till skillnad från datorer för allmänna ändamål har en inbyggd processor vanligtvis en väldefinierad uppgift som den måste utföra på ett tillförlitligt och effektivt sätt – och till en minimal kostnad tenderar mikrokontrollers konstruktioner att vara ganska spartanska. De avstår från lyxen med caching i flera lager och diskbaserade virtuella minnessystem och håller sig till det som är väsentligt för uppgiften.
Harvardmodellen visar sig vara en bra matchning för inbäddade tillämpningar och de Atmega 328 som används i Arduino UNO använder en relativt ren Harvard-arkitektur. Programmen lagras i flashminnet och data lagras i SRAM.
För det mesta tar kompilatorn och körtidssystemen hand om hanteringen av dessa åt dig, men när det börjar bli trångt hjälper det att vara medveten om hur saker och ting fungerar under huven. Och saker och ting börjar bli trängda mycket snabbare på dessa små maskiner!

En helt annan skala

Den största skillnaden mellan dessa mikrokontroller och din dator för allmänt bruk är den rena mängden tillgängligt minne. Arduino UNO har endast 32K byte flashminne och 2K byte SRAM. Det är mer än 100 000 gånger MINDRE fysiskt minne än en lågprestandadator! Och då har vi inte ens räknat med diskettenheten!

Lämna ett svar

Din e-postadress kommer inte publiceras.