JPH0451382A - Information processor - Google Patents
Information processorInfo
- Publication number
- JPH0451382A JPH0451382A JP2159661A JP15966190A JPH0451382A JP H0451382 A JPH0451382 A JP H0451382A JP 2159661 A JP2159661 A JP 2159661A JP 15966190 A JP15966190 A JP 15966190A JP H0451382 A JPH0451382 A JP H0451382A
- Authority
- JP
- Japan
- Prior art keywords
- output
- vector
- input
- layer
- neuron
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Complex Calculations (AREA)
Abstract
Description
【発明の詳細な説明】
[産業上の利用分野]
本発明は、大規模かつ高速な並列分散処理を実現するた
めの情報処理装置に係り、特にニューラルネットワーク
情報処理に好適な情報処理装置に関する。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to an information processing apparatus for realizing large-scale, high-speed parallel distributed processing, and particularly to an information processing apparatus suitable for neural network information processing.
[従来の技術]
ニューロコンピユーテイングとよばれるニュラルネット
ワークを用いた並列分11ケ型情報処理(以下ニューラ
ルネットワーク情報処理)は、コンプレックスシステム
ズ1(1,987年)第145頁から第168頁(Se
jnowski、 T、 J、。[Prior Art] Parallel 11-part information processing using neural networks (hereinafter referred to as neural network information processing) called neurocomputing is described in Complex Systems 1 (1,987), pp. 145 to 168. (Se
jnowski, T. J.
and Ilosenberg、 C,R01987,
Parallelnccworks that 1ea
rn to pronounce Engli8ht、
ex+、、Complex Systems l、 p
p、]]45−168あるいはニューラルネットワーク
情報処理(産業図書、麻生英樹著)などに述べられてい
るように音声あるいは画像処理などの分野において注目
を集めている。ニューラルネットワーク情報処理では、
ネットワーク状に結合した多数のニューロンと呼ばれる
演算要素が、結合と呼ばれる伝達線を通じて情報をやり
とりして高度な情報処理を行なう。各々のニューロンで
は他のニー−ロンから送られてきた情報にニーロン出力
値)に対して積あるいは和などの単純な演算が行なわれ
る。各々の二二−ロン内の演算、さらには、異なるニュ
ーロンの演算も並列に行なうことか可能なため、原理的
には、高速に情報処理を行なうことができる特長を持っ
ている。また、ネイチャー323−9、(1986年8
)第533頁から第535頁(Rumelbart、
D、 E、 。and Ilosenberg, C.R01987,
Parallelncworks that 1ea
rn to pronounce English8ht,
ex+,, Complex Systems l, p
p, ]] 45-168 or Neural Network Information Processing (Sangyo Tosho, written by Hideki Aso), it is attracting attention in the fields of audio and image processing. In neural network information processing,
A large number of computing elements called neurons connected in a network perform sophisticated information processing by exchanging information through transmission lines called connections. Each neuron performs simple operations such as product or sum on information sent from other neurons (Neelon output value). It is possible to perform calculations within each neuron and even calculations in different neurons in parallel, so in principle it has the advantage of being able to process information at high speed. Also, Nature 323-9, (August 1986)
) pages 533 to 535 (Rumelbart,
D, E, .
ini、on、 G、 E、、 and Willia
ms、 R,J、 1986a。ini, on, G, E,, and William
ms, R.J., 1986a.
Learning representations
by backpropagation errors
、 Nature323−9. pp、533536)
、あるいはニューラルネットワーク情報処理(産業図
書、麻生英樹著)第2章などに述べられているように、
望ましい情報処理を行なわせるためにニューロン同志を
つなぐ結合の重み値を設定するアルゴリズム(学習)も
提案されているため、目的に応じた様々な情報処理をさ
せることができる。Learning representations
by backpropagation errors
, Nature323-9. pp, 533536)
, or as described in Chapter 2 of Neural Network Information Processing (Sangyo Tosho, written by Hideki Aso),
Algorithms (learning) have also been proposed that set weight values for connections between neurons in order to perform desired information processing, so it is possible to perform various information processing depending on the purpose.
ニューラルネットワークの動作原理を2種類の代表的な
ネットワークである階層型ネットワークとホップフィー
ルド型ネットワークについて説明する。第2図(a)は
、階層型ネットワーク、第3図<a)は、ホップフィー
ルド型ネットワークの構造を示したものである。これら
は、どちらもニューロンとニューロン同上をつなぐ結合
から構成されている。ここでは、ニューロンという用語
を用いるか、場合によってはノード、あるいは1fli
算要素などと呼ばれることもある。結合の矢印の向きは
、ニューロン出力値の伝わる方向を示している。階層型
ネットワークは、第2図(a)に示したように、ニュー
ロンが複数の階層をなすように並び、入力層から出力層
へ向かう方向にのみニューロン出力値が伝わるものであ
る。一方、ホップフィールド型ネットワークは、第3図
(a)に示したように、同じニューロンにニューロン出
力値がフィードバックされるほか、任意の2つのニュー
ロン間で両方向にニューロン出力値が伝わるものである
。The operating principle of neural networks will be explained with reference to two typical types of networks, a hierarchical network and a Hopfield network. FIG. 2(a) shows the structure of a hierarchical network, and FIG. 3(a) shows the structure of a Hopfield type network. Both of these are composed of neurons and connections connecting neurons. Here we use the term neuron, or in some cases nodes, or 1fli
It is also sometimes called a calculation element. The direction of the connection arrow indicates the direction in which the neuron output value is transmitted. In a hierarchical network, as shown in FIG. 2(a), neurons are arranged in a plurality of layers, and neuron output values are transmitted only in the direction from the input layer to the output layer. On the other hand, in the Hopfield type network, as shown in FIG. 3(a), neuron output values are fed back to the same neuron, and neuron output values are transmitted in both directions between any two neurons.
第2図(b)、第3図(b)にニューロン内で行なわれ
る演算の原理を汀くじた。演算の原理はどちらのネット
ワークでも同様なので、第2図(b)を用いて階層型ネ
ットワークについて説明する。Figures 2(b) and 3(b) illustrate the principles of calculations performed within neurons. Since the principle of calculation is the same for both networks, the hierarchical network will be explained using FIG. 2(b).
第2図(b)は、S+1番目の層内の、1番目のニニー
ロンを拡大して示したものである。このニュロン内には
結合を通じて前層、すなわち8番11の層内のニューロ
ンの出力値 V・S11.・VI′−・、、、Vnss
が入力される。ここで、nsは8番1」の層内のニュー
ロンの数を示している3、ニュロン内では入力されたニ
ューロンの出力値V、S、。FIG. 2(b) is an enlarged view of the first niniron in the S+1th layer. In this neuron, the output values of neurons in the previous layer, that is, the 8th and 11th layers, are connected through connections.V.S11.・VI'-・,,,Vnss
is input. Here, ns indicates the number of neurons in the layer 8 and 1.3, and within the neuron, the input neuron output values V, S,.
1.V’s、、 、、Vns sと結合重み値ゴ””l
l。1. V's, , , Vns s and the joint weight value Go""l
l.
+ 1.”’JI、 、 、 、 ’1”’a II
sとの積V 、 !、T ’ A、 、、VISTSJ
+、、、、 Vns 5TSJ nsか乗算機
MTにより計算される。つぎに、これらの積と一〇昌+
1との和を加算機ADDにより計算する。ここで、OJ
S+1はオフセットと呼ばれる量で場合によっては、省
略してもよい。さらに、その結果を非線形関数回路りに
入力してニューロンの出力値VJS+1を得る。非線形
関数回路りは第2図(C)あるいは、(d)に示したよ
うな特性を持ち、入力Xに対して出力g(x)を出力す
る。1第2図(c)は、入力Xかあるしきい値×1、l
]を越えるか否かにより2値の出力g1あるいはg2を
出力する非線形関数の例であり、第2図(d)は、シグ
モイド関数を用いた例で連続的な出力を出す。+1. ”'JI, , , , '1'a II
Product with s V, ! ,T'A, ,,VISTSJ
+, , , Vns 5TSJ ns is calculated by the multiplier MT. Next, these products and 10sho +
The sum with 1 is calculated by the adder ADD. Here, O.J.
S+1 is a quantity called an offset and may be omitted in some cases. Furthermore, the result is input to a nonlinear function circuit to obtain the neuron output value VJS+1. The nonlinear function circuit has characteristics as shown in FIG. 2(C) or FIG. 2(d), and outputs an output g(x) in response to an input X. 1 Figure 2 (c) shows that input X or a certain threshold value x 1, l
] is an example of a nonlinear function that outputs a binary output g1 or g2 depending on whether or not it exceeds .
非線形関数回路1つには、必要に応じてこの他の特性を
持たせることもある。また、場合によっては、線形の特
性を持たせてもよい。One nonlinear function circuit may have other characteristics as necessary. Further, depending on the case, linear characteristics may be provided.
」1記の演算の原理は、第3図(l〕)に示したように
ホップフィールド型ネットワークでも同様である。ただ
し、ホップフィールド型ネットワークでは、]つのニュ
ーロンに1層111jのニューロンたけでなく、自分自
身を除くすべてのニューロンの出力値が入力される、3
第2図(a)、(b)から判るように、階層型ネットワ
ークでは、まず、入力層のニューロンの出力値を設定し
、それをもとに次々に隠れ層のニューロンの出力値が更
新されて、最後に出力層のニューロンの出力値が更新さ
れる。一方、第3図(a)のようにホップフィールド型
ネットワークでは、層というものかないため、それぞれ
のニュロンは、適当なタイミングで出力値を更新するこ
とができる。このホップフィールド型ネットワクでは、
すべてのニューロン出力値の初期値を適当に与え、ニュ
ーロン出力値か平衡状態となるまでニューロン出力値の
更新を続ける。ニューロンの出力値が平衡状態となるま
でには、ふつう全てのニューロンについて出力値の更新
を何度か行なう必要かある。すべてのニューロンの出力
値を同時に更新するものを同期的なホップフィールド型
ネットワーク、それぞれのニューロンが、勝手なタイミ
ングで出力値を更新するものを非同期的なホップフィー
ルド型ネットワークと呼ふ。The principle of the calculation described in item 1 is the same in the Hopfield network as shown in FIG. 3(l). However, in the Hopfield-type network, the output values of all neurons except itself are input to the neurons in the first layer 111j.3 As can be seen from Figures 2(a) and (b) In a hierarchical network, first, the output value of the neuron in the input layer is set, then the output value of the neuron in the hidden layer is updated one after another based on that, and finally the output value of the neuron in the output layer is updated. be done. On the other hand, in the Hopfield network as shown in FIG. 3(a), since there are no layers, each neuron can update its output value at an appropriate timing. In this Hopfield type network,
Appropriate initial values are given to all neuron output values, and the neuron output values continue to be updated until the neuron output values reach an equilibrium state. It is usually necessary to update the output values of all neurons several times before the output values of the neurons reach an equilibrium state. A network in which the output values of all neurons are updated simultaneously is called a synchronous Hopfield network, and a network in which each neuron updates its output value at its own timing is called an asynchronous Hopfield network.
」−記のようなニューラルネットワークの演算を行なう
ためにソフトウェアを用いる方法とハードウェアを用い
る方法とが用いられてきた。ソフトウェアを用いる方法
では、計算機言語で書かれたプログラムによりニューロ
ンの演算を行なうので目的に応じてニューロンの数を変
えたリネットワクの構造を容易に変えることができる。A method using software and a method using hardware have been used to perform neural network operations such as those described above. In the method using software, the neuron calculations are performed by a program written in a computer language, so the structure of the renetwork with the number of neurons can be easily changed depending on the purpose.
しかし、演算を逐次的に行なうためニューロンの数を増
やすと情報処理時間が急激に増加するという欠点かあっ
た。たとえば、n個のニューロンを用いたホップフィー
ルド型ネットワークでは、1つの二ニーロンの出力値を
更新するのにn回の積を泪算しなければならない。した
がって、すべてのニュロンの出力値を少なくとも1回更
新するためには、[)′回の積を計算する必要かある。However, since calculations are performed sequentially, increasing the number of neurons has the disadvantage that information processing time increases rapidly. For example, in a Hopfield network using n neurons, the product must be calculated n times to update the output value of one two-neuron. Therefore, in order to update the output values of all neurons at least once, it is necessary to calculate the product [)' times.
すなわち、ニューロン数口の増大とともに計算量はII
’のオダーで増加する。その結果、乗算を逐次的に行な
うと情報処理時間もn2のオーダーで増加してし−まう
。In other words, as the number of neurons increases, the amount of calculation increases to II
' increases with the order of '. As a result, if multiplication is performed sequentially, the information processing time also increases on the order of n2.
ハードウェアを用いる方法では、演算を逐次的に行なう
としてもソフトウェアによる方法と較べて個々の演算の
時I+J]を短縮できるため高速化が期待できる。演算
を並列に行なうことにより、さらに高速化を図る試みも
なされてきた。In the method using hardware, even if the calculations are performed sequentially, compared to the method using software, the time required for each calculation can be reduced [I+J], so that higher speed can be expected. Attempts have also been made to further increase speed by performing operations in parallel.
たとえば、アイ、イー、イー、イー、ジャーナル オブ
ソリッド ステート サーキッツ 第25巻、ナンバ
ー] (1990年2月)第207頁から第214頁
(I Fト〕E、 、1011 r n )l lo
i’ 5olid 5tate
Circui1.S、vol、25. No、]。For example, I, E, E, E, Journal of Solid State Circuits, Volume 25, Number] (February 1990), pp. 207-214 (I F to] E, , 1011 r n )l lo
i' 5olid 5tate Circuit1. S, vol, 25. No, ].
(Feb、]、 990 ) p p 207−21.
4 )などに述べられているように2次元アレーを用い
たベクトル・行列乗算器によりニュ〜ラルネットワクの
演算を高速に行なうことができる。(Feb,], 990) pp 207-21.
4), neural network operations can be performed at high speed by vector/matrix multipliers using two-dimensional arrays.
第4図(a)、(b)は」1記文献の第1図に示されて
いるベクトル・行列乗算器の原理を示したものである。FIGS. 4(a) and 4(b) show the principle of the vector/matrix multiplier shown in FIG. 1 of Reference 1.
第4図(a)に示したベクトル・行列乗算器VMMは水
平方向の入力線と垂直方向の総和線、それらを結合する
抵抗R1l、 、、。The vector/matrix multiplier VMM shown in FIG. 4(a) has a horizontal input line, a vertical summation line, and a resistor R1l that connects them.
Rm n、および電流電圧変換アンプapl。Rmn, and current-voltage conversion amplifier apl.
ap2.1.、apmより構成されている。入力線に入
力電圧VI l、、 、、Vlnを同時に印加すると抵
抗R11,0,、Rmnを通じて電流か総和線に流れ込
む。このとき総和線に流れる電流Ijは
■ J −Σ、VTi ・
(1/Rji) (])
と表される。ここで、J−’+ 2+ 、、、mであ
り和はi=1からnまでとる。出力電圧VOI、。ap2.1. , apm. When input voltages VI l, , , , Vln are simultaneously applied to the input lines, current flows into the summation line through the resistors R11, 0, , Rmn. At this time, the current Ij flowing through the summation line is expressed as J-Σ,VTi.(1/Rji) (]). Here, J-'+ 2+ , , m, and the sum is taken from i=1 to n. Output voltage VOI,.
、、VOmは、総和線の末端に設けた電流電圧変換を行
なうアンプapl、、、、apmの特性FI I、 0
.、 21rnに応じて決まり、VOj = aj
(Ij)
と表される。なお、(1,)式かられかるように入力端
子と出力電流との関係は、第4図(1))の(b−1)
式のようなベクトルと行列の積で表現できる。このため
、第4図(a)の回路はベクトル・行列乗算器と呼ばれ
る。,, VOm is the characteristic FI I, 0 of the amplifier apl, , , apm that performs current-voltage conversion provided at the end of the summation line.
.. , 21rn, VOj = aj
It is expressed as (Ij). As can be seen from equation (1,), the relationship between the input terminal and the output current is (b-1) in Figure 4 (1)).
It can be expressed as a product of a vector and a matrix as shown in the equation. For this reason, the circuit of FIG. 4(a) is called a vector/matrix multiplier.
」−記(1)、 (2)式および第2図(b)に示し
た式より、第4図(a)において抵抗Rjiを結合重み
T J”lに反比例した値に設定し、アンプの特性
a1.,1..a、mの入出力特性を第2図の非線形関
数gに合わせた上で、入力電圧Vll、、、、Vlnと
して第S層のニューロン出力値に比例した電圧をlj、
えれば、出力電圧VOI、、、、VO+nとして第s+
1層のニューロン出力値に比例した電圧か得られること
がわかる。なお、オフセットθJ!、++については、
各アンプの特性を、θJ5+1に対応する値だけシフト
するように設定することにより容易に実現できる。'' - From formulas (1) and (2) and the formula shown in Figure 2(b), in Figure 4(a), the resistance Rji is set to a value inversely proportional to the coupling weight TJ''l, and the amplifier's After adjusting the input/output characteristics of the characteristics a1., 1..a, and m to the nonlinear function g in Fig. 2, the voltage proportional to the neuron output value of the S-th layer is set as the input voltage Vll, ..., Vln, lj ,
Then, the output voltage VOI, , , VO+n is the s+th
It can be seen that a voltage proportional to the neuron output value of the first layer can be obtained. In addition, the offset θJ! , ++,
This can be easily achieved by setting the characteristics of each amplifier to shift by a value corresponding to θJ5+1.
ここでは階層型ネットワークについて述べたが同期型ホ
ップフィールド型についても同様に応用できる。すなわ
ち、入力線の本数nと総和線の本数mとを等しく置き、
抵抗RJlを結合重み′」Jゞ、に反比例した値とした
上で入力電圧Vl l、、 。Although a hierarchical network has been described here, it can also be applied to a synchronous Hopfield network. In other words, the number n of input lines and the number m of summation lines are set equal,
After setting the resistance RJl to a value inversely proportional to the coupling weight 'Jゞ, the input voltage Vl l, , .
、Vlnをニューロン出力値Vl、、、、Vnに比例し
た値に設定すれば出力電圧VOI、、、。, Vln are set to values proportional to the neuron output values Vl, . . . , Vn, the output voltage VOI, .
VOmとして各ニューロンの出力値の更新値が得られる
。なお、通常のホップフィールド型においては自分自身
への結合を設けないので、その場合には行列の対角成分
に相当する抵抗Rijを省けば良い。An updated value of the output value of each neuron is obtained as VOm. Note that in the normal Hopfield type, no coupling to itself is provided, so in that case, the resistance Rij corresponding to the diagonal component of the matrix may be omitted.
以上のことから、2次元アレーを用いたベクトル・行列
乗算器を用いれば階層型ニューラルネッI・ワークにお
ける1層分のニューロン出力値、あるいはホップフィー
ルド型ニューラルネットワクにおける全ニューロンの出
力値の更新値をそれぞれ同時にもとめることができるこ
とがわかる。From the above, if a vector/matrix multiplier using a two-dimensional array is used, the output value of neurons for one layer in a hierarchical neural network I network, or the updated value of the output values of all neurons in a Hopfield neural network. It can be seen that both can be obtained at the same time.
なお、ここでは説明を簡単にするために結合重みを固定
抵抗で表現した例を引用したが、これ以外にも−1−記
したアイ、イー、イー、イー、ジャナル オブ ソリッ
ド ステート サーキッツ第25巻、ナンバー1 (
1990年2月)第207頁から第214頁(iEEE
。In order to simplify the explanation, we have cited an example in which the coupling weight is expressed as a fixed resistance, but there are also other examples, such as -1- listed in I, E, E, E, Journal of Solid State Circuits, Vol. 25. , number 1 (
February 1990) pages 207 to 214 (iEEE
.
、Journal of 5olidStatCC
1rcui1.s、v○J、25゜No、]、 (
Feb、1990)pp207214)にはキャパシタ
に電圧として結合重みを蓄える方法が述べられている。, Journal of 5solidStatCC
1rcui1. s, v○J, 25°No, ], (
Feb. 1990) pp. 207214) describes a method of storing coupling weights as voltages in capacitors.
この方法によれば必要に応じて結合重みを書き換えるこ
とができる。また、その他にも種々変形した構成法がこ
れまでに報告されている。According to this method, the connection weights can be rewritten as necessary. In addition, various other configuration methods have been reported so far.
[発明が解決しようとする課題]
このようにベクトル・行列乗算器は非常に多くのニュー
ロン出ツノ値を同時にもとめることができるという利点
を持つ。しかし従来は比較的小規模のニューラルネット
ワークを対象としていたので配線の縮小容易化を果たす
ための配置上の配慮が=11
なく、したがって特に大規模化をしようとすると次のよ
うな問題が生じることになった。[Problems to be Solved by the Invention] As described above, the vector/matrix multiplier has the advantage of being able to simultaneously obtain the horn values of a large number of neurons. However, since conventional neural networks have been targeted at relatively small-scale networks, there has been no consideration given to the placement of wiring to make it easier to reduce the size of the network. Therefore, when attempting to scale up neural networks, the following problems arise: Became.
例として各層が1000ニユーロンよりなる3層のネッ
トワークを構成する場合を考える。3層なので2つのベ
クトル・行列乗算器が必要になる1、これらを別々のパ
ッケージに収納した場合には、片方のベクトル・行列乗
算器で得られた1 000個の第2層のニューロン出力
値をもう一方のベクトル・行列乗算器に伝達しなくては
ならない。したがって、並列処理をするには、少くなく
とも1000本以上の配線をパッケージ間に設けなけれ
ばならない。しかし、1つのパッケージに1000本の
ビンを設けることは通常できない。As an example, consider a case where a three-layer network is configured, each layer consisting of 1000 new rons. Since it is 3 layers, two vector/matrix multipliers are required1.If these are stored in separate packages, the output values of the 1,000 second layer neurons obtained by one vector/matrix multiplier must be transmitted to the other vector/matrix multiplier. Therefore, in order to perform parallel processing, at least 1000 or more wires must be provided between packages. However, it is usually not possible to provide 1000 bottles in one package.
したがって、1つ1つのベクトル、行列乗算機を別々の
チップに収納した場合にはビン数がネックとなり大規模
なネットワークを構成することは困つ)1[となる。こ
れに対して、1つのチップに枚数のベクトル・行列乗算
器を設けることも考えられる。Therefore, if each vector and matrix multiplier is housed in a separate chip, the number of bins becomes a bottleneck, making it difficult to construct a large-scale network. On the other hand, it is also conceivable to provide a number of vector/matrix multipliers in one chip.
たとえば、アイ、ニス、ニス、シー、シー、ダイジェス
ト 90 の第142.143.284頁(ISSCC
,Digest: of゛I″Cchnical
PapCrs(FOb。For example, I, Varnish, Varnish, Sea, Sea, Digest 90, page 142.143.284 (ISSCC
, Digest: of゛I″Cchnical
PapCrs(FOb.
1990)pp142. 143. and 2
84)に第1層が32ニユーロン第2.3層が16ニユ
ロンの3層ネットワークを1チツプに集積して実現した
例が記載されている。この従来例ではニューロンの数が
少ないのでベクトル・行列乗算器以外の領域を配線領域
として比較的自由に使用することができる。したがって
、複数のベクトル・行列乗算器を容易に1チツプに集積
することができる。しかし、数100.数1000とい
った規模のニューロン出力値を計算するベクトル・行列
乗算器を1チツプに集積する場合には数100、数10
00本の配線が必要となり、そのレイアウトは大変困難
となる。たとえできたとしても、チップ面積の増大、雑
音の増加、配線の抵抗成分による信号電圧の低下、ある
いは配線による信号遅延による問題などが生じることが
予想される。別の解決策としてアイ、ニス、ニス、シー
、シダイジェスト 90 の第144.145、285
頁(ISSCC,Digest of’Techni
cal Papers(Feb。1990) pp142. 143. and 2
84) describes an example in which a three-layer network in which the first layer is 32 euros and the second and third layers are 16 euros is integrated on one chip. In this conventional example, since the number of neurons is small, the area other than the vector/matrix multiplier can be used relatively freely as the wiring area. Therefore, a plurality of vector/matrix multipliers can be easily integrated into one chip. However, the number 100. When integrating vector/matrix multipliers that calculate neuron output values in the order of several thousand on one chip, the number of
000 wires are required, making the layout extremely difficult. Even if this were possible, it is expected that problems would occur such as an increase in chip area, an increase in noise, a drop in signal voltage due to the resistance component of the wiring, or a signal delay due to the wiring. Another solution is I, Nis, Nis, Sea, Digest 90, No. 144.145, 285.
Page (ISSCC, Digest of'Techni
cal Papers (Feb.
] 990 ) pY)144 、 145 、
+−1,rld 285 )に記載されているよ
うに、ベクトル・行列乗算オ()間の配線の本数を制限
(I−2例では128本)してしまう力l去もある。し
かしこれではニューロン同士の結合の1部を省略するこ
とになるのでネツi・ワークの能力を十分に活かせない
恐れかある。] 990) pY) 144, 145,
+-1, rld 285), there is also a limitation on the number of wires between the vector and matrix multiplication nodes (128 in the I-2 example). However, since this would omit some of the connections between neurons, there is a risk that the capabilities of network i-work may not be fully utilized.
一方、ホップフィールド型のネットワークは、ベクトル
・行列乗算器の入力部と出力部とを配線すれば、原理的
には、単1のベグトル・行列乗算器で構成できる。しか
し、ニューロンの数か多い場合には、階層型と同様な問
題が生じる。すなわち、ニューロン数が多くなると入力
部から出力部まで配線を引き回すために配線領域の占め
る面積が増大してしまう。さらに、配線長も長くなるた
めに雑音の増加、配線の抵抗成分による信じ電圧の低1
・゛、あるいは配線による信8・遅延などが問題となる
。前記したように、ホップフィールド型のネットワーク
では定常状態となるまでにニューロン出力値の更新を何
度も行なう必要かある。したかって、−回当りの信号遅
延が太きいと定常状態になるまでの時間かかなり増大し
てしまう。On the other hand, a Hopfield type network can, in principle, be constructed from a single vector/matrix multiplier by wiring the input section and output section of the vector/matrix multiplier. However, when the number of neurons is large, problems similar to the hierarchical type occur. That is, as the number of neurons increases, the area occupied by the wiring region increases because the wiring is routed from the input section to the output section. Furthermore, the wiring length becomes longer, which increases noise, and the resistance component of the wiring causes a lower voltage level.
・ ゛ or signal delay due to wiring becomes a problem. As described above, in a Hopfield type network, it is necessary to update the neuron output value many times before reaching a steady state. Therefore, if the signal delay per cycle is large, the time required to reach a steady state will increase considerably.
以」二のようにベクトル・行列乗算器を用いて大規模な
ニューラルネットワーク情報処理装置を実現するには配
線の問題を解決する必要かあった。In order to realize a large-scale neural network information processing device using vector/matrix multipliers as described above, it was necessary to solve the wiring problem.
本発明の[二1的は、このように大規模な112列演算
処理を行う情報処理装置、あるいは特にニューラルネッ
トワーク情報処理装置において、演算器あるいは特にベ
クトル・行列乗算器の相互間の配線を容易にすることに
ある。A twenty-first object of the present invention is to facilitate wiring between arithmetic units or especially vector/matrix multipliers in an information processing device that performs large-scale 112-column arithmetic processing, or in particular in a neural network information processing device. It is to make it.
[課題を解決するための手段]
に記の目的を達成するための本発明の情報処理装置は、
複数の入力線と複数の出力線を持ち、上記複数の入力線
から情報を入ノJし、上記複数の出力線に並列に出力を
得る演算器を複数個用いて構成した情報処理装置であっ
て、少なくとも2つの’el ’J器は、片方の演算器
の入力ff1jともう一力の演算器の出力部とを対向す
るように配置することを特徴とする。[Means for Solving the Problems] An information processing apparatus of the present invention for achieving the objects set forth in
An information processing device having a plurality of input lines and a plurality of output lines, and configured using a plurality of arithmetic units that input information from the plurality of input lines and obtain outputs in parallel to the plurality of output lines. At least two 'el' J units are characterized in that the input ff1j of one arithmetic unit and the output part of the other arithmetic unit are arranged to face each other.
一1に
こで、−I−2演算器は、ニューラルネットワク情報処
理に必要な積和演算を行なうものであってもよい。In this case, the -I-2 arithmetic unit may perform a sum-of-products operation necessary for neural network information processing.
[作 用]
上記のように、連続して演算処理を行なう2つの演算器
あるいはベクトル・行列乗算器を入力部と出力ffl+
とか対向するように配置すれば、演算器あるいはベクト
ル・行列乗算器の間の配線が容易になる。このことか、
演算器あるいはベクトル・行列乗算器の間で、J1常に
多くの信号を並列に伝達することをiJ能にし、ニュー
ラルネットワークのような大規模な演算を実現すること
が可能になる。[Function] As mentioned above, two arithmetic units or vector/matrix multipliers that perform continuous arithmetic processing are connected to the input section and the output ffl+
By arranging them so that they face each other, wiring between arithmetic units or vector/matrix multipliers becomes easier. Is this about it?
It is possible to constantly transmit many signals in parallel between arithmetic units or vector/matrix multipliers, making it possible to realize large-scale operations such as neural networks.
なお、前にも述べたように、大規模なニューラルネット
ワークにおいてはベクトル・行列乗算器の相互間の配線
数は数1000にもなる。そしてこの配線数は制御部な
どとベクI・ル・行列乗算器との間のものよりはるかに
大きい。そこで本発明は、ベクトル・行列乗算器の相互
間の配線を優先させてこれを縮小容易化する着眼により
、ベクトル・行列乗算器の入力部と出力部を対向配置i
tさせたものである3、このことが大規模な集積化にお
いて、面積の低減、雑?ぶの減少、(i3 シ:’遅延
のIIQ!減を招くことはいうまでもない。As mentioned above, in a large-scale neural network, the number of wires between vector/matrix multipliers can reach several thousand. This number of wires is much larger than that between the control section and the vector I/le/matrix multiplier. Therefore, the present invention aims to prioritize wiring between vector/matrix multipliers to facilitate downsizing, and the input section and output section of the vector/matrix multiplier are arranged opposite to each other.
3. This leads to a reduction in area and complexity in large-scale integration. Needless to say, this will lead to a decrease in IIQ! of delay.
U実施例コ
第1図は、本発明の1実施例であり、3層からなる階層
型のニューラルネットワークを半導体チップL−に集積
した情報処理装置である3、第1層のニューロン数はn
l、第2層のニューロン数はn2、第3層のニューロン
数はn3とする。第1層のニューロン出力値から第2層
のニューロン出力値を計算するための、ベクトル・行列
乗算器VMMl、第2層のニューロン出力値から第3層
のニューロン出力値を計算するための、ベクI・ル・行
列乗算器VMM2を図示しである。U Embodiment FIG. 1 shows an embodiment of the present invention, which is an information processing device in which a hierarchical neural network consisting of three layers is integrated on a semiconductor chip L-3, and the number of neurons in the first layer is n.
1, the number of neurons in the second layer is n2, and the number of neurons in the third layer is n3. A vector/matrix multiplier VMMl is used to calculate the neuron output value of the second layer from the neuron output value of the first layer. An I-le matrix multiplier VMM2 is illustrated.
本実施例では、まず、n1個の第1層のニュロン出力値
をベクトル・行列乗算器VMM ]に並列に入力する。In this embodiment, first, n1 neuron output values of the first layer are input in parallel to the vector/matrix multiplier VMM.
ベクI・ル・行列乗算器VMMIQ)出力として得られ
たn2個の第2層のニューロン出力値は、n2本の配線
を通じてベク]・ル・行列乗算器VMM2の入力線へ伝
達される。続いてベクトル・行列乗算器VMM2より得
られたn ’、3個の第;3層のニューロン出力値が出
力される。本実施例では、ベクトル・行列乗算器V M
M lとVMM 2 トが、VMMIの出力部とV
M M 20’) 入力部が対向するように配置されて
いる4、このため、それぞれの間を短い距離で容易に配
線することかでき、雑音の増加、配線の抵抗成分による
イ、)壮電圧の低ド、あるいは配線による信8′遅延に
よる問題などを回避することかできる。また、配線の占
める面積も小さくすることかできるので、チップ面積の
増大も抑えることができる。従って、多くのニューロン
からなる3層のニューラルネットワークを半導体チップ
上に集積することができる。The n2 second layer neuron output values obtained as the outputs of the vector I/matrix multiplier VMMIQ) are transmitted to the input line of the vector I/matrix multiplier VMM2 through n2 wires. Subsequently, the n', three neuron output values of the third layer obtained from the vector/matrix multiplier VMM2 are output. In this embodiment, vector/matrix multiplier V M
M l and VMM 2 are connected to the output of VMMI and V
M M 20') The input parts are arranged so as to face each other 4. Therefore, it is possible to easily wire between them over a short distance, which increases noise and increases the resistance component of the wiring. This makes it possible to avoid problems caused by low voltage levels or signal 8' delays due to wiring. Furthermore, since the area occupied by the wiring can be reduced, an increase in chip area can also be suppressed. Therefore, a three-layer neural network consisting of many neurons can be integrated on a semiconductor chip.
上記実施例は3層のニューラルネットワークのためのも
のであったが、本発明は容易に任意の層数のネットワー
クに拡張できる4、第5図は、5層のニューラルネット
ワークを構成するための本発明の第2の実施例である。Although the above embodiment was for a three-layer neural network, the present invention can be easily extended to networks with any number of layers. This is a second embodiment of the invention.
本実施例では4つのベクトル・行列乗算器を互いに入力
部と出力部とか対向するように配置している。図におい
て配線の本数nl、n2.n3.n/l、n5はそれぞ
れ、第1層、第2層、第3層、第711・、゛ツ、第5
層のニュロン数に等しい2、本実施例においてもベクト
ル・行列乗算器VMM lとVMM2、VMM2とV
M M :3、VMM3とVMM4の間を短い配線で容
易に配線することかできる。従って、配線の本数を増加
することかでき、多くのニューロンからなるニューラル
ネットワークを゛1′−導体チツブ1−に集積すること
ができる。このように、ベグ[・ル・行列乗算器を互い
に入力部と出力部とが対向するように配置していくこと
により任意の層数のネットワークが実現できる。In this embodiment, four vector/matrix multipliers are arranged so that their input sections and output sections face each other. In the figure, the number of wires nl, n2. n3. n/l and n5 are the first layer, the second layer, the third layer, the 711th layer, the 5th layer, and the 711th layer, respectively.
2 equal to the number of neurons in the layer, and in this embodiment also the vector/matrix multipliers VMM l and VMM2, VMM2 and V
M M : 3, it is possible to easily wire between VMM3 and VMM4 with a short wire. Therefore, the number of wires can be increased, and a neural network consisting of many neurons can be integrated into the conductor chip 1'. In this way, a network with an arbitrary number of layers can be realized by arranging the Begg matrix multipliers so that the input section and the output section face each other.
第6図は、本発明の第3の実施例で、ホップフィールド
型のニューラルネッ]・ワークを構成した例である。本
実施例では4つのベクトル・行列乗算器を互いに入力部
と出力部とが対向するように配置し、ベグトル・行列乗
算器VMM4の出力線をVMMIの入力線に接続した。FIG. 6 is a third embodiment of the present invention, which is an example of a Hopfield type neural network. In this embodiment, four vector/matrix multipliers are arranged so that their input sections and output sections face each other, and the output line of the vector/matrix multiplier VMM4 is connected to the input line of VMMI.
ベクトル・行列乗算器VMMI、VMM2.VMM3.
VMM4には同一のものを使用し、全ニューロン数nに
等しい配線で接続する。Vector/matrix multipliers VMMI, VMM2. VMM3.
The same one is used for the VMM4, and it is connected with wiring equal to the total number of neurons n.
本実施例では、まず、n個の全ニューロンの出力値の初
期値をベクトル・行列乗算器VMM lに−1[口列に
入力する。次に入力信シシとベクトル・行列乗算器VM
M]との接続を切ると、ニューロン出力値は4つのベク
トル・行列乗算器の間に伝わるうちに定常値に落ち着く
3、その後、ニューロン出力値の定常値をチップ外部へ
読みだせば良い11本実施例では、4つのベクトル・行
列乗算器を互いに入力部と出力部とが対向するように配
置したため、その間の配線長を短くできる。このため、
従来のようにベクトル・行列乗算器1つを用いてその入
力と出力とを長い配線で接続する場合に比べて雑音、配
線の抵抗成分による信号電圧の低下、あるいは信号遅延
の問題などが軽減される。In this embodiment, first, the initial values of the output values of all n neurons are input to the vector/matrix multiplier VMM l in the -1 column. Next, the input signal and the vector/matrix multiplier VM
M], the neuron output value settles to a steady value while being transmitted between the four vector/matrix multipliers3.After that, the steady value of the neuron output value can be read out to the outside of the chip11. In the embodiment, the four vector/matrix multipliers are arranged so that the input section and the output section face each other, so that the wiring length between them can be shortened. For this reason,
Compared to the conventional case where a single vector/matrix multiplier is used and its input and output are connected with long wiring, problems such as noise, signal voltage drop due to wiring resistance components, and signal delay problems are reduced. Ru.
以」−説明してきた第1、第5、第6図の実施例におい
て連続して処理を行なうベグI・ル・行列乗算器の入力
線と出力線の本数は一致する。このため、入力線と出力
線の配線ピッチが同じ場合にはそのまま直線的に接続す
ることができる。たとえ、ピッチか異なる場合でも入力
1111と出力部が対向しているため、配線は容易であ
る。In the embodiments of FIGS. 1, 5, and 6 described above, the numbers of input lines and output lines of the VEG I-matrix multiplier that perform continuous processing are the same. Therefore, if the input line and the output line have the same wiring pitch, they can be directly connected in a straight line. Even if the pitches are different, wiring is easy because the input 1111 and the output section face each other.
なお、第1、第5、第6図の実施例においてはベクトル
、行列乗算として第4図のように結合(トみ値を固定抵
抗で表したものを用いても良いし、あるいは、結合重み
値を書き換えられるようなベクトル・行列乗算器を用い
てることもできる。結合重み値を書き換えられるような
ベクトル・行列乗算器は例えば、アイ、イー、イー、イ
ー、ジャナル オブ ソリッド ステート サーキッッ
第25巻、ナンバー1(1,990年2月)第207頁
から第214頁(IEEE。In addition, in the embodiments shown in FIGS. 1, 5, and 6, as shown in FIG. A vector/matrix multiplier that can rewrite values can also be used.A vector/matrix multiplier that can rewrite connection weight values is, for example, I, E, E, E, Journal of Solid State Circuits, Vol. 25. , No. 1 (February 1,990), pp. 207-214 (IEEE.
Journal of 5olidState
Ci、rcuits、 vow 、 25
゜No、]、、 (Feb、1990)pp207
21/I)に記載されている1、このような、結合重み
値を書き換えられるようなベグI・ル・行列乗0器を用
れば1つの情報処理装置で様々な用途に対応することか
できる。Journal of 5solidState
Ci, rcuits, vow, 25
゜No,],, (Feb, 1990) pp207
21/I), it is possible to use a single information processing device for various purposes by using a Begg I-le-matrix multiplier like this, which can rewrite the connection weight values. can.
続いて、半導体チップト、に集積された本発明による情
報処理装置と、チップ外の装置との信号Jの授受(イン
ターフェース)に関する実施例について説明する。Next, an embodiment relating to the transmission and reception of the signal J (interface) between the information processing device according to the present invention integrated on a semiconductor chip and a device outside the chip will be described.
第7図は第1図を例題に、チップ外とのインタフェース
のための構成を示したl実施例である。FIG. 7 is an embodiment showing a configuration for an interface with the outside of the chip, using FIG. 1 as an example.
ベクトル・行列乗算器VMMI、VMM2の他、チップ
外とのインターフェースのための入力信号処理回路1、
出力信号処理回路2を図示しである。In addition to the vector/matrix multipliers VMMI and VMM2, an input signal processing circuit 1 for interfacing with the outside of the chip;
The output signal processing circuit 2 is illustrated.
本実施例では、n1個の第1層のニューロン出力値はチ
ップ外から入力信号処理回路1を通じてベクトル・行列
乗算器VMM lに入力される。また、VMM2の出力
として得られた第3層のニューロン出力値は出力信号処
理回路2を通じてチップ外へ出力される。チップ外と入
力信号処理回路lおよび、出力信号処理回路2とチップ
外との間の信号配線の本数nin、noulは、パッケ
ージのビン数の制約により通常あまり人きくすることは
できない。そこで、本実施例では、n i n 。In this embodiment, n1 first layer neuron output values are input from outside the chip through the input signal processing circuit 1 to the vector/matrix multiplier VMMl. Further, the neuron output value of the third layer obtained as the output of the VMM 2 is outputted to the outside of the chip through the output signal processing circuit 2. The number of signal wires nin and noul between the outside of the chip and the input signal processing circuit 1 and between the output signal processing circuit 2 and the outside of the chip cannot usually be set very carefully due to restrictions on the number of bins of the package. Therefore, in this embodiment, n i n .
noutをそれぞれnl、n3より少なくして、チップ
外との信13の授受を時分割で行なうようにした。した
かって、本実施例によれば、パツケジのビン数の制約を
受けることなく大規模なニュラルネットワークを実現で
きる。The numbers nout are made smaller than nl and n3, respectively, so that transmission and reception of signals 13 to and from outside the chip are performed on a time-sharing basis. Therefore, according to this embodiment, a large-scale neural network can be realized without being limited by the number of package bins.
上記第7図の実施例では、n 1n、nou t、に較
べてニューロン数が非常に大きい場合には、チップ外と
のインターフェースに時間がかかり、チップ内部での並
列処理による高速化のメリットが薄れてしまう場合があ
る。特に、続けて細組かのニューロン出力値の処理を続
けて行なう場合にこの問題は深刻となる。そのような場
合には、入力信号処理回路1に01個のニューロン出力
値を一時的に記憶するためのバッファメモリを2重に設
ければ良い。まず、チップ外より01個のニュロン出力
値を第1のバッファメモリへ時分割で書き込み第2のバ
ッファメモリへまとめて転送する。In the example shown in FIG. 7 above, if the number of neurons is very large compared to n 1n, no t, it takes time to interface with the outside of the chip, and the advantage of speeding up by parallel processing inside the chip is lost. It may fade. In particular, this problem becomes serious when processing of the neuron output values of a small set is performed successively. In such a case, the input signal processing circuit 1 may be provided with double buffer memories for temporarily storing 01 neuron output values. First, 01 neuron output values are written from outside the chip into a first buffer memory in a time-division manner and transferred all at once to a second buffer memory.
つついて次のn 1個のニューロン出力値を時分割で第
1のバッファメモリへ時分割で書き込みながら、第2の
バッファメモリよりVMMlへ01個のニューロン出力
値を並列に入力して演算を行なう。このようにすればチ
ップ外より時分割でニュロン出力値を読み込むことによ
る処理時間の増大を抑えることができる。もちろん、出
力信号処理回路2にも必要に応じてバッファメモリを2
屯に設けることができる。While writing the next n 1 neuron output values to the first buffer memory in a time-division manner, input the 01 neuron output values from the second buffer memory to VMML in parallel to perform calculations. . In this way, it is possible to suppress an increase in processing time due to time-divisionally reading neuron output values from outside the chip. Of course, the output signal processing circuit 2 also has two buffer memories as needed.
It can be installed in a ton.
に記第7図の実施例では73層のニューラルネットワー
クを例にとったか、第5図、第6図のような他の階層型
、あるいはホップフィールド型についても適用できるこ
とはもちろんである。Although the embodiment shown in FIG. 7 uses a 73-layer neural network as an example, it is of course applicable to other hierarchical types such as those shown in FIGS. 5 and 6, or the Hopfield type.
本発明による情報処理装置は、信号3の人出力をアナロ
グ信号で行なうこともできるか、外部の装置がデジタル
信号を扱う装置である場合には人出力信号をデジタル値
とした方が便利である。また、デジタル信号の方が雑音
に強いという利点もあり、信頼性を向上することが容易
である。The information processing device according to the present invention can perform the human output of signal 3 as an analog signal, or if the external device is a device that handles digital signals, it is more convenient to use the human output signal as a digital value. . Additionally, digital signals have the advantage of being more resistant to noise, making it easier to improve reliability.
そこで、次に入出力をデジタル信号で行なうための入力
信号処理回路1、および出力信号)処理回路2の実施例
について述べる。第8図(a)はr゛ピツIのデジタル
信号で表された01個のニュロン出力値をninビット
ずつ時分割でチップ外より取り込んで、01個のアナロ
グ信号としてベグトル・行列乗算器へ並列に入力するた
めの入力信じ処理回路1の実施例である、1
ます、チップ外からrビットずつのデジタル信号+で表
されたニューロンの出力値が時分割で入力されデジタル
メモリ[)Mlに訃き込まれて記憶される。チップ外か
らデジタルメモリ1〕M1ヘニュロンの出力値を、()
き込むための配線の本数n i nはパッケージのビン
数を考慮して設泪する。Next, an embodiment of an input signal processing circuit 1 and an output signal processing circuit 2 for inputting and outputting digital signals will be described. Figure 8(a) shows that the output values of 01 neurons expressed as digital signals of Rpitz I are taken in from outside the chip in a time-division manner by nin bits, and are sent in parallel to the vector/matrix multiplier as 01 analog signals. This is an embodiment of the input belief processing circuit 1 for inputting data into the circuit 1. In this example, the output value of a neuron represented by a digital signal of r bits each is input from outside the chip in a time-sharing manner and is stored in the digital memory [) Ml. It is written and memorized. Digital memory 1] M1 heneuron output value from outside the chip, ()
The number of wires n i n to be inserted is determined by taking into account the number of bins of the package.
次にデジタルメモリDMIから読出されたニュロンの出
力値に対応するデジタル信号はrビット毎にDAコンバ
ータDΔ1.DΔ29.。Next, the digital signal corresponding to the output value of the neuron read out from the digital memory DMI is sent to the DA converter DΔ1 for every r bits. DΔ29. .
DAnlに入力され、その出力としてアナログ値に変換
されたn1個のニューロンの出力値が同時にベクトル・
行列乗算器VMM1へ入力される。The output values of n1 neurons input to DAnl and converted to analog values as its output are simultaneously vector
It is input to matrix multiplier VMM1.
本実施例によれば、入出力をデジタル信号で行なうため
、チップ外部と信頼性の高いインターフニスを容易にと
ることができる。また、チップ外部からの信号の配線数
n i nを入力信号処理回路lの出力信号の個数n
1と独立に設甜できるので、パッケージなどの制約によ
りピン数をあまり多くてきないような場合にも大規模な
ニューラルネットワークを構成できる。According to this embodiment, since input and output are performed using digital signals, it is possible to easily establish a highly reliable interface with the outside of the chip. Also, the number of signal wires from outside the chip n i n is the number of output signals of the input signal processing circuit l
Since it can be installed independently from 1, a large-scale neural network can be constructed even in cases where the number of pins cannot be increased too much due to restrictions such as packaging.
ニューロン出力値を時分割で書き込むために処理時間が
増加するという点を敗訴したい場合には、1);j記し
たようにバッファメモリを2重に設ければよい。第8図
(b)はト記バッファメモリとしてデジタルメモリ1.
) M I Aとl−) M l l:3とを使用した
実施例である。デジタルメモリi)MIAとI) M
] 13との間は一度にm1個の情報か転送できるよう
にする。本実施例ではチップ外からデジタルメモリDM
IAへ01個のニューロンの出力値を何度かに分けて書
き込んだ後にそれらをまとめてDM]、Bへ転送する。If you want to defeat the point that the processing time increases because the neuron output values are written in a time-sharing manner, you can provide double buffer memories as described in 1);j. FIG. 8(b) shows the digital memory 1.0 as a buffer memory.
This is an example using ) MIA and l-) Ml l:3. Digital memory i) MIA and I) M
] 13, it is possible to transfer m1 pieces of information at a time. In this embodiment, the digital memory DM is accessed from outside the chip.
After writing the output values of 01 neurons into IA in several parts, they are collectively transferred to DM] and B.
−に記m1をrとnlとの積に等しくしておけば、D
M I Bへn1個のニュロンの出力値を同時に転送で
きる。本実施例によれば、D M l 13からI〕△
コンバータを通じてベクトル・行列乗算器に情報が転送
され演算が行なわれている間にデジタルメモリDMIΔ
へ次の情報処理に必要な01個のニューロンの出力値を
何度かに分けて書き込んでおくことができる。このよう
にすれば、オ°、すて細組かのニューロンの出力値を連
続して処理する場合にチップ外部からの11:き込みに
よる時間の損失を小さく抑えることができる4゜
以I−述べた第8図の実施例は、ニューロンの出力値が
rビットで表される場合に適したものである4、場合に
よってはニューロンの出力値をOとlのlヒツトで表す
場合もある。そのような場合には、I)Δコンバータは
不「易となるので第9図の実施例のようにデジタルメモ
リから直接ベクトル・行列乗算器に情報を入力すれば良
い。第9図の実施例ではDAコンバータを用いないため
ノイズなどの影響を受けにくく安定した性能を得やすい
という利点がある。- If we set m1 equal to the product of r and nl, then D
Output values of n1 neurons can be transferred to MIB at the same time. According to this embodiment, D M l 13 to I]△
While information is transferred to the vector/matrix multiplier through the converter and operations are performed, the digital memory DMIΔ
The output values of the 01 neurons necessary for the next information processing can be written in several parts. In this way, when continuously processing the output values of neurons in a detailed set, the time loss due to input from outside the chip can be kept to a minimum. The embodiment shown in FIG. 8 described above is suitable when the output value of a neuron is represented by r bits4. In some cases, the output value of a neuron may be represented by l bits of O and l. In such a case, I) Since the Δ converter becomes difficult, it is sufficient to input information directly from the digital memory to the vector/matrix multiplier as in the embodiment of FIG. 9.The embodiment of FIG. Since it does not use a DA converter, it has the advantage of being less susceptible to noise and other factors and making it easier to obtain stable performance.
つぎに出力信号処理回路2の実施例について説明する3
6第10図はΔl)コンバータΔI) lとスイッチ索
子SWI、SW2.1..5Wn3により構成した出カ
イt1号処理回路2の1実施例である3、ベクトル・行
列乗算器によって03個のニューロン出力値が得られた
後にスイッチS〜V】からS〜Vn3のうち1つを導通
させ他を非導通とすると一つのニューロン出力値に相当
するアナログ伝号がA 1.)コンバータAI)Iに入
力されその出力としてデジタル値で表されたニューロン
出力値が出力される。スイッチを切り換えることにより
所望のニューロン出力値を得ることができる。本実施例
では所望のニューロン出力値をデジタル値として得るこ
とかできるため、チップ外のデジタルL S Iとのイ
ンターフェースを取るのに便利である。なお、必要に応
じてADコンバータの数を増やして−・度に複数のニュ
ーロン出力値を得るようにすることも容易にできる。Next, an embodiment of the output signal processing circuit 2 will be described.
6 FIG. 10 shows Δl) converter ΔI) l and switch wire SWI, SW2.1. .. 3, which is an embodiment of the output t1 processing circuit 2 configured by 5Wn3, after 03 neuron output values are obtained by the vector/matrix multiplier, one of S to Vn3 is output from the switch S to V]. When one neuron is made conductive and the other is non-conductive, the analog transmission corresponding to the output value of one neuron is A1. ) is input to the converter AI) and outputs a neuron output value expressed as a digital value. A desired neuron output value can be obtained by changing the switch. In this embodiment, a desired neuron output value can be obtained as a digital value, which is convenient for interfacing with a digital LSI outside the chip. Note that it is also possible to easily obtain a plurality of neuron output values at a time by increasing the number of AD converters as necessary.
第11図に示した出力信号処理回路2の実施例は03個
のADコンバータとデジタルメモリとを組合せたもので
ある。本実施例では、03個のニューロン出力値を同時
にSピッI・のデジタル値に変換してデジタルメモリI
) M 2八−;き込むことかできる。チップ外にはn
O 11 を本の信号線を用いて何度かに分けてニュ
ーロン出力値を読出す.、このようにすればニューロン
出力値をデジタルメモリl)M2へ11)き込んだ後に
はベクトル、行列乗算機は次のニューロン出力値の計算
を開始することかできる。したがって、本実施例を出力
信号処理回路2に用いて、第8図(1))の回路を入力
信シ」・処理回路1に用いれば、チップ外との信シ3,
線の本数n i n, n O IJ 1.に制限され
ずに高速に情報処理を行なうことができる。The embodiment of the output signal processing circuit 2 shown in FIG. 11 is a combination of 03 AD converters and a digital memory. In this embodiment, 03 neuron output values are simultaneously converted into digital values of S pi I and stored in the digital memory I.
) M 28-; Can be read. n outside the chip
The neuron output value is read out by dividing O 11 into several parts using a real signal line. In this way, after loading the neuron output value into the digital memory l)M2, the vector/matrix multiplier can start calculating the next neuron output value. Therefore, if this embodiment is used for the output signal processing circuit 2 and the circuit shown in FIG. 8(1) is used for the input signal processing circuit 1,
Number of lines n i n, n O IJ 1. It is possible to perform high-speed information processing without being limited by.
これまで述べた出力信号処理回路2の実施例ではニュー
ロン出力値をSピッI・のデジタル値に変換するために
ADコンバータを用いた。しかし、ニューロン出力値を
1ビツトのデジタル値,すなわちO,または1で表す場
合にはADコンバータを省略して構成できることは入力
信号処理回路の場合と同じである。In the embodiments of the output signal processing circuit 2 described so far, an AD converter is used to convert the neuron output value into a digital value of SpiI. However, when the neuron output value is expressed as a 1-bit digital value, ie, O or 1, the AD converter can be omitted, as in the case of the input signal processing circuit.
第12図は、結合重み値を書き換えられるようなベクト
ル・行列乗算器を用いて階層型のネットワークにもホッ
プフィールド型のニューラルネットワークにも適用でき
るように構成した実施例である,、本実施例は必要に応
じて3層のネツI・ワ2!(
り、5層のネットワーク、あるいはホップフィルド型の
ニューラルネットワークとして使用できる4、第12図
においてlΔ、 11.3は入力信じ処理回路であり
2Δ、2Bは出力信シ」処理回路である。。Figure 12 shows an example in which a vector/matrix multiplier that can rewrite connection weight values is used to make it applicable to both hierarchical networks and Hopfield neural networks. If necessary, 3 layers of Nets I and Wa 2! (It can be used as a five-layer network or a Hopffield neural network.) In Fig. 12, lΔ, 11.3 is an input belief processing circuit, and 2Δ, 2B is an output signal processing circuit.
また、8〜IA、5W13はスイッチである。。Further, 8 to IA and 5W13 are switches. .
ます、3層のネットワークとして使用する場合について
説明する。本実施例によれば、2種類の3層のネットワ
ークを同時にチップ1″、に構成てきる。説明の便宜−
]二それぞれのネットワークをX、Yと呼ふことにする
1、ネットワークXの第1層と第2層の間の結合重みを
ベクトル・行列乗算器VMMIに、第2層と第3層の間
の結合重みをVMM2にセットし、スイッチSWA、S
WBにより上記回路IAと2Aおよび2BとIBとをそ
れぞれ電気的に切り離す。さらにネッI・ワークYの第
1層と第2層の間の結合重みをベクトル・行列乗算器V
MM3に、第2層と第:3層の間の3,11合重みをV
MM4にセットする。この状態でネットワークX、Yの
第1層のニューロン出力値をそれぞれ入力信号処理回路
1Δ、II3を通じてベクトル・行列乗算器VMMI、
VMM3に入力すると出力信シ」−処理回路2A、2B
を通じてネットワクX、Yの第;3層のニューロン出力
値を読みたずことができる。First, we will explain the case where it is used as a three-layer network. According to this embodiment, two types of three-layer networks can be configured simultaneously on chip 1''.For convenience of explanation -
] 2. Let's call each network X and Y. 1. The connection weight between the first layer and the second layer of network Set the connection weight of VMM2 to switch SWA, S
The circuits IA and 2A and 2B and IB are electrically separated by WB. Furthermore, the connection weight between the first layer and the second layer of the network I/work Y is calculated by the vector/matrix multiplier V
In MM3, the 3,11 combined weight between the second layer and the third layer is set to V
Set it to MM4. In this state, the neuron output values of the first layer of networks X and Y are transmitted to the vector/matrix multiplier VMMI,
When input to VMM3, output signal is generated - Processing circuits 2A and 2B
Through this, it is possible to read the neuron output values of the third layer of the network X and Y.
次に第12図の実施例を5層のネットワークとして使用
する場合について説明する。この場合には、ネットワー
クの第1層と第2層の間の結合重(bをベクトル・行列
乗算器VMM Iに、第2層と第3層の間の結合重みを
VMM2に、第3層と第4層の間の元21合重みをVM
M3に、第4層と第5層の間の#i’i合重みをVMM
4にセラl−して、スイッチ回路SWA、SWBにより
」1記回路IAと2Aおよび2 +3と1Bとをそれぞ
れ電気的に非接続、接続とする。この状態でネットワー
クの第1層のニューロン出力値を入力信号処理回路IA
を通じてベクトル・行列乗算器VMM1に入力すると出
力伯シュー処理回路2Aを通じてネットワークの第5層
のニューロン出力値を読みだすことかできる。Next, a case will be described in which the embodiment shown in FIG. 12 is used as a five-layer network. In this case, the coupling weight (b) between the first layer and the second layer of the network is assigned to the vector/matrix multiplier VMM I, the coupling weight between the second and third layer is assigned to VMM2, and the coupling weight between the second and third layer is assigned to the vector/matrix multiplier VMM The element 21 combination weight between
In M3, #i'i combination weight between the fourth layer and the fifth layer is VMM
4, the switch circuits SWA and SWB electrically disconnect and connect the circuits IA and 2A and the circuits 2+3 and 1B, respectively. In this state, the neuron output value of the first layer of the network is input to the signal processing circuit IA.
When inputted to the vector/matrix multiplier VMM1 through the output filter processing circuit 2A, the neuron output value of the fifth layer of the network can be read out.
最後に第12図の実施例を同期型ホップフィルド型のネ
ッI・ワークとして使用する場合について説明する。こ
の場合には、第6図と同様に同期型ホップフィールド型
のネットワークの全てのニューロンの結合重み値をVM
M IからVMM4それぞれにセットする。また、スイ
ッチ回路S W A 。Finally, a case where the embodiment shown in FIG. 12 is used as a synchronous Hopfield type network will be described. In this case, as in Fig. 6, the connection weight values of all neurons in the synchronous Hopfield type network are
Set each from MI to VMM4. Also, a switch circuit SW A.
SWBにより上記回路IAと2Aおよび2[3と1 B
とをそれぞれ電気的に接続する7、この状態でネットワ
ークの全てのニューロン出力値の初期値を入力信号処理
回路IAを通じてベクトル・行列乗算器VMMlに入力
するとVMM lの出力信号として全てのニューロン出
力値の更新値が得られる。続いて、その信号がベクトル
・行列乗算器VMM2、VMM3、VMM4に入力され
て全てのニューロン出力値の更新が続けられる。さらに
、ベグI・ル・行列乗算器VMM4の出力値を入力信号
処理回路1Aを通じてベクトル・行列乗算器VMMIに
入力して処理を続けることにより任意の回数だけ更新を
続けることができる。−1゛分更新を繰り返した後に、
出力信号処理回路213または2Aよりニューロン出力
値を読出す。なお、ベクトル・行列乗算器VMM4から
VMMlへおよびVMM2からVMM3へのデータの転
送をメモリを通さずにスイッチのみを通して直接できる
ように配線を多重に設けて高速化を図ることも可能であ
る。 以」二述べた第12図の実施例によれば1つの装
置で階層型、ホップフィールド型など様々なネットワー
クを実現できるという利点がある。By SWB, the above circuits IA, 2A and 2[3 and 1B
7. In this state, when the initial values of all the neuron output values of the network are input to the vector/matrix multiplier VMMl through the input signal processing circuit IA, all the neuron output values are input as the output signal of VMMl. The updated value of is obtained. Subsequently, that signal is input to vector/matrix multipliers VMM2, VMM3, VMM4 to continue updating all neuron output values. Furthermore, updating can be continued an arbitrary number of times by inputting the output value of the vector/matrix multiplier VMM4 to the vector/matrix multiplier VMMI through the input signal processing circuit 1A and continuing processing. After repeating updates for -1゛ minutes,
The neuron output value is read from the output signal processing circuit 213 or 2A. Note that it is also possible to increase the speed by providing multiple wiring lines so that the data can be directly transferred from the vector/matrix multiplier VMM4 to VMM1 and from VMM2 to VMM3 only through the switch without passing through the memory. The embodiment shown in FIG. 12 described above has the advantage that various networks such as hierarchical type and Hopfield type can be realized with one device.
第13図は、第12図において入出力をデジタル信号で
行なう場合の信号処理回路IAと出力信号処理回路2A
の構成を示した1実施例である。FIG. 13 shows a signal processing circuit IA and an output signal processing circuit 2A when input/output is performed using digital signals in FIG.
This is an example showing the configuration of.
第8図(a)、(b)あるいは第11図のようにDAコ
ンバータあるいはADコンバータとデジタルメモリより
構成されている。スイッチ回路SWAはデジタルメモリ
DM2AからDMIAへの信号配線の接続、非接続を制
御するものである。As shown in FIGS. 8(a) and (b) or FIG. 11, it is composed of a DA converter or an AD converter and a digital memory. The switch circuit SWA controls connection and disconnection of signal wiring from the digital memory DM2A to DMIA.
ベクトル・行列乗算器VMM4の出力として得られた0
7個のニューロン出力値に対応するアナログ電圧がAD
コンバータADI、、、、ADn7に入力されSAビッ
トのデジタル値に変換されてデジタルメモリDM2Aに
書き込まれる。書き込まれた情報は、必要に応じてスイ
ッチ回路SWAを通じてデジタルメモリI)MIAに書
き込まれるか、あるいはチップ外部へ読出される。ベク
トル・行列乗算器VMMlの入力値をチップ外部がら入
力する場合には、スイッチ回路SWAを非接続状態にし
ておいて、デジタルメモリDMIAにチップ外部からn
1nA本の配線を通じてデジタル情報を書き込めば良い
。その後DAコンバータDA 1.DA2.、 、、D
An Iによりアナログ信号に変換してベクトル・行列
乗算器VMMlに入力する。0 obtained as the output of the vector/matrix multiplier VMM4
Analog voltages corresponding to seven neuron output values are AD
The signals are input to converters ADI, . The written information is written to the digital memory I) MIA through the switch circuit SWA as required, or read out to the outside of the chip. When inputting the input value of the vector/matrix multiplier VMMl from outside the chip, leave the switch circuit SWA in a disconnected state and input the input value to the digital memory DMIA from outside the chip.
Digital information can be written through 1nA wires. Then DA converter DA 1. DA2. , ,,D
An I converts it into an analog signal and inputs it to the vector/matrix multiplier VMMl.
なお、入力信号処理回路1B、出力信号処理回路2Bに
ついても、第13図と同様に構成できる。Note that the input signal processing circuit 1B and the output signal processing circuit 2B can also be configured in the same manner as in FIG. 13.
以上の第13図に示した実施例によれば第12図の実施
例において入出力をデジタル信号とすることが容易にで
きる。なお、第13図に示した実施例においても第8図
(b)と同様に出力信号処理回路内のデジタルメモリを
2重に設けてチップ外との信号線の本数に制限されずに
高速に情報処理を行なうこともできる。またニューロン
出力値をOまたは1の1ビツトで表す場合には、もちろ
んDA、A、Dコンバータを省略することができる。According to the embodiment shown in FIG. 13, input and output can be easily converted into digital signals in the embodiment shown in FIG. In addition, in the embodiment shown in FIG. 13, the digital memory in the output signal processing circuit is provided in duplicate in the same manner as in FIG. Information processing can also be performed. Furthermore, when the neuron output value is expressed by one bit of O or 1, the DA, A, and D converters can of course be omitted.
以」−1実施例を用いて本発明を説明してきたか、本発
明に用いるベクトル・行列乗算器は、これまで述べたも
のに限定されることなく様々なものを使用することがで
きる。Although the present invention has been described using Example 1, the vector/matrix multiplier used in the present invention is not limited to those described above, and various types can be used.
また、本発明において、ベクトル・行列乗算器の入力線
と出力線のピッチが同一になるように設d1すると、ベ
クトル・行列乗算器間の配線を直線的に行なうことがで
きるので、配線長を短くでき、ノイズ、あるいは遅延の
影響を小さくできる。Furthermore, in the present invention, if the pitches of the input lines and output lines of the vector/matrix multiplier are set d1 to be the same, the wiring between the vector/matrix multipliers can be linearly performed, so the wiring length can be reduced. It can be made shorter and the effects of noise or delay can be reduced.
しかし、入力線と出力線のピッチが同一にできない場合
においても入力線と出ノJ線が対向するようにベクトル
・行列乗算器を配置することによって、配線長を長くす
ることなく配線を行なうことができることはもちろんで
ある。However, even if the pitch of the input line and output line cannot be made the same, wiring can be done without increasing the wiring length by arranging the vector/matrix multiplier so that the input line and the output J line face each other. Of course, it can be done.
これまで、ベクトル・行列乗算器を用いたニューラルネ
ットワーク情報処理装置について述べてきたが本発明は
これに限定されることなく他にも適用できる。特に多数
の入出力線をもつ並列演算器を■チップ上に複数集積し
、それらの間で信号の伝達を行なうような場合には本発
明と同様に連続して信号処理を行なう並列演算器の入力
部と出力部を対向させて配置することにより配線を容易
にできる。So far, a neural network information processing device using vector/matrix multipliers has been described, but the present invention is not limited to this and can be applied to other devices. In particular, when multiple parallel arithmetic units with a large number of input/output lines are integrated on a chip and signals are transmitted between them, parallel arithmetic units that perform continuous signal processing as in the present invention may be used. Wiring can be facilitated by arranging the input section and the output section facing each other.
[発明の効果]
以上述べてきたように、本発明によれば多数の入力線と
出力線をもつベクトル・行列乗算器を入力線と出力線と
が対向するように半導体チップ」二に配置することによ
り、ベグトル・行列乗算器間の配線が容易となる。この
ため、大規模な並列演算が可能となり数多くのニューロ
ンよりなるニュラルネットワークを構成することができ
る。[Effects of the Invention] As described above, according to the present invention, a vector/matrix multiplier having a large number of input lines and output lines is arranged on a semiconductor chip so that the input lines and output lines face each other. This facilitates wiring between the vector and matrix multipliers. Therefore, large-scale parallel computation becomes possible, and a neural network consisting of a large number of neurons can be constructed.
第1図は半導体チップ上に3層の階層型ニューラルネッ
トワークを構成した1実施例。
第2図(a)、(b)は、階層型ニューラルネットワー
クの原理を示した図。
第2図(c)、(d)は、第2図(b)における非線形
関数回路りの特性の例を示した図。
第3図(a)、(b)は、ホップフィールド型ニューラ
ルネットワークの原理を示した図。
第4図(a)、(b)は抵抗素子を用いた従来のべりト
ル・行列乗算器の原理を示した図。
第5図は、半導体チップ」二に5層の階層型ニュラルネ
ットワークを構成した1実施例。
第6図は、半導体チップ上にホップフィールド型ニュー
ラルネットワークを構成した1実施例。
第7図は、3層の階層型ニューラルネットワークを1チ
ツプ上に構成した場合の入出力信号処理回路の1実施例
。
第8図(a)は入力信号処理回路の構成を示す1実施例
。
第8図(b)は入力信号処理回路の構成を示す第2の1
実施例。
第9図(a)は第8図(a)の実施例においてニューロ
ン出ノJ値を1ビツトで表す場合に適した実施例。
第9図(b)は第8図(b)の実施例においてニューロ
ン出力値を■ビットで表す場合に適した実施例。
第10図は出力信号処理回路の構成を示す1実施例。
第11図は出力信号処理回路の構成を示す第2の実施例
。
第12図はベクトル・行列乗算器を4つ組合せて、3層
の階層型ニューラルネットワーク、5層の階層型ニュー
ラルネットワークあるいは、ホップフィールド型ニュー
ラルネットワークなと必要に応じて様々なネットワーク
として用いることのできる本発明の1実施例。
第13図は第12図の構成に適した入力信号処理回路、
出力信号処理回路の構成を示す実施例。
符号の説明
VMMI、VMM2゜
VMM3.VMM4・・・・・・・・・・・ベクトル・
行列乗算器
]、IA、IB・・・・・・・・・ ・・・・・・入力
信号処理回路2.2A、2B・・・・・・・・・・・・
出力信号処理回路DMI、DM]A。
DMl、B、DM2゜
DM2A、DM2B・・・・・・・・・デジタルメモリ
DA]、、I)A2゜
、、、1)Anl。
、DAI、DA2゜
、、、DAn5・・・・・・・・・・・・・・・・・D
AコンバータAD1.、AD2゜
、 、、ADn3゜
A101.AD2゜
、、、ADn7・・・・・・・・・・・・・・・・・・
ADコンバータSWI、 SW2゜
、、、 SWn 3゜Figure 1 shows an example in which a three-layer hierarchical neural network is configured on a semiconductor chip. FIGS. 2(a) and 2(b) are diagrams showing the principle of a hierarchical neural network. FIGS. 2(c) and 2(d) are diagrams showing examples of characteristics of the nonlinear function circuit in FIG. 2(b). FIGS. 3(a) and 3(b) are diagrams showing the principle of a Hopfield neural network. FIGS. 4(a) and 4(b) are diagrams showing the principle of a conventional Bertorl/matrix multiplier using resistive elements. FIG. 5 shows an example in which a five-layer hierarchical neural network is configured on a semiconductor chip. FIG. 6 shows an example in which a Hopfield neural network is configured on a semiconductor chip. FIG. 7 shows an example of an input/output signal processing circuit in which a three-layer hierarchical neural network is configured on one chip. FIG. 8(a) shows an example of the configuration of an input signal processing circuit. FIG. 8(b) is a second diagram showing the configuration of the input signal processing circuit.
Example. FIG. 9(a) is an embodiment suitable for representing the neuron output J value with one bit in the embodiment of FIG. 8(a). FIG. 9(b) is an embodiment suitable for representing the neuron output value in bits in the embodiment of FIG. 8(b). FIG. 10 shows one embodiment of the configuration of an output signal processing circuit. FIG. 11 is a second embodiment showing the configuration of an output signal processing circuit. Figure 12 shows how four vector/matrix multipliers can be combined to create various networks as needed, such as a 3-layer hierarchical neural network, a 5-layer hierarchical neural network, or a Hopfield neural network. An example of the present invention that can be used. Figure 13 shows an input signal processing circuit suitable for the configuration of Figure 12;
An example showing the configuration of an output signal processing circuit. Description of codes VMMI, VMM2°VMM3. VMM4・・・・・・・・・Vector・
Matrix multiplier], IA, IB... Input signal processing circuit 2.2A, 2B...
Output signal processing circuit DMI, DM] A. DMl, B, DM2゜DM2A, DM2B......Digital memory DA], , I) A2゜, , 1) Anl. ,DAI,DA2゜,,,DAn5・・・・・・・・・・・・・・・D
A converter AD1. , AD2゜, , , ADn3゜A101. AD2゜、、、ADn7・・・・・・・・・・・・・・・・・・
AD converter SWI, SW2゜,, SWn 3゜
Claims (2)
力線から情報を入力し、上記複数の出力線に並列に出力
を得る演算器を複数個用いて構成した情報処理装置にお
いて、少なくとも2つの演算器は、片方の演算器の入力
部ともう一方の演算器の出力部とを対向するように配置
することを特徴とする情報処理装置。1. In an information processing device configured using a plurality of arithmetic units having a plurality of input lines and a plurality of output lines, inputting information from the plurality of input lines and obtaining outputs in parallel to the plurality of output lines, at least An information processing device characterized in that two arithmetic units are arranged such that an input part of one arithmetic unit and an output part of the other arithmetic unit face each other.
要な積和演算を行なうものであることを特徴とする請求
項1記載の情報処理装置。2. 2. The information processing apparatus according to claim 1, wherein said arithmetic unit performs a sum-of-products operation necessary for neural network information processing.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2159661A JPH0451382A (en) | 1990-06-20 | 1990-06-20 | Information processor |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2159661A JPH0451382A (en) | 1990-06-20 | 1990-06-20 | Information processor |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0451382A true JPH0451382A (en) | 1992-02-19 |
Family
ID=15698582
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2159661A Pending JPH0451382A (en) | 1990-06-20 | 1990-06-20 | Information processor |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0451382A (en) |
Cited By (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2020098658A (en) * | 2018-12-18 | 2020-06-25 | 旺宏電子股▲ふん▼有限公司 | Nand block architecture for in-memory product-sum operations |
| WO2020255599A1 (en) * | 2019-06-20 | 2020-12-24 | ソニー株式会社 | Arithmetic device and product-sum arithmetic system |
| JP2021509514A (en) * | 2018-01-03 | 2021-03-25 | シリコン ストーリッジ テクノロージー インコーポレイテッドSilicon Storage Technology, Inc. | Programmable neurons for analog non-volatile memory in deep learning artificial neural networks |
| US11562229B2 (en) | 2018-11-30 | 2023-01-24 | Macronix International Co., Ltd. | Convolution accelerator using in-memory computation |
| US11636325B2 (en) | 2018-10-24 | 2023-04-25 | Macronix International Co., Ltd. | In-memory data pooling for machine learning |
| US12299597B2 (en) | 2021-08-27 | 2025-05-13 | Macronix International Co., Ltd. | Reconfigurable AI system |
| US12321603B2 (en) | 2023-02-22 | 2025-06-03 | Macronix International Co., Ltd. | High bandwidth non-volatile memory for AI inference system |
| US12417170B2 (en) | 2023-05-10 | 2025-09-16 | Macronix International Co., Ltd. | Computing system and method of operation thereof |
| US12536404B2 (en) | 2023-02-22 | 2026-01-27 | Macronix International Co., Ltd. | Data optimization for high bandwidth (HBW) NVM AI inference system |
| US12585931B2 (en) | 2023-05-04 | 2026-03-24 | Macronix International Co., Ltd. | 3D hybrid bonding 3D memory devices with NPU/CPU for AI inference application |
-
1990
- 1990-06-20 JP JP2159661A patent/JPH0451382A/en active Pending
Cited By (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2021509514A (en) * | 2018-01-03 | 2021-03-25 | シリコン ストーリッジ テクノロージー インコーポレイテッドSilicon Storage Technology, Inc. | Programmable neurons for analog non-volatile memory in deep learning artificial neural networks |
| US11636325B2 (en) | 2018-10-24 | 2023-04-25 | Macronix International Co., Ltd. | In-memory data pooling for machine learning |
| US11562229B2 (en) | 2018-11-30 | 2023-01-24 | Macronix International Co., Ltd. | Convolution accelerator using in-memory computation |
| JP2020098658A (en) * | 2018-12-18 | 2020-06-25 | 旺宏電子股▲ふん▼有限公司 | Nand block architecture for in-memory product-sum operations |
| US11934480B2 (en) | 2018-12-18 | 2024-03-19 | Macronix International Co., Ltd. | NAND block architecture for in-memory multiply-and-accumulate operations |
| WO2020255599A1 (en) * | 2019-06-20 | 2020-12-24 | ソニー株式会社 | Arithmetic device and product-sum arithmetic system |
| CN114008625A (en) * | 2019-06-20 | 2022-02-01 | 索尼集团公司 | Arithmetic device and product-sum arithmetic system |
| US12299597B2 (en) | 2021-08-27 | 2025-05-13 | Macronix International Co., Ltd. | Reconfigurable AI system |
| US12321603B2 (en) | 2023-02-22 | 2025-06-03 | Macronix International Co., Ltd. | High bandwidth non-volatile memory for AI inference system |
| US12536404B2 (en) | 2023-02-22 | 2026-01-27 | Macronix International Co., Ltd. | Data optimization for high bandwidth (HBW) NVM AI inference system |
| US12585931B2 (en) | 2023-05-04 | 2026-03-24 | Macronix International Co., Ltd. | 3D hybrid bonding 3D memory devices with NPU/CPU for AI inference application |
| US12417170B2 (en) | 2023-05-10 | 2025-09-16 | Macronix International Co., Ltd. | Computing system and method of operation thereof |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5594916A (en) | Neural network processing system using semiconductor memories and processing paired data in parallel | |
| EP0385873B1 (en) | A learning system in a neuron computer | |
| EP0400147B1 (en) | Neurocomputer | |
| Shima et al. | Neuro chips with on-chip back-propagation and/or Hebbian learning | |
| JPH0451382A (en) | Information processor | |
| Morishita et al. | A BiCMOS analog neural network with dynamically updated weights | |
| JPH0467259A (en) | Information processor | |
| US5065339A (en) | Orthogonal row-column neural processor | |
| JPH05282272A (en) | Neural network parallel distribution processor | |
| Yasunaga et al. | A wafer scale integration neural network utilizing completely digital circuits | |
| US5742741A (en) | Reconfigurable neural network | |
| US5216746A (en) | Error absorbing system in a neuron computer | |
| JP3353786B2 (en) | Information processing device | |
| US5751913A (en) | Reconfigurable neural network and difference-square neuron | |
| US5586223A (en) | High speed segmented neural network and fabrication method | |
| CN116523011B (en) | Memristor-based binary neural network layer circuit and binary neural network training method | |
| EP3992862B1 (en) | Electronic circuit for calculating weighted sums | |
| Paulos et al. | A VLSI architecture for feedforward networks with integral back-propagation | |
| Morgan et al. | Cost-performance analysis of FPGA, VLSI and WSI implementations of a RAM-based neural network | |
| TW305998B (en) | Weighted sum type of artificial neural network with reconfigurable structure and bit-serial I/O mode | |
| JPH0683622A (en) | Information processing equipment | |
| Alhalabi et al. | Hybrid Chip Set for Artificial Neural Network Systems | |
| Fornaciari et al. | An automatic VLSI implementation of Hopfield ANNs | |
| Sibai et al. | A time-multiplexed reconfigurable neuroprocessor | |
| JPH0444158A (en) | Method and device for processing information |