← Back to Patent Explorer
US5165009A Expired / Lapsed US ⏱️ 0.0 years remaining

Neural network processing system using semiconductor memories

Assignee: Hitachi Ltd
•
Filing: 1990-12-26
•
Granted: 1992-11-17
•
Expires: 2010-12-26
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Herein disclosed is a data processing system having a memory packaged therein for realizing a large-scale and high-speed parallel distributed processing and, especially, a data processing system for the neural network processing. The neural network processing system according to the present invention comprises: a memory circuit for storing neuron output values, connection weights, the desired values of outputs, and data necessary for learning; and input/output circuit for writing or reading data in or out of said memory circuit; a processing circuit for performing a processing for determining the neuron outputs such as the product, sum and nonlinear conversion of the data stored in said memory circuit, a comparison of the output value and its desired value, and a processing necessary for learning; and a control circuit for controlling the operations of said memory circuit, said input/output circuit and said processing circuit. The processing circuit is constructed to include at least one of an adder, a multiplier, a nonlinear transfer function circuit and a comparator so that at least a portion of the processing necessary for determining the neutron output values such as the product or sum may be accomplished in parallel. Moreover, these circuits are shared among a plurality of neutrons and are operated in a time sharing manner to determine the plural neuron output values. Still moreover, the aforementioned comparator compares the neuron output value determined and the desired value of the otuput in parallel.

Inventors

  • 👤 Takao Watanabe
  • 👤 Katsutaka Kimura
  • 👤 Kiyoo Itoh
  • 👤 Yoshiki Kawajiri

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 09:52
CPC Classifications
G; G06; G06N; G06N3/00; G06N3/02; G06N3/06; G06N3/063

Claims Analysis

Total Claims: 13
Claim 1
Independent Claim 180 words
A data processing system comprising: first memory means for storing first data; second memory means for storing first weight data and second weight data; input/output circuit means for writing said first data into said first memory means, reading said first data from said first memory means, writing said first and second weight data into said second memory means and reading said first and second weight data from said second memory means; register means for storing said first data read out from said first memory means; arithmetic circuit means for calculating calculation data from said first data stored in said register means and said first weight data read out from said second memory means; and, control circuitry means for controlling said first and second memory means, said register means, said arithmetic circuit means and said input/output circuit means to calculate next data from said first data read out from said register means and said second weight data read out from said second memory means while said calculation data calculated by said arithmetic circuit means is written into said first memory means.
Claim 2
Dependent Claim 180 words
A data processing system comprising: first memory means for storing first data; second memory means for storing first weight data and second weight data; input/output circuit means for writing said first data into said first memory means, reading said first data from said first memory means, writing said first and second weight data into said second memory means and reading said first and second weight data from said second memory means; register means for storing said first data read out from said first memory means; arithmetic circuit means for calculating calculation data from said first data stored in said register means and said first weight data read out from said second memory means; and, control circuitry means for controlling said first and second memory means, said register means, said arithmetic circuit means and said input/output circuit means to calculate next data from said first data read out from said register means and said second weight data read out from said second memory means while said calculation data calculated by said arithmetic circuit means is written into said first memory means.
Claim 3
Dependent Claim 26 words
The data processing system according to claim 1 wherein said first and second memory means are constructed of memory cells comprising a transistor and a capacitor.
Claim 4
Dependent Claim 134 words
The data processing system according to claim 1 wherein said first memory means includes a memory cell array having a plurality of data lines; a plurality of word lines arranged to intersect with said data lines; and memory cells each of which is arranged at desired intersections of said word and data lines, so that the data stored in the memory cells can be read out to the plurality of data lines intersecting with said word lines by selecting at least one of said word lines, wherein said arithmetic circuit means includes means for calculating an updated value to be written into said first memory by using the data read out from said first memory means, and wherein said input/output circuit means includes means for writing said updated value into said first memory means.
Claim 5
Dependent Claim 19 words
The data processing system according to claim 1 wherein said data processing system is formed on a single chip.
Claim 6
Independent Claim 249 words
A method of calculating neuron output values of an s th ordinal layer of a multi-layered neural network having m ordered layers where s≦m, on a processing apparatus having a first memory storing neuron output values, a second memory storing correction weights, a register, an arithmetic circuit for performing a calculation, and an input/output circuit connecting the first memory, second memory, register and the arithmetic circuit, the method comprising the steps of: a) reading neuron output values of the (s-1) th ordinal layer from the first memory; b) latching the read neuron output values of the (s-1) th layer into the register; c) reading a first connection weight between the neurons of the (s-1) th layer and a first neuron of the s th layer; d) calculating an output value of the first neuron of the s th layer with the arithmetic circuit using the first connection weight and the latched output values of the (s-1) th layer; e) simultaneously i) writing the calculated output value of the first neuron of the s th layer to the first memory and ii) reading a second connection weight between the neurons of the (s-1) th layer and a second neuron of the s th layer and calculating an output value of the second neuron of the s th layer with the arithmetic circuit using the second connection weight and the latched output values of the (s-1) th layer; and, f) repeating step e) for all neurons of the s th layer.
Claim 7
Independent Claim 249 words
A method of calculating neuron output values of an s th ordinal layer of a multi-layered neural network having m ordered layers where s≦m, on a processing apparatus having a first memory storing neuron output values, a second memory storing correction weights, a register, an arithmetic circuit for performing a calculation, and an input/output circuit connecting the first memory, second memory, register and the arithmetic circuit, the method comprising the steps of: a) reading neuron output values of the (s-1) th ordinal layer from the first memory; b) latching the read neuron output values of the (s-1) th layer into the register; c) reading a first connection weight between the neurons of the (s-1) th layer and a first neuron of the s th layer; d) calculating an output value of the first neuron of the s th layer with the arithmetic circuit using the first connection weight and the latched output values of the (s-1) th layer; e) simultaneously i) writing the calculated output value of the first neuron of the s th layer to the first memory and ii) reading a second connection weight between the neurons of the (s-1) th layer and a second neuron of the s th layer and calculating an output value of the second neuron of the s th layer with the arithmetic circuit using the second connection weight and the latched output values of the (s-1) th layer; and, f) repeating step e) for all neurons of the s th layer.
Claim 8
Dependent Claim 60 words
The method of calculating s th layer neuron output values according to claim 5 further comprising: closing a plurality of connection switches between the first memory and the register; transferring the neuron output values of the (s-1) th layer into the register through the closed switches; and, opening the plurality of connection switches between the first memory and the register.
Claim 9
Dependent Claim 63 words
The method of calculating s th layer neuron output values according to claim 6 wherein step a) includes changing the signal state of a word line of the first memory to read the neuron output values of the (s-1) th layer and step c) includes changing the signal state of a word line of the second memory to read the first connection weight.
Claim 10
Independent Claim 250 words
A method of calculating neuron output values of a multi-layer neural network on a processing apparatus having a first memory storing neuron output values, a second memory storing correction weights, a register, an arithmetic circuit for performing a calculation, and an input/output circuit connecting the first memory, second memory, register and the arithmetic circuit, the method comprising the steps of: a) reading neuron output values of a (s-1) th layer from the first memory; b) latching the read neuron output values of the (s-1) th layer into the register; c) reading a first connection weight between the neurons of the (s-1) th layer and a first neuron of the s th layer; d) calculating an output value of the first neuron of the s th layer with the arithmetic circuit using the first connection weight and the latched output values of the (s-1) th layer; e) simultaneously i) writing the calculated output value of the first neuron of the s th layer to the first memory and ii) reading a second connection weight between the neurons of the (s-1) th layer and a second neuron of the s th layer and calculating an output value of the second neuron of the s th layer with the arithmetic circuit using the second connection weight and the latched output values of the (s-1) th layer; f) repeating step e) for all neurons of the s th layer; and, g) repeating steps a)-f) for each of the layers of the multi-layer neural network.
Claim 11
Independent Claim 250 words
A method of calculating neuron output values of a multi-layer neural network on a processing apparatus having a first memory storing neuron output values, a second memory storing correction weights, a register, an arithmetic circuit for performing a calculation, and an input/output circuit connecting the first memory, second memory, register and the arithmetic circuit, the method comprising the steps of: a) reading neuron output values of a (s-1) th layer from the first memory; b) latching the read neuron output values of the (s-1) th layer into the register; c) reading a first connection weight between the neurons of the (s-1) th layer and a first neuron of the s th layer; d) calculating an output value of the first neuron of the s th layer with the arithmetic circuit using the first connection weight and the latched output values of the (s-1) th layer; e) simultaneously i) writing the calculated output value of the first neuron of the s th layer to the first memory and ii) reading a second connection weight between the neurons of the (s-1) th layer and a second neuron of the s th layer and calculating an output value of the second neuron of the s th layer with the arithmetic circuit using the second connection weight and the latched output values of the (s-1) th layer; f) repeating step e) for all neurons of the s th layer; and, g) repeating steps a)-f) for each of the layers of the multi-layer neural network.
Claim 12
Dependent Claim 57 words
The method of calculating neuron output values according to claim 8 further comprising: closing a plurality of connection switches between the first memory and the register; transferring the neuron output values of the (s-1) th layer into the register through the closed switches; and, opening the plurality of connection switches between the first memory and the register.
Claim 13
Dependent Claim 60 words
The method of calculating neuron output values according to claim 9 wherein step a) includes changing the signal state of a word line of the first memory to read the neuron output values of the (s-1) th layer and step c) includes changing the signal state of a word line of the second memory to read the first connection weight.

References Cited (Backward Citations)

US4611299A Cited
US4994982A Cited
US4974169A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1995-11-17 1996-05-18 1996-11-17 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1999-11-17 2000-05-18 2000-11-17 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2003-11-17 2004-05-18 2004-11-17 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag