Harvard vs. Neumann
Szima Gábor
sygma at tesla.hu
Tue Dec 13 09:27:01 CET 2005
On Tue, 13 Dec 2005, Rancz Lajos wrote:
> Felmerült már többször itt a listán, hogy a Neumann architektúra jobb mint a
> Harvard (azt hiszem Móczik kollega billentyűzetéből). Viszont nem értem, hogy
> miért.... Elmondaná vki?
Olyan nincs, hogy az egyik jobb mint a masik. Valamiben ez jobb, valamiben
pedig az.
A DSP-k illetve egyes mikrovezerlok (PIC) jobban szeretik a Harvard
architekturat. Foleg olyan helyeken szoktak alkalmazni, ahol kicsi
programteruletre van szukseg, mellette viszont brutal-nagy adatmemoriara.
Pl. amig egy FIR/IIR algoritmus (DSP) lenyegeben egy par byte-bol allo
ciklus, addig irdatlan mennyisegu beerkezo adatot kell tarolni, ezeket
kezelni, majd kiadni.
A keves kodterulet miatt nem kell kulon "bohockodni" cache-el meg egyeb
furmanyokkal, igy ezt a memoriat eleve fel lehet epiteni dragabb, de gyors
tipusbol. Illetve emiatt garantalt sebesseggel fog futni a kod, ami egy
DSP eseteben eletbevago.
A PIC eseteben azert valasztottak ezt, mert ott keves bit all
rendelkezesre a cimzesre, igy a RAM-ot nem a 10-12 bites kod-cimterulet,
hanem csak egy 8 bites cimzes segitsegevel lehet elerni.
A Neumann architektura rugalmas (mar ahol :), igy nem utkozik korlatokba
aki egy ilyen rendszerre fejleszt. Van egy 24-32-64-... bites cimterulet,
ezt kell cimezni, irni/olvasni. Aztan hogy az adott cimen "adat" vagy
"kod" van, az mar reszletkerdes.
A hatranya is ebbol adodik; joval hosszabbak az utasitasok, a tobb memoria
lehetosege miatt gyakorlatilag olcso "gagyi" memoriabol epitkezhetunk, ami
igenyli a cache-t, ezzel bevittunk egy sebessegbeli bizonytalansagot (ha
epp benne van a cache-ben akkor pl. 1 ms, ha nincs, akkor pl. ~5 ms alatt
fut le a kod).
Elmondhato, hogy a Harvard architekturat inkabb specialis feladatokra
szant eszkozokben, a Neumann-t pedig altalanos alkalmazasoknal (PC)
hasznaljak.
-Sygma
More information about the Elektro
mailing list