Memories I Montek Singh Oct 7 2015 Topics Overview of Memory Types ReadOnly Memory ROM PROMs FLASH etc Random Access Memory RAM Static today Dynamic next 2 Types of Memory ID: 276114
Download Presentation The PPT/PDF document "1 COMP541" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
1
COMP541Memories - I
Montek Singh
Oct 7, 2015Slide2
TopicsOverview of Memory TypesRead-Only Memory (ROM): PROMs, FLASH, etc.Random-Access Memory (RAM)Static todayDynamic next
2Slide3
Types of MemoryMany dimensionsRead Only vs. Read/Write (or write seldom)Volatile vs. Non-VolatileRequires refresh or notLook at ROM first to examine interface
3Slide4
Non-Volatile Memory TechnologiesMask (old) ROMread-only memoryFuses (old) PROMprogrammable read-only memoryErasable EPROMerasable programmable read-only memoryElectrically erasable EEPROM
electrically-erasable programmable read-only memorytoday called FLASH!used everywhere!
4Slide5
Details of ROMMemory that is permanentk address lines2k itemsn bits
5Slide6
Notional View of InternalsMain components:decoder for address decoding select one row“wired-OR” per bit OR’s together mintermsORing done by connecting outputs of effectively tristate buffers
6Slide7
Programmed Truth Table
7Slide8
ROM after programmingRemember:OR is a “wired OR”output is 1 if any of the rows with an intact fuse is 10 otherwise
8Slide9
Mask ROMsOldest technologyOriginally “mask” used as last step in manufacturingSpecify metal layer (connections)Used for volume applicationsLong turnaroundUsed for applications such as embedded systems and, in the old days, boot ROMbut cheap to mass produce!
9Slide10
Programmable ROM (PROM)Early ones had fusible linksHigh voltage would blow out linksFast to programSingle use
10Slide11
UV EPROMErasable PROMCommon technologies used UV light to erase complete deviceTook about 10 minutesHolds state as charge in very well insulated areas of the chipNonvolatile for several (10?) years
11Slide12
EEPROMElectrically Erasable PROMSimilar technology to UV EPROMErased in blocks by higher voltageProgramming is slower than readingToday’s flavor is called “flash memory”Digital cameras, MP3 players, BIOSLimited lifeSome support individual word write, some blockOur boards have it:A flash memory chip on our Nexys boardsHas a “boot block” that is carefully protectedWe will learn to use it in upcoming labs
12Slide13
How Flash WorksSpecial transistor with floating gateThis is part of device surrounded by insulationSo charge placed there can stay for yearsAside: some newer devices store multiple bits of info in a cellInterested in this?Let’s cover briefly
13Slide14
FlashAdd an extra gate to an nMOS transistora “float gate” below the actual control gatefloat gate is isolated from everything elsecan hold electrons for a whilecharge on float gate determines bit value storedelectrons deposited negative charge does not allowtransistor to turn onif no electrons on float gate transistor can be turned on by the control gate14
https://en.wikipedia.org/wiki/Flash_memorySlide15
FlashAdd an extra gate to an nMOS transistorcharge on float gate determines bit value storedfloat gate can be cleared using high voltageerased ‘1’ valuecannot erase individual bits: must clear an entire “block” or “page”can write individual bitsfor fast write speeds:must have empty blocks availablespeeds slows down as memory fillsthus, garbage collection is important overprovisioning used in SSDs15
https://en.wikipedia.org/wiki/Flash_memorySlide16
Read/Write MemoriesFlash is obviously writeableBut not meant to be written rapidly (say at CPU rates)And often writing needs erasure of entire blocksFor frequent writing, use RAM
16Slide17
Random Access MemoriesSo called because it takes same amount of time to address any particular locationNot entirely true for modern DRAMs, but somewhat true…First look at asynchronous static RAMreading and writing typically controlled by “handshakes”clock may still be present, but actions controlled by handshake signals
17Slide18
Simple View of RAMTypical parameters:some word size nsome capacity 2kk bits of address lineNeed a line to specify reading or writingtypically only one wire neededsometimes two separate ones
18Slide19
Example: 1K x 16 memoryRAM comes in variety of sizesfrom 1-bit widemain issue is no. of pins available on chipMemory size often specified in bytesThis would be 2KB memory10 address lines (=1K locations)16 data lines (=2 bytes/location)
19Slide20
WritingSequence of stepsSet up address linesSet up data linesActivate write line (e.g., maybe a positive edge)
20Slide21
ReadingStepsSetup address linesActivate read lineData available soonfor asynchronous memory: after simply a specified amount of timefor synchronous memory: after a clock edge
21Slide22
Chip SelectEnable:Usually a line to enable the chipWhy?
22Slide23
Timing: Writing
23Slide24
Timing: Reading
24Slide25
Static vs. Dynamic RAMDifferent internal implementations: SRAM vs. DRAMDRAM:DRAM stores charge in capacitorDisappears after short period of timeMust be refreshedSmall sizeHigher storage density larger capacitiesSRAM:SRAM easier to useUses transistors (think of it as latch)FasterMore expensive per bit
Smaller sizes
25Slide26
Structure of SRAMInternally, each bit stored in a “latch”One memory cell per bitCell consists of a few transistorsNot really a latch made of NANDs/NORs, but logically equivalentBehaves like an SR latchControl logicalso need extra logic around the latch to make it work like a memory cell
26Slide27
Structure of SRAMSeveral optimized circuits often usedreplace a full-fledged SR latch with something simpler, smaller, faster…Not really a latch made of NANDs/NORs, but logically equivalentBehaves like an SR latche.g., a simpler 6-transistor memory cellwordline Select(bitline, bitline’) (B, B’) as well as (C, C’)
27Slide28
Example: A Simple OrganizationNote:In reality, more complexOnly one word-line is “on” at a time
28Slide29
Zoom in: A single bit sliceOperation:Cells connected to form 1 bit position (column)Word Select enables one latch from address linesonly this cell is writableonly this cell is readB (and B’) set by:Read/Write’Data InBit Select
29Slide30
Let’s look at a single bit cell
Example:
0
1
Z
Z
30Slide31
31
Bit Slices and ModulesEntire column of cells
called a bit slice
basically a 1-bit wide memory!
Module
module refers to a single chip of memory
1-bit wide memory chips are quite common!Slide32
Inside an SRAM Bit CellActual implementation does not use a real SR latch!a tinier approximation is usedlogically behaves very much like an SR latchbut much smaller and faster!
32Slide33
33
16 X 1 RAM “Chip”
Now shows
address decoder
selects appropriate locationSlide34
Row/Column LayoutFor larger RAMs:decoder becomes pretty bigalso run into chip layout issuesTypically:larger memories use “2D” matrix layoutsee next slide
34Slide35
35
16 X 1 RAM as 4 X 4 Array
Two decoders
Row
Column
Address just broken up
Not visible from outside on SRAMsSlide36
36
Not the same as 8
X 2
RAM!
Minor change in
logic and pins
Spot the difference!Slide37
Spot the difference!
37Slide38
Realistic SizesExample: 256Kb memory organized 32K X 8Single-column layout would need 15-bit decoder with 32K outputs!Better organization:A 2D (i.e., square) layout with:9-bit row and 6-bit column decoders
38Slide39
SRAM PerformanceLatency and Throughput importantCurrent ones have cycle times in low nanosecondssay 1-2ns (top-end ones even lower)Used as cache (typically on-chip or off-chip secondary cache)Sizes up to 8Mbit or so for fast chipsExpensive ones can go a bit biggerEnergy/powerSRAMs also better for low
power vs. DRAMs
39Slide40
Wider MemoryWhat if you don’t have enough bit width?use multiple chips and side-by-side40Slide41
Larger/Wider MemoriesMade up from sets of chipsConsider a 64K by 8 RAMour building block
41Slide42
LargerLet’s build a larger memory256K X 8Decoder for high-order 2 bitsSelects chipLook at selection logicAddress rangesTri-state outputs42Slide43
SummaryToday we looked at:Quick look at non-volatile memoryStatic RAMNext topic:Dynamic RAMComplex, largest, cheapMuch more design effort to useTalk about memories for lab43