
|
| ISR |
|
|
| Save Bank Select & Address |
|
| |
|
| Ptr Registers |
|
|
|
| Mask 91C94 Interrupts |
|
|
|
| Read Interrupt Register |
|
|
|
| No |
| Yes |
|
|
| RX INTR? | |
|
| Yes |
|
|
Call TX INTR or TXEMPTY | TX INTR? |
|
| |
| INTR |
| No | Call RXINTR |
|
|
|
| |
| Get Next TX |
|
|
|
| Packet | ALLOCINTR? |
|
|
|
|
|
| |
| Available for | No | Yes |
|
Yes | Transmission? | No |
| Write Allocated Pkt # into |
|
|
|
| Packet Number Reg. |
CallALLOCATE |
|
| Write Ad Ptr Reg. & Copy Data | |
|
|
|
| & Source Address |
|
|
|
| Enqueue Packet |
|
| EPHINTR? |
|
|
| Yes | No |
| Set "Ready for Packet" Flag |
|
|
|
| |
| Call EPH INTR | Restore Address Pointer & |
| |
| Bank Select Registers |
| ||
|
| Return Buffers to Upper Layer | ||
|
|
|
| |
|
| Unmask 91C94 Interrupts | Disable Allocation Interrupt | |
|
|
|
| |
|
|
|
| Mask |
|
| Exit ISR |
|
|
FIGURE 10 - ETHERNET INTERRUPT SERVICE ROUTINE
73