Four 16x4bit blocks are interconnected to form a 64-bit memory as shown below enter image description here

First of all why is a block here called 16x4bit ; 4 bits are related to the input gates but what's with 16 here ?

I also specified the address-range of each block but it seems that my answer was incorrect : This is what I did :

Memory MA => 0x00 - 0x0F (Since it has only 4 bits = half of a byte = 16 Adresses)

Memory MB => 0x10 - 0x1F

Memory MC => 0x20 - 0x2F

Memory MD => 0x30 - 0x3F

What am I doing wrong here ?

  • \$\begingroup\$ What makes you think your answers are incorrect? \$\endgroup\$ Dec 20, 2020 at 22:36
  • \$\begingroup\$ The professor said so . He doesn't answer my emails so wanted to put this question here \$\endgroup\$
    – Samir
    Dec 20, 2020 at 22:42
  • 1
    \$\begingroup\$ 16 x 4 means the memory block has 16 locations, each containing 4 bits. \$\endgroup\$ Dec 20, 2020 at 23:22
  • 1
    \$\begingroup\$ A 16x4 block already IS a 64 bit memory. And 16 is the number of address locations addressed by A0 to A3 in each chip. As to what you're doing, pay more attention to the address decoding on A4 and A5 (and avoid copy/paste errors!) \$\endgroup\$ Dec 20, 2020 at 23:27
  • 1
    \$\begingroup\$ It’s a decimal to binary conversion. 16x4d = 4+2. Binary addresses \$\endgroup\$ Dec 21, 2020 at 2:31

1 Answer 1


Pay close attention to the gates controlling the !enable inputs on each memory block.

For example, memory block MA is active when address lines A5 is LO and A4 is HI. You should be able to figure out the active address range from what I just said.

Work out when the other memory blocks become enabled.

  • \$\begingroup\$ Oh yea didn't see that but shouldn't enable be 1 when it's active ? Or is it because it's showing EN with a negation as a symbol which means EN is active when it's low and inactive when it's high ? \$\endgroup\$
    – Samir
    Dec 21, 2020 at 10:39
  • \$\begingroup\$ You are on the right track. Notice the memory blocks have a negation symbol on the Enable inputs. Then notice the AND gates have a negation symbol on the output. Therefore, the memory block is Enabled when the AND gate is TRUE. You should be able to figure the rest out on your own \$\endgroup\$ Dec 21, 2020 at 16:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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