1. Field of the Invention
The invention generally relates to a method for communication using SGPIO, and more particularly, to a method for communication between SAS expanders in a SAS JBOD product.
2. Description of the Related Art
Referring to
For SAS JBOD products, communication between I/O control cards needs to be achieved for concern of dual-card application. In order to guarantee high communication performance, two communication paths, such as inter integrated circuit (I2C) bus or universal asynchronous receiver transmitter (UART) bus, are commonly used. However, the I2C or USRT buses of the currently available SAS expanders cannot satisfy the requirements for high communication performance. For I2C bus as example, the SAS expander would not work if the only communication path of the I2C bus malfunctions.
It is an object of the invention to provide a SGPIO bus communication system in which when the SGPIO is idle, it can be used for communication between two SAS expanders, as an optional route for dual-card communication to solve the problem of inadequate bus space for I2C or UART and to guarantee high communication performance for dual-card application.
In order to achieve the above and other objectives, the communication system of the invention guarantees high performance by using a SGPIO bus which is not designed for dual-card communication application, even though there is an inadequate space for I2C or UART. The SGPIO bus which is not designated for I/O communication needs synchronous transmission, for both transmitter and receiver, between the SAS expanders. Therefore, two GPIO buses are used in the invention to assist the SGPIO to achieve the synchronous transmission.
The SAS expanders which both are initiators of the SGPIO bus use the SGPIO bus to exchange data or messages. The corresponding SCLOCK pins and the respective SLOAD pins of the respective SAS expanders are not connected to each other, while a SDATAOUT pin of one expander is connected to a SDATAIN pin of the other expander and a SDATAIN pin of one expander is connected to a SDATAOUT pin of the other expander. Therefore, when one SAS expander outputs the data to its SDATAOUT pin, it also informs the other expander at the same time. Meanwhile, the other SAS expander sets its SLOAD pin at LOW so as to read the data via its SDATAIN pin. The other SAS expander transmits the data to one SAS expander in the similar way.
To provide a further understanding of the invention, the following detailed description illustrates embodiments and examples of the invention, this detailed description being provided only for illustration of the invention.
Wherever possible in the following description, like reference numerals will refer to like elements and parts unless otherwise illustrated.
With further preference to
When the expander 50 is about to write the data into the expander 60, the expander 60 will be informed in advance via one of the GPIO pins 70. After the expander 60 has been informed, the data sent from a SDATAOUT pin of the expander 50 is read via a SDATAIN pin of the expander 60. Similarly, the expander 60 is about to write the data into the expander 50, the expander 50 will be informed in advance via one of the GPIO pins 70. After the expander 50 has been informed, the data sent from a SDATAOUT pin of the expander 60 is read by a SDATAIN pin of the expander 50.
Therefore, the invention can be used for communication between two SAS expanders when the SGPIO is idle, as an optional route for dual-card communication. The SGPIO bus offers the optional route when some problems occur in I2C or UART routes, so as to enhance performance of dual-card communication.
In light of the foregoing, the invention uses SGPIO bus as an option for the communication between the two SAS expanders to guarantee high communication performance even though there is space inefficiency for I2C or UART buses. Furthermore, two GPIO buses are used respectively as receiver and transmitter of the SGPIO so as to achieve synchronous data transmission between two SAS expanders.
It should be apparent to those skilled in the art that the above description is only illustratives of specific embodiments and examples of the invention. The invention should therefore cover various modifications and variations made to the herein-described structure and operations of the invention, provided they fall within the scope of the invention as defined in the following appended claims.
Number | Date | Country | |
---|---|---|---|
60976581 | Oct 2007 | US |