IP Library Granted Patent US 8,341,362
Granted Patent B2
US 8,341,362 · App. 12/650,604 · Granted Dec 25, 2012

System, method and apparatus for memory with embedded associative section for computations

Assignee: ZikBit Ltd.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,341,362
App. No.
12/650,604
Granted
Dec 25, 2012
Kind
B2
Abstract

A system and method for data processing, the method includes: storing input data words in a row-wise manner in a memory that comprises multiple memory cells arranged in rows and columns; and transposing multiple data words by performing a sequence of shift operations and associative operations; wherein an associative operation comprises comparing in parallel multiple columns of associative memory cells to at least one comparand; and storing transposed data words in the memory.

Claims (99)

1. A method for data processing, the method comprising:

storing input data words in a row-wise manner in a memory that comprises multiple memory cells arranged in rows and columns; and

transposing multiple data words by performing a sequence of shift operations and associative operations; wherein an associative operation comprises comparing in parallel multiple columns of associative memory cells to at least one comparand; and storing transposed data words in the memory,

wherein the transposing comprises repeating the stages of:

writing content of a source row of memory cells to a first row of associative memory section cells;

writing at least a portion of a shift mask to a second row of associative memory section cells;

comparing in parallel multiple columns of associative memory cells to a comparand, wherein each column of the associative memory cells comprises one cell of the first row of associative memory cells and a corresponding cell of the second row of associative memory section cells;

writing a comparison result to a destination row of the memory;

shifting the shift mask; and

selecting a new source row and selecting a new destination row.

2. A method for data processing, the method comprising:

storing input data words in a row-wise manner in a memory that comprises multiple memory cells arranged in rows and columns;

transposing multiple data words by performing a sequence of shift operations and associative operations; wherein an associative operation comprises comparing in parallel multiple columns of associative memory cells to at least one comparand; and storing transposed data words in the memory;

transposing groups of input data words to provide column-wise transposed groups of data words; wherein a group of input data words comprises multiple vertically aligned input data words; and

duplicating multiple input data words and storing transposed versions of duplicated input data words.

3. A method for data processing, the method comprising:

storing input data words in a row-wise manner in a memory that comprises multiple memory cells arranged in rows and columns;

transposing multiple data words by performing a sequence of shift operations and associative operations; wherein an associative operation comprises comparing in parallel multiple columns of associative memory cells to at least one comparand; and storing transposed data words in the memory;

transposing groups of input data words to provide column-wise transposed groups of data words; wherein a group of input data words comprises multiple vertically aligned input data words; and

duplicating multiple input data words so that transposed data words that store pixel information of adjacent pixels are stored in proximity to each other.

4. A method for data processing, the method comprising:

storing input data words in a row-wise manner in a memory that comprises multiple memory cells arranged in rows and columns;

transposing multiple data words by performing a sequence of shift operations and associative operations; wherein an associative operation comprises comparing in parallel multiple columns of associative memory cells to at least one comparand; and storing transposed data words in the memory; and

transposing and duplicating code components of a pixel input data set while maintaining a row-wise arrangements of color components of the pixel input data set; wherein the pixel input data set comprises a row-wise sequence of different components of a single pixel and a code component that related to the single pixel.

5. A method for data processing, comprising:

storing input data words in a row-wise manner in a memory that comprises multiple memory cells arranged in rows and columns;

re-arranging the input data words in response to parallel computational capabilities of an associative memory section;

processing re-arranged input-data words by performing at least one associative operation that comprises comparing in parallel multiple columns of associative memory cells to at least one comparand; and

duplicating multiple input data words so that data words that store pixel information of adjacent pixels are stored in proximity to each other.

6. A method for data processing, comprising:

storing input data words in a row-wise manner in a memory that comprises multiple memory cells arranged in rows and columns;

re-arranging the input data words in response to parallel computational capabilities of an associative memory section;

processing re-arranged input-data words by performing at least one associative operation that comprises comparing in parallel multiple columns of associative memory cells to at least one comparand;

re-arranging frames that have a line size that is larger than a width of row of associative memory section cells; wherein the re-arranging comprises storing vertically partitioning a frame to multiple frame portions, wherein a width of each frame portion does not exceed the width of row of associative memory section cells; and

duplicating multiple input data words so that data words that store pixel information of adjacent pixels are stored in proximity to each other.

7. A system having data processing capabilities, the system comprises:

a semiconductor substrate;

a memory that is formed on the semiconductor substrate and comprises multiple memory cells arranged in rows and columns;

associative memory cells that are arranged in rows and columns; and

a control logic that is coupled to the memory and to the associative memory cells;

wherein the memory stores input data words in a row-wise manner;

wherein the control logic controls a transposition of multiple data words by performing a sequence of shift operations and associative operations that provide transposed data words;

wherein an associative operation comprises comparing in parallel multiple columns of associative memory cells to at least one comparand;

wherein the memory stores the transposed data words; and

wherein the control logic is adapted to control a transposition of multiple data words by a repetition of:

write a content of a source row of memory cells to a first row of associative memory section cells;

write at least a portion of a shift mask to a second row of associative memory section cells;

compare in parallel multiple columns of associative memory cells to a comparand;

wherein each column of the associative memory cells comprises one cell of the first row of associative memory cells and a corresponding cell of the second row of associative memory section cells;

write a comparison result to a destination row of the memory; shifting the shift mask; and

select a new source row and selecting a new destination row.

8. A system having data processing capabilities, the system comprises:

a semiconductor substrate;

a memory that is formed on the semiconductor substrate and comprises multiple memory cells arranged in rows and columns;

associative memory cells that are arranged in rows and columns; and

a control logic that is coupled to the memory and to the associative memory cells;

wherein the memory stores input data words in a row-wise manner;

wherein the control logic controls a transposition of multiple data words by performing a sequence of shift operations and associative operations that provide transposed data words;

wherein an associative operation comprises comparing in parallel multiple columns of associative memory cells to at least one comparand;

wherein the memory stores the transposed data words;

wherein the control logic is adapted to control a transposing of groups of input data words to provide column-wise transposed groups of data words; wherein a group of input data words comprises multiple vertically aligned input data words; and

wherein the control logic is adapted to control a duplication of multiple input data words and store transposed versions of duplicated input data words.

9. A system having data processing capabilities, the system comprises:

a semiconductor substrate;

a memory that is formed on the semiconductor substrate and comprises multiple memory cells arranged in rows and columns;

associative memory cells that are arranged in rows and columns; and

a control logic that is coupled to the memory and to the associative memory cells;

wherein the memory stores input data words in a row-wise manner;

wherein the control logic controls a transposition of multiple data words by performing a sequence of shift operations and associative operations that provide transposed data words;

wherein an associative operation comprises comparing in parallel multiple columns of associative memory cells to at least one comparand;

wherein the memory stores the transposed data words;

wherein the control logic is adapted to control a transposing of groups of input data words to provide column-wise transposed groups of data words; wherein a group of input data words comprises multiple vertically aligned input data words; and

wherein the control logic is adapted to control a duplication of multiple input data words so that transposed data words that store pixel information of adjacent pixels are stored in proximity to each other.

10. A system having data processing capabilities, the system comprises:

a semiconductor substrate;

a memory that is formed on the semiconductor substrate and comprises multiple memory cells arranged in rows and columns;

associative memory cells that are arranged in rows and columns; and

a control logic that is coupled to the memory and to the associative memory cells;

wherein the memory stores input data words in a row-wise manner;

wherein the control logic controls a transposition of multiple data words by performing a sequence of shift operations and associative operations that provide transposed data words;

wherein an associative operation comprises comparing in parallel multiple columns of associative memory cells to at least one comparand;

wherein the memory stores the transposed data words;

wherein the control logic is adapted to control a transposing of groups of input data words to provide column-wise transposed groups of data words; wherein a group of input data words comprises multiple vertically aligned input data words; and

wherein the control logic is adapted to control a transposing and a duplicating of code components of a pixel input data set while maintaining a row-wise arrangements of color components of the pixel input data set; wherein the pixel input data set comprises a row-wise sequence of different components of a single pixel and a code component that related to the single pixel.

11. A system having data processing capabilities, the system comprises:

a semiconductor substrate;

a memory that is formed on the semiconductor substrate and comprises multiple memory cells arranged in rows and columns;

associative memory cells that are arranged in rows and columns; and

control logic that is coupled to the memory and to the associative memory cells;

wherein the control logic controls a re-arrangement of the input data words in response to parallel computational capabilities of an associative memory section, and controls a process of re-arranged input-data words by instructing the associative memory cells to perform at least one associative operation that comprises comparing in parallel multiple columns of associative memory cells to at least one comparand; and

wherein the control logic is adapted to control a duplication of multiple input data words so that data words that store pixel information of adjacent pixels are stored in proximity to each other.

12. A system having data processing capabilities, the system comprises:

a semiconductor substrate;

a memory that is formed on the semiconductor substrate and comprises multiple memory cells arranged in rows and columns;

associative memory cells that are arranged in rows and columns; and

control logic that is coupled to the memory and to the associative memory cells;

wherein the control logic controls a re-arrangement of the input data words in response to parallel computational capabilities of an associative memory section, and controls a process of re-arranged input-data words by instructing the associative memory cells to perform at least one associative operation that comprises comparing in parallel multiple columns of associative memory cells to at least one comparand; and

wherein the control logic is adapted to control a re-arrangement of frames that have a line size that is larger than a width of row of associative memory section cells; wherein the re-arrangement comprises storing vertically partitioning a frame to multiple frame portions, wherein a width of each frame portion does not exceed the width of row of associative memory section cells; and

wherein the control logic is adapted to control a duplication of multiple input data words so that data words that store pixel information of adjacent pixels are stored in proximity to each other.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 4, 2016
From: GSI TECHNOLOGY ISRAEL LTD.
To: GSI TECHNOLOGY INC.
Reel/Frame 040510/0832 →
CHANGE OF NAME Recorded Feb 8, 2016
From: MIKAMONU GROUP LTD.
To: GSI TECHNOLOGY ISRAEL LTD.
Reel/Frame 037805/0551 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 29, 2014
From: ZIKBIT LTD.
To: MIKAMONU GROUP LTD.
Reel/Frame 034056/0263 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 23, 2010
From: AKERIB, AVIDAN; EHRMAN, ELI; MEYASSED, MOSHE; AGAM, OREN
To: ZIKBIT LTD.
Reel/Frame 024118/0883 →
Continuity (3)
Continuation In Part 12119197 · May 12, 2008
Provisional Application 61072931 · Apr 2, 2008
Related Publication 20100164972A1 · Jul 1, 2010