Direct memory access in a bridge for a multi-processor system

Electrical computers and digital data processing systems: input/ – Input/output data processing – Direct memory accessing

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C710S022000, C710S028000, C710S036000, C710S037000, C714S003000, C714S004110, C714S043000, C714S056000

Reexamination Certificate

active

06223230

ABSTRACT:

BACKGROUND OF THE INVENTION
This invention relates to a multi-processor computer system first and second processing sets (each of which may comprise one or more processors) communicate with an I/O device bus.
In a system with several I/O cards which can carry out DMA transfers to main memory, a mis-programmed or broken I/O card can corrupt the main memory buffers belonging to another I/O card. This is particularly undesirable in a fault-tolerant or high availability system. Accordingly, the invention finds particular, but not exclusive application to fault tolerant computer systems.
An aim of the present invention is to provide avoid or mitigate the problems mentioned above which can result from a faulty or mis-programmed I/O device making faulty DMA requests.
SUMMARY OF THE INVENTION
Particular and preferred aspects of the invention are set out in the accompanying independent and dependent claims. Combinations of features from the dependent claims may be combined with features of the independent claims as appropriate and not merely as explicitly set out in the claims.
In accordance with one aspect of the invention, there is provided a bridge for a multi-processor system. The bridge comprises bus interfaces for connection to an I/O bus of a first processing set, an I/O bus of a second processing set, and a device bus. A bridge control mechanism is configured to provide geographic addressing for devices on the device bus and to be responsive to a request from a device on the device bus for direct access to a resource of a processing set to verify that an address supplied by the device falls within a correct geographic range.
In an embodiment of the invention, therefore, it is possible to check Direct Memory Access (DMA) and Direct Virtual Memory Access (DVMA) addresses to ensure correct operation of the device DMA operations.
It should be noted that the bus interfaces referenced above need not be separate components of the bridge, but may be incorporated in other components of the bridge, and may indeed be simply connections for the lines of the buses concerned.
A different geographic address range can be allocated to each of a plurality of device slots on the device bus. A different geographic address range can also be allocated to the processor set resources (e.g., processor set memory).
In an embodiment of the invention, therefore, the bridge control mechanism is responsive to the request for direct memory access from the device on the device bus to verify that an address supplied by a device falls within the correct geographic range for the slot in which the device is located. The bridge control mechanism includes an address decoding mechanism configured to be operable to maintain geographic address mappings, and to verify geographic addresses for direct memory access. The geographic address mappings can be configured in random access memory or in a register in the bridge.
In the embodiment of the invention, a slot response register is associated with each slot on the device bus, wherein the slot response register records ownership of a device by the first processing set, the second processing set or neither processing set. The bridge control mechanism can be configured to be responsive to a direct memory access request from a device on the device bus to access the slot response register for the slot of the requesting device for identifying the owning processor set and for enabling access to the memory of the owning processor set. The slot response registers can be configured in random access memory or in a register in the bridge.
There can be more than two processor bus interfaces for connection to an I/O bus of a respective processing set.
In accordance with another aspect of the invention, there is provided a computer system comprising a first processing set having an I/O bus, a second processing set having an I/O bus, a device bus and a bridge, the bridge comprising a first processor bus interface for connection to the I/O bus of the first processing set, a second processor bus interface for connection to the I/O bus of the second processing set, a device bus interface for connection to the device bus, at least one device on the device bus, and a bridge as set out above. Each processing set may comprise at least one processor, memory and a processing set I/O bus controller. A plurality of switchable device slots may be provided on the device bus, each device slot having a respective geographic address range associated therewith.
In accordance with a further aspect of the invention, there is provided a method of operating a multi-processor system as set out above, the method comprising:
maintaining respective geographic address ranges for devices on the device bus; and
responding to a request from a device on the device bus for direct memory access to a memory of a processing set to verify that an address supplied by a device falls within a correct geographic range.
Direct memory access can be permitted to proceed where the address falls within the correct geographic range, otherwise a direct memory access request is terminated.


REFERENCES:
patent: 4627017 (1986-12-01), Blount et al.
patent: 4926322 (1990-05-01), Stimac et al.
patent: 5586253 (1996-12-01), Green et al.
patent: 5627965 (1997-05-01), Liddell et al.
patent: 5628029 (1997-05-01), Evoy
patent: 5644709 (1997-07-01), Austin
patent: 5682512 (1997-10-01), Tetrick
patent: 5751976 (1998-05-01), Okazawa et al.
patent: 5848435 (1998-12-01), Brant et al.
patent: 5953538 (1999-09-01), Duncan et al.
patent: 5991900 (1999-11-01), Garnett
patent: 0 689 146 (1995-12-01), None
Gustavson, “Introduction to the fastbus”, Microprocessors and Microsystems, vol. 10, No. 2, Mar. 1986, pp. 77-85, reprinted pp. 131-139.*
International Search Report, Application No. PCT/US99/13385, mailed Oct. 20, 1999.

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

Direct memory access in a bridge for a multi-processor system does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Direct memory access in a bridge for a multi-processor system, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Direct memory access in a bridge for a multi-processor system will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2477554

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