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

Intelligent memory architecture

Assignee: Individual
•
Filing: 1994-03-23
•
Granted: 1997-10-14
•
Expires: 2014-03-23
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An intelligent memory device comprises a data module, an access module and an interface module and is configured to allow data manipulation to take place within the data module without the involvement of the host system. The memory module consists of a plurality of data storage elements each of which has an associated three port switch enabling data communication between the data storage elements without data having to tie up the data bus of the host system. The access module comprises a 1:N switch and a range decoder. The 1:N switch provides access between the host system data bus and the three port switches of the data module, while the range decoder decodes a range of addresses to be affected by an internal memory operation. The interface module comprises an instruction decoder and control logic and is responsive to an instruction sent to the intelligent memory device by the host system to control the operation of internal memory manipulations. Intelligent memory devices can be used to perform a variety of memory data manipulations of varying complexity, including summing, gating, searching and shifting. In the simplest form of intelligent memory device only two operations are provided, these being a shift up and a shift down, each of which causes the data in a range of contiguous memory locations to be shifted by one memory location in the given direction.

Inventors

  • 👤 David Siu Fu Chung

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 19:43
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/38; G06F9/3877; G06F9/3879; G06F13/00; G06F13/14; G06F13/16; G06F13/38; G06F13/42; G06F13/4204; G06F13/4234; G06F15/00; G06F15/76; G06F15/78; G06F15/7807; G06F15/7821; G06F15/7839; G06F15/7842; G11; G11C; G11C19/00

Claims Analysis

Total Claims: 50
Claim 1
Independent Claim 260 words
A memory module for storing data, and having a memory array organized as a plurality of contiguous memory banks, each memory bank having a plurality of data storage elements and three external data paths respectively communicating with two adjacent memory banks and with a host computer, the module having an access system arranged to provide a plurality of access modes to the memory array, one of said modes including concurrent selection and activation of multiple memory, banks between two given addresses, and an interface system arranged to interpret access requests delivered to the module via address, data and control lines and to provide control signals to the access system to select the required access mode, to provide address information to select the storage element or elements to be accessed within an address space of the array, and to provide access to the selected storage element or elements, the interface and access systems being arranged to provide conventional read/write access to the memory array in response to a conventional read/write request to the memory module and to provide additional access modes which allow data to be operated on within the memory module independently of a system to which the memory module is connected, the interface system being arranged to decode information provided via the address, data and/or control lines of the module during a conventional read or write operation to the address space of the memory array to determine the begin and end address of the data to be operated on and the form of a data operation to be performed.
Claim 2
Dependent Claim 260 words
A memory module for storing data, and having a memory array organized as a plurality of contiguous memory banks, each memory bank having a plurality of data storage elements and three external data paths respectively communicating with two adjacent memory banks and with a host computer, the module having an access system arranged to provide a plurality of access modes to the memory array, one of said modes including concurrent selection and activation of multiple memory, banks between two given addresses, and an interface system arranged to interpret access requests delivered to the module via address, data and control lines and to provide control signals to the access system to select the required access mode, to provide address information to select the storage element or elements to be accessed within an address space of the array, and to provide access to the selected storage element or elements, the interface and access systems being arranged to provide conventional read/write access to the memory array in response to a conventional read/write request to the memory module and to provide additional access modes which allow data to be operated on within the memory module independently of a system to which the memory module is connected, the interface system being arranged to decode information provided via the address, data and/or control lines of the module during a conventional read or write operation to the address space of the memory array to determine the begin and end address of the data to be operated on and the form of a data operation to be performed.
Claim 3
Dependent Claim 43 words
The memory module of claim 1 wherein an operation instruction directing the interface system to perform the data operation is indicated to the interface system by writing a predetermined data word to a storage location within the address space of the memory module.
Claim 4
Dependent Claim 41 words
The memory module of claim 1 wherein an operation instruction directing the interface to perform the data operation is indicated to the interface system by performing an access to a predetermined address or an address within a predetermined range of address.
Claim 5
Dependent Claim 31 words
The memory module of claim 1 wherein an operation instruction directing the interface to perform the data operation is indicated to the interface system by a predetermined sequence of control signals.
Claim 6
Dependent Claim 36 words
The memory module of claim 4 wherein the predetermined sequence of control signals correspond to a read operation within the address space of the memory module, followed by a write operation within the same address space.
Claim 7
Dependent Claim 28 words
The memory module of claim 4 wherein the begin and end addresses of the data to be operated on are provided on the address lines of the module.
Claim 8
Dependent Claim 48 words
The memory module of claim 6 wherein the end address of the data to be operated on is given by the address specified in said read operation and the begin address of the data to be operated on is given by the address specified in said write operation.
Claim 9
Dependent Claim 61 words
The memory module of claim 7 wherein the read operation is functionally equivalent to a conventional read operation on the memory array and the write operation is functionally equivalent to a conventional write operation on the memory array, but wherein the write function is delayed until after the data from the storage element at the begin address has been operated on.
Claim 10
Dependent Claim 30 words
The memory module of claim 4 wherein the begin and end addresses of the data to be operated on are provided on the address and data lines of the module.
Claim 11
Dependent Claim 48 words
The memory module of claim 9 wherein the end address of the data to be operated on is given by the address specified in said read operation and the starting address of the data to be operated on is given by the data specified in said write operation.
Claim 12
Dependent Claim 112 words
The memory module of claim 10 wherein the interface system includes address range decoding means, comprising first and second address input means, decoding logic means and a plurality of address selection outputs, there being one output for each address in the storage array, the address range decoding means being arranged to accept begin and end address codes as said first and second address inputs respectively and the decoding logic being arranged to activate those outputs corresponding to the first and second input addresses and each address between the first and second input addresses to facilitate operating on the data in the range of storage locations bounded by the begin and end addresses.
Claim 13
Dependent Claim 58 words
The memory module of claim 11 wherein the interface system includes an instruction decoder comprising first and second address input means, instruction decoding logic and at least one output arranged to indicate the operation instruction, the instruction decoding logic being arranged to compare the first and second addresses and to set the output depending upon their relative values.
Claim 14
Dependent Claim 112 words
The memory module of claim 8 wherein the interface system includes address range decoding means, comprising first and second address input means, decoding logic means and a plurality of address selection outputs, there being one output for each address in the storage array, the address range decoding means being arranged to accept begin and end address codes as said first and second address inputs respectively and the decoding logic being arranged to activate those outputs corresponding to the first and second input addresses and each address between the first and second input addresses to facilitate operating on the data in the range of storage locations bounded by the begin and end addresses.
Claim 15
Dependent Claim 58 words
The memory module of claim 13 wherein the interface system includes an instruction decoder comprising first and second address input means, instruction decoding logic and at least one output arranged to indicate the operation instruction, the instruction decoding logic being arranged to compare the first and second addresses and to set the output depending upon their relative values.
Claim 16
Dependent Claim 55 words
The memory module of claim 14 wherein the address range decoding logic is incorporated into the instruction decoding logic and the instruction decoder provides at least two output bits for each storage location in the memory array, to select the location as one to be operated on and to indicate the operation to be performed.
Claim 17
Dependent Claim 14 words
The memory module of claim 13 wherein the decoding logic comprises a programmed ROM.
Claim 18
Dependent Claim 39 words
The memory module of claim 13 wherein the decoding logic comprises a set of range selection outputs, a pair of line decoding circuits and combinational logic, the decoding circuits and combinational logic providing signals to the range selection outputs.
Claim 19
Dependent Claim 15 words
The memory module of claim 13 wherein the decoding logic comprises a combinational logic circuit.
Claim 20
Dependent Claim 14 words
The memory module of claim 15 wherein the decoding logic comprises a programmed ROM.
Claim 21
Dependent Claim 25 words
The memory module of claim 15 wherein the decoding logic comprises a pair of line decoding circuits and combinational logic to derive range selection outputs.
Claim 22
Dependent Claim 15 words
The memory module of claim 15 wherein the decoding logic comprises a combinational logic circuit.
Claim 23
Dependent Claim 30 words
The memory module of claim 1 wherein the operation to be performed on the data is a shifting of data from one storage location to another within the memory array.
Claim 24
Dependent Claim 19 words
The memory module of claim 22 wherein the shifting operation is performed on one or more contiguous storage elements.
Claim 25
Dependent Claim 35 words
The memory module of claim 23 wherein the shifting operation is arranged to shift the data in each of the one or more contiguous storage elements to an adjacent storage element in a given direction.
Claim 26
Dependent Claim 42 words
The memory module of claim 24 wherein the interface system decodes information provided via the address, data and/or control lines of the module to determine the begin and end address of the data to be shifted and the direction of the shift.
Claim 27
Dependent Claim 23 words
The memory module of claim 25 wherein the shift instruction is indicated to the interface system by a predetermined sequence of control signals.
Claim 28
Dependent Claim 36 words
The memory module of claim 26 wherein the predetermined sequence of control signals correspond to a read operation within the address space of the memory module, followed by a write operation within the same address space.
Claim 29
Dependent Claim 32 words
The memory module of claim 27 wherein the begin and end addresses of the data to be operated on by the shift operation are provided on the address lines of the module.
Claim 30
Dependent Claim 45 words
The memory module of claim 28 wherein the end address of the data to be shifted is given by the address specified in said read operation and the begin address the data to be shifted is given by the address specified in said write operation.
Claim 31
Dependent Claim 64 words
The memory module of claim 29 wherein the read operation is functionally equivalent to a conventional read operation on the memory array and the write operation is functionally equivalent to a conventional write operation on file memory array, but wherein the write function is delayed until after the data from the storage element at the begin address has been shifted to the adjacent location.
Claim 32
Dependent Claim 34 words
The memory module of claim 27 wherein the begin and end addresses of the data to be operated on by the shift operation are provided on the address and data lines of the module.
Claim 33
Dependent Claim 46 words
The memory module of claim 31 wherein the end address of the data to be shifted is given by the address specified in said read operation and the begin address of the data to be shifted is given by the data specified in said write operation.
Claim 34
Dependent Claim 101 words
The memory module of claim 32 wherein the interface system includes address range decoding means, comprising first and second address input means, decoding logic means and a plurality of address selection outputs, there being one output for each address in the storage array, the address range decoding means being arranged to accept begin and end address codes as said first and second address inputs respectively and the decoding logic being arranged to activate those outputs corresponding to the first and second input addresses to facilitate shifting the data in the range of storage locations bounded by the begin and end addresses.
Claim 35
Dependent Claim 22 words
The memory module of claim 33 wherein direction of shifting is determined by the relative magnitudes of the first and second address.
Claim 36
Dependent Claim 111 words
The memory module of claim 30 wherein the interface system includes address range decoding means, comprising first and second address input means, decoding logic means and a plurality of address selection outputs, there being one output for each address in the storage array, the address range decoding means being arranged to accept begin and end address codes as said first and second address inputs respectively and the decoding logic being arranged to activate those outputs corresponding to the first and second input addresses and each address between the first and second input addresses to facilitate shifting the data in the range of storage locations bounded by the begin and end address.
Claim 37
Dependent Claim 22 words
The memory module of claim 35 wherein direction of shifting is determined by the relative magnitudes of the first and second address.
Claim 38
Dependent Claim 57 words
The memory module of claim 35 wherein the interface system includes an instruction decoder comprising first and second address input means, instruction decoding logic and at least one output arranged to indicate shift direction, the instruction decoding logic being arranged to compare the first and second addresses and to set the output depending upon their relative values.
Claim 39
Dependent Claim 52 words
The memory module of claim 37 wherein the address range decoding logic is incorporated into the instruction decoding logic and the instruction decoder provides a two bit output for each storage location in the memory array, to select the location when it is to be shifted and to indicate the shift direction.
Claim 40
Dependent Claim 14 words
The memory module of claim 36 wherein the decoding logic comprises a programmed ROM.
Claim 41
Dependent Claim 41 words
The memory module of claim 35 wherein the decoding logic comprises a set of range of selection outputs, a pair of line decoding circuits and combinational logic, the line decoding circuits and combinational logic providing signals to the range selection outputs.
Claim 42
Dependent Claim 15 words
The memory module of claim 36 wherein the decoding logic comprises a combinational logic circuit.
Claim 43
Dependent Claim 14 words
The memory module of claim 38 wherein the decoding logic comprises a programmed ROM.
Claim 44
Dependent Claim 40 words
The memory module of claim 38 wherein the decoding logic comprises a set of range selection outputs, a pair of line decoding circuits and combinational logic, the line decoding circuits and combinational logic providing signals to the range selection outputs.
Claim 45
Dependent Claim 15 words
The memory module of claim 38 wherein the decoding logic comprises a combinational logic circuit.
Claim 46
Dependent Claim 207 words
An instruction decoding device for decoding an instruction indicating an operation to be performed on data in a storage array having a plurality of contiguous addressable storage locations, the device comprising first and second address input means, read/write control signal input means, instruction decoding logic, address range decoding logic, one or more instruction outputs arranged to indicate the operation to be performed and a plurality of address selection outputs, the instruction decoding logic being arranged to compare the first and second addresses and respective read/write control signals and to set the one or more instruction outputs depending upon the relative values of the address and control signals, the address range decoding logic being arranged to control the plurality of address selection outputs, there being one address selection output for each address in the storage array, the address range decoding logic being arranged to accept begin and end address codes as said first and second address inputs and to activate those address selection outputs corresponding to the first and second input addresses and each address between the first and second input addresses to select a range of storage locations bounded by the begin and end addresses which contain the data upon which the operation is to be performed.
Claim 47
Dependent Claim 207 words
An instruction decoding device for decoding an instruction indicating an operation to be performed on data in a storage array having a plurality of contiguous addressable storage locations, the device comprising first and second address input means, read/write control signal input means, instruction decoding logic, address range decoding logic, one or more instruction outputs arranged to indicate the operation to be performed and a plurality of address selection outputs, the instruction decoding logic being arranged to compare the first and second addresses and respective read/write control signals and to set the one or more instruction outputs depending upon the relative values of the address and control signals, the address range decoding logic being arranged to control the plurality of address selection outputs, there being one address selection output for each address in the storage array, the address range decoding logic being arranged to accept begin and end address codes as said first and second address inputs and to activate those address selection outputs corresponding to the first and second input addresses and each address between the first and second input addresses to select a range of storage locations bounded by the begin and end addresses which contain the data upon which the operation is to be performed.
Claim 48
Dependent Claim 14 words
The memory module of claim 45 wherein the decoding logic comprises a programmed ROM.
Claim 49
Dependent Claim 40 words
The memory module of claim 45 wherein the decoding logic comprises a set of range selection outputs, a pair of line decoding circuits and combinational logic, the line decoding circuits and combinational logic providing signals to the range selection outputs.
Claim 50
Dependent Claim 15 words
The memory module of claim 45 wherein the decoding logic comprises a combinational logic circuit.

References Cited (Backward Citations)

US4835733A Cited
US5134711A Cited
WO1990000287A1 Cited
US5475631A Cited

USPTO Annuity & Maintenance Windows

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag