WOM code emulation of EEPROM-type devices

US9760301B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9760301-B2
Application numberUS-201514826183-A
CountryUS
Kind codeB2
Filing dateAug 13, 2015
Priority dateAug 13, 2015
Publication dateSep 12, 2017
Grant dateSep 12, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A system for write-once memory (WOM) code emulation of EEPROM-type devices includes, for example, a host processor for sending data words for storing in a WOM (Write-Only Memory) device. A host interface receives the data words for encoding by a WOM controller. An emulator programs the WOM-encoded data and an address identifier as an entry of the WOM device. The emulator overwrites previously programmed WOM-encoded data by searching entries of a current active page of a WOM device to locate a programmed WOM entry that includes the searched-for address identifier and the previously written WOM-encoded data word. When the previously written WOM-encoded word cannot be correctly overwritten, the contents of the second WOM-encoded word are stored in a new entry. When the current active page is substantially full, the new entry is stored a new page and the current active page is block-erased.

First claim

Opening claim text (preview).

What is claimed is: 1. A circuit, comprising: a host interface operable to receive a first and second data word, the first and second data words each including at least one original symbol being associated with an address identifier for addressing the first and second data word; a WOM (Write-Only Memory) controller operable to generate a first WOM-encoded word in response to the at least one original symbol of the first data word and to generate a second WOM-encoded word in response to the at least one original symbol of the second data word; and an emulator operable to search entries of a first current page of a WOM device to locate a programmed WOM entry in a first location having a first field including the address identifier, to determine whether stored contents of a second field of the located entry are operable to be overwritten in accordance with the contents of the second WOM-encoded word, and if the stored contents of a second field of the located entry are operable to be overwritten, to store the contents of the second WOM-encoded word by overwriting the contents of the first WOM-encoded word in the first location, and if the stored contents of a second field of the located entry are not operable to be overwritten, to store the contents of the second WOM-encoded word by allocating a new entry and storing the second WOM-encoded word and the address identifier in the allocated new entry; and wherein the determination of whether the stored contents of the second field of the located entry are operable to be overwritten is made in accordance with P=[c x (0)·c x (1)]+[c x (0)·c x (2)]+[c x (1)·c x (2)], where P=1 indicates the stored contents are operable to be overwritten, P=0 indicates the stored contents are not operable to be overwritten, and wherein: c x (0) is a first encoded bit of the stored contents of the second field; c x (1) is a second encoded bit of the stored contents of the second field; and c x (2) is a first encoded bit of the stored contents of the second field. 2. The circuit of claim 1 , wherein the emulator is operable to write contents of the first WOM-encoded word and the address identifier to the first location by changing a block-initialized state of selected bits in the first location of the located entry. 3. The circuit of claim 2 , wherein the address identifier is not stored using a WOM encoding. 4. The circuit of claim 2 , wherein the bits of the first location have a block-initialized state of being “1”s. 5. The circuit of claim 2 , wherein the emulator is operable to determine whether the new entry is allocated in the first current page, and in response to the determination the new entry is not allocated in the first current page, to select a different page as a second current page. 6. The circuit of claim 5 , wherein the contents of the second WOM-encoded word in the allocated new entry are stored in the second current page. 7. The circuit of claim 6 , wherein data contents are copied to the second current page in accordance with contents of the entries stored in the first current page. 8. The circuit of claim 7 , wherein the data contents copied to the second current page are copied from volatile memory having data contents stored in accordance with the contents of the entries stored in the first current page. 9. The circuit of claim 5 , wherein the emulator is operable to determine whether the new entry is allocated in a first current region including the first location of the first current page, and in response to a determination the new entry is not allocated in the first current region, to select a different region as a second current region, wherein the search to locate the programmed WOM entry in the first location searches for the programmed WOM entry in the latest of the first and second current regions. 10. The circuit of claim 5 , wherein the first current page is block-erased in response to the selection of the different page as the second current page. 11. A system, comprising: a host processor operable to send a first and second data word, the first and second data words each including at least one original symbol being associated with an address identifier for addressing the first and second data word; a WOM (Write-Only Memory) device communicatively coupled to the host processor and operable to be block-initialized in accordance with a block-initialized state; a host interface operable to receive the first data word; a WOM controller operable to generate a first WOM-encoded word in response to the original symbol of the first data word and to generate a second WOM-encoded word in response to the original symbol of the second data word; and an emulator operable to search entries of a selected active page of a WOM device to locate a programmed WOM entry in a first location, to determine whether a second field of the located entry includes stored contents of the first WOM-encoded word operable to be overwritten to store the contents of the second WOM-encoded word, and when the first WOM-encoded word is operable to be overwritten, to store the contents of the second WOM-encoded word by overwriting the contents of the first WOM-encoded word, and when the first WOM-encoded word is not operable to be overwritten, to store the contents of the second WOM-encoded word by allocating a new entry and storing contents of the second WOM-encoded word in the allocated new entry; wherein the emulator is operable to determine whether a second filed of the located entry includes stored contents of the first WOM-encoded word operable to be overwritten to store the contents of the second WOM-encoded word in accordance with P=[c x (0)·c x (1)]+[c x (0)·c x (2)]+[c x (1)·c x (2)], where P=1 indicates the stored contents are operable to be overwritten, P=0 indicates the stored contents are not operable to be overwritten, and wherein: c x (0) is a first encoded bit of the stored contents of the second field; c x (1) is a second encoded bit of the stored contents of the second field; and c x (2) is a first encoded bit of the stored contents of the second field. 12. The system of claim 11 , wherein the emulator is operable to write contents of the first WOM-encoded word and the address identifier to the first location by changing a block-initialized state of selected bits in the first location of the located entry. 13. The system of claim 12 , wherein the original symbol of the first data word is at least two bits and is WOM-encoded and stored in the WOM device as at least three bits. 14. The system of claim 12 , wherein the emulator is operable to determine whether a first current page including the first location is substantially full, and in response to the determination the current page is substantially full, to select a different page as a second current page, to copy a memory image associated with data stored in the first current page to the second current page, and to block-erase the first current page. 15. The system of claim 14 , wherein the emulator is operable to determine whether a first current region including the first location is substantially full, and in response to the determination the current region is substantially full, to select a different region as a second current region such that a search to locate a WOM entry subsequently programmed in the second current region is started in accordance with the second current region. 16. A method, comprising: receiving a first and second data word, the first and second data words each including at least one original symbol being associated with an address identifier; generating a first WOM-encoded wor

Assignees

Inventors

Classifications

  • G06F8/66Primary

    of program code stored in read-only memory [ROM] · CPC title

  • One time programmable [OTP] memory, e.g. PROM, WORM · CPC title

  • in block erasable memory, e.g. flash memory · CPC title

  • Physics · mapped topic

  • in relation to life time, e.g. increasing Mean Time Between Failures [MTBF] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9760301B2 cover?
A system for write-once memory (WOM) code emulation of EEPROM-type devices includes, for example, a host processor for sending data words for storing in a WOM (Write-Only Memory) device. A host interface receives the data words for encoding by a WOM controller. An emulator programs the WOM-encoded data and an address identifier as an entry of the WOM device. The emulator overwrites previously p…
Who is the assignee on this patent?
Texas Instruments Inc
What technology area does this patent fall under?
Primary CPC classification G06F8/66. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 12 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).