The Stalled/Throttled/Free Indicator

Each FSB agent that is capable of initiating transactions must maintain an internal indicator referred to as the Stalled/Throttled/Free indicator.

Initial Entry to the Stalled State

Refer to Figure 48-3 on page 1193. At power-up or when reset is asserted, all initiators (i.e., Request Agents) reset the indicator to the Stalled State. All Request Agents are required to start sampling BNR# on a periodic basis starting soon after reset is removed (see “BNR# Behavior at Powerup” on page 1197) and must remain in the Stalled State until BNR# is sampled deasserted. This prevents any agent from issuing a transaction until BNR# is sampled deasserted, indicating that all agents are prepared to deal with a new transaction. The following are some example situations wherein a FSB agent might continually assert BNR# for some period of time after reset is removed:

  • If a processor has been instructed to execute its BIST [refer to “Built-In Self-Test (BIST) Trigger” on page 858], it cannot observe the FSB and track FSB activity while the BIST is executing. For this reason, the processor continually toggles BNR# after reset is removed until its BIST has been completed.

  • A FSB agent (e.g., the North Bridge, MCH, or Root Complex) might require a period of time after the removal of reset to initialize its internal logic before it is ready to track FSB activity generated by other FSB agents. For this reason, the device could continually assert BNR# after reset is removed until it has completed its internal initialization. It then stops asserting BNR#.

Figure 48-3. The Stalled State


The Throttled State

Refer to Figure 48-4 on page 1194. When the indicator is in the Stalled State, it will transition to the Throttled State one BCLK after BNR# is sampled deasserted. On entry to the Throttled State, if a FSB agent has a new transaction and it has acquired ownership of the Request Phase signal group, the agent may initiate the transaction.

Figure 48-4. The Throttled State


When BNR# is sampled deasserted the first time, all Request Agents transition their indicators from the Stalled to the Throttled state. This gives permission to the current Request Phase signal group owner to initiate a transaction request. If BNR# is sampled asserted at the next sample point, all Request Agents transition the indicator from Throttled back to the Stalled state. This one time deassertion and then immediate reassertion of BNR# is analogous to opening the gate to let one transaction out and then closing the gate again. This mechanism can be used to permit a new transaction to be issued by the next owner only when everyone is ready to deal with it. A debug tool could use BNR# in this manner to permit issuance and tracking of just one transaction from inception to completion.

The Free State

Refer to Figure 48-5 on page 1195. When the potential initiators are all in the Stalled State, they all transition to the Free State if BNR# is sampled deasserted at two successive sample points:

  • The initiators transition from the Stalled State to the Throttled State when BNR# is first sampled deasserted.

  • The initiators then transition from the Throttled State to the Free State if BNR# is again sampled deasserted at the next sample point.

Figure 48-5. The Free State


While the initiators remain in the Free State, each of them may issue new transactions as ownership passes to each of them.

As an Agent Approaches Full, It Signals BNR# to Stall Everyone

Refer to Figure 48-6 on page 1196. As a FSB agent approaches a queue full condition (i.e., it has just latched a new transaction request and now has only one entry remaining), it asserts BNR# to stall the issuance of any new transactions to the FSB. As mentioned earlier, the reason it asserts BNR# while one entry still remains is because another FSB agent may initiate one more new transaction in the BCLK cycle wherein BNR# is being asserted (in other words, there may be a race condition). If this is the case, the agent that asserted BNR# can use its final entry to latch and track the new transaction just issued to the FSB.

Figure 48-6. In the Free State, Sampling BNR# Asserted Causes Transition to the Stalled State


The next time BNR# is sampled deasserted, they all transition from Stalled to Throttled and one new transaction can be issued. Depending on whether BNR# is sampled deasserted or asserted at the next sample point, they all then transition from Throttled to Free, or from Throttled back to Stalled, respectively.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.12.151.154