Methods and devices that utilize hardware to move blocks of operating parameter data from memory to a register set
US-10339081-B2 · Jul 2, 2019 · US
US10754803B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10754803-B2 |
| Application number | US-201916450905-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 24, 2019 |
| Priority date | May 9, 2015 |
| Publication date | Aug 25, 2020 |
| Grant date | Aug 25, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A hardware based block moving controller of an active device such as an implantable medical device that provides electrical stimulation reads a parameter data from a block of memory and then writes the parameter data to a designated register set of a component that performs an active function. The block of memory may include data that specifies a size of the block of memory to be moved to the register set. The block of memory may also include data that indicates a number of triggers to skip before moving a next block of memory to the register set. A trigger that causes the block moving controller to move the data from the block of memory to the register set may be generated in various ways such as through operation of the component having the register set or by a separate timer.
Opening claim text (preview).
What is claimed is: 1. A method of controlling parameters of an active device, comprising: providing a memory device of a block moving hardware-based controller containing a plurality of block navigation data and corresponding parameter data and address value pairs in memory locations of the memory device, each block navigation datum and corresponding parameter data and address value pairs defining a block, each block navigation datum being positioned within a dedicated block navigation datum location of each corresponding block; receiving a trigger at the block moving hardware-based controller; in response to receiving the trigger, reading the block navigation datum from the dedicated block navigation datum location of a current block within the memory device and reading a number of parameter data and address value pairs corresponding to the block navigation datum read from the dedicated block navigation datum location; and upon reading the number of parameter data and address value pairs, writing the parameter data values that have been read from memory to a set of registers corresponding to the address values. 2. The method of claim 1 , further comprising: providing the memory device with an interval count at a dedicated interval count location within each block of the memory device; receiving additional triggers; and once the number of triggers that have been received since writing the parameter data values to the set of registers exceeds the interval count of the current block, then reading a next block navigation datum from the dedicated block navigation datum location of a next block that follows the current memory block in the memory device and reading a next number of parameter data and address value pairs from the next block corresponding to the block navigation datum of the next block; and upon reading the next number of parameter data and address value pairs from the next block, writing the next parameter data values that have been read from the next block in memory in response to receiving the trigger to the set of registers corresponding to the address values of the next block. 3. The method of claim 1 , wherein the set of registers are a pending set of registers and where the device implements parameters from an operating set of registers, the method further comprising: reading an update parameter data and address value pair from the current memory block that causes transfer of parameter values from the pending set of registers to the operating set of registers; and writing the update parameter data and address value pair to the pending set of registers to trigger the active device to transfer the parameter data and address value pairs from the pending set of registers to the operating set of registers at a start of a next interval. 4. The method of claim 1 , wherein providing the memory device with the plurality of block navigation data and corresponding parameter data and address value pairs to locations within the memory device comprises performing a write operation by a firmware-based device. 5. The method of claim 1 , wherein the active device is an implantable medical device. 6. The method of claim 5 , wherein the parameter data values define a stimulation waveform of the implantable medical device. 7. The method of claim 6 , wherein the parameter data values define ramping and cycling for a stimulation waveform. 8. The method of claim 6 , wherein the parameter data values define a random pulse width for a stimulation waveform. 9. The method of claim 6 , wherein the parameter data values define a repeating amplitude change for a stimulation waveform. 10. The method of claim 6 , wherein the parameter data values define a repeating active recharge pulse width and amplitude change for a stimulation waveform. 11. The method of claim 6 , wherein the parameter data values define a rate change for a stimulation waveform. 12. The method of claim 6 , wherein the parameter data values define a field steering effect for a set of stimulation waveforms corresponding to a set of stimulation electrodes. 13. The method of claim 1 , wherein the block navigation datum of each block is a parameter count defining the number of parameter and address data pairs are contained within the memory block containing the parameter count. 14. The method of claim 1 , wherein the block navigation datum of each block is a memory location address of the memory device. 15. An active device, comprising: a block moving hardware based controller comprising a block mover device and a memory device, the block mover having a trigger input; a set of registers, wherein a plurality of block navigation data and corresponding parameter data and address value pairs are present in locations within the memory device, each block navigation datum and corresponding parameter data and address value pairs defining a block, each block navigation datum being positioned within a dedicated block navigation datum location of each corresponding block, wherein the block mover receives a trigger, and in response to receiving the trigger, the block mover reads the block navigation datum from the dedicated block navigation datum location of a current block within the memory device and reads a number of parameter data and address value pairs corresponding to the block navigation datum read from the dedicated block navigation datum location, and the block mover upon reading the number of parameter data and address value pairs, writes the parameter data values that have been read from memory to the set of registers corresponding to the address values. 16. The active device of claim 15 , wherein an interval count is present within a dedicated interval count location within each block of the memory device, wherein the block moving hardware based controller receives additional triggers and once the number of triggers that have been received since writing the parameter data values to the set of registers exceeds the interval count of the current block, then reading a next block navigation datum and reading a next number of parameter data and address value pairs corresponding to the next block navigation datum for a next block that follows the current memory block in the memory device, and upon reading the next number of parameter data and address value pairs from the next block, the block moving hardware based controller writes the next parameter data values that have been read from the next block in memory in response to receiving the trigger to a set of registers corresponding to the address values of the next block at a start of a next interval. 17. The active device of claim 15 , wherein the set of registers are a pending set of registers, the active device further comprising an operating set of registers, wherein the active device implements parameters from the operating set of registers, and wherein the block moving hardware based controller reads an update parameter data and address value pair from the current memory block that causes transfer of parameter values from the pending set of registers to the operating set of registers and writes the update parameter data and address value pair to the pending set of registers to trigger the active device to transfer the parameter data and address value pairs from the pending set of registers to the operating set of registers. 18. The active device of claim 15 , further comprising a firmware based device that writes the plurality of block navigation data and corresponding parameter data and address value pairs to sequential locations within the memory device
Generators producing trains of pulses, i.e. finite sequences of pulses · CPC title
Programming voltage switching circuits · CPC title
using burst mode transfer, e.g. direct memory access {DMA}, cycle steal (G06F13/32 takes precedence) · CPC title
Aspects of the external programmer · CPC title
specified by the stimulation parameters · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.