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

Data processing system with CPU register to register data transfers overlapped with data transfer to and from main storage

Assignee: International Business Machines Corp
•
Filing: 1984-05-31
•
Granted: 1986-12-16
•
Expires: 2004-05-31
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The present invention is directed to a conventional data processing system having a CPU and at least one external unit such as the main storage unit acquiring data from or providing data to the CPU and I/O bus for the transfer of data between the CPU and the external unit. The apparatus of the present invention provides for transfers to and from this external unit, e.g., main storage being overlapped with a register to register data transfer routinely carried out in the CPU to implement various CPU operations and computation functions. The CPU includes apparatus for transferring data to or from said external unit over the I/O bus during synchronized time cycles. The CPU also includes local storage apparatus which comprise a plurality of registers as well as expedients for transferring data from register to register. Control apparatus controls the register to register data transfer so that such transfers are conducted during time cycles coincident with the transfer of data to or from the external storage unit. Thus, the register to register data transfers within the CPU are overlapped with the data transfers over the I/O bus to main storage. The data transfers to and from main storage are generally considerably longer that the simpler register to register data transfer. The apparatus may be operated so that several register to register transfers may take place during the time required for a transfer of data to or from the external storage unit. The present invention further includes means for dynamically determining data dependencies between the register to register transfers and the I/O bus transfers.

Inventors

  • 👤 Phillip D. Hester
  • 👤 William M. Johnson

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 20:27
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/38; G06F13/42; G06F13/4204; G06F13/4221; G06F13/423; G06F13/10; G06F13/12; G06F13/122

Claims Analysis

Total Claims: 7
Claim 1
Independent Claim 245 words
In a data processing system including a CPU, at least one external unit requiring data from or providing data to said CPU and an I/O bus for the transfer of said data between said CPU and external unit, said CPU comprising: means for executing a sequence of instructions including a first instruction; means connected to the executing means for transferring data to or from said external unit over said bus during synchronized CPU time cycles, means connected to the executing means for storing data in a plurality of registers within said CPU, means connected to the transferring means and storing means for internally transferring data within said CPU registers concurrently during the transfer of data to or from the external unit, and control means connected to the executing means, transferring means and storing means for controlling the transfer of data wherein the transfer of data between CPU registers coincides with the transfer of data to or from the external unit, said control means further including means for determining when data required for execution of a first of a sequence of instructions in said CPU has not been stored in one or more of the CPU registers as required by the first instruction and delaying the execution of the first instruction until such data is stored in the one or more registers while permitting the execution of other instructions of said sequence that do not require any data resulting from the execution of said first instruction.
Claim 2
Dependent Claim 245 words
In a data processing system including a CPU, at least one external unit requiring data from or providing data to said CPU and an I/O bus for the transfer of said data between said CPU and external unit, said CPU comprising: means for executing a sequence of instructions including a first instruction; means connected to the executing means for transferring data to or from said external unit over said bus during synchronized CPU time cycles, means connected to the executing means for storing data in a plurality of registers within said CPU, means connected to the transferring means and storing means for internally transferring data within said CPU registers concurrently during the transfer of data to or from the external unit, and control means connected to the executing means, transferring means and storing means for controlling the transfer of data wherein the transfer of data between CPU registers coincides with the transfer of data to or from the external unit, said control means further including means for determining when data required for execution of a first of a sequence of instructions in said CPU has not been stored in one or more of the CPU registers as required by the first instruction and delaying the execution of the first instruction until such data is stored in the one or more registers while permitting the execution of other instructions of said sequence that do not require any data resulting from the execution of said first instruction.
Claim 3
Dependent Claim 17 words
The data processing system of claim 1 wherein said external unit is an external data storage unit.
Claim 4
Dependent Claim 137 words
The data processing system of claim 2 wherein said control means includes means for generating data transfer commands to the external unit transfer means, means for assigning a register in said CPU storing means to which data is to be transferred, and means connected to said assigning means for storing a tag identifying said assigned register in a tag register in the control means, for comparing subsequent data transfer commands to the stored tags to determine if data for these subsequent data transfer commands includes data resulting from the external unit transfer command, for clearing said tag in the tag register when the external unit data transfer is complete, and for delaying the execution of any subsequent data transfer commands requiring data from the result of this external unit data transfer until the tag has been cleared.
Claim 5
Dependent Claim 46 words
The data processing system of claim 3 wherein said control means further includes means for cancelling a previous data transfer command in the event that a subsequent data transfer command assigns the same register assigned by the previous command before the previous command transfer is completed.
Claim 6
Dependent Claim 76 words
The data processing system of claim 4 wherein said storing means includes means for generating register to register transfer commands, and said control means further includes means for comparing said register to register transfer commands to said stored tags and for cancelling a previous data transfer command in the event that a subsequent register to register transfer command transfers data to the same register assigned by the previous command before the previous command transfer is completed.
Claim 7
Dependent Claim 31 words
The data processing system of claim 5 wherein said transfers to and from said external unit require a greater number of CPU time cycles than do said register to register transfers.

References Cited (Backward Citations)

US3401376A Cited
US3447135A Cited
US3967247A Cited
US3997896A Cited
US4095269A Cited
US4062059A Cited
US4063078A Cited
US4128882A Cited
US4130885A Cited
US4232366A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1989-12-15 1990-06-16 1990-12-16 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1993-12-15 1994-06-16 1994-12-16 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1997-12-15 1998-06-16 1998-12-16 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag