Která je lepší?
Každá architektura má své výhody: Za stejných podmínek má harvardský model výhodu ve výkonu. Von Neumannův model je flexibilnější.
Moderní hybridy
V dnešní době je většina univerzálních počítačů (PC, Mac atd.) hybridních konstrukcí, které poskytují to nejlepší z obou architektur. Hluboko uvnitř procesoru pracují na harvardském modelu a používají oddělené mezipaměti pro instrukce a data, aby maximalizovaly výkon. Instrukční i datová mezipaměť se však automaticky načítají ze společného paměťového prostoru. Z hlediska programování se tyto počítače jeví jako čisté Von Neumannovy stroje s mnoha gigabajty virtuální paměti.
Mikrokontroléry
Mikrokontroléry, jako jsou ty, které pohánějí Arduina, jsou určeny pro vestavěné aplikace. Na rozdíl od počítačů pro všeobecné použití má vestavný procesor obvykle přesně definovanou úlohu, kterou musí spolehlivě a efektivně plnit – a to s minimálními náklady, konstrukce mikrokontrolérů bývají spíše spartánské. Zříkají se luxusu vícevrstvého cachování a diskových virtuálních paměťových systémů a drží se toho, co je pro danou úlohu nezbytné.
Ukazuje se, že harvardský model se pro vestavné aplikace hodí, a Atmega 328 použitá v Arduinu UNO používá relativně čistou harvardskou architekturu. Programy jsou uloženy v paměti Flash a data v paměti SRAM.
Z větší části se o jejich správu postarají překladač a běhové systémy za vás, ale když začne jít do tuhého, je dobré vědět, jak věci fungují pod kapotou. A na těchto malých strojích začíná jít do tuhého mnohem rychleji!
Úplně jiná měřítka
Největší rozdíl mezi těmito mikrokontroléry a vaším univerzálním počítačem je v obrovském množství dostupné paměti. Arduino UNO má pouze 32K bajtů paměti Flash a 2K bajtů paměti SRAM. To je více než 100 000krát MENŠÍ fyzická paměť než u počítače nižší třídy! A to ani nepočítáme diskovou jednotku!