Handling External Interrupts in an OpenBus System

Frozen Content

In the example used in the topic Adding Schematic-based Devices to an OpenBus System Design, interrupt lines from all peripheral devices – those in the OpenBus System and the Infrared Decoder on the schematic sheet – were not used. In OpenBus System - Configuring Clock, Reset and Interrupt Lines, we discussed how an interrupt pin of a processor in the OpenBus System can be exported – either as output or input, depending on whether or not the interrupt pin is already assigned to a peripheral device internal to the OpenBus System. To better illustrate the export and use of interrupts, let us now extend the previous example by:

  • Assigning TSK3000A processor interrupt inputs to accommodate the corresponding interrupt lines of each applicable interrupt-generating peripheral device in the OpenBus System.
  • Exporting two processor interrupt pins to accommodate the two interrupt lines from the Infrared Decoder device.
  • Making the total number of interrupts sent to the TSK3000A processor in the OpenBus System also available to the MicroBlaze processor on the schematic sheet.

On the OpenBus System side, we simply need to configure the interrupts as required, using the Interrupts tab of the OpenBus Signal Manager dialog. Figure 1 illustrates the required interrupt configuration, which can be summarized as follows:

  • Sequential processor interrupt inputs INT_I0 to INT_I3 are assigned for the interrupt outputs of the SPI Controller (1 interrupt) and the VGA 32-bit TFT Controller (3 interrupts).
  • These interrupt lines are then exported by setting their corresponding entries – in the Interrupt pins list – to Exported (as output pin). This will make them available as outputs on the schematic top-sheet for wiring to the INT_I input of the MicroBlaze processor.
  • The next two TSK3000A interrupt inputs – INT_I4 and INT_I5 – are also exported. As they have not been assigned to any internal OpenBus peripherals, their corresponding entries – in the Interrupt pins list – are set to Exported (as input pin). This will make them available as inputs on the schematic top-sheet for wiring from the INT_O output of the Infrared Decoder device. The Kind and Polarity entries for both are set to Rising Edge.


Figure 1. Configuration of interrupt lines for the system.

That's all there is to it on the OpenBus System side. On the schematic top-sheet, use the Synchronize Sheet Entries and Ports feature for the sheet symbol, and place the additional sheet entries relating to the interrupt lines. Then wire the interrupt lines to the Infrared Decoder and MicroBlaze processor, using bus joiner and bus splitter components to handle the wire to bus transitions (Figure 2).


Figure 2. Exported interrupts wired to external devices on the schematic top-sheet.

Note: Interrupt lines of the processor in the OpenBus System can be exported as either inputs or outputs, but not both concurrently. Therefore, the interrupt lines from the Infrared Decoder (MCU_INT_I4 and MCU_INT_I5) are 'tapped off' on the schematic sheet and made available as inputs to the MicroBlaze processor, along with the additional exported interrupt lines from the OpenBus System (MCU_INT_I0 to MCU_INT_I3).

You are reporting an issue with the following selected text and/or image within the active document: