IP Library Granted Patent US 8,327,032
Granted Patent B2
US 8,327,032 · App. 11/396,676 · Granted Dec 4, 2012

Storage system having a channel control function using a plurality of processors

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,327,032
App. No.
11/396,676
Granted
Dec 4, 2012
Kind
B2
Abstract

In order to efficiently utilize processor resources, a storage system according to this invention includes: a protocol processor; a processor; a local router; a first memory; and a disk drive. In the storage system, the protocol processor transmits, upon transmitting a frame to the host computer, information on a transmission state of the frame to the local router, and the local router determines, upon the protocol processor receiving a frame, which of the processors processes the received frame, based on which a subject the received frame requests for an access to, transfers the received frame to the determined processor, determines, upon the protocol processor transmitting a frame, which of the processors processes information on a transmission state of the frame, based on an exchange of the transmitted frame, and transfers the information on the transmission state of the frame to the determined processor.

Claims (95)

1. A storage system connected to a host computer via a channel, comprising:

a local router including a processor number information and a transfer list index/processor number information;

at least one protocol processor connected to the channel for transmitting and receiving a frame to and from the host computer, via the local router;

at least one cache memory to store write data or read data temporarily;

another processor:

wherein the frame includes a first frame which has a logical unit number identifying the logical unit to write data and a second frame which has write data;

wherein the processor number information includes a logical unit number of each logical unit and a processor number of each processor,

wherein the transfer list index/processor number information includes a list index number and a processor number,

in a write request from the host computer,

the local router:

determines a processor number to receive the first frame based on the logical unit number of the first frame and the processor number information,

transfers the received first frame to the another processor corresponding to the determined processor number;

the another processor which receives the transferred first frame, secures a storage area in the cache memory to store the write data, and creates information of indicating an address of the secured storage area as created information;

the protocol processor acquires the created information and stores the write data in the second frame to the secured storage area, based on the created information.

2. The storage system according to claim 1 , wherein:

the protocol processor gives the another processor notice of a completion, when the protocol processor acquires the created information and stores the write data in the second frame to the secured storage area based on the created information.

3. The storage system according to claim 1 comprising a first memory and a second memory

wherein

the first memory has request FIFOs,

the another processor extracts frames from the request FIFOs and the protocol processor stores frames in the request FIFOs,

the second memory has frame/message FIFO groups,

the another processor stores frames in the frame/message FIFO groups and the protocol processor extracts frames from the frame/message FIFO groups,

the first memory stores as many request FIFOs as the processors,

the second memory stores as many frame/message FIFO groups as the processors,

the respective frame/message FIFO groups include the frame FIFO and the message FIFO for each protocol processors.

4. A storage system, coupled to a host computer, comprising:

a channel adaptor comprising:

a local router including a processor number information and a transfer list index/processor number information; and

a protocol processor transmitting and receiving a data between the host computer and the local router; and

at least one cache memory to store write data or read data temporarily;

a plurality of storage nodes including a processor and a disk drive;

wherein each of storage nodes provides the disk drive to the host computer as a logical unit,

another processor;

wherein a frame of the data includes a first frame which has logical unit number identifying the logical unit to write data and a second frame which has write data;

wherein the processor number information includes the logical unit number of each logical unit and a processor number of each processor,

wherein the transfer list index/processor number information includes a list index number and a processor number, in a write request from the host computer,

the local router

determines a processor number to receive the first frame based on the logical unit number of the first frame and the processor number information,

transfers the received first frame to the another processor corresponding to the determined processor number,

the another processor which receives the transferred first frame, secures a storage area in the cache memory to store the write data, and creates information of indicating an address of the secured storage area as created information;

the protocol processor acquires the created information and stores the write data in the second frame to the secured storage area, based on the created information;

in case that a transmission destination address is a message FIFO,

extracts an index number of the data from the data,

determines the processor number of the data by referring to the list index number of the data and the transfer list index/processor number information, and

transfers the data to the processor of the processor number.

5. The storage system according to claim 4 ,

wherein the plurality of storage nodes furthermore includes a storage node cache memory, and

wherein, in case that the transmission destination address of the data is the storage node cache memory, the local router transfers the data to the storage node cache memory.

6. The storage system according to claim 5 ,

wherein, in case that the transmission destination address is a request FIFO, the local router extracts the list index number of the data from the data and sends the list index number of the data from the data to the protocol processor.

7. The storage system according to claim 6 ,

wherein the local router, upon receipt of the data whose transmission destination address is a request FIFO, updates the transfer list index/processor number information.

8. The storage system according to claim 7 ,

wherein the processor number information furthermore includes a S_ID and a LBA, and

wherein the local router, in case that the transmission destination address is a frame FIFO, furthermore extracts a S_ID of the data and a LBA of the data and determines the processor number of the data furthermore by referring to the S_ID of the data and the LBA of the data.

9. The storage system according to claim 8 ,

wherein the processor number information accommodates one entry to include a plurality of the processor numbers which couple to a same peripheral circuit.

10. A data transfer method for a storage system coupled to a host computer which includes:

a channel adaptor including:

a local router including a processor number information and a transfer list index/processor number information; and

a protocol processor transmitting and receiving a data between the host computer and the local router; and

at least one cache memory to store write data or read data temporarily;

a plurality of storage nodes including a processor and a disk drive;

wherein each of storage nodes provides the disk drive to the host computer as a logical unit,

another processor;

wherein a frame of the data includes a first frame which has logical unit number identifying the logical unit to write data and a second frame which has write data;

wherein the processor number information includes the logical number of each logical unit and a processor number of each processor, and

wherein the transfer list index/processor number information includes a list index number and a processor number, in a write request from the host computer,

the data transfer method for the storage system comprising:

determining a processor number to receive the first frame based on the logical unit number of the first frame and the processor number information,

transferring the received first frame to the another processor corresponding to the determined processor number;

the another processor which receives the transferred first frame, secures a storage area in the cache memory to store the write data, and creates information of indicating an address of the secured storage area as created information;

the protocol processor acquires the created information and stores the write data in the second frame to the secured storage area, based on the created information;

in case that a transmission destination address is a message FIFO,

extracting the index number of the data from the data;

determining the processor number of the data by referring to the list index number of the data and the transfer list index/processor number information; and

transferring the data to the processor of the processor number.

11. The data transfer method for the storage system according to claim 10 ,

wherein the plurality of storage nodes furthermore includes a storage node cache memory, and

furthermore comprising transferring the data to the storage node cache memory, in case that the transmission destination address of the data is the storage node cache memory.

12. The data transfer method for the storage system according to claim 11 ,

furthermore comprising:

in case that the transmission destination address is a request FIFO,

extracting the list index number of the data from the data, and

sending the list index number of the data from the data to the protocol processor.

13. The data transfer method for the storage system according to claim 12 ,

furthermore comprising updating the transfer list index/processor number information, upon receipt of the data whose transmission destination address is a request FIFO.

14. The data transfer method for the storage system according to claim 13 ,

wherein the processor number information furthermore includes a S_ID and a LBA,

furthermore comprising:

in case that the transmission destination address is a frame FIFO,

extracting a S_ID of the data and a LBA of the data, and

determining the processor number of the data furthermore by referring to the S_ID of the data and the LBA of the data.

15. The data transfer method for the storage system according to claim 14 ,

wherein the processor number information accommodates one entry to include a plurality of the processor numbers which couple to a same peripheral circuit.

Assignments (2)
COMPANY SPLIT Recorded Aug 20, 2024
From: HITACHI, LTD.
To: HITACHI VANTARA, LTD.
Reel/Frame 069518/0761 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2006
From: NAKAMURA, SHUJI; FUJIBAYASHI, AKIRA; HOSOYA, MUTSUMI
To: HITACHI, LTD.
Reel/Frame 017751/0218 →