Claims Analysis
Total Claims: 18
Claim 1
Independent Claim
344 words
In a computer system having a transfer resource, a method of transferring data in a first direct memory access (DMA) channel having a first channel interleave size and a second DMA channel having a second channel interleave size using the transfer resource, the first channel interleave size specifying a maximum amount of data that must be transferred in the first DMA channel before the first DMA channel relinquishes control of the transfer resource, the method comprising the steps of: receiving a request from the first DMA channel to transfer data, the request specifying a first total transfer count indicating a first amount of data of the first DMA channel to be transferred; comparing the first total transfer count to the first channel interleave size; transferring a first slice of the first amount of data of the first DMA channel over the transfer resource to a memory if the first total transfer count is greater than the first channel interleave size, the first slice of the first amount of data of the first DMA channel having a slice amount of data equal to the first channel interleave size; granting control of the transfer resource to the second DMA channel if the second DMA channel has a second priority that is higher than a first priority of the first DMA channel such that a first amount of data of the second DMA channel can be transferred, the first amount of data of the second DMA channel having a second total transfer count; deferring transfer of a second slice of the first amount of data of the first DMA channel; comparing the second total transfer count to the second channel interleave size; and transferring a first slice of the first amount of data of the second DMA channel over the transfer resource to the memory if the second total transfer count is greater than the second channel interleave size, the first slice of the first amount of data of the second DMA channel having a second slice amount of data equal to the second channel interleave size.
Claim 2
Dependent Claim
344 words
In a computer system having a transfer resource, a method of transferring data in a first direct memory access (DMA) channel having a first channel interleave size and a second DMA channel having a second channel interleave size using the transfer resource, the first channel interleave size specifying a maximum amount of data that must be transferred in the first DMA channel before the first DMA channel relinquishes control of the transfer resource, the method comprising the steps of: receiving a request from the first DMA channel to transfer data, the request specifying a first total transfer count indicating a first amount of data of the first DMA channel to be transferred; comparing the first total transfer count to the first channel interleave size; transferring a first slice of the first amount of data of the first DMA channel over the transfer resource to a memory if the first total transfer count is greater than the first channel interleave size, the first slice of the first amount of data of the first DMA channel having a slice amount of data equal to the first channel interleave size; granting control of the transfer resource to the second DMA channel if the second DMA channel has a second priority that is higher than a first priority of the first DMA channel such that a first amount of data of the second DMA channel can be transferred, the first amount of data of the second DMA channel having a second total transfer count; deferring transfer of a second slice of the first amount of data of the first DMA channel; comparing the second total transfer count to the second channel interleave size; and transferring a first slice of the first amount of data of the second DMA channel over the transfer resource to the memory if the second total transfer count is greater than the second channel interleave size, the first slice of the first amount of data of the second DMA channel having a second slice amount of data equal to the second channel interleave size.
Claim 3
Dependent Claim
62 words
The method of claim 1, the method further comprising the steps of: granting control of the transfer resource to the first DMA channel to transfer the second slice of the first amount of data of the first DMA channel; and transferring the second slice of the first amount of data of the first DMA channel over the transfer resource to the memory.
Claim 4
Dependent Claim
47 words
The method of claim 2, the method further comprising the step of: transferring the first amount of data of the first DMA channel over the transfer resource to the memory if the first total transfer count is equal to or less than the first channel interleave size.
Claim 5
Dependent Claim
37 words
The method of claim 3, the method further comprising the step of: relinquishing control of the transfer resource by the first DMA channel when the first amount of data of the first DMA channel is fully transferred.
Claim 6
Dependent Claim
86 words
The method of claim 4, the step of relinquishing control of the transfer resource by the first DMA channel comprises the steps of: counting a first current transfer count indicating how much of the first amount of data of the first DMA channel has been transferred to the memory using the transfer resource; comparing the first current transfer count to the first total transfer count; and relinquishing control of the transfer resource if the first current transfer count is equal to the first total transfer count.
Claim 7
Dependent Claim
44 words
The method of claim 5, the method further comprising the step of transferring the first amount of data of the second DMA channel using the transfer resource if the second total transfer count is equal to or less than the second channel interleave size.
Claim 8
Dependent Claim
38 words
The method of claim 6, the method further comprising the step of relinquishing control of the transfer resource by the second DMA channel when the the first amount of data of the second DMA channel is fully transferred.
Claim 9
Dependent Claim
74 words
The method of claim 7, wherein the method comprises the further steps of: storing a first channel number specifying the first DMA channel as the destination of the first and second slices of the first amount of data of the first DMA channel; and storing a second channel number specifying the second DMA channel as the destination of the of the first slice of the first amount of data of the second DMA channel.
Claim 10
Dependent Claim
74 words
The method of claim 8, wherein the method comprises the further steps of: transferring the first slice of the first amount of data of the first DMA channel from the memory over the first DMA channel in response to the first channel number; and transferring the second slice of the first amount of data of the first DMA channel from the memory over the second DMA channel in response to the second channel number.
Claim 11
Dependent Claim
12 words
The method of claim 9, wherein the transfer resource is a bus.
Claim 12
Dependent Claim
423 words
In a computer system having a transfer resource, an apparatus for interleaving a first transfer of a first mount of data in a first direct memory access (DMA) channel with a second transfer of a second amount of data in a second DMA channel, the first DMA channel having a first channel interleave size, the Second DMA channel having a second channel interleave size, the apparatus comprising: a memory; a channel interleave controller coupled to the memory for receiving a request from the first DMA channel to transfer data, the request specifying a first total transfer count indicating a first amount of data to be transferred using the first DMA channel, for comparing the first total transfer count to the first channel interleave size, for transferring a first slice of the first amount of data over the transfer resource to the memory if the first total transfer count is greater than the first channel interleave size, the first slice having a slice amount of data equal to the first channel interleave size, for granting control of the transfer resource to the second DMA channel such that transfer of the second slice of the first amount of data is deferred if the second DMA channel has a second priority that is higher than a first priority of the first DMA channel such that the second DMA channel can transfer a second amount of data having a second total transfer count, for comparing the second total transfer count to the second channel interleave size, and for transferring a third slice of the second amount of data over the transfer resource to the memory if the second total transfer count is greater than the second channel interleave size, the third slice having a third slice amount of data equal to the second channel interleave size; and a channel sequencer, coupled to the memory and the transfer resource, the channel sequencer for storing a first channel number to indicate to the channel interleave controller that the first slice of the .first amount of data stored in the memory is to be transferred in the first DMA channel, for storing a second channel number to indicate to the channel interleave controller that data stored in the memory for the second DMA channel is to be transferred in the second DMA channel, and for storing the first channel number to indicate to the channel interleave controller that the second slice of the first amount of data stored in the memory is to be transferred in the first DMA channel.
Claim 13
Dependent Claim
423 words
In a computer system having a transfer resource, an apparatus for interleaving a first transfer of a first mount of data in a first direct memory access (DMA) channel with a second transfer of a second amount of data in a second DMA channel, the first DMA channel having a first channel interleave size, the Second DMA channel having a second channel interleave size, the apparatus comprising: a memory; a channel interleave controller coupled to the memory for receiving a request from the first DMA channel to transfer data, the request specifying a first total transfer count indicating a first amount of data to be transferred using the first DMA channel, for comparing the first total transfer count to the first channel interleave size, for transferring a first slice of the first amount of data over the transfer resource to the memory if the first total transfer count is greater than the first channel interleave size, the first slice having a slice amount of data equal to the first channel interleave size, for granting control of the transfer resource to the second DMA channel such that transfer of the second slice of the first amount of data is deferred if the second DMA channel has a second priority that is higher than a first priority of the first DMA channel such that the second DMA channel can transfer a second amount of data having a second total transfer count, for comparing the second total transfer count to the second channel interleave size, and for transferring a third slice of the second amount of data over the transfer resource to the memory if the second total transfer count is greater than the second channel interleave size, the third slice having a third slice amount of data equal to the second channel interleave size; and a channel sequencer, coupled to the memory and the transfer resource, the channel sequencer for storing a first channel number to indicate to the channel interleave controller that the first slice of the .first amount of data stored in the memory is to be transferred in the first DMA channel, for storing a second channel number to indicate to the channel interleave controller that data stored in the memory for the second DMA channel is to be transferred in the second DMA channel, and for storing the first channel number to indicate to the channel interleave controller that the second slice of the first amount of data stored in the memory is to be transferred in the first DMA channel.
Claim 14
Dependent Claim
47 words
The apparatus of claim 11, wherein the channel interleave controller maintains a channel interleave size for the first channel, the channel interleave size indicating a minimum amount of data that the first channel must transfer before the second channel will be allowed control of the transfer resource.
Claim 15
Dependent Claim
99 words
The apparatus of claim 12, wherein a first total transfer count indicating the first amount of data for the first transfer of data is received by the channel interleave controller, the channel interleave controller for comparing the first total transfer count to the first channel interleave size, and for splitting the first amount of data into the at least two slices if the first total transfer count is greater than the first channel interleave size, each of the at least two slices having an amount of data that is equal to or less than the first channel interleave size.
Claim 16
Dependent Claim
56 words
The apparatus of claim 13, wherein the channel interleave controller is for transferring control of the transfer resource to the second DMA channel after the first slice of the first amount of data is transferred in the first DMA channel if the first total transfer count is equal to or less than first channel interleave size.
Claim 17
Dependent Claim
77 words
The apparatus of claim 14, wherein the channel interleave controller keeps a first current transfer count indicating how much of the first amount of data has been transferred using the first DMA channel, the channel interleave controller for comparing the first current transfer count to the first total transfer count, and for transferring control of the transfer resource from the first DMA channel if the first current transfer count is equal to the first total transfer count.
Claim 18
Dependent Claim
13 words
The apparatus of claim 15 wherein the channel interleave controller is a processor.