Toggle for split transaction mode of PCI-X bridge buffer

Electrical computers and digital processing systems: memory – Storage accessing and control – Control technique

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C710S057000, C710S310000

Reexamination Certificate

active

06581141

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Technical Field
The present invention relates in general to a toggle for the split transaction mode of a PCI-X bridge buffer and in particular to a toggle for switching the split transaction mode between a “No Over-commitment” Mode and an “Over-Commitment” Mode or a “Flood” Mode for split read transactions across a PCI-X to PCI-X (PtP) bridge. Still more particularly, the present invention relates to toggling and switching the split transaction mode of the PCI-X bridge buffer so that retries and disconnects are generally minimized by the PCI-X bridge and bus efficiency and overall system performance is thus improved.
2. Description of the Related Art
Peripheral Component Interconnect-X (PCI-X) and peripheral component interconnect (PCI) specifications have been developed and continued to be improved for communicating between a host computer and various devices or adapters, such as devices on the bus, plug-in cards, or integrated adapters. The specifications for PCI have been detailed in PCI specification version 2.2 (66 MHz capability) published in December 1998 and PCI specification version x.x (133 MHz capability that will be published some time after development of the PCI-X enhancements have been completed and approved. These specifications are incorporated by reference herein.
Various transactions, such as input/output (I/O) transactions, occur across the PCI-X or PCI bridge between the host computer and the various devices. Delay transactions across such bridges require retries by the host bridge until the appropriate amount of buffer space is readily available. However, the problem with delay transactions (described in the current PCI specification) is that the host bridge has to continue to retry and wait until appropriate buffers are available-which results in the tie up or back up of transactions across the host bridge. Split transactions (supported by the PCI-X enhancements) across such bridges avoids having the host bridge wait and retry transactions and allows commands to be processed based on commands by the master.
The PCI-X bus specification allows for three different modes for managing split transactions for a PCI-X to PCI-X (PtP) bridge. These modes are a “No Over-commitment” Mode, an “Over-Commitment” Mode, and a “Flood” Mode. Generally, the upstream (bus transactions going towards system memory) and downstream (bus transactions going towards an I/O device) split transaction control registers each have two types of fields for controlling the forwarding of split requests. The two types of fields are Split Completion Capacity fields and a Split-Transaction Commitment Limit fields. A Split Completion Capacity field indicates the amount of space in the buffers that the bridge has available for storing split completions. A Split Transaction Commitment Limit field indicate the number of Split Transactions that the bridge is permitted to have outstanding at one time (in units of ADQs, which are each a data block of 128 bytes). If the bridge is configured to store Split Read Completions separately from Split Write Completions, then the Split Transaction Commitment Limit field applies only to split read requests. On the other hand, if the bridge is configured to store Split Read Completions with Split Write Completions, then the Split Transaction Commitment field applies to all split transactions.
The “No Over-commitment” mode occurs when the Split Transaction Commitment Limit field is equated to the same value as the Split Transaction Capacity field. Typically, the Split Transaction Commitment Limit field is defaulted at this value. At this setting value, the bridge forwards Split Completions which identically fill and occupy the bridge buffers. For example, the bridge is unable to issue a split read request unless the bridge has available the full amount of buffer space that would be able to accept the entire read completion in one bus operation. The “Over-commitment” mode occurs when the Split Transaction Commitment Limit field is programmed to a value greater than the value of the Split Transaction Capacity field. In this situation, the bridge is able to forward more Split Transactions (in unit of ADQs) than its available completion buffer capacity. In other words, the “Over-commitment” mode allows some degree of over-commitment by the bridge of read completion buffers (degree of over-commitment is programmable), wherein throughput of transactions is improved and latency is reduced. The “Flood” mode occurs when the Split Transaction Commitment Limit field allows the bridge to forward all Split Transactions regardless of the size of the transaction or the amount of available buffer space in the bridge. In other words, the “Flood” mode allows the bridge to forward all read requests regardless of available buffers.
Therefore, one of the keys for managing transactions across the bridge is to optimize the settings for the split Transaction Commitment Limit fields, which are a function of the number and behavior of devices. If the commitment level for the Split Transaction Commitment Limit field is set to be too large, then Split Completion data returns to the bridge faster than it is able to be forwarded to the requester resulting in the Split Completion backing up towards the completer. On the other hand, if the commitment level for the Split Transaction Commitment Limit field is set to be too small, then Split Requests are unnecessarily delayed and requesters on one side of the bridge experience additional latency when reading from completers on the other side of the bridge.
The problem occurs when the split transaction mode is set to the Over-commitment mode or the Flood mode. When peak traffic occurs on the secondary side of the bridge, the bridge's read completions buffers become full of completion data which results in any additional read completions in transit above the PtP bridge backing up in the bridge above the PtP bridge and which also results in larger split completions being decomposed into smaller read completions. When the bridge has some available buffers, the bridge will accept part of a split read completion filling the available buffers and then disconnecting. Over-commitment of the buffers in the bridge results in retries and disconnects of the Split Completion transactions occurring more frequently at and tying up the bridge. Thus, bus efficiency and overall system performance are affected.
It would therefore be advantageous and desirable to inhibit the over-commitment of the buffers in the bridges to minimize retries and disconnects at the bridge and increase bus efficiency and overall system performance. It would also be advantageous and desirable to provide a system and method that toggles the split transaction mode to the No Over-commitment mode to stop the bridge from issuing any additional read requests until the bridge is no longer over-committed. It would also be advantageous and desirable to provide a system and method for toggling the split transaction mode from the Over-commitment mode or the Flood mode to the No Over-commitment mode when the peak traffic and backing up of split completions, such as read completions, in transit above the PtP bridge occur. It would be advantageous and desirable to provide a system and method for allowing split completions, such as read completions, to drain out of the bridge until the completion buffers in the bridge are no longer over committed at which time the split transaction mode is toggled back to the Over-commitment mode or the Flood mode.
SUMMARY OF THE INVENTION
It is therefore one object of the present invention to inhibit the over-commitment of the buffers in the bridges to minimize retries and disconnects at the bridge and increase bus efficiency and overall system performance.
It is another object of the present invention to provide a system and method that toggles the split transaction mode of a bridge to the No Over-commitment mode to stop the bridge from issuing any additional read requests until the bridge is no longer over-committed.
It is a furthe

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Toggle for split transaction mode of PCI-X bridge buffer does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Toggle for split transaction mode of PCI-X bridge buffer, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Toggle for split transaction mode of PCI-X bridge buffer will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3099758

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.