Lab 8 - Exploring Interrupts

1 Objectives

Upon completion of this lab you should be able to create and test a design using the Xilinx ISE tools.

2 General

This lab willl guide you through exploring an implimentation of hardware to support interrupts.

3 Exploring Interrupts

  1. Download intReg16.zip. Create a directory called intReg16 and unzip intReg16.zip into this directory.

    NOTE: you may need to move the "remote_sources" back to their proper location. The directories inside "remote_sources/_" should be at the same level as the intReg16 directory.

  2. Start Xilinx ISE 14.7.

  3. Open the intReg16 project.

  4. Explore the intReg16 project.

    Here's the format of the interrupt register in the project.

    15-10 9 8 7 6 5 4 3 2 1 0
    unused IL IE IM3 IM2 IM1 IM0 I3 I2 I1 I0

    IL is the interrupt level and is a zero when the system is handling an interrupt and a one otherwise. When the interrupt level is a zero interrupts are blocked. IE is the interrupt enable. Setting the interrupt enable to one turns on interrupts and a zero turns them off. IM? is the interrupt mask. Setting the interrupt mask for a particular level to zero will block interrupts at that level. I? is the interrupt request. A one indicates that an interrupt is pending.

    The interrupt register is wired up to the switches, buttons and leds on the fpga board. The North button resets the interrupt register. The South button writes the data on the slide switches and interrupt anable setting into the interrupt register. The West button generates a hardware int0 and the East button int1. The rotary push button toggles the interrupt level. The rotary knob toggles interrupt enable (requires a write to the interrupt register). The slide switches are connected to the 4 interrupt masks. Finally the 8 leds display interrupt request, interrupt enable, interrupt level, unused, interrupt mask 1, interrupt mask 0, interrupt 1, and interrupt 0.

4 Write an Interrupt Lab

  1. Write your own lab to do something interesting with the interrupt register. Remember, your project might support interrupts and this is an opportunity to get a head start on that aspect.
  2. Demonstrate your interrupt lab to your instructor.

5 Turning It In

Demonstrate your interrupt lab to your instructor.

Submit the instructor verification sheet in hard copy.

Only one lab should be submitted for each project team. Make sure all team member's names are included on your submission.