SlideShare a Scribd company logo
Designing Bus System, Memory & I/O
The 68k Address & Data Bus 16-bit wide data bus 24-bit address bus A 0  bit controls  and  signals D15 D0 D8 D7
The 68k Address & Data Bus Cont…
Example 1. Explain the different functions of the internal A 0  bit when used for: a. byte addressing b. word addressing a. A 0  is used to activate UDS or LDS b. A 0  is ignored, UDS and LDS are  both low
Example 2. Show the states of UDS and LDS when the 68000 is involve in the following memory accesses: a. a byte write to address 3000 b. a byte write to address 3001 c. a word write to address 3000 a. UDS = 0, LDS = 1 b. UDS = 1, LDS = 0 c. UDS = 0, LDS = 0
Bus Buffering CPU Memory Control Data Address bidirectional unidirectional
Accessing Memory Read Data from Memory
Memory Accessing Cont… Read Data from Memory
Memory Accessing Write Data to Memory
Memory Accessing Cont… Write Data to Memory
Designing a Memory Address Decoder   monitor the state of the address bus determine right time to enable the memory chip facilitate address bus and configure time to activate memory chip Memory chip: RAMs or EPROMs
Designing a Memory Address Decoder   Cont… 68000 contain many devices.  Only one can communicate with up at one time.  Address Decoder select only one active device EPROM or SRAM CS* SEL*  AS*  Memory AddressDecoder Address bus Valid Address A1-A23 AS* SEL*
Designing a Memory Address Decoder   Cont…  P AS* Address bus Address bus lower section Address bus upper section Address decoder Device selector RAM switch LED ROM
Full Address Decoder Challenge :  The designer of the memory decoder is to chip-enable the memory device at the correct time. Steps:   1. Determine the address range for device a. find the first address of the RAM (base address) b. what is the entire range of RAM addresses c. find the last address  2. Determine which address line go to memory and the decoder a. find the sum of line address at the device b. low address line  from the uP go to the memory c. balance  of the address go to the decoder 3. Design  a decoder to detect the require address line by using    digital gets
Full Address Decoder Example 3.1: Determine the address range for 2764  chip used for EPROM.   Solution: All EPROM in 68k system must start at $000000 One 2764 chip contain 8kbyte. For 68000, must be used coupled If we are using 2 chip, the EPROM size is 8 kbyte x 2 =  16kb Cont…
Full Address Decoder Address line calculation:  Address line = Log 2   Address = Log 2   16 kilobyte  = Log 2   16(1024)  = Log 10  16384 / log 10  2 = 14 lines  a. Base address : $000000 b. Entire range : 16384 (0 – 16383) c. Last EPROM address : 16383 10  =$ 003FFF Cont…
Full Address Decoder For 68000 a. A0 : no connection b. A1-A14  : 14 direct line to 2764 c. A15-A23 : to decoder   Cont… ROM 16kbyte Not used Memory Map $000000 $3FFFFF $400000 $FFFFFF
Full Address Decoder Example 3.2: A memory device consist 64 word (128kbyte), RAM must be interface with 68000.  Base address $480000.  Solution: 1.Memory started at $480000: Location :  $480000 + $20000 = $4A0000 Last Address : $4A0000 – 1 = $49FFFF Address range : $480000 - $49FFFF  Cont…
Full Address Decoder 2. Determine the address line connected to address decoder $480000  = 0100 1000  0000  0000  0000  0000 $49FFFF  = 0100  1001 1111  1111  1111  1111 Start from right: A1-A16  : direct to memory A0  : directly to UDS* and LDS* Checking  : 2 17  = 128k  So line balance A17- A23 go to decoder Cont…
Full Address Decoder 3. Design circuit that sense AS* = 0 and  A23-A17 = 0100100 Circuit below decode $480000 - $49FFFF address by detecting A23-A17 = 0100100   Cont…
Full Address Decoder Cont…
Partial Address Decoder Most of the applications would require much smaller memories   Challenge: To reduce logic when developing memory decoder Steps: 1. Determine address range for every device a. find starting address (base address) b. find Device size c. find Last address 2. Determine the total of address line  for every device that go directly to memory a. find the total of address line in the device b. low address line from the µP go directly to the memory. 3. Use the decoder to activated one device at a time by referring on the address line balance & total of device
Partial Address Decoder Example 3.3:  Designing partial decoder RAM : start address $400000, 64k word ( 128k byte ) ROM : start address $000000, 16k word ( 32k byte ) I/O  : address $800000-$80001F Steps: RAM : $400000 ~ $41FFFF ($400000 +  128k  –1) ROM : $000000 ~ $007FFF ($000000 +  32k  – 1) I/O  : $800000 ~ $ 80001F Place X  in the address table  RAM: A0 –A 16  directly to device ROM: A0 – A 14  directly to device I/O :A0 –A 4  directly to device Cont…
Partial Address Decoder Choose minimum address line: A23 & A22 Cont…
Partial Address Decoder Design using ½ 74LS139 Cont…
Partial Address Decoder Design using full 74LS139 Cont…
Generating  Data transfer acknowledge A signal that tells the 68K CPU data may be read from or written into memory Synchronize memory access time
Generating  Example 3.4:   A typical RAM might require 100ns to become active after it gets enabled.  This due to the time required by the internal RAM circuitry to correctly decode the supplied address and turn on its internal buffers.  This 100ns access time must fits within the time frame of the memory read or writes cycle, or else problems such as data loss might arise.  So  is needed.  Cont…
Direct Memory Access (DMA) A process where external device requests the use of the CPU’s buses (address bus, data bus & control bus) for its own use Video pattern generator (external) shares video RAM with CPU & high-speed data transfer circuits such as those used in hard disk.
Direct Memory Access (DMA) Cont…
Direct Memory Access (DMA) Cont…
Direct Memory Access (DMA) Example 3.5:  Recall that a memory-read cycle requires a minimum of eight states (four CLK cycles) to read a word from memory.  If 1,024 reads are performed, a total of 4,096 CLK cycles are needed. A DMA controller is able to read memory faster, since it uses a different type of bus cycle to access memory. Let us assume that we are using a DMA controller that is capable of reading memory every two CLK cycles (once it controls the buses). Now, suppose that the DMA controller has been programmed to read the same 1,024 locations, in bursts of 128 words. Each burst will use 256 CLK cycles, plus some additional CLK cycles for controller overhead, such as bus request/grant protocol. With 16 CLK cycles of overhead, each burst requires 212 CLK cycles. The total number of CLK cycles required for the 1,024-word block is 2,116, a little more than half that required by the 68000 itself.  Thus, a DMA controller can be very useful when large blocks of data must be transferred. Cont…
Memory-Mapped I/O A process to write into  particular memory location & read later Communicate with outside world Also known as memory-mapped I/O port
Memory-Mapped I/O Example 3.6: Imagine that you have a keyboard that supplies an 8-bit ASCII code (complete with parity) whenever you press a key. Your job is to somehow get this parallel information into your computer. By using memory-mapped I/O, a memory location may be set aside that, when read, will contain the 8-bit code generated by the keyboard. Conversely, data may be sent to the outside world by writing to a memory-mapped output location.  Cont…
Memory-Mapped I/O Cont…
Parallel Data Transfer: 6821 PIA
Serial Data Transfer: 6850 ACIA

More Related Content

PPT
Overview of LPC214x MCUs
PDF
Class 12 dead time, p & i diagram basics
PPTX
8155 GPPI
PPTX
Microprocessors-based systems (under graduate course) Lecture 5 of 9
PPTX
Microproccesor and Microcontrollers hardware basics
PPTX
Semiconductor memories
PPTX
Binary parallel adder
PPTX
Harvard architecture
Overview of LPC214x MCUs
Class 12 dead time, p & i diagram basics
8155 GPPI
Microprocessors-based systems (under graduate course) Lecture 5 of 9
Microproccesor and Microcontrollers hardware basics
Semiconductor memories
Binary parallel adder
Harvard architecture

Viewers also liked (8)

PPTX
bus and memory tranfer (computer organaization)
PPTX
Von Neumann vs Harvard Architecture
PPTX
Register transfer language
PPT
STLD-Combinational logic design
PPT
Presentation on memory
PPTX
Encoder and decoder
PPTX
Computer memory
PPT
Basics Of Semiconductor Memories
bus and memory tranfer (computer organaization)
Von Neumann vs Harvard Architecture
Register transfer language
STLD-Combinational logic design
Presentation on memory
Encoder and decoder
Computer memory
Basics Of Semiconductor Memories
Ad

Similar to Chp3 designing bus system, memory & io copy (20)

PPTX
L10_Memory_Interfacing --> covering memory
PPT
Micro[processor
PDF
PPTX
Microprocessor history1
PPTX
Microprocessor history1
PDF
8051 Architecture, blocks and salient features
PPT
Lec17 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Me...
PDF
Introduction to Microprocessor lecture 01
PDF
PPTX
Advance Microprocessor application and its uses
PPTX
Interfacing memory with 8086 microprocessor
PPTX
MicroProcessors
PPTX
Introduction to Computer System. 8085/8086 architecture
PPT
PPTX
8086 memory interface.pptx
PPTX
05 basic io_operation_part01
PPT
Memory intrface and addrs modes
PDF
Microprocessor Part 1
L10_Memory_Interfacing --> covering memory
Micro[processor
Microprocessor history1
Microprocessor history1
8051 Architecture, blocks and salient features
Lec17 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Me...
Introduction to Microprocessor lecture 01
Advance Microprocessor application and its uses
Interfacing memory with 8086 microprocessor
MicroProcessors
Introduction to Computer System. 8085/8086 architecture
8086 memory interface.pptx
05 basic io_operation_part01
Memory intrface and addrs modes
Microprocessor Part 1
Ad

More from mkazree (20)

PDF
Coal Fired Power Plant
DOC
Contoh kertas kerja program
DOC
Foster-seely and Ratio Detector (Discriminator )
PPT
Communication Engineering - Chapter 6 - Noise
PPT
Chapter 5 fm receivers
PDF
The Electronic Hobby Kit
PDF
Tutorial chapter 2 robotic
PPT
Dek3223 chapter 2 robotic
PPT
Chapter 3 am receivers
PPT
Dek3223 chapter 3 industrial robotic
DOC
Tutorial chapter 3 robotic
DOC
Tutorial 2 amplitude modulation
PPT
Chapter 3 am receivers
PPT
Comm introduction
PPT
Chapter2 cont
PPT
Chapter 2 amplitude_modulation
DOC
Chapter5 dek 3143 dae 32303 9 (nota tambahan)
DOC
120102011
DOC
Ii20102011
DOC
Chapter 4 synchronous machine
Coal Fired Power Plant
Contoh kertas kerja program
Foster-seely and Ratio Detector (Discriminator )
Communication Engineering - Chapter 6 - Noise
Chapter 5 fm receivers
The Electronic Hobby Kit
Tutorial chapter 2 robotic
Dek3223 chapter 2 robotic
Chapter 3 am receivers
Dek3223 chapter 3 industrial robotic
Tutorial chapter 3 robotic
Tutorial 2 amplitude modulation
Chapter 3 am receivers
Comm introduction
Chapter2 cont
Chapter 2 amplitude_modulation
Chapter5 dek 3143 dae 32303 9 (nota tambahan)
120102011
Ii20102011
Chapter 4 synchronous machine

Recently uploaded (20)

PDF
STATICS OF THE RIGID BODIES Hibbelers.pdf
PDF
Anesthesia in Laparoscopic Surgery in India
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PPTX
Renaissance Architecture: A Journey from Faith to Humanism
PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PDF
TR - Agricultural Crops Production NC III.pdf
PDF
102 student loan defaulters named and shamed – Is someone you know on the list?
PPTX
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
PPTX
master seminar digital applications in india
PDF
Supply Chain Operations Speaking Notes -ICLT Program
PDF
RMMM.pdf make it easy to upload and study
PDF
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 9 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PPTX
Pharma ospi slides which help in ospi learning
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
PDF
01-Introduction-to-Information-Management.pdf
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
STATICS OF THE RIGID BODIES Hibbelers.pdf
Anesthesia in Laparoscopic Surgery in India
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
Renaissance Architecture: A Journey from Faith to Humanism
Pharmacology of Heart Failure /Pharmacotherapy of CHF
TR - Agricultural Crops Production NC III.pdf
102 student loan defaulters named and shamed – Is someone you know on the list?
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
master seminar digital applications in india
Supply Chain Operations Speaking Notes -ICLT Program
RMMM.pdf make it easy to upload and study
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 9 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
Pharma ospi slides which help in ospi learning
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
Module 4: Burden of Disease Tutorial Slides S2 2025
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
01-Introduction-to-Information-Management.pdf
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
O5-L3 Freight Transport Ops (International) V1.pdf

Chp3 designing bus system, memory & io copy

  • 1. Designing Bus System, Memory & I/O
  • 2. The 68k Address & Data Bus 16-bit wide data bus 24-bit address bus A 0 bit controls and signals D15 D0 D8 D7
  • 3. The 68k Address & Data Bus Cont…
  • 4. Example 1. Explain the different functions of the internal A 0 bit when used for: a. byte addressing b. word addressing a. A 0 is used to activate UDS or LDS b. A 0 is ignored, UDS and LDS are both low
  • 5. Example 2. Show the states of UDS and LDS when the 68000 is involve in the following memory accesses: a. a byte write to address 3000 b. a byte write to address 3001 c. a word write to address 3000 a. UDS = 0, LDS = 1 b. UDS = 1, LDS = 0 c. UDS = 0, LDS = 0
  • 6. Bus Buffering CPU Memory Control Data Address bidirectional unidirectional
  • 7. Accessing Memory Read Data from Memory
  • 8. Memory Accessing Cont… Read Data from Memory
  • 9. Memory Accessing Write Data to Memory
  • 10. Memory Accessing Cont… Write Data to Memory
  • 11. Designing a Memory Address Decoder monitor the state of the address bus determine right time to enable the memory chip facilitate address bus and configure time to activate memory chip Memory chip: RAMs or EPROMs
  • 12. Designing a Memory Address Decoder Cont… 68000 contain many devices. Only one can communicate with up at one time. Address Decoder select only one active device EPROM or SRAM CS* SEL* AS* Memory AddressDecoder Address bus Valid Address A1-A23 AS* SEL*
  • 13. Designing a Memory Address Decoder Cont…  P AS* Address bus Address bus lower section Address bus upper section Address decoder Device selector RAM switch LED ROM
  • 14. Full Address Decoder Challenge : The designer of the memory decoder is to chip-enable the memory device at the correct time. Steps: 1. Determine the address range for device a. find the first address of the RAM (base address) b. what is the entire range of RAM addresses c. find the last address 2. Determine which address line go to memory and the decoder a. find the sum of line address at the device b. low address line from the uP go to the memory c. balance of the address go to the decoder 3. Design a decoder to detect the require address line by using digital gets
  • 15. Full Address Decoder Example 3.1: Determine the address range for 2764 chip used for EPROM. Solution: All EPROM in 68k system must start at $000000 One 2764 chip contain 8kbyte. For 68000, must be used coupled If we are using 2 chip, the EPROM size is 8 kbyte x 2 = 16kb Cont…
  • 16. Full Address Decoder Address line calculation: Address line = Log 2 Address = Log 2 16 kilobyte = Log 2 16(1024) = Log 10 16384 / log 10 2 = 14 lines a. Base address : $000000 b. Entire range : 16384 (0 – 16383) c. Last EPROM address : 16383 10 =$ 003FFF Cont…
  • 17. Full Address Decoder For 68000 a. A0 : no connection b. A1-A14 : 14 direct line to 2764 c. A15-A23 : to decoder Cont… ROM 16kbyte Not used Memory Map $000000 $3FFFFF $400000 $FFFFFF
  • 18. Full Address Decoder Example 3.2: A memory device consist 64 word (128kbyte), RAM must be interface with 68000. Base address $480000. Solution: 1.Memory started at $480000: Location : $480000 + $20000 = $4A0000 Last Address : $4A0000 – 1 = $49FFFF Address range : $480000 - $49FFFF Cont…
  • 19. Full Address Decoder 2. Determine the address line connected to address decoder $480000 = 0100 1000 0000 0000 0000 0000 $49FFFF = 0100 1001 1111 1111 1111 1111 Start from right: A1-A16 : direct to memory A0 : directly to UDS* and LDS* Checking : 2 17 = 128k So line balance A17- A23 go to decoder Cont…
  • 20. Full Address Decoder 3. Design circuit that sense AS* = 0 and A23-A17 = 0100100 Circuit below decode $480000 - $49FFFF address by detecting A23-A17 = 0100100 Cont…
  • 22. Partial Address Decoder Most of the applications would require much smaller memories Challenge: To reduce logic when developing memory decoder Steps: 1. Determine address range for every device a. find starting address (base address) b. find Device size c. find Last address 2. Determine the total of address line for every device that go directly to memory a. find the total of address line in the device b. low address line from the µP go directly to the memory. 3. Use the decoder to activated one device at a time by referring on the address line balance & total of device
  • 23. Partial Address Decoder Example 3.3: Designing partial decoder RAM : start address $400000, 64k word ( 128k byte ) ROM : start address $000000, 16k word ( 32k byte ) I/O : address $800000-$80001F Steps: RAM : $400000 ~ $41FFFF ($400000 + 128k –1) ROM : $000000 ~ $007FFF ($000000 + 32k – 1) I/O : $800000 ~ $ 80001F Place X in the address table RAM: A0 –A 16 directly to device ROM: A0 – A 14 directly to device I/O :A0 –A 4 directly to device Cont…
  • 24. Partial Address Decoder Choose minimum address line: A23 & A22 Cont…
  • 25. Partial Address Decoder Design using ½ 74LS139 Cont…
  • 26. Partial Address Decoder Design using full 74LS139 Cont…
  • 27. Generating Data transfer acknowledge A signal that tells the 68K CPU data may be read from or written into memory Synchronize memory access time
  • 28. Generating Example 3.4: A typical RAM might require 100ns to become active after it gets enabled. This due to the time required by the internal RAM circuitry to correctly decode the supplied address and turn on its internal buffers. This 100ns access time must fits within the time frame of the memory read or writes cycle, or else problems such as data loss might arise. So is needed. Cont…
  • 29. Direct Memory Access (DMA) A process where external device requests the use of the CPU’s buses (address bus, data bus & control bus) for its own use Video pattern generator (external) shares video RAM with CPU & high-speed data transfer circuits such as those used in hard disk.
  • 30. Direct Memory Access (DMA) Cont…
  • 31. Direct Memory Access (DMA) Cont…
  • 32. Direct Memory Access (DMA) Example 3.5: Recall that a memory-read cycle requires a minimum of eight states (four CLK cycles) to read a word from memory. If 1,024 reads are performed, a total of 4,096 CLK cycles are needed. A DMA controller is able to read memory faster, since it uses a different type of bus cycle to access memory. Let us assume that we are using a DMA controller that is capable of reading memory every two CLK cycles (once it controls the buses). Now, suppose that the DMA controller has been programmed to read the same 1,024 locations, in bursts of 128 words. Each burst will use 256 CLK cycles, plus some additional CLK cycles for controller overhead, such as bus request/grant protocol. With 16 CLK cycles of overhead, each burst requires 212 CLK cycles. The total number of CLK cycles required for the 1,024-word block is 2,116, a little more than half that required by the 68000 itself. Thus, a DMA controller can be very useful when large blocks of data must be transferred. Cont…
  • 33. Memory-Mapped I/O A process to write into particular memory location & read later Communicate with outside world Also known as memory-mapped I/O port
  • 34. Memory-Mapped I/O Example 3.6: Imagine that you have a keyboard that supplies an 8-bit ASCII code (complete with parity) whenever you press a key. Your job is to somehow get this parallel information into your computer. By using memory-mapped I/O, a memory location may be set aside that, when read, will contain the 8-bit code generated by the keyboard. Conversely, data may be sent to the outside world by writing to a memory-mapped output location. Cont…