Hakim Weatherspoon CS 3410, Spring 2011 Computer Science Cornell University Memory See: P&H Appendix C.8, C.9.

Slides:



Advertisements
Similar presentations
Chapter 5 Internal Memory
Advertisements

Prof. Kavita Bala and Prof. Hakim Weatherspoon CS 3410, Spring 2014 Computer Science Cornell University See P&H Appendix B.7. B.8, B.10, B.11.
State & Finite State Machines Hakim Weatherspoon CS 3410, Spring 2012 Computer Science Cornell University See P&H Appendix C.7. C.8, C.10, C.11.
+ CS 325: CS Hardware and Software Organization and Architecture Internal Memory.
5-1 Memory System. Logical Memory Map. Each location size is one byte (Byte Addressable) Logical Memory Map. Each location size is one byte (Byte Addressable)
Caches Hakim Weatherspoon CS 3410, Spring 2011 Computer Science Cornell University See P&H 5.1, 5.2 (except writes)
CPS3340 COMPUTER ARCHITECTURE Fall Semester, /23/2013 Lecture 7: Computer Clock & Memory Elements Instructor: Ashraf Yaseen DEPARTMENT OF MATH &
These slides incorporate figures from Digital Design Principles and Practices, third edition, by John F. Wakerly, Copyright 2000, and are used by permission.
State and Finite State Machines
1 DIGITAL DESIGN I DR. M. MAROUF MEMORY Read-only memories Static read/write memories Dynamic read/write memories Author: John Wakerly (CHAPTER 10.1 to.
Prof. Hakim Weatherspoon CS 3410, Spring 2015 Computer Science Cornell University See P&H Appendix B.7. B.8, B.10, B.11.
Memory (RAM) Organization Each location is addressable Addresses are binary numbers Addresses used at different granularities –each bit is possible, but.
Prof. Hakim Weatherspoon CS 3410, Spring 2015 Computer Science Cornell University See P&H Appendix B.7. B.8, B.10, B.11.
Arithmetic Hakim Weatherspoon CS 3410, Spring 2012 Computer Science Cornell University See P&H 2.4 (signed), 2.5, 2.6, C.6, and Appendix C.6.
Kevin Walsh CS 3410, Spring 2010 Computer Science Cornell University State & Finite State Machines See: P&H Appendix C.7. C.8, C.10, C.11.
Numbers & Arithmetic Hakim Weatherspoon CS 3410, Spring 2011 Computer Science Cornell University See: P&H Chapter , 3.2, C.5 – C.6.
Kevin Walsh CS 3410, Spring 2010 Computer Science Cornell University Memory See: P&H Appendix C.8, C.9.
1 The Basic Memory Element - The Flip-Flop Up until know we have looked upon memory elements as black boxes. The basic memory element is called the flip-flop.
11/29/2004EE 42 fall 2004 lecture 371 Lecture #37: Memory Last lecture: –Transmission line equations –Reflections and termination –High frequency measurements.
1 Lecture 16B Memories. 2 Memories in General Computers have mostly RAM ROM (or equivalent) needed to boot ROM is in same class as Programmable Logic.
Overview Memory definitions Random Access Memory (RAM)
Chapter 3 Continued Logic Gates Logic Chips Combinational Logic Sequential Logic Flip Flops Registers Memory Timing State Machines.
Lecture 4: Computer Memory
Chapter 5 Internal Memory
State & Finite State Machines Hakim Weatherspoon CS 3410, Spring 2011 Computer Science Cornell University See P&H Appendix C.7. C.8, C.10, C.11.
COMPUTER ARCHITECTURE & OPERATIONS I Instructor: Hao Ji.
1 Lecture 16B Memories. 2 Memories in General RAM - the predominant memory ROM (or equivalent) needed to boot ROM is in same class as Programmable Logic.
1 EE365 Read-only memories Static read/write memories Dynamic read/write memories.
Fall 2007 L16: Memory Elements LECTURE 16: Clocks Sequential circuit design The basic memory element: a latch Flip Flops.
Sequential circuits part 2: implementation, analysis & design All illustrations  , Jones & Bartlett Publishers LLC, (
CS1104-8Memory1 CS1104: Computer Organisation Lecture 8: Memory
MEMORY.
Memory Technology “Non-so-random” Access Technology:
Prof. Hakim Weatherspoon CS 3410, Spring 2015 Computer Science Cornell University See P&H Appendix B.8 (register files) and B.9.
1 Random-Access Memory (RAM) Note: We’re skipping Sec 7.5 Today: First Hour: Static RAM –Section 7.6 of Katz’s Textbook –In-class Activity #1 Second Hour:
Hakim Weatherspoon CS 3410, Spring 2012 Computer Science Cornell University Memory See: P&H Appendix C.8, C.9.
Memory Hakim Weatherspoon CS 3410, Spring 2013 Computer Science Cornell University.
Hakim Weatherspoon CS 3410, Spring 2012 Computer Science Cornell University Memory See: P&H Appendix C.8, C.9.
Memory and Storage Dr. Rebhi S. Baraka
CPEN Digital System Design
Memory Hakim Weatherspoon CS 3410, Spring 2013 Computer Science Cornell University.
Digital Logic Design Instructor: Kasım Sinan YILDIRIM
Penn ESE370 Fall DeHon 1 ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems Day 24: November 5, 2010 Memory Overview.
CPS3340 COMPUTER ARCHITECTURE Fall Semester, /3/2013 Lecture 9: Memory Unit Instructor: Ashraf Yaseen DEPARTMENT OF MATH & COMPUTER SCIENCE CENTRAL.
Feb. 26, 2001Systems Architecture I1 Systems Architecture I (CS ) Lecture 12: State Elements, Registers, and Memory * Jeremy R. Johnson Mon. Feb.
Prof. Kavita Bala and Prof. Hakim Weatherspoon CS 3410, Spring 2014 Computer Science Cornell University See P&H Appendix B.8 (register files) and B.9.
Prof. Kavita Bala and Prof. Hakim Weatherspoon CS 3410, Spring 2014 Computer Science Cornell University See P&H Appendix B.7. B.8, B.10, B.11.
07/11/2005 Register File Design and Memory Design Presentation E CSE : Introduction to Computer Architecture Slides by Gojko Babić.
1 Memory Hierarchy (I). 2 Outline Random-Access Memory (RAM) Nonvolatile Memory Disk Storage Suggested Reading: 6.1.
DIGITAL SYSTEMS Read Only– and Random Access Memory ( ROM – RAM) Rudolf Tracht and A.J. Han Vinck.
Memory and Repetitive Arithmetic Machines Prof. Sirer CS 316 Cornell University.
Computer Architecture Chapter (5): Internal Memory
Lecture 3. Lateches, Flip Flops, and Memory
Memories.
COMP211 Computer Logic Design
State & Finite State Machines
Morgan Kaufmann Publishers
Computer Architecture & Operations I
Chapter 11 Sequential Circuits.
Latches and Flip-flops
Prof. Hakim Weatherspoon
Hakim Weatherspoon CS 3410 Computer Science Cornell University
Prof. Kavita Bala and Prof. Hakim Weatherspoon
Hakim Weatherspoon CS 3410 Computer Science Cornell University
Digital Logic & Design Dr. Waseem Ikram Lecture 40.
Sequential Logic.
Memory and Repetitive Arithmetic Machines
Prof. Hakim Weatherspoon
Hakim Weatherspoon CS 3410 Computer Science Cornell University
Presentation transcript:

Hakim Weatherspoon CS 3410, Spring 2011 Computer Science Cornell University Memory See: P&H Appendix C.8, C.9

2 Announcements HW1 due today HW2 available later today HW2 due in one week and a half Work alone Use your resources FAQ, class notes, book, Sections, office hours, newsgroup, CSUGLab Make sure you Registered for class, can access CMS, have a Section, and have a project partner Check online syllabus/schedule, review slides and lecture notes, Office Hours, early homework and programming assignments

3 Announcements Prelims: Evening of Thursday, March 10 and April 28 th Late Policy 1) Each person has a total of four “slip days” 2) For projects, slip days are deducted from all partners 3) 10% deducted per day late after slip days are exhausted

4 Critical Path Which operation is the critical path? A) AND B) OR C) ADD/SUB D) LT

5 Critical Path What is the length of the critical path (in gates)? A) 3 B) 5 C) 8 D) 11

6 Critical Path What is the length of the critical path for a 32-bit ALU (in gates)? A) 11 B) 32 C) 64 D) 70

7 Multiplexor

8

9 Goals for today Review SR Latches, D Latches, D Flip Flips, and Registers Memory Register Files Tri-state devices SRAM (Static RAM—random access memory) DRAM (Dynamic RAM)

Bistable Devices A B A Simple Device Stable and unstable equilibria?

Bistable Devices In stable state, A = B How do we change the state? A B A B 1 A B A Simple Device Stable and unstable equilibria?

12 SR Latch S R Q Q

13 SR Latch SRQQ S R Q Q Set-Reset (SR) Latch Stores a value Q and its complement Q

14 SR Latch Set-Reset (SR) Latch Stores a value Q and its complement Q SRQQ 00 QQ forbidden S R Q Q S R Q Q

15 Unclocked D Latch Data (D) Latch DQQ 0 1 S R D Q Q

16 Unclocked D Latch Data (D) Latch DQQ S R D Q Q Data Latch Easier to use than an SR latch No possibility of entering an undefined state When D changes, Q changes –… immediately (after a delay of 2 Ors and 2 NOTs) Need to control when the output changes

17 D Latch with Clock S R D clk Q Q Level Sensitive D Latch Clock high: set/reset (according to D) Clock low: keep state (ignore D) DQQ

18 D Latch with Clock S R D clk Q Q SRQQ 00 QQ forbidden DQQ clkDQQ 00 QQ 01 QQ

19 D Latch with Clock S R D clk Q Q DQQ DQQ 00 QQ 01 QQ D Q

20 Edge-Triggered D Flip-Flop D Flip-Flop Edge-Triggered Data is captured when clock is high Outputs change only on falling edges DQ Q DQ Q c F LL clk D F Q c Q Q D

21 Registers Register D flip-flops in parallel shared clock extra clocked inputs: write_enable, reset, … clk D0 D3 D1 D bit reg

22 Voting Machine mux reg detect enc 3 decoder (3-to-8) 32 LED dec 3 E +1 reg E E E mux

23 Goals for today Review SR Latches, D Latches, D Flip Flips, and Registers Memory Register Files Tri-state devices SRAM (Static RAM—random access memory) DRAM (Dynamic RAM)

24 Register File N read/write registers Indexed by register number Implementation: D flip flops to store bits Decoder for each write port Mux for each read port Dual-Read-Port Single-Write-Port 32 x 32 Register File QAQA QBQB DWDW RWRW RARA RBRB W

25 Register File N read/write registers Indexed by register number Implementation: D flip flops to store bits Decoder for each write port Mux for each read port Dual-Read-Port Single-Write-Port 32 x 32 Register File QAQA QBQB DWDW RWRW RARA RBRB W

26 Register File N read/write registers Indexed by register number Implementation: D flip flops to store bits Decoder for each write port Mux for each read port Dual-Read-Port Single-Write-Port 32 x 32 Register File QAQA QBQB DWDW RWRW RARA RBRB W

27 Tradeoffs Register File tradeoffs +Very fast (a few gate delays for both read and write) +Adding extra ports is straightforward – Doesn’t scale

28 Building Large Memories Need a shared bus (or shared bit line) Many FFs/outputs/etc. connected to single wire Only one output drives the bus at a time

29 Tri-State Devices D Q E E Vdd Gnd EDQ 00 z 01 z DQ D Tri-State Buffers

30 Tri-State Devices D Q E E Vdd Gnd EDQ 00 z 01 z DQ D Tri-State Buffers

31 Shared Bus S0S0 D0D0 shared line S1S1 D1D1 S2S2 D2D2 S3S3 D3D3 S 1023 D 1023

32 SRAM Static RAM (SRAM) Essentially just SR Latches + tri-states buffers

33 SRAM Chip

34 SRAM Chip row decoder A column selector, sense amp, and I/O circuits A 9-0 CS R/W Shared Data Bus

35 SRAM Cell Typical SRAM Cell BB word line bit line Each cell stores one bit, and requires 4 – 8 transistors (6 is typical) Read: pre-charge B and B to Vdd/2 pull word line high cell pulls B or B low, sense amp detects voltage difference Write: pull word line high drive B and B to flip cell

36 SRAM Modules and Arrays A 21-0 Bank 2 Bank 3 Bank 4 1M x 4 SRAM R/W msb lsb CS

37 SRAM A few transistors (~6) per cell Used for working memory (caches) But for even higher density… SRAM Summary

38 Dynamic RAM: DRAM Dynamic-RAM (DRAM) Data values require constant refresh Gnd word line bit line Capacitor

39 Single transistor vs. many gates Denser, cheaper ($30/1GB vs. $30/2MB) But more complicated, and has analog sensing Also needs refresh Read and write back… …every few milliseconds Organized in 2D grid, so can do rows at a time Chip can do refresh internally Hence… slower and energy inefficient DRAM vs. SRAM

40 Memory Register File tradeoffs +Very fast (a few gate delays for both read and write) +Adding extra ports is straightforward – Expensive, doesn’t scale – Volatile Volatile Memory alternatives: SRAM, DRAM, … – Slower +Cheaper, and scales well – Volatile Non-Volatile Memory (NV-RAM): Flash, EEPROM, … +Scales well – Limited lifetime; degrades after to 1M writes

41 Summary We now have enough building blocks to build machines that can perform non-trivial computational tasks Register File: Tens of words of working memory SRAM: Millions of words of working memory DRAM: Billions of words of working memory NVRAM: long term storage (usb fob, solid state disks, BIOS, …)