patternModerate
Which architecture do modern computers use?
Viewed 0 times
architecturecomputerswhichusemodern
Problem
Is it one of:
Or are they antiquated models that modern computers are only loosely based on?
If you asked Intel or AMD what would they say?
- Harvard
- Modified Harvard
- von Neumann
Or are they antiquated models that modern computers are only loosely based on?
If you asked Intel or AMD what would they say?
Solution
Modern general-purpose high-performance processors use separate instruction and data caches, and so could be classified as modified Harvard even though they use a unified address space. (Some microcontrollers—usually to provide extra memory or protection without a memory protection unit—use a Harvard architecture in which data and code use separate address spaces.)
x86 might be considered a little more nearly "pure" von Neumann than some other ISAs in that self-modified code is guaranteed to be handled properly if a jump is used. Many other ISAs require an instruction synchronization instruction and may require explicit invalidation of any modified memory from the instruction cache (i.e., the instruction cache is not necessarily coherent).
Cross-modified code is somewhat more complex; even x86 requires a synchronizing instruction.
x86 might be considered a little more nearly "pure" von Neumann than some other ISAs in that self-modified code is guaranteed to be handled properly if a jump is used. Many other ISAs require an instruction synchronization instruction and may require explicit invalidation of any modified memory from the instruction cache (i.e., the instruction cache is not necessarily coherent).
Cross-modified code is somewhat more complex; even x86 requires a synchronizing instruction.
Context
StackExchange Computer Science Q#24599, answer score: 12
Revisions (0)
No revisions yet.