Digital Design: An Embedded Systems Approach Using VHDL
|
|
- Donald Griffin
- 5 years ago
- Views:
Transcription
1 Digital Design: An Embedded Systems Approach Using Chapter 5 Memories Portions of this work are from the book, Digital Design: An Embedded Systems Approach Using, by Peter J. Ashd, published by Morgan Kaufmann Publishers, Copyright 27 Elsevier Inc. All rights reserved. Geral Concepts A memory is an array of storage locations Each with a unique address Like a collection of registers, but with optimized implemtation Address is unsigned-binary coded n address bits 2 n locations All locations the same size 2 n m bit memory n 2 2 n m bits Digital Design Chapter 5 Memories 2
2 Memory Sizes Use power-of-2 multipliers Kilo (K): 2 =,24 3 Mega (M): 2 2 =,48,576 6 Giga (G): 2 3 =,73,74,824 9 Example 32K 32-bit memory Capacity =,25K = Mbit Requires 5 address bits Size is determined by application requiremts Digital Design Chapter 5 Memories 3 Basic Memory Operations a() a() a(n ) d_in() d_in() d_in(m ) d_out() d_out() d_out(m ) a inputs: unsigned address d_in and d_out Type depds on application Write operation =, = d_in value stored in location giv by address inputs Read operation =, = d_out driv with value of location giv by address inputs Idle: = Digital Design Chapter 5 Memories 4 2
3 Example: Audio Delay Unit System clock: MHz Audio samples: 8-bit signed, at 5kHz New sample arrives wh audio_in_ = Delay control: 8-bit unsigned ms to delay Output: audio_out_ = wh output ready 2µs audio_in s t s t+ audio_in_ audio_out s t d s t d+ audio_out_ Digital Design Chapter 5 Memories 5 Audio Delay Datapath count_ Q 4 delay addr_sel audio_in mem_ mem_ a d_in d_out 6 audio_out Max delay = 255ms Need to store = 2,75 samples Use a 6K 8-bit memory (4 address bits) Digital Design Chapter 5 Memories 6 3
4 Audio Delay Control Section Step : (idle state) audio_in_ = do nothing audio_in_ = ite memory using counter value as address Step 2: Read memory using subtracter output as address, incremt counter State audio_ in_ Next state addr_sel mem_ mem_ count_ audio_ out_ Step Step Step Step 2 Step 2 Step Digital Design Chapter 5 Memories 7 Wider Memories Memory componts have a fixed width E.g.,, 4, 8, 6,... Use memory componts in parallel to make a wider memory E.g, three 6K 6 componts for a 6K 48 memory a(3 ) d_in(5 ) d_in(3 6) d_in(47 32) a(3 ) d_in(5 ) d_out(5 ) a(3 ) d_in(5 ) d_out(5 ) a(3 ) d_in(5 ) d_out(5 ) d_out(5 ) d_out(3 6) d_out(47 32) Digital Design Chapter 5 Memories 8 4
5 More Locations To provide 2 n locations with 2 k -location componts Use 2 n /2 k componts Address A at offset A mod 2 k least-significant k bits of A in compont A/2 k most-significant n k bits of A decode to select compont 2 k 2 k 2 k k 2 2 k 2 2 k k 2 n 2 k 2 n 2 k + 2 n Digital Design Chapter 5 Memories 9 More Locations a(3 ) d_in(7 ) a(3 ) d_in(7 ) d_out(7 ) a(5 4) 2 3 a(3 ) d_in(7 ) d_out(7 ) Example: 64K 8 memory composed of 6K 8 componts a(3 ) d_in(7 ) d_out(7 ) a(3 ) 2 3 d_out(7 ) d_in(7 ) d_out(7 ) Digital Design Chapter 5 Memories 5
6 Tristate Drivers Allow multiple outputs to be connected together Only one active at a time Remaining outputs are high-impedance Both output transistors turned off Allow bidirectional input/output ports +V output +V +V +V Digital Design Chapter 5 Memories Memories with Tristate Ports During ite memory d drivers hi-z a(3 ) a(3 ) d(7 ) memory sses d During read selected memory drives d a(5 4) 2 3 a(3 ) d(7 ) Fewer pins and wires Reduced cost of PCB a(3 ) d(7 ) Usually not available within ASICs or FPGAs d(7 ) a(3 ) d(7 ) Digital Design Chapter 5 Memories 2 6
7 Memory Types Random-Access Memory (RAM) Can read and ite Static RAM (SRAM) Stores data so long as power is supplied Asynchronous SRAM: not clocked Synchronous SRAM (SSRAM): clocked Dynamic RAM (DRAM) Needs to be periodically refreshed Read-Only Memory (ROM) Combinational Programmable and Flash reitable Volatile and non-volatile Digital Design Chapter 5 Memories 3 Asynchronous SRAM Data stored in -bit latch cells Address decoded to able a giv cell Usually use active-low control inputs Not available as componts in ASICs or FPGAs A D CE WE OE A CE WE OE D t su t h read data stored data Digital Design Chapter 5 Memories 4 7
8 Asynch SRAM Timing Timing parameters published in data sheets Access time From address/able valid to data-out valid Cycle time From start to d of access Data setup and hold Before/after d of WE pulse Makes asynch SRAMs hard to use in clocked synchronous designs Digital Design Chapter 5 Memories 5 Example Data Sheet Digital Design Chapter 5 Memories 6 8
9 Synchronous SRAM (SSRAM) Clocked storage registers for inputs address, data and control inputs stored on a clock edge held for read/ite cycle Flow-through SSRAM no register on data output A a a 2 D_in xx D_out xx M(a 2 ) Digital Design Chapter 5 Memories 7 Example: Coefficit Multiplier Compute function Coefficit stored in flow-through SSRAM 2-bit unsigned integer index for i x, y, c i 2-bit signed fixed-point 8 pre- and 8 post-binary point bits Use a single multiplier Multiply c i x x y = c i 2 x Digital Design Chapter 5 Memories 8 9
10 Multiplier Datapath SSRAM i A c_in D_in D_out c_ram_ c_ram_ x D Q D Q y ce x_ce ce mult_sel y_ce Digital Design Chapter 5 Memories 9 Multiplier Timing and Control step,,, step2,,, step3,,, start c_ram_ x_ce mult_sel y_ce step step step2 step3 step Digital Design Chapter 5 Memories 2
11 Pipelined SSRAM Data output also has a register More suitable for high-speed systems Access RAM in one cycle, use the data in the next cycle A D_in a xx a 2 D_out xx M(a 2 ) Digital Design Chapter 5 Memories 2 Memories in RAM storage represted by an array signal type RAM_4Kx6 is array ( to 495) of std_logic_vector(5 downto ); signal data_ram : RAM_4Kx6;... data_ram_flow_through : process () is begin if rising_edge() th if = '' th if = '' th data_ram(to_integer(a)) <= d_in; d_out <= d_in; else d_out <= RAM(to_integer(a)); d if; d if; d if; d process data_ram_flow_through; Digital Design Chapter 5 Memories 22
12 Example: Coefficit Multiplier library ieee; use ieee.std_logic_64.all, ieee.numeric_std.all, ieee.fixed_pkg.all; tity scaled_square is port (, reset : in std_logic; start : in std_logic; i : in unsigned( downto ); c_in, x : in sfixed(7 downto -2); y : out sfixed(7 downto -2) ); d tity scaled_square; architecture rtl of scaled_square is signal c_ram_, c_ram_, x_ce, mult_sel, y_ce : std_logic; signal c_out, x_out : sfixed(7 downto -2); signal y_out : sfixed(7 downto -2); type c_array is array ( to 495) of sfixed(7 downto -2); signal c_ram : c_array; type state is (step, step2, step3); signal currt_state, next_state : state; Digital Design Chapter 5 Memories 23 Example: Coefficit Multiplier begin c_ram_ <= ''; c_ram_flow_through : process () is begin if rising_edge() th if c_ram_ = '' th if c_ram_ = '' th c_ram(to_integer(i)) <= c_in; c_out <= c_in; else c_out <= c_ram(to_integer(i)); d if; d if; d if; d process c_ram_flow_through; Digital Design Chapter 5 Memories 24 2
13 Example: Coefficit Multiplier y_reg : process () is variable operand, operand2 : sfixed(7 downto -2); begin if rising_edge() th if y_ce = '' th if mult_sel = '' th operand := c_out; operand2 := x_out; else operand := x_out; operand2 := y_out; d if; y_out <= operand * operand2; d if; d if; d process y_reg; y <= y_out; state_reg : process... next_state_logic : process... output_logic : process... d architecture rtl; Digital Design Chapter 5 Memories 25 Pipelined SSRAM in data_ram_pipelined : process () is variable pipeline_ : std_logic; variable pipeline_d_out : std_logic_vector(5 downto ); begin if rising_edge() th if pipelined_ = '' th d_out <= pipelined_d_out; d if; pipeline_ := ; output register SSRAM if = '' th if = '' th data_ram(to_integer(a)) <= d_in; pipeline_d_out := d_in; else pipeline_d_out := RAM(to_integer(a)); d if; d if; d if; d process data_ram_pipelined; Digital Design Chapter 5 Memories 26 3
14 Gerating SSRAM Componts Variations on SSRAM behavior E.g., ite-first, read-first or no-change on ite cycle Burst accesses to successive locations Not all synthesis tools recognize the same templates Use a RAM core gerator tool Digital Design Chapter 5 Memories 27 Example: RAM Core Gerator Digital Design Chapter 5 Memories 28 4
15 Multiport Memories Multiple address, data and control connections to the storage locations Allows concurrt accesses Avoids multiplexing and sequcing Scario Data producer and data consumer What if two ites to a location occur concurrtly? Result may be unpredictable Some multi-port memories include an arbiter Digital Design Chapter 5 Memories 29 FIFO Memories First-In/First-Out buffer Connecting producer and consumer Decouples rates of production/consumption Producer subsystem FIFO Consumer subsystem Implemtation using dual-port RAM Circular buffer Full: ite-addr = read-addr Empty: ite-addr = read-addr ite read Digital Design Chapter 5 Memories 3 5
16 Example: FIFO Datapath rd_ counter 8-bit ce Q A_rd reset = equal reset counter 8-bit ce Q reset A_ dual-port SSRAM A_ A_rd D_ D_rd _ rd_ D_rd D Equal = full or empty Need to distinguish betwe these states How? Digital Design Chapter 5 Memories 3 Example: FIFO Control Control FSM filling wh ite without concurrt read emptying wh without concurrt ite Unchanged wh concurrt ite and read _, rd_ emptying,, filling full = filling and equal empty = emptying and equal Digital Design Chapter 5 Memories 32 6
17 Multiple Clock Domains Need to resynchronize data that traverses clock domains Use resynchronizing registers May overrun if sder's clock is faster than receiver's clock FIFO smooths out differces in data flow rates Latch cells inside FIFO RAM itt with sder's clock, read with receiver's clock Digital Design Chapter 5 Memories 33 Dynamic RAM (DRAM) Data stored in a -transistor/-capacitor cell Smaller cell than SRAM, so more per chip But longer access time Write operation pull bit-line high or low ( or ) activate word line Read operation bit line word line precharge bit-line to intermediate voltage activate word line, and sse charge equalization reite to restore charge Digital Design Chapter 5 Memories 34 7
18 DRAM Refresh Charge on capacitor decays over time Need to sse and reite periodically Typically every cell every 64ms Refresh each location DRAMs organized into banks of rows Refresh whole row at a time Can t access while refreshing Interleave refresh among accesses Or burst refresh every 64ms Digital Design Chapter 5 Memories 35 Read-Only Memory (ROM) For constant data, or CPU programs Masked ROM Data manufactured into the ROM Programmable ROM (PROM) Use a PROM programmer Erasable PROM (EPROM) UV erasable Electrically erasable (EEPROM) Flash RAM Digital Design Chapter 5 Memories 36 8
19 Combinational ROM A ROM maps address input to data output This is a combinational function! Specify using a table Example: 7-segmt decoder BCD BCD BCD2 BCD3 blank A A A2 A3 A4 D D D2 D3 D4 D5 D6 a b c d e f g Address Contt Address Contt Digital Design Chapter 5 Memories 37 Example: ROM in library ieee; use ieee.numeric_std.all; architecture ROM_based of sev_seg_decoder is type ROM_array is array ( to 3) of std_logic_vector ( 7 downto ); constant ROM_contt : ROM_array := ( => "", => "", 2 => "", 3 => "", 4 => "", 5 => "", 6 => "", 7 => "", 8 => "", 9 => "" to 5 => "", 6 to 3 => "" ); begin seg <= ROM_contt(to_integer(unsigned(blank & bcd))); d architecture ROM_based; Digital Design Chapter 5 Memories 38 9
20 Flash RAM Non-volatile, readable (relatively fast), itable (relatively slow) Storage partitioned into blocks Erase a whole block at a time, th ite/read Once a location is itt, can't reite until erased NOR Flash Can ite and read individual locations Used for program storage, random-access data NAND Flash Dser, but can only ite and read block at a time Used for bulk data, e.g., cameras, memory sticks Digital Design Chapter 5 Memories 39 Memory Errors Bits in memory can be flipped Hard error The chip is brok E.g., manufacturing defect, wear (in Flash) Soft error Stored data corrupted, but cell still works E.g., from atmospheric neutrons Soft-error rate frequcy of occurrce Digital Design Chapter 5 Memories 4 2
21 Error Detection using Parity Add a parity bit to each location On ite access compute data parity and store with data On read access check parity, take exception on error If we could tell which bit flipped correct by flipping it back, th ite back to memory location Can t do this with parity Digital Design Chapter 5 Memories 4 Error-Correcting Codes (ECC) Allow idtification of the flipped bit Hamming Codes E.g., for single-bit-error correction of N-bit word, need log 2 N + extra bits Example: 8-bit word, d... d 8 2-bit ECC code, e...e 2 e, e 2, e 4, e 8 are check bits, the rest data d 8 d 7 d 6 d 5 d 4 d 3 d 2 d e 2 e e e 9 e 8 e 7 e 6 e 5 e 4 e 3 e 2 e Digital Design Chapter 5 Memories 42 2
22 Hamming Code Example d 8 d 7 d 6 d 5 d 4 d 3 d 2 d e = e 3 e 5 e 7 e 9 e e 2 e e e 9 e 8 e 7 e 6 e 5 e 4 e 3 e 2 e e 2 = e 3 e 6 e 7 e e e e 2 e 4 e 8 e 3 e 5 e 6 e 7 e 9 e e e 2 e 4 = e 5 e 6 e 7 e 2 e 8 = e 9 e e e 2 Every data bit covered by two or more check bits On ite: Compute check bits and store with data Digital Design Chapter 5 Memories 43 Hamming Code Example e e 2 e 4 e 8 e 3 e 5 e 6 e 7 e 9 e e e 2 On read: Recompute check bits and XOR with read check bits result called the syndrome => no error If data bit flipped covering bits of syndrome are = binary code of flipped ECC bit If stored check bit flipped that bit of syndrome is On error, unflip bit and reite memory location Digital Design Chapter 5 Memories 44 22
23 Multiple-Error Detection What if two bits flip syndrome idtifies ong bit, or is invalid One extra check bit allows single-error correction, double-error detection N Single-bit correction Check bits Overhead 4 5% 5 3% 6 9% 7 % 8 6.3% 9 3.5% Double-bit detection Check bits Overhead 5 63% 6 38% 7 22% 8 3% 9 7.% 3.9% Digital Design Chapter 5 Memories 45 Summary Memory: addressable storage locations Read and Write operations Asynchronous RAM Synchronous RAM (SSRAM) Dynamic RAM (DRAM) Read-Only Memory (ROM) and Flash Multiport RAM and FIFOs Error Detection and Correction Hamming Codes Digital Design Chapter 5 Memories 46 23
ECE 485/585 Microprocessor System Design
Microprocessor System Design Lecture 4: Memory Hierarchy Memory Taxonomy SRAM Basics Memory Organization DRAM Basics Zeshan Chishti Electrical and Computer Engineering Dept Maseeh College of Engineering
More informationOrganization. 5.1 Semiconductor Main Memory. William Stallings Computer Organization and Architecture 6th Edition
William Stallings Computer Organization and Architecture 6th Edition Chapter 5 Internal Memory 5.1 Semiconductor Main Memory 5.2 Error Correction 5.3 Advanced DRAM Organization 5.1 Semiconductor Main Memory
More informationWilliam Stallings Computer Organization and Architecture 6th Edition. Chapter 5 Internal Memory
William Stallings Computer Organization and Architecture 6th Edition Chapter 5 Internal Memory Semiconductor Memory Types Semiconductor Memory RAM Misnamed as all semiconductor memory is random access
More informationComputer Organization. 8th Edition. Chapter 5 Internal Memory
William Stallings Computer Organization and Architecture 8th Edition Chapter 5 Internal Memory Semiconductor Memory Types Memory Type Category Erasure Write Mechanism Volatility Random-access memory (RAM)
More informationToday. Comments about assignment Max 1/T (skew = 0) Max clock skew? Comments about assignment 3 ASICs and Programmable logic Others courses
Today Comments about assignment 3-43 Comments about assignment 3 ASICs and Programmable logic Others courses octor Per should show up in the end of the lecture Mealy machines can not be coded in a single
More informationMemory and Programmable Logic
Memory and Programmable Logic Memory units allow us to store and/or retrieve information Essentially look-up tables Good for storing data, not for function implementation Programmable logic device (PLD),
More informationChapter 5 Internal Memory
Chapter 5 Internal Memory Memory Type Category Erasure Write Mechanism Volatility Random-access memory (RAM) Read-write memory Electrically, byte-level Electrically Volatile Read-only memory (ROM) Read-only
More informationChapter 5. Internal Memory. Yonsei University
Chapter 5 Internal Memory Contents Main Memory Error Correction Advanced DRAM Organization 5-2 Memory Types Memory Type Category Erasure Write Mechanism Volatility Random-access memory(ram) Read-write
More informationBasic Organization Memory Cell Operation. CSCI 4717 Computer Architecture. ROM Uses. Random Access Memory. Semiconductor Memory Types
CSCI 4717/5717 Computer Architecture Topic: Internal Memory Details Reading: Stallings, Sections 5.1 & 5.3 Basic Organization Memory Cell Operation Represent two stable/semi-stable states representing
More informationWilliam Stallings Computer Organization and Architecture 8th Edition. Chapter 5 Internal Memory
William Stallings Computer Organization and Architecture 8th Edition Chapter 5 Internal Memory Semiconductor Memory The basic element of a semiconductor memory is the memory cell. Although a variety of
More information(Advanced) Computer Organization & Architechture. Prof. Dr. Hasan Hüseyin BALIK (5 th Week)
+ (Advanced) Computer Organization & Architechture Prof. Dr. Hasan Hüseyin BALIK (5 th Week) + Outline 2. The computer system 2.1 A Top-Level View of Computer Function and Interconnection 2.2 Cache Memory
More informationComputer Memory. Textbook: Chapter 1
Computer Memory Textbook: Chapter 1 ARM Cortex-M4 User Guide (Section 2.2 Memory Model) STM32F4xx Technical Reference Manual: Chapter 2 Memory and Bus Architecture Chapter 3 Flash Memory Chapter 36 Flexible
More informationInternal Memory. Computer Architecture. Outline. Memory Hierarchy. Semiconductor Memory Types. Copyright 2000 N. AYDIN. All rights reserved.
Computer Architecture Prof. Dr. Nizamettin AYDIN naydin@yildiz.edu.tr nizamettinaydin@gmail.com Internal Memory http://www.yildiz.edu.tr/~naydin 1 2 Outline Semiconductor main memory Random Access Memory
More informationMemory Expansion. Lecture Embedded Systems
Memory Expansion Lecture 22 22-1 In These Notes... Memory Types Memory Expansion Interfacing Parallel Serial Direct Memory Access controllers 22-2 Memory Characteristics and Issues Volatility - Does it
More informationCSE140: Components and Design Techniques for Digital Systems
CSE140: Componts and Design Techniques for Digital Systems Tajana Simunic Rosing 1 Outline Today: Memory ROM RAM FIFO Queue Next: Register Transfer Level Design 2 CSE140: Componts and Design Techniques
More informationEE 459/500 HDL Based Digital Design with Programmable Logic. Lecture 15 Memories
EE 459/500 HDL Based Digital Design with Programmable Logic Lecture 15 Memories 1 Overview Introduction Memories Read Only Memories Random Access Memories FIFOs 2 1 Motivation Most applications need memory!
More informationSummary of FPGA & VHDL
FYS4220/9220 Summary of FPGA & VHDL Lecture #6 Jan Kenneth Bekkeng, University of Oslo - Department of Physics 16.11.2011 Curriculum (VHDL & FPGA part) Curriculum (Syllabus) defined by: Lectures Lecture6:
More informationMemory. Outline. ECEN454 Digital Integrated Circuit Design. Memory Arrays. SRAM Architecture DRAM. Serial Access Memories ROM
ECEN454 Digital Integrated Circuit Design Memory ECEN 454 Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitry Multiple Ports DRAM Outline Serial Access Memories ROM ECEN 454 12.2 1 Memory
More informationOverview. Memory Classification Read-Only Memory (ROM) Random Access Memory (RAM) Functional Behavior of RAM. Implementing Static RAM
Memories Overview Memory Classification Read-Only Memory (ROM) Types of ROM PROM, EPROM, E 2 PROM Flash ROMs (Compact Flash, Secure Digital, Memory Stick) Random Access Memory (RAM) Types of RAM Static
More informationEmbedded Systems Design: A Unified Hardware/Software Introduction. Outline. Chapter 5 Memory. Introduction. Memory: basic concepts
Hardware/Software Introduction Chapter 5 Memory Outline Memory Write Ability and Storage Permanence Common Memory Types Composing Memory Memory Hierarchy and Cache Advanced RAM 1 2 Introduction Memory:
More informationEmbedded Systems Design: A Unified Hardware/Software Introduction. Chapter 5 Memory. Outline. Introduction
Hardware/Software Introduction Chapter 5 Memory 1 Outline Memory Write Ability and Storage Permanence Common Memory Types Composing Memory Memory Hierarchy and Cache Advanced RAM 2 Introduction Embedded
More informationECEN 449 Microprocessor System Design. Memories. Texas A&M University
ECEN 449 Microprocessor System Design Memories 1 Objectives of this Lecture Unit Learn about different types of memories SRAM/DRAM/CAM Flash 2 SRAM Static Random Access Memory 3 SRAM Static Random Access
More informationReview: Timing. EECS Components and Design Techniques for Digital Systems. Lec 13 Storage: Regs, SRAM, ROM. Outline.
Review: Timing EECS 150 - Components and Design Techniques for Digital Systems Lec 13 Storage: Regs,, ROM David Culler Electrical Engineering and Computer Sciences University of California, Berkeley http://www.eecs.berkeley.edu/~culler
More informationa) Memory management unit b) CPU c) PCI d) None of the mentioned
1. CPU fetches the instruction from memory according to the value of a) program counter b) status register c) instruction register d) program status word 2. Which one of the following is the address generated
More informationChapter 5. Register Transfer Level (RTL) Design High Level State Machine (HLSM) Memory Chapters 5
Chapter 5 Register Transfer Level (RTL) Design High Level State Machine (HLSM) Memory Chapters 5 High Level Sequential Behavior FSM can be used to capture sequential behavior using bit inputs HLSM can
More informationECEN 449 Microprocessor System Design. Memories
ECEN 449 Microprocessor System Design Memories 1 Objectives of this Lecture Unit Learn about different types of memories SRAM/DRAM/CAM /C Flash 2 1 SRAM Static Random Access Memory 3 SRAM Static Random
More informationSummer 2003 Lecture 18 07/09/03
Summer 2003 Lecture 18 07/09/03 NEW HOMEWORK Instruction Execution Times: The 8088 CPU is a synchronous machine that operates at a particular clock frequency. In the case of the original IBM PC, that clock
More informationChapter 4 Main Memory
Chapter 4 Main Memory Course Outcome (CO) - CO2 Describe the architecture and organization of computer systems Program Outcome (PO) PO1 Apply knowledge of mathematics, science and engineering fundamentals
More informationUMBC. Select. Read. Write. Output/Input-output connection. 1 (Feb. 25, 2002) Four commonly used memories: Address connection ... Dynamic RAM (DRAM)
Memory Types Two basic types: ROM: Read-only memory RAM: Read-Write memory Four commonly used memories: ROM Flash (EEPROM) Static RAM (SRAM) Dynamic RAM (DRAM) Generic pin configuration: Address connection
More informationECE 545 Lecture 8. Data Flow Description of Combinational-Circuit Building Blocks. George Mason University
ECE 545 Lecture 8 Data Flow Description of Combinational-Circuit Building Blocks George Mason University Required reading P. Chu, RTL Hardware Design using VHDL Chapter 7, Combinational Circuit Design:
More informationEECS150 - Digital Design Lecture 16 Memory 1
EECS150 - Digital Design Lecture 16 Memory 1 March 13, 2003 John Wawrzynek Spring 2003 EECS150 - Lec16-mem1 Page 1 Memory Basics Uses: Whenever a large collection of state elements is required. data &
More informationSection 6. Memory Components Chapter 5.7, 5.8 Physical Implementations Chapter 7 Programmable Processors Chapter 8
Section 6 Memory Components Chapter 5.7, 5.8 Physical Implementations Chapter 7 Programmable Processors Chapter 8 Types of memory Two major types of memory Volatile When power to the device is removed
More informationEECS150 - Digital Design Lecture 17 Memory 2
EECS150 - Digital Design Lecture 17 Memory 2 October 22, 2002 John Wawrzynek Fall 2002 EECS150 Lec17-mem2 Page 1 SDRAM Recap General Characteristics Optimized for high density and therefore low cost/bit
More informationECSE-2610 Computer Components & Operations (COCO)
ECSE-2610 Computer Components & Operations (COCO) Part 18: Random Access Memory 1 Read-Only Memories 2 Why ROM? Program storage Boot ROM for personal computers Complete application storage for embedded
More informationConcept of Memory. The memory of computer is broadly categories into two categories:
Concept of Memory We have already mentioned that digital computer works on stored programmed concept introduced by Von Neumann. We use memory to store the information, which includes both program and data.
More informationProblem Set 10 Solutions
CSE 260 Digital Computers: Organization and Logical Design Problem Set 10 Solutions Jon Turner thru 6.20 1. The diagram below shows a memory array containing 32 words of 2 bits each. Label each memory
More informationMemory Systems for Embedded Applications. Chapter 4 (Sections )
Memory Systems for Embedded Applications Chapter 4 (Sections 4.1-4.4) 1 Platform components CPUs. Interconnect buses. Memory. Input/output devices. Implementations: System-on-Chip (SoC) vs. Multi-Chip
More informationAddress connections Data connections Selection connections
Interface (cont..) We have four common types of memory: Read only memory ( ROM ) Flash memory ( EEPROM ) Static Random access memory ( SARAM ) Dynamic Random access memory ( DRAM ). Pin connections common
More informationMemory and Programmable Logic
Digital Circuit Design and Language Memory and Programmable Logic Chang, Ik Joon Kyunghee University Memory Classification based on functionality ROM : Read-Only Memory RWM : Read-Write Memory RWM NVRWM
More informationIntroduction read-only memory random access memory
Memory Interface Introduction Simple or complex, every microprocessorbased system has a memory system. Almost all systems contain two main types of memory: read-only memory (ROM) and random access memory
More informationSir Sadiq s computer notes for class IX. Chapter no 4. Storage Devices
17 Q: Define Computer memory or storage. Ans: Memory: Memory refers to the place where data is kept for later use. For example, a human being has a memory where he/she stores the things that can be recalled
More informationMemory Overview. Overview - Memory Types 2/17/16. Curtis Nelson Walla Walla University
Memory Overview Curtis Nelson Walla Walla University Overview - Memory Types n n n Magnetic tape (used primarily for long term archive) Magnetic disk n Hard disk (File, Directory, Folder) n Floppy disks
More informationInterface DAC to a PC. Control Word of MC1480 DAC (or DAC 808) 8255 Design Example. Engineering 4862 Microprocessors
Interface DAC to a PC Engineering 4862 Microprocessors Lecture 22 Cheng Li EN-4012 licheng@engr.mun.ca DAC (Digital-to-Analog Converter) Device used to convert digital pulses to analog signals Two methods
More informationLecture 7. Standard ICs FPGA (Field Programmable Gate Array) VHDL (Very-high-speed integrated circuits. Hardware Description Language)
Standard ICs FPGA (Field Programmable Gate Array) VHDL (Very-high-speed integrated circuits Hardware Description Language) 1 Standard ICs PLD: Programmable Logic Device CPLD: Complex PLD FPGA: Field Programmable
More informationCHAPTER 12 ARRAY SUBSYSTEMS [ ] MANJARI S. KULKARNI
CHAPTER 2 ARRAY SUBSYSTEMS [2.4-2.9] MANJARI S. KULKARNI OVERVIEW Array classification Non volatile memory Design and Layout Read-Only Memory (ROM) Pseudo nmos and NAND ROMs Programmable ROMS PROMS, EPROMs,
More informationRead Only Memory ROM
Read Only Memory ROM A read only memory have address inputs and data outputs With m address lines you can access the 2 m different memory addresses At each address, there is one data word with n bits Usually,
More informationCS 320 February 2, 2018 Ch 5 Memory
CS 320 February 2, 2018 Ch 5 Memory Main memory often referred to as core by the older generation because core memory was a mainstay of computers until the advent of cheap semi-conductor memory in the
More informationCOMP3221: Microprocessors and. and Embedded Systems. Overview. Lecture 23: Memory Systems (I)
COMP3221: Microprocessors and Embedded Systems Lecture 23: Memory Systems (I) Overview Memory System Hierarchy RAM, ROM, EPROM, EEPROM and FLASH http://www.cse.unsw.edu.au/~cs3221 Lecturer: Hui Wu Session
More informationRead and Write Cycles
Read and Write Cycles The read cycle is shown. Figure 41.1a. The RAS and CAS signals are activated one after the other to latch the multiplexed row and column addresses respectively applied at the multiplexed
More informationESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems
ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems Lec 26: November 9, 2018 Memory Overview Dynamic OR4! Precharge time?! Driving input " With R 0 /2 inverter! Driving inverter
More informationCREATED BY M BILAL & Arslan Ahmad Shaad Visit:
CREATED BY M BILAL & Arslan Ahmad Shaad Visit: www.techo786.wordpress.com Q1: Define microprocessor? Short Questions Chapter No 01 Fundamental Concepts Microprocessor is a program-controlled and semiconductor
More informationPROGRAMMABLE MODULES SPECIFICATION OF PROGRAMMABLE COMBINATIONAL AND SEQUENTIAL MODULES
PROGRAMMABLE MODULES SPECIFICATION OF PROGRAMMABLE COMBINATIONAL AND SEQUENTIAL MODULES. psa. rom. fpga THE WAY THE MODULES ARE PROGRAMMED NETWORKS OF PROGRAMMABLE MODULES EXAMPLES OF USES Programmable
More informationComputer Memory.
Computer Memory varady.geza@mik.pte.hu Memories - storages Speed Price Capacity (felejtő) Memory Storage (nem felejtő) Memory Control Unit Arithmetical Logical Unit (ALU) Main memory Programs Data Without
More informationComputer Organization and Assembly Language (CS-506)
Computer Organization and Assembly Language (CS-506) Muhammad Zeeshan Haider Ali Lecturer ISP. Multan ali.zeeshan04@gmail.com https://zeeshanaliatisp.wordpress.com/ Lecture 2 Memory Organization and Structure
More informationDigital System Construction
Digital System Construction FYSIKUM Lecture 4: More VHDL, memory, PRNG Arithmetic Memories Pipelines and buffers Pseudorandom numbers IP core generation in Vivado Introduction to Lab 3 Digital Systemkonstruktion
More informationEECS150 - Digital Design Lecture 16 - Memory
EECS150 - Digital Design Lecture 16 - Memory October 17, 2002 John Wawrzynek Fall 2002 EECS150 - Lec16-mem1 Page 1 Memory Basics Uses: data & program storage general purpose registers buffering table lookups
More informationMAX 10. Memory Modules
MAX 10 Memory Modules Three types of on-chip memory FF based memory embedded in the LEs Most efficient for very small memories Compiler driven Embedded SRAM block 8K bits + 1024 parity bits (9216b) MAX
More informationChapter TEN. Memory and Memory Interfacing
Chapter TEN Memory and Memory Interfacing OBJECTIVES this chapter enables the student to: Define the terms capacity, organization, and speed as used in semiconductor memories. Calculate the chip capacity
More informationLecture 11 SRAM Zhuo Feng. Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 2010
EE4800 CMOS Digital IC Design & Analysis Lecture 11 SRAM Zhuo Feng 11.1 Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitryit Multiple Ports Outline Serial Access Memories 11.2 Memory Arrays
More informationUNIT V (PROGRAMMABLE LOGIC DEVICES)
UNIT V (PROGRAMMABLE LOGIC DEVICES) Introduction There are two types of memories that are used in digital systems: Random-access memory(ram): perform both the write and read operations. Read-only memory(rom):
More informationMemory Pearson Education, Inc., Hoboken, NJ. All rights reserved.
1 Memory + 2 Location Internal (e.g. processor registers, cache, main memory) External (e.g. optical disks, magnetic disks, tapes) Capacity Number of words Number of bytes Unit of Transfer Word Block Access
More informationContents. Main Memory Memory access time Memory cycle time. Types of Memory Unit RAM ROM
Memory Organization Contents Main Memory Memory access time Memory cycle time Types of Memory Unit RAM ROM Memory System Virtual Memory Cache Memory - Associative mapping Direct mapping Set-associative
More informationUNIT - V MEMORY P.VIDYA SAGAR ( ASSOCIATE PROFESSOR) Department of Electronics and Communication Engineering, VBIT
UNIT - V MEMORY P.VIDYA SAGAR ( ASSOCIATE PROFESSOR) contents Memory: Introduction, Random-Access memory, Memory decoding, ROM, Programmable Logic Array, Programmable Array Logic, Sequential programmable
More informationFPGA Programming Technology
FPGA Programming Technology Static RAM: This Xilinx SRAM configuration cell is constructed from two cross-coupled inverters and uses a standard CMOS process. The configuration cell drives the gates of
More informationMemory Challenges. Issues & challenges in memory design: Cost Performance Power Scalability
Memory Devices 1 Memory Challenges Issues & challenges in memory design: Cost Performance Power Scalability 2 Memory - Overview Definitions: RAM random access memory DRAM dynamic RAM SRAM static RAM Volatile
More informationRTL Design (2) Memory Components (RAMs & ROMs)
RTL Design (2) Memory Components (RAMs & ROMs) Memory Components All sequential circuit have a form of memory Register, latches, etc However, the term memory is generally reserved for bits that are stored
More informationChapter 2: Fundamentals of a microprocessor based system
Chapter 2: Fundamentals of a microprocessor based system Objectives Learn about the basic structure of microprocessor systems Learn about the memory read/write timing diagrams. Learn about address decoding
More informationECE 545 Lecture 12. Datapath vs. Controller. Structure of a Typical Digital System Data Inputs. Required reading. Design of Controllers
ECE 545 Lecture 12 Design of Controllers Finite State Machines and Algorithmic State Machine (ASM) Charts Required reading P. Chu, using VHDL Chapter 1, Finite State Machine: Principle & Practice Chapter
More informationMEMORY AND PROGRAMMABLE LOGIC
MEMORY AND PROGRAMMABLE LOGIC Memory is a device where we can store and retrieve information It can execute a read and a write Programmable Logic is a device where we can store and retrieve information
More informationMemory and Programmable Logic
Memory and Programmable Logic Mano & Ciletti Chapter 7 By Suleyman TOSUN Ankara University Outline RAM Memory decoding Error detection and correction ROM Programmable Logic Array (PLA) Programmable Array
More informationRandom Access Memory (RAM)
Random Access Memory (RAM) EED2003 Digital Design Dr. Ahmet ÖZKURT Dr. Hakkı YALAZAN 1 Overview Memory is a collection of storage cells with associated input and output circuitry Possible to read and write
More informationMicrocontroller Systems. ELET 3232 Topic 11: General Memory Interfacing
Microcontroller Systems ELET 3232 Topic 11: General Memory Interfacing 1 Objectives To become familiar with the concepts of memory expansion and the data and address bus To design embedded systems circuits
More information8051 INTERFACING TO EXTERNAL MEMORY
8051 INTERFACING TO EXTERNAL MEMORY Memory Capacity The number of bits that a semiconductor memory chip can store Called chip capacity It can be in units of Kbits (kilobits), Mbits (megabits), and so on
More informationSRAM. Introduction. Digital IC
SRAM Introduction Outline Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitry Multiple Ports Serial Access Memories Memory Arrays Memory Arrays Random Access Memory Serial Access Memory
More informationTopic 21: Memory Technology
Topic 21: Memory Technology COS / ELE 375 Computer Architecture and Organization Princeton University Fall 2015 Prof. David August 1 Old Stuff Revisited Mercury Delay Line Memory Maurice Wilkes, in 1947,
More informationTopic 21: Memory Technology
Topic 21: Memory Technology COS / ELE 375 Computer Architecture and Organization Princeton University Fall 2015 Prof. David August 1 Old Stuff Revisited Mercury Delay Line Memory Maurice Wilkes, in 1947,
More informationLecture 12 VHDL Synthesis
CPE 487: Digital System Design Spring 2018 Lecture 12 VHDL Synthesis Bryan Ackland Department of Electrical and Computer Engineering Stevens Institute of Technology Hoboken, NJ 07030 1 What is Synthesis?
More informationk -bit address bus n-bit data bus Control lines ( R W, MFC, etc.)
THE MEMORY SYSTEM SOME BASIC CONCEPTS Maximum size of the Main Memory byte-addressable CPU-Main Memory Connection, Processor MAR MDR k -bit address bus n-bit data bus Memory Up to 2 k addressable locations
More informationLecture 13: SRAM. Slides courtesy of Deming Chen. Slides based on the initial set from David Harris. 4th Ed.
Lecture 13: SRAM Slides courtesy of Deming Chen Slides based on the initial set from David Harris CMOS VLSI Design Outline Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitry Multiple Ports
More informationThe Memory Hierarchy Part I
Chapter 6 The Memory Hierarchy Part I The slides of Part I are taken in large part from V. Heuring & H. Jordan, Computer Systems esign and Architecture 1997. 1 Outline: Memory components: RAM memory cells
More informationChapter 2: Memory Hierarchy Design (Part 3) Introduction Caches Main Memory (Section 2.2) Virtual Memory (Section 2.4, Appendix B.4, B.
Chapter 2: Memory Hierarchy Design (Part 3) Introduction Caches Main Memory (Section 2.2) Virtual Memory (Section 2.4, Appendix B.4, B.5) Memory Technologies Dynamic Random Access Memory (DRAM) Optimized
More informationP-2 Digital Design & Applications
P-2 Digital Design & Applications Semiconductor Memory (Unit-V) By: A K Verma SOS in Electronics & Photonics Pt. Ravishankar Shukla University, Raipur (C.G.) 1 What is Memory? In computing, memory refers
More informationTiming in synchronous systems
BO 1 esign of sequential logic Outline Timing in synchronous networks Synchronous processes in VHL VHL-code that introduces latches andf flip-flops Initialization of registers Mealy- and Moore machines
More informationIntroduction to CMOS VLSI Design Lecture 13: SRAM
Introduction to CMOS VLSI Design Lecture 13: SRAM David Harris Harvey Mudd College Spring 2004 1 Outline Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitry Multiple Ports Serial Access
More informationDesign and Implementation of an AHB SRAM Memory Controller
Design and Implementation of an AHB SRAM Memory Controller 1 Module Overview Learn the basics of Computer Memory; Design and implement an AHB SRAM memory controller, which replaces the previous on-chip
More informationELCT 501: Digital System Design
ELCT 501: Digital System Lecture 4: CAD tools (Continued) Dr. Mohamed Abd El Ghany, Basic VHDL Concept Via an Example Problem: write VHDL code for 1-bit adder 4-bit adder 2 1-bit adder Inputs: A (1 bit)
More informationECE 2300 Digital Logic & Computer Organization
ECE 2300 Digital Logic & Computer Organization Spring 201 Memories Lecture 14: 1 Announcements HW6 will be posted tonight Lab 4b next week: Debug your design before the in-lab exercise Lecture 14: 2 Review:
More informationCS429: Computer Organization and Architecture
CS429: Computer Organization and Architecture Dr. Bill Young Department of Computer Sciences University of Texas at Austin Last updated: January 2, 2018 at 11:23 CS429 Slideset 5: 1 Topics of this Slideset
More informationfalling edge Intro Computer Organization
Clocks 1 A clock is a free-running signal with a cycle time. A clock may be either high or low, and alternates between the two states. The length of time the clock is high before changing states is its
More informationModule 5a: Introduction To Memory System (MAIN MEMORY)
Module 5a: Introduction To Memory System (MAIN MEMORY) R E F E R E N C E S : S T A L L I N G S, C O M P U T E R O R G A N I Z A T I O N A N D A R C H I T E C T U R E M O R R I S M A N O, C O M P U T E
More informationDigital Integrated Circuits Lecture 13: SRAM
Digital Integrated Circuits Lecture 13: SRAM Chih-Wei Liu VLSI Signal Processing LAB National Chiao Tung University cwliu@twins.ee.nctu.edu.tw DIC-Lec13 cwliu@twins.ee.nctu.edu.tw 1 Outline Memory Arrays
More informationLecture 13: Memory and Programmable Logic
Lecture 13: Memory and Programmable Logic Syed M. Mahmud, Ph.D ECE Department Wayne State University Aby K George, ECE Department, Wayne State University Contents Introduction Random Access Memory Memory
More information10/24/2016. Let s Name Some Groups of Bits. ECE 120: Introduction to Computing. We Just Need a Few More. You Want to Use What as Names?!
University of Illinois at Urbana-Champaign Dept. of Electrical and Computer Engineering ECE 120: Introduction to Computing Memory Let s Name Some Groups of Bits I need your help. The computer we re going
More informationMemory & Simple I/O Interfacing
Chapter 10 Memory & Simple I/O Interfacing Expected Outcomes Explain the importance of tri-state devices in microprocessor system Distinguish basic type of semiconductor memory and their applications Relate
More informationENGG3380: Computer Organization and Design Lab4: Buses and Peripheral Devices
ENGG3380: Computer Organization and Design Lab4: Buses and Peripheral Devices School of Engineering, University of Guelph Winter 2017 1 Objectives: The purpose of this lab is : Learn basic bus design techniques.
More informationELCT 912: Advanced Embedded Systems
Advanced Embedded Systems Lecture 2: Memory and Programmable Logic Dr. Mohamed Abd El Ghany, Memory Random Access Memory (RAM) Can be read and written Static Random Access Memory (SRAM) Data stored so
More informationCMPEN 411 VLSI Digital Circuits Spring Lecture 22: Memery, ROM
CMPEN 411 VLSI Digital Circuits Spring 2011 Lecture 22: Memery, ROM [Adapted from Rabaey s Digital Integrated Circuits, Second Edition, 2003 J. Rabaey, A. Chandrakasan, B. Nikolic] Sp11 CMPEN 411 L22 S.1
More informationAdvanced Parallel Architecture Lesson 4 bis. Annalisa Massini /2015
Advanced Parallel Architecture Lesson 4 bis Annalisa Massini - 2014/2015 Internal Memory RAM Many memory types are random access individual words of memory are directly accessed through wired-in addressing
More informationDigital Design, Kyung Hee Univ. Chapter 7. Memory and Programmable Logic
Chapter 7. Memory and Programmable Logic 1 7.1 Introduction Memory unit: A device to which binary information is transferred for storage and from which information is retrieved when needed for processing
More informationOutline of Presentation Field Programmable Gate Arrays (FPGAs(
FPGA Architectures and Operation for Tolerating SEUs Chuck Stroud Electrical and Computer Engineering Auburn University Outline of Presentation Field Programmable Gate Arrays (FPGAs( FPGAs) How Programmable
More information