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