I/O Devices


Assignment Content

  1. Question 1

In virtually all systems that include DMA modules, DMA to main memory is given higher priority than CPU access to main memory. Why? 

Question 2

When a device interrupt occurs, how does the processor determine which device issued the interrupt? 

Question 3

A system is based on an 8-bit microprocessor and has two I/O devices. 

  • The I/O con- trollers for this system use separate control and status registers. 
  • Both devices handle data on a 1-byte-at-a-time basis. 
  • The first device has two status lines and three control lines. 
  • The second device has three status lines and four control lines. 
  • How many 8-bit I/O control module registers do we need for status reading and control of each device? 

    ***Explain your reasoning and show your mathematical calculations on how you derived your answer 

  • Question 4

    A system is based on an 8-bit microprocessor and has two I/O devices. 

  • The I/O con- trollers for this system use separate control and status registers. 
  • Both devices handle data on a 1-byte-at-a-time basis. 
  • The first device has two status lines and three control lines. 
  • The second device has three status lines and four control lines. 
  • What is the total number of needed control module registers given that the first device is an output-only device? 

    ***Explain your reasoning and show your mathematical calculations on how you derived your answer 

  • Question 5

    A system is based on an 8-bit microprocessor and has two I/O devices. 

  • The I/O con- trollers for this system use separate control and status registers. 
  • Both devices handle data on a 1-byte-at-a-time basis. 
  • The first device has two status lines and three control lines. 
  • The second device has three status lines and four control lines. 
  • How many distinct addresses are needed to control the two devices? 

    ***Explain your reasoning and show your mathematical calculations on how you derived your answer 

  • Question 6

    Consider a microprocessor that has a block I/O transfer instruction such as that found on the Z8000. 

  • Following its first execution, such an instruction takes five clock cycles to re-execute.
  •  However, if we employ a nonblocking I/O instruction, it takes a total of 20 clock cycles for fetching and execution. 
  • Calculate the increase in speed with the block I/O instruction when transferring blocks of 128 bytes. 

    **Explain your reasoning and show your mathematical calculations on how you derived your answer 


  • Question 7
  • What is the difference between memory-mapped I/O and isolated I/O?