Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store...
-
Upload
ethel-wade -
Category
Documents
-
view
225 -
download
3
Transcript of Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store...
![Page 1: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/1.jpg)
Internal Memory
Chapter 4: MEMORY
![Page 2: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/2.jpg)
Introduction• Memory refers to the physical devices used to store
sequences of instructions (programs) or data (e.g. program state information) on a temporary or permanent basis for use in a computer or other digital electronic devices.
• Primary memory is used for the information in physical systems which are fast (i.e. RAM), as a distinction from secondary memory, which are physical devices for program and data storage that are slow to access but offer higher memory capacity.
• Primary memory stored on secondary memory is called ”virtual memory“ . It is a system where all physical memory is controlled by the operating system. When a program needs memory, it requests it from the operating system.
![Page 3: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/3.jpg)
Semiconductor Memory Types
Memory Type Category ErasureWrite
MechanismVolatility
RAMRead-write memory
Electrically, byte-level
Electrically Volatile
ROMRead-only memory
Not possibleMasks
Nonvolatile
PROM
Electrically
EPROM
Read-mostly memory
UV light, chip-level
EEPROMElectrically, byte-level
Flash memoryElectrically, block-level
![Page 4: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/4.jpg)
Volatile v. Non-volatile
• There are two main types of semiconductor memory: — Non-volatile
– computer memory that can retain the stored information even when not powered
– Example: flash memory (sometimes used as secondary, sometimes primary computer memory) and xROMs memory (used for firmware such as boot programs).
— Volatile– computer memory that requires power to maintain the
stored information– Example: DRAM and fast CPU cache memory (typically
SRAM, which is fast but energy-consuming and offer lower memory capacity per area unit than DRAM)
![Page 5: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/5.jpg)
Semiconductor memory
• Organized into memory cells or bistable flip-flops, each storing one binary bit (0 or 1).
• Memory cells are grouped into words of fix word length, such as 1, 2, 4, 8, 16, 32, 64 or 128 bit.
• Each word can be accessed by a binary address of N bit, making it possible to store 2 raised by N words in the memory.
• Processor registers normally are not considered as memory, since they only store one word and do not include an addressing mechanism
![Page 6: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/6.jpg)
Semiconductor Memory
• RAM —Misnamed as all semiconductor memory is
random access—Read/Write—Volatile—Temporary storage—Static or dynamic
![Page 7: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/7.jpg)
Memory Cell Operation
Has 3 functional terminals capable carrying electrical signal1. Select: memory cell for a read or write operation2. Control: indicates read or write3. Data in/sense
![Page 8: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/8.jpg)
Dynamic RAM
• Bits stored as charge in capacitors• Charges leak• Need refreshing even when powered• Simpler construction• Smaller per bit• Less expensive• Need refresh circuits• Slower• Main memory• Essentially analogue
—Level of charge determines value
![Page 9: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/9.jpg)
Dynamic RAM Structure & Operation• Address line active when
bit read or written—Transistor switch closed
(current flows)
• Write—Voltage to bit line
– High for 1 Low for 0—Then signal address line
– Transfers charge to capacitor
• Read—Address line selected
– transistor turns on—Charge from capacitor fed via bit line to sense amplifier
– Compares with reference value to determine 0 or 1—Capacitor charge must be restored
![Page 10: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/10.jpg)
Static RAM
• Bits stored as on/off switches• No charges to leak• No refreshing needed when powered• More complex construction• Larger per bit• More expensive• Does not need refresh circuits• Faster• Cache• Digital
—Uses flip-flops
![Page 11: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/11.jpg)
Stating RAM Structure & Operation
• Transistor arrangement gives stable logic state
• State 1—C1 high, C2 low—T1 T4 off, T2 T3 on
• State 0—C2 high, C1 low—T2 T3 off, T1 T4 on
• Address line transistors T5 T6 is switch
• Write – apply value to B & compliment to B
• Read – value is on line B
![Page 12: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/12.jpg)
SRAM v DRAM
• Both volatile—Power needed to preserve data
• Dynamic cell —Simpler to build, smaller—More dense—Less expensive—Needs refresh—Larger memory units
• Static—Faster—Cache
![Page 13: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/13.jpg)
Read Only Memory (ROM)
• Permanent storage—Nonvolatile
• Microprogramming (see later)• Library subroutines• Systems programs (BIOS)• Function tables
![Page 14: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/14.jpg)
Types of ROM
• Written during manufacture—Very expensive for small runs
• Programmable (once)—PROM—Needs special equipment to program
• Read “mostly”—Erasable Programmable (EPROM)
– Erased by UV
—Electrically Erasable (EEPROM)– Takes much longer to write than read
—Flash memory– Erase whole memory electrically
![Page 15: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/15.jpg)
Organisation in detail
• A 16Mbit chip can be organised as 1M of 16 bit words
• A bit per chip system has 16 lots of 1Mbit chip with bit 1 of each word in chip 1 and so on
• A 16Mbit chip can be organised as a 2048 x 2048 x 4bit array—Reduces number of address pins
– Multiplex row address and column address– 11 pins to address (211=2048)– Adding one more pin doubles range of values so x4
capacity
![Page 16: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/16.jpg)
Refreshing
• Refresh circuit included on chip• Disable chip• Count through rows• Read & Write back• Takes time• Slows down apparent performance
![Page 17: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/17.jpg)
Typical 16 Mb DRAM (4M x 4)
• All DRAMs require refresh operation.• Simple technique: refresh counter steps thru all the rows values. For each row, output line from refresh counter are supplied to the row decoder and RAS line is activated. Then data are read out and written back into the same location.
![Page 18: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/18.jpg)
Packaging• Data pin for RAM are I/O. Why?• DRAM: 11 address pins are needed for 4M because address is mux’d
![Page 19: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/19.jpg)
256kByte Module Organisation
•RAM chip contains only 1 bit per word.•For 256K 8-bit words, 18-bit address is needed. Address is presented to 8 256k X 1-bit chips, each of which provides the I/O of 1 bit.•For larger memory, an array of chip is needed
![Page 20: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/20.jpg)
1MByte Module Organisation
•1M word, 20 address lines are needed. •18 LSB are routed to all 32 modules•High order 2 bits are input to a group select logic module that sends EN signal to one of the 4 columns of modules
![Page 21: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/21.jpg)
Interleaved Memory
• Collection of DRAM chips• Grouped into memory bank• Banks independently service read or write
requests• K banks can service k requests
simultaneously
![Page 22: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/22.jpg)
Error Correction
• Semiconductor memory system is subject to errors: hard failures and soft errors
• Hard Failure—Permanent defect
• Soft Error—Random, non-destructive—No permanent damage to memory
• Detected using Hamming error correcting code
![Page 23: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/23.jpg)
Error Correcting Code Function
1. No errors are detected. The fetched data bits are sent out2. If error then correct the error. If ok then produced a corrected set
of M Bits to be sent out3. If error no correction then condition is reported
![Page 24: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/24.jpg)
Advanced DRAM Organization
• Basic DRAM same since first RAM chips• Enhanced DRAM
—Contains small SRAM as well—SRAM holds last line read (c.f. Cache!)
• Cache DRAM—Larger SRAM component—Use as cache or serial buffer
![Page 25: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/25.jpg)
Synchronous DRAM (SDRAM)
• Access is synchronized with an external clock• Address is presented to RAM• RAM finds data (CPU waits in conventional DRAM)• Since SDRAM moves data in time with system
clock, CPU knows when data will be ready• CPU does not have to wait, it can do something
else• Burst mode allows SDRAM to set up stream of
data and fire it out in block• DDR-SDRAM sends data twice per clock cycle
(leading & trailing edge)
![Page 26: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/26.jpg)
SDRAM
•Perform best when it is transferring large blocks of data serially
![Page 27: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/27.jpg)
SDRAM Read Timing
![Page 28: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/28.jpg)
RAMBUS
• Adopted by Intel for Pentium & Itanium• Main competitor to SDRAM• Vertical package – all pins on one side• Data exchange over 28 wires < cm long• Bus addresses up to 320 RDRAM chips at
1.6Gbps• Asynchronous block protocol
—480ns access time—Then 1.6 Gbps
![Page 29: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/29.jpg)
RAMBUS Diagram
![Page 30: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/30.jpg)
DDR SDRAM
• SDRAM can only send data once per clock• Double-data-rate SDRAM can send data
twice per clock cycle—Rising edge and falling edge
![Page 31: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/31.jpg)
DDR SDRAM Read Timing
![Page 32: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/32.jpg)
Simplified DRAM Read Timing
![Page 33: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/33.jpg)
Cache DRAM
• Mitsubishi• Integrates small SRAM cache (16 kb) onto
generic DRAM chip• Used as true cache
—64-bit lines—Effective for ordinary random access
• To support serial access of block of data—E.g. refresh bit-mapped screen
– CDRAM can prefetch data from DRAM into SRAM buffer
– Subsequent accesses solely to SRAM
![Page 34: Internal Memory Chapter 4: MEMORY. Introduction Memory refers to the physical devices used to store sequences of instructions (programs) or data (e.g.](https://reader036.fdocuments.us/reader036/viewer/2022062408/56649f1e5503460f94c3584f/html5/thumbnails/34.jpg)
END OF INTERNAL MEMORY