Data display system based on a paging signal |
| OF PREFERRED EMBODIMENTS Hereinafter, embodiments according to the present invention will be fully ... |
|
Short message service for a mobile radio network |
| The present invention is directed to a mobile radio network having a large number of mobile radio ... |
|
User interface system based on sequentially read electronic tags |
| In the modern office environment, the management of paper documents is not well coordinated with ... |
|
Machine readable label reader system with versatile response selection |
| The invention is designed for an environment in which inexpensive machine-readable label devices ("M... |
|
Radio frequency-controlled telecommunication device |
| The present invention meets this need by providing telecommunications devices and systems which ... |
|
Portable computer |
| Accordingly, a portable computer capable of wireless data communication without extra peripheral ... |
|
Method and apparatus for communications monitoring |
| As will be seen, the present invention satisfies the foregoing criteria. Stated generally, the ... |
|
Call detail reporting for lawful surveillance |
| OF THE PREFERRED EMBODIMENTS The invention involves compiling and processing call associated data, ... |
|
|
High-performance bus architecture for disk array system
| Details |
Inventors: McDonald, James Arthur; Herz, John Peter; Altman, Mitchell Allen; Smith, III, William Edward;
Assignee: 3Ware (Palo Alto, CA)
Primary Examiner: Yoo; Do Hyun
Assistant Examiner: Vital; Pierre
Attorney, Agent or Firm: Knobbe, Martens, Olson & Bear, LLP.
A high-performance RAID system for a PC comprises a controller card which controls an array of ATA disk drives. The controller card includes an array of automated disk drive controllers, each of which controls one respective disk drive. The disk drive controllers are connected to a microcontroller by a control bus and are connected to an automated coprocessor by a packet-switched bus. The coprocessor accesses system memory and a local buffer. In operation, the disk drive controllers respond to controller commands from the microcontroller by accessing their respective disk drives, and by sending packets to the coprocessor over the packet-switched bus. The packets carry I/O data (in both directions, with the coprocessor filling-in packet payloads on I/O writes), and carry transfer commands and target addresses that are used by the coprocessor to access the buffer and system memory. The packets also carry special completion values (generated by the microcontroller) and I/O request identifiers that are processed by a logic circuit of the coprocessor to detect the completion of processing of each I/O request. The coprocessor grants the packet-switched bus to the disk drive controllers using a round robin arbitration protocol which guarantees a minimum I/O bandwidth to each disk drive. This minimum I/O bandwidth is preferably greater than the sustained transfer rate of each disk drive, so that all drives of the array can operate at the sustained transfer rate without the formation of a bottleneck. |
|
DETAILED DESCRIPTION The present invention provides a high-performance architecture for a hardware-implemented RAID or other disk array system. An important benefit of the architecture is that it provides a high degree of performance (both transactional and streaming) without the need for disk drives that are based on expensive or complex disk drive interfaces. In a preferred embodiment, the architecture is embodied within a PC-based disk array system which comprises an array controller card which controls an array of ATA disk drives. The controller card includes an array of automated ATA disk drive controllers, each of which controls a single, respective ATA drive. The controller card also includes an automated coprocessor which is connected to each disk drive controller by a packet-switched bus, and which connects as a busmaster to the host PC bus. The coprocessor is also connected to a local I/O data buffer of the card. As described below, a primary function of the coprocessor is to transfer I/O data between the disk drive controllers, the system memory, and the buffer in response to commands received from the disk drive controllers. Another function of the coprocesor is to control all accesses by the disk drive controllers to the packet-switched bus, to thereby control the flow of I/O data. The controller card further includes a microcontroller which connects to the disk drive controllers and to the coprocessor by a local control bus. The microcontroller runs a control program which implements a RAID storage configuration. Because the microcontroller does not process or directly monitor the flow of I/O data (as described below), a low-cost, low-performance microcontroller can advantageously be used. In operation, the controller card processes multiple I/O requests in at-a-time, and can process multiple I/O requests without interrupting the host computer. As I/O requests are received from the host computer, the microcontroller generates drive-specific sequences of controller commands (based on the particular RAID configuration), and dispatches these controller commands over the local control bus to the disk drive controllers
|
|