Patent US4958476A successfully refreshed from Google Patents.
Patent US3733915A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5612964A Expired / Lapsed US ⏱️ 0.0 years remaining

High performance, fault tolerant orthogonal shuffle memory and method

Assignee: Individual
•
Filing: 1991-04-08
•
Granted: 1997-03-18
•
Expires: 2011-04-08
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A high performance fault tolerant orthogonal shuffle memory comprising a plurality of memory cells arranged to form a two-dimensional array of rows and columns. Each memory cell includes a data store element for storing data and a multi-state data transmission element to provide access to the data stored in the data store element. Each memory cell has the dual function of storing and transmitting (i.e. shifting) data. The memory cell array is coupled to first and second registers and a shuffle signal generator. In operation, data is shuffled column by column through the array, such that only two columns of memory cells are activated at any time. The shuffle memory herein disclosed may form subarrays of each of a data storage array and a redundancy storage array that are coupled to an improved error detector and corrector to form a high performance fault tolerant orthogonal memory system.

Inventors

  • 👤 Tegze P. Haraszti

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-08 16:02
CPC Classifications
G; G11; G11C; G11C29/00; G11C29/70; G11C29/88; G06; G06F; G06F11/00; G06F11/07; G06F11/08; G06F11/10; G06F11/1008; G06F11/1076; G11C19/00; G11C19/38

Claims Analysis

Total Claims: 13
Claim 1
Independent Claim 385 words
A method for sequentially accessing, storing, reading and writing data in a memory comprising first and second multi-stage registers holding one data bit per stage and a memory cell array coupled to said first and second registers and having rows and columns of memory cells, each memory cell from said memory cell array including a data storage element and a data transmission element coupled to said data storage element, said method comprising the steps of: (a) transferring the data contents of the data storage elements of the first column of memory cells of said array into the first register during a first time interval by way of respective ones of said data transmission elements of said first column of memory cells; (b) transferring the data contents of the data storage elements of the second column of memory cells of said array into the data storage elements of the memory cells of said first column during a second time interval by way of respective ones of said data transmission elements of said second column of memory cells; (c) transferring the data contents of the data storage elements of each succeeding column of memory cells of said array into the data storage elements of the memory cells of the immediately-preceding column during another time interval by way of respective ones of said data transmission elements of said succeeding column of memory cells; (d) repeating step (c) until the data contents of the data storage elements of the last column of memory cells of said array are transferred into the data storage elements of the memory cells in the next-to-last column by way of respective ones of said data storage elements of said last column of memory cells, such that data is transferred between the storage elements of the memory cells of only two columns of said array during any time interval; (e) transferring the data contents of said second register into the data storage elements of the last column of memory cells of said array; (f) shifting the data contents of said first and second registers by one bit during each of said steps (a) through (e); and (g) supplying the data contents of the first stage of said first register into the first stage of said second register during each of said steps (a) through (e).
Claim 2
Independent Claim 385 words
A method for sequentially accessing, storing, reading and writing data in a memory comprising first and second multi-stage registers holding one data bit per stage and a memory cell array coupled to said first and second registers and having rows and columns of memory cells, each memory cell from said memory cell array including a data storage element and a data transmission element coupled to said data storage element, said method comprising the steps of: (a) transferring the data contents of the data storage elements of the first column of memory cells of said array into the first register during a first time interval by way of respective ones of said data transmission elements of said first column of memory cells; (b) transferring the data contents of the data storage elements of the second column of memory cells of said array into the data storage elements of the memory cells of said first column during a second time interval by way of respective ones of said data transmission elements of said second column of memory cells; (c) transferring the data contents of the data storage elements of each succeeding column of memory cells of said array into the data storage elements of the memory cells of the immediately-preceding column during another time interval by way of respective ones of said data transmission elements of said succeeding column of memory cells; (d) repeating step (c) until the data contents of the data storage elements of the last column of memory cells of said array are transferred into the data storage elements of the memory cells in the next-to-last column by way of respective ones of said data storage elements of said last column of memory cells, such that data is transferred between the storage elements of the memory cells of only two columns of said array during any time interval; (e) transferring the data contents of said second register into the data storage elements of the last column of memory cells of said array; (f) shifting the data contents of said first and second registers by one bit during each of said steps (a) through (e); and (g) supplying the data contents of the first stage of said first register into the first stage of said second register during each of said steps (a) through (e).
Claim 3
Dependent Claim 35 words
The method recited in claim 1, including the additional step of cyclically repeating steps (a) through (e) and reading or writing data from or to said first and second registers during any of said steps.
Claim 4
Dependent Claim 97 words
The method recited in claim 1, including the additional steps of: connecting each of the data storage elements of the memory cells in a row of said memory cell array in electrical series; connecting each of the data storage elements of the memory cells in a column of said memory cell array in electrical parallel; and interconnecting each of the data transmission elements of the memory cells in a column of said memory cell array by a common bus line to allow the simultaneous transfer of data in and out of the memory cells of each column.
Claim 5
Dependent Claim 54 words
The method recited in claim 1, including the additional steps of forming each of said first and second registers from a plurality of shift register stages for receiving, storing and transferring data; and connecting each stage of said first and second registers to a respective column of memory cells of said memory cell array.
Claim 6
Dependent Claim 25 words
The method recited in claim 1, including the additional step of fabricating each of said memory cells of said memory cell array from semiconductor material.
Claim 7
Dependent Claim 51 words
The method recited in claim 1, including the additional step of coupling a multi-stage signal generator holding one data bit per stage to said memory cell array such that each stage of said signal generator is connected to each of the data transmission elements of a respective column of memory cells.
Claim 8
Dependent Claim 24 words
The method recited in claim 6, including the additional step of connecting the last stage of said signal generator to the first stage thereof.
Claim 9
Dependent Claim 268 words
The method recited in claim 1, including the additional step of connecting an error detector and corrector to said memory for improving the fault tolerancy thereof, said error detector and corrector comprising: a data weigher coupled to said memory to receive data words therefrom and to generate check codes by computing weights for said data words; redundancy storage means connected to said data weigher for receiving and storing the check codes generated by said data weigher; a check code register connected to said redundancy storage means for receiving and temporarily storing the check codes from said redundancy storage means; a comparator connected to said data weigher and to said check code register to receive the check codes therefrom, said comparator comparing the check code generated by said data weigher for a particular data word during a write operation of said memory to the check code generated by said data weigher for said data word during a read operation, said comparator generating an error flag output signal when a discrepancy occurs between the check codes compared thereby; error corrector means connected to said check code register to receive the check codes stored therein and to said comparator to receive said error flag signal therefrom, said error corrector means locating and correcting the error occurring in the particular data word of said memory and in the particular check code so as to supply corrected data to said memory and corrected check codes to said redundancy storage means; and means to couple said memory to said error corrector means to supply data words from said memory to said error corrector means.
Claim 10
Dependent Claim 25 words
The method recited in claim 8, including the additional step of coupling said memory to said error corrector means by means of a data buffer.
Claim 11
Dependent Claim 25 words
The method recited in claim 8, including the additional step of using a counter to form the data weigher of said error detector and corrector.
Claim 12
Dependent Claim 31 words
The method recited in claim 8, including the additional step of selecting a Berger-type code as the information weighted code used by the data weigher of said error detector and corrector.
Claim 13
Dependent Claim 20 words
The method recited in claim 8, including the additional step of fabricating said error detector and corrector from semiconductor material.

References Cited (Backward Citations)

US3893088A Cited
US3953838A Cited
US3963908A Cited
US4024509A Cited
US4151609A Cited
US4363125A Cited
US4365332A Cited
US4866718A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-03-17 2000-09-16 2001-03-18 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-03-17 2004-09-16 2005-03-18 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-03-17 2008-09-16 2009-03-18 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag