Computer Systems Class Notes 2012/04/11


Wed Apr 11 11:02:35 CDT 2012

Memory:
A15 A11 A7 A3 A0
chip 0 address range: $0000 - $0FFF (0000 0000 0000 0000 ->
0000 1111 1111 1111)
chip 1 address range: $1000 - $2FFF (0001 0000 0000 0000 ->
0001 1111 1111 1111)
chip 3 address range: $2000 - $3FFF (0011 0000 0000 0000 ->
0011 1111 1111 1111)

A15-A12 Decoder Enable
A11-A08 Chip Select
A07-A00 Address within a chip

|==========| |==================|
A13------------|1A 1Y0|o----------|A11-0 D7-0 |
A12------------|1B 1Y1|o-----| | |
| 1Y2| | |CS(bar) R/W(bar)|
==== | 1Y3| | ==================
A15--| OR |----|1E | |
A14--| | | | |
==== | | |
==========


Alas, drawing in ASCII isn't very efficient...moving on...

16-bit uprocessor (16 address bits A15-0)
The data bus is 8-bits wide. (D7-0)
Generates a read/write control signal. (R/bar(W))
Design a memory system of 8 kB for the address range $A000 - $BFFF

Use 2kB RAM chips where each chip has an active high read enable (RE),
an active high write enable (WE), an active-high chip select (CS), address and
data pins.

Use an encoder with 2-enables (1 active high, 1 active low)
(1) E1
(2) bar(E2)

8 kB / 2 kB per chip = 4 chips
A15 A0
$chip 0: A000 - $A7FF (2kB) 101|0 0|000 0000 0000
| |
$chip 1: A800 - $AFFF (2kB) 101|0 1|000 0000 0000
| |
$chip 2: B000 - $B7FF (2kB) 101|1 0|000 0000 0000
| |
$chip 3: B800 - $BFFF (2kB) 101|1 1|000 0000 0000

A15 - A13 Decoder Enable
A12 - A11 Chip Select
A10 - A0 Chip Memory?

|=======|
A12------------|A 00|-- CS0 (to each respective Chip Select (CS))
A11------------|B 01|-- CS1
| 10|-- CS2
A15 && A13-----|E1 11|-- CS3
A14------------|E2 |
|=======|

R/bar(W) ------(RE)
|
---------|>o--(WE)

Chip:
|=======-===|
-|RE A10-0|--?
-|WE |
-|CS D7-0|--Data Bus
|===========|

chip E1 bar(E2) WE RE Rbar(W)
==== == ======= == == =======
ldaa $AA00 1 1 0 0 1 0
staa $B800 3 1 0 1 0 0
std $B000 2 1 0 1 0 0
ldd $9000 N/A 0 0 0 1 1

Comments

  1. Sorry that the formatting is messed up. I'm trying to figure out why it is getting screwed up.

    ReplyDelete

Post a Comment

Popular posts from this blog

Using Audacity as an Oscilloscope

Using Google Command Line Tools to post my Computer Systems Notes

Store Script Passwords Securely in Mac OS X