Nova Patents
NZ239239A

Associative memory

Abstract

A computing device implements a functional programming in hardware and operates as a reduction processor. Programs to be evaluated are represented as a directional graph of closures, where each part of a program is represented by a closure. During execution, this directional graph of closures is gradually reduced according to the reduction rules of the declarative language used. The device has an active associative object storage having storage cells able to store and execute at least part of a computer program. The device has several ports that contain storage cells and which are able to exchange and compare data and programs through a unification of internal and external behaviors.

NZ239239A, drawing sheet 1
Sheet 1 of 75

Term

Term ended

Projected expiry passed 2 August 2011, 15.1 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

7 claims: 4 independent, 3 dependent

  1. 1
    WHAT WE CLAIM IS:1. An associative memory having a first control bus arrangement for external control, a second memory bus arrangement for data comprising: several storage cells connected to said memory bus arrangement for storing a composed information, all of said storage cells being simultaneously controllable by said control bus arrangement in accordance with an operation to be performed, means in each of said storage cells for storing at least one mark, said mark(s) indicating at least select state(s) or non select state(s) for said storage cell, means internal to the associative memory for making search operations through the memory bus among said cells to set at least one mark, means in each storage cell for communicating with said buses and to control said storage cells to take part in an actual logical operation by setting a priority request state for said storage cells when said operation requests selection, said priority request state being based on said mark(s) in said means in each of said storage cells, and a priority decoder to which all said storage cells are coupled which selects one out of several of said storage cells by reading said priority request state from the means setting said priority request state in all storage cells and simultaneously returning an individual signal to each storage cell in the memory indicating said select or non select state(s). 2. A memory according to Claim 1, wherein at least one global bus connected to each said storage cells is provided for making logical operations of a type AND and OR between said storage cells. N.Z. r '<rENT OFFICE 2 9 APR 1994 F '.COVED 3. A memory according to Claim 1 or 2, wherein each storage cell includes a number of data object storage fields, each data object storage field being able to store a data word and at least one of said marks, being in the form of tags. 4. A memory according to any one of Claims 1 to 3, wherein each storage cell includes at least one state storage field indicating a state or states of the content in said storage cell. 5. A memory according to Claim 3 or 4, wherein at least one second bus is provided for said storage fields in each said storage cell in order to make logical operations of the type WIRED AND and WIRED OR between said storage fields, and said priority decoder, each of said storage fields being able to read said buses and to take part in an actual logical operation. 6. A memory according to any one of Claims 1 to 5, wherein said storage cells are connected to a combinational central control unit through said control bus arrangement which is distributed to all said storage cells, data words being able to be transferred into or out of said memory on said memory bus arrangement by a composed information provided on said control bus arrangement. 7. A memory according to any one of Claims 3 to 6, wherein each said storage field includes a control element head storing said marks, being in the form of tags, and a number of bit cells in which the bits of said data word are stored, each cell being connected to each other and to said head. 8. A memory according to Claim 7, wherein said bit cells are controllable from said element head to perform one of the following operations at a time: rest in which each said bit cell keeps a stored bit value stored, read in which stored bit values in said bit cells are read, write in which bit values are written in said bit cells, compare in which a data word composed by bit values stored in said bit cells is compared with another data word. p ______ -•'-Ί N.7 2 9 APR 1994 9. A memory according to Claim 8, wherein said control from said element head is dependent on logical conditions each being a function of data on said second buses, earlier mark(s) being in the form of tag(s), the result of said comparison in case of said comparison operation and a control signal from said central control unit to said memory. 10. A memory according to Claim 8, wherein said mark(s) being in the form of tag(s) is settable in dependence on logical conditions each being a function on data on said second buses, earlier mark(s) being in the form of tag(s), the result of said comparison in case of said comparison operation and a control signal from said central control unit to said memory. 11. A memory according to any one of Claims 7 to 10, wherein a first wire connected to said element head interconnects all said bit cells within a storage field and wherein all said bit cells are controlled by signals on said wire, and wherein other wires connected to said bit cells are connected to corresponding bit cells in the other storage cells in said memory. 12. A memory according to any one of Claims 1 to 11, wherein said priority decoder is a combinational circuit and includes one section for each storage cell, each section having a first connection for REQUEST, on which a bit value ’true’ represents NEED and a bit value 'false’ NO NEED, and a second connection for grant, on which a bit value 'true' represents CHOSEN and 'false' NOT CHOSEN. 13. A memory according to any one of Claims 1 to 12, wherein a search is made by making a comparison of said mark(s), being in the form of tag(s), by control of said element head and to get the result FIT or DIFFERENT, and wherein the search is made in one of the following ways: (1). searching for each storage field individually and independently of the composed information in other storage fields, Γΐΐ.Ζ. ΓΑΓΓΝ Cf,···'· Γ Ί 2 9 APR 1994 i RECEiViT.
  2. 2
    (2) searching using a comparison to selected storage fields in a storage cell, the result being FIT in every selected storage field, and (3). searching using a comparison to selected storage fields in a storage ceil, 5 the result being FIT in at least one of the selected storage fields. 14. A memory according to Claim 13, wherein a comparison is made in one of the following ways:10 (1) comparing two bit patterns, which comparison results in FIT only when all corresponding bits are alike, and (2). coding the two bit patterns to be compared or only one of them such that at least one of the bits states that the bit pattern information corresponds 15 to an ARBITRARY and a SPECIFIC information value v, if, at a comparison, one of the information values corresponds to ARBITRARY then the result is FIT, otherwise the result is FIT only when the two specific information values v are identical. 15. A memory according to any one of Claims 1 to 14 including bit cells, all of said bit cells being able to store a bit value, said value being either 'true' or 'false', said cell comprising: a first connection which is constantly provided with a supply voltage, a second, a third and a fourth connection each of which is settable in different control states;said ceil circuit being such that each combination of said control states on said second, third and fourth connection is setting said memory bit cell in an individual among a set of functional states. 30 16. A memory according to Claim 15, wherein said control states are high level, low level, no current into cell, current into cell for all said second, third and fourth wires and also current out of cell for at least one of said wires. 2 9 APR 19¾ N.Z. •!CE RECEIVED 17. A memory according to Claim 16, wherein said second wire is an access wire and said third and fourth wires having signals inverted relative to each other when writing or reading said cells. N.Z. PATENT OFFICE 18. A memory according to any one of Claims 15 to 17, in which a bit value is storable, said value being either 'true' or 'false', wherein the following functional states are settable by said control states: rest in which said cell is just storing said bit value, read in which said bit value can be read, don't read in which said cell is just storing said bit value, write false in which said stored bit value is set to 'false', write true in which said stored bit value is set to 'true', don't write in which said cell is just storing said bit value, comp, false in which said stored bit value is compared to a value 'false', comp, true in which said stored bit value is compared to a value 'true', don't comp, in which said cell is just storing said bit value. 19. A memory according to any one of Claims 15 to 18, wherein said bit cells contain a flip-flop controlable from each side via said third and fourth wires, wherein said flip-flop has a first and a second node settable on essentially a first and a second voltage level, and wherein said flip-flop has its supply voltage between said first (Vcc) and second wires (acc), said second wire being controllable to different voltage levels. 20. A memory according to any one of Claims 17 to 19, wherein, between said second wire and said first wire, a first and a second series connection are provided in parallel, each including the source/drain path of a transistor and a load, the interconnection between said load and the drain of said transistor in said first series connection being said first node (nl) and being connected to the gate of said transistor in said second series connection and the drain of said transistor in said second series connection being connected to the gate of the transistor in said first series connection, wherein a first rectifying element is connected between said third wire and said first node permitting current to flow only in one direction relative to said third wire and a second rectifying element is connected between said fourth wire and said second node permitting current to flow only in one direction relative to said fourth wire. 21. A memory according to Claim 20, wherein said rectifying elements are chosen among the following components: (1). n-channel MOS FET in which the drain and the gate are interconnected (positive voltages). ¢2): p-channel MOS FET in which the drain and the gate are interconnected (negative voltages).
  3. 3
    (3) . pn-diode (positive voltages, negative voltages with the diode reversed).
  4. 4
    (4) . Schottky-diode (positive voltages, negative voltages with the diode reversed. 22. A memory according to Claim 20 or 21, wherein said transistors are chosen among the following components:N.Z. PAT (6) . n-channel MOS FET having its gate as a control electrode and the source and the drain as drive connections (positive voltages).
  5. 5
    (7) . ρ-channel MOS FET having its gate as a control electrode and the source and the drain as drive connections (negative voltages). 5
  6. 6
    (8). pnp bipolar transistor having the base as the control electrode and the emitter and collector as drive connections (positive voltages).
  7. 7
    (9). npn bipolar transistor having the base as the control electrode and the emitter and collector as drive connections (negative voltages). 24. An associative memory substantially as hereinbefore described with reference to the accompanying drawings. By the authorised agents A J PARK & SON ΡθΓ 1884 2392^9 MEMORY BUS FIQ.1 acc