RAM (1A) Young Won Lim 11/12/13

Similar documents
Memory Arrays (4H) Gate Level Design. Young Won Lim 3/15/16

Memory (1A) Young Won Lim 9/7/17

Tiny CPU Data Path (2B) Young Won Lim 5/2/16

Pointers (1A) Young Won Lim 11/1/17

Functions (4A) Young Won Lim 5/8/17

Applications of Pointers (1A) Young Won Lim 12/26/17

Pointers (1A) Young Won Lim 1/5/18

Pointers (1A) Young Won Lim 1/9/18

Functions (4A) Young Won Lim 3/16/18

HW / SW Implementation Overview (0A) Young Won Lim 7/16/16

Accessibility (1A) Young Won Lim 8/22/13

Algorithms Bubble Sort (1B) Young Won Lim 4/5/18

FPGA Configuration (1C) Young Won Lim 12/1/13

Binary Search Tree (3A) Young Won Lim 6/2/18

FPGA RAM (C1) Young Won Lim 5/13/16

Binary Search Tree (2A) Young Won Lim 5/17/18

Cache Memory. Young Won Lim 5/31/16

Content Addressable Memory (1A) Young Won Lim 6/1/16

Control & Status Registers. Young Won Lim 4/22/16

Structure (1A) Component

Eulerian Cycle (2A) Young Won Lim 4/26/18

Binary Search Tree (3A) Young Won Lim 6/4/18

Binary Search Tree (3A) Young Won Lim 6/6/18

Pointers (1A) Young Won Lim 1/14/18

Latch Based Design (1A) Young Won Lim 2/18/15

Class (1A) Young Won Lim 9/8/14

Algorithms (7A) Young Won Lim 4/10/17

Algorithms (7A) Young Won Lim 4/18/17

Overview (1A) Young Won Lim 9/9/17

A Sudoku Solver (1A) Richard Bird Implementation. Young Won Lim 11/15/16

Pointers (1A) Young Won Lim 3/5/18

Operators (2A) Young Won Lim 10/2/13

The Complexity of Algorithms (3A) Young Won Lim 4/3/18

Pointers (1A) Young Won Lim 1/22/18

Memory Basics. Course Outline. Introduction to Digital Logic. Copyright 2000 N. AYDIN. All rights reserved. 1. Introduction to Digital Logic.

Pointers (1A) Young Won Lim 10/18/17

Algorithms Overview (1A) Young Won Lim 3/29/18

Applications of Pointers (1A) Young Won Lim 4/24/18

Adders (A) Young Won Lim 10/7/13

Polymorphism Overview (1A) Young Won Lim 2/20/18

Overview (1A) Young Won Lim 9/14/17

Function Overview (1A) Young Won Lim 10/23/17

Monoid (4A) Young Won Lim 8/12/17

Pointers (1A) Young Won Lim 10/23/17

Overview (1A) Young Won Lim 9/25/17

ARM Architecture (1A) Young Won Lim 3/20/18

Applications of Arrays (1A) Young Won Lim 2/11/17

A Sudoku Solver Pruning (3A)

CUDA Parallel Prefix Sum (1A) Young W. Lim 4/5/14

Pointers (1A) Young Won Lim 2/6/18

Minimum Spanning Tree (5A) Young Won Lim 5/11/18

Complex Integration (2A) Young Won Lim 1/29/13

Example 2. Young Won Lim 11/24/17

Pointers (1A) Young Won Lim 2/10/18

Graph (1A) Young Won Lim 4/19/18

Day06 A. Young W. Lim Mon. Young W. Lim Day06 A Mon 1 / 16

Pthread (9A) Pthread

Operators (2A) Young Won Lim 10/5/13

Applications of Arrays (1A) Young Won Lim 3/15/17

SystemC Channels (03A) SystemC

JavaScript (5A) JavaScript

Haskell Overview IV (4A) Young Won Lim 10/13/16

Applications of Pointers (1A) Young Won Lim 4/11/18

CORDIC Fixed Point Simulation. Young Won Lim 2/28/12

Haskell Overview IV (4A) Young Won Lim 10/24/16

Example 1. Young Won Lim 11/17/17

Applications of Structures (1A) Young Won Lim 12/8/17

The HTTP Protocol HTTP

Example 1 : using 1-d arrays. Young Won Lim 12/13/17

Eulerian Cycle (2A) Young Won Lim 5/11/18

Type (1A) Young Won Lim 2/17/18

Planar Graph (7A) Young Won Lim 5/21/18

Side Effects (3A) Young Won Lim 1/13/18

Arrays (1A) Young Won Lim 12/4/17

Libraries (1A) Young Won Lim 6/5/17

Day02 A. Young W. Lim Sat. Young W. Lim Day02 A Sat 1 / 12

Applications of Structures (1A) Young Won Lim 12/4/17

Eulerian Cycle (2A) Young Won Lim 5/25/18

Example 3 : using a structure array. Young Won Lim 11/25/17

File (1A) Young Won Lim 11/25/16

Planar Graph (7A) Young Won Lim 6/20/18

OpenRISC Toolchain Installation Guide. Young Won Lim 6/17/16

Monad (1A) Young Won Lim 6/9/17

Side Effects (3B) Young Won Lim 11/20/17

Class (1A) Young Won Lim 11/20/14

Side Effects (3B) Young Won Lim 11/23/17

Haskell Overview III (3A) Young Won Lim 10/4/16

State Monad Example (3H) Young Won Lim 2/16/18

Graph Overview (1A) Young Won Lim 5/9/18

Applications of Pointers (1A) Young Won Lim 2/27/18

Side Effects (3B) Young Won Lim 11/27/17

Processors. Young W. Lim. May 9, 2016

Structure (1A) Young Won Lim 7/30/13

Haskell Overview II (2A) Young Won Lim 8/9/16

Applications of Pointers (1A) Young Won Lim 3/14/18

Applications of Pointers (1A) Young Won Lim 3/21/18

Applications of Pointers (1A) Young Won Lim 3/31/18

State Monad (3D) Young Won Lim 9/25/17

Monad Background (3A) Young Won Lim 11/20/17

Applications of Pointers (1A) Young Won Lim 1/5/18

Transcription:

RAM (1A) Young Won Lim 11/12/13

opyright (c) 2011-2013 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-over Texts, and no Back-over Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". Please send corrections (or suggestions) to youngwlim@hotmail.com. This document was produced by using OpenOffice and Octave. Young Won Lim 11/12/13

Block Diagram of a Unit Input n-bit word n-bit word Read Unit 2 k words n-bit per word Output n-bit word 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 2 4 words RAM (1A) 3

ontrol Lines Input n-bit word Read Unit 2 k words n-bit per word Enable 1 1 1 0 Read Output n-bit word RAM (1A) 4

Address & Data Buses n-bit Mem_En Input n-bit word Unit 2 k words n-bit per word Address Bus Data Bus 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 PU 2 4 words RD/WR WR Output n-bit word n-bit Data Bus Address Bus RAM (1A) 5

RD & WR Operations Input n-bit word PU n-bit Data Bus WR Mem_En RD/WR Unit 2 k words n-bit per word Address Bus PU RD Output n-bit word n-bit Data Bus Address Bus RAM (1A) 6

ycle Input n-bit word PU WR Mem_En RD/WR Unit 2 k words n-bit per word n-bit Data Bus Address Bus 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Output n-bit word n-bit 2 4 words lock Address Enable Data PU Initiating WR op PU Valid Address Latch Data Valid Data RAM (1A) 7

Read ycle Input n-bit word PU RD Mem_En RD/WR Unit 2 k words n-bit per word n-bit Data Bus Address Bus lock 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Output n-bit word n-bit 2 4 words Address Enable Data PU Initiating RD op Valid Address Valid Data PU RAM (1A) 8

Example 2-bit addr 4-bit word PU 00 01 10 11 0101 1100 n-bit Data Bus Address Bus WR 0111 01 lock 2-bit addr 00 01 10 11 4-bit word 0101 0111 ` 1100 Address Enable Data Initiating WR op PU 01 PU 0111 Latch Data RAM (1A) 9

Read Example 2-bit addr 4-bit word PU 00 01 10 11 0101 1100 n-bit Data Bus Address Bus RD? 10 lock Address PU 10 Enable Initiating RD op Data 1100 PU RAM (1A) 10

Selecting a Word ed 4-bit word 2-bit 4-bit word 00 01 2 4 words 10 11 RAM (1A) 11

Selecting a Word S R = 1 READ op = 0 WRITE op RAM (1A) 12

A Map 00 01 10 11 2-bit addr Bit 3 Bit 2 Bit 1 Bit 0 RAM (1A) 13 4-bit word

4x4 2-bit 4-bit word 00 01 0101 S 10 11 1100 R = 1 READ op = 0 WRITE op 2-bit 00 4-bit word 0 1 0 1 1 01 10 1 1 0 0 11 RAM (1A) 14

Diagram for a 4x4 2-bit addr 4-bit word I3 I2 I1 I0 A1 word0 B outp ut B outp outp outp ut B ut B ut A0 word1 2 x 4 decoder B outp ut B outp outp outp ut B ut B ut word2 B outp ut B outp outp outp ut B ut B ut word3 B outp ut B outp outp outp ut B ut B ut O3 O2 O1 O0 RAM (1A) 15

ycle Example for a 4x4 WR Address: 01 Data: 0111 Data: 0111 PU 2-bit 4-bit word I3 I2 I1 I0 lock Address Enable Data 4-bit Data Bus 2-bit Bus Initiating WR op PU 01 PU 0111 Latch Data 0111 01 Address: 01 A0 A1 word0 word1 2 x 4 decoder word2 word3 O3 O2 O1 O0 Data & Address Buses Output (RD) Data Bus Data: 0111 Input (WR) RAM (1A) 16

Bi-directional Data Bus PU n-bit Data Bus Address Bus RAM (1A) 17

From PU to WR PU n-bit Data Bus Address Bus RD RAM (1A) 18

From to PU RD PU n-bit Data Bus Address Bus RAM (1A) 19

2 to 4 Decoder 2 x 4 decoder : 4 AND gates 10 x 1024 decoder : 1024 AND gates 4 x 16 decoder : 16 AND gates RAM (1A) 20

oincidence Decoder 10 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 n-bit word 2 4 words 1024 5 x 32 10 x 1024 5 x 32 10 1024 404 01100 10110 n-bit word RAM (1A) 21

8x256 Decoder Register Time Sharing Address Bus 16 Input n-bit word AS Register Read Unit 2 k words n-bit per word RAS 8x256 Decoder 8 x 256 Output n-bit word PU 8-bit RD n-bit Data Bus Address Bus 8 x 256 Raw Address ol Address RAM (1A) 22

References [1] http://en.wikipedia.org/ [2] M. M. Mano,. R. Kime, Logic and omputer Design Fundamentals, 4 th ed. [3] D.M. Harris, S. L. Harris, Digital Design and omputer Architecture Young Won Lim 11/12/13