Implantable medical stimulation device having reconfigurable memory
First Claim
1. In an implantable medical device having various computing components accessing a virtual memory space corresponding to a predetermined amount of memory, a memory system comprising:
- dynamic memory means for dynamically storing data, the dynamic memory means corresponding in size to at least the predetermined amount of memory;
permanent memory means for statically storing data, the permanent memory means also corresponding in size to at least the predetermined amount of memory; and
memory controller means for dynamically mapping selected portions of the virtual memory space to either the dynamic memory means or the permanent memory means, such that the entire virtual memory space can be mapped, if needed, to either just the dynamic memory means or to just the static memory means.
1 Assignment
0 Petitions
Accused Products
Abstract
The implantable medical device is provided with typically equal portions of both random access memory (RAM) and read only memory (ROM) and a virtual memory space is defined equal to the amount of memory in one of the memory devices. In a specific example, the RAM and ROM provide 256K of memory each, with the virtual memory space also set to 256K. A zone control register is provided which specifies, for each of a set of predetermined zones within the virtual memory space, whether memory access commands are to be routed to RAM or ROM. Control bits within the zone control register may be reset to permit portions of memory to be remapped from one memory device to the other. By providing RAM and ROM each typically equal in size to the virtual memory space, software for use in the device may be tested and debugged using RAM then transferred to ROM for use in production devices. By providing dual RAM and ROM, software upgrades or software bug fixes are easily performed merely by downloading new software into RAM, then resetting the zone control register to point to RAM, rather than ROM. Additionally, when necessary, the overall virtual memory space may be expanded to encompass both the RAM and ROM thereby permitting access to greater quantities of memory.
28 Citations
35 Claims
-
1. In an implantable medical device having various computing components accessing a virtual memory space corresponding to a predetermined amount of memory, a memory system comprising:
-
dynamic memory means for dynamically storing data, the dynamic memory means corresponding in size to at least the predetermined amount of memory;
permanent memory means for statically storing data, the permanent memory means also corresponding in size to at least the predetermined amount of memory; and
memory controller means for dynamically mapping selected portions of the virtual memory space to either the dynamic memory means or the permanent memory means, such that the entire virtual memory space can be mapped, if needed, to either just the dynamic memory means or to just the static memory means. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. In an implantable medical device, a memory system comprising:
-
a controller accessing a virtual memory space corresponding to a predetermined amount of memory;
a dynamic memory unit corresponding in size to at least the predetermined amount of memory;
a permanent memory unit also corresponding in size to at least the predetermined amount of memory; and
memory controller dynamically mapping selected portions of the virtual memory space to either the dynamic memory unit or the permanent memory unit, such that the entire virtual memory space can be mapped, if needed, to either just the dynamic memory unit or to just the static memory unit. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
-
-
33. In an implantable medical device having a microcontroller capable of accessing a virtual memory space, a memory system including a dynamic memory unit and a static memory unit, with each memory unit having sufficient memory to accommodate the entire virtual memory space, and a memory controller for dynamically mapping selected portions of the virtual memory space to either the dynamic memory unit or the static memory unit, a method for controlling memory access comprising the steps of:
-
storing control software in the static memory unit and configuring the memory controller to map portions of the virtual memory space corresponding to control software to the static memory unit;
storing data in the dynamic memory unit and configuring the memory controller to map portions of the virtual memory space corresponding to data to the dynamic memory unit;
receiving a memory access command from the microcontroller specifying a virtual memory address;
determining, using the memory controller, whether the virtual memory address is currently mapped to the dynamic memory unit or the static memory unit; and
forwarding the memory access command to the respective memory unit for accessing memory therein. - View Dependent Claims (34, 35)
storing modified control software in the dynamic memory unit; and
configuring the memory controller to re-map portions of the virtual memory space corresponding to the updated control software to the dynamic memory unit instead of to the static memory unit such that subsequent memory access commands to virtual memory addresses corresponding to the modified control software are automatically directed to the dynamic memory unit rather than to the static memory unit.
-
-
35. The method of claim 33 further comprising the steps of:
-
configuring the microcontroller to access a larger virtual memory space than accommodated by either the dynamic memory unit or the static memory unit alone; and
configuring the memory controller to map a first portion of the larger virtual memory space to the static memory unit and a second portion of the larger virtual memory space to the dynamic memory unit such that subsequent memory access commands to the first portion of the virtual memory space are automatically directed to the static memory unit and subsequent memory access commands to the second portion of the virtual memory space are automatically directed to the dynamic memory unit.
-
Specification