Modified from notes by Saeid Nooshabadi

Slides:



Advertisements
Similar presentations
Main MemoryCS510 Computer ArchitecturesLecture Lecture 15 Main Memory.
Advertisements

Parul Polytechnic Institute
Chapter 5 Internal Memory
Prith Banerjee ECE C03 Advanced Digital Design Spring 1998
5-1 Memory System. Logical Memory Map. Each location size is one byte (Byte Addressable) Logical Memory Map. Each location size is one byte (Byte Addressable)
CS-334: Computer Architecture
The ARM7TDMI Hardware Architecture
Modified from notes by Saeid Nooshabadi COMP3221: Microprocessors and Embedded Systems Lecture 25: Cache - I Lecturer:
ENGIN112 L30: Random Access Memory November 14, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 30 Random Access Memory (RAM)
COMP3221 lec31-mem-bus-I.1 Saeid Nooshabadi COMP 3221 Microprocessors and Embedded Systems Lectures 31: Memory and Bus Organisation - I
COMP3221 lec33-Cache-I.1 Saeid Nooshabadi COMP 3221 Microprocessors and Embedded Systems Lectures 12: Cache Memory - I
University College Cork IRELAND Hardware Concepts An understanding of computer hardware is a vital prerequisite for the study of operating systems.
CS 151 Digital Systems Design Lecture 30 Random Access Memory (RAM)
COMP3221 lec28-exception-II.1 Saeid Nooshabadi COMP 3221 Microprocessors and Embedded Systems Lectures 28: Exceptions & Interrupts - II
COMP3221 lec31-mem-bus-II.1 Saeid Nooshabadi COMP 3221 Microprocessors and Embedded Systems Lectures 32: Memory and Bus Organisation - II
Prardiva Mangilipally
Microcomputer & Interfacing Lecture 2
ARM Processor Architecture
Chapter 10: Input / Output Devices Dr Mohamed Menacer Taibah University
Basic Microcomputer Design. Inside the CPU Registers – storage locations Control Unit (CU) – coordinates the sequencing of steps involved in executing.
Computer Processing of Data
Introduction to Computing: Lecture 4
Survey of Existing Memory Devices Renee Gayle M. Chua.
8086/8088 Hardware Specifications Power supply:  +5V with tolerance of ±10%;  360mA. Input characteristics:  Logic 0 – 0.8V maximum, ±10μA maximum;
NS7520.
SOC Consortium Course Material Memory Controller National Taiwan University Adopted from National Taiwan University SoC Design Laboratory.
Computer Architecture Lecture 6 by Engineer A. Lecturer Aymen Hasan AlAwady 1/12/2013 University of Kufa - Informatics Center for Research and Rehabilitation.
07/11/2005 Register File Design and Memory Design Presentation E CSE : Introduction to Computer Architecture Slides by Gojko Babić.
CSE431 L18 Memory Hierarchy.1Irwin, PSU, 2005 CSE 431 Computer Architecture Fall 2005 Lecture 18: Memory Hierarchy Review Mary Jane Irwin (
COMP541 Memories II: DRAMs
COURSE OUTCOMES OF Microprocessor and programming
UNIT – Microcontroller.
RAM, CPUs, & BUSES Egle Cebelyte.
Operating Systems (CS 340 D)
The 8085 Microprocessor Architecture
COMP541 Memories II: DRAMs
Memory Units Memories store data in units from one to eight bits. The most common unit is the byte, which by definition is 8 bits. Computer memories are.
Dr. Michael Nasief Lecture 2
8086/8088 Hardware Specifications
8085 Microprocessor Architecture
Basic Computer Organization
An Introduction to Microprocessor Architecture using intel 8085 as a classic processor
Chapter 11 Sequential Circuits.
Hakim Weatherspoon CS 3410 Computer Science Cornell University
Interfacing Memory Interfacing.
Subject Name: Embedded system Design Subject Code: 10EC74
AT91 Memory Interface This training module describes the External Bus Interface (EBI), which generatesthe signals that control the access to the external.
Introduction to Computing
Morgan Kaufmann Publishers Computer Organization and Assembly Language
May 2006 Saeid Nooshabadi ELEC2041 Microprocessors and Interfacing Lectures 30: Memory and Bus Organisation - I
Digital Logic & Design Dr. Waseem Ikram Lecture 40.
MICROPROCESSOR MEMORY ORGANIZATION
8085 Microprocessor Architecture
Today’s agenda Hardware architecture and runtime system
Memory Basics Chapter 8.
Computer Organization
Important 8051 Features On chip oscillator 4K bytes ROM 128 bytes RAM
Suppose that a certain program takes 200 seconds of elapsed time to execute. Out of these 200 seconds, 180 seconds is the CPU time and the rest is I/O.
Word Assembly from Narrow Chips
The 8085 Microprocessor Architecture
第四章 80386的存贮器和输入/输出接口 作业:P335 5,7,13,17,21,25,36,37,41,44,45,46,48,52,65 21:46.
Overview of Computer Architecture and Organization
Chapter 4 Introduction to Computer Organization
Memory Basics Chapter 7.
Some of the slides are adopted from David Patterson (UCB)
8085 Microprocessor Architecture
Main Memory Background
Bob Reese Micro II ECE, MSU
Computer Operation 6/22/2019.
Presentation transcript:

Modified from notes by Saeid Nooshabadi saeid@unsw.edu.au COMP 3221 Microprocessors and Embedded Systems Lecture 11: Memory and Bus Organisation - I http://www.cse.unsw.edu.au/~cs3221 Modified from notes by Saeid Nooshabadi saeid@unsw.edu.au

Overview Memory Interfacing Memory Type Memory Decoding D-RAM Access Making DRAM Access fast

Review: Buses in a PC: Connect a few devices CPU Memory bus Memory PCI Interface PCI: Internal (Backplane) I/O bus SCSI: External I/O bus (1 to 15 disks) SCSI Interface Ethernet Interface Ethernet Local Area Network Data rates Memory: 133 MHz, 8 bytes  1064 MB/s (peak) PCI: 33 MHz, 8 bytes wide  264 MB/s (peak) SCSI: “Ultra3” (80 MHz), “Wide” (2 bytes)  160 MB/s (peak) Ethernet: 12.5 MB/s (peak)

Review: Computers with Memory Mapped I/O I/O devices Accessed like memory

Big Picture: A System on a Chip Integration of Core Processor and many sub- system micro- cells ARM7TDMI core Cache RAM Embedded Co-Processors External Mem Interface Low bandwidth I/O devices Timers I/O ports

ARM System Architecture Need a Mechanism to access various memory units and I/O Devices without access conflicts

ARM System Architecture with Multiple Masters Need a Mechanism to allow various Processing units to access the Memory Bus without causing conflict

ARM Core Interface Signals Clock control Memory Interface

ARM Core Memory Interface Signals 32 bit address A[31:0] 32 Bi-directional Data D[31:0] Separate Data in and out Din[31:0] & Dout[31:0] Bidirectional Data bus D[31:0] mreq and seq for requesting memory access r/w for read/ write indication mas[1:0] for data size identification: word 10, half- word 01 and byte 00. All activities controlled by mclk. Internal clock is mclk AND wait

Simple Memory Interface 4 SRAMs write enabled separately Read enabled together 4 ROMs No write enable SRAM Size: 2n x 32 ROM Size: 2m x 32

Simple Memory Decoder Control Controls the activation of RAM and ROM a[31]: 0  ROM a[31]: 1  RAM It controls the byte write enables during write mas[1:0]: 00 Byte, 01 H-word, 10 Word It ensures that data is ready before processor continues.

SRAM/ROM Memory Timing Address should be stable during the falling edge SRAM is fast, ROM is slow ROM needs more time. Slows the system Solutions? Slow down the MCLK clock; loose performance Use Wait states; more complex control mclk A[31:0] RAMOe B A C

ROM Wait Control State Transition ROM access requires 4 clock cycles RAM access is fast (1 cycle) ROM RAM reset fa st ROM2 ROM3 ROM1

Timing Diagram for ROM Wait States mclk A[31:0] wait ROM0e fa st ROM1 ROM2 ROM3

Improving Performance Processor internal operations cycles do not need access to memory Mem access is much slower than internal operations. Use wait states for mem accesses mreq = 1 internal operation mreg = 0 memory access Internal Operations can run at max speed ROM reset RAM mreq ROM2 ROM3 ROM1 de code

Widely used in Computer Systems DRAM Interface Dynamic RAM Features: much cheaper than SRAM more capacity than SRAM slower than SRAM Widely used in Computer Systems

Two dimensional matrix Bits are accesses by: DRAM Organisation Two dimensional matrix Bits are accesses by: Accepting row and column addresses down the same multiplexed address bus cas ras A[n:0] Data out array of memory cells mux decoder latch First, row address is presented and latched by ras signal Next, column address is presented and latched by cas signal

Making DRAM Access Fast Accessing data in the same row using cas- only access is 2 – 3 times faster cas-only access does not activate the cell matrix If next accesses is within the same row, a new column address may be presented just by applying a cas-only access. Fact: Most processor addresses are sequential (75%) If we had a way of knowing that the next address is sequential with respect with the current address (current address + 4), then we could only assert cas and make DRAM access fast Difficulty? Detecting early in memory access cycle that the next address is in the same row.

ARM Solution to cas-only Access ARM address register Instruction: 75% of next addresses are current address +4. Sequential addresses flagged by seq signal The external mem device checks previous address and row boundaries to issue cas only or ras-cas seq signal address to memory (address + 4) address mux ldr r1, [r2] from ALU incrementer exception vector swi mov pc, lr from/to PC in register bank

Revised State Transition Diagram seq = 1: sequential address seq = 0: non-sequential mreq = 1 internal operation mreg = 0 memory access ROM seq reset RAM mreq ROM2 ROM3 ROM1 de code

Notice the pipelined memory access DRAM Timing Diagram Notice the pipelined memory access Address is presented 1/2 cycle earlier New Address Sequential Address

DRAM Timing Diagram after an Internal Cycle During internal operation cycles, a memory access cycle can be set up in advance. This eliminates the wait (New Cycle) state Internal or coprocessor cycle

Memory Access Timing Summary Notice the pipelined memory access Address is presented 1/2 cycle earlier

Reading Material Steve Furber: ARM System On-Chip; 2nd Ed, Addison-Wesley, 2000, ISBN: 0-201- 67519-6. Chapter 8.

Conclusion Memory interfacing can degrade performance Can improve performance by increasing the clock frequency and allocating different clock cycles for each memory access type cas-only accesses in DRAM are 2 to 3 times faster than ras – cas accesses.