Let's say that you are doing a write to clear an interrupt at almost the same time as the interrupt happens.
The CPU cycle that writes to memory happens at W.
The IRQ flag from the interrupting device happens at I.
In this case, the interrupt happens after the write to acknowledge it, so you clearly get an interrupt.
In this case, the interrupt happens before the CPU instruction writes to clear it, and the CPU clears it, so no interrupt happens.
But what about the condition where there's a tie?
The CPU cycle that writes to memory happens at W.
The IRQ flag from the interrupting device happens at I.
Code:
....I
...W
...W
In this case, the interrupt happens after the write to acknowledge it, so you clearly get an interrupt.
Code:
..I
...W
...W
In this case, the interrupt happens before the CPU instruction writes to clear it, and the CPU clears it, so no interrupt happens.
Code:
...I
...W
...W
But what about the condition where there's a tie?