Patent US5805920A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5805920A Expired / Lapsed US ⏱️ 0.0 years remaining

Direct bulk data transfers

Assignee: Hewlett Packard Enterprise Development LP
•
Filing: 1995-11-13
•
Granted: 1998-09-08
•
Expires: 2015-11-13
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A data processing system for transferring data is provided. This system includes central processing units (CPUs 20, 22, 24 and 26) and storage units (30 and 32 with 100-105 and 110-115) which are interconnected by a network (10). The CPUs (20, 22, 24 and 26) include a request process (133) and a storage process (130). The storage process (130) controls access to the storage unit (30 with 100-105 and 110-115). Software routines (220) are used to provide direct access to the storage unit (30 with 100-105 and 110-115) by the request CPU (22). The request CPU (20) is the CPU containing the request process (133). A virtual memory address for a buffer (160) of the request CPU (22) is created in the request CPU (22). The virtual memory address along with a storage unit access request are sent to the CPU (20) containing the storage process (130). A work request including the virtual memory address to sent from the storage process (130) to the storage unit (30 with 100-105 and 110-115). The data is then transferred directly between the request CPU (22) and the storage unit (30 with 100-105 and 110-115). The storage unit (30 with 100-105 and 110-115) then responds to the work request.

Inventors

  • 👤 Todd W. Sprenkle
  • 👤 Srinivasa D. Murthy
  • 👤 Anil Khatri

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 08:15
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/54; G06F9/544; G06F11/00; G06F11/07; G06F11/16; G06F11/20; G06F11/202; G06F11/2035; G06F11/2046; G06F11/2053; G06F11/2056; G06F11/2071; G06F11/2089

Claims Analysis

Total Claims: 30
Claim 1
Independent Claim 154 words
In a data processing system for transferring data in which a plurality of central processing units (CPUs) and at least one storage unit are interconnected by a network, said CPUs including a request CPU having a request process, access to said storage unit being controlled by one of said CPUs, a method of direct transfer of data between said storage unit and said request CPU, comprising the steps of: a) the request process creating a virtual memory address indicative of a memory buffer of said request CPU; b) the request process sending to said one of said CPUs said virtual memory address and a storage unit access request; c) the one of said CPUs sending to said storage unit: a work request including said virtual memory address; d) responding to said work request; and e) interfacing directly with said request CPU for the transfer of data between the storage unit and said memory buffer.
Claim 2
Dependent Claim 154 words
In a data processing system for transferring data in which a plurality of central processing units (CPUs) and at least one storage unit are interconnected by a network, said CPUs including a request CPU having a request process, access to said storage unit being controlled by one of said CPUs, a method of direct transfer of data between said storage unit and said request CPU, comprising the steps of: a) the request process creating a virtual memory address indicative of a memory buffer of said request CPU; b) the request process sending to said one of said CPUs said virtual memory address and a storage unit access request; c) the one of said CPUs sending to said storage unit: a work request including said virtual memory address; d) responding to said work request; and e) interfacing directly with said request CPU for the transfer of data between the storage unit and said memory buffer.
Claim 3
Dependent Claim 44 words
The method of direct transfer of data between said storage unit and said request CPU of claim 1, wherein said direct transfer of data allows said request CPU to read data from said storage unit into said by buffer at said virtual memory address.
Claim 4
Dependent Claim 50 words
The method of direct transfer of data between said storage unit and said request CPU of claim 2, wherein the data are transmitted in data packets, each of said data packets including a destination node identification, a source node identification, said virtual memory address, and a plurality of data words.
Claim 5
Dependent Claim 38 words
The method of direct transfer of data between said storage unit and said request CPU of claim 3, further comprising the step of advising said one of said CPUs after each packet is transmitted to said request CPU.
Claim 6
Dependent Claim 34 words
The method of direct transfer of data between said storage unit and said request CPU of claim 4, further comprising the step of checking validity of the data as received from said storage unit.
Claim 7
Dependent Claim 43 words
The method of direct transfer of data between said storage unit and said request CPU of claim 2, wherein said storage unit includes two disks with the same data, said storage unit access request including an address to one of two said disks.
Claim 8
Dependent Claim 48 words
The method of direct transfer of data between said storage unit and said request CPU of claim 1, wherein said direct access allows said request CPU to write into said storage unit, said storage unit accessing said memory buffer at said virtual address for transfer of the data.
Claim 9
Dependent Claim 50 words
The method of direct transfer of data between said storage unit and said request CPU of claim 7, wherein the data are transmitted in data packets, each of said data packets including a destination node identification, a source node identification, said virtual memory address, and a plurality of data words.
Claim 10
Dependent Claim 48 words
The method of direct transfer of data between said storage unit and said request CPU of claim 8, further comprising the step of checking validity of the data prior to storing the data in the memory buffer at said virtual memory address for access by said storage unit.
Claim 11
Dependent Claim 50 words
The method of direct transfer of data between said storage unit and said request CPU of claim 9, wherein said storage unit includes two disks for storing the same data, said direct access request including addresses to said two disks whereby data is written into both of said two disks.
Claim 12
Dependent Claim 32 words
The method of direct transfer of data between said storage unit and said request CPU of claim 1, wherein said request CPU is said one of said CPUs controlling said storage unit.
Claim 13
Dependent Claim 43 words
The method of direct transfer of data between said storage unit and said request CPU of claim 1, wherein each of said CPUs includes at least a pair of processor elements operating in lock-step, self-checking configuration, and executing substantially identical instructions substantially simultaneously.
Claim 14
Dependent Claim 32 words
The method of direct transfer of data between said storage unit and said request CPU of claim 1, further comprising the step of routing data between said CPUs and said storage units.
Claim 15
Dependent Claim 66 words
The method of direct transfer of data between said storage unit and said request CPU of claim 13, wherein said routing involves using a plurality of port means coupled to said CPUs and storage units for transferring data between said CPUs and said storage units, said port means being configured to provide simultaneous bi-directional communication between said port means and said CPUs or said storage units.
Claim 16
Dependent Claim 43 words
The method of direct transfer of data between said storage unit and said request CPU of claim 1, wherein said CPUs each include at least a pair of processor elements configured to operate in lock-step, self-checking configuration to execute a stream of instructions.
Claim 17
Dependent Claim 39 words
The method of direct transfer of data between said storage unit and said request CPU of claim 1, wherein said storage units include physical mediums for storing said data, and wherein said storage units are capable of sending messages.
Claim 18
Dependent Claim 79 words
The method of direct transfer of data between said storage unit and said request CPU of claim 16, further comprising the steps of: receiving said messages from said storage units; and determining from the information contained in said messages whether access to said physical mediums is to be granted or not; wherein a table containing a plurality of entries is utilized, each of said entries identifying a grant of access to at least a portion of said physical mediums.
Claim 19
Dependent Claim 39 words
The method of direct transfer of data between said storage unit and said request CPU of claim 17, wherein a device handle provides remote node identification information for said entries, said remote node identification information used for said determining.
Claim 20
Dependent Claim 63 words
The method of direct transfer of data between said storage unit and said request CPU of claim 18, wherein each of said plurality of entries includes identity data indicative of a corresponding one of said storage units, and wherein access to said one of said storage units is denied if said identity data and said information contained in said messages do not match.
Claim 21
Dependent Claim 54 words
The method of direct transfer of data between said storage unit and said request CPU of claim 1, wherein said storage units include storage controllers and physical mediums, said storage controllers and said physical mediums each working in pairs, wherein at least two of said storage controllers can access one of said physical mediums.
Claim 22
Dependent Claim 63 words
The method of direct transfer of data between said storage unit and said request CPU of claim 20, wherein said request CPU reads data from said physical medium in said storage unit into said buffer memory at said virtual memory address, and wherein at least four different paths are provided between said request CPU and said physical medium for said transfer of data.
Claim 23
Dependent Claim 147 words
In a processing system including plural processing elements, each having memory, interconnected with a storage element for communication therebetween, a method of data transfer between the storage element and the plural processing elements, including the steps of: a one of the plural processing elements having a request process for requesting a data transfer by a data transfer request that includes a virtual memory address indicative of a memory location in the memory of the one of the plural processing elements; a one of the plural processing elements having a control process to initiate a data transfer with the storage element in response to receipt of the data transfer request; initiating a data transfer between the memory location and the storage element by transferring the virtual memory address from control process to the storage element in response to receipt by the control process of the data transfer request.
Claim 24
Dependent Claim 147 words
In a processing system including plural processing elements, each having memory, interconnected with a storage element for communication therebetween, a method of data transfer between the storage element and the plural processing elements, including the steps of: a one of the plural processing elements having a request process for requesting a data transfer by a data transfer request that includes a virtual memory address indicative of a memory location in the memory of the one of the plural processing elements; a one of the plural processing elements having a control process to initiate a data transfer with the storage element in response to receipt of the data transfer request; initiating a data transfer between the memory location and the storage element by transferring the virtual memory address from control process to the storage element in response to receipt by the control process of the data transfer request.
Claim 25
Dependent Claim 29 words
The method of claim 22, wherein a first one of the processing elements has the request process and a second one of the processing elements has the control process.
Claim 26
Independent Claim 130 words
A method of transferring data between a storage unit and one of plural data processor units of a processing system, the one of the plural data processor units including a memory storage element and a request process for requesting the data transfer, the system having a control process running on the plural data processor units for initiating the data transfer, the method including the steps of: sending a data transfer request from the request process to the control process, including a virtual memory address indicative of a location in the memory storage element; transferring the virtual memory address from the control process to the storage element; transferring data between the storage element and the location in the memory storage using the virtual memory address under control of the storage element.
Claim 27
Independent Claim 130 words
A method of transferring data between a storage unit and one of plural data processor units of a processing system, the one of the plural data processor units including a memory storage element and a request process for requesting the data transfer, the system having a control process running on the plural data processor units for initiating the data transfer, the method including the steps of: sending a data transfer request from the request process to the control process, including a virtual memory address indicative of a location in the memory storage element; transferring the virtual memory address from the control process to the storage element; transferring data between the storage element and the location in the memory storage using the virtual memory address under control of the storage element.
Claim 28
Dependent Claim 116 words
A processing system, comprising: a plurality of processor units, including a one processor unit having a storage memory; a storage unit; a communication medium interconnecting the plurality of processor units and the storage unit for transferring data therebetween; a request process running on the one processor unit for requesting a data transfer between the storage unit and a memory location in the storage memory by sending a data transfer request including a virtual memory address indicative of the memory location; and a control process for receiving and responding to the data transfer request to initiate the data transfer between the storage element and the memory location by providing to the storage element the virtual memory address.
Claim 29
Dependent Claim 116 words
A processing system, comprising: a plurality of processor units, including a one processor unit having a storage memory; a storage unit; a communication medium interconnecting the plurality of processor units and the storage unit for transferring data therebetween; a request process running on the one processor unit for requesting a data transfer between the storage unit and a memory location in the storage memory by sending a data transfer request including a virtual memory address indicative of the memory location; and a control process for receiving and responding to the data transfer request to initiate the data transfer between the storage element and the memory location by providing to the storage element the virtual memory address.
Claim 30
Dependent Claim 30 words
The processing system of claim 25, wherein the control process is operating on another of the plurality of processor units different from the one of the plurality of processor units.

References Cited (Backward Citations)

US4135240A Cited
US4400778A Cited
US5574849A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-09-07 2002-03-09 2002-09-08 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-09-07 2006-03-09 2006-09-08 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-09-07 2010-03-09 2010-09-08 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag