Memory state indicator

US10635308B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10635308-B2
Application numberUS-201514854248-A
CountryUS
Kind codeB2
Filing dateSep 15, 2015
Priority dateJun 30, 2015
Publication dateApr 28, 2020
Grant dateApr 28, 2020

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.

Aspects include a computer-implemented method that includes receiving an instruction at a processor, the instruction associated with a memory block having an address, and accessing a state indicator by the processor. The state indicator indicates whether the memory block is in a pre-defined state, and the state indicator is accessible by the processor independent of the memory block. The method also includes, based on the state indicator indicating that the memory block is in the pre-defined state, inspecting a subset of data values in the memory block, and identifying the pre-defined state of the memory block based on the subset of data values.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method, comprising: receiving an instruction at a processor, the instruction associated with a memory block having an address, the memory block configured to store data therein; accessing a state indicator by the processor, the state indicator indicating whether the memory block is in one of a plurality of predefined states, each of the plurality of predefined states associated with a pattern of data values, the state indicator accessible by the processor independent of the memory block; based on the state indicator indicating that the memory block is in one of the plurality of predefined states, inspecting only an initial portion of data values in the memory block to detect the pattern of data values, wherein the initial portion does not include all of the data values in the memory block; identifying which of the plurality of pre-defined states that the memory block is in, wherein identifying is based on the detected pattern of data values and based on an assumption that the detected pattern is repeated across all lines of the memory block; determining that the identified pre-defined state is not associated with one or more redundant operations; and executing the instruction associated with the memory block in response to the determination that the pre-defined state is not associated with the one or more redundant operations. 2. The method of claim 1 , wherein the pre-defined state is identified based on the detected pattern of data values without inspecting any other portion of the memory block. 3. The method of claim 1 , wherein identifying which of the plurality of pre-defined states that the memory block is in includes comparing the detected pattern of data values to stored patterns associated with corresponding known states. 4. The method of claim 1 , wherein the state indicator is stored in a data structure, the data structure selected from at least one of metadata associated with the memory block, a configuration table, a status table and an addressing table. 5. The method of claim 1 , wherein the state indicator is a state indicator bit. 6. The method of claim 1 , wherein accessing the state indicator includes determining based on the state indicator whether the memory block is in one of the plurality of predefined states, and determining includes at least one of preventing and eliminating the need for operations on the contents of the memory block to be completed. 7. The method of claim 1 , wherein the instruction is an instruction to move data from a source memory block to a destination memory block, the method further comprising: accessing a first state indicator associated with the source memory block, determining based on the first state indicator whether the source memory block is in one of the plurality of pre-defined states, and based on the first state indicator indicating that the source memory block is in one of the plurality of pre-defined states, identifying a first state of the plurality of pre-defined states of the source memory block by only inspecting a subset of the source memory block, wherein the subset of the source memory block does not include all of the data values in the source memory block; accessing a second state indicator associated with the destination memory block, determining based on the second state indicator whether the destination memory block is in one of the plurality of pre-defined states, and based on the second state indicator indicating that the destination memory block is in one of the plurality of predefined states, identifying a second state of the plurality of pre-defined states of the destination memory block by only inspecting a subset of the destination memory block, wherein the subset of the destination memory block does not include all of the data values in the destination memory block; comparing the first state to the second state; and based on the first state matching the second state, executing the instruction without copying redundant data between the source memory block and the destination memory block. 8. The method of claim 1 , wherein the instruction is an instruction to initialize the memory block to an initialization state, the method further comprising: comparing the identified state of the plurality of predefined states to the initialization state; based on the identified state matching the initialization state, executing the instruction without altering the memory block; and based on the identified state not matching the initialization state, setting the memory block to the initialization state. 9. The method of claim 1 , wherein the detected pattern is a repeated pattern. 10. The method of claim 9 , wherein the repeated pattern is a binary pattern or a data word. 11. The method of claim 9 , wherein the repeated pattern is repeatedly sequentially. 12. The method of claim 1 , wherein the redundant operations includes at least one of: copying operations, re-initializations, and overwrites.

Assignees

Inventors

Classifications

  • in relation to availability · CPC title

  • Management of blocks · CPC title

  • G06F3/0604Primary

    Improving or facilitating administration, e.g. storage management · CPC title

  • G06F3/0673Primary

    Single storage device · CPC title

  • Monitoring storage devices or systems · 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 US10635308B2 cover?
Aspects include a computer-implemented method that includes receiving an instruction at a processor, the instruction associated with a memory block having an address, and accessing a state indicator by the processor. The state indicator indicates whether the memory block is in a pre-defined state, and the state indicator is accessible by the processor independent of the memory block. The method…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F3/0604. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 28 2020 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 7 related publications on this page (citations in our corpus or others sharing the same primary CPC).