1 COMP541 Memories - I Montek Singh Feb 29, 2012.

Slides:



Advertisements
Similar presentations
Chapter 5 Internal Memory
Advertisements

Computer Organization and Architecture
Computer Organization and Architecture
+ CS 325: CS Hardware and Software Organization and Architecture Internal Memory.
D75P 34 – HNC Computer Architecture Week 10 Computer Memory. © C Nyssen/Aberdeen College 2003 All images © C Nyssen/Aberdeen College except where stated.
COMP541 Memories - I Montek Singh Oct {8, 15}, 2014.
What is memory? Memory is used to store information within a computer, either programs or data. Programs and data cannot be used directly from a disk or.
EECC341 - Shaaban #1 Lec # 19 Winter Read Only Memory (ROM) –Structure of diode ROM –Types of ROMs. –ROM with 2-Dimensional Decoding. –Using.
Chapter 10. Memory, CPLDs, and FPGAs
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)
Registers –Flip-flops are available in a variety of configurations. A simple one with two independent D flip-flops with clear and preset signals is illustrated.
Registers  Flip-flops are available in a variety of configurations. A simple one with two independent D flip-flops with clear and preset signals is illustrated.
Computer Organization and Architecture
Chapter 5 Internal Memory
Memory Devices Wen-Hung Liao, Ph.D..
Memory Key component of a computer system is its memory system to store programs and data. ITCS 3181 Logic and Computer Systems 2014 B. Wilkinson Slides12.ppt.
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 COMP541 Memories, Part I Montek Singh Feb 27, 2007.
MEMORY.
Physical Memory By Gregory Marshall. MEMORY HIERARCHY.
Lecture on Electronic Memories. What Is Electronic Memory? Electronic device that stores digital information Types –Volatile v. non-volatile –Static v.
Memory Hierarchy.
Faculty of Information Technology Department of Computer Science Computer Organization and Assembly Language Chapter 5 Internal Memory.
Memory and Programmable Logic
Memory and Programmable Logic Dr. Ashraf Armoush © 2010 Dr. Ashraf Armoush.
University of Tehran 1 Interface Design Memory Modules Omid Fatemi
1 COMP541 Memories - I Montek Singh Feb 25, 2010.
Memory Technology and Interfacing. Stored Program Model Memory Output Input CPU Stored-program computer model.
Chapter 5 Internal Memory. Semiconductor Memory Types.
Memory and Programmable Logic Memory device: Device to which binary information is transferred for storage, and from which information is available for.
Chapter 8 Memory Interface
Memory and Storage Dr. Rebhi S. Baraka
Internal Memory.
Digital Design: Principles and Practices
Digital Logic Design Instructor: Kasım Sinan YILDIRIM
1 COMP541 Memories - I Montek Singh Oct 7, Topics  Overview of Memory Types Read-Only Memory (ROM): PROMs, FLASH, etc. Read-Only Memory (ROM):
+ CS 325: CS Hardware and Software Organization and Architecture Memory Organization.
MEMORY INTERFACE (ROMS, RAMS). Computer Memory Overview.
Chapter 4: MEMORY Internal Memory.
Memory Cell Operation.
Computer Architecture Lecture 24 Fasih ur Rehman.
Semiconductor Memory Types
Digital Circuits Introduction Memory information storage a collection of cells store binary information RAM – Random-Access Memory read operation.
COMP541 Memories II: DRAMs
Computer Architecture Chapter (5): Internal Memory
1 COMP541 Memories - I Montek Singh Mar 21, 2016.
Memory and Programmable Logic
Chapter 5 Internal Memory
William Stallings Computer Organization and Architecture 7th Edition
COMP541 Memories - I Montek Singh Oct 10, 2016.
William Stallings Computer Organization and Architecture 7th Edition
William Stallings Computer Organization and Architecture 8th Edition
Subject Name: Embedded system Design Subject Code: 10EC74
William Stallings Computer Organization and Architecture 7th Edition
William Stallings Computer Organization and Architecture 8th Edition
MICROPROCESSOR MEMORY ORGANIZATION
Chapter 4: MEMORY.
William Stallings Computer Organization and Architecture 8th Edition
Presentation transcript:

1 COMP541 Memories - I Montek Singh Feb 29, 2012

Topics  This week’s assignments Homework #1 & Lab #6 Homework #1 & Lab #6  Everyone finished with them?  First Test Late March Late March  will announce date after Spring Break  Overview of Memory Types Read-Only Memory (ROM): PROMs, FLASH, etc. Read-Only Memory (ROM): PROMs, FLASH, etc. Random-Access Memory (RAM) Random-Access Memory (RAM)  Static today  Dynamic next 2

Types of Memory  Many dimensions Read Only vs. Read/Write (or write seldom) Read Only vs. Read/Write (or write seldom) Volatile vs. Non-Volatile Volatile vs. Non-Volatile Requires refresh or not Requires refresh or not  Look at ROM first to examine interface 3

Non-Volatile Memory Technologies  Mask (old)  ROM read-only memory read-only memory  Fuses (old)  PROM programmable read-only memory programmable read-only memory  Erasable  EPROM erasable programmable read-only memory erasable programmable read-only memory  Electrically erasable  EEPROM electrically-erasable programmable read-only memory electrically-erasable programmable read-only memory  today called FLASH!  used everywhere! 4

Details of ROM  Memory that is permanent k address lines k address lines 2 k items 2 k items n bits n bits 5

Notional View of Internals 6

Programmed Truth Table 7

Resulting Programming 8  In truth, they’re laid out in 2D (row, col)

Mask ROMs  Oldest technology  Originally “mask” used as last step in manufacturing Specify metal layer (connections) Specify metal layer (connections) Used for volume applications Used for volume applications Long turnaround Long turnaround Used for applications such as embedded systems and, in the old days, boot ROM Used for applications such as embedded systems and, in the old days, boot ROM but cheap to mass produce! but cheap to mass produce! 9

Programmable ROM (PROM)  Early ones had fusible links High voltage would blow out links High voltage would blow out links Fast to program Fast to program Single use Single use 10

UV EPROM  Erasable PROM Common technologies used UV light to erase complete device Common technologies used UV light to erase complete device Took about 10 minutes Took about 10 minutes Holds state as charge in very well insulated areas of the chip Holds state as charge in very well insulated areas of the chip Nonvolatile for several (10?) years Nonvolatile for several (10?) years 11

EEPROM  Electrically Erasable PROM Similar technology to UV EPROM Similar technology to UV EPROM Erased in blocks by higher voltage Erased in blocks by higher voltage Programming is slower than reading Programming is slower than reading  Today called “flash memory” Digital cameras, MP3 players, BIOS Digital cameras, MP3 players, BIOS Limited life Limited life Some support individual word write, some block Some support individual word write, some block  Our boards have it: A flash memory chip on our Nexys 3 boards A flash memory chip on our Nexys 3 boards Has a “boot block” that is carefully protected Has a “boot block” that is carefully protected We will learn to use it in upcoming labs We will learn to use it in upcoming labs 12

How Flash Works  Special transistor with floating gate  This is part of device surrounded by insulation So charge placed there can stay for years So charge placed there can stay for years Aside: some newer devices store multiple bits of info in a cell Aside: some newer devices store multiple bits of info in a cell  Interested in this? If so, we can cover in more detail w/ transistors 13

Read/Write Memories  Flash is obviously writeable But not meant to be written rapidly (say at CPU rates) But not meant to be written rapidly (say at CPU rates) And often writing must be by entire blocks (disk replacement) And often writing must be by entire blocks (disk replacement)  For frequent writing, use RAM 14

Random Access Memories  So called because it takes same amount of time to address any particular location Not entirely true for modern DRAMs, but somewhat true… Not entirely true for modern DRAMs, but somewhat true…  First look at asynchronous static RAM Ones on Xilinx chip is synchronous Ones on Xilinx chip is synchronous  Data available at clock edges, like registers One on board can be both One on board can be both Will cover details of board memory in the lab Will cover details of board memory in the lab 15

Simple View of RAM  Typical parameters: some word size n some word size n some capacity 2 k some capacity 2 k k bits of address line k bits of address line  Need a line to specify reading or writing typically only one wire needed typically only one wire needed  sometimes two separate ones 16

Example: 1K x 16 memory  RAM comes in variety of sizes from 1-bit wide from 1-bit wide main issue is no. of pins available on chip main issue is no. of pins available on chip  Memory size often specified in bytes This would be 2KB memory This would be 2KB memory 10 address lines (=1K locations) 10 address lines (=1K locations) 16 data lines (=2 bytes/location) 16 data lines (=2 bytes/location) 17

Writing  Sequence of steps Setup address lines Setup address lines Setup data lines Setup data lines Activate write line (e.g., maybe a positive edge) Activate write line (e.g., maybe a positive edge) 18

Reading  Steps Setup address lines Setup address lines Activate read line Activate read line Data available soon Data available soon  for asynchronous memory: after simply a specified amount of time  for synchronous memory: after a clock edge 19

Chip Select  Enable: Usually a line to enable the chip Usually a line to enable the chip Why? Why? 20

Timing: Writing 21

Timing: Reading 22

Static vs. Dynamic RAM  Different internal implementations: SRAM vs. DRAM DRAM: DRAM:  DRAM stores charge in capacitor  Disappears after short period of time  Must be refreshed  Small size  Higher storage density  larger capacities SRAM: SRAM:  SRAM easier to use  Uses transistors (think of it as latch)  Faster  More expensive per bit  Smaller sizes 23

Structure of SRAM  Internally, each bit stored in a “latch” One memory cell per bit One memory cell per bit  Cell consists of one or more transistors  Not really a latch made of NANDs/NORs, but logically equivalent  Behaves like an SR latch Control logic Control logic  also need extra logic around the latch to make it work like a memory cell 24

Structure of SRAM  Several optimized circuits often used replace a full-fledged SR latch with something simpler, smaller, faster… replace a full-fledged SR latch with something simpler, smaller, faster…  Not really a latch made of NANDs/NORs, but logically equivalent  Behaves like an SR latch e.g., a simpler 6-transistor memory cell e.g., a simpler 6-transistor memory cell 25

Example: A Simple Organization  Note: In reality, more complex In reality, more complex Only one word-line is “on” at a time Only one word-line is “on” at a time 26

Zoom in: A single bit slice  Operation: Cells connected to form 1 bit position (column) Cells connected to form 1 bit position (column) Word Select enables one latch from address lines Word Select enables one latch from address lines  only this cell is writable  only this cell is read B (and B’) set by: B (and B’) set by:  Read/Write’  Data In  Bit Select 27

Let’s look at a single bit cell Example: 0 1 Z Z

29 Bit Slices and Modules  Entire column of cells called a bit slice called a bit slice  basically a 1-bit wide memory!  Module module refers to a single chip of memory module refers to a single chip of memory 1-bit wide memory chips are quite common! 1-bit wide memory chips are quite common!

Inside an SRAM Bit Cell  Actual implementation does not use a real SR latch! a tinier approximation is used a tinier approximation is used logically behaves very much like an SR latch logically behaves very much like an SR latch but much smaller and faster! but much smaller and faster!

31 16 X 1 RAM “Chip”  Now shows address decoder selects appropriate location selects appropriate location

Row/Column Layout  For larger RAMs: decoder becomes pretty big decoder becomes pretty big also run into chip layout issues also run into chip layout issues  Typically: larger memories use “2D” matrix layout larger memories use “2D” matrix layout see next slide see next slide 32

33 16 X 1 RAM as 4 X 4 Array  Two decoders Row Row Column Column  Address just broken up  Not visible from outside on SRAMs

34 Not the same as 8 X 2 RAM!  Minor change in logic and pins Spot the difference! Spot the difference!

Spot the difference! 35

Realistic Sizes  Example: 256Kb memory organized 32K X 8 Single-column layout would need 15-bit decoder with 32K outputs! Single-column layout would need 15-bit decoder with 32K outputs!  Better organization: A 2D (i.e., square) layout with: A 2D (i.e., square) layout with:  9-bit row and 6-bit column decoders 36

SRAM Performance  Latency and Throughput important Current ones have cycle times in low nanoseconds (say 2ns) Current ones have cycle times in low nanoseconds (say 2ns) Used as cache (typically on-chip or off-chip secondary cache) Used as cache (typically on-chip or off-chip secondary cache)  Sizes up to 8Mbit or so for fast chips Expensive ones can go a bit bigger Expensive ones can go a bit bigger  Energy/power SRAMs also better for low power vs. DRAMs SRAMs also better for low power vs. DRAMs 37

Wider Memory  What if you don’t have enough bit width? use multiple chips and side-by-side use multiple chips and side-by-side 38

Larger/Wider Memories  Made up from sets of chips  Consider a 64K by 8 RAM our building block our building block 39

Larger  Let’s build a larger memory 256K X 8 256K X 8 Decoder for high-order 2 bits Decoder for high-order 2 bits  Selects chip  Look at selection logic  Address ranges Tri-state outputs Tri-state outputs 40

Today  Today we looked at: Quick look at non-volatile memory Quick look at non-volatile memory Static RAM Static RAM  Next class: Dynamic RAM Dynamic RAM  Complex, largest, cheap  Much more design effort to use Talk about memories for lab Talk about memories for lab 41