For an assignment, I need to draw a diagram of Von Neumann architecture, and explain each part of it.

All the diagrams and explanations I've seen have a distinct "Memory" block that holds both the code and the program data of running processes. What I can't find information on however is if this memory refers to only primary memory (like RAM), or if it also includes secondary memory (like a SSD or HDD).

Does Von Neumann Architecture specifically refer to only primary memory, or does it also include secondary storage?

I'd also like to know if I'm using any terminology incorrectly above.

  • $\begingroup$ Welcome to CS.SE! 1. By "district", do you perhaps mean "distinct"? 2. I recommend you be more sparing in your use of bold and large fonts: the original version of your question was a bit jarring on the eyes. $\endgroup$ – D.W. Nov 12 '15 at 20:42
  • $\begingroup$ Sorry, yes, I mean distinct. And thanks, I wanted the condensed question to stand out. $\endgroup$ – Carcigenicate Nov 12 '15 at 20:56

The von Neumann architecture concerns only memory and CPU, not peripherals or devices. Storage, such as a hard disk or SSD, is typically a device, and thus is outside the scope of what's normally shown in the von Neumann architecture. Thus, in a picture of the von Neumann architecture, the block labelled "memory" should be understood to refer to RAM -- not hard disk or SSD.

In particular, in the von Neumann architecture, the CPU can access memory through a bus (the memory bus). In real computers, typically the memory bus cannot be used to read or write the hard drive; there's a separate path for accessing devices like the hard drive. (That's from the perspective of the architecture/hardware level. However, the lines can admittedly start to get blurred a bit from the user application's perspective, given memory-mapped devices, virtual memory, and demand paging.)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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