CE121 -- Microprocessor System Design
Assignment 6
Out February 12, 1997
Due: February 19, 1997

Reminder: Homework is to be your own work, though you can discuss problems in general terms with your classmates when necessary provided writeups are independent, without reference to any materials from the group discussion, after doing something inane. Be sure to credit any collaborators, the TA, or me, if you received help on any problem.

  1. (30 points) Lab 5 interrupt program. Referring to the lab assignment, write pseudo-code (not assembly language) for the routines needed for interrupt-driven I/O processing.
  2. (20 points) Answer the following questions about the routines.
    1. (3) Why are queues needed?
    2. (3) What is a simple way to implement a circular queue of size tex2html_wrap_inline74 .
    3. (3) What conditions on the pointers indicate that the queue is full or empty?
    4. (3) What advantage is there in removing characters from the queue after they are transmitted?
    5. (4) What do you expect to happen when the transmitter's CTS signal is disabled but keys are still typed from the terminal?
    6. (4) What would happen if UART interrupts were temporarily disabled while the routien was running?

    Note that in a multiprogramming environment, the busy loops in the read and write request routines would be eliminated by placing the process in an inactive state on a queue of jobs waiting for I/O. Fortunately, you don't need to write an operating system, or at least not in this course!

  3. (20 points) Design an op-amp circuit to change an analog signal that varies between 0V and 5V to one that varies linearly between -10V and 10V. Assume that only tex2html_wrap_inline78 V power supplies are available and make sure that 0V maps to tex2html_wrap_inline80 V.
  4. (20 points) Design an op-amp circuit to calculate z= 5x - 0.2y, where x and y range between -1 and +1V, and there is a tex2html_wrap_inline92 V power supply. What changes would have to be made if the input signals ranged tex2html_wrap_inline94 ?



Richard Hughey
Wed Feb 12 12:52:37 PST 1997