PCI Bus Latency
Soon after promulgation of the PCI specification, it was discovered that lengthy transactions by some devices, due to slow acknowledgments, long data bursts, or some combination, could cause buffer underrun or overrun in other devices. Recommendations on the timing of individual phases in Revision 2.0 were made mandatory in revision 2.1:
- A target must be able to complete the initial data phase (assert TRDY# and/or STOP#) within 16 cycles of the start of a transaction.
- An initiator must complete each data phase (assert IRDY#) within 8 cycles.
Additionally, as of revision 2,1, all initiators capable of bursting more than 2 data phases must implement a programmable latency timer. The timer starts counting clock cycles when a transaction starts (initiator asserts FRAME#). If the timer has expired and the arbiter has removed GNT#, then the initiator must terminate the transaction at the next legal opportunity. This is usually the next data phase, but Memory Write and Invalidate transactions must continue to the end of the cache line.
Read more about this topic: Conventional PCI
Famous quotes containing the word bus:
“An actor rides in a bus or railroad train; he sees a movement and applies it to a new role. A woman in agony of spirit might turn her head just so; a man in deep humiliation probably would wring his hands in such a way. From straws like these, drawn from completely different sources, the fabric of a character may be built. The whole garment in which the actor hides himself is made of small externals of observation fitted to his conception of a role.”
—Eleanor Robson Belmont (18781979)