Memory and Repetitive Arithmetic Machines Prof. Sirer CS 316 Cornell University
Memory Various technologies S-RAM, D-RAM, NV-RAM Static-RAM So called because once stored, data values are stable as long as electricity is supplied Based on regular flip-flops with gates Dynamic-RAM Data values require constant refresh Internal circuitry keeps capacitor charges Non-Volatile RAM Data remains valid even through power outages More expensive Limited lifetime; after to 1M writes, NV-RAM degrades
S-RAM A decoder selects which line of memory to access A R/W selector determines the type of access That line is then coupled to the data lines How do you build large memories? Data Address Decoder
Tristate Buffers A device that couples a logic line to a wire
Big Memories Memory banks in parallel, with tri-state buffer and decoder to select which bank to couple The enable bit controls connection of data bits and clocking of internal flip-flops 12 2 enable addr data
Summary We now have enough building blocks to build machines that can perform non-trivial computational tasks
A Calculator User enters the numbers to be added or subtracted using toggle switches User selects ADD or SUBTRACT Muxes feed A and B, or A and –B, to the 8-bit adder The 8-bit decoder for the hex display is straightforward (but not shown in detail) 0101 adder mux reg led-dec add/sub select … … doit
A Vote Counter Data values flow from set of parallel registers (a register file) to the addition unit back into the register file 0 mux reg led-dec deco clk enc s1 s4 s1 s2 s3 reg