Our teacher told us, that Harvard architecture is the most evolved and produced architecture today and towards future. But I think because of massive overhead of x86 and Von Neumann based ARM systems that actually Von Neumann is the most used architecture today.

Yes, MCUs with Harvard are even more produced, but since they all have just minor purpose (compared to x86 and ARM based) that Von Neumann is actually the one. Or is it really Harvard?

And second, I know this is strange question, but does any architecture combining both exists? to have separate memory for data and programs, therefore faster instruction processing, but still able to work with these as Von Neumann? To be able to load and unload programs to program memory on the fly? Isn't this the way the x86 should have go? Or would there be some bottleneck that pure Von Neumann solves? Thanks.

link|improve this question

76% accept rate
4  
Even though this is an interesting question I dont think SU is the best place for it. The Theoretical Computer Science site might give you higher quality answers. And additionally, asking two things at once is frowned on. (we don't charge per question) – Nifle Dec 22 '10 at 10:01
This is not a discussion forum. Please review the FAQ before posting. – Diago Dec 22 '10 at 13:01
feedback

closed as not constructive by Diago Dec 22 '10 at 13:01

This question is not a good fit to our Q&A format. We expect answers to generally involve facts, references, or specific expertise; this question will likely solicit opinion, debate, arguments, polling, or extended discussion. See the FAQ for guidance on how to improve it.

1 Answer

x86 is the combination of both. If you take a look at L1 cache of modern processors, you'll notice that there is separate cache for data and for instructions. Also, do some digging on Wikipedia about x86. You see, modern x86 processors aren't actually x86. They instead emulate x86 processors by translating x86 instruction into their own internal microcode. In fact on some of the Intel's processors, microcode can be changed while the system is running.

As for which is more produced, I'd say it's Harvard, mostly because of PICs and similar microcontrollers. As far as I can see, Von Neumann is easier to program so it's not uncommon to see internally Harvard processors (like x86 and some PICs) to present themselves to the world as Von Neumann.

link|improve this answer
feedback

Not the answer you're looking for? Browse other questions tagged or ask your own question.