Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

How does RAM give "4"th value when CPU requests the "001"th

  1. Mar 7, 2015 #1
    Hey all, I'm currently building a 8 bit CPU and ram in simulator software but have no idea how to call a specific memory cell, ie I can't call the "001"(binary) cell, I'd want it to be translated to call the 4th cell. How does real ram solve that issue? Any help appreciated, thanks.
     
  2. jcsd
  3. Mar 7, 2015 #2

    mfb

    User Avatar
    2016 Award

    Staff: Mentor

    While that looks like a strange convention: the 4th ram cell should check if the bits are "001", and get read out if this is true.
     
  4. Mar 7, 2015 #3
    Does ram seriously have this on each cell? Doesn't it have a binary to decimal decoder or something?
     
  5. Mar 7, 2015 #4

    mfb

    User Avatar
    2016 Award

    Staff: Mentor

    A binary to "every single RAM cell" decoder has one logic element for every single RAM cell.
    In actual hardware this is not true as RAM forms a 2D array with row and column addresses, but there each row and each column needs such an element in the decoder. On the other hand, each memory address has more than one bit so you have to think about the actual implementation of it. I don't know how realistic your simulation is supposed to be.
     
  6. Mar 16, 2015 #5
    You need to implement address decoding.

    In a simple implementation you would feed your 3 address bits to a 3:8 decoder. Each output of the decoder goes to a 'memory segment enable' input which lets the decoder control which segment is being accessed at a given moment (since a decoder only has one high output at a given moment).
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook




Similar Discussions: How does RAM give "4"th value when CPU requests the "001"th
Loading...