Broadcasting data across a bus in which data transmission can be delayed if a snooping device is not ready to receive
AssigneeAspex Technology Limited
InventorMartin Whitaker
Life of this patent
Estimating the term…
Abstract
A system and method of broadcasting data to multiple targets across a system bus, such as the peripheral component interconnect (PCI) bus, that does not normally support broadcast transfers, in which one target responds to the bus transaction and the remaining targets listen in on the bus transaction to receive data from the system bus. The responding target stalls the bus transaction when any of the listening targets communicate to the responding target that they are temporarily unable to accept the data on the bus.
Claims20
A method of broadcasting data to multiple devices across a system bus that does not normally support broadcast transfers, the method comprising:
- establishing handshaking between a first device on the system bus and a second device on the system bus;
- transmitting data over the system bus from the first device to the second device, in response to handshaking being established;
- receiving the data at the second device and at one or more other devices on the system bus;
- determining, by the one or more other devices, that the one or more other devices are unable to continue receiving the data at the rate at which the data is being transmitted;
- receiving, by the second device, an indication of the determination;
- transmitting a signal over the system bus from the second device to the first device, in response to receiving the indication;
- and
- stalling, by the first device, the transmission of the data over the system bus in response to the first device receiving the signal, wherein handshaking remains established between the first device and the second device during the stalling of the transmission.
A system for broadcasting data to multiple devices across a system bus comprising:
- a first device that transmits data to a second device over a common data line after establishing handshaking with the second device;
- one or more other devices that also receive the data from the common data line, wherein the one or more other devices provide an indication to the second device that the one or more other devices are unable to continue receiving the data at the rate at which the data is being transmitted;
- wherein the second device transmits a signal to the first device over the common data line, in response to receiving the indication;
- wherein the first device stalls the transmission of the data, in response to receiving the signal;
- and
- wherein handshaking remains established between the first device and the second device during the stalling of the transmission.
A system for broadcasting data to multiple devices across a system bus comprising:
- a first device that transmits data to a second device over a common data line after establishing handshaking with the second device;
- one or more other devices that also receive the data from the common data line and do not transmit data on the common data line while handshaking is established between the first device and the second device;
- one or more device busy lines connected to the one or more other devices that differ from the common data line;
- a logical OR gate connected to the one or more device busy lines;
- and
- a bus stall line that connects the logical OR gate and the second device;
- wherein at least one of the one or more other devices transmits a device busy signal to the OR gate over at least one of the device busy lines, if the at least one device is unable to continue receiving the data at the rate at which the data is being transmitted;
- wherein the logical OR gate receives the one or more device busy lines and outputs an indication on the bus stall line if the device busy signal is present on the one or more device busy lines;
- wherein the second device transmits a signal to the first device over the common data line, in response to receiving the stall signal;
- wherein the first device stalls the transmission of the data, in response to receiving the signal;
- and
- wherein handshaking remains established between the first device and the second device during the stalling of the transmission.
Dependencies are inferred from the claim text.