address decoding for memory and i/o
DESCRIPTION
Address Decoding for Memory and I/O. Address Decoding. Address Decoding Designs Full Address Decoding Partial Address Decoding Block Address Decoding Implementation Random, Decoders, PROM, FPGA. Address Decoding. Required for a microcomputer where memory and I/O support are essential - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/1.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 1
Address Decoding for Memory and I/O
![Page 2: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/2.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 2
Address Decoding Address Decoding Designs
Full Address Decoding Partial Address Decoding Block Address Decoding
Implementation Random, Decoders, PROM, FPGA
![Page 3: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/3.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 3
Address Decoding Required for a microcomputer where memory
and I/O support are essential Needed for embedded system when on chip
microcontroller memory is not sufficient
![Page 4: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/4.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 4
The Memory Space 2 basic approaches
Memory mapped system – main memory and I/O space are just different addresses or regions – or memory mapped I/O (MMIO) Addressing is the same pins for memory and I/O Advantage – less pin and hardware complexity
Port Mapped I/O – have unique pins (signals) that differentiate memory and I/O address spaces Advantage – If limited memory, memory is memory Advantage – Large I/O space
![Page 5: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/5.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 5
Other architectures Harvard Architecture
Separate memory spaces for instructions and data Requires pin(s) to differentiate I/O is MMIO (also have PMIO)
Check these out on www.wikipedia.com
![Page 6: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/6.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 6
The 68000 Memory Space 23 address lines
223 words with UDS* and LDS*
This is 8M words or 16M bytes
![Page 7: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/7.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 7
Address Map When
implementing a system the designer creates a memory map.
Map would include where RAM, ROM and I/O are.
![Page 8: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/8.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 8
Full address decoding Each addressable
location within the memory components responds to only a single unique address.
![Page 9: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/9.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 9
Example of full address decoding
![Page 10: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/10.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 10
Ex continued
![Page 11: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/11.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 11
Partial Address Decoding Some of address lines are unused Least complex and most inexpensive Each component will actually respond to
several addresses
![Page 12: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/12.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 12
Partial Address decoding example
![Page 13: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/13.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 13
Block Address decoding Compromise between full and partial. Don’t decode all of address lines but do
decode more than the bare minimum. Less repeated addresses for each populated
device
![Page 14: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/14.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 14
Designing the decode logic Multiple methods of implementing the decode
logic One method is of course to implement it with
“random logic” – i.e., AND gates, OR gates, inverters, NAND gates, NOR gates
Advantage – speed Disadvantage – possibly the number of chips
![Page 15: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/15.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 15
Decoders USE m-line-to-n-line decoders Decode an m-bit input into one of n outputs
where n = 2m
Popular 74LS138 – 3-to-8 decoder Another 74LS154 – 4-to-16 decoder
![Page 16: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/16.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 16
Decoder Truth table
![Page 17: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/17.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 17
Example of decoder use
![Page 18: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/18.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 18
Implementation
![Page 19: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/19.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 19
PROMS A PROM can also be use to
implement logic functions Can use it to do address
decoding
![Page 20: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/20.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 20
Example of PROM use Decoder design must be cheap and versitle.
![Page 21: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/21.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 21
PROM Programming
![Page 22: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/22.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 22
PROM System Advantage-
Ability to select blocks of differing size
Versitility
![Page 23: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/23.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 23
FPGA, PLA, PAL Programmable
Logic Arrays AND plane – OR
plane Programmable
Array Logic Limited PLA
FPGA – A network of CLBs
![Page 24: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/24.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 24
PAL vs PLA In a PAL the
ouput’s connection to product terms is fixed
More limited logic equation support
![Page 25: Address Decoding for Memory and I/O](https://reader036.vdocument.in/reader036/viewer/2022062322/568145fd550346895db30c16/html5/thumbnails/25.jpg)
9/20/6 Lecture 3 - Instruction Set - Al 25
Special devices There are also special chips specifically
designed for address decoding Some may be designed for a specific family
of chips