Patent application number | Description | Published |
20090119123 | System for communication of health care data - An apparatus for communicating health care data from a sender to a receiver is provided. The apparatus has a first computer system, a second computer system, and a rules engine. The first computer system has health care data stored therein. The second computer system is in operable communication with, and is configured to extract the health care data from, the first computer system. The rules engine normalizes the extracted health care data to a predefined format. | 05-07-2009 |
20100131299 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - An apparatus for communicating health care data from a sender to a receiver is provided. The apparatus has a first computer system, a second computer system, and a rules engine. The first computer system has health care data stored therein. The second computer system is in operable communication with, and is configured to extract the health care data from, the first computer system. The rules engine normalizes the extracted health care data to a predefined format. | 05-27-2010 |
20100145732 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - A computer system configured to extract and integrate health care data from a plurality of health care payors. The computer system includes a computer configured to communicate with payor computer systems from two or more payors. The computer is also configured to receive health care data of a type related to claims information. A staging database is in communication with the computer and configured to receive the claims information from each of the payor computer systems. The claims information is converted into a normalized format by a normalization system. A rules engine of the normalization system establishes the predefined format, predetermines how each of the plurality of health care data is to appear in its respective field, and remodels any of the health care data that is not expressed as predetermined by the normalized format into the normalized format. Normalized data expressing information having the same meaning will be expressed in the same format. | 06-10-2010 |
20100169263 | INDIVIDUAL HEALTH RECORD SYSTEM AND APPARATUS - A system, apparatus, and related methods for the collection, processing, evaluation, transformation, and reporting of individual health care information from diverse information systems and sources. An individual health record (IHR) of the present invention provides a structure for individuals to participate in, and manage, their health and their medical care, while still meeting the needs of health care organizations and caregivers. An IHR object may be formed by obtaining information from diverse health care information systems and sources, and transforming and re-purposing into a coherent account of the individual's overall health and care using a comprehensive health care ontology. As information from various sources is updated or available, the IHR is dynamically updated on a continuous or periodic basis. In one embodiment, the IHR system is contained in a self-contained package or “appliance” designed to “plug and play” in existing health care information technology systems and networks, with minimal effort and intervention. | 07-01-2010 |
20100179836 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - An apparatus for communicating health care data from a sender to a receiver is provided. The apparatus has a first computer system, a second computer system, and a rules engine. The first computer system has health care data stored therein. The second computer system is in operable communication with, and is configured to extract the health care data from, the first computer system. The rules engine normalizes the extracted health care data to a predefined format. The rules engine defines a plurality of health care data fields in the predefined format, as well as a plurality of relationships between fields of normalized data. | 07-15-2010 |
20110029328 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - An apparatus for communicating health care data from a sender to a receiver is provided. The apparatus has a first computer system, a second computer system, and a rules engine. The first computer system has health care data stored therein. The second computer system is in operable communication with, and is configured to extract the health care data from, the first computer system. The rules engine normalizes the extracted health care data to a predefined format. | 02-03-2011 |
20110246240 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - An apparatus for communicating health care data from a sender to a receiver is provided. The apparatus has a first computer system, a second computer system, and a rules engine. The first computer system has health care data stored therein. The second computer system is in operable communication with, and is configured to extract the health care data from, the first computer system. The rules engine normalizes the extracted health care data to a predefined format. The rules engine defines a plurality of health care data fields in the predefined format, as well as a plurality of relationships between fields of normalized data. | 10-06-2011 |
20110246241 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - A computer system that extracts health care data from one or more health care payors to identify meaningful relationships or patterns in treatments to compare the effectiveness of various treatment of specific diseases is provided. This computer system includes a computer and a staging database. The computer is configured to communicate with one or more payor computer systems of a type that includes one or more databases storing records of the health care data from one or more payors over the Internet. The staging database is in communication with the computer and is configured to receive the health care data from each of the payor computer systems. The health care data from each of the payor computer systems is configured to be converted into a normalized format. The normalized data is the made available to determine comparative effectiveness of various treatments of specific diseases. | 10-06-2011 |
20120078664 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - A computer system that extracts health care data from one or more health care payors to identify meaningful relationships or patterns in treatments to compare the effectiveness of various treatment of specific diseases is provided. This computer system includes a computer and a staging database. The computer is configured to communicate with one or more payor computer systems of a type that includes one or more databases storing records of the health care data from one or more payors over the Internet. The staging database is in communication with the computer and is configured to receive the health care data from each of the payor computer systems. The health care data from each of the payor computer systems is configured to be converted into a normalized format. The normalized data is the made available to determine comparative effectiveness of various treatments of specific diseases. | 03-29-2012 |
20120158426 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - An apparatus for communicating health care data from a sender to a receiver is provided. The apparatus has a first computer system, a second computer system, and a rules engine. The first computer system has health care data stored therein. The second computer system is in operable communication with, and is configured to extract the health care data from, the first computer system. The rules engine normalizes the extracted health care data to a predefined format. | 06-21-2012 |
20120173288 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - An apparatus for communicating health care data from a sender to a receiver is provided. The apparatus has a first computer system, a second computer system, and a rules engine. The first computer system has health care data stored therein. The second computer system is in operable communication with, and is configured to extract the health care data from, the first computer system. The rules engine normalizes the extracted health care data to a predefined format. | 07-05-2012 |
20120284055 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - An apparatus for communicating health care data from a sender to a receiver is provided. The apparatus has a first computer system, a second computer system, and a rules engine. The first computer system has health care data stored therein. The second computer system is in operable communication with, and is configured to extract the health care data from, the first computer system. The rules engine normalizes the extracted health care data to a predefined format. The rules engine defines a plurality of health care data fields in the predefined format, as well as a plurality of relationships between fields of normalized data. | 11-08-2012 |
20120284057 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - An apparatus for communicating health care data from a sender to a receiver is provided. The apparatus has a first computer system, a second computer system, and a rules engine. The first computer system has health care data stored therein. The second computer system is in operable communication with, and is configured to extract the health care data from, the first computer system. The rules engine normalizes the extracted health care data to a predefined format. The rules engine defines a plurality of health care data fields in the predefined format, as well as a plurality of relationships between fields of normalized data. | 11-08-2012 |
20120290325 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - An apparatus for communicating health care data from a sender to a receiver is provided. The apparatus has a first computer system, a second computer system, and a rules engine. The first computer system has health care data stored therein. The second computer system is in operable communication with, and is configured to extract the health care data from, the first computer system. The rules engine normalizes the extracted health care data to a predefined format. The rules engine defines a plurality of health care data fields in the predefined format, as well as a plurality of relationships between fields of normalized data. | 11-15-2012 |
20130041692 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - A computer system to communicate healthcare data between healthcare participants includes a computer configured to display a personal healthcare record associated with a patient; wherein the personal healthcare record includes normalized data related to the patient and received from a payor computer over the Internet and provider healthcare data related to the patient received from a provider computer over the Internet; wherein the normalized data and the provider healthcare data are of a type that are displayed in separate fields; and wherein the normalized data is in a normalized format of a type that displays healthcare data from one or more sources such that any healthcare data associated with a patient which has the same meaning will be expressed in the same format despite any prior formatting. | 02-14-2013 |
20130159013 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - An apparatus for communicating health care data from a sender to a receiver is provided. The apparatus has a first computer system, a second computer system, and a rules engine. The first computer system has health care data stored therein. The second computer system is in operable communication with, and is configured to extract the health care data from, the first computer system. The rules engine normalizes the extracted health care data to a predefined format. | 06-20-2013 |
20130282402 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - A computer system to communicate healthcare data between healthcare participants includes a computer configured to display a personal healthcare record associated with a patient; wherein the personal healthcare record includes normalized data related to the patient and received from a payor computer and provider healthcare data related to the patient received from a provider computer; wherein the normalized data and the provider healthcare data are of a type that are displayed in separate fields; and wherein the normalized data is in a normalized format of a type that displays healthcare data from one or more sources such that any healthcare data associated with a patient which has the same meaning will be expressed in the same format despite any prior formatting. | 10-24-2013 |
20140032245 | INDIVIDUAL HEALTH RECORD SYSTEM AND APPARATUS - A system, apparatus, and related methods for the collection, processing, evaluation, transformation, and reporting of individual health care information from diverse information systems and sources. An individual health record (IHR) of the present invention provides a structure for individuals to participate in, and manage, their health and their medical care. An IHR object may be formed by obtaining information from diverse health care information systems and sources, and transforming and re-purposing into a coherent account of the individual's overall health and care using a comprehensive health care ontology. As information from various sources is updated or available, the IHR is dynamically updated on a continuous or periodic basis. In one embodiment, the IHR system is contained in a self-contained package or “appliance” designed to “plug and play” in existing health care information technology systems and networks, with minimal effort and intervention. | 01-30-2014 |
20140122128 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - An apparatus for communicating health care data from a sender to a receiver is provided. The apparatus has a first computer system, a second computer system, and a rules engine. The first computer system has health care data stored therein. The second computer system is in operable communication with, and is configured to extract the health care data from, the first computer system. The rules engine normalizes the extracted health care data to a predefined format. The rules engine defines a plurality of health care data fields in the predefined format, as well as a plurality of relationships between fields of normalized data. | 05-01-2014 |
20140244297 | SYSTEM FOR COMMUNICATION OF HEALTH CARE DATA - An apparatus for communicating health care data from a sender to a receiver is provided. The apparatus has a first computer system, a second computer system, and a rules engine. The first computer system has health care data stored therein. The second computer system is in operable communication with, and is configured to extract the health care data from, the first computer system. The rules engine normalizes the extracted health care data to a predefined format. The rules engine defines a plurality of health care data fields in the predefined format, as well as a plurality of relationships between fields of normalized data. | 08-28-2014 |
20140304006 | INDIVIDUAL HEALTH RECORD SYSTEM AND APPARATUS - A system, apparatus, and related methods for the collection, processing, evaluation, transformation, and reporting of individual health care information from diverse information systems and sources. A individual health record (IHR) of the present invention provides a structure for individuals to participate in, and manage, their health and their medical care, while still meeting the needs of health care organizations and caregivers. An IHR object may be formed by obtaining information from diverse health care information systems and sources, and transforming and re-purposing into a coherent account of the individual's overall health and care using a comprehensive health care ontology. As information from various sources is updated or available, the IHR is dynamically updated on a continuous or periodic basis. In one embodiment, the IHR system is contained in a self-contained package or “appliance” designed to “plug and play” in existing health care information technology systems and networks, with minimal effort and intervention. | 10-09-2014 |
Patent application number | Description | Published |
20110055455 | INCREMENTAL GARBAGE COLLECTION FOR NON-VOLATILE MEMORIES - Systems and methods are provided for performing incremental garbage collection for non-volatile memories (“NVMs”), such as flash memory. In some embodiments, an electronic device including the NVM may perform incremental garbage collection to free up and erase a programmed block of the NVM. The programmed block may include valid data and invalid data, and the electronic device may be configured to copy the valid data from the programmed block to an erased block in portions. In between programming each portion of the valid data to the erased block, the electronic device can program host data to the erased block. This way, the electronic device can stagger the garbage collection operations and prevent a user from having to experience one long garbage collection operation. | 03-03-2011 |
20110072189 | METADATA REDUNDANCY SCHEMES FOR NON-VOLATILE MEMORIES - Systems and methods are provided for storing data to or reading data from a non-volatile memory (“NVM”), such as flash memory, using a metadata redundancy scheme. In some embodiments, an electronic device, which includes an NVM, may also include a memory interface for controlling access to the NVM. The memory interface may receive requests to write user data to the NVM. The user data from each request may be associated with metadata, such as a logical address, flags, or other data. In response to a write request, the NVM interface may store the user data and its associated metadata in a first memory location (e.g., page), and may store a redundant copy of the metadata in a second memory location. This way, even if the first memory location becomes inaccessible, the memory interface can still recover the metadata from the backup copy stored in the second memory location. | 03-24-2011 |
20110173462 | CONTROLLING AND STAGGERING OPERATIONS TO LIMIT CURRENT SPIKES - Systems and methods are disclosed for managing the peak power consumption of a system, such as a non-volatile memory system (e.g., flash memory system). The system can include multiple subsystems and a controller for controlling the subsystems. Each subsystem may have a current profile that is peaky. Thus, the controller may control the peak power of the system by, for example, limiting the number of subsystems that can perform power-intensive operations at the same time or by aiding a subsystem in determining the peak power that the subsystem may consume at any given time. | 07-14-2011 |
20110209028 | CODEWORD REMAPPING SCHEMES FOR NON-VOLATILE MEMORIES - Systems and methods are disclosed for remapping codewords for storage in a non-volatile memory, such as flash memory. In some embodiments, a controller that manages the non-volatile memory may prepare codeword using a suitable error correcting code. The controller can store a first portion of the codeword in a lower page of the non-volatile memory may store a second portion of the codeword in an upper page of the non-volatile memory. Because upper and lower pages may have different resiliencies to error-causing phenomena, remapping codewords in this manner may even out the bit error rates of the codewords (which would otherwise have a more bimodal distribution). | 08-25-2011 |
20110213945 | DATA PARTITIONING SCHEME FOR NON-VOLATILE MEMORIES - Systems and methods are disclosed for partitioning data for storage in a non-volatile memory (“NVM”), such as flash memory. In some embodiments, a priority may be assigned to data being stored, and the data may be logically partitioned based on the priority. For example, a file system may identify a logical address within a first predetermined range for higher priority data and within a second predetermined range for lower priority data, such using a union file system. Using the logical address, a NVM driver can determine the priority of data being stored and can process (e.g., encode) the data based on the priority. The NVM driver can store an identifier in the NVM along with the data, and the identifier can indicate the processing techniques used on the associated data. | 09-01-2011 |
20110235434 | SYSTEMS AND METHODS FOR REFRESHING NON-VOLATILE MEMORY - Systems and methods are disclosed for managing a non-volatile memory (“NVM”), such as a flash memory. To prevent data errors due to leakage effects, the NVM may be refreshed. For example, a reserved portion of the NVM may be selected, and a predetermined pattern can be stored into the reserved portion. The reserved portion can then be monitored for storage deterioration over time. After determining that storage deterioration of the reserved portion has occurred, the NVM can be refreshed. In some embodiments, a controller can attempt to distinguish data errors due to leakage effects from data errors due to disturb issues. | 09-29-2011 |
20110238629 | UNCORRECTABLE ERROR HANDLING SCHEMES FOR NON-VOLATILE MEMORIES - Systems and methods are provided for handling uncorrectable errors in a non-volatile memory (“NVM”), such as flash memory, during a garbage collection operation. | 09-29-2011 |
20110238886 | GARBAGE COLLECTION SCHEMES FOR INDEX BLOCK - Systems and methods are provided for handling uncorrectable errors that may occur during garbage collection of an index page or block in non-volatile memory. | 09-29-2011 |
20110239064 | MANAGEMENT OF A NON-VOLATILE MEMORY BASED ON TEST QUALITY - Systems and methods are disclosed for managing a non-volatile memory (“NVM”), such as a flash memory. The NVM may be managed based on results of a test performed on the NVM. The test may indicate, for example, physical memory locations that may be susceptible to errors, such as certain pages in the blocks of the NVM. Tests on multiple NVMs of the same type may be compiled to create a profile of error tendencies for that type of NVM. In some embodiments, data may be stored in the NVM based on individual test results for the NVM or based on a profile of the NVM type. For example, memory locations susceptible to error may be retired or data stored in those memory locations may be protected by a stronger error correcting code. | 09-29-2011 |
20110239065 | RUN-TIME TESTING OF MEMORY LOCATIONS IN A NON-VOLATILE MEMORY - Systems and methods are disclosed for performing run-time tests on a non-volatile memory (“NVM”), such as flash memory. The run-time tests may be tests that are performed on the NVM while the NVM can be operated by an end user (as opposed to during a manufacturing phase). In some embodiments, a controller for the NVM may detect an error event that may be indicative of a systemic failure of a die of the NVM. The controller may then select one or more blocks in the die to test, which may be dies that are currently not being used to store user data. The controller may post process the results of the test to determine whether there is a systemic failure, such as a column failure, and may treat the systemic failure if there is one. | 09-29-2011 |
20110239088 | NON-REGULAR PARITY DISTRIBUTION DETECTION VIA METADATA TAG - This can relate to non-regular parity distribution of a non-volatile memory (“NVM”), such as flash memory, and detection of the non-regular parity via a metadata tag. For example, each codeword of the NVM can include one or more parity pages that may be distributed at random through the NVM. To identify the page as a parity page, a parity page marker can be included in the metadata of that page. During power-up of the NVM, an address table including the logical-to-physical address mapping of the pages can be created. Pages including a parity page marker, however, can be skipped during the creation of this address table. Additionally, by having two or more parity pages associated with a codeword, an additional layer of protection can be provided for repairing errors in that codeword. | 09-29-2011 |
20120030409 | INITIATING WEAR LEVELING FOR A NON-VOLATILE MEMORY - Systems and methods are provided for initiating wear leveling on block-aligned boundaries for non-volatile memories (“NVMs”), such as flash memory. In some embodiments, an electronic device including the NVM may suspend the programming of data upon reaching the end of a dynamic block. The electronic device may then perform wear leveling on a low-cycled block of the NVM. The electronic device may thus be configured to copy static data from the low-cycled block to another block of the NVM. After wear leveling has completed, the memory interface can program a second portion of the data to a new dynamic block of the NVM. This way, the electronic device can improve the efficiency of garbage collection. In addition, the electronic device can decrease the programming time for user generated writes, the wearing of the NVM, and overall power consumption. | 02-02-2012 |
20120030506 | READ DISTURB SCORECARD - Systems and methods are disclosed for handling read disturbs based on one or more characteristics of read operations performed on a non-volatile memory (“NVM”). In some embodiments, a control circuitry of a system can generate a variable damage value determined based on one or more characteristics of a read operation. Using the damage value, the control circuitry can update a score associated with the block. If the control circuitry determines that the score exceeds a pre-determined threshold, at least a portion of the block can be relocated to a different memory location in the NVM. In some embodiments, portions of the block may be relocated over a period of time. | 02-02-2012 |
20120047315 | ADAPTIVE WRITE BEHAVIOR FOR A SYSTEM HAVING NON-VOLATILE MEMORY - Systems and methods are disclosed for adaptive writing behavior for a system having non-volatile memory (“NVM”). A memory interface of a system can be configured to determine whether a write preference of the system is skip-sequential. In response to determining that the write preference is skip-sequential, the memory interface can sequentially program data to a first set of pages of a block of the NVM. In addition, the memory interface can sequentially pre-merge gaps between the first set of pages with one or more pages of a data block. Moreover, the memory interface can be configured to switch to an alternative programming state in response to determining that at least one condition has been satisfied. For example, the memory interface can stop programming data sequentially, and instead program data in the order that the data is received from a file system. | 02-23-2012 |
20120047316 | EFFICIENT ALLOCATION POLICIES FOR A SYSTEM HAVING NON-VOLATILE MEMORY - Systems and methods are disclosed for efficient allocation policies for a system having non-volatile memory. A file system allocator of the system can be configured to allocate memory regions that are aligned with one or more logical blocks of a logical space (e.g., one or more super block-aligned regions). In some embodiments, the file system allocator can monitor the number of free sectors corresponding to each logical block. In other embodiments, the file system allocator can monitor a ratio of free space to total space corresponding to each logical block. The file system allocator can select a logical block based at least in part on the number of free sectors of the logical block. In some cases, the file system allocator can allocate the free sectors of the logical block in a sequential order. | 02-23-2012 |
20120047409 | SYSTEMS AND METHODS FOR GENERATING DYNAMIC SUPER BLOCKS - Systems and methods are disclosed for generating dynamic super blocks from one or more grown bad blocks of a non-volatile memory (“NVM”). In some embodiments, a dynamic super block can be formed by striping together a subset of memory locations of grown bad blocks from one or more dies of a NVM. The subset of memory locations may be selected based on at least one reliability measurement of the subset of memory locations. In some embodiments, in response to detecting one or more access failures in a portion of the dynamic super block, the NVM interface can retire at least a portion of the dynamic super block. In some embodiments, the NVM interface can reconstruct a new dynamic super block from the dynamic super block by progressively increasing the size of the new dynamic super block. | 02-23-2012 |
20120198123 | SYSTEMS AND METHODS FOR REDUNDANTLY STORING METADATA FOR NON-VOLATILE MEMORY - Systems and methods are provided for storing data to or reading data from a non-volatile memory (“NVM”), such as flash memory, using a metadata redundancy scheme. In some embodiments, an electronic device, which includes an NVM, may also include a memory interface for controlling access to the NVM. The memory interface may receive requests to write user data to the NVM. The user data from each request may be associated with metadata, such as a logical address, a directional flag, or other data. In response to a write request, the NVM interface may store the user data and its associated metadata in a first memory location (e.g., page), and may store a redundant copy of the metadata in a second memory location. The directional flag indicates the geometric relationship between the first memory location and the second memory location. Thus, if the first memory location becomes inaccessible, the memory interface can still recover the metadata from the backup copy stored in the second memory location. | 08-02-2012 |
20120198124 | METHODS AND SYSTEMS FOR OPTIMIZING READ OPERATIONS IN A NON-VOLATILE MEMORY - Systems and methods are disclosed for increasing efficiency of read operations by selectively re-ordering a sequence in which logical block addresses (“LBAs”) are read out of multi-level cell (“MLC”) non-volatile memory. In one embodiment, the LBAs can correspond to upper and lower pages. Because data stored in lower pages can be retrieved from NVM faster than data stored in upper pages, embodiments disclosed herein can selectively re-order the LBAs such that the first LBA to be read corresponds to a lower page. | 08-02-2012 |
20120198125 | METHODS AND SYSTEMS FOR PERFORMING EFFICIENT PAGE READS IN A NON-VOLATILE MEMORY - Systems and methods are disclosed for increasing efficiency of read operations by selectively adding pages from a pagelist to a batch, such that when the batch is executed as a read operation, each page in the batch can be concurrently accessed. The pagelist can include all the pages associated a read command received, for example, from a file system. Although the pages associated with the read command may have an original read order sequence, embodiments according to this invention re-order this original read order sequence by selectively adding pages to a batch. A page is added to the batch if it does not collide with any other page already added to the batch. A page collides with another page if neither page can be accessed simultaneously. One or more batches can be constructed in this manner until the pagelist is empty. | 08-02-2012 |
20120198126 | METHODS AND SYSTEMS FOR PERFORMING SELECTIVE BLOCK SWITCHING TO PERFORM READ OPERATIONS IN A NON-VOLATILE MEMORY - Systems and methods are disclosed for increasing efficiency of read operations by minimizing the number of block switching events necessary to read each page associated with a read command. According to embodiments of this invention, for any given block containing one or more pages that need to be read for a read command, each of those one or more pages is read before switching to another block, thereby eliminating potential time penalties in switching between blocks. A block switching module according to embodiments of the invention instructs a NVM controller to read all relevant pages out of a given block even if an original read order sequence of the pages to be read would otherwise normally cause NVM controller to switch to another block. | 08-02-2012 |
20120236658 | SYSTEMS AND METHODS FOR REFRESHING NON-VOLATILE MEMORY - Systems and methods are disclosed for managing a non-volatile memory (“NVM”), such as a flash memory. To prevent data errors due to leakage effects, the NVM may be refreshed. For example, a reserved portion of the NVM may be selected, and a predetermined pattern can be stored into the reserved portion. The reserved portion can then be monitored for storage deterioration over time. After determining that storage deterioration of the reserved portion has occurred, the NVM can be refreshed. In some embodiments, a controller can attempt to distinguish data errors due to leakage effects from data errors due to disturb issues. | 09-20-2012 |
20120265922 | STOCHASTIC BLOCK ALLOCATION FOR IMPROVED WEAR LEVELING - Systems and methods are disclosed for stochastic block allocation for improved wear leveling for a system having non-volatile memory (“NVM”). The system can probabilistically allocate a block or super block for wear leveling based on statistics associated with the block or super block. In some embodiments, the system can select a set of blocks or super blocks based on a pre-determined threshold of a number of cycles (e.g., erase cycles and/or write cycles). The block or super block can then be selected from the set of super blocks. In other embodiments, the system can use a fully stochastic approach by selecting a block or super block based on a biased random variable. The biased random variable may be generated based in part on the number of cycles associated with each block or super block of the NVM. | 10-18-2012 |
20120311298 | MOUNT-TIME UNMAPPING OF UNUSED LOGICAL ADDRESSES IN NON-VOLATILE MEMORY SYSTEMS - Systems and methods are provided for unmapping unused logical addresses at mount-time of a file system. An electronic device, which includes a non-volatile memory (“NVM”), may implement a file system that, at mount-time of the NVM, identifies all of the logical addresses associated with the NVM that are unallocated. The file system may then pass this information on to a NVM manager, such as in one or more unmap requests. This can ensure that the NVM manager does not maintain data associated with a logical address that is no longer needed by the file system. | 12-06-2012 |
20130024600 | NON-VOLATILE TEMPORARY DATA HANDLING - Systems and methods are provided for handling temporary data that is stored in a non-volatile memory, such as NAND flash memory. The temporary data may include hibernation data or any other data needed for only one boot cycle of an electronic device. When storing the temporary data in one or more pages of the non-volatile memory, the electronic device can store a temporary marker as part of the metadata in at least one of the pages. This way, on the next bootup of the electronic device, the electronic device can use the temporary marker to determine that the associated page contains unneeded data. The electronic device can therefore invalidate the page and omit the page from its metadata tables. | 01-24-2013 |
20130073870 | SECURE RELOCATION OF ENCRYPTED FILES - Systems and methods are disclosed for secure relocation of encrypted files for a system having non-volatile memory (“NVM”). A system can include an encryption module that is configured to use a temporary encryption seed (e.g., a randomly generated key and a corresponding initialization vector) to decrypt and encrypt data files in an NVM. These data files may have originally been encrypted with different encryption seeds. Using such an approach, data files can be securely relocated even if the system does not have access to the original encryption seeds. In addition, the temporary encryption seed allows the system to bypass a default key scheme. | 03-21-2013 |
20130132653 | DATA PARTITIONING SCHEME FOR NON-VOLATILE MEMORIES - Systems and methods are disclosed for partitioning data for storage in a non-volatile memory (“NVM”), such as flash memory. In some embodiments, a priority may be assigned to data being stored, and the data may be logically partitioned based on the priority. For example, a file system may identify a logical address within a first predetermined range for higher priority data and within a second predetermined range for lower priority data, such using a union file system. Using the logical address, a NVM driver can determine the priority of data being stored and can process (e.g., encode) the data based on the priority. The NVM driver can store an identifier in the NVM along with the data, and the identifier can indicate the processing techniques used on the associated data. | 05-23-2013 |
20130212344 | SELECTIVE RETIREMENT OF BLOCKS - Systems and methods are provided for selectively retiring blocks based on refresh events of those blocks. In addition to refresh events, other criteria may be applied in making a decision whether to retire a block. By applying the criteria, the system is able to selectively retire blocks that may otherwise continue to be refreshed. | 08-15-2013 |
20130219106 | TRIM TOKEN JOURNALING - Systems and methods are disclosed for trim token journaling. A device can monitor the order in which trim commands and write commands are applied to an indirection system stored in a volatile memory of the device. In some embodiments, the device can directly write to a page of an NVM with a trim token that indicates that a LBA range stored in the page has been trimmed. In other embodiments, a device can add pending trim commands to a trim buffer stored in the volatile memory. Then, when the trim buffer reaches a pre-determined threshold or a particular trigger is detected, trim tokens associated with all of the trim commands stored in the trim buffer can be written to the NVM. Using these approaches, the same sequence of events that was applied to the indirection system during run-time can be applied during device boot-up. | 08-22-2013 |
20130238833 | HEURISTICS FOR PROGRAMMING DATA IN A NON-VOLATILE MEMORY - Systems and methods are disclosed for heuristics associated with programming data in a non-volatile memory (“NVM”). One or more applications can generate information that notifies a system of the amounts of recoverable and unrecoverable new data that will be programmed to an NVM. Based on this information, the system can calculate the amount of new data that needs to be placed in a bulk mode instead of a SLC mode. By utilizing multi-modal modes of an NVM effectively, the system can improve overall performance and reduce the probability of unnecessary garbage collection. | 09-12-2013 |
20140112079 | CONTROLLING AND STAGGERING OPERATIONS TO LIMIT CURRENT SPIKES - Systems and methods are disclosed for managing the peak power consumption of a system, such as a non-volatile memory system (e.g., flash memory system). The system can include multiple subsystems and a controller for controlling the subsystems. Each subsystem may have a current profile that is peaky. Thus, the controller may control the peak power of the system by, for example, limiting the number of subsystems that can perform power-intensive operations at the same time or by aiding a subsystem in determining the peak power that the subsystem may consume at any given time. | 04-24-2014 |
20140143634 | NON-REGULAR PARITY DISTRIBUTION DETECTION VIA METADATA TAG - This can relate to non-regular parity distribution of a non-volatile memory (“NVM”), such as flash memory, and detection of the non-regular parity via a metadata tag. For example, each codeword of the NVM can include one or more parity pages that may be distributed at random through the NVM. To identify the page as a parity page, a parity page marker can be included in the metadata of that page. During power-up of the NVM, an address table including the logical-to-physical address mapping of the pages can be created. Pages including a parity page marker, however, can be skipped during the creation of this address table. Additionally, by having two or more parity pages associated with a codeword, an additional layer of protection can be provided for repairing errors in that codeword. | 05-22-2014 |
20140281179 | STOCHASTIC BLOCK ALLOCATION FOR IMPROVED WEAR LEVELING - Systems and methods are disclosed for stochastic block allocation for improved wear leveling for a system having non-volatile memory (“NVM”). The system can probabilistically allocate a block or super block for wear leveling based on statistics associated with the block or super block. In some embodiments, the system can select a set of blocks or super blocks based on a pre-determined threshold of a number of cycles (e.g., erase cycles and/or write cycles). The block or super block can then be selected from the set of super blocks. In other embodiments, the system can use a fully stochastic approach by selecting a block or super block based on a biased random variable. The biased random variable may be generated based in part on the number of cycles associated with each block or super block of the NVM. | 09-18-2014 |
20140281588 | GENERATING EFFICIENT READS FOR A SYSTEM HAVING NON-VOLATILE MEMORY - Systems and methods are disclosed for generating efficient reads for a system having non-volatile memory (“NVM”). A read command can be separated by a host processor of the system into two phases: a) transmitting a command to a storage processor of the system, where the command is associated with one or more logical addresses, and b) generating data transfer information. The host processor can generate the data transfer information while the storage processor is processing the command from the host processor. Once the data transfer information has been generated and data has been read from the NVM, the data can be transferred. | 09-18-2014 |
20140281687 | PERFORMANCE OF A SYSTEM HAVING NON-VOLATILE MEMORY - Systems and methods are disclosed for improving performance of a system having non-volatile memory (“NVM”). The system can vertically re-vector defective blocks of a user region of the NVM to other blocks having the same plane or die's plane (“DIP”) but corresponding to a dead region of the NVM. Then, the system can select any band with more than one defective block and vertically re-vector one of its defective blocks to a band that has no defective blocks. At run-time, the system can monitor the number of vertical re-vectors per DIP. If at least one vertical re-vector has been performed on all DIPs of the NVM, a band of the user region can be allocated for the dead region. | 09-18-2014 |
20140281814 | CORRECTION OF BLOCK ERRORS FOR A SYSTEM HAVING NON-VOLATILE MEMORY - Systems and methods are disclosed for correction of block errors for a system having non-volatile memory (“NVM”). In particular, the system can store a parity page per page-modulo, where a pre-determined number of pages of a block or a band of the NVM may be allocated as page-modulo XOR (“PMX”) parity pages. This can be a space efficient approach for recovering from single-block data errors such as, for example, single-page uncorrectable error-correcting codes (“uECCs”) and/or errors caused by word line shorts. | 09-18-2014 |
20140297935 | MOUNT-TIME RECONCILIATION OF DATA AVAILABILITY - Systems and methods are disclosed for mount-time reconciliation of data availability. During system boot-up, a non-volatile memory (“NVM”) driver can be enumerated, and an NVM driver mapping can be obtained. The NVM driver mapping can include the actual availability of LBAs in the NVM. A file system can then be mounted, and a file system allocation state can be generated. The file system allocation state can indicate the file system's view of the availability of LBAs. Subsequently, data availability reconciliation can be performed. That is, the file system allocation state and the NVM driver mapping can be overlaid and compared with one another in order to expose any discrepancies. | 10-02-2014 |
20150227460 | EFFICIENT BUFFERING FOR A SYSTEM HAVING NON-VOLATILE MEMORY - Systems and methods are disclosed for efficient buffering for a system having non-volatile memory (“NVM”). In some embodiments, a control circuitry of a system can use heuristics to determine whether to perform buffering of one or more write commands received from a file system. In other embodiments, the control circuitry can minimize read energy and buffering overhead by efficiently re-ordering write commands in a queue along page-aligned boundaries of a buffer. In further embodiments, the control circuitry can optimally combine write commands from a buffer with write commands from a queue. After combining the commands, the control circuitry can dispatch the commands in a single transaction. | 08-13-2015 |
Patent application number | Description | Published |
20120084484 | SELECTIVELY COMBINING COMMANDS FOR A SYSTEM HAVING NON-VOLATILE MEMORY - Systems and methods are disclosed for selectively combining commands for a system having non-volatile memory (“NVM”). In some embodiments, a command dispatcher of a system can receive multiple commands to access a NVM for a period of time. After receiving the multiple commands, the command dispatcher can determine a set of commands that are naturally combinable. In some embodiments, the command dispatcher can select commands that are fairly distributed across different chip enables (“CEs”) and/or buses. After selecting the set of commands, the command dispatcher can combine the set of commands into a multi-access command. Finally, the command dispatcher can dispatch the multi-access command to the NVM. | 04-05-2012 |
20120084627 | DATA RECOVERY USING OUTER CODEWORDS STORED IN VOLATILE MEMORY - Systems and methods are disclosed for data recovery using outer codewords stored in volatile memory. Outer codewords can be associated with one or more horizontal portions or vertical portions of a non-volatile memory (“NVM”). In some embodiments, an NVM interface of an electronic device can program user data to a super block of the NVM. The NVM interface can then determine if a program disturb has occurred in the super block. In response to detecting that a program disturb has occurred in the super block, the NVM interface can perform garbage collection on the super block. The NVM interface can then use outer codewords associated with the super block to recover from any uncorrectable error correction code errors detected in the super block. | 04-05-2012 |
20120151120 | SYSTEMS AND METHODS FOR HANDLING NON-VOLATILE MEMORY OPERATING AT A SUBSTANTIALLY FULL CAPACITY - This can relate to handling a non-volatile memory (“NVM”) operating at a substantially full memory. The non-volatile memory can report its physical capacity to an NVM driver. The NVM driver can scale-up the physical capacity a particular number of times to generate a “scaled physical capacity,” which is then reported to the file system. Because the scaled physical capacity is greater than the NVM's actual physical capacity, the file system allocates a logical space to the NVM that is substantially greater than the NVM's capacity. This can cause less crowding of the logical block addresses within the logical space, thus making it easier for the file system to operate and improving system performance. A commitment budget can also be reported to the file system that corresponds to the NVM's physical capacity, and which can define the amount of data the file system can commit for storage in the NVM. | 06-14-2012 |
20120173832 | HANDLING DYNAMIC AND STATIC DATA FOR A SYSTEM HAVING NON-VOLATILE MEMORY - Systems and methods are disclosed for handling dynamic and static data for a system having non-volatile memory (“NVM”). By determining whether data being written to the NVM is dynamic or not, a NVM interface of a system can determine where to initially place the data on the NVM (e.g., place the data on either a dynamic stream block or a static stream block). Moreover, this information can allow the NVM interface to improve the efficiencies of both garbage collection (“GC”) and wear leveling. | 07-05-2012 |
20120191664 | COORDINATING SYNC POINTS BETWEEN A NON-VOLATILE MEMORY AND A FILE SYSTEM - Systems and methods for coordinating sync points between a non-volatile memory (“NVM”) and a file system are provided. In some embodiments, a file system can issue one or more commands to control circuitry of a NVM, which can indicate whether a transaction is journaled or non-journaled. This way, the control circuitry can maintain a list of journaled transactions and corresponding LBA(s). By keeping track of journaled transactions, the control circuitry can ensure that sync points are not prematurely erased during a garbage collection process. In addition, upon detecting device failure events, the control circuitry can roll back to sync points corresponding to one or more journaled transactions. | 07-26-2012 |
20120221767 | EFFICIENT BUFFERING FOR A SYSTEM HAVING NON-VOLATILE MEMORY - Systems and methods are disclosed for efficient buffering for a system having non-volatile memory (“NVM”). In some embodiments, a control circuitry of a system can use heuristics to determine whether to perform buffering of one or more write commands received from a file system. In other embodiments, the control circuitry can minimize read energy and buffering overhead by efficiently re-ordering write commands in a queue along page-aligned boundaries of a buffer. In further embodiments, the control circuitry can optimally combine write commands from a buffer with write commands from a queue. After combining the commands, the control circuitry can dispatch the commands in a single transaction. | 08-30-2012 |
20120265921 | BOOT DATA STORAGE SCHEMES FOR ELECTRONIC DEVICES - Systems and methods are provided for storing and retrieving boot data (e.g., a first stage bootloader) in and from a non-volatile memory (“NVM”), such as a NAND flash memory. To increase storage reliability, the boot data may be stored in a subset of the pages in a boot data storage area, such as in only lower pages. The subset may be selected based on the specific operating specifications and characteristics of the NVM. To prevent a boot ROM from having to maintain a NVM-specific map of which pages are used to store boot data, the map may be maintained in the NVM itself. For example, the map may be in the form of a linked list, where each page storing boot data can include a pointer that points to the next page that stores boot data. | 10-18-2012 |
20130073787 | FASTER TREE FLATTENING FOR A SYSTEM HAVING NON-VOLATILE MEMORY - Systems and methods are disclosed for efficient buffering for a system having non-volatile memory (“NVM”). A tree can be stored in volatile memory that includes a logical-to-physical mapping between a logical space and physical addresses of the NVM. When the amount of memory available for the tree is below a pre-determined threshold, a system can attempt to reduce the number of data fragments in the NVM, and consequently flatten a portion of the tree. The NVM interface may select an optimal set of entries of the tree to combine. Any suitable approach can be used such as, for example, moving one or more sliding windows across the tree, expanding a sliding window when a condition has been satisfied, using a priority queue while scanning the tree, and/or maintaining a priority queue while the tree is being updated. | 03-21-2013 |
20130073788 | WEAVE SEQUENCE COUNTER FOR NON-VOLATILE MEMORY SYSTEMS - Systems and methods are disclosed for providing a weave sequence counter (“WSC”) for non-volatile memory (“NVM”) systems. The WSC can identify the sequence in which each page of the NVM is programmed. The “weave” aspect can refer to the fact that multiple blocks can be open for programming at once, thus allowing the pages of these blocks to be programmed in a “woven” manner. Systems and methods are also disclosed for providing a host weave sequence counter (“HWSC”). Each time new data is initially programmed to the NVM, this data can be associated with a particular HWSC. The HWSC associated with the data may not change, even when the data is moved to a new page (e.g., for wear leveling purposes and the like). The WSC and HWSC may aid in, for example, performing rollback, building logical-to-physical mappings, determining static-versus-dynamic page statuses, and performing maintenance operations (e.g., wear leveling). | 03-21-2013 |
20130073789 | SYSTEMS AND METHODS FOR CONFIGURING NON-VOLATILE MEMORY - Systems and methods are disclosed for configuring a non-volatile memory (“NVM”). In some embodiments, each block of the NVM can include a block table-of-contents (“TOC”), which can be encoded (e.g., run-length encoded) and dynamically-sized. Thus, as user data is being programmed to a block, the size of a block TOC can be concurrently recalculated and increased only if necessary. In some embodiments, the NVM interface can use a weave sequence stored in the context information and at least one weave sequence associated with each page of a block to determine whether to replay across the pages of the block after system boot-up. | 03-21-2013 |
20130151754 | LBA BITMAP USAGE - Systems and methods are disclosed for logical block address (“LBA) bitmap usage for a system having non-volatile memory (“NVM”). A bitmap can be stored in volatile memory of the system, where the bitmap can store the mapping statuses of one or more logical addresses. By using the bitmap, the system can determine the mapping status of a LBA without having to access the NVM. In addition, the system can update the mapping status of a LBA with minimal NVM accesses. By reducing the number of NVM accesses, the system can avoid triggering a garbage collection process, which can improve overall system performance. | 06-13-2013 |
20130151830 | MOUNT-TIME RECONCILIATION OF DATA AVAILABILITY - Systems and methods are disclosed for mount-time reconciliation of data availability. During system boot-up, a non-volatile memory (“NVM”) driver can be enumerated, and an NVM driver mapping can be obtained. The NVM driver mapping can include the actual availability of LBAs in the NVM. A file system can then be mounted, and a file system allocation state can be generated. The file system allocation state can indicate the file system's view of the availability of LBAs. Subsequently, data availability reconciliation can be performed. That is, the file system allocation state and the NVM driver mapping can be overlaid and compared with one another in order to expose any discrepancies. | 06-13-2013 |
20140115242 | SYSTEMS AND METHODS FOR HANDLING NON-VOLATILE MEMORY OPERATING AT A SUBSTANTIALLY FULL CAPACITY - This can relate to handling a non-volatile memory (“NVM”) operating at a substantially full memory. The non-volatile memory can report its physical capacity to an NVM driver. The NVM driver can scale-up the physical capacity a particular number of times to generate a “scaled physical capacity,” which is then reported to the file system. Because the scaled physical capacity is greater than the NVM's actual physical capacity, the file system allocates a logical space to the NVM that is substantially greater than the NVM's capacity. This can cause less crowding of the logical block addresses within the logical space, thus making it easier for the file system to operate and improving system performance. A commitment budget can also be reported to the file system that corresponds to the NVM's physical capacity, and which can define the amount of data the file system can commit for storage in the NVM. | 04-24-2014 |
Patent application number | Description | Published |
20100161886 | Architecture for Address Mapping of Managed Non-Volatile Memory - The disclosed architecture uses address mapping to map a block address on a host interface to an internal block address of a non-volatile memory (NVM) device. The block address is mapped to an internal chip select for selecting a Concurrently Addressable Unit (CAU) identified by the block address. The disclosed architecture supports generic NVM commands for read, write, erase and get status operations. The architecture also supports an extended command set for supporting read and write operations that leverage a multiple CAU architecture. | 06-24-2010 |
20100287329 | Partial Page Operations for Non-Volatile Memory Systems - A read command initiates reads of pages or portions of pages of non-volatile memory using a memory address that specifies a row, column and length. A host controller can use the read command with a read operation or status request. In some implementations, the memory address further specifies a die or plane and a block. | 11-11-2010 |
20100287353 | Multipage Preparation Commands for Non-Volatile Memory Systems - Multipage preparation commands for non-volatile memory systems are disclosed. The multipage preparation commands supply data that can be used to prepare a non-volatile memory device for forthcoming multipage program operations. A host controller can use the commands ahead of a multipage program operation to optimize usage of a multipage program command. The non-volatile memory device can use the commands to configure the non-volatile memory in preparation for a subsequent operation, such as changing a command order or using the most optimized command set for the subsequent operation. | 11-11-2010 |
20100287446 | Low Latency Read Operation for Managed Non-Volatile Memory - In a memory system, a host controller is coupled to a non-volatile memory (NVM) package (e.g., NAND device). The host controller sends a read command to the NVM package requesting a low latency read operation. Responsive to the read command, a controller in the NVM package retrieves the data and sends the data to an ECC engine for correcting. Following the read command, the host controller sends a read status request command to the controller in the NVM package. Responsive to the read status request, the controller sends a status report to the host controller indicating that some or all of the data is available for transfer to the host controller. Responsive to the report, the host controller transfers the data. An underrun status can be determined to indicate that uncorrected data had been transferred to the host controller. | 11-11-2010 |
20110022781 | CONTROLLER FOR OPTIMIZING THROUGHPUT OF READ OPERATIONS - A controller, techniques, systems, and devices for optimizing throughput of read operations in flash memory are disclosed. Various optimizations of throughput for read operations can be performed using a controller. In some implementations, read operations for a multi-die flash memory device or system can be optimized to perform a read request with a highest priority (e.g., an earliest received read request) as soon as the read request is ready. In some implementations, the controller can enable optimized reading from multiple flash memory dies by monitoring a read/busy state for each die and switching between dies when a higher priority read operation is ready to begin. | 01-27-2011 |
20110022819 | INDEX CACHE TREE - Memory mapping techniques for non-volatile memory are disclosed where logical sectors are mapped into physical pages using data structures in volatile and non-volatile memory. In some implementations, a first lookup table in non-volatile memory maps logical sectors directly into physical pages. A second lookup table in volatile memory holds the location of the first lookup table in non-volatile memory. An index cache tree in volatile memory holds the physical addresses of the most recently written or accessed logical sectors in a compressed format. | 01-27-2011 |
20110066789 | FILE SYSTEM DERIVED METADATA FOR MANAGEMENT OF NON-VOLATILE MEMORY - A file system programs metadata on a non-volatile memory device. The metadata can include data associating files with ranges of logical block addresses. During a garbage collection process, the data can be used to determine portions of physical blocks of the non-volatile memory device that are associated with files that have been deleted. Using the programmed metadata during garbage collection results in erasure of larger portions of blocks and improved wear leveling. | 03-17-2011 |
20120311000 | Pre-organization of Data - In a method of writing data to a file system on a solid state drive, a file stream is opened for writing to a file in the file system. A life expectancy value predicting a length of time the data to be written will be stored in the file system is attached to the file stream. The data is written to the file stream and stored on the solid state storage device according to the life expectancy value attached to the data. In one embodiment, a unique identifier may be used as the life expectancy value for writing a group of related files predicted to be stored in the file system for substantially the same length of time. The life expectancy value may be predicted based on a file type of the file being written. The life expectancy value may be stored as metadata for the file being written. | 12-06-2012 |
20130073800 | Multipage Preparation Commands For Non-Volatile Memory Systems - Multipage preparation commands for non-volatile memory systems are disclosed. The multipage preparation commands supply data that can be used to prepare a non-volatile memory device for forthcoming multipage program operations. A host controller can use the commands ahead of a multipage program operation to optimize usage of a multipage program command. The non-volatile memory device can use the commands to configure the non-volatile memory in preparation for a subsequent operation, such as changing a command order or using the most optimized command set for the subsequent operation. | 03-21-2013 |
20130212318 | ARCHITECTURE FOR ADDRESS MAPPING OF MANAGED NON-VOLATILE MEMORY - The disclosed architecture uses address mapping to map a block address on a host interface to an internal block address of a non-volatile memory (NVM) device. The block address is mapped to an internal chip select for selecting a Concurrently Addressable Unit (CAU) identified by the block address. The disclosed architecture supports generic NVM commands for read, write, erase and get status operations. The architecture also supports an extended command set for supporting read and write operations that leverage a multiple CAU architecture. | 08-15-2013 |
Patent application number | Description | Published |
20080252162 | PASSIVE MAGNETIC BEARING CONFIGURATIONS - A journal bearing provides vertical and radial stability to a rotor of a passive magnetic bearing system when the rotor is not rotating and when it is rotating. In the passive magnetic bearing system, the rotor has a vertical axis of rotation. Without the journal bearing, the rotor is vertically and radially unstable when stationary, and is vertically stable and radially unstable when rotating. | 10-16-2008 |
20090066298 | ELECTROSTATIC GENERATOR/MOTOR - A sub-module consists of a set of two outer sets of stationary fan-blade-shaped sectors. These outer sectors include conductive material and are maintained at ground potential in several examples. Located midway between them is a set of stationary sector plates with each plate being electrically insulated from the others. An example provides that the inner sector plates are connected together alternately, forming two groups of parallel-connected condensers that are then separately connected, through high charging circuit resistances, to a source of DC potential with respect to ground, with an additional connecting lead being provided for each group to connect their output as an AC output to a load. These same leads can he used, when connected to a driver circuit, to produce motor action. | 03-12-2009 |
20100064929 | INDUCTRACK III CONFIGURATION - A MAGLEV SYSTEM FOR HIGH LOADS - Inductrack III configurations are suited for use in transporting heavy freight loads. Inductrack III addresses a problem associated with the cantilevered track of the Inductrack II configuration. The use of a cantilevered track could present mechanical design problems in attempting to achieve a strong enough track system such that it would be capable of supporting very heavy loads. In Inductrack III, the levitating portion of the track can be supported uniformly from below, as the levitating Halbach array used on the moving vehicle is a single-sided one, thus does not require the cantilevered track as employed in Inductrack II. | 03-18-2010 |
20110291506 | CENTRIFUGALLY DECOUPLING TOUCHDOWN BEARINGS - Centrifugally decoupling mechanical bearing systems provide thin tensioned metallic ribbons contained in a support structure. This assembly rotates around a stationary shaft being centered at low speeds by the action of the metal ribbons. Tension springs are connected on one end to the ribbons and on the other end to the support structure. The ribbons pass through slots in the inner ring of the support structure. The spring preloading thus insures contact (or near-contact) between the ribbons and the shaft at rotation speeds below the transition speed. Above this speed, however, the centrifugal force on the ribbons produces a tensile force on them that exceeds the spring tensile force so that the ribbons curve outward, effectively decoupling them from mechanical contact with the shaft. They still remain, however, in position to act as a touchdown bearing in case of abnormally high transverse accelerations. | 12-01-2011 |
20110291508 | COMBINED RADIAL STABILIZER AND CENTERING ELEMENT FOR PASSIVE MAGNETIC BEARING SYSTEMS - A compact magnetic bearing element for radial centering is described. At zero and low speeds, the centering occurs through mechanical contact of a rotating slotted pole structure with stretched metallic ribbons. At higher speeds, eddy currents induced in the metallic ribbons provide non-contacting centering forces. Exemplary uses for the invention are generally in rotating machinery and in flywheel energy storage systems. | 12-01-2011 |
20120174901 | ACCELERATION OF OBJECTS TO HIGH VELOCITY BY ELECTROMAGNETIC FORCES - Two exemplary approaches to the acceleration of projectiles are provided. Both approaches can utilize concepts associated with the Inductrack maglev system. Either of them provides an effective means of accelerating multi-kilogram projectiles to velocities of several kilometers per second, using launchers of order 10 meters in length, thus enabling the acceleration of projectiles to high velocities by electromagnetic forces. | 07-12-2012 |
20120175985 | PASSIVE MAGNETIC BEARING SYSTEM - An axial stabilizer for the rotor of a magnetic bearing provides external control of stiffness through switching in external inductances. External control also allows the stabilizer to become a part of a passive/active magnetic bearing system that requires no external source of power and no position sensor. Stabilizers for displacements transverse to the axis of rotation are provided that require only a single cylindrical Halbach array in its operation, and thus are especially suited for use in high rotation speed applications, such as flywheel energy storage systems. The elimination of the need of an inner cylindrical array solves the difficult mechanical problem of supplying support against centrifugal forces for the magnets of that array. Compensation is provided for the temperature variation of the strength of the magnetic fields of the permanent magnets in the levitating magnet arrays. | 07-12-2012 |
20130049529 | ELECTROSTATIC GENERATOR/MOTOR CONFIGURATIONS - Electrostatic generators/motors designs are provided that generally may include a first cylindrical stator centered about a longitudinal axis; a second cylindrical stator centered about the axis, a first cylindrical rotor centered about the axis and located between the first cylindrical stator and the second cylindrical stator. The first cylindrical stator., the second cylindrical stator and the first cylindrical rotor may be concentrically aligned. A magnetic field having field lines about parallel with the longitudinal axis is provided. | 02-28-2013 |
20130174757 | INDUCTRACK III CONFIGURATION - A MAGLEV SYSTEM FOR HIGH LOADS - Inductrack III configurations are suited for use in transporting heavy freight loads. Inductrack III addresses a problem associated with the cantilevered track of the Inductrack II configuration. The use of a cantilevered track could present mechanical design problems in attempting to achieve a strong enough track system such that it would be capable of supporting very heavy loads. In Inductrack III, the levitating portion of the track can be supported uniformly from below, as the levitating Halbach array used on the moving vehicle is a single-sided one, thus does not require the cantilevered track as employed in Inductrack II. | 07-11-2013 |
20140103765 | GEAR TRAINS EMPLOYING MAGNETIC COUPLING - A first movable element includes a first Halbach array permanent magnet array. A second movable element placed in operable proximity to said first Halbach array includes a second Halbach array permanent magnet array. The first Halbach array is configured to transmit torque upon movement to the second movable element by magnetic force, wherein the torque is transferred with no physical contact occurring between the first movable element and the second movable element. | 04-17-2014 |
20140116406 | ACCELERATION OF OBJECTS TO HIGH VELOCITY BY ELECTROMAGNETIC FORCES - Two exemplary approaches to the acceleration of projectiles are provided. Both approaches can utilize concepts associated with the Inductrack maglev system. Either of them provides an effective means of accelerating multi-kilogram projectiles to velocities of several kilometers per second, using launchers of order 10 meters in length, thus enabling the acceleration of projectiles to high velocities by electromagnetic forces. | 05-01-2014 |
20140184017 | RIPPLED DISC ELECTROSTATIC GENERATOR/MOTOR CONFIGURATIONS UTILIZING MAGNETIC INSULATION - Electrostatic generators/motors designs are provided that generally may include a first rippled stator centered about a longitudinal axis; a second rippled stator centered about the axis, a first rippled rotor centered about the axis and located between the first rippled stator and the second rippled stator. A magnetic field having field lines about parallel with the average plane of at least one of the first rippled stator or the second rippled stator is provided with either a Halbach array configuration or a conductor array configuration. | 07-03-2014 |
20140246937 | ANTI-WHIRL TOUCHDOWN BEARING - Stabilizing techniques are provided that prevent whirl-type instabilities during the operation of magnetically levitated rotating systems. Examples include tensioned foil and tensioned wire based designs, where a restraining force arises from contact between a rotating shaft and the tensioned elements, which elements may be of either metallic or non-metallic composition. Another stabilizing technique provides a variation with azimuth in the tension of an array of foils (or wires) so as to create anisotropic stiffness for displacements that are 90° apart in azimuth. Another exemplary technique restrains displacements that have components that are transverse to (i.e., parallel with) the axis of rotation. | 09-04-2014 |
20140252914 | ELECTROSTATIC GENERATOR/MOTOR DESIGNS CAPABLE OF OPERATION WITH THE ELECTRODES IMMERSED IN A LIQUID OR PRESSURIZED GAS - Electrostatic generator/motor electrode assembly designs are provided that both minimize the rotor drag forces and increase the power output relative to older designs. In one of the new designs, both the rotor and the stator electrodes are encapsulated in a dielectric that forms smooth surface discs or cylinders that result in minimal fluid drag losses on the rotors and also increases the voltage-breakdown potentials between the rotor and stator elements. In the second of the new designs, the disc or cylinder geometry is maintained for both rotor and stator but the rotor has no embedded electrodes. Instead it is made up of an assembly of dielectric elements that alternate between a high dielectric constant and a low dielectric constant forming a smooth surface disc of surface. | 09-11-2014 |
20140265688 | ELECTROSTATIC STABILIZER FOR A PASSIVE MAGNETIC BEARING SYSTEM - Electrostatic stabilizers are provided for passive bearing systems composed of annular magnets having a net positive stiffness against radial displacements and that have a negative stiffness for vertical displacements, resulting in a vertical instability. Further embodiments are shown of a radial electrostatic stabilizer geometry (using circuitry similar to that employed in the vertical stabilizer). This version is suitable for stabilizing radial (lateral) displacements of a rotor that is levitated by annular permanent magnets that are stable against vertical displacements but are unstable against radial displacements. | 09-18-2014 |
20140265722 | ELECTRODE GEOMETRY FOR ELECTROSTATIC GENERATORS AND MOTORS - An electrostatic (ES) device is described with electrodes that improve its performance metrics. Devices include ES generators and ES motors, which are comprised of one or more stators (stationary members) and one or more rotors (rotatable members). The stator and rotors are configured as a pair of concentric cylindrical structures and aligned about a common axis. The stator and rotor are comprised of an ensemble of discrete, longitudinal electrodes, which are axially oriented in an annular arrangement. The shape of the electrodes described herein enables the ES device to function at voltages significantly greater than that of the existing art, resulting in devices with greater power-handling capability and overall efficiency. Electrode shapes include, but are not limited to, rods, corrugated sheets and emulations thereof. | 09-18-2014 |
20140368181 | TECHNIQUE FOR ENHANCING THE POWER OUTPUT OF AN ELECTROSTATIC GENERATOR EMPLOYING PARAMETRIC RESONANCE - A circuit-based technique enhances the power output of electrostatic generators employing an array of axially oriented rods or tubes or azimuthal corrugated metal surfaces for their electrodes. During generator operation, the peak voltage across the electrodes occurs at an azimuthal position that is intermediate between the position of minimum gap and maximum gap. If this position is also close to the azimuthal angle where the rate of change of capacity is a maximum, then the highest rf power output possible for a given maximum allowable voltage at the minimum gap can be attained. This rf power output is then coupled to the generator load through a coupling condenser that prevents suppression of the dc charging potential by conduction through the load. Optimized circuit values produce phase shifts in the rf output voltage that allow higher power output to occur at the same voltage limit at the minimum gap position. | 12-18-2014 |
20160084315 | ELECTROSTATIC STABILIZER FOR A PASSIVE MAGNETIC BEARING SYSTEM - Electrostatic stabilizers are provided for passive bearing systems composed of annular magnets having a net positive stiffness against radial displacements and that have a negative stiffness for vertical displacements, resulting in a vertical instability. Further embodiments are shown of a radial electrostatic stabilizer geometry (using circuitry similar to that employed in the vertical stabilizer). This version is suitable for stabilizing radial (lateral) displacements of a rotor that is levitated by annular permanent magnets that are stable against vertical displacements but are unstable against radial displacements. | 03-24-2016 |
20160094154 | PULSE-TRAIN DRIVE SYSTEM FOR ELECTROSTATIC GENERATORS AND MOTORS - A novel motor drive system has been described for use in electrostatic generator/motor systems based on the time variation of capacity of a rotating condenser comprised of segmented rotor and stator elements. It takes advantage of the fact that the motor action of such a system depends only on the rms value of the drive pulses, which therefore can be formed simply by periodically interrupting a high-frequency ac wave train. This new circuitry simplifies the drive system and takes advantage of recent developments of devices used in the art of inversion of dc voltages to high-frequency (tens of kiloHz) ac. | 03-31-2016 |
20160102704 | ROTATION-SPEED-INDEPENDENT STABILIZER FOR PASSIVE MAGNETIC BEARING SYSTEMS - By employing a combination of magnetic forces and those from electrostatic fields, a new stabilizer is able, unlike those employing dynamic effects, to function at any speed with no need for sensors or dynamically generated electrical currents. Embodiments are provided that stabilize the radial, axial and tilt instability. In addition to its use for stabilization, the radial stabilizer described herein also functions as an eccentricity detector. | 04-14-2016 |