Memory Organization

•The memory unit consists of binary cells and two registers named MAR (Memory Address Register) & MDR (Memory Data Register).

•The MAR holds the address of the word [each memory location stores 32 bits (8 hexadecimal digits) which we call a word] in the memory to be accessed.

•The data read from the memory or the one to be written in it is held in the MDR, which is also known as Memory Buffer Register(MBR)

•Suppose the memory has 1M (one megabyte is one million bytes of information, is a multiplier of 1000000 (106) addressable locations, MAR needs to be only 20 bits long (220 = 1024 x 1024 )

•Now each location in memory store a 32-bit word, MBR will be 32 bits long.

Each hexadecimal digit represents four bits (binary digits), also known as a nibble (or nybble). For example, an 8-bit byte can have values ranging from 00000000 to 11111111 (0 to 255 decimal) in binary form, which can be conveniently represented as 00 to FF in hexadecimal.

•Reading from or writing into memory is initiated by a Read/Write signal which is sent by the Central Processing Unit.

•If a memory location is to be read, CPU places the address of the location in MAR and issues a Read control signal.

•The memory circuit retrieves the data from the specified address and places it in MDR.

•A signal then reaches CPU informing it that the command to read has been sent.

•If a data is to be written into memory then the CPU places it in MDR and places the address where the data is to be written in MAR.

•It then sends a write signal to the memory circuit.

•The memory circuit writes the contents of MDR in the memory location specified by MAR.

•After this job is completed, the memory sends a completion signal to the CPU.