I'm studying computer hardware and the acronym "RWM" appears, so I wonder what it means? It has to do with LOADs and STOREs of instructions.

enter image description here

  • \$\begingroup\$ In this context I would expect this to be about read / write memory, i.e. the unit which handles memory loads and stores within the microarchitecture. The diagram is not so clear on where the instruction decoding is done, but without memory accesses the whole pipeline would be fairly limited (only register accesses possible). \$\endgroup\$
    – Schedler
    May 5 '13 at 1:06

Correction. I made the unfortunate dyslexic mistake of reading the three letter abbreviation as RMW when it was RWM. In the context of the block diagram of the original question I would have to agree that -

RWM means "Read - Write - Memory" as in an operational sequence.

I'll leave my original comment below as it is also a very important concept in computer architecture too.

RMW means "Read - Modify - Write".

Typically this is in the context of the computer architecture that the RWM operation is designed in such way that it is an atomic sequence. This means that a register contents can be partially changed in one operation without being interrupted by an other part of the computer before the register update is complete.

  • \$\begingroup\$ If that were true then "RWM" should stand for "Read - Write - Modify". \$\endgroup\$
    – user3624
    May 5 '13 at 0:03
  • \$\begingroup\$ Just for my idle curiosity, why isn't it called RMW? \$\endgroup\$
    – Andy aka
    May 5 '13 at 0:03
  • 3
    \$\begingroup\$ Read-Modify-Write is typical referred as RMW. RWM propably means Read-Write Memory. \$\endgroup\$
    – mj6174
    May 5 '13 at 0:04
  • 1
    \$\begingroup\$ I think because the diagram shows not only functional blocks but the flow of execution, it does refer to memory. This RWM is in the execution phase. An instruction could be a load and store with an addressing mode. In which case two operands will go in to select the memory location: for instance a base register and a displacement register. And one result comes out: the fetched word. So the read-write-memory is like another ALU: a big lookup table with several inputs and one output. Store instructions are not well represented in the diagram, however. \$\endgroup\$
    – Kaz
    May 5 '13 at 2:44
  • 2
    \$\begingroup\$ @Kaz: In introductory computer organization books, the inputs to the data mem are usually (1) an address and (2) a data word. That's so you can do a store operation. If you want to do a load you provide only the address and the data word comes out the "bottom" of the memory block. Address arithmetic requires an extra cycle (you put base and displacent operands through the ALU, put the resulting address back in a register, and then in the following cycle you do your load or store.) \$\endgroup\$ May 5 '13 at 3:14

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.