„Harvard-architektúra” változatai közötti eltérés

[nem ellenőrzött változat][nem ellenőrzött változat]
Tartalom törölve Tartalom hozzáadva
a módosított Harvard architektúra link kell
24. sor:
 
=== Eltérések a módosított Harvard architektúrától ===
A [[módosított Harvard architektúra]] felépítése hasonlít a Harvard architektúrához, de az utasítások és adatok elválasztása nem annyira szigorú, miközben a CPU egyidejű hozzáférése két – vagy több – memóriabuszhoz megmarad. A leggyakoribb módosításban külön adat- és utasítás-cache található, miközben mindkettő ugyanazt a címteret ill. memóriát használja. Amíg a CPU a gyorsítótárakat használja, tiszta Harvard architektúrájú gépként működik. Mikor ugyanez a gép közvetlenül fordul a memóriához, már Neumann architektúrájú gépként viselkedik, mivel a programkódot adatként vagy fordítva, az adatokat programkódként kezelheti. Ez a módosítás széles körben elterjedt a modern processzorok, mint pl. az [[ARM architektúra|ARM]] vagy akár az [[Intel x86|x86]]-os architektúra körében. Erre is gyakran felületesen Harvard architektúraként hivatkoznak, elhagyva a "módosított" jelzőt.
 
Egy másik változtatás adatutat nyit az programmemória (ami általában [[ROM]] vagy [[flashmemória|flash]]) és a CPU között, ami lehetővé teszi a programmemória szavainak csak-olvasható adatként való kezelését. Ezt a technikát különféle [[mikrovezérlő]]kben alkalmazzák, pl. az [[Atmel AVR]] kontrollerekben. Ezzel lehetővé válik konstans adatok, pl. szöveg, funkció(hívási) táblázatok hozzáférése anélkül, hogy azt előzetesen az adatmemóriába kellene másolni, így meghagyva a gyakran szűkös és energiaéhes adatmemóriát a programváltozók számára. Az adatok olvasására a programmemóriából ekkor speciális processzorutasítások szolgálnak; ez nem ugyanaz, mint amikor maga az utasítás állandókat tartalmaz a programkódban (bár bizonyos esetekben az eredmény hasonló lehet).