Method for interfacing two buses
First Claim
1. A method of controlling the transfer of information between one or more processors on a first bus and one or more processors on a second bus through an interface having an interface processor, comprising:
- writing information to be transferred across the interface from a second processor on the second bus to a first processor on the first bus to a request buffer;
writing a command from the second processor via the second bus to the interface processor to transfer the information residing in the request buffer to the first processor via the first bus;
writing information to be transferred across the interface from the first processor on the first bus to the second processor on the second bus to a response buffer; and
reading the information in the response buffer via the second bus.
4 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for interfacing buses includes a system interface processor coupled to a first bus and including a command register accessible via a second bus. A request buffer and a response buffer are provided which are accessible via the second bus and coupled to the interface processor. The request buffer can be used to store information to be transmitted from the second bus to the first via the interface processor while the response buffer can be used to store information to be transmitted from the first bus to the second bus via the interface processor. The interface processor may include a status register to indicate the status of the interface controller. The interface controller may also include a command register to receive commands transmitted over the second bus.
277 Citations
16 Claims
-
1. A method of controlling the transfer of information between one or more processors on a first bus and one or more processors on a second bus through an interface having an interface processor, comprising:
-
writing information to be transferred across the interface from a second processor on the second bus to a first processor on the first bus to a request buffer;
writing a command from the second processor via the second bus to the interface processor to transfer the information residing in the request buffer to the first processor via the first bus;
writing information to be transferred across the interface from the first processor on the first bus to the second processor on the second bus to a response buffer; and
reading the information in the response buffer via the second bus. - View Dependent Claims (2, 3, 4, 5)
generating an interrupt on the second bus in response to a request from the first processor on the first bus; and
in response to the interrupt, reading the information in the response buffer.
-
-
3. The method of claim 1, further including:
-
reviewing a status register associated with the interface to determine whether the interface is currently allocated;
if the interface is not currently allocated, then allocating control of the interface to a single client on the second bus.
-
-
4. The method of claim 2, wherein the information written to the request buffer includes a command to a processor on the first bus and wherein the information written to the response buffer is transmitted in response to the command.
-
5. The method of claim 3, further including:
setting the status register to indicate that a processor on the first bus has reported an event and generating an interrupt on the second bus.
-
6. A method of transferring information between first and second electronic buses through an interface having an interface processor, comprising:
-
reviewing a status register associated with the interface to determine whether a transfer between the buses is in process;
if a transfer between the buses is not in process, then writing information to be transferred across the interface from the second bus to the first bus to a request buffer;
writing a command to the interface processor to transfer the information residing in the request buffer to the first bus;
writing information to be transferred across the interface from the first bus to the second bus to a response buffer; and
generating a message on the second bus indicating that information has been written in the response buffer. - View Dependent Claims (7, 8, 9)
setting the status register to indicate that a device on the first bus has reported an event and generating an interrupt on the second bus.
-
-
10. A method of controlling the transfer of information between a first bus and a plurality of clients on a second bus through an interface having an interface processor, comprising:
-
reviewing a status register associated with the interface to determine whether the interface is currently allocated to one of said plurality of clients;
if the interface is not currently allocated to a client, then allocating control of the interface to a single client on the second bus;
writing information to be transferred across the interface from the second bus to the first bus to a request buffer;
writing a command to the interface processor to transfer the information residing in the request buffer to the first bus;
writing information to be transferred across the interface from the first bus to the second bus to a response buffer;
generating an interrupt on the second bus in response to a request from a device on the first bus; and
in response to the interrupt, reading the information in the response buffer from the second bus.
-
-
11. A method of controlling the transfer of information between a first bus and clients on a second bus through an interface including an interface processor, comprising:
-
placing client messages to be transferred across the interface into a queue;
reviewing a status register associated with the interface to determine whether the interface is currently allocated to a client;
if the interface is not currently allocated to a client, then assuming control of the interface;
writing a first of the client messages in the queue to a request buffer;
writing a command to the interface processor to transfer the message in the request buffer to the first bus;
determining whether a message result has arrived in a response buffer in response to a client message that was transferred to the first bus;
determining the size of the response in the response buffer;
verifying that the client associated with the response in the response buffer has allocated sufficient space to receive the response; and
writing the contents of the response buffer to a memory location allocated by the client. - View Dependent Claims (12, 13)
-
-
14. A program storage device storing instructions that when executed by a computer perform the method comprising:
-
writing information to be transferred across a bus interface having an interface processor from a second processor on a second bus to a first processor on a first bus to a request buffer;
writing a command from the second processor via the second bus to the bus interface to transfer the information residing in the request buffer to the first processor via the first bus;
writing information to be transferred across the bus interface from the first processor on the first bus to the second processor on the second bus to a response buffer; and
reading the information in the response buffer via the second bus.
-
-
15. A program storage device storing instructions that when executed by a computer perform the method comprising:
-
reviewing a status register associated with a bus interface between first and second buses to determine whether the bits interface is currently allocated to one of a plurality of clients;
if the bus interface is not currently allocated to a client, then allocating control of the bus interface to a single client on the second bus;
writing information to be transferred across the bus interface from the second bus to the first bus to a request buffer;
writing a command to a bus interface processor to transfer the information residing in the request buffer to the first bus;
receiving an interrupt on the second bus;
in response to the interrupt, reading information in a response buffer associated with the bus.
-
-
16. A method of transferring information between an I2C bus and an ISA bus through an interface, comprising:
-
reviewing a status register associated with the interface to determine whether the interface is currently allocated;
if the interface is not currently allocated, then allocating control of the interface to a client on the ISA bus;
writing information to be transferred across the interface from the ISA bus to the I2C bus to a request buffer;
writing a command to an interface processor to transfer the information residing in the request buffer to the I2C bus;
writing information to be transferred across the interface from the I2C bus to the ISA bus to a response buffer;
generating an interrupt on the ISA bus in response to a request from a device on the I2C bus; and
reading the information in the response buffer via the ISA bus.
-
Specification