4.3.2 IRQ Level Setting

There is only one IRQ level requested by this card, although it is a dual interrupt system. The motherboard circuits will transfer INTA# to one of the PC IRQ levels. The IRQ level is set by the PCI plug and play BIOS and saved in the PCI controller. Users can get the IRQ level setting by software library.

 

 

 

 

 

INT1

 

 

 

 

INT1

 

 

P1C0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

IRQ

 

 

MUX

 

 

~P1C0 & P1C3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Event Counter

 

 

 

PCI

 

INT2

Flip-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

INTA#

Controller

 

Flops

 

 

 

 

 

 

 

 

 

INT2

 

 

P2C0 (*)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MUX

 

 

~P2C0 & P2C3 (*)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Clear IRQ

 

 

 

 

 

 

 

Timer IRQ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Fig 4.3 Dual Interrupt System of PCIDIO 24H/48H/96H

(*) Note: This interrupt is not available in PCIDIO 24H

4.3.3 Note for Dual Interrupts

The PCI controller of PCIDIO 24H/48H/96H can receive two hardware IRQ sources. However, a PCI controller can generate only one IRQ to PCI bus,

the two IRQ sources must be distinguished by the ISR of the application software if the two IRQs are both used.

The application software can use the “_dioxxh_Get_Irq_Status” function to distinguish which interrupt is inserted. After an ISR is completed, users must check if another IRQ is also asserted, then clear current IRQ to allow the next IRQ coming in.

The two IRQs are named as INT1 and INT2. In PCIDIO 24H/48H/96H, INT1

comes from P1C0, P1C3 or the event counter interrupt. INT2 comes from P2C0, P2C3 or the timer interrupt. However in PCIDIO 24H, INT2 only comes

from timer interrupt. The sources of INT1 and INT2 is selectable by the Interrupt Source Control (ISC) Register.

Operation Theorem 27