Design with Microprocessors

Similar documents
Design with Microprocessors

CMPEN 411 VLSI Digital Circuits Spring Lecture 22: Memery, ROM

Microcontroller Systems. ELET 3232 Topic 11: General Memory Interfacing

Introduction read-only memory random access memory

Computer Organization. 8th Edition. Chapter 5 Internal Memory

Chapter 5 Internal Memory

UMBC D 7 -D. Even bytes 0. 8 bits FFFFFC FFFFFE. location in addition to any 8-bit location. 1 (Mar. 6, 2002) SX 16-bit Memory Interface

Internal Memory. Computer Architecture. Outline. Memory Hierarchy. Semiconductor Memory Types. Copyright 2000 N. AYDIN. All rights reserved.

William Stallings Computer Organization and Architecture 6th Edition. Chapter 5 Internal Memory

Organization. 5.1 Semiconductor Main Memory. William Stallings Computer Organization and Architecture 6th Edition

Basic Organization Memory Cell Operation. CSCI 4717 Computer Architecture. ROM Uses. Random Access Memory. Semiconductor Memory Types

Memory and Programmable Logic

ECE 485/585 Microprocessor System Design

EE414 Embedded Systems Ch 5. Memory Part 2/2

William Stallings Computer Organization and Architecture 8th Edition. Chapter 5 Internal Memory

Address connections Data connections Selection connections

Large and Fast: Exploiting Memory Hierarchy

DIGITAL SYSTEM FUNDAMENTALS (ECE421) DIGITAL ELECTRONICS FUNDAMENTAL (ECE422)

14:332:331. Week 13 Basics of Cache

ECE7995 (4) Basics of Memory Hierarchy. [Adapted from Mary Jane Irwin s slides (PSU)]

COMP3221: Microprocessors and. and Embedded Systems. Overview. Lecture 23: Memory Systems (I)

INSTITUTO SUPERIOR TÉCNICO. Architectures for Embedded Computing

! Memory Overview. ! ROM Memories. ! RAM Memory " SRAM " DRAM. ! This is done because we can build. " large, slow memories OR

The Memory Hierarchy Part I

ECE 485/585 Microprocessor System Design

Computer Memory. Textbook: Chapter 1

Memory & Simple I/O Interfacing

UMBC. Select. Read. Write. Output/Input-output connection. 1 (Feb. 25, 2002) Four commonly used memories: Address connection ... Dynamic RAM (DRAM)

Contents. Memory System Overview Cache Memory. Internal Memory. Virtual Memory. Memory Hierarchy. Registers In CPU Internal or Main memory

Chapter 4 Main Memory

Basics DRAM ORGANIZATION. Storage element (capacitor) Data In/Out Buffers. Word Line. Bit Line. Switching element HIGH-SPEED MEMORY SYSTEMS

ORG ; Week8. Memory and Memory Interfacing

Semiconductor Memory Classification. Today. ESE 570: Digital Integrated Circuits and VLSI Fundamentals. CPU Memory Hierarchy.

Concept of Memory. The memory of computer is broadly categories into two categories:

COSC 6385 Computer Architecture - Memory Hierarchies (III)

Computer System Components

Memory Interfacing & decoding. Intel CPU s

CENG3420 Lecture 08: Memory Organization

Embedded Systems Design: A Unified Hardware/Software Introduction. Outline. Chapter 5 Memory. Introduction. Memory: basic concepts

Embedded Systems Design: A Unified Hardware/Software Introduction. Chapter 5 Memory. Outline. Introduction

Chapter 5. Internal Memory. Yonsei University

Memory latency: Affects cache miss penalty. Measured by:

Power Reduction Techniques in the Memory System. Typical Memory Hierarchy

ECSE-2610 Computer Components & Operations (COCO)

CS 320 February 2, 2018 Ch 5 Memory

(Advanced) Computer Organization & Architechture. Prof. Dr. Hasan Hüseyin BALIK (5 th Week)

7/6/2011. Introduction. Chapter Objectives Upon completion of this chapter, you will be able to:

ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 7: Memory Organization Part II

Read and Write Cycles

Mainstream Computer System Components CPU Core 2 GHz GHz 4-way Superscaler (RISC or RISC-core (x86): Dynamic scheduling, Hardware speculation

Memory Pearson Education, Inc., Hoboken, NJ. All rights reserved.

CS650 Computer Architecture. Lecture 9 Memory Hierarchy - Main Memory

Memory Overview. Overview - Memory Types 2/17/16. Curtis Nelson Walla Walla University

CENG 3420 Computer Organization and Design. Lecture 08: Cache Review. Bei Yu

Integrated Circuits & Systems

eaymanelshenawy.wordpress.com

Magnetic core memory (1951) cm 2 ( bit)

Computer Organization and Assembly Language (CS-506)

CS 265. Computer Architecture. Wei Lu, Ph.D., P.Eng.

Memory latency: Affects cache miss penalty. Measured by:

Summer 2003 Lecture 18 07/09/03

Memory classification:- Topics covered:- types,organization and working

Main Memory. EECC551 - Shaaban. Memory latency: Affects cache miss penalty. Measured by:

Module 5a: Introduction To Memory System (MAIN MEMORY)

CS 261 Fall Mike Lam, Professor. Memory

Mainstream Computer System Components

EECS150 - Digital Design Lecture 16 Memory 1

COMPUTER ARCHITECTURES

CPSC 352. Chapter 7: Memory. Computer Organization. Principles of Computer Architecture by M. Murdocca and V. Heuring

UNIT V (PROGRAMMABLE LOGIC DEVICES)

CSE 431 Computer Architecture Fall Chapter 5A: Exploiting the Memory Hierarchy, Part 1

CS429: Computer Organization and Architecture

Allmost all systems contain two main types of memory :

FIGURE Three EPROMs interfaced to the 8088 microprocessor.

ELCT 912: Advanced Embedded Systems

Chapter 5B. Large and Fast: Exploiting Memory Hierarchy

CENG4480 Lecture 09: Memory 1

ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems

EECS150 - Digital Design Lecture 16 - Memory

ENGIN 112 Intro to Electrical and Computer Engineering

Memory Challenges. Issues & challenges in memory design: Cost Performance Power Scalability

CS429: Computer Organization and Architecture

Memory. Memory Technologies

Transistor: Digital Building Blocks

Menu. word size # of words byte = 8 bits

Memory. Lecture 22 CS301

8051 INTERFACING TO EXTERNAL MEMORY

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 26, SPRING 2013

Contents. Main Memory Memory access time Memory cycle time. Types of Memory Unit RAM ROM

ELE 758 * DIGITAL SYSTEMS ENGINEERING * MIDTERM TEST * Circle the memory type based on electrically re-chargeable elements

Chapter TEN. Memory and Memory Interfacing

Structure of Computer Systems

CHAPTER TWELVE - Memory Devices

Mainstream Computer System Components

MEMORY SYSTEM MEMORY TECHNOLOGY SUMMARY DESIGNING MEMORY SYSTEM. The goal in designing any memory system is to provide

Interface DAC to a PC. Control Word of MC1480 DAC (or DAC 808) 8255 Design Example. Engineering 4862 Microprocessors

Computer Memory Basic Concepts. Lecture for CPSC 5155 Edward Bosworth, Ph.D. Computer Science Department Columbus State University

Foundations of Computer Systems

Lecture 13: Memory and Programmable Logic

Chapter 8 Memory Basics

Transcription:

Design with Microprocessors Year III Computer Sci. English 1-st Semester Lecture 12: Memory interfacing

Typical Memory Hierarchy [1] On-Chip Components Control edram Datapath RegFile ITLB DTLB Instr Data Cache Cache Second Level Cache (SRAM) Main Memory (DRAM) Secondary Memory (Disk) Speed (ns):.1 s 1 s 10 s 100 s 1,000 s Size (bytes): 100 s 10K s 100K s M s 100M s G s 100G s T s Cost/capacity: highest lowest ITLB = Instruction Translation Look-aside Buffer DTLB = Dual Translation Look-aside Buffer Translation lookaside buffer (TLB) is a cache that memory management hardware uses to improve virtual address translation speed. [1] The majority of CPUs includes one or more TLBs in the memory management hardware, and it is nearly always present in any hardware that utilizes paged or segmented virtual memory. The TLB is sometimes implemented as content-addressable memory (CAM). The CAM search key is the virtual address and the search result is a physical address.

Classification of memories [1] Read Write Memories (RWM) NVRWM ROM Random Access SRAM (cache, register file) DRAM (main memory) Non-Random Access FIFO, LIFO Shift Register EPROM EEPROM FLASH Mask-prog. ROM Electricallyprog. PROM Function functionality, nature of the storage mechanism static and dynamic; volatile and nonvolatile (NV); read only (ROM) Access pattern random, serial, content addressable

Classification of memories

Generic pin configuration [2] Address pins (inputs) Data pins N+1 no. of memory locations = 2 N+1 M+1 size of memory locations Bidirectional, 3-state output (#OE) Control pins (inputs) Chip select/enable enables the device (usually by decoding the base address of the chip) Read (#OE) /write (#WE) operation

Memory architecture [2]

Memory architecture [2]

Memory architecture [2]

ROM/EPROM [2]

ROM/EPROM [2]

Bus Timing (8086) [3]

ROM/EPROM [2] Address range: FF800h - FFFFFh

ROM/EPROM 8088, min.mode, EPROM 8 x 2732 = 8 x 4kB = 32 KBytes Address mapping: 0: F8000- F8FFF; 1: F9000- F9FFF;.. 7: FF00-FFFFF EPROM access (450ns) + decoder delay (12ns) > 8088 mem access (460ns) 1 wait state (1 clock = 200ns): total access time 460+200=660 ns

ROM/EPROM 8088: 8 x 2764 = 8 x 8kB = 64 KB Memory address space: F0000 FFFFF Homework: re-design the adress decoder to map the memory blok in the lower part of the memory space!

Address decoders

Address decoders

Memory connections Parallel connection: extends the memory depth Series connection: extends the memory (word) width

Connection to a 16 bit Data Bus (8086, 80286, 80186)

RAM Static (SRAM) [1]

SRAM [2]

SRAM

16, 32. bit data bus interface No concern on read operation: memory outputs a whole word (16 bit, 32 bit ) CPU reads the desired byte (BL, BH) or word (Ex: MOV AL, mem ; MOV AH, mem; MOV AX, mem) Only writing must be handled: LWR, HWR Example:

DRAM Dynamic (DRAM) [1] Size: ½ SRAM cell higher capacity address pins are multiplexed Refresh: 1.. 4 msec special circuit inside DRAM read, write, refresh cycles SDR, DDR, Rambus

DRAM [2]

DRAM [2] #RAS & #CAS should be provided by a DRAM controller DRAM controller should multiplex (in time) the address lines (ex A0-15) to: row address (ex. A8-15) column address (ex. A0-7)

256K X 1 DRAM internal structure [2]

DRAM refresh Special refresh cycle - Occurs transparently while other memory components operate and is called transparent refresh or cycle stealing. - A RAS-only cycle strobes a row address into the DRAM, - The capacitors are recharged for the selected row by reading the bits out internally and then writing them back. Example: 256K X 1 DRAM (256 rows x 256 columns x 4 blocks) refresh must occur every 15.6ms (4ms/256). For the 8086, a read or write occurs every 800ns (4x200=4xTclk). 19 memory reads/writes per refresh (15.6ms/0.8ms = 19.5) read/write cycle takes 5% of the refresh time

DRAM Controllers [2] address multiplexing and generation of the DRAM control signals. These devices tend to get very complex. We will focus on a simpler device: Intel 82C08, which can control two banks of 256K X 16 DRAM memories for a total of 1 MB. Microprocessor adress A1 through A18 (18 bits) drive the 9 Column Address inputs (AL) and 9 RowAddress inputs (AH) of the 82C08. Either RAS0/CAS0 or RAS1/CAS1 are strobed depending on the address. WE (from the 82C08), BHE and A0 are used to determine if a write is to be performed and which byte(s) (low or high or both) is to be written.

DRAM Controllers [2]

DRAM Controllers

References [1] CSE477, VLSI Digital Circuits, Fall 2005, Lecture 23: Memory Design ROM, SRAM, DRAM, CAM, http://www.cse.psu.edu/~cg477/ [2] UMBC, System Design and Programming, Fall 2002, Lecture: Memory 1-3. [3] ELE 3230 - Microprocessors and Computer Systems, Chapter 8 Memory Address Decoding, http://course.ie.cuhk.edu.hk/~ele3230b/lecture.htm [4] Texas Instruments, TMS320C6000 EMIF: Overview of Support of High Performance Memory Technology, Application Report SPRA631 - April 2000 [5] Barry B. Brey, The Intel Microprocessors: 8086/8088, 80186,80286, 80386 and 80486. Architecture, Programming, and Interfacing, 4-th edition, Prentice Hall, 1996, pp. 312-361.