← Back to Patent Explorer
US5485624A Expired / Lapsed US ⏱️ 0.0 years remaining

Co-processor monitoring address generated by host processor to obtain DMA parameters in the unused portion of instructions

Assignee: Hewlett Packard Development Co LP
•
Filing: 1994-07-01
•
Granted: 1996-01-16
•
Expires: 2014-07-01
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A co-processor works in conjunction with a primary processor which does not natively support co-processing. In a memory which provides instructions for the primary processor, parameters for use by the co-processor are embedded within the instructions. This is done by placing the parameters in fields which are unused by the primary processor. When the primary processor accesses the local memory, the addresses generated by the primary processor are monitored by the co-processor. When the co-processor detects a pre-determined combination within an address generated by the primary processor, the co-processor accesses the data sent from the local memory to the primary processor. The co-processor then extracts the parameters embedded within the unused fields of the accessed data.

Inventors

  • 👤 Joe H. Steinmetz
  • 👤 Eric G. Tausheck

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-10 00:53
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/38; G06F9/3877; G06F9/3879; G06F9/3881; G06F9/30145; G06F9/3016; G06F9/30167; G06F9/30181; G06F9/30185

Claims Analysis

Total Claims: 24
Claim 1
Independent Claim 156 words
A method for obtaining parameters for a co-processor from data accessed by a primary processor from a local memory, the method comprising the steps of: (a) monitoring, by the co-processor, of addresses generated by the primary processor, the addresses being for accessing memory locations within the local memory; (b) upon detecting a pre-determined bit pattern within an address generated by the primary processor, accessing, by the co-processor, a parameter within a portion of data addressed by the primary processor, the portion of the data being unused by the primary processor, the co-processor accessing the data as the data is transferred from the local memory to the primary processor, wherein the co-processor is used to perform DMA between an interface card and a host computer, the parameters describe a DMA transaction and the parameters are loaded by the co-processor into DMA registers, the primary processor, the co-processor and the local memory all residing within the interface card.
Claim 2
Independent Claim 156 words
A method for obtaining parameters for a co-processor from data accessed by a primary processor from a local memory, the method comprising the steps of: (a) monitoring, by the co-processor, of addresses generated by the primary processor, the addresses being for accessing memory locations within the local memory; (b) upon detecting a pre-determined bit pattern within an address generated by the primary processor, accessing, by the co-processor, a parameter within a portion of data addressed by the primary processor, the portion of the data being unused by the primary processor, the co-processor accessing the data as the data is transferred from the local memory to the primary processor, wherein the co-processor is used to perform DMA between an interface card and a host computer, the parameters describe a DMA transaction and the parameters are loaded by the co-processor into DMA registers, the primary processor, the co-processor and the local memory all residing within the interface card.
Claim 3
Dependent Claim 30 words
A method as in claim 1 wherein the predetermined bit pattern is an assertion of at least one memory address line not needed to address data within the local memory.
Claim 4
Dependent Claim 45 words
A method as in claim 1 wherein, in step (b), the data addressed by the address is an instruction for execution by the primary processor and wherein the portion of the instruction being unused by the primary processor is an unused field of the instruction.
Claim 5
Dependent Claim 14 words
A method as in claim 3 wherein the instruction is a no operation instruction.
Claim 6
Dependent Claim 25 words
A method as in claim 1 wherein different predetermined bit patterns within an address indicate different locations of parameters in unused fields of an instruction.
Claim 7
Independent Claim 169 words
A method for obtaining parameters for a co-processor from data accessed by a primary processor from a local memory, the method comprising the steps of: (a) monitoring, by the co-processor, of addresses generated by the primary processor, the addresses being for accessing memory locations within the local memory; (b) upon detecting a pre-determined bit pattern within an address generated by the primary processor, accessing, by the co-processor, a parameter within a portion of an instruction addressed by the primary processor, the portion of the instruction being unused by the primary processor, wherein the co-processor is used to perform DMA between an interface card and a host computer, the parameters describe a DMA transaction and the parameters are loaded by the co-processor into DMA registers, the primary processor, the co-processor and the local memory all residing within the interface card and wherein different predetermined bit patterns within an address indicate different sequences of the parameters, the parameters being embedded in information sent from the local memory to the primary processor.
Claim 8
Independent Claim 169 words
A method for obtaining parameters for a co-processor from data accessed by a primary processor from a local memory, the method comprising the steps of: (a) monitoring, by the co-processor, of addresses generated by the primary processor, the addresses being for accessing memory locations within the local memory; (b) upon detecting a pre-determined bit pattern within an address generated by the primary processor, accessing, by the co-processor, a parameter within a portion of an instruction addressed by the primary processor, the portion of the instruction being unused by the primary processor, wherein the co-processor is used to perform DMA between an interface card and a host computer, the parameters describe a DMA transaction and the parameters are loaded by the co-processor into DMA registers, the primary processor, the co-processor and the local memory all residing within the interface card and wherein different predetermined bit patterns within an address indicate different sequences of the parameters, the parameters being embedded in information sent from the local memory to the primary processor.
Claim 9
Dependent Claim 136 words
A co-processor which obtains parameters which describe a DMA transaction from data accessed by a primary processor from a local memory, the co-processor comprising: monitoring means for monitoring addresses generated by the primary processor, the addresses being generated by the primary processor for accessing data within the local memory; and, accessing means, coupled to the monitoring means, for, upon the monitoring means detecting a pre-determined bit pattern within an address generated by the primary processor, accessing a parameter within a portion of the data accessed by the primary processor from the local memory, the portion of the data being unused by the primary processor, the accessing means accessing the data as the data is transferred from the local memory to the primary processor, wherein the accessed parameter is loaded by the co-processor into a DMA register.
Claim 10
Dependent Claim 136 words
A co-processor which obtains parameters which describe a DMA transaction from data accessed by a primary processor from a local memory, the co-processor comprising: monitoring means for monitoring addresses generated by the primary processor, the addresses being generated by the primary processor for accessing data within the local memory; and, accessing means, coupled to the monitoring means, for, upon the monitoring means detecting a pre-determined bit pattern within an address generated by the primary processor, accessing a parameter within a portion of the data accessed by the primary processor from the local memory, the portion of the data being unused by the primary processor, the accessing means accessing the data as the data is transferred from the local memory to the primary processor, wherein the accessed parameter is loaded by the co-processor into a DMA register.
Claim 11
Dependent Claim 30 words
A co-processor as in claim 7 wherein the pre-determined bit pattern is an assertion of at least one memory address line not needed to address data within the local memory.
Claim 12
Dependent Claim 42 words
A co-processor as in claim 7 wherein the data addressed by the address is an instruction for execution by the primary processor and wherein the portion of the instruction being unused by the primary processor is an unused field of the instruction.
Claim 13
Dependent Claim 14 words
A co-processor as in claim 10 wherein the instruction is a no operation instruction.
Claim 14
Dependent Claim 31 words
A co-processor as in claim 7 wherein different predetermined bit patterns within an address indicate different sequences of parameters within the data accessed by the primary processor from the local memory.
Claim 15
Dependent Claim 25 words
A co-processor as in claim 7 wherein different predetermined bit patterns within an address indicate different locations of parameters in unused fields of an instruction.
Claim 16
Dependent Claim 128 words
A co-processor which obtains parameters from data accessed by a primary processor from a local memory, the co-processor comprising: monitoring means for monitoring addresses generated by the primary processor the addresses being generated by the primary processor for accessing data within the local memory; accessing means, coupled to the monitoring means, for, upon the monitoring means detecting a pre-determined bit pattern within an address generated by the primary processor, accessing a parameter within a portion of the data accessed by the primary processor from the local memory, the portion of the data being unused by the primary processor; and, a DMA controller which oversees DMA transactions between the local memory and a host computer, wherein the parameters describe a DMA transaction to be performed by the DMA controller.
Claim 17
Dependent Claim 128 words
A co-processor which obtains parameters from data accessed by a primary processor from a local memory, the co-processor comprising: monitoring means for monitoring addresses generated by the primary processor the addresses being generated by the primary processor for accessing data within the local memory; accessing means, coupled to the monitoring means, for, upon the monitoring means detecting a pre-determined bit pattern within an address generated by the primary processor, accessing a parameter within a portion of the data accessed by the primary processor from the local memory, the portion of the data being unused by the primary processor; and, a DMA controller which oversees DMA transactions between the local memory and a host computer, wherein the parameters describe a DMA transaction to be performed by the DMA controller.
Claim 18
Dependent Claim 14 words
A co-processor as in claim 13 wherein the monitoring means comprises an instruction/address decoder.
Claim 19
Dependent Claim 58 words
A co-processor as in claim 14 wherein the accessing means comprises: a state machine, coupled to the instruction/address decoder, the state machine receiving inputs from the instruction/address decoder; and, DMA registers, coupled to the DMA controller and to the state machine, wherein the state machine generates control signals for the loading of the parameters into the DMA registers.
Claim 20
Dependent Claim 158 words
In an interface card which interacts with a host memory through an I/O bus, a method for obtaining, by a DMA co-processor, parameters for a DMA transfer over the I/O bus, the method comprising the steps of: (a) storing, in a local memory within the interface card, scripts which contain instructions to be executed by a primary processor within the interface card, parameters for the DMA transfer being embedded within fields in the instructions, the fields being unused by the primary processor; (b) in response to addresses generated by the primary processor, forwarding the instructions from the local memory to the primary processor; (c) monitoring, by the DMA co-processor, the addresses generated by the primary processor; (d) upon detecting a pre-determined bit pattern within an address generated by the primary processor, accessing, by the co-processor, the parameters embedded within the unused fields of the instructions as the instructions are forwarded from the local memory to the primary processor.
Claim 21
Dependent Claim 158 words
In an interface card which interacts with a host memory through an I/O bus, a method for obtaining, by a DMA co-processor, parameters for a DMA transfer over the I/O bus, the method comprising the steps of: (a) storing, in a local memory within the interface card, scripts which contain instructions to be executed by a primary processor within the interface card, parameters for the DMA transfer being embedded within fields in the instructions, the fields being unused by the primary processor; (b) in response to addresses generated by the primary processor, forwarding the instructions from the local memory to the primary processor; (c) monitoring, by the DMA co-processor, the addresses generated by the primary processor; (d) upon detecting a pre-determined bit pattern within an address generated by the primary processor, accessing, by the co-processor, the parameters embedded within the unused fields of the instructions as the instructions are forwarded from the local memory to the primary processor.
Claim 22
Dependent Claim 33 words
A method as in claim 16 wherein in step (d) the predetermined bit pattern is an assertion of at least one memory address line not needed to address data within the local memory.
Claim 23
Dependent Claim 14 words
A method as in claim 17 wherein the instructions include a no operation instruction.
Claim 24
Dependent Claim 22 words
A method as in claim 16 wherein different predetermined bit patterns within an address indicate different sequences of parameters within the instructions.

References Cited (Backward Citations)

US4371932A Cited
EP0067667A2 Cited
US5021991A Cited
US5165027A Cited
US4672570A Cited
US4866665A Cited
US5109333A Cited
US5280613A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-01-15 1999-07-17 2000-01-16 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-01-15 2003-07-17 2004-01-16 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-01-15 2007-07-17 2008-01-16 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag