PCI arbiter (doubt in REQ signal)

Hi all,

I have got a doubt in PCI arbiter operation . Assume that a particular device issues a REQ(REQ0) and GRANT(GRANT 0) is issued to that particular deivce , that device pulls the FRAME signal low indicating it is using th PCI bus.Now during the entire duration for which the FRAME signal is low GRANT(GRANT 0) should be held low for that particular device.

My doubt is if in the FRAME low held duration if any other device issues a REQ (i.e pulls it low and again pulls it high before the FRAME has gone high.IS this a valid request OR does the REQ line need to be held until the GRANT is issued to that particular device.

Thanks in advance, Praveen

Reply to
prav
Loading thread data ...

The PCI 2.3 spec says REQ# can be de-asserted at any time. The situation you mention is not typical, but allowed. Because of this, the arbiter needs to deal with it. Specifically if the arbiter issues a GNT# to a master that has de- asserted its REQ#, it should de-assert GNT# and allow other masters to use the bus. In fact even if a master doesn't de-assert REQ# , but fails to assert FRAME# within 16 clock cycles of the bus becoming idle, the arbiter should de-assert that master's GNT#. The arbiter may in this situation ignore further requests from the "broken" master. This is all described in section

3.4.1 of the spec.

Hope this helps, Gabor

Reply to
Gabor

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.