A bus bridge circuit having at least one register to store address ranges to enable or disable prefetch in upstream memory read transactions or upstream write transaction buffering/posting data to specific devices. The use of address ranges allows the present invention to provide selectable control of prefetch for upstream memory read transaction flow. This feature allows the continued use of read prefetch for targets that allow upstream read prefetch while disabling upstream read prefetch for targets that do not allow upstream read prefetch. Additionally, the use of the address range allows upstream memory write transaction flow without utilizing data buffering or posting for specific targets. This feature provides immediate delivery of upstream data to selected targets by selectively disabling buffering/posting of upstream memory write commands as performed by a FIFO buffer. Thus providing immediate delivery of upstream data to selected targets while buffering/posting upstream memory write commands for other targets.

Patent
   5983306
Priority
Jun 28 1996
Filed
Sep 12 1997
Issued
Nov 09 1999
Expiry
Jun 28 2016
Assg.orig
Entity
Large
23
36
all paid
1. A bus bridge circuit comprising:
a primary bus port connecting said bus bridge to at least one target on a primary pci bus;
a secondary bus port connecting said bus bridge to at least one initiator on a secondary pci bus;
an upstream flow controller for directing data between said secondary bus port and said primary bus port wherein said upstream flow controller includes an upstream buffer coupled to said primary bus port and to said secondary bus port and wherein said upstream buffer is selectively used in upstream transactions from said secondary bus port to said primary bus port; and
at least one register for configuring selective use of said upstream buffer during upstream data transactions between said at least one initiator and a subset of said at least one target.
7. A pci bus to pci bus bridge comprising:
a primary bus port connecting said bus bridge to at least one target on a primary i/O bus;
a secondary bus port connecting said bus bridge to at least one initiator on a secondary i/O bus;
upstream flow controller means for directing data between said secondary bus port and said primary bus port wherein said upstream flow controller means includes upstream buffer means coupled to said primary bus port and to said secondary bus port and wherein said upstream buffer means is selectively used in upstream transactions from said secondary bus port to said primary bus port; and
configuring means for configuring selective use of said upstream buffer means during upstream data transactions between said at least one initiator and a subset of said at least one target.
6. A bus bridge circuit comprising:
a primary bus port connecting said bus bridge to at least one target on a primary pci bus;
a secondary bus port connecting said bus bridge to at least one initiator on a secondary pci bus;
an upstream flow controller for directing data between said secondary bus port and said primary bus port wherein said upstream flow controller includes an upstream buffer coupled to said primary bus port and to said secondary bus port and wherein said upstream buffer is selectively used in upstream transactions from said secondary bus port to said primary bus port;
at least one register storing at least one address range for selectively disabling use of said upstream buffer for prefetch of memory reads between said at least one initiator and a subset of said at least one target; and
at least one register storing at least one address range for selectively disabling use of said upstream buffer for buffering of write data between said at least one initiator and a subset of said at least one target.
2. The bus bridge circuit of claim 1 wherein said at least one register stores at least one address range for selectively disabling use of said upstream buffer for prefetch of memory reads between said at least one initiator and said subset of said at least one target.
3. The bus bridge circuit of claim 2 wherein said at least one register comprises:
a base register storing the base address of the target; and
a limit register storing the extension address of the target.
4. The bus bridge circuit of claim 1 wherein said at least one register stores at least one address range for selectively disabling use of said upstream buffer for buffering of write data between said at least one initiator and said subset of said at least one target.
5. The bus bridge circuit of claim 4 wherein said at least one register comprises:
a base register storing the base address of the target; and
a limit register storing the extension address of the target.
8. The pci bus to pci bus bridge of claim 7 wherein said configuring means comprises at least one register means storing at least one address range for selectively disabling use of said upstream buffer means for prefetch of memory reads between said at least one initiator and a subset of said at least one target.
9. The pci bus to pci bus bridge of claim 7 wherein said configuring means comprises at least one register means storing at least one address range for selectively disabling use of said upstream buffer means for buffering of write data between said at least one initiator and a subset of said at least one target.

This patent is a continuation of U.S. patent application Ser. No. 08/674,592 entitled INTER-BUS BRIDGE CIRCUIT WITH INTEGRATED MEMORY PORT filed Jun. 28, 1996 U.S. Pat. No. 5,881,254, which is hereby incorporated by reference.

This patent is a continuation of U.S. patent application Ser. No. 08/673,654 entitled SCALABLE HIERARCHICAL MEMORY STRUCTURE FOR HIGH DATA BANDWIDTH RAID APPLICATIONS filed Jun. 28, 1996, which is hereby incorporated by reference.

1. Field of the Invention

This invention relates to the field of bus bridge integrated circuits and in particular to a bus bridge circuit design that includes registers to store configuration parameters pertaining to upstream memory operations.

2. Discussion of Related Art

Bridge circuits are known to connect a first electronic bus to a second electronic bus. The bridge circuit serves to adapt the signals of the two busses to enable data exchange between the two bus signal standards. Frequently, bridge circuits are used to convert between different signaling standards defined for the first and second busses. Another common application of bus bridge circuits, as discussed in the related application Ser. No. 08/673,654 incorporated herein by reference, is to connect multiple, often hierarchical busses to common devices or memory subsystems.

In RAID storage subsystem control applications, for example, a Peripheral Computer Interconnect (PCI) bus is used to connect various peripheral I/O devices through a bridge circuit to a centralized PCI bus for the overall control of all I/O devices in the subsystems as well as the cache memory subsystem. The bus connecting the RAID subsystem CPU to the PCI bus bridge is referred to herein as the primary side or primary I/O bus, and attaches to the primary bus port of the bridge. The bus connected to the bus bridge circuit on the opposite side of the bridge relative to the primary side is referred to herein as the secondary side or secondary I/O bus and connects to the secondary bus port of the bridge. Transactions flowing through the bridge circuit from the primary side to the secondary side are referred to herein as downstream transactions or downstream flow. Transactions flowing through the bridge circuit from the secondary side to the primary side are referred to herein as upstream transactions or upstream flow.

The device initiating or originating the transaction request is known as the initiator or busmaster. The device to which the initiator directs its request is the target. When, for example, a CPU originates a transaction request it is the initiator, that is, busmaster. The target, for example, might be cache or other memory module.

If a read transaction has been performed and more data accesses may be required, data that may be requested is prefetched. The PCI bridge is designed to perform read prefetches from the target faster than necessary, and transfer the data to the initiator in response to future read transactions. This technique is known to enhance read transaction performance.

With regard to PCI bus architecture, read prefetch can be implemented with or without a buffer. When read prefetch is implemented with a buffer, data within data addresses following the current area of memory being read, are stored in a buffer and transferred to the initiator in response to possible future read transactions. Read prefetch with a buffer allows the PCI bus bridge to utilize the PCI burst mode without a lockstep handshake. During burst mode, the PCI bus bridge joins the addresses of these sequential read operations, transfers the beginning address once, and performs the data transfer. Successive addresses of these sequential read operations are not transferred while the data is transferred because they are implied. Thus, the amount of data transferred during burst mode is increased because the bus is not required to transfer each address during the data transfer.

When read prefetch is not implemented with a buffer, PCI bust mode is still utilized, but multiple data addresses cannot be prefetched. Instead, only one data address in the current area of memory being read can be prefetched, stored in a single register, and transferred to the initiator during the next data phase of the current burst. Since there is no buffer space to store the large amount of prefetched data, both sides of the PCI bus bridge are required to be in lockstep. A handshake is required between both sides of the bridge because the bus slave, or target must wait for the bus master to request the next read operation.

If immediate delivery of write data from initiator to target in a write transaction is not necessary, the PCI bridge can temporarily write data to a buffer within the PCI bus bridge before the write data is transferred to the storage medium such as the RAID disk, cache, or non-volatile memory. This is known to enhance write transaction performance because buffering and posting do not require both sides of bridge to be in lock step. That is when buffering data, there is no requirement for a handshake between both sides of the bridge during each data cycle that is transferring data between sides of the bridge. Although the busmaster or initiator is notified data delivery has occurred, data delivery has not actually occurred but will soon afterwards because the data that is left in the buffer is transferred at a later time.

In the downstream direction, it is known in the art to selectively enable memory read prefetch support. Prefetching can be implemented with or without a buffer. In the upstream direction, it is known in the art to globally disable memory prefetch support. Additionally in the downstream or upstream direction, it is known in the art to globally disable memory write buffering or posting. For more information, the reader is directed to PCI Special Interest Group, PCI to PCI Bridge Architecture Specification, Revision 1.0, Apr. 5, 1994, Hillsboro, Oreg., and PCI Special Interest Group, PCI Local Bus Specification, Revision 2.1, Jun. 1, 1995, Portland, Oreg.

In prior PCI bus bridges, upstream read transactions directed to memory target devices may often use prefetch. If the prefetch of upstream read transactions is directed to certain I/O targets that cannot utilize prefetch, it is known in the art, to provide a device specific bit in configuration space that globally disables upstream transaction read prefetch for all upstream read transactions. When upstream transaction read prefetch is globally disabled, read prefetch remains globally disabled for upstream transactions on a PCI bridge even though there may be other targets that allow read prefetch. The prefetch ability remains globally disabled because the prior PCI bus bridge cannot selectively disable read prefetch on upstream transactions. This reduces system performance for upstream transaction memory read commands to prefetchable main memory. A need exists to selectively enable and disable destinations for prefetch of upstream transaction memory read commands.

Additionally, in prior PCI bridges, buffering or posting of all upstream transaction memory write commands must be globally disabled to guarantee immediate delivery of upstream transaction data to certain targets. This reduces system throughput because the system does not utilize buffering or posting of data for other targets that do not need immediate delivery of upstream transaction data. It is desirable to improve system performance by allowing the immediate delivery of upstream transaction data, for certain targets, and allow upstream transaction buffering/posting of memory write commands for other targets.

This present invention solves the above and other problems, thereby advancing the useful arts, by providing the use of programmable address registers to configure the PCI bus bridge for selectively enabling and disabling memory read prefetch and memory write buffering/posting of upstream data transactions for targets on the primary I/O bus.

A programmable address register, in configuration space, stores an address range of targets that do not support read prefetch of upstream read transactions. The present invention uses the stored address base and limit to selectively disable read prefetch of upstream transaction memory data for the targets that do not support read prefetch of upstream read transactions. The present invention can also selectively enable or disable the use of a buffer during read prefetch of upstream read transaction. In the present invention the buffer is a first-in-first-out (FIFO) buffer.

When an upstream transaction memory-read command start address falls within this range, the bus bridge circuit will not read more data than that requested by the initiator or bus master of the secondary PCI bus, thus, no prefetch occurs. There are two PCI read commands in addition to the Memory Read command, that provide read access in the memory address area. These two PCI read commands allow more data to be read than the Memory Read command. The Memory Read Multiple allows the device initiating the transaction, the busmaster, to read more than a complete cache line, or a similarly sized data block from the memory without caching. The Memory Read Line command allows the busmaster to read more than two 32-bit data blocks from memory. The present invention selectively disables the prefetch capability of the busmaster for a select target on the primary I/O bus by disabling the PCI burst mode and converting Memory Read Multiple command or Memory Read Line command to a non-prefetch Memory Read command.

The bus bridge circuit of the present invention continues to allow read prefetch of upstream transaction memory data for those targets on the primary I/O bus whose read prefetch capability was not disabled. Thus, read prefetch capability is not disabled for targets whose upstream transaction memory read command start address fall outside of the selected address range.

The programmable address register additionally stores the address base and limit of targets on the primary I/O bus that should be guaranteed immediate delivery of data in upstream transactions. For these targets, the buffering or posting of upstream transaction memory write commands is selectively disabled to allow immediate delivery of data in upstream transactions.

When an upstream transaction memory write command start address falls within this range, the PCI bridge will not utilize a FIFO buffer during the transfer of data. Thus requiring the initiator's write transaction, and the resulting target's write transaction to be synchronized, that is to operate together in lock step. This method guarantees immediate delivery of the data to select targets.

If the upstream transaction memory write command start address does not fall within the selected address range, the bus bridge circuit of the present invention continues to provide buffering or posting for the upstream transaction memory write commands. Thus, start addresses that do not fall within the selected address range belong to targets that do not require immediate delivery of upstream transaction data.

It is therefore an object of the present invention to provide a bus bridge circuit that selectively disables prefetch of upstream transaction memory reads for selective targets on the primary I/O bus while allowing prefetch of upstream transaction memory reads for other targets on the primary I/O bus. Thus improving system performance for upstream transaction memory read commands to prefetchable main memory.

It is a further object of the present invention to provide a bus bridge circuit that selectively disables the buffering or posting of upstream transaction memory write commands. Thus allowing immediate delivery of upstream transaction data for selected targets on the primary I/O bus while allowing buffering or posting of upstream transaction memory write commands for other targets on the primary I/O bus. Thereby improving system throughput because the system is utilizing the use of buffering or posting.

It is further another object of the present invention to provide a bus bridge circuit that uses a programmable register to store the address range, that is, the address base and limit of targets on the primary I/O bus that need the FIFO buffer selectively disabled for upstream buffering or posting of memory write transactions.

The above and other objects, aspects, features, and advantages of the present invention will become apparent from the following description and the attached drawings.

FIG. 1 is a block diagram of the bus bridge circuit in which the bus bridge circuit of the present invention is advantageously applicable;

FIG. 2 is a block diagram of the bus bridge circuit of the present invention having a configuration controller and a bridge flow circuit; and

FIG. 3 is a block diagram of the bus bridge circuit elements of the present invention.

While the invention is susceptible to various modifications and alternative forms, a specific embodiment thereof has been shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that it is not intended to limit the invention to the particular form disclosed, but on the contrary, the invention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention as defined by the appended claims.

FIG. 1 is a block diagram of the bus bridge circuit in which the bus bridge circuit 1 of the present invention is advantageously applicable. FIG. 1 shows an initiator, the secondary bus master 30, coupled to the secondary I/O bus 3. The PCI bus bridge 1 is coupled to the secondary I/O bus 3 and the primary I/O bus 4. The primary I/O bus 4 is coupled to a primary bus slave 40 that supports upstream transaction memory read prefetch and upstream transaction memory write buffering or posting. Primary I/O bus 4 is also coupled to primary bus slave 50 that supports upstream transaction memory read prefetch, but does not support upstream transaction memory write buffering or posting. Primary I/O bus 4 is also coupled to primary bus slave 60 that does not support upstream transaction memory read prefetch but does support upstream transaction memory write buffering or posting.

In an example of the present invention, secondary bus master 30 initiates an upstream transaction memory read prefetch and primary bus slave 60 is the target. In this example, primary bus slave 60 does not support upstream transaction memory read prefetch. The present invention provides a programmable address register, in configuration space, to selectively disable read prefetch of upstream transaction memory data for targets, such as primary bus slave 60, that do not support read prefetch of upstream read transactions.

In this case, the programmable address register contains the address of primary bus slave 60. Thus, the PCI bus bridge will not read more data than that requested by the secondary bus master 30.

The address of primary bus slave 40, or primary bus slave 50, however, is not stored within the programmable address register, in configuration space, because these targets support upstream transaction memory read prefetch. Thus, if primary bus slave 40, or primary bus slave 50 is the target of an upstream transaction memory read prefetch command, the present invention continues to allow read prefetch of upstream transaction memory data for these targets.

In another example of the present invention, the secondary bus master 30 initiates an upstream transaction memory write command to primary bus slave 50. In this example, primary bus slave 50 does not support upstream transaction memory write buffering or posting. The present invention provides a programmable address register, in configuration space, to selectively disable buffering or posting during the transfer of upstream transaction memory write commands for targets, such as primary bus slave 50, that do not support upstream transaction write buffering or posting. The present invention thus allows immediate delivery of data in upstream memory write transactions to primary bus slave 50.

The address of primary bus slave 40 or primary bus slave 60 is not stored in the programmable address register, within configuration space, because these targets support upstream transaction memory write buffering or posting. Thus, the present invention allows buffering or posting of upstream transaction memory write commands to primary bus slave 40 or primary bus slave 60 because these targets do not require immediate delivery of data in upstream transactions.

FIG. 2 is a block diagram showing the bus bridge circuit 1. The bus bridge circuit 1 controls the bi-directional flow of data between the secondary I/O bus port 2 and the primary I/O bus port 7. For example, a host system (not shown) connected via a secondary I/O bus 3 to a RAID subsystem may access targets within the RAID subsystem, such as a cache buffer (not shown) connected to a primary I/O bus 4 and vice versa.

The bus bridge circuit comprising a configuration controller 9, a bridge flow circuit 8, a secondary I/O bus port 2 connecting to the secondary I/O bus 3, and a primary I/O bus port 7 connecting to the primary I/O bus 4. The configuration controller 9 stores the address ranges for configuring use of the bridge flow circuit 8 for upstream data transactions.

The preferred embodiment uses a standard industry PCI bus. Accordingly, the bus bridge circuit accommodates PCI standards and can be referred to as a PCI bus bridge circuit.

The configuration controller 9 stores the address ranges used to determine the targets on the primary I/O bus that do not allow upstream memory read prefetch transactions or targets on the primary I/O bus that should be guaranteed immediate delivery of upstream memory write transactions. The present invention uses a PCI configuration controller that consists of 256 byte configuration space for each PCI unit. The configuration space is divided into a 64 byte header that contains information to identify the PCI unit and 192 bytes remain for the PCI unit to use as desired.

The bridge flow circuit consists of an upstream flow controller 5 and a downstream flow controller 6. The upstream flow controller directs the data flow for transactions from the secondary I/O bus port 2 to the primary I/O bus port 7. The downstream flow controller directs the data flow for transactions from the primary I/O bus port 7 to the secondary I/O bus port 2.

FIG. 3 is a block diagram showing the bus bridge circuit elements. The upstream flow controller 5 includes a buffer 14 for storing data exchanged between the secondary bus port 2 and the primary bus port 7. The buffer 14 is a first-in-first-out (FIFO) buffer. The buffer is coupled to an upstream primary master circuit 13 and an upstream secondary target circuit 11.

The upstream primary master circuit 13 is coupled to the primary I/O bus port 7. The upstream primary master circuit 13 performs data bursts when the PCI bus is in burst mode and sends or receives upstream transaction data via the primary I/O bus 4. The upstream secondary target circuit reads or writes data from the secondary I/O bus 3 to the bus bridge 1. The upstream secondary target 11 circuit is coupled to the secondary I/O bus port 2.

The downstream flow controller 6 includes a downstream secondary master circuit 16 coupled to a downstream primary target circuit 17. The downstream secondary master circuit 16 is coupled to the secondary I/O port 2. The downstream secondary master circuit performs data bursts when the PCI bus is in burst mode and sends or receives downstream transaction data via the secondary I/O bus 3. The downstream primary target circuit is coupled to the primary I/O port 7 and reads or writes downstream transaction data from the primary I/O bus 7 to the bus bridge 1.

The configuration controller 9 comprises of at least one register 25, 27 for configuring use of the bridge flow circuit 8 for upstream data transactions. The address range is used to configure the upstream primary bus master 13 for upstream transaction memory reads or writes for targets falling within the address range without effecting the use of the upstream primary bus master 13 for upstream transaction memory read or writes of other targets.

The programmable register 25 stores an address base and limit of targets on the primary I/O bus that do not support read prefetch of upstream transaction memory data. The present invention uses the stored address base and limit to selectively configure the upstream primary bus master 13 to prevent read prefetch of upstream memory data for the targets that fall within the address range. The upstream primary master 13 disables the prefetch capability of the busmaster for a select target on the primary I/O bus by preventing bursting and converting a Memory Read Multiple command or Memory Read Line command to a non-prefetch Memory Read command.

If the address of a target does not fall within the address range programmed in the register, the upstream primary master 13 allows the requested read prefetch of upstream memory data for the target. Thus, the bus bridge circuit 1 continues to allow prefetch of upstream memory data for those targets on the primary I/O bus whose prefetch capability is still enabled.

The present invention also allows the FIFO buffer 14 to be separately configurable. If prefetch is enabled and the FIFO buffer is enabled, the upstream primary master 13 prefetches multiple data locations and stores the data in the FIFO buffer 14. Otherwise if the FIFO buffer 14 is not enabled, the upstream primary master 13 prefetches only one data location after each read request.

The programmable register 27 additionally stores the address base and limit of targets on the primary I/O bus that should be guaranteed immediate delivery of upstream transaction data. For these targets, the buffering or posting of upstream transaction memory write commands is selectively disabled to allow immediate delivery of upstream transaction data. For example when an upstream transaction memory write command start address falls within this address range, the upstream primary master 13 will not utilize the FIFO buffer 14 during the transfer of data. The initiating secondary memory write transaction and the resulting primary bus memory write transaction occur sequentially, that is, in lock step. This method guarantees timely delivery of the data and immediate return of write transfer status for the initiating external secondary PCI bus master.

Otherwise, when the address of a device does not fall within the address range programmed in the register, the present invention allows, that is, enables the buffering or posting of upstream transaction memory write commands thereby eliminating lock step delivery of upstream transaction data. Thus, the present invention provides immediate delivery of upstream transaction data for select targets and buffering/posting of upstream transaction memory write commands for those targets on the primary I/O bus that do not require immediate delivery of upstream transaction data.

As in prior PCI bus bridges, if necessary, prefetch of upstream transaction memory reads and buffering or posting of upstream transaction memory writes for all targets may be globally disabled. As is in prior PCI bus bridges, this is accomplished by providing a global prefetch disable control bit, in the configuration controller 9, to prevent blind prefetch of upstream transaction memory reads. Additionally, as in prior PCI bus bridges, the present invention provides a global write buffer or posting disable control bit, in the configuration controller 9, to prevent write buffering or posting.

While the invention has been illustrated and described in detail in the drawings and foregoing description, such illustration and description is to be considered as exemplary and not restrictive in character, it being understood that only the preferred embodiment and minor variants thereof have been shown and described and that all changes and modifications that come within the spirit of the invention are desired to be protected.

Corrigan, Brian E., Rymph, Alan D.

Patent Priority Assignee Title
10289569, May 06 2003 Renesas Electronics Corporation Information processing device and processor
10749706, Jun 14 2016 MELEXIS TECHNOLOGIES NV Local interconnect network bus architecture
10983924, May 06 2003 Renesas Electronics Corporation Information processing device and processor
11809316, Jun 01 2018 ARM Limited Speculation-restricted memory region type
11853219, Feb 17 2021 Samsung Electronics Co., Ltd. Storage controller having data prefetching control function, operating method of storage controller, and operating method of storage device
6145044, Mar 19 1998 Mitsubishi Denki Kabushiki Kaisha PCI bus bridge with transaction forwarding controller for avoiding data transfer errors
6173351, Jun 15 1998 Oracle America, Inc Multi-processor system bridge
6256689, Jun 11 1998 RPX Corporation Bus system expandable by connection of a bus bridge circuit
6282626, Jul 15 1999 Hewlett Packard Enterprise Development LP No stall read access-method for hiding latency in processor memory accesses
6510471, Sep 09 1999 International Business Machines Corporation Method for choosing device among plurality of devices based on coherncy status of device's data and if device supports higher-performance transactions
6691200, May 01 2001 DIODES INCORPORATED Multi-port PCI-to-PCI bridge with combined address FIFOs but separate data FIFOs for concurrent transactions
6792496, Aug 02 2001 Intel Corporation Prefetching data for peripheral component interconnect devices
6973528, May 22 2002 International Business Machines Corporation Data caching on bridge following disconnect
7039747, Dec 18 2003 Cisco Technology, Inc. Selective smart discards with prefetchable and controlled-prefetchable address space
7096307, Dec 18 2002 SHENZHEN XINGUODU TECHNOLOGY CO , LTD Shared write buffer in a peripheral interface and method of operating
7107384, Mar 01 2004 DIODES INCORPORATED Dynamic PCI-bus pre-fetch with separate counters for commands of commands of different data-transfer lengths
7350029, Feb 10 2005 International Business Machines Corporation Data stream prefetching in a microprocessor
7380066, Feb 10 2005 International Business Machines Corporation Store stream prefetching in a microprocessor
7484028, Dec 20 2005 SOCIONEXT INC Burst-capable bus bridges for coupling devices to interface buses
7716427, Feb 10 2005 International Business Machines Corporation Store stream prefetching in a microprocessor
7904661, Feb 10 2005 International Business Machines Corporation Data stream prefetching in a microprocessor
8566496, Dec 03 2010 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Data prefetch in SAS expanders
9798679, May 06 2003 Renesas Electronics Corporation Information processing device and processor
Patent Priority Assignee Title
4965723, Oct 23 1987 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Bus data path control scheme
5083260, Feb 29 1988 PFU Limited Bus arbitration system for concurrent use of a system bus by more than one device
5113369, Jul 26 1985 Kabushiki Kaisha Toshiba 32-bit personal computer using a bus width converter and a latch for interfacing with 8-bit and 16-bit microprocessors
5257391, Aug 16 1991 TAIWAN SEMICONDUCTOR MANUFACTURING CO , LTD Disk controller having host interface and bus switches for selecting buffer and drive busses respectively based on configuration control signals
5263139, May 19 1992 Sun Microsystems, Inc Multiple bus architecture for flexible communication among processor modules and memory subsystems and specialized subsystems
5301281, Jun 26 1991 SAMSUNG ELECTRONICS CO , LTD Method and apparatus for expanding a backplane interconnecting bus in a multiprocessor computer system without additional byte select signals
5333277, Jan 10 1992 Exportech Trading Company Data buss interface and expansion system
5345565, Mar 13 1991 TAIWAN SEMICONDUCTOR MANUFACTURING CO , LTD Multiple configuration data path architecture for a disk array controller
5353415, Oct 02 1992 Hewlett-Packard Company Method and apparatus for concurrency of bus operations
5379384, Jun 05 1992 Intel Corporation Configuration data loopback in a bus bridge circuit
5392407, Dec 24 1992 TRANSPACIFIC DIGITAL SYSTEMS, LLC Multi-port processor with peripheral component interconnect port and rambus port
5394528, Nov 05 1991 Mitsubishi Denki Kabushiki Kaisha Data processor with bus-sizing function
5396602, May 28 1993 International Business Machines Corp Arbitration logic for multiple bus computer system
5522050, May 28 1993 BHP Petroleum PTY LTD Bus-to-bus bridge for a multiple bus information handling system that optimizes data transfers between a system bus and a peripheral bus
5533204, Apr 18 1994 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Split transaction protocol for the peripheral component interconnect bus
5548730, Sep 20 1994 Intel Corporation Intelligent bus bridge for input/output subsystems in a computer system
5557758, Nov 30 1994 Lenovo PC International Bridge between two buses of a computer system that determines the location of memory or accesses from bus masters on one of the buses
5559968, Mar 03 1995 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Non-conforming PCI bus master timing compensation circuit
5560022, Jul 19 1994 Intel Corporation Power management coordinator system and interface
5574937, Jan 30 1995 Intel Corporation Method and apparatus for improving instruction tracing operations in a computer system
5581714, May 28 1993 International Business Machines Corporation Bus-to-bus read prefetch logic for improving information transfers in a multi-bus information handling system (bus-to-bus bridge for a multiple bus information handling system that optimizes data transfers between a system bus and a peripheral bus)
5586268, Mar 03 1995 ADVANCED SYSTEM PRODUCTS, INC Multiple peripheral adapter device driver architecture
5590377, Jun 07 1995 SAMSUNG ELECTRONICS CO , LTD Automatic control of distributed DMAs in a PCI bus system supporting dual ISA buses
5594882, Jan 04 1995 Intel Corporation PCI split transactions utilizing dual address cycle
5608876, May 22 1995 IBM Corporation Add-in board with enable-disable expansion ROM for PCI bus computers
5631912, Dec 19 1995 SAMSUNG ELECTRONICS CO , LTD High impedance test mode for JTAG
5632021, Oct 25 1995 Cisco Technology, Inc Computer system with cascaded peripheral component interconnect (PCI) buses
5634033, Dec 16 1994 TAIWAN SEMICONDUCTOR MANUFACTURING CO , LTD Disk array storage system architecture for parity operations simultaneous with other data operations
5644470, Nov 02 1995 International Business Machines Corporation Autodocking hardware for installing and/or removing adapter cards without opening the computer system cover
5664122, Nov 12 1993 Intel Corporation Method and apparatus for sequencing buffers for fast transfer of data between buses
5771387, Mar 21 1996 Intel Corporation Method and apparatus for interrupting a processor by a PCI peripheral across an hierarchy of PCI buses
EP489504,
EP631241,
EP707357,
EP756235,
WO9314455,
/////////////
Executed onAssignorAssigneeConveyanceFrameReelDoc
Sep 11 1997RYMPH, ALAN D SYMBIOS LOGIC INC ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0088040993 pdf
Sep 11 1997CORRIGAN, BRIAN E SYMBIOS LOGIC INC ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0088040993 pdf
Sep 12 1997LSI Logic Corporation(assignment on the face of the patent)
Dec 10 1997SYMBIOS LOGIC INC SYMBIOS, INC CHANGE OF NAME SEE DOCUMENT FOR DETAILS 0090890936 pdf
Sep 22 1998SYMBIOS, INC LSI Logic CorporationASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0095000554 pdf
Apr 06 2007LSI Logic CorporationLSI CorporationCHANGE OF NAME SEE DOCUMENT FOR DETAILS 0331020270 pdf
May 06 2014Agere Systems LLCDEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENTPATENT SECURITY AGREEMENT0328560031 pdf
May 06 2014LSI CorporationDEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENTPATENT SECURITY AGREEMENT0328560031 pdf
Aug 14 2014LSI CorporationAVAGO TECHNOLOGIES GENERAL IP SINGAPORE PTE LTD ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0353900388 pdf
Feb 01 2016DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENTAgere Systems LLCTERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS RELEASES RF 032856-0031 0376840039 pdf
Feb 01 2016DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENTLSI CorporationTERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS RELEASES RF 032856-0031 0376840039 pdf
Feb 01 2016AVAGO TECHNOLOGIES GENERAL IP SINGAPORE PTE LTD BANK OF AMERICA, N A , AS COLLATERAL AGENTPATENT SECURITY AGREEMENT0378080001 pdf
Jan 19 2017BANK OF AMERICA, N A , AS COLLATERAL AGENTAVAGO TECHNOLOGIES GENERAL IP SINGAPORE PTE LTD TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS0417100001 pdf
Date Maintenance Fee Events
Nov 14 2002M1551: Payment of Maintenance Fee, 4th Year, Large Entity.
May 14 2007M1552: Payment of Maintenance Fee, 8th Year, Large Entity.
May 14 2007M1555: 7.5 yr surcharge - late pmt w/in 6 mo, Large Entity.
Apr 10 2008ASPN: Payor Number Assigned.
Apr 10 2008RMPN: Payer Number De-assigned.
May 07 2011M1553: Payment of Maintenance Fee, 12th Year, Large Entity.


Date Maintenance Schedule
Nov 09 20024 years fee payment window open
May 09 20036 months grace period start (w surcharge)
Nov 09 2003patent expiry (for year 4)
Nov 09 20052 years to revive unintentionally abandoned end. (for year 4)
Nov 09 20068 years fee payment window open
May 09 20076 months grace period start (w surcharge)
Nov 09 2007patent expiry (for year 8)
Nov 09 20092 years to revive unintentionally abandoned end. (for year 8)
Nov 09 201012 years fee payment window open
May 09 20116 months grace period start (w surcharge)
Nov 09 2011patent expiry (for year 12)
Nov 09 20132 years to revive unintentionally abandoned end. (for year 12)