JP2001034735A - Information processor - Google Patents

Information processor

Info

Publication number
JP2001034735A
JP2001034735A JP2000139397A JP2000139397A JP2001034735A JP 2001034735 A JP2001034735 A JP 2001034735A JP 2000139397 A JP2000139397 A JP 2000139397A JP 2000139397 A JP2000139397 A JP 2000139397A JP 2001034735 A JP2001034735 A JP 2001034735A
Authority
JP
Japan
Prior art keywords
circuit
neuron
data line
memory cell
selector
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
Application number
JP2000139397A
Other languages
Japanese (ja)
Inventor
Takao Watabe
隆夫 渡部
Katsutaka Kimura
勝高 木村
Takeshi Sakata
健 阪田
Masakazu Aoki
正和 青木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2000139397A priority Critical patent/JP2001034735A/en
Publication of JP2001034735A publication Critical patent/JP2001034735A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To realize a DA converter which is highly integrated and highly accurate. SOLUTION: This information processing includes a plurality of DA converters DAA1 which convert a plural-bit digital signal into an analog signal and output the analog signal, the magnitude of an analog output of a plurality of DA converters DAA1 is controlled by a single control circuit, the control circuit includes a current source to be a reference, and the converters DAA1 are controlled by the control circuit so that the magnitude of the output of the DA converters DAA1 can be decided according to the current value of the current source. Thus, highly accurate voltage/current conversion can be realized, and the DA converters can be formed with high integration.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明はメモリと演算回路と
を1つの半導体チップ上に集積した情報処理装置に関
し、メモリと演算回路の間で高速に多量の信号の授受を
行う方法を与えるものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an information processing apparatus in which a memory and an arithmetic circuit are integrated on a single semiconductor chip, and provides a method for transmitting and receiving a large amount of signals between the memory and the arithmetic circuit at a high speed. is there.

【0002】[0002]

【従来の技術】近年、半導体技術の発展によって微細加
工技術が進歩し、1つのチップに64Mビットのメモリ
セルを集積した半導体メモリが学会で発表されるまでに
なった。一方、演算回路を搭載した半導体においても高
集積化が急速に進んでいる。さらに、最近ではメモリと
演算回路とを1つの半導体チップ上に集積した情報処理
装置も多数実用化され、携帯可能なビデオカメラ、コン
ピュータ、電話などの情報処理装置に大変革が起きると
期待されている。
2. Description of the Related Art In recent years, fine processing technology has advanced with the development of semiconductor technology, and a semiconductor memory in which 64-Mbit memory cells are integrated on one chip has been presented at academic conferences. On the other hand, high integration of semiconductors equipped with arithmetic circuits is also rapidly progressing. Furthermore, recently, a large number of information processing devices in which a memory and an arithmetic circuit are integrated on a single semiconductor chip have been put into practical use, and it is expected that a revolution will occur in information processing devices such as portable video cameras, computers, and telephones. I have.

【0003】この種の装置として、例えば、画像処理装
置あるいはニューラルネットワーク演算装置などがあ
る。図22に示したのは、電子情報通信学会技術研究報
告Vol.89,No312(ICD89−144−1
51,集積回路、1989年11月21日)第43ペー
ジ、図3に記載されたニューラルネットワーク演算装置
である。本従来例では、入力用RAM、係数用RAMと
書かれたメモリからそれぞれ、ニューロン出力値、結合
重み値を読み出してレジスタに蓄えて乗算器、加算器な
どの演算回路でニューロン出力値を求めるための演算を
行う。本従来例の特長は、複数の演算回路で並列に積和
演算を行うことにより高速にニューラルネットワーク情
報処理をすることである。
[0003] Examples of this type of device include an image processing device and a neural network operation device. FIG. 22 shows the IEICE Technical Report Vol. 89, No. 312 (ICD89-144-1
51, integrated circuit, November 21, 1989) page 43, the neural network operation device described in FIG. In this conventional example, a neuron output value and a connection weight value are read out from memories written as an input RAM and a coefficient RAM, respectively, and stored in registers. Is calculated. The feature of this conventional example is that neural network information processing is performed at high speed by performing a multiply-accumulate operation by a plurality of arithmetic circuits in parallel.

【0004】[0004]

【発明が解決しようとする課題】図22に示した従来例
において、ニューロン数nの大きい大規模なニューラル
ネットワークを構成しようとすると次のような問題が生
じる。
In the conventional example shown in FIG. 22, the following problem occurs when a large-scale neural network having a large number of neurons n is to be constructed.

【0005】図22に示した従来例では、8bitの出
力を持つ係数用メモリ(RAM)1つ1つににレジス
タ、乗算器、加算器、アキュムレータ(ACC)から成
る単位演算回路が1つずつ設けてあり、係数用メモリと
演算回路はバスで結合されている。係数用メモリのセン
スアンプ(データ線)のピッチは記載されていないが、
近年の高集積MOSメモリでは、1から2μm程度と大
変小さい。一方、演算回路のピッチは、乗算器、加算器
などで決まるが、8bitの乗算器や16bitの加算
器をデータ線のピッチの8倍の幅にレイアウトすること
は非常に困難である。したがって、例えば図22で左端
の係数用メモリの下に1つの単位演算回路を配置する
と、右に行くほど係数用メモリとバスで結ぶべき単位演
算回路の距離が大きくなってしまう。したがって、バス
が長くなりそのために配線抵抗による信号遅延と占有面
積が増加する。また、単位演算回路によってバスの長さ
が異なるため、信号遅延が不均一となり回路ごとにメモ
リセルアレーからのデータの転送速度が異なり、各々の
単位演算回路の同期を取るのが困難になるという問題も
生じてしまう。逆に、単位演算回路のピッチに合わせて
係数用メモリを並べるとバスは短くなるが、係数用メモ
リの間に余分なスペースが必要になってしまい集積度が
低下してしまう。
In the conventional example shown in FIG. 22, one unit arithmetic circuit comprising a register, a multiplier, an adder and an accumulator (ACC) is provided for each coefficient memory (RAM) having an 8-bit output. The coefficient memory and the arithmetic circuit are connected by a bus. Although the pitch of the sense amplifier (data line) of the coefficient memory is not described,
In a recent highly integrated MOS memory, it is as small as about 1 to 2 μm. On the other hand, the pitch of the arithmetic circuit is determined by a multiplier, an adder, and the like. However, it is very difficult to lay out an 8-bit multiplier or a 16-bit adder with a width eight times the data line pitch. Therefore, for example, if one unit operation circuit is arranged below the leftmost coefficient memory in FIG. 22, the distance between the coefficient memory and the unit operation circuit to be connected by the bus increases toward the right. Therefore, the bus becomes longer, which increases the signal delay and the occupied area due to the wiring resistance. Further, since the length of the bus varies depending on the unit arithmetic circuit, the signal delay becomes uneven, and the data transfer speed from the memory cell array differs for each circuit, and it becomes difficult to synchronize each unit arithmetic circuit. Problems also arise. Conversely, if the coefficient memories are arranged in accordance with the pitch of the unit operation circuit, the bus becomes shorter, but an extra space is required between the coefficient memories, and the degree of integration is reduced.

【0006】上記の従来例に限らず、メモリと演算回路
とを1つの半導体チップ上に集積した情報処理装置で
は、メモリの大容量化と演算回路の大規模化、動作の並
列化を進めていくと、同様の問題が生じると予想され
る。
In an information processing apparatus in which a memory and an arithmetic circuit are integrated on a single semiconductor chip, the present invention is not limited to the above-mentioned conventional example. It is expected that similar problems will arise in the future.

【0007】本発明はメモリと演算回路とを1つの半導
体チップ上に集積した情報処理装置において、メモリと
演算回路間のバスの占有面積、配線長、および、バス間
の信号遅延の不均一さの低減を図ろうとするものであ
る。
According to the present invention, in an information processing apparatus in which a memory and an arithmetic circuit are integrated on one semiconductor chip, an occupied area of a bus between the memory and the arithmetic circuit, a wiring length, and a non-uniform signal delay between the buses. Is to be reduced.

【0008】[0008]

【課題を解決するための手段】本発明では上記課題を解
決するために、メモリセルアレー(A)と演算回路(P
E)との間にデータ線セレクタ(ST)を設けて、演算
回路に同時に接続されるデータ線の本数を制限し、デー
タ線セレクタの入力線間ピッチと出力線間ピッチをそれ
ぞれメモリセルアレーのデータ線間ピッチと演算回路の
入力線間ピッチに合わせられるようにした。
According to the present invention, in order to solve the above-mentioned problems, a memory cell array (A) and an arithmetic circuit (P
E), a data line selector (ST) is provided to limit the number of data lines simultaneously connected to the arithmetic circuit, and the pitch between the input lines and the pitch between the output lines of the data line selector are respectively set to the memory cell array. The pitch between the data lines and the pitch between the input lines of the arithmetic circuit can be adjusted.

【0009】上記のようにピッチを合わせたデータ線セ
レクタを用いるため、メモリセルアレーのデータ線間ピ
ッチと演算回路の入力線間ピッチが異なる場合において
もデータ線セレクタに隣接してメモリセルアレーと演算
回路を配置することができる。例えば、データ線間ピッ
チが数μmと大変小さいDRAMなどのメモリセルアレ
ーと入力線のピッチが数十μmと比較的大きいデジタル
演算回路などを長いバスを用いずにデータ線セレクタを
介して配置することも可能となる。
Since the data line selector having the same pitch is used as described above, even when the pitch between the data lines of the memory cell array and the pitch between the input lines of the arithmetic circuit are different, the memory cell array is adjacent to the data line selector. Arithmetic circuits can be arranged. For example, a memory cell array such as a DRAM having a very small data line pitch of several μm and a digital arithmetic circuit having a relatively large input line pitch of several tens μm are arranged via a data line selector without using a long bus. It is also possible.

【0010】これによりデータ線セレクタを介してメモ
リセルアレーと演算回路の間で直接信号の授受を行うこ
とができるので、従来問題となっていたバス本数の増加
による占有領域の増大、配線抵抗の増大による信号遅延
が解決される。また、極端に長さの不揃いなバスを用い
る必要もないので、配線長の違いによる信号遅延の不均
一も解決される。
As a result, signals can be directly transmitted and received between the memory cell array and the arithmetic circuit through the data line selector. Therefore, the occupied area increases due to the increase in the number of buses and the wiring resistance is reduced. The signal delay due to the increase is resolved. Further, since it is not necessary to use a bus having an extremely irregular length, unevenness in signal delay due to a difference in wiring length is also solved.

【0011】[0011]

【発明の実施の形態】以下、本発明の実施例を図面を用
いて説明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0012】図1は本発明を用いて半導体チップ上にメ
モリセルアレーと演算回路を含んだ情報処理装置を構成
した実施例である。図1において、Aはメモリセルアレ
ーで、複数のデータ線とそれに交差する複数のワード線
並びにそれらの所望の交点に構成されたメモリセルから
構成されている。STはデータ線セレクタで、メモリセ
ルアレーAからデータ線を通じて読出した情報から、そ
の1部を選択してバス1を通じて演算回路PEへ伝達す
る。演算回路PEではデータ線セレクタSTから伝達さ
れた情報を用いて所望の情報処理を行う。IOは入出力
回路で、上記メモリセルアレーAからバス4を通じて情
報をチップ外部へ読出したり、上記メモリセルアレーA
にチップ外部からバス5を通じて情報を書き込んだり、
あるいは演算回路PEからバス2を通じて出力される情
報をメモリセルアレーAに書き込んだりあるいはチップ
外部へ読出したり、演算回路PEへバス3を通じてメモ
リセルアレーAの情報を書き込んだり、チップ外部から
演算回路PEへバス3を通じて情報を入力したりするた
めの回路である。CTLは制御回路で、上記のメモリセ
ルアレーA、データ線セレクタST、演算回路PE、入
出力回路IOの動作を外部から与えられる制御信号、ア
ドレスなどの信号を用いて制御するための回路である。
なお、図1においてバスは任意の複数の配線から構成さ
れているが、ここでは簡単のため一部のバスを矢印で示
してある。
FIG. 1 shows an embodiment in which an information processing apparatus including a memory cell array and an arithmetic circuit on a semiconductor chip is constructed using the present invention. In FIG. 1, reference numeral A denotes a memory cell array, which includes a plurality of data lines, a plurality of word lines intersecting the data lines, and memory cells formed at desired intersections thereof. ST is a data line selector which selects a part of the information read from the memory cell array A through the data line and transmits it to the arithmetic circuit PE through the bus 1. The arithmetic circuit PE performs desired information processing using the information transmitted from the data line selector ST. IO is an input / output circuit for reading information from the memory cell array A to the outside of the chip via the bus 4 and IO.
To write information from outside the chip through the bus 5,
Alternatively, information output from the arithmetic circuit PE via the bus 2 is written to the memory cell array A or read out of the chip, information of the memory cell array A is written to the arithmetic circuit PE via the bus 3, or the arithmetic circuit PE is written from outside the chip. This is a circuit for inputting information through the bus 3. CTL is a control circuit for controlling the operations of the memory cell array A, the data line selector ST, the arithmetic circuit PE, and the input / output circuit IO by using signals such as control signals and addresses externally provided. .
In FIG. 1, the bus is composed of a plurality of arbitrary wires, but here, some buses are indicated by arrows for simplicity.

【0013】本実施例では、データ線セレクタSTの入
力線のピッチはデータ線のピッチに、データ線セレクタ
STの出力線のピッチは演算回路の入力線のピッチと合
わせてメモリセルアレーAに隣接してデータ線セレクタ
STと演算回路PEを配置した。これにより、メモリセ
ルアレーAのワード線を選択して、そのワード線上にあ
る複数のメモリセルからデータ線に同時に読出された多
数の情報を、長いバスを用いることなくデータ線セレク
タSTを通じて直接演算回路PEに入力することができ
る。このため、長いバスによる配線遅延の増大、配線遅
延のばらつきをなくすことができ、メモリセルアレーと
演算回路の間の情報の転送の高速化が実現できる。ま
た、長いバスによる占有面積の増大もない。
In this embodiment, the pitch of the input lines of the data line selector ST is the same as the pitch of the data lines, and the pitch of the output lines of the data line selector ST is adjacent to the memory cell array A in accordance with the pitch of the input lines of the arithmetic circuit. Then, the data line selector ST and the arithmetic circuit PE are arranged. As a result, a word line of the memory cell array A is selected, and a large number of information simultaneously read out from a plurality of memory cells on the word line to the data line are directly operated through the data line selector ST without using a long bus. It can be input to the circuit PE. Therefore, it is possible to eliminate an increase in wiring delay and a variation in wiring delay due to a long bus, and it is possible to realize a high-speed transfer of information between the memory cell array and the arithmetic circuit. Also, there is no increase in the occupied area due to the long bus.

【0014】このように本実施例によれば、データ線セ
レクタSAにより両者のピッチの整合をとることができ
るので、例えば、データ線間のピッチが大変小さいDR
AMなどのメモリセルアレーと入力線間のピッチが比較
的大きいデジタル演算回路などを長いバスを用いずに1
つの半導体チップ上に配置することが可能となる。
As described above, according to the present embodiment, the pitch between the two can be matched by the data line selector SA. For example, the DR between the data lines is very small.
A digital arithmetic circuit having a relatively large pitch between a memory cell array such as an AM and input lines can be implemented without using a long bus.
It can be arranged on one semiconductor chip.

【0015】図2は第1図の実施例におけるデータ線セ
レクタと演算回路の構成例を示したものである。図2に
おいてST1,ST2,..,STkはデータ線セレク
タSTを構成するデータ線セレクタ単位回路で、PE
1,PE2,..,PEkは演算回路PEを構成する演
算単位回路である。本実施例においてデータ線セレクタ
単位回路ST1,ST2,..,STkはそれぞれ a'
1,a'2,..,a'k bitの情報をメモリセルアレー
のAのデータ線から受取りa1,a2,..,ak b
itの情報を選択して演算単位回路PE1,PE
2,..,PEkに伝達する。演算単位回路PE1,P
E2,..,PEkは並列に動作させることができるの
で、高速な情報処理が可能である。また、データ線セレ
クタSTと演算回路PEを単位回路に分割し、1つのデ
ータ線セレクタ単位回路からはその最近接の演算単位回
路にのみ信号が入力されるようにしたので、データ線セ
レクタ内での信号の伝達経路を短く均一にできるという
特長がある。本実施例において、高集積のレイアウトを
実現するには、メモリセルアレーのデータ線間のピッチ
と演算回路の入力線間のピッチの比に合わせてデータ線
セレクタを設計すればよい。
FIG. 2 shows a configuration example of the data line selector and the arithmetic circuit in the embodiment of FIG. In FIG. 2, ST1, ST2,. . , STk are data line selector unit circuits constituting the data line selector ST.
1, PE2,. . , PEk are operation unit circuits constituting the operation circuit PE. In this embodiment, the data line selector unit circuits ST1, ST2,. . , STk are a '
1, a'2,. . , A'k bits are received from the data line A of the memory cell array. . , Ak b
It selects the information of the operation unit circuit PE1, PE
2,. . , PEk. Operation unit circuits PE1, P
E2,. . , PEk can be operated in parallel, so that high-speed information processing is possible. Further, the data line selector ST and the arithmetic circuit PE are divided into unit circuits, and a signal is input from one data line selector unit circuit to only the nearest arithmetic unit circuit. The characteristic is that the signal transmission path can be made short and uniform. In this embodiment, to realize a highly integrated layout, the data line selector may be designed in accordance with the ratio of the pitch between the data lines of the memory cell array and the pitch between the input lines of the arithmetic circuit.

【0016】例えば、メモリセルアレーのデータ線ピッ
チが1μm、演算単位回路の入力線間のピッチが5μm
とし、a1,a2,..,akをすべて8bitとすれ
ば、データ線セレクタ単位回路に5対1のデータ線セレ
クタを用いて、 a'1,a'2,..,a'kをすべて40
bitとすればよい。このようにすれば、40bit分
のデータ線の幅の中に1つの演算単位回路と1つのデー
タ線セレクタ回路を丁度納めることができるので、図2
のような配置が高集積に実現できる。また、回路パター
ンが規則的な繰返しになるのでレイアウト設計も容易で
ある。
For example, the data line pitch of the memory cell array is 1 μm, and the pitch between input lines of the operation unit circuit is 5 μm.
And a1, a2,. . , Ak are all 8 bits, the data line selector unit circuit uses a 5: 1 data line selector, and a'1, a'2,. . , A'k all 40
It may be a bit. In this way, one operation unit circuit and one data line selector circuit can be accommodated exactly within the width of the data line for 40 bits.
Such an arrangement can be realized with high integration. In addition, since circuit patterns are regularly repeated, layout design is easy.

【0017】以上述べたように図2の実施例に依れば、
メモリセルアレーAから演算回路PEへ多量の情報を高
速に転送できる。しかし上記の例ではデータ線セレクタ
回路の選択比が5対1と大きくデータ線上に読み出した
情報の4/5は捨てていることになる。したがって、一
回の読み出しでデータ線上に読み出した全ての情報をつ
づけて使うにはメモリセルアレーAのワード線を5回を
立上げなければならず、消費電力の増大が問題となる場
合がある。そのような場合には図3のようにラッチ機能
を持ったデータ線セレクタ単位回路を用いるとよい。
As described above, according to the embodiment of FIG.
A large amount of information can be transferred from the memory cell array A to the arithmetic circuit PE at high speed. However, in the above example, the selection ratio of the data line selector circuit is as large as 5: 1, and 4/5 of the information read on the data line is discarded. Therefore, in order to continue using all the information read on the data line in one reading, the word line of the memory cell array A must be started up five times, and an increase in power consumption may be a problem. . In such a case, it is preferable to use a data line selector unit circuit having a latch function as shown in FIG.

【0018】図3は、選択比がh対1のデータ線セレク
タ単位回路STiで、a'i bitが入力され、ai b
itを出力するように構成されている。LATはラッチ
回路でSWはスイッチである。h個のラッチ回路、スイ
ッチ毎に1本の出力線が接続されている。本実施例の動
作を以下に説明する。メモリセルアレーAから読出され
た情報のうち本データ線セレクタ単位回路STiに入力
されたa'i bitの情報は、ラッチ回路LATに蓄え
られる。つぎに、各出力線に接続されたh個のスイッチ
のうちいずれかを導通することによりラッチ回路LAT
に蓄えられた情報が選択されて出力線に出力される。本
実施例によれば、メモリセルアレーAから読出された情
報は全てラッチ回路に蓄えられるのでメモリセルアレー
Aの読出し動作を1回行うだけでメモリセルアレーAか
ら読出された情報を全て利用することができる。したが
って、データ線セレクタ回路の選択率が大きい場合でも
前述のようなメモリセルアレーAの読出し動作に伴う消
費電力の増大がない。また、ラッチ回路からの情報の読
み出しは、メモリセルアレーAからの読み出しに比べて
信号の伝達経路が短く、高速にできる。したがって、毎
回、メモリセルから読出す場合に比べて情報を高速に転
送することができるという利点がある。
FIG. 3 shows a data line selector unit circuit STi having a selection ratio of h: 1, in which a'i bit is input and ai b
It is configured to output it. LAT is a latch circuit and SW is a switch. One output line is connected to each of the h latch circuits and switches. The operation of this embodiment will be described below. Of the information read from the memory cell array A, the information of a'i bit input to the data line selector unit circuit STi is stored in the latch circuit LAT. Next, by turning on one of the h switches connected to each output line, the latch circuit LAT is turned on.
Is selected and output to the output line. According to the present embodiment, all the information read from the memory cell array A is stored in the latch circuit, so that all the information read from the memory cell array A is used only by performing the read operation of the memory cell array A once. be able to. Therefore, even when the selectivity of the data line selector circuit is high, there is no increase in power consumption due to the read operation of the memory cell array A as described above. In addition, reading of information from the latch circuit can be performed at a higher speed with a shorter signal transmission path than reading from the memory cell array A. Therefore, there is an advantage that information can be transferred at a higher speed each time as compared with the case of reading from a memory cell.

【0019】これまでは、1つの演算回路に対してメモ
リセルアレーとデータ線セレクタ回路を1つづつ組合せ
た構成について述べてきた。しかし、場合によっては、
1つの演算回路に対して任意の個数のメモリセルアレー
とデータ線セレクタ回路を用いたり、あるいは逆に1つ
のメモリセルアレーに対してデータ線セレクタ回路と演
算回路を複数設けるなど必要に応じて種々の構成が可能
なことはもちろんである。
In the foregoing, a configuration in which a memory cell array and a data line selector circuit are combined one by one with respect to one arithmetic circuit has been described. However, in some cases,
Any number of memory cell arrays and data line selector circuits may be used for one arithmetic circuit, or a plurality of data line selector circuits and arithmetic circuits may be provided for one memory cell array. It is needless to say that the above configuration is possible.

【0020】たとえば、図2の構成においてメモリセル
アレーAの記憶容量を増加させるためにワード線の本数
を増加していくとデータ線の長さが長くなりデータ線の
容量および抵抗値が大きくなって、メモリセルによって
は信号のS/N比が劣化したり、書込み、読み出し動作
が遅延したりすることがありうる。このような場合には
図4の構成が適している。
For example, in the configuration shown in FIG. 2, when the number of word lines is increased in order to increase the storage capacity of memory cell array A, the length of the data line becomes longer and the capacity and resistance of the data line become larger. Therefore, depending on the memory cell, the S / N ratio of the signal may be deteriorated, and the writing and reading operations may be delayed. In such a case, the configuration of FIG. 4 is suitable.

【0021】図4では、1つの演算回路PEに対してメ
モリセルアレーをデータ線方向に分割して複数設け、分
割したアレーA1,A2,..,AJごとにデータ線セ
レクタ回路ST1,ST2,..,STJを配置してあ
る。データ線セレクタ回路STi(i=1,2,..,
J)はデータ線セレクタ単位回路STi1,STi
2,..,STikより構成され、データ線セレクタ単
位回路STi1,STi2,..,STikの出力はそ
れぞれ、メインデータ線MDATAに接続されている。
したがって、各メインデータ線にはJ個のデータ線セレ
クタ単位回路が接続されている。各メインデータ線に接
続されているデータ線セレクタ単位回路のうち任意の1
つづつを動作させることによって、演算回路PEを構成
する演算単位回路PE1,PE2,..,PEkにそれ
ぞれa1,a2,..,ak bitの情報をメモリセ
ルアレーより並列に入力することができる。
In FIG. 4, a plurality of memory cell arrays are provided for one processing circuit PE in the data line direction, and the divided arrays A1, A2,. . , AJ, data line selector circuits ST1, ST2,. . , STJ are arranged. The data line selector circuit STi (i = 1, 2,.
J) is a data line selector unit circuit STi1, STi.
2,. . , STik, and the data line selector unit circuits STi1, STi2,. . , STik are connected to the main data line MDATA.
Therefore, J data line selector unit circuits are connected to each main data line. Any one of the data line selector unit circuits connected to each main data line
By operating each one, the operation unit circuits PE1, PE2,. . , PEk to a1, a2,. . , Ak bits can be input in parallel from the memory cell array.

【0022】本実施例によれば、メモリセルアレーを分
割しているため、分割したメモリセルアレー毎にみると
データ線の長さが短い。したがって、データ線の容量お
よび抵抗値が大きなることはなく信号のS/N比が劣化
したり書込み、読み出し動作が遅延したりすることがな
い。
According to this embodiment, since the memory cell array is divided, the length of the data line is short for each divided memory cell array. Therefore, the capacitance and resistance of the data line are not large, and the S / N ratio of the signal is not degraded, and the writing and reading operations are not delayed.

【0023】これまで述べたように、本発明では1本の
ワード線上のメモリセルに蓄えられた情報を並列に読み
出し、その1部をセレクタで選択して演算回路PEに入
力する。したがって、目的とする演算に合わせた配置で
ワード線上のメモリセルに情報を書き込んで置く必要が
ある。
As described above, in the present invention, the information stored in the memory cells on one word line is read out in parallel, and a part thereof is selected by the selector and input to the arithmetic circuit PE. Therefore, it is necessary to write information in the memory cells on the word lines in an arrangement corresponding to the intended operation.

【0024】図5から7では、スカラとベクトルの乗算
を行うプロセッサを構成する場合についてメモリセルア
レー内の情報の並べ方を具体的に示して説明する。簡単
のため図5から7では、スカラCとメモリセルアレーに
記憶した6次元のベクトルVAからVFの各成分のビッ
ト数は2 bitとする。なお、ベクトルVAの第3成
分はVA3というように、ベクトルの各成分は添字をつ
けて表す。また、各成分の第1ビット、第2ビットを区
別するため、ベクトルVAの第3成分VA3の第1ビッ
トをva31,第2ビットをにva32というように表
す。
FIGS. 5 to 7 specifically show how to arrange a processor for multiplying a scalar and a vector by arranging information in a memory cell array. For simplicity, in FIGS. 5 to 7, the number of bits of each component of the scalar C and the six-dimensional vectors VA to VF stored in the memory cell array is 2 bits. Each component of the vector is represented by a subscript, such as a third component of the vector VA, such as VA3. Further, in order to distinguish the first bit and the second bit of each component, the first bit of the third component VA3 of the vector VA is represented as va31, and the second bit is represented as va32.

【0025】図5は上記のようなプロセッサの構成の第
1の実施例を示したものである。本実施例の特長は、ベ
クトルVA,VB,..,VFをそれぞれ異なるワード
線上のメモリセルに書き込むことである。図5に示した
ようにメモリセルアレーAは6本のワード線W
A,..,WFと、12本のデータ線D1,..,D1
2、ならびにそれらの交差部に設けられた72個のメモ
リセルから構成されている。セレクタSTは各データ線
ごとに設けられたラッチ回路LAT1,..,LAT1
2およびスイッチSW1,..,SW12から構成され
ている。演算回路PEは2つの乗算器MT1,MT2か
ら構成されており、乗算器MT1,MT2にはスカラC
とセレクタの出力が入力されている。図からわかるよう
にセレクタSTの選択比は3対1である。ワード線WA
上のメモリセルには、図示したようにベクトルVAのv
a11,va21,va31,va12,va22,v
a32,..,va62という順番に記憶されている。
ワード線WB,..,WFについても同様の順番でベク
トルVB,..,VFが配置されている。
FIG. 5 shows a first embodiment of the configuration of the processor as described above. This embodiment is characterized in that the vectors VA, VB,. . , VF to the memory cells on different word lines. As shown in FIG. 5, the memory cell array A has six word lines W
A,. . , WF and twelve data lines D1,. . , D1
2, and 72 memory cells provided at their intersections. The selector ST includes latch circuits LAT1,. . , LAT1
2 and switches SW1,. . , SW12. The arithmetic circuit PE includes two multipliers MT1 and MT2, and the scalar C
And the output of the selector are input. As can be seen from the figure, the selection ratio of the selector ST is 3: 1. Word line WA
In the upper memory cell, as shown in FIG.
a11, va21, va31, va12, va22, v
a32,. . , Va62 in that order.
The word lines WB,. . , WF in the same order as the vectors VB,. . , VF are arranged.

【0026】本実施例の動作を以下に説明する。まず、
ワード線WAを選択して、データ線D1,..,D12
に12 bitからなるベクトルVAを読みだし、ラッ
チ回路LAT1,..,LAT12にラッチする。つづ
いてスイッチSW1,SW4,SW7,SW10をオン
する。この結果、乗算器MT1にベクトルVAの第1成
分VA1であるva11,va12が、乗算器MT2に
ベクトルVAの第4成分VA4であるva41,va4
2が入力されベクトルVAとスカラCとの乗算結果の第
1成分CVA1が乗算器MT1から、第4成分CVA4
が乗算器MT2から出力される。つぎにスイッチSW
1,SW4,SW7,SW10をオフしてSW2,SW
5,SW8,SW11をオンすることによって、ベクト
ルVAとスカラCとの乗算結果の第2成分CVA2を乗
算器MT1から、第5成分CVA5をが乗算器MT2か
ら出力する。最後にスイッチSW2,SW5,SW8,
S11をオフしてSW3,SW6,SW9,SW12を
オンすることによって、ベクトルVAとスカラCとの乗
算結果の第3成分CVA3を乗算器MT1から、第6成
分CVA6を乗算器MT2から出力する。こうして、ベ
クトルVAとスカラCとの乗算を完了する。同様にし
て、ワード線WBを選択して、ベクトルVBとスカラC
との乗算を行い,ワード線WFを選択して、ベクトルV
FとスカラCとの乗算を行うまで順番にワード線を選択
して計算を行う。このようにして、6つのベクトルVF
とスカラCとの乗算が完了する。本実施例ではベクトル
VA,VB,..,VFをそれぞれ異なるワード線上の
メモリセルに書き込んでいるので1つのベクトルの値を
書き替えるためには、1本のワード線を選択して1度に
書き込みができるという利点がある。
The operation of this embodiment will be described below. First,
The word line WA is selected, and the data lines D1,. . , D12
, A vector VA consisting of 12 bits is read out, and latch circuits LAT1,. . , LAT12. Subsequently, the switches SW1, SW4, SW7, and SW10 are turned on. As a result, va11 and va12, which are the first components VA1 of the vector VA, are stored in the multiplier MT1 and va41, va4, which are the fourth components VA4 of the vector VA, are stored in the multiplier MT2.
2 is input and the first component CVA1 of the multiplication result of the vector VA and the scalar C is supplied from the multiplier MT1 to the fourth component CVA4.
Is output from the multiplier MT2. Then switch SW
1, SW4, SW7, SW10 are turned off and SW2, SW
5, by turning on SW8 and SW11, the second component CVA2 of the multiplication result of the vector VA and the scalar C is output from the multiplier MT1, and the fifth component CVA5 is output from the multiplier MT2. Finally, switches SW2, SW5, SW8,
By turning off S11 and turning on SW3, SW6, SW9, and SW12, the third component CVA3 of the multiplication result of the vector VA and the scalar C is output from the multiplier MT1, and the sixth component CVA6 is output from the multiplier MT2. Thus, the multiplication of the vector VA and the scalar C is completed. Similarly, the word line WB is selected, and the vector VB and the scalar C are selected.
And the word line WF is selected, and the vector V
The calculation is performed by sequentially selecting word lines until multiplication of F and scalar C is performed. Thus, the six vectors VF
And the scalar C are completed. In this embodiment, the vectors VA, VB,. . , VF are written in the memory cells on different word lines, respectively. Therefore, in order to rewrite the value of one vector, there is an advantage that one word line can be selected and written at a time.

【0027】上記の実施例では2つの乗算器を用いて6
次元のベクトルの乗算を行うためセレクタを3回動作さ
せて1つのベクトルの演算が完了する。メモリセルアレ
ーからの読みだしは1つのベクトルに1度でよいのでこ
のままでも高速であるが、場合によってはさらに高速動
作が必要な場合がある。
In the above embodiment, 6 multipliers are used by using two multipliers.
The selector is operated three times to perform multiplication of the dimensional vector, and the operation of one vector is completed. Since reading from the memory cell array only needs to be performed once for one vector, the reading speed is high as it is. However, in some cases, a higher speed operation is required.

【0028】図6に示す実施例は、高速化を図るため1
回のセレクタの動作で1つのベクトルの演算が完了する
ようにしたものである。図6の実施例の特長は、メモリ
アレーのデータ線の数を増やして1つのワード線にセレ
クタの選択比に等しい3つのベクトルを記憶させ、1つ
のベクトルの演算を並列に行えるように6つの乗算器を
配置したことである。なお、乗算器は6本のデータ線に
1つ設けているので乗算器のピッチは図5の実施例と同
じである。
The embodiment shown in FIG.
The operation of one vector is completed by the operation of the selector twice. The feature of the embodiment shown in FIG. 6 is that the number of data lines of the memory array is increased to store three vectors equal to the selection ratio of the selector in one word line, and six words are calculated so that one vector can be operated in parallel. That is, a multiplier is arranged. Since one multiplier is provided for each of the six data lines, the pitch of the multiplier is the same as that of the embodiment of FIG.

【0029】図6に示したようにメモリセルアレーAは
2本のワード線W1,W2と、36本のデータ線D
1,..,D36、ならびにそれらの交差部に設けられ
た72個のメモリセルから構成されている。セレクタS
Tは各データ線ごとに設けられたラッチ回路LAT
1,..,LAT36およびスイッチSW1,..,S
W36から構成されている。演算回路PEは6つの乗算
器MT1,..,MT6から構成されており、乗算器に
はスカラCとセレクタの出力が入力されている。セレク
タSTの選択比は3対1である。ワード線W1上のメモ
リセルには、ベクトルVA,VB,VCが図示したよう
にva11,vb11,vc11,va12,vb1
2,vc12,..,vc62という順番に記憶されて
いる。ワード線W2についても同様の順番でベクトルV
D,VE,VFが配置されている。
As shown in FIG. 6, memory cell array A has two word lines W1 and W2 and 36 data lines D.
1,. . , D36, and 72 memory cells provided at the intersection thereof. Selector S
T is a latch circuit LAT provided for each data line.
1,. . , LAT36 and switches SW1,. . , S
W36. The arithmetic circuit PE includes six multipliers MT1,. . , MT6, and the scalar C and the output of the selector are input to the multiplier. The selection ratio of the selector ST is 3: 1. The vectors VA, VB, VC are stored in the memory cells on the word line W1 as shown in FIG.
2, vc12,. . , Vc62 in that order. The vector V is applied to the word line W2 in the same order.
D, VE, and VF are arranged.

【0030】本実施例の動作を以下に説明する。まず、
ワード線W1を選択して、データ線D1,..,D36
にベクトルVA,VB,VCを読みだし、ラッチ回路L
AT1,..,LAT36にラッチする。つづいてスイ
ッチSW1,SW4,SW7,..,SW34をオンす
る。この結果、乗算器MT1からMT6にそれぞれ2b
itずつからなるベクトルVAの第1成分VA1(va
11,va12)から第6成分VA6(va61,va
62)が入力されベクトルVAとスカラCとの乗算結果
の第1成分CVA1から第6成分CVA6が出力され
る。つぎにスイッチSW1,SW4,SW7,..,S
W34をオフしてSW2,SW5,SW8,..,SW
35をオンすることによって、ベクトルVBとスカラC
との乗算を行い、最後にスイッチSW2,SW5,SW
8,..,SW35をオフしてSW3,SW6,SW
9,..,SW36をオンすることによって、ベクトル
VCとスカラCとの乗算を行う。こうして、3つのベク
トルVA、VB,VCとスカラCとの乗算を完了する。
同様にして、ワード線W2を選択して、スカラCとベク
トルVD,VE,VFの乗算を行う。本実施例では1つ
のワード線上のメモリセルにセレクタの選択比と同じ数
のベクトルを書き込んでいるのセレクタを動作させる度
に1つのベクトルの値を1度に演算回路に入力して計算
を行うことができる。このため、非常に高速に演算を行
うことができる。
The operation of this embodiment will be described below. First,
When word line W1 is selected and data lines D1,. . , D36
Read the vectors VA, VB, VC into the latch circuit L
AT1,. . , LAT36. Subsequently, the switches SW1, SW4, SW7,. . , SW34 are turned on. As a result, the multipliers MT1 to MT6 each receive 2b
the first component VA1 (va
11, va12) to the sixth component VA6 (va61, va
62) is input and the first to sixth components CVA1 to CVA6 of the multiplication result of the vector VA and the scalar C are output. Next, the switches SW1, SW4, SW7,. . , S
W34 is turned off and SW2, SW5, SW8,. . , SW
35, the vector VB and the scalar C
And finally switches SW2, SW5, SW
8,. . , SW35 are turned off and SW3, SW6, SW
9,. . , SW36, the multiplication of the vector VC and the scalar C is performed. Thus, the multiplication of the scalar C by the three vectors VA, VB, VC is completed.
Similarly, the word line W2 is selected, and the scalar C is multiplied by the vectors VD, VE, and VF. In this embodiment, the same number of vectors are written in the memory cells on one word line as the selection ratio of the selector. Each time the selector is operated, the value of one vector is input to the arithmetic circuit at a time to perform the calculation. be able to. Therefore, the calculation can be performed at a very high speed.

【0031】図7は図6に示した実施例に好適な並列書
き込み回路である。図6の実施例では図示したように1
つのワード線上のメモリセルに複数のベクトルを混在し
て書き込む必要がある。したがって、1つのベクトルの
値を書き替えるためには、1本のワード線上のとびとび
のメモリセルを選択しなければならず、通常のメモリの
ように1 bitずつ書き替える方法ではアドレスの制
御も複雑で時間がかかる。図7の実施例の特長は、書き
込み回路にデストリビュータを用いて1つのベクトルの
書き込まれているメモリセルに選択的に並列書き込みを
行うことである。図7においてINは入力線、DSB
1、DSB2はデストリビュータ、RGTはレジスタで
ある。ワード線W1上にベクトルVAを書き込むには次
のようにすればよい。まず、スイッチSWR11,SW
R12,..,SWR62を順番に導通して入力線IN
より、ベクトルVAを表すva11,va12,..,
va62をレジスタRGTのセルR11,R1
2,..,R62に書き込む。つづいて、ワード線W1
を選択してからデストリビュータDSB2のスイッチS
1,S4,..,S34を導通して図7に黒丸で示した
メモリセルにva11,va12,..,va62を書
き込む。これにより、図6に示したのと同じメモリセル
にベクトルVAが書き込まれたことになる。容易にわか
るように他のベクトルの書き込みも適当なワード線とデ
ストリビュータDSB2のスイッチを選択すれば同様に
行うことができる。例えば、ベクトルVFの書き込みで
はレジスタRGTにvf11,..,vf62を収納し
た後にワード線W2とデストリビュータDSB2のスイ
ッチS3,S6,..,S36を選択すればよい。
FIG. 7 shows a parallel write circuit suitable for the embodiment shown in FIG. In the embodiment of FIG.
A plurality of vectors need to be mixedly written to a memory cell on one word line. Therefore, in order to rewrite the value of one vector, discrete memory cells on one word line must be selected, and address control is complicated in a method of rewriting one bit at a time as in a normal memory. It takes time. A feature of the embodiment of FIG. 7 is that a parallel write is selectively performed on a memory cell in which one vector is written by using a distributor in a write circuit. In FIG. 7, IN is an input line, DSB
1, DSB2 is a distributor and RGT is a register. To write the vector VA on the word line W1, the following may be performed. First, the switches SWR11, SW
R12,. . , SWR62 in order to make the input line IN
Va11, va12,. . ,
va62 is set to cells R11 and R1 of the register RGT.
2,. . , R62. Subsequently, the word line W1
And switch S of distributor DSB2
1, S4,. . , S34 are turned on, and va11, va12,. . , Va62. This means that the vector VA has been written to the same memory cell as shown in FIG. As can be easily understood, writing of other vectors can be similarly performed by selecting an appropriate word line and a switch of the distributor DSB2. For example, when writing the vector VF, vf11,. . , Vf62, and switches S3, S6,... Of word line W2 and distributor DSB2. . , S36 may be selected.

【0032】このように本実施例によれば、1本のワー
ド線上に並んだメモリセルから複数のとびとびの位置に
あるメモリセルに並列に書き込みを行うことができる。
したがって、1つ1つのメモリセルへ書き込みを行う場
合に比べて高速の書き込みが可能となる。また、同じベ
クトルについては書込み時のデストリビュータDSB2
のスイッチの選択は、演算時のセレクタ内のスイッチの
選択と同じ番号のものでよい。したがって、セレクタS
TとデストリビュータDSB2のスイッチの選択を制御
する回路も容易に構成できる。
As described above, according to the present embodiment, writing can be performed in parallel from the memory cells arranged on one word line to the memory cells at a plurality of discrete positions.
Therefore, high-speed writing can be performed as compared with the case where writing is performed to each memory cell. For the same vector, distributor DSB2 at the time of writing
The selection of the switch may be the same as the selection of the switch in the selector at the time of calculation. Therefore, selector S
A circuit for controlling the selection of the switches of T and the distributor DSB2 can be easily configured.

【0033】これまで、図1から図7を用いて本発明の
基本的な構成を説明してきた。本発明は、多量のデータ
を用いて、並列演算を行う情報処理装置に適している。
たとえば、画像処理、あるいはニューロコンピューティ
ングとよばれるニューラルネットワークを用いた並列分
散型情報処理(以下ニューラルネットワーク情報処理)
を行う装置に好適である。以下では、本発明をニューラ
ルネットワーク情報処理を行う半導体装置に適用した実
施例について述べる。
The basic configuration of the present invention has been described with reference to FIGS. INDUSTRIAL APPLICABILITY The present invention is suitable for an information processing apparatus that performs a parallel operation using a large amount of data.
For example, parallel distributed information processing using a neural network called image processing or neural computing (hereinafter, neural network information processing)
It is suitable for an apparatus for performing the following. Hereinafter, an embodiment in which the present invention is applied to a semiconductor device that performs neural network information processing will be described.

【0034】ニューラルネットワーク情報処理は音声処
理、あるいは画像処理といったパターン認識あるいは最
適化問題などの分野において注目を集めている。ニュー
ラルネットワーク情報処理では、ネットワーク状に結合
した多数のニューロンと呼ばれる演算要素が、結合と呼
ばれる伝達線を通じて情報をやりとりして高度な情報処
理を行なう。各々のニューロンでは他のニューロンから
送られてきた情報(ニューロン出力値)に対して積ある
いは和などの単純な演算が行なわれる。各々のニューロ
ン内の演算、さらには、異なるニューロンの演算も並列
に行なうことが可能なため、高速に情報処理を行なうこ
とができる特長を持っている。また、望ましい情報処理
を行なわせるためにニューロン同志をつなぐ結合の重み
値を設定するアルゴリズム(学習)も提案されているた
め、目的に応じた様々な情報処理をさせることができ
る。
Neural network information processing has attracted attention in fields such as pattern recognition or optimization problems such as voice processing or image processing. In neural network information processing, a large number of arithmetic elements called neurons connected in a network form exchange information through transmission lines called connections to perform advanced information processing. In each neuron, a simple operation such as a product or a sum is performed on information (a neuron output value) sent from another neuron. The operation in each neuron and also the operation of different neurons can be performed in parallel, so that it has a feature that information processing can be performed at high speed. Further, since an algorithm (learning) for setting a weight value of a connection connecting neurons in order to perform desired information processing has been proposed, various types of information processing according to purposes can be performed.

【0035】ニューラルネットワークの動作原理を2種
類の代表的なネットワークである階層型ネットワークと
ホップフィールド型ネットワークについて説明する。図
8に階層型ネットワークを、図9にホップフィールド型
ネットワークの構造を示した。これらは、どちらもニュ
ーロンとニューロン同土をつなぐ結合から構成されてい
る。ここでは、ニューロンという用語を用いるが、場合
によってはノード、あるいは演算要素などと呼ばれるこ
ともある。結合の矢印の向きは、ニューロン出力値の伝
わる方向を示している。階層型ネットワークは、図8に
示したように、ニューロンが複数の階層をなすように並
び、入力層から出力層へ向かう方向にのみニューロン出
力値が伝わるものである。一方、ホップフィールド型ネ
ットワークは、図9に示したように、任意の2つのニュ
ーロン間で両方向にニューロン出力値が伝わるものであ
る。
The principle of operation of the neural network will be described with respect to two typical types of networks, a hierarchical network and a Hopfield network. FIG. 8 shows the structure of a hierarchical network, and FIG. 9 shows the structure of a Hopfield network. Both of these are composed of connections that connect neurons to the same area. Here, the term neuron is used, but in some cases, it is also called a node or an operation element. The direction of the connection arrow indicates the direction in which the neuron output value is transmitted. In the hierarchical network, as shown in FIG. 8, neurons are arranged in a plurality of hierarchies, and the neuron output value is transmitted only in the direction from the input layer to the output layer. On the other hand, in a Hopfield network, as shown in FIG. 9, neuron output values are transmitted in two directions between any two neurons.

【0036】図8、図9にはニューロン内で行なわれる
演算の原理も示した。演算の原理はどちらのネットワー
クでも同様なので、図8を用いて階層型ネットワークに
ついて説明する。図8下部には、S+1番目の層内のj
番目のニューロンを拡大して示した。このニューロン内
には結合を通じて前層、すなわちS番目の層内のニュー
ロンの出力値V(1,s),..,V(i,
s),..,V(n,s)が入力される。ここで、nは
S番目の層内のニューロンの数を示している。ニューロ
ン内では入力されたニューロンの出力値V(1,
s),..,V(i,s),..,V(n,s)と結合
重み値T(j,1,s),..,T(j,i,
s),..,T(j,n,s)との積V(1,s)T
(j,1,s),..,V(i,s)T(j,i,
s),..,V(n,s)T(j,n,s)が乗算機M
Tにより計算される。つぎに、これらの積と−Θ(j,
s+1)との和を加算機ADDにより計算する。ここ
で、Θ(j,s+1)はオフセットと呼ばれる量で場合
によっては、省略してもよい。さらに、その結果を非線
形関数回路Dに入力してニューロンの出力値V(j,s
+1)を得る。非線形関数回路Dは入力xに対して出力
g(x)を出力する。関数gとしては入力xがあるしき
い値xthを越えるか否かにより2値の出力を出力する
非線形関数あるいは、シグモイド関数と呼ばれる連続的
な増加関数が用いることが多い。非線形関数回路Dに
は、必要に応じてこの他の特性を持たせることもある。
また、場合によっては、線形の特性を持たせてもよい。
FIGS. 8 and 9 also show the principle of the operation performed in the neuron. Since the operation principle is the same for both networks, the hierarchical network will be described with reference to FIG. In the lower part of FIG. 8, j in the (S + 1) th layer is shown.
The third neuron is shown enlarged. In this neuron, the output values V (1, s),. . , V (i,
s),. . , V (n, s). Here, n indicates the number of neurons in the S-th layer. In the neuron, the input output value V (1,
s),. . , V (i, s),. . , V (n, s) and connection weight values T (j, 1, s),. . , T (j, i,
s),. . , T (j, n, s) V (1, s) T
(J, 1, s),. . , V (i, s) T (j, i,
s),. . , V (n, s) T (j, n, s) are the multipliers M
Calculated by T. Next, the product of these and -Θ (j,
s + 1) is calculated by the adder ADD. Here, Θ (j, s + 1) is an amount called an offset and may be omitted in some cases. Further, the result is input to the nonlinear function circuit D, and the output value V (j, s
+1). The nonlinear function circuit D outputs an output g (x) with respect to the input x. As the function g, a non-linear function that outputs a binary output depending on whether the input x exceeds a certain threshold value xth or a continuous increasing function called a sigmoid function is often used. The non-linear function circuit D may have other characteristics as needed.
In some cases, a linear characteristic may be provided.

【0037】上記の演算の原理は、図9に示したように
ホップフィールド型ネットワークでも同様である。ただ
し、ホップフィールド型ネットワークでは、1つのニュ
ーロンに自分自身を除くすべてのニューロンの出力値が
入力される。
The principle of the above operation is the same in a Hopfield type network as shown in FIG. However, in the Hopfield type network, the output values of all neurons except for itself are input to one neuron.

【0038】図8より判るように、階層型ネットワーク
では、まず、入力層のニューロンの出力値を設定し、そ
れをもとに次々に隠れ層のニューロンの出力値が更新さ
れて、最後に出力層のニューロンの出力値が更新され
る。一方、図9のようにホップフィールド型ネットワー
クでは、層というものがないため、それぞれのニューロ
ンは、適当なタイミングで出力値を更新することができ
る。このホップフィールド型ネットワークでは、すべて
のニューロン出力値の初期値を適当に与え、ニューロン
出力値が平衡状態となるまでニューロン出力値の更新を
続ける。ニューロンの出力値が平衡状態となるまでに
は、ふつう全てのニューロンについて出力値の更新を何
度か行なう必要がある。すべてのニューロンの出力値を
同時に更新するものを同期的なホップフィールド型ネッ
トワーク、それぞれのニューロンが、勝手なタイミング
で出力値を更新するものを非同期的なホップフィールド
型ネットワークと呼ぶ。
As can be seen from FIG. 8, in the hierarchical network, first, the output values of the neurons in the input layer are set, and the output values of the neurons in the hidden layer are sequentially updated based on the output values. The output values of the neurons in the layer are updated. On the other hand, in the Hopfield network as shown in FIG. 9, since there is no layer, each neuron can update the output value at an appropriate timing. In this Hopfield network, the initial values of all the neuron output values are appropriately given, and the updating of the neuron output values is continued until the neuron output values reach an equilibrium state. Until the output values of the neurons reach an equilibrium state, it is usually necessary to update the output values of all the neurons several times. A device that updates the output values of all neurons simultaneously is called a synchronous Hopfield network, and a device that updates the output values of each neuron at arbitrary timing is called an asynchronous Hopfield network.

【0039】以下では、上記したニューラルネットワー
クの計算を行う情報処理装置(以下、ニューロプロセッ
サ)の実施例について述べる。なお、以下では各層がn
個のニューロンからなるL層構成の階層型ネットワーク
の計算をk(k<n)個の並列に動作する乗算器を用い
て行う実施例を示すが、kがnと等しい場合あるいはk
がnより大きい場合においても同様にして本発明を用い
てニューラルネットワークの計算を行う情報処理装置を
構成することができる。また、前述したホップフィール
ドネットワークやそれ以外のニューラルネットワークに
ついても動作原理は同様のため以下の実施例と同様にし
て実現できる。
Hereinafter, an embodiment of an information processing apparatus (hereinafter, a neuroprocessor) for performing the above-described neural network calculation will be described. In the following, each layer is n
An embodiment in which calculation of an L-layer hierarchical network composed of N neurons is performed using k (k <n) multipliers operating in parallel will be described.
Is larger than n, an information processing apparatus for calculating a neural network can be similarly configured using the present invention. The operation principle of the above-described Hopfield network and other neural networks is the same, so that it can be realized in the same manner as the following embodiment.

【0040】図10は本発明を用いて構成したニューロ
プロセッサの第1の実施例である。
FIG. 10 shows a first embodiment of a neuroprocessor constructed according to the present invention.

【0041】図10においてA、Bはメモリセルアレ
ー、STA、STBはセレクタ回路、PEは演算回路、
ACCはアキュムレータ、Dは非線形演算回路である。
メモリセルアレーA、Bはそれぞれニューロン出力値、
結合重み値を記憶するためのもので、ニューロン出力
値、結合重み値はそれぞれ、a bit、b bitで表
現されて記憶されている。メモリセルアレーAにはL本
のワード線があり、各ワード線上のメモリセルには1層
分のニューロン出力値が記憶されている。したがって、
1本のワード線を選択することによりデータ線群に1層
分のニューロン出力値が読出される。メモリセルアレー
Bにはn(L−1)本のワード線があり、そのうちの1
本を選択することによりデータ線群にn(n=kh)個
の結合重み値が読出される。セレクタ回路STA、ST
Bはそれぞれ、k個のセレクタ単位回路STA
1,..,STAkおよびSTB1,..,STBkか
らなっており、セレクタ単位回路では、メモリサルアレ
ーから読出された情報をラッチしてその中からh:1の
比で選択して演算回路PEへ伝達する。演算回路PE
は、k個のデジタル乗算器MTD1,..,MTDkお
よびスイッチSW1,..,SWkから構成されていて
スイッチSWi(i=1,..,k)を導通させること
によりデジタル乗算器MTDiにより計算されたニュー
ロン出力値と結合重み値の積をアキュムレータACCに
伝達する。アキュムレータACCでは、乗算器より伝達
されるニューロン出力値と結合重み値の積を加算して、
非線形演算回路Dに伝達する。非線形演算回路Dでは、
図8における非線形関数gの計算を行い、ニューロン出
力値を出力する。非線形演算回路Dは、非線形関数gの
入出力関係を実現するように論理回路で構成したり、あ
るいは、入力データをアドレスとして扱い、そのアドレ
スに対応するメモリセルに非線形関数gの出力値を記憶
したメモリを用いることもできる。
In FIG. 10, A and B are memory cell arrays, STA and STB are selector circuits, PE is an arithmetic circuit,
ACC is an accumulator, and D is a non-linear operation circuit.
Memory cell arrays A and B are neuron output values, respectively.
For storing the connection weight value, the neuron output value and the connection weight value are expressed and stored as a bit and b bit, respectively. The memory cell array A has L word lines, and the memory cells on each word line store neuron output values for one layer. Therefore,
By selecting one word line, one layer of neuron output values is read out to the data line group. The memory cell array B has n (L-1) word lines,
By selecting a book, n (n = kh) coupling weight values are read out to the data line group. Selector circuits STA, ST
B represents k selector unit circuits STA, respectively.
1,. . , STAk and STB1,. . , STBk, and the selector unit circuit latches the information read from the memory array and selects it at a ratio of h: 1, and transmits it to the arithmetic circuit PE. Arithmetic circuit PE
Are k digital multipliers MTD1,. . , MTDk and switches SW1,. . , SWk, and transmits the product of the neuron output value and the connection weight value calculated by the digital multiplier MTDi to the accumulator ACC by turning on the switch SWi (i = 1,..., K). In the accumulator ACC, the product of the neuron output value transmitted from the multiplier and the connection weight value is added, and
The signal is transmitted to the non-linear operation circuit D. In the nonlinear operation circuit D,
The nonlinear function g in FIG. 8 is calculated, and a neuron output value is output. The non-linear operation circuit D is configured by a logic circuit so as to realize the input / output relationship of the non-linear function g, or treats input data as an address and stores the output value of the non-linear function g in a memory cell corresponding to the address. A memory that has been used can also be used.

【0042】以下、本実施例の動作を図11を用いて詳
細に説明する。図11は図10のニューロプロセッサの
構成(1)における計算アルゴリズムを図示したもので
ある。前記したようにここでは、各層にn個のニューロ
ンがあるL層の階層型ネットワークを仮定している。な
お、図11では第2層の第1ニューロンの出力値を計算
するアルゴリズムを示すために結合重みのうち1部のみ
示してある。あらかじめ、入力層のニューロンの出力値
を図10のメモリアレーAの1本のワード線上のメモリ
セルに書き込んでおく。またメモリアレーBには(L−
1)n2個のすべての結合重み値を、結合重み値T
(j,i,s)(jとsは一定、i=1,..,n)が
同一のワード線上のメモリセルに記憶されるように書き
込んでおく。
Hereinafter, the operation of this embodiment will be described in detail with reference to FIG. FIG. 11 illustrates a calculation algorithm in the configuration (1) of the neuroprocessor of FIG. As described above, here, an L-layer hierarchical network having n neurons in each layer is assumed. FIG. 11 shows only one part of the connection weights in order to show the algorithm for calculating the output value of the first neuron in the second layer. The output values of the neurons in the input layer are written in advance to the memory cells on one word line of the memory array A in FIG. Also, (L-
1) All the n 2 connection weight values are converted to connection weight values T
(J, i, s) (j and s are constant, i = 1,..., N) are written so as to be stored in the memory cells on the same word line.

【0043】まず、入力層のニューロンの出力値を書き
込んでおいたメモリアレーAのワード線ならびに入力層
のニューロンと第2層の第1ニューロンとの間の結合重
み値T(1,i,1)(i=1,..,n)を書き込ん
でおいたメモリアレーBのワード線を選択する。その結
果、セレクタ単位回路STA1,..,STAkにはそ
れぞれ、図11の第1層のグループ#1,..,#kの
ニューロン出力値が、セレクタ単位回路STB
1,..,STBkにはそれぞれ、第1層のグループ#
1,..,#kのニューロンから第2層の第1ニューロ
ンへの結合重み値が入力されラッチされる。つづいて、
h回に分けて第2層の第1ニューロンの出力値を計算す
る。まず、第1サイクルでは、セレクタ単位回路STA
1,..,STAkからそれぞれ第1層のグループ#
1,..,#k内の第1ニューロンの出力値を、セレク
タ単位回路STB1,..,STBkからはそれぞれ図
11において実線で示した結合の重み値をデジタル乗算
器MTD1,..,MTDkに入力する。デジタル乗算
器MTD1,..,MTDkでは、ニューロン出力値と
結合重み値の積が並列に計算される。つづいて、スイッ
チSW1,..,SWkを順番に導通させて乗算結果を
アキュムレータACCへ伝達する。次に、第2サイクル
では、セレクタ単位回路STA1,..,STAkから
それぞれ、第1層のグループ#1,..,#k内の第2
ニューロンの出力値を、セレクタ単位回路STB
1,..,STBkからはそれぞれ、図11において破
線で示した結合の重み値をデジタル乗算器MTD
1,..,MTDkに入力して乗算結果をアキュムレー
タACCへ伝達する。同様にして第hサイクルまで計算
を行うとアキュムレータACCには第2層の第1ニュー
ロンの出力値を求めるのに必要な積和結果が得られる。
ここで、その積和結果を非線形演算回路Dに入力して第
2層の第1ニューロンの出力値を求め、メモリアレーA
に書き込む(第1層のニューロンの出力値が書き込まれ
たメモリセルのあるワード線以外のワード線上のメモリ
セルに書き込む)。つづいて、入力層のニューロンと第
2層の第2ニューロンとの間の結合重み値T(2,i,
1)(i=1,..,n)を書き込んでおいたメモリア
レーBのワード線を選択して、同様にして第2層の第2
ニューロンの出力値の計算を行なう。なお、同じ層内の
ニューロンの出力値の計算を行なうときには、すでに必
要なニューロンの出力値は、セレクタにラッチされてい
るのでメモリアレーAのワード線を選択しなおす必要は
ない。
First, the word line of the memory array A into which the output value of the neuron of the input layer has been written, and the connection weight value T (1, i, 1) between the neuron of the input layer and the first neuron of the second layer ) (I = 1,..., N) is selected and the word line of the memory array B is selected. As a result, the selector unit circuits STA1,. . , STAk respectively correspond to the first layer groups # 1,. . , #K are connected to the selector unit circuit STB.
1,. . , STBk, respectively, have a first layer group #
1,. . , #K to the first neuron of the second layer are input and latched. Then,
The output value of the first neuron of the second layer is calculated for h times. First, in the first cycle, the selector unit circuit STA
1,. . , STAk from the first layer group #
1,. . , #K are output to the selector unit circuits STB1,. . , STBk respectively output the weights of the combinations indicated by solid lines in FIG. . , MTDk. The digital multipliers MTD1,. . , MTDk, the product of the neuron output value and the connection weight value is calculated in parallel. Subsequently, the switches SW1,. . , SWk are sequentially turned on to transmit the multiplication result to the accumulator ACC. Next, in the second cycle, the selector unit circuits STA1,. . , STAk from the first layer group # 1,. . , #K in #k
The output value of the neuron is stored in the selector unit circuit STB.
1,. . , STBk respectively output the weight of the combination indicated by the broken line in FIG.
1,. . , MTDk and transmits the multiplication result to the accumulator ACC. Similarly, when the calculation is performed up to the h-th cycle, the accumulator ACC obtains the product-sum result necessary for obtaining the output value of the first neuron in the second layer.
Here, the result of the product sum is input to the non-linear operation circuit D, and the output value of the first neuron in the second layer is obtained.
(The output value of the neuron of the first layer is written to a memory cell on a word line other than the word line having the memory cell in which the output value is written). Subsequently, a connection weight value T (2, i, between the neuron in the input layer and the second neuron in the second layer)
1) Select the word line of the memory array B in which (i = 1,..., N) has been written, and likewise select the second line of the second layer.
The output value of the neuron is calculated. When calculating the output values of the neurons in the same layer, the output values of the necessary neurons have already been latched by the selector, so there is no need to select the word line of the memory array A again.

【0044】以上の動作を続けて第2層のニューロンの
出力値を1本のワード線上のメモリセルに書き込んでい
く。第2層の計算が終了したらつづいて第2層のニュー
ロンの出力値をメモリセルアレーAから、第2層のニュ
ーロンと第3層の第1ニューロンとの間の結合重み値T
(1,i,2)(i=1,..,n)をメモリアレーB
から読出して第3層の第1ニューロンの出力値の計算を
行ない、同様の計算をつづけて最終層の第nニューロン
の出力値を求めるまで計算を行なっていく。
By continuing the above operation, the output value of the neuron of the second layer is written into the memory cell on one word line. After the calculation of the second layer is completed, the output value of the neuron of the second layer is read from the memory cell array A to obtain the connection weight value T between the neuron of the second layer and the first neuron of the third layer.
(1, i, 2) (i = 1,..., N) is stored in memory array B
, The output value of the first neuron in the third layer is calculated, and the same calculation is continued until the output value of the n-th neuron in the final layer is obtained.

【0045】以上述べたように本実施例によれば、k個
の乗算を並列に行なうので高速にニューラルネットワー
ク情報処理が行なえる。また、セレクタを用いているた
め、メモリセルアレーのデータ線ピッチとデジタル乗算
回路の入力線のピッチが異なっても両者を整合させてセ
レクタを挾んで近接して配置できる。このため長いバス
が不要となり信号の授受を高速に行なうことができる。
さらに、セレクタにラッチ機能を設けたため、メモリセ
ルアレーの読出し動作はメモリセルアレーAでは、各層
ごと、Bでは各ニューロンごとに1回と少なくて良い。
したがって、メモリセルアレーの消費する電力が少なく
て済むという利点がある。また、セレクタ内のラッチ回
路から読みだすので、メモリセルアレーからの読みだし
に較べて高速動作が可能となる。
As described above, according to the present embodiment, neural network information processing can be performed at high speed because k multiplications are performed in parallel. Further, since the selector is used, even if the data line pitch of the memory cell array and the input line pitch of the digital multiplying circuit are different, they can be matched and arranged close to each other with the selector interposed therebetween. For this reason, a long bus is not required and signals can be transmitted and received at high speed.
Further, since the selector is provided with the latch function, the read operation of the memory cell array may be reduced to once for each layer in the memory cell array A and once for each neuron in the memory cell array B.
Therefore, there is an advantage that the power consumed by the memory cell array can be reduced. In addition, since the data is read from the latch circuit in the selector, high-speed operation is possible as compared with the data read from the memory cell array.

【0046】図12は、ニューロプロセッサの構成例
(2)であり、図10の実施例と同様の機能を持つもの
をアナログの乗算器を用いて実現したものである。図1
2においてDAA1,..,DAAkおよびDAB
1,..,DABkはDAコンバータでありセレクタS
TA,SABから出力されるデジタル値をアナログ値に
変換して乗算器MTA1,..,MTAkに入力する。
乗算器MTA1,..,MTAkは出力が電流のものを
用いる。このため乗算結果を1度に足しあわせることが
できる。したがって、図10の実施例のように演算回路
PE内にスイッチを設けて順番にアキュムレータに乗算
結果を伝達する場合に比べて高速であるという特長があ
る。また、本実施例ではアナログの乗算器を用いている
ため占有面積が小さくできるという利点がある。本実施
例の動作、計算アルゴリズムは図10の実施例と同様で
あるので動作の詳細な説明は省略する。なお、出力が電
流の乗算器MTA1,..,MTAkはたとえば、ア
イ、イー、イー、イー、ジャーナル、オブ、ソリッド、
ステート、サーキット、エス、シー17、第6巻、11
74ページから1178ページ(IEEE Journal of Soli
d-State Circuits, vol, SC-17, no.6, December, 198
2, p.1174-1178)あるいはアイ、イー、イー、イー、ジ
ャーナル、オブ、ソリッド、ステート、サーキット、エ
ス、シー22、第3巻、357ページから365ページ
(IEEE Journal of Solid-State Circuits, vol, SC-2
2, no.3, June, 1987, p.357-365)に記載の回路を用い
ることができる。DAコンバータについては図12の構
成に好適な実施例を後述する。
FIG. 12 shows an example (2) of the configuration of the neuroprocessor, which is realized by using an analog multiplier and having the same function as the embodiment of FIG. FIG.
2, DAA1,. . , DAAk and DAB
1,. . , DABk are DA converters and the selectors S
The digital values output from TA and SAB are converted into analog values, and the values of the multipliers MTA1,. . , MTAk.
The multipliers MTA1,. . , MTAk whose output is current is used. Therefore, the multiplication results can be added at one time. Therefore, there is a feature that the operation speed is higher than the case where a switch is provided in the arithmetic circuit PE and the multiplication result is sequentially transmitted to the accumulator as in the embodiment of FIG. Further, in this embodiment, since an analog multiplier is used, there is an advantage that the occupied area can be reduced. Since the operation and calculation algorithm of this embodiment are the same as those of the embodiment of FIG. 10, detailed description of the operation will be omitted. Incidentally, the multipliers MTA1,. . , MTAK are, for example, eye, e, e, e, journal, of, solid,
State, Circuit, S, Sea 17, Volume 6, 11
Pages 74 to 1178 (IEEE Journal of Soli
d-State Circuits, vol, SC-17, no.6, December, 198
2, p.1174-1178) or i, e, e, e, journal, ob, solid, state, circuit, s, c22, Vol. 3, pp. 357-365 (IEEE Journal of Solid-State Circuits, vol, SC-2
2, no. 3, June, 1987, p. 357-365) can be used. A preferred embodiment of the DA converter having the configuration shown in FIG. 12 will be described later.

【0047】図13は、本発明を用いたニューロプロセ
ッサの構成例(3)で図10の実施例と同じようにデジ
タル演算器を用いて構成してある。図13においてRA
はレジスタで、ニューロン出力値を記憶するためのもの
である。演算回路PEは、k個のデジタル乗算器MTD
1,..,MTDkおよびアキュムレータACC
1,..,ACCkより構成されている。セレクタ回路
STCではスイッチSW1,..,SWkを1つずつ導
通することにより積和結果を非線形演算回路Dに伝達す
る。本実施例では図11とは異なる計算アルゴリズムで
ニューロン出力値を計算する。以下、本実施例の動作を
図14を用いて詳細に説明する。
FIG. 13 shows a configuration example (3) of a neuroprocessor using the present invention, which is configured by using a digital arithmetic unit as in the embodiment of FIG. In FIG.
Is a register for storing a neuron output value. The arithmetic circuit PE includes k digital multipliers MTD
1,. . , MTDk and accumulator ACC
1,. . , ACCk. In the selector circuit STC, the switches SW1,. . , SWk are conducted one by one to transmit the product-sum result to the non-linear operation circuit D. In this embodiment, the neuron output value is calculated by a calculation algorithm different from that in FIG. Hereinafter, the operation of this embodiment will be described in detail with reference to FIG.

【0048】図14は図13のニューロプロセッサの構
成(3)における計算アルゴリズムを図示したものであ
る。前と同様にここでは、各層にn個のニューロンがあ
るL層の階層型ネットワークを仮定している。なお、図
14では第2層の第1ニューロンから第kニューロンの
出力値を計算するアルゴリズムを示すために結合重みの
うち1部のみ示してある。あらかじめ、入力層のニュー
ロンの出力値をレジスタRAに書き込んでおく。またメ
モリアレーBには(L−1)n2個のすべての結合重み
値を書き込んでおく。このとき、第s層のニューロンh
個と第(s+1)層ニューロンk個の間のn個の結合重
み値T(j,i,s)が同一のワード線上のメモリセル
に記憶されるようにする。たとえば、図14において入
力層のグループ#1のh個のニューロンと第2層の第1
ニューロンから第kニューロンの間の結合重み値は同一
のワード線上のメモリセルに記憶されるようにする。
FIG. 14 illustrates the calculation algorithm in the configuration (3) of the neuroprocessor of FIG. As before, an L-layer hierarchical network having n neurons in each layer is assumed here. FIG. 14 shows only one part of the connection weights in order to show an algorithm for calculating the output value of the k-th neuron from the first neuron of the second layer. The output value of the neuron in the input layer is written in the register RA in advance. Also in the memory array B is written to (L-1) n 2 pieces of all connection weights. At this time, the s-th layer neuron h
The n connection weight values T (j, i, s) between the (n) and the (s + 1) th layer neurons are stored in the memory cells on the same word line. For example, in FIG. 14, h neurons in group # 1 of the input layer and the first neuron in the second layer
The connection weight value between the neuron and the k-th neuron is stored in a memory cell on the same word line.

【0049】まず、入力層のグループ#1の第1ニュー
ロンの出力値をレジスタRAから読出し、入力層のグル
ープ#1のh個のニューロンと第2層の第1ニューロン
から第kニューロンの間の結合重み値を書き込んでおい
たメモリアレーBのワード線を選択する。その結果、セ
レクタ単位回路STB1,..,STBkにはそれぞ
れ、h個ずつの結合重み値T(1,i,1),..,T
(k,i,1)(ここで、i=1,..,h)が入力さ
れラッチされる。つづいて、入力層のグループ#1のh
個のニューロンと第2層の第1ニューロンから第kニュ
ーロンの間の結合重み値の積をh回のサイクルに分けて
行なう。まず、第1サイクルでは、第1層の第1ニュー
ロンの出力値をレジスタRAから読出し、セレクタ単位
回路STB1,..,STBkからはそれぞれ図14に
おいて実線で示した結合の重み値をデジタル乗算器MT
D1,..,MTDkに入力する。デジタル乗算器MT
D1,..,MTDkでは、ニューロン出力値と結合重
み値の積が並列に計算され、乗算結果はアキュムレータ
ACC1,..,ACCkへ蓄えられる。次に、第2サ
イクルでは、第1層の第2ニューロンの出力値をレジス
タRAから読出し、セレクタ単位回路STB1,..,
STBkからはそれぞれ、図11において破線で示した
結合の重み値をデジタル乗算器MTD1,..,MTD
kに入力して乗算結果をアキュムレータACC
1,..,ACCkへ伝達して加算する。同様にして第
hサイクルまで計算を行い、入力層のグループ#1のh
個のニューロンと第2層の第1ニューロンから第kニュ
ーロンの間の結合重み値の積和計算を行なう。
First, the output value of the first neuron of the group # 1 of the input layer is read from the register RA, and the output values of the h neurons of the group # 1 of the input layer and the first to kth neurons of the second layer are read out. The word line of the memory array B to which the connection weight value has been written is selected. As a result, the selector unit circuits STB1,. . , STBk respectively have h connection weight values T (1, i, 1),. . , T
(K, i, 1) (where i = 1,..., H) is input and latched. Subsequently, h of the input layer group # 1
The product of the connection weights between the number of neurons and the first to k-th neurons in the second layer is divided into h cycles. First, in the first cycle, the output value of the first neuron of the first layer is read from the register RA, and the selector unit circuits STB1,. . , STBk, respectively, obtains the weight of the combination indicated by the solid line in FIG.
D1,. . , MTDk. Digital multiplier MT
D1,. . , MTDk, the product of the neuron output value and the connection weight value is calculated in parallel, and the multiplication results are stored in accumulators ACC1,. . , ACCk. Next, in the second cycle, the output value of the second neuron of the first layer is read from the register RA, and the selector unit circuits STB1,. . ,
From STBk, the weights of the combinations indicated by the broken lines in FIG. . , MTD
Input to k and accumulator ACC
1,. . , ACCk and add them. Similarly, the calculation is performed up to the h-th cycle.
The sum of product of the connection weights between the neurons and the first to kth neurons in the second layer is calculated.

【0050】次に、入力層のグループ#2の第1ニュー
ロンの出力値をレジスタRAから読出し、入力層のグル
ープ#2のh個のニューロンと第2層の第1ニューロン
から第kニューロンの間の結合重み値を書き込んでおい
たメモリアレーBのワード線を選択する。そして、上記
と同様に入力層のグループ#2のh個のニューロンと第
2層の第1ニューロンから第kニューロンの間の結合重
み値の積をh回のサイクルに分けて行なう。以下、同様
にして入力層のグループ#kのh個のニューロンと第2
層の第1ニューロンから第kニューロンの間の結合重み
値の乗算までを行なうとアキュムレータACC
1,..,ACCkには第2層の第1ニューロンから第
kニューロンの出力値を求めるのに必要な積和結果が得
られる。ここで、その積和結果をスイッチSW
1,..,SWkを順番に導通させて非線形演算回路D
に入力してその出力をレジスタRAに書き込む。以下、
第2層のニューロン出力値をk個づつ求めていき、第2
層のニューロン出力値の計算が終わった後に第2層のニ
ューロン出力値を用いて第3層のニューロン出力値を求
め、出力層まで同様にして計算を行なう。
Next, the output value of the first neuron of the group # 2 of the input layer is read from the register RA, and the output values of the h neurons of the group # 2 of the input layer and the first to kth neurons of the second layer are read out. Select the word line of the memory array B in which the connection weight value has been written. Then, similarly to the above, the product of the connection weights between the h neurons of the group # 2 in the input layer and the first to kth neurons in the second layer is divided into h cycles. Hereinafter, h neurons of the group #k of the input layer and the second
When the multiplication of the connection weight between the first neuron and the k-th neuron of the layer is performed, the accumulator ACC
1,. . , ACCk can obtain the product-sum result necessary for obtaining the output value of the k-th neuron from the first neuron of the second layer. Here, the sum of the products is referred to as a switch SW
1,. . , SWk are turned on in order, and the non-linear operation circuit D
And write the output to register RA. Less than,
The output values of the neurons of the second layer are obtained k by k.
After the calculation of the neuron output value of the layer is completed, the neuron output value of the third layer is obtained by using the neuron output value of the second layer, and the calculation is similarly performed up to the output layer.

【0051】以上述べたように本実施例では、デジタル
演算によりニューラルネットワーク情報処理を行うため
図10の実施例と同じく高精度の演算ができる。さら
に、乗算器をk個、アキュムレータをk個設けて乗算、
加算とも並列に行なうので図10の実施例より高速であ
る。なお、本実施例においてもセレクタを用いているた
め、メモリセルアレーのデータ線ピッチとデジタル乗算
回路、アキュムレータの入力線のピッチが異なっても両
者を整合させてセレクタを挾んで近接して配置できる。
このため長いバスが不要となり信号の授受を高速に行な
うことができることはもちろんである。さらに、セレク
タにラッチ機能を設けたため、メモリセルアレーBの読
出し動作はhサイクルごとと少なくて良い。したがっ
て、メモリセルアレーの消費する電力が少なくて済むと
いう利点がある。なお、本実施例では1つの非線形演算
回路Dを用いているが、個々のアキュムレータそれぞれ
に設けても良い。その場合には、非線形演算も並列に行
なうことができるため、さらに、高速処理が可能とな
る。その場合には、セレクタSTCを用いずにレジスタ
RAの入力バスをak bitに広げてレジスタRAへ
の書込みを並列に行なうようにして、さらに、高速処理
を行うことも可能となる。
As described above, in this embodiment, since the neural network information processing is performed by the digital operation, the operation can be performed with high accuracy as in the embodiment of FIG. Furthermore, k multipliers and k accumulators are provided for multiplication,
Since addition is performed in parallel, the operation is faster than the embodiment of FIG. Since a selector is used in this embodiment, even if the data line pitch of the memory cell array is different from the pitch of the input line of the digital multiplying circuit and accumulator, they can be matched and arranged close to each other with the selector interposed therebetween. .
For this reason, a long bus is not required and signals can be exchanged at a high speed. Further, since the selector is provided with the latch function, the read operation of the memory cell array B may be as small as every h cycle. Therefore, there is an advantage that the power consumed by the memory cell array can be reduced. Although one non-linear operation circuit D is used in the present embodiment, it may be provided for each accumulator. In that case, the non-linear operation can also be performed in parallel, so that further high-speed processing is possible. In that case, the input bus of the register RA is expanded to ak bits without using the selector STC, and writing to the register RA is performed in parallel, so that high-speed processing can be performed.

【0052】図15は、本発明を用いたニューロプロセ
ッサの構成例(4)である。図15において、PEA,
PEBは演算回路、DSBはディストリビュータであ
る。前出の実施例と同じくレジスタRA、メモリセルア
レーBはそれぞれニューロン出力値、結合重み値を記憶
するためのもので、ニューロン出力値、結合重み値はそ
れぞれ、a bit、b bitで表現されて記憶され
る。本実施例の特長は、アキュムレータをhk個設けた
ことである。以下、本実施例の動作を図15、図16を
用いて詳細に説明する。
FIG. 15 shows a configuration example (4) of a neuroprocessor using the present invention. In FIG. 15, PEA,
PEB is an arithmetic circuit, and DSB is a distributor. As in the previous embodiment, the register RA and the memory cell array B store the neuron output value and the connection weight value, respectively. The neuron output value and the connection weight value are represented by a bit and b bit, respectively. It is memorized. The feature of this embodiment is that hk accumulators are provided. Hereinafter, the operation of this embodiment will be described in detail with reference to FIGS.

【0053】図16は図15のニューロプロセッサの構
成(4)における計算アルゴリズムを図示したものであ
る。本実施例と図13、14に示した実施例の最も大き
な違いは、本実施例では、n個のアキュムレータを設け
て、1層分のn個のニューロンの出力値を計算を並列し
て行なうことである。あらかじめ、入力層のニューロン
の出力値をレジスタRAに書き込んでおく。またメモリ
アレーBには(L−1)n2個のすべての結合重み値を
書き込んでおく。このとき、同一のワード線上のメモリ
セルに第s層の第iニューロンと第(s+1)層のニュ
ーロン間の結合重み値T(j,i,s)(j=
1,...,n)が記憶されるようにし、ワード線上の
順番はワード線を選択することによってセレクタ単位回
路STBxに、第s層の第iニューロンと第(s+1)
層の第1グループから第hグループ(図16に#
1,..,#hで示した)の第xニューロンとの間の結
合重み値が入力されるようにする。例えば、図16にお
いて入力層の第1ニューロンと第2層のn個のニューロ
ンの間の結合重み値は同一のワード線上に記憶され、入
力層の第1ニューロンと各グループの第1ニューロン
(斜線をつけたもの)の間のh個の結合重み値はそのワ
ード線を選択するとセレクタ単位回路STB1に入力さ
れる。
FIG. 16 shows a calculation algorithm in the configuration (4) of the neuroprocessor of FIG. The most significant difference between this embodiment and the embodiment shown in FIGS. 13 and 14 is that in this embodiment, n accumulators are provided and output values of n neurons for one layer are calculated in parallel. That is. The output value of the neuron in the input layer is written in the register RA in advance. Also in the memory array B is written to (L-1) n 2 pieces of all connection weights. At this time, the connection weight value T (j, i, s) (j = j) between the i-th neuron in the s-th layer and the neuron in the (s + 1) -th layer is stored in the memory cells on the same word line.
1,. . . , N) are stored, and the order on the word line is selected by selecting the word line, so that the selector unit circuit STBx supplies the i-th neuron of the s-th layer and the (s + 1) -th neuron.
The first to h-th groups of layers (# in FIG. 16)
1,. . , #H) to the x-th neuron. For example, in FIG. 16, the connection weights between the first neuron of the input layer and the n neurons of the second layer are stored on the same word line, and the first neuron of the input layer and the first neuron of each group (shaded lines) Are added to the selector unit circuit STB1 when the word line is selected.

【0054】計算は次のように行なう。まず、入力層の
第1ニューロンの出力値をレジスタRAから読出し、入
力層の第1ニューロンと第2層のニューロンの間の結合
重み値を書き込んでおいたメモリアレーBのワード線を
選択する。その結果、セレクタ単位回路STB
1,..,STBkにはそれぞれ、h個ずつの結合重み
値が入力されラッチされる。つづいて、入力層の第1ニ
ューロンの出力値と第2層のn個のニューロンの間の結
合重み値の積をh回のサイクルに分けて行なう。まず、
第1サイクルでは、セレクタ単位回路STB1,..,
STBkからはそれぞれ図16において実線で示した結
合の重み値をデジタル乗算器MTD1,..,MTDk
に入力する。デジタル乗算器MTD1,..,MTDk
では、ニューロン出力値と結合重み値の積が並列に計算
され、乗算結果はディストリビュータを通じてアキュム
レータACC(1,1),ACC(1,2)..,AC
C(1,k)へ蓄えられる。次に、第2サイクルでは、
セレクタ単位回路STB1,..,STBkからそれぞ
れ、図16において破線で示した結合の重み値をデジタ
ル乗算器MTD1,..,MTDkに入力して乗算結果
をアキュムレータACC(2,1),ACC(2,
2),..,ACC(2,k)へ伝達して加算する。同
様にして第hサイクル計算を行い、入力層の第1のニュ
ーロンと第2層のn個のニューロンの間の結合重み値の
積和計算を行なう。
The calculation is performed as follows. First, the output value of the first neuron of the input layer is read from the register RA, and the word line of the memory array B to which the connection weight between the first neuron of the input layer and the neuron of the second layer is written is selected. As a result, the selector unit circuit STB
1,. . , STBk are input with h connection weights and latched. Subsequently, the product of the output value of the first neuron in the input layer and the connection weight value between the n neurons in the second layer is divided into h cycles. First,
In the first cycle, the selector unit circuits STB1,. . ,
From STBk, the weights of the combinations indicated by the solid lines in FIG. . , MTDk
To enter. The digital multipliers MTD1,. . , MTDk
In, the product of the neuron output value and the connection weight value is calculated in parallel, and the multiplication result is passed through the distributor to the accumulators ACC (1,1), ACC (1,2). . , AC
Stored in C (1, k). Next, in the second cycle,
The selector unit circuits STB1,. . , STBk, the digital multipliers MTD1,. . , MTDk and the multiplication results are stored in accumulators ACC (2,1), ACC (2,1).
2),. . , ACC (2, k). Similarly, the h-th cycle calculation is performed, and the product-sum calculation of the connection weight values between the first neuron of the input layer and the n neurons of the second layer is performed.

【0055】次に、入力層の第2ニューロンの出力値を
レジスタRAから読出し、入力層の第2ニューロンと第
2層のn個のニューロンの間の結合重み値を書き込んで
おいたメモリアレーBのワード線を選択する。そして、
上記と同様に入力層の第2ニューロンと第2層のニュー
ロンの間の結合重み値の積をh回のサイクルに分けて行
なう。以下、同様にして入力層の第nニューロンと第2
層のニューロンの間の結合重み値の乗算までを行なうと
アキュムレータには第2層の第1ニューロンから第nニ
ューロンの出力値を求めるのに必要な積和結果が得られ
る。たとえば、ACC(2,3)には第2層の第2グル
ープの第3ニューロンの出力値を求めるのに必要な積和
結果が得られる。ここで、その積和結果をスイッチSW
1,..,SWkを順番に導通させて非線形演算回路D
に入力してレジスタRAに書き込む。以下、第3層のニ
ューロン出力値を求め、第3層のニューロン出力値の計
算が終わった後に第4層のニューロン出力値を求めて、
出力層まで同様にして計算を行なう。
Next, the output value of the second neuron of the input layer is read from the register RA, and the memory array B in which the connection weight between the second neuron of the input layer and the n neurons of the second layer is written. Select the word line. And
Similarly to the above, the product of the connection weight values between the second neuron of the input layer and the neuron of the second layer is performed in h cycles. Hereinafter, the n-th neuron and the second
When the multiplication of the connection weights between the neurons in the layer is performed, the accumulator obtains the product-sum result necessary for obtaining the output value of the n-th neuron from the first neuron in the second layer. For example, ACC (2,3) can obtain a product-sum result necessary for obtaining the output value of the third neuron of the second group in the second layer. Here, the sum of the products is referred to as a switch SW
1,. . , SWk are turned on in order, and the non-linear operation circuit D
And write it to the register RA. Hereinafter, the neuron output value of the third layer is obtained, and after the calculation of the neuron output value of the third layer is completed, the neuron output value of the fourth layer is obtained.
The same calculation is performed up to the output layer.

【0056】以上述べたように本実施例によれば、乗算
器をk個、アキュムレータをn個設けて同一層内のn個
のニューロンの出力値の計算を並列に行なうことができ
る。
As described above, according to the present embodiment, k multipliers and n accumulators can be provided to calculate the output values of n neurons in the same layer in parallel.

【0057】このため、非線形演算回路、レジスタへの
アキュムレータからのデータ転送をまとめて行なうこと
ができるので高速にニューラルネットワーク情報処理が
行なえる。なお、本実施例においてもセレクタを用いて
いるため、メモリセルアレーのデータ線ピッチとデジタ
ル乗算回路の入力線のピッチが異なっていても両者を整
合させてセレクタを挾んで近接して配置できる。このた
め長いバスが不要となり信号の授受を高速に行なうこと
ができることはもちろんである。さらに、セレクタにラ
ッチ機能を設けたため、メモリセルアレーBの読出し動
作はhサイクルごとと少なくて良い。したがって、前記
した実施例と同様にメモリセルアレーの消費する電力が
少なくて済み動作も高速になるという利点がある。な
お、本実施例でも前記した実施例と同様に非線形演算回
路Dを複数設けたり、レジスタRAの入力バスを広げる
などにより非線形演算やレジスタRAへの書込みを並列
に行ないさらに高速化を図ることが可能である。
Therefore, the data transfer from the accumulator to the non-linear operation circuit and the register can be performed collectively, so that the neural network information processing can be performed at high speed. Since the selector is also used in the present embodiment, even if the data line pitch of the memory cell array and the input line pitch of the digital multiplying circuit are different, they can be matched and arranged close to each other with the selector interposed therebetween. For this reason, a long bus is not required and signals can be exchanged at a high speed. Further, since the selector is provided with the latch function, the read operation of the memory cell array B may be as small as every h cycle. Therefore, there is an advantage that the power consumption of the memory cell array is small and the operation speed is high as in the above-described embodiment. In this embodiment, as in the above-described embodiment, a plurality of non-linear operation circuits D are provided, the input bus of the register RA is expanded, and the non-linear operation and writing to the register RA are performed in parallel to further increase the speed. It is possible.

【0058】以下では、これまで述べた実施例に好適な
回路の実施例を示す。
In the following, an embodiment of a circuit suitable for the embodiments described above will be described.

【0059】図17は、DRAMメモリセルアレーに好
適なセレクタの構成例である。本実施例は、図1、2、
3のメモリセルアレーAとセレクタST、図4のメモリ
セルアレーA1,..,AJとセレクタST1,..,
STJ、図5、6のメモリセルアレーAとセレクタS
T、図10、12のメモリセルアレーA,Bとセレクタ
STA,STBならびに図13、15のメモリセルアレ
ーBとセレクタSTB等に用いることができる。本実施
例の特長は、DRAMメモリセルを用いてメモリセルア
レー部を高集積に実現したことと、セレクタのラッチ機
能をDRAMセルアレー内の再書込み用センスアンプを
利用して実現したことである。図17においてMはメモ
リセルアレー、ST1,..,STkはセレクタ単位回
路である。
FIG. 17 shows a configuration example of a selector suitable for a DRAM memory cell array. In the present embodiment, FIGS.
3, the memory cell array A and the selector ST, and the memory cell arrays A1,. . , AJ and selectors ST1,. . ,
STJ, memory cell array A and selector S of FIGS.
T, the memory cell arrays A and B and the selectors STA and STB in FIGS. 10 and 12, and the memory cell array B and the selector STB in FIGS. The features of this embodiment are that the memory cell array section is highly integrated using DRAM memory cells, and that the latch function of the selector is realized by using the rewrite sense amplifier in the DRAM cell array. In FIG. 17, M denotes a memory cell array, ST1,. . , STk are selector unit circuits.

【0060】説明の都合上、メモリセルアレーMはメモ
リセルアレー単位回路M1,..,Ma,..セレクタ
単位回路ST1は基本セレクタST11,..,ST1
aに分けて示してある。メモリセルアレー単位回路M1
に示したようにメモリセルアレーは1つのトランジスタ
と1つのキャパシタからなるダイナミック型メモリセル
MCより構成されている。D1,D1B,....D
h,DhBはデータ線、W1,W2,..,Wmはワー
ド線である。PR,SA,RSA,WSは、メモリセル
MCの情報の読出し書込みを制御する回路で、それぞ
れ、プリチャージ回路、センスアンプ、読出しアンプ、
書込み回路である。基本セレクタST11に示したよう
に1つの基本セレクタにはh対のデータ線対D1,D1
B,....Dh,DhBが入力され、1対のセレクタ
出力線TD1,TD1Bが出力される。
For convenience of explanation, the memory cell array M is composed of the memory cell array unit circuits M1,. . , Ma,. . The selector unit circuit ST1 includes basic selectors ST11,. . , ST1
a. Memory cell array unit circuit M1
As shown in (1), the memory cell array is composed of a dynamic memory cell MC including one transistor and one capacitor. D1, D1B,. . . . D
h, DhB are data lines, W1, W2,. . , Wm are word lines. PR, SA, RSA, and WS are circuits for controlling reading and writing of information from and to the memory cell MC, and include a precharge circuit, a sense amplifier, a read amplifier,
Write circuit. As shown in the basic selector ST11, one basic selector has h data line pairs D1 and D1.
B,. . . . Dh and DhB are input, and a pair of selector output lines TD1 and TD1B are output.

【0061】セレクタ単位回路はST11からST1a
までのa個の基本回路から構成されている。基本回路S
T11に示したようにデータ線対のうちD1,..,D
hがそれぞれスイッチMOS SM1,..,SMhを
通じて共通データ線CD1に、D1B,..,DhBが
それぞれスイッチMOS SM1B,..,SMhBを
通じて共通データ線CD1Bに接続されている。共通デ
ータ線対CD1,CD1Bにはそれぞれ、プリチャージ
用のpMOS PM1,PM1Bが接続され、CMOS
インバータを用いたバッファ回路BF1,BF1Bに入
力される。バッファ回路BF1,BF1Bの出力が出力
線TD1,TD1Bとなる。ここでは、バッファ回路に
CMOSインバータを用いたためバッファ回路の入出力
の電位が反転するがバッファ回路としてCMOSインバ
ータを2段接続して入出力の電位を一致させることもも
ちろんできる。CMOSインバータを多段接続した場合
にはCMOSインバータの段間のトランジスタサイズの
比を適当にとれば、共通データ線対の容量を大きくする
ことなくバッファ回路の駆動能力を上げることができる
ので入力容量の大きい演算回路をセレクタと接続する場
合に好適である。
The selector unit circuits are ST11 to ST1a.
Up to a basic circuits. Basic circuit S
As shown in T11, D1,. . , D
h are the switches MOS SM1,. . , SMh to D1B,. . , DhB are switch MOS SM1B,. . , SMhB to the common data line CD1B. Precharge pMOSs PM1 and PM1B are connected to the common data line pairs CD1 and CD1B, respectively, and a CMOS
The data is input to buffer circuits BF1 and BF1B using an inverter. Outputs of the buffer circuits BF1 and BF1B become output lines TD1 and TD1B. Here, since the CMOS inverter is used for the buffer circuit, the input and output potentials of the buffer circuit are inverted. However, it is of course possible to connect two stages of CMOS inverters as the buffer circuit so that the input and output potentials match. When the CMOS inverters are connected in multiple stages, the drive capability of the buffer circuit can be increased without increasing the capacity of the common data line pair by appropriately setting the transistor size ratio between the stages of the CMOS inverter. It is suitable for connecting a large arithmetic circuit to a selector.

【0062】セレクタを通じた情報の読出し動作の概要
は以下のとおりである。まず、通常のDRAMの読み出
し動作と同じようにメモリセルアレーM内のワード線が
一本選択され、そのワード線上のメモリセルに蓄えられ
ていた情報がそれぞれのデータ線対に微小な電位差とな
って読出される。その微小な電位差を各データ線対に設
けたセンスアンプSAで増幅してメモリセルに再書込み
を行なう。増幅した電位差をセンスアンプSAでラッチ
した状態でセレクタを動作させてデータ線対h対あたり
1対のデータを選択して出力する。したがって、図17
に示した構成では、1本のワード線を選択することによ
り、セレクタ単位回路あたりah対のデータ線、全体で
ahk対のデータ線にahk bitの情報が読出さ
れ、そのなかから、セレクタによりak bitのデー
タが選択されて並列に出力されることになる。
The outline of the operation of reading information through the selector is as follows. First, one word line in the memory cell array M is selected as in a normal DRAM read operation, and the information stored in the memory cells on the word line becomes a small potential difference between each data line pair. Read out. The small potential difference is amplified by the sense amplifier SA provided for each data line pair, and rewritten to the memory cell. The selector is operated while the amplified potential difference is latched by the sense amplifier SA to select and output one pair of data per data line pair h. Therefore, FIG.
In the configuration shown in (1), by selecting one word line, ahk bit information is read out to the ah pair of data lines per selector unit circuit and the ahk pair of data lines as a whole. Bit data is selected and output in parallel.

【0063】以下、図18を用いて図17のセレクタの
動作を詳細に説明する。なお、メモリセルから出力線
O,OBを通じての読み出し、入力線I,IBを通じて
の書込み動作は従来のDRAMと同様なので説明を省略
する。図18は図17のワード線W1を選択して読出し
た情報をak bitずつh回連続して並列読出しを行
なう場合の動作波形の例である。まず、動作の始めには
すべてのワード線の電位が低電位Vss、プリチャージ
信号φpが高電位Vccとなっており、これによりメモ
リセルは非選択の状態となり、すべてのデータ線はVc
cとVssの間の電位VHにプリチャージされている。
つぎに、プリチャージ信号φpの電位を低電位に立ち下
げてからワード線W1を選択してその電位をVcc+V
t以上に立ちあげる(ここにVtはメモリセルMCのM
OSトランジスタのしきい電圧である)。すると、各デ
ータ線対にはデータ線に接続されたメモリセルMCの記
憶情報にしたがって微小な電位差が生ずる。図18で
は、データ線D1が、D1Bより高電位に、データ線D
hが、DhBより低電位になった場合を示している。つ
づいて、センスアンプSA起動信号PP,PNの電位を
VHからそれぞれ、高電位、低電位に遷移させる。する
と、データ線対の微小な電位差が増幅され、高電位側の
データ線は電位がVccになるまで充電され、低電位側
のデータ線は電位がVssになるまで放電される。こう
して、全部でahk対のデータ線に読出され増幅された
信号は、センスアンプSA起動信号PP,PNの電位を
それぞれ高電位Vcc、低電位Vssに保つことにより
データ線対上にラッチされる。つづいて、セレクタによ
りak bitずつh回連続して並列読出しを行なう。
図18に示したように動作の始めには共通データ線プリ
チャージ信号FPおよび選択線F1,..,Fhの電位
はVssとなっており、すべての共通データ線はVcc
にプリチャージされている。上記のようにデータ線対上
読出した信号をラッチした状態で共通データ線プリチャ
ージ信号FPの電位をVccに立上げたのち、選択線F
1の電位をVccに立上げる。するとスイッチMOSが
オン状態となり、Vccに充電されているデータ線に接
続された共通データ線の電位はVccのままであるが、
Vssに放電されているデータ線に接続された共通デー
タ線の電位は低下する。たとえば、図18に示したよう
にデータ線D1はVccに充電されているのでこれにス
イッチMOS SM1を通じて接続された共通データ線
CD1の電位はVccのままであるが、データ線D1B
はVssに放電されているので共通データ線CD1Bの
電位は低下する。共通データ線CD1Bからの電荷によ
りデータ線D1Bの電位は一時的に上昇するが、センス
アンプSAによって、データ線D1B、共通データ線C
D1BともにVssに放電される。こうして共通データ
線対CD1、CD1Bに読出された信号はCMOSイン
バータを用いたバッファ回路BF1,BF1Bに入力さ
れ電位が反転されてセレクタ出力線TD1B,TD1よ
り出力される。セレクタ出力線は図17の各セレクタ単
位回路にa対ずつ、全部でak対あるのでak bit
の信号が並列に出力されることになる。つぎに図18に
示したように選択線F1の電位をVssに立ち下げてス
イッチMOSをオフした後に、共通データ線プリチャー
ジ信号FPの電位をVssに立ち下げてすべての共通デ
ータ線を再びVccにプリチャージする。その後、上記
と同様にして共通データ線プリチャージ信号FPの電位
をVccに立上げたのち、選択線F2の電位をVccに
立上げると、選択信号線F2が入力されたスイッチMO
S(図では省略してある)を通じて、該スイッチMOS
に接続されたデータ線の情報がセレクタ出力線より読み
出される。以下、同様の動作を行い、選択信号F
3,..,Fhを選択することによりすべてのデータ線
の信号をセレクタ出力線より読み出すことができる。な
お、ここでは選択信号を順番に選択する場合を例に採っ
たが、必要に応じてランダムに選択してもよいのはもち
ろんである。また、1本のワード線を選択して読出した
情報のうち1部の必要なものを出力したら、別のワード
線を選択してもよい。あるいは、1本のワード線を選択
して読出した情報をくりかえしランダムに選択すること
もできる。これらの選択はセレクタに接続される演算回
路の要求に応じて自由に設定することができる。なお、
本実施例では容量に電荷を蓄積するDRAMセルを用い
ているため、通常のDRAMと同じようにセルの電荷が
リークする。このため、セルの電荷が許容値にある間に
リフレッシュ動作を行う必要があり、演算回路の要求に
より、特定のワード線が選択されない時間が長く、リフ
レッシュ動作が必要な場合には選択線をVssとしたま
ま、該当するワード線を選択してリフレッシュ動作を行
なえばよい。あるいは、通常のDRAMでも行われてい
るようにリフレッシュ期間を設けてそのあいだにすべて
のワード線を順番に選択して集中的にリフレッシュ動作
を行うこともできる。ところで、上記の図17、18で
は共通データ線をプリチャージしたが、共通データ線の
容量がデータ線の容量より十分小さい場合には、スイッ
チMOSがオンしたときに、共通データ線の残留電荷に
よりデータ線対の電位が反転してセンスアンプが誤動作
することがないので共通データ線プリチャージMOSを
省略してセレクタ回路をさらに高集積に実現することが
できる。
Hereinafter, the operation of the selector of FIG. 17 will be described in detail with reference to FIG. Note that the read operation from the memory cell through the output lines O and OB and the write operation through the input lines I and IB are the same as those of the conventional DRAM, and the description is omitted. FIG. 18 shows an example of operation waveforms in the case where the information read out by selecting the word line W1 in FIG. First, at the beginning of the operation, the potentials of all the word lines are at the low potential Vss and the precharge signal φp is at the high potential Vcc, whereby the memory cells are in a non-selected state and all the data lines are at Vc.
It is precharged to a potential VH between c and Vss.
Next, after lowering the potential of the precharge signal φp to a low potential, the word line W1 is selected and the potential is set to Vcc + V.
t (where Vt is M of memory cell MC)
The threshold voltage of the OS transistor). Then, a small potential difference is generated in each data line pair according to the information stored in the memory cell MC connected to the data line. In FIG. 18, the data line D1 is set to a higher potential than D1B,
h shows a case where the potential becomes lower than DhB. Subsequently, the potentials of the sense amplifier SA activation signals PP and PN are changed from VH to a high potential and a low potential, respectively. Then, the minute potential difference between the data line pair is amplified, the data line on the high potential side is charged until the potential becomes Vcc, and the data line on the low potential side is discharged until the potential becomes Vss. Thus, the signals read and amplified in all of the ahk pairs of data lines are latched on the data line pairs by keeping the potentials of the sense amplifier SA activation signals PP and PN at the high potential Vcc and the low potential Vss, respectively. Subsequently, the selector performs the parallel reading continuously for h times ak bits at a time.
As shown in FIG. 18, at the beginning of the operation, the common data line precharge signal FP and the selection lines F1,. . , Fh are at Vss, and all common data lines are at Vcc.
Has been precharged. After the potential of the common data line precharge signal FP is raised to Vcc with the signal read on the data line pair latched as described above, the selection line F
The potential of 1 is raised to Vcc. Then, the switch MOS is turned on, and the potential of the common data line connected to the data line charged to Vcc remains at Vcc.
The potential of the common data line connected to the data line discharged to Vss decreases. For example, as shown in FIG. 18, since the data line D1 is charged to Vcc, the potential of the common data line CD1 connected thereto via the switch MOS SM1 remains at Vcc, but the data line D1B
Is discharged to Vss, the potential of the common data line CD1B decreases. Although the potential of the data line D1B temporarily rises due to the charge from the common data line CD1B, the data line D1B and the common data line C are turned on by the sense amplifier SA.
Both D1B are discharged to Vss. The signals read out to the common data line pair CD1 and CD1B in this manner are input to buffer circuits BF1 and BF1B using CMOS inverters, inverted in potential, and output from selector output lines TD1B and TD1. The selector output line has a pair of a in each selector unit circuit of FIG.
Are output in parallel. Next, as shown in FIG. 18, after the potential of the selection line F1 is lowered to Vss to turn off the switch MOS, the potential of the common data line precharge signal FP is lowered to Vss and all the common data lines are again set to Vcc. Precharge to. Thereafter, the potential of the common data line precharge signal FP is raised to Vcc in the same manner as described above, and then the potential of the selection line F2 is raised to Vcc.
S (not shown in the figure) through the switch MOS
Is read from the selector output line. Hereinafter, the same operation is performed, and the selection signal F
3,. . , Fh, the signals of all the data lines can be read from the selector output lines. Here, the case where the selection signals are selected in order is taken as an example, but it goes without saying that the selection signals may be selected at random as needed. When one word line is selected and one part of the read information is output, another word line may be selected. Alternatively, information read out by selecting one word line may be repeatedly selected at random. These selections can be freely set according to the requirements of the arithmetic circuit connected to the selector. In addition,
In the present embodiment, since the DRAM cell that stores the electric charge in the capacitance is used, the electric charge of the cell leaks as in the case of the ordinary DRAM. For this reason, it is necessary to perform the refresh operation while the electric charge of the cell is at the allowable value, and the time required for the specific word line not to be selected is long due to the request of the arithmetic circuit. The refresh operation may be performed by selecting the corresponding word line. Alternatively, it is also possible to provide a refresh period as in a normal DRAM and to select all the word lines in order during the refresh period to perform the intensive refresh operation. 17 and 18, the common data line is precharged. However, when the capacitance of the common data line is sufficiently smaller than the capacitance of the data line, when the switch MOS is turned on, residual charge of the common data line causes Since the potential of the data line pair is not inverted and the sense amplifier does not malfunction, the common data line precharge MOS can be omitted, and the selector circuit can be further highly integrated.

【0064】以上のように本実施例では、DRAMメモ
リセルを用いてメモリセルアレーの高集積化を図り、さ
らにセレクタのラッチ機能をDRAMセルアレー内の再
書込み用センスアンプを利用して実現した。このため本
発明による情報処理装置を高集積に実現できる。なお、
図17の読みだし回路RSA,書き込み回路WSはメモ
リセル1づつに対して行うものであるが、出力線O,O
B、入力線I,IBを複数組設けて複数のメモリセルに
並列に書き込み、読み出しを行うようにすれば高速の書
き込み、読み出しが可能となる。さらに、図7に示した
ような並列書き込み回路を設けることにより同一ワード
線上のとびとびのメモリセルに並列書き込みを行うこと
もできる。
As described above, in this embodiment, the memory cell array is highly integrated using DRAM memory cells, and the latch function of the selector is realized by utilizing the rewrite sense amplifier in the DRAM cell array. For this reason, the information processing apparatus according to the present invention can be highly integrated. In addition,
The read circuit RSA and the write circuit WS shown in FIG. 17 are performed for each memory cell, but the output lines O, O
B, if a plurality of sets of input lines I and IB are provided and writing and reading are performed in parallel on a plurality of memory cells, high-speed writing and reading can be performed. Further, by providing a parallel writing circuit as shown in FIG. 7, parallel writing can be performed on discrete memory cells on the same word line.

【0065】図19は、図5、6、10、13、15の
実施例におけるデジタル乗算機MTD1,MTD
2,..,MTDkに好適な並列デジタル乗算器の単位
回路である。日経エレクトロニクス1978年5月29
日号、第76ページから90ページに記載されているよ
うに並列デジタル乗算器は図19の右に示したような入
出力論理関係を持つ単位回路をアレー状に組み合わせて
構成される。並列デジタル乗算器の単位回路は様々なも
のが提案されているが、本発明のようにメモリセルアレ
ーの直下に乗算器を配置する場合にはできるだけ狭いレ
イアウトピッチに収まるものが望ましい。図19に示し
た単位回路の実施例は、16個ずつのnMOSとpMO
Sから構成されており、いわゆる複合ゲートによって図
19の右側に示した論理を実現している。本回路は、構
成するトランジスタが少ないことと入出力信号が対信号
でないためアレー状に組み合わせた場合に基本回路間の
配線数が少ないという特長を持つ。また、CMOS回路
であるため消費電力も小さく、本発明のように多数の乗
算器を高集積に実現する場合に適している。図19の左
側に示した回路の入出力の論理が図19の右側の式のよ
うになることは容易にわかるので説明は省略する。な
お、上記の日経エレクトロニクス1978年5月29日
号、第80ページに記載されているように2の補数を扱
う並列乗算器では単位回路の一部にインバータやオア回
路による補正が必要になる。インバータによる補正は図
17の実施例のようにセレクタからの信号が対信号のも
のを用いれば乗算器内に新たにインバータを設けなくと
も実現できる。また、オア回路による補正は、図19の
右側の式でXとYのアンドの項をオアに変更すればよ
い。そのためには図19の回路でX,Yの入力されるp
MOSを直列接続に、nMOSを並列接続にすればよい
ので、図19の単位回路と同様のサイズで実現できる。
したがって、2の補数を扱う並列乗算器も高集積に実現
できる。
FIG. 19 shows the digital multipliers MTD1, MTD in the embodiments of FIGS.
2,. . , MTDk is a unit circuit of a parallel digital multiplier. Nikkei Electronics May 29, 1978
As described on page 76 to page 90, the parallel digital multiplier is configured by combining unit circuits having an input / output logical relationship as shown on the right of FIG. 19 in an array. Various unit circuits of the parallel digital multiplier have been proposed, but when the multiplier is arranged immediately below the memory cell array as in the present invention, it is desirable that the unit be arranged within a layout pitch as narrow as possible. The embodiment of the unit circuit shown in FIG. 19 has 16 nMOSs and pMOs each.
The logic shown in the right side of FIG. 19 is realized by a so-called composite gate. This circuit has the advantage that the number of transistors is small, and the number of wirings between basic circuits is small when combined in an array because input / output signals are not pair signals. In addition, since it is a CMOS circuit, the power consumption is small, and it is suitable for a case where a large number of multipliers are implemented with high integration as in the present invention. Since it is easy to understand that the input / output logic of the circuit shown on the left side of FIG. 19 is as shown by the equation on the right side of FIG. 19, the description is omitted. As described in the Nikkei Electronics May 29, 1978, p. 80, a parallel multiplier that handles two's complement requires a unit circuit to be corrected by an inverter or an OR circuit. The correction by the inverter can be realized without providing a new inverter in the multiplier if the signal from the selector is a pair signal as in the embodiment of FIG. The correction by the OR circuit may be achieved by changing the AND term of X and Y to OR in the equation on the right side of FIG. For this purpose, in the circuit of FIG.
Since the MOS may be connected in series and the nMOS may be connected in parallel, the same size as the unit circuit of FIG. 19 can be realized.
Therefore, a parallel multiplier that handles two's complement can be realized with high integration.

【0066】図20は図12の実施例に好適なDAコン
バータの構成例である。図20においてCBIASは共
通バイアス回路、DAA1,..,DAAkはDAコン
バータである。DAコンバータDAA1,..,DAA
kはメモリセルアレーからデータ線を通じて読出される
a bitのデジタル信号をアナログ値の電流に変換し
て出力線O1,..,Okに出力する。なお、図20に
は示していないが図12のDAB1,..,DABkも
同様にして構成できる。DAコンバータDAA
1,..,DAAkは共通バイアス回路CBIASによ
りバイアス線BL1,..,BLaを通じてバイアスさ
れている。共通バイアス回路CBIASにおいてpMO
SトランジスタMP0は電流源ISOの負荷で、pMO
SトランジスタMP1,..,MPaのゲートをバイア
スしている。pMOSトランジスタMP1,..,MP
aのゲート巾/ゲート長(以下、サイズとする)は等し
く、nMOSトランジスタMN1,..,MNaのサイ
ズは比が1:2:,..,:(2のa−1乗)に設定さ
れている。これらのトランジスタには電流源ISOの電
流を基準とした等しい電流が正電源Vccより流れてい
る。DAコンバータDAA1においてpMOSトランジ
スタMPD0は出力線O1の負荷であり、MNC
1,..,MNCaはスイッチMOSである。スイッチ
MOS MNC1,..,MNCaは、それぞれのゲー
トが、メモリセルアレーのデータ線に接続されているの
でメモリセルアレーからデータ線を通じて読出されるa
bitのデジタル信号に応じてオン、オフする。MN
D1,..,MNDaはサイズの等しいnMOSトラン
ジスタである。図20よりわかるように、nMOSトラ
ンジスタMNiとMNDi(i=1,2,..,a)
は、カレントミラー接続になっており、スイッチMOS
をオンすると,MNDiに電流が流れる。このとき流れ
る電流はカレントミラー比、すなわちnMOSトランジ
スタMNiとMNDiのサイズの比で決まる。したがっ
て、スイッチMOS MNC1,..,MNCaがオン
したときにnMOSトランジスタMND1,..,MN
Daに流れる電流の比は1:(1/2):(1/
4):,..,:(1/(2のa−1乗))すなわち、
(2のa−1乗):,..,4:2:1となり、出力線
O1にはこれらの電流を足しあわせた電流が流れる。し
たがって、メモリセルアレーからデータ線を通じて読出
されるa bitのデジタル信号はアナログ値の電流に
変換されて出力線O1,..,Okに出力されることに
なる。
FIG. 20 shows a configuration example of a DA converter suitable for the embodiment of FIG. In FIG. 20, CBIAS is a common bias circuit, DAA1,. . , DAAk are DA converters. The DA converters DAA1,. . , DAA
k converts an a-bit digital signal read from a memory cell array through a data line into a current having an analog value and outputs the converted signal to output lines O1,. . , Ok. Although not shown in FIG. 20, DAB1,. . , DABk can be similarly configured. DA converter DAA
1,. . , DAAk are biased by the common bias circuit CBIAS. . , BLa. In the common bias circuit CBIAS, pMO
S-transistor MP0 is a load of current source ISO, and pMO
S transistors MP1,. . , MPa are biased. The pMOS transistors MP1,. . , MP
a has the same gate width / gate length (hereinafter, referred to as size), and the nMOS transistors MN1,. . , MNa have a ratio of 1: 2 :,. . ,: (2 to the power of a-1). In these transistors, the same current based on the current of the current source ISO flows from the positive power supply Vcc. In the DA converter DAA1, the pMOS transistor MPD0 is a load of the output line O1,
1,. . , MNCa are switch MOSs. The switch MOS MNC1,. . , MNCa are read out from the memory cell array through the data lines since their gates are connected to the data lines of the memory cell array.
It turns on and off according to the digital signal of bit. MN
D1,. . , MNDa are nMOS transistors having the same size. As can be seen from FIG. 20, the nMOS transistors MNi and MNDi (i = 1, 2,..., A)
Is a current mirror connection, switch MOS
Is turned on, a current flows through MNDi. The current flowing at this time is determined by the current mirror ratio, that is, the size ratio between the nMOS transistors MNi and MNDi. Therefore, the switch MOS MNC1,. . , MNCa are turned on, the nMOS transistors MND1,. . , MN
The ratio of the current flowing through Da is 1: (1/2) :( 1 /
4):,. . , :( 1 / (2 a-1)), that is,
(2 to the power of a-1) :,. . , 4: 2: 1, and a current obtained by adding these currents flows to the output line O1. Therefore, an a-bit digital signal read from the memory cell array through the data line is converted into an analog current, and the output lines O1,. . , Ok.

【0067】本実施例の特長は、共通バイアス回路を用
いることによりDAコンバータDAA1,..,DAA
k内のMOSトランジスタMND1,..,MNDaの
サイズを一定にしたことである。これにより高集積にD
Aコンバータが構成できるので、図12の実施例のよう
にアレー直下に容易に配置することができる。また、共
通のバイアス回路CBIAS内の電流源ISOを基準に
電流値を制御しているため、高精度の変換が可能とな
る。
The feature of this embodiment is that a DA converter DAA1,. . , DAA
k MOS transistors MND1,. . , MNDa are kept constant. This enables high integration D
Since the A-converter can be configured, it can be easily arranged directly below the array as in the embodiment of FIG. Further, since the current value is controlled based on the current source ISO in the common bias circuit CBIAS, high-accuracy conversion can be performed.

【0068】なお、図20の実施例ではDAコンバータ
に入力されるデータ線の信号は差動の必要はない。した
がって、メモリセルアレーとしてDRAM,SRAMア
レー等、データ線に差動信号が出力されるものを用いる
場合は、データ線対の片方を入力すればよい。なお、デ
ータ線対の片方のみをnMOSトランジスタMND
1,..,MNDaのゲートに接続するとそのゲート容
量によってデータ線対の容量がアンバランスとなり、動
作に悪影響がでる場合がある。そのようなときにはnM
OSトランジスタMND1,..,MNDaのゲートに
接続しないデータ線にもMND1,..,MNDaと同
じゲート巾、ゲート長のnMOSトランジスタを付加し
てデータ線対の容量のバランスをとればよい。
In the embodiment shown in FIG. 20, the signal on the data line input to the DA converter need not be differential. Therefore, when a memory cell array such as a DRAM or an SRAM array that outputs a differential signal to a data line is used, one of the data line pairs may be input. Note that only one of the data line pairs is connected to the nMOS transistor MND.
1,. . , MNDa, there is a case where the capacitance of the data line pair is unbalanced due to the gate capacitance, which may adversely affect the operation. In such a case, nM
The OS transistors MND1,. . , MNDa are also connected to data lines not connected to the gates of MND1,. . , MNDa, an nMOS transistor having the same gate width and gate length may be added to balance the capacitance of the data line pair.

【0069】これまでは、本発明を用いてニューラルネ
ットワーク情報処理装置を実現するための実施例を示し
てきた。ニューラルネットワークは最適解の探索、ある
いはパターン認識などにもちいられるが、パターン認識
に適用する場合には下記で説明するようなパターン判別
回路を用いるとあいまいな結果にたいしても認識処理を
行うことができる。ニューラルネットワークを用いたパ
ターン認識では、入力されたパターンが、明らかにある
クラスに分類される場合には、出力としてクラスに対応
する期待値を得ることができる。しかし、入力されたパ
ターンが、複数のいずれかのクラスに分類されるか微妙
な場合には、複数のクラスの期待値の中間的なものとな
ることがある。例えば音声認識において入力された音声
が`K`のときには、符号化して入力層に与えた音声波
形に対して出力層に1111というニューロン出力値
(期待値)が得られるように、また、入力が`C`のと
きには、0000という出力値(期待値)を出すように
結合重み値を設定した場合に、`K`、`C`の中間的
な音声波形が与えられると出力層のニューロン出力値
は、0001とか1110など中間的な値を出すことが
ある。このような場合には出力層のニューロン出力値と
`K`に対する期待値1111あるいは`C`に対する
期待値0000との距離が入力音声の`K`あるいは`
C`に対する近さを与える尺度と解釈することができ
る。したがって、出力層のニューロン出力値とクラスの
期待値を比較するパターン判別回路を設けて出力結果と
期待値の距離を求めることによりあいまいな出力が得ら
れた場合にも認識を行うことができる。
So far, an embodiment for realizing a neural network information processing apparatus using the present invention has been described. The neural network is used for searching for an optimal solution or for pattern recognition. When applied to pattern recognition, a pattern discriminating circuit as described below can be used to perform recognition processing even on ambiguous results. In pattern recognition using a neural network, when an input pattern is clearly classified into a certain class, an expected value corresponding to the class can be obtained as an output. However, when the input pattern is classified into any one of a plurality of classes or is delicate, it may be an intermediate value between the expected values of the plurality of classes. For example, when the input speech in speech recognition is {K}, a neuron output value (expected value) of 1111 is obtained in the output layer with respect to the speech waveform encoded and supplied to the input layer. In the case of {C}, when the connection weight value is set so as to produce an output value (expected value) of 0000, the neuron output value of the output layer is given when an intermediate sound waveform of {K}, {C} is given. May give an intermediate value such as 0001 or 1110. In such a case, the distance between the neuron output value of the output layer and the expected value 1111 for {K} or the expected value 0000 for {C} is {K} or {
It can be interpreted as a measure giving the proximity to C `. Therefore, even if an ambiguous output is obtained by providing a pattern discriminating circuit for comparing the neuron output value of the output layer with the expected value of the class and obtaining the distance between the output result and the expected value, it is possible to perform recognition.

【0070】図21は、上記のようなパターン判別回路
の構成例である。図21においてBNYは、a bit
のニューロン出力値を0、1の2値の1 bitに変換
する2値化回路でRGTは変換されたニューロン出力値
を1層分記憶するためのレジスタ、M−PATTERN
はクラスの期待値を記憶するレジスタ、CMPはレジス
タM−PATTERNとレジスタRGTの内容を並列に
比較してハミング距離を出力する回路である。COMP
OUTはCMPの出力結果を参照値と比較して結果を出
力する回路である。比較器CMPは並列に設けた比較回
路CMPUと負荷抵抗RCMPより構成され比較結果変換
回路COMPOUTは差動アンプAMP211,AMP
212,..,AMP21Zより構成されている。比較
器CMPには、レジスタM−PATTERMのデータ線
対 (DTG1,DTGB),..,(DTGr,DT
GrB)およびレジスタRGTのデータ線対 (DR
1,DR1B),..,(DRr,DRrB)が入力さ
れている。本実施例の動作は、以下の通りである。
FIG. 21 shows an example of the configuration of the above-described pattern determination circuit. In FIG. 21, BNY is a bit
RGT is a register for storing the converted neuron output value for one layer, M-PATTERN.
Is a register that stores the expected value of the class, and CMP is a circuit that compares the contents of the register M-PATTERN and the contents of the register RGT in parallel and outputs the Hamming distance. COMP
OUT is a circuit that compares the output result of CMP with a reference value and outputs the result. The comparator CMP includes a comparator circuit CMPU and a load resistor R CMP provided in parallel. The comparison result conversion circuit COMPOUT includes differential amplifiers AMP211 and AMP.
212,. . , AMP21Z. The comparator CMP has a data line pair (DTG1, DTGB),. . , (DTGr, DT
GrB) and the data line pair of the register RGT (DR
1, DR1B),. . , (DRr, DRrB) are input. The operation of this embodiment is as follows.

【0071】まず、ある入力パターンについて得られた
最終層のニューロン出力値を2値化回路BNYに順番に
入力し、しきい値THと比較してTHより大きければ
1、小さければ0に変換してレジスタRGTに蓄える。
最終層のニューロン出力値をすべて2値化したらつぎに
クリア信号ΦCを立ち上げMOSトランジスタQ216
をオンさせて、MOSトランジスタQ215のゲート電
圧を立ち下げておく。つぎにクリア信号ΦCを立ち下げ
てレジスタRGT,M−PATTERNよりデータ線に
信号が読出されデータ線電位がVccあるいは0Vにな
った後、比較器起動信号ΦCMPにより比較器CMPを起
動する。すると比較回路に入力されたデータ線(DTG
1,DR1),(DTG2,DR2),..,(DTG
r,DRr)のそれぞれの組で排他的オア(EXCLU
SIVE−OR)の論理がとられる。その結果、アレー
M−PATTERN側のデータ線とレジスタRGT側の
データ線とで情報が一致している場合にはMOSトラン
ジスタQ215のゲートが低電位のままであるが、一致
していない場合には高電位に遷移する。このため、アレ
ーM−PATTERN側のデータ線とレジスタRGT側
のデータ線とで情報が一致しない比較器CMPUではM
OSトランジスタQ215がオンする。この結果、デー
タ線(DTG1,DR1),(DTG2,DR
2),..,(DTGr,DRr)のそれぞれの組で不
一致の数が多いほど電源VCMPから負荷抵抗RCMP
を通じて接地電極へ向けて電流が流れる。そのため、比
較線COの電位は一致しないものが多いほど低下する。
比較線COは、比較結果変換回路COMPOUTに設け
られた差動アンプAMP211,AMP212,..,
AMP21Zに接続されている。これらの差動アンプの
参照電圧VRC1,VRC2,..,VRCZを適当な
値に設定しておけば、比較線COの電位低下が大きいほ
ど比較結果出力線DCO1,DCO2,..,DCOZ
のうち高電位になる本数が増加する。すなわち、比較結
果変換回路COMPOUTは1種のAD変換器として動
作する。このように本実施例によればレジスタM−PA
TTERNの複数のデータ線に読出された情報とレジス
タRGTの複数のデータ線に読出された情報を比較して
そのハミング距離の大きさを求めることができる。した
がって、各期待値をそれぞれレジスタM−PATTER
Nのメモリセルに記憶しておけば、レジスタRGTに記
憶されたニューロン出力値と比較して、そのニューロン
出力値がどの期待値にどのくらい近いのか知ることがで
きる。したがって、得られたニューロン出力値がクラス
に対応する期待値と一致しないような場合でも高速に認
識処理を行うことができる。
First, the neuron output values of the final layer obtained for a certain input pattern are sequentially input to the binarization circuit BNY, and compared with the threshold value TH, converted to 1 if larger than TH and converted to 0 if smaller than TH. And store it in the register RGT.
After all the neuron output values of the last layer are binarized, the clear signal Φ C is then raised to turn on the MOS transistor Q216.
Is turned on, and the gate voltage of the MOS transistor Q215 falls. Next, the clear signal Φ C falls, a signal is read out from the registers RGT and M-PATTERN to the data line, and the data line potential becomes Vcc or 0 V, and then the comparator CMP is activated by the comparator activation signal Φ CMP . Then, the data line (DTG) input to the comparison circuit
1, DR1), (DTG2, DR2),. . , (DTG
r, DRr) is exclusive OR (EXCLU)
(SIVE-OR) logic. As a result, when the information on the data line on the array M-PATTERN side matches the information on the data line on the register RGT side, the gate of the MOS transistor Q215 remains at the low potential. Transition to a high potential. For this reason, in the comparator CMPU in which information does not match between the data line on the array M-PATTERN side and the data line on the register RGT side, M
The OS transistor Q215 turns on. As a result, the data lines (DTG1, DR1), (DTG2, DR
2),. . , (DTGr, DRr), the greater the number of mismatches, the more the power supply VCMP is shifted from the load resistance RCMP.
A current flows toward the ground electrode through the switch. Therefore, the potential of the comparison line CO decreases as the number of mismatches increases.
The comparison line CO is connected to the differential amplifiers AMP211, AMP212,. . ,
It is connected to AMP21Z. The reference voltages VRC1, VRC2,. . , VRCZ are set to appropriate values, and the comparison result output lines DCO1, DCO2,. . , DCOZ
Among them, the number of high potentials increases. That is, the comparison result conversion circuit COMPOUT operates as one type of AD converter. As described above, according to the present embodiment, the register M-PA
The magnitude of the hamming distance can be obtained by comparing information read to a plurality of data lines of TTERN with information read to a plurality of data lines of a register RGT. Therefore, each expected value is stored in the register M-PATTER.
By storing the values in the N memory cells, it is possible to know how close the neuron output value is to the expected value by comparing with the neuron output value stored in the register RGT. Therefore, even when the obtained neuron output value does not match the expected value corresponding to the class, the recognition processing can be performed at high speed.

【0072】なお、図21の実施例において2値化回路
を複数設けて2値化の計算を並列に行うことによりさら
に高速に処理を行うこともできる。
Further, by providing a plurality of binarization circuits in the embodiment of FIG. 21 and performing the binarization calculations in parallel, the processing can be performed at a higher speed.

【0073】図21の実施例において差動アンプ、2値
化回路の詳細は省略したが、差動アンプはもちろん2値
化回路も単なる比較回路であるため通常の回路技術を用
いて容易に実現できる。
Although the details of the differential amplifier and the binarizing circuit are omitted in the embodiment of FIG. 21, the binarizing circuit as well as the differential amplifier is simply a comparison circuit, so that it can be easily realized using ordinary circuit technology. it can.

【0074】なお、これまでは、いわゆる1トランジス
タ1キャパシタのDRAMセルを用いた実施例を示した
が、その他のメモリセル例えば、SRAMセルやEEP
ROMセルあるいは強誘電体を用いた不揮発性のDRA
Mメモリセルなどを本発明に用いることももちろんでき
る。さらに、たとえば、結合重み値を記憶する部分など
は情報処理時には頻繁に書き替える必要がないので不揮
発性のメモリセルを、ニューロン出力値を記憶する部分
にはDRAMセルやSRAMセルを用いるなどメモリの
内容によりセルの種類を変えることもできる。
Although the embodiment using a so-called one-transistor, one-capacitor DRAM cell has been described, other memory cells, such as an SRAM cell and an EEP cell, may be used.
Non-volatile DRA using ROM cell or ferroelectric
Of course, M memory cells can be used in the present invention. Further, for example, a portion for storing a connection weight value does not need to be frequently rewritten during information processing, so that a nonvolatile memory cell is used. The cell type can be changed according to the contents.

【0075】ところで、1トランジスタ1キャパシタの
DRAMセルなどの微小なメモリセルを用いてメモリ回
路を高集積化すると、微小な配線を用いるためにときに
は1部のメモリセルが動作しないことがある。ニューラ
ルネットワークは、結合重み値を多少変えても機能への
影響が少ないという特長を持つが、ニューロン出力値を
蓄えるメモリセルが動作しないような場合には情報処理
に支障を来すことがある。このような問題を避けるに
は、通常の高集積半導体メモリで使われているような冗
長ワード線あるいは、データ線を設けておいて欠陥のあ
るセルを使わないようにすることもできる。
When a memory circuit is highly integrated using a minute memory cell such as a one-transistor one-capacitor DRAM cell, a part of the memory cell sometimes does not operate because a minute wiring is used. The neural network has a feature that even if the connection weight value is slightly changed, the effect on the function is small. However, when the memory cell storing the neuron output value does not operate, the information processing may be hindered. In order to avoid such a problem, a redundant word line or a data line as used in an ordinary highly integrated semiconductor memory can be provided so that a defective cell is not used.

【0076】また、これまではCMOSを用いた回路を
示したが、さらに高速にするためにバイポーラトランジ
スタを用いても実現できる。さらに、バイポーラトラン
ジスタ、MOSトランジスタに限らず本発明を他のデバ
イスで実現してもよいことはもちろんである。
Although a circuit using a CMOS has been described so far, it can also be realized by using a bipolar transistor to further increase the speed. Furthermore, it goes without saying that the present invention may be realized by other devices without being limited to bipolar transistors and MOS transistors.

【0077】これまで、主に階層型のネットワークをを
例にとり説明してきたが、本発明はこれらに限定される
ことなくホップフィールド型のネットワークや様々な型
のネットワークによるニューラルネットワーク情報処理
に適用できる。たとえば、ボルツマンマシンのようなニ
ューロン出力値の更新が確率的に行なわれるようなネッ
トワークも実現できる。ニューラルネットワーク情報処
理(産業図書、麻生英樹著)第27ページに説明されて
いるように、ボルツマンマシンは、ネットワークの形状
はホップフィールド型のネットワークと同様であるが、
ニューロン出力値(0または1)が、ニューロンに入力
されるニューロン出力値と結合重み値の他の積和によっ
て一意に決まらず、確率的に決まるという特長を持って
いる。ニューロン出力値が1となる確率Pは、 P=1/(1+exp(−I/T)) と表せられる。ここで、Iはニューロンに入力されるニ
ューロン出力値と結合重み値の積和で、Tは温度とよば
れるパラメータである。本発明により上記のボルツマン
マシンは容易に実現できる。例えば、図10,12,1
3,15に示した非線形回路Dの出力特性を時間的に変
化させればニューロン出力値を確率的に決めることがで
きる。変化の速度を変えることにより温度Tを変化する
のと同様の効果を得ることができる。
Although the description has been given mainly of the hierarchical network as an example, the present invention is not limited to these, and can be applied to a neural network information processing using a Hopfield network or various types of networks. . For example, a network such as a Boltzmann machine in which neuron output values are updated stochastically can be realized. As described on page 27 of neural network information processing (Sangyo Tosho, written by Hideki Aso), the Boltzmann machine has the same network shape as a Hopfield type network,
The neuron output value (0 or 1) is characterized by being determined stochastically, not uniquely determined by the product sum of the neuron output value input to the neuron and the connection weight value. The probability P that the neuron output value becomes 1 is expressed as P = 1 / (1 + exp (-I / T)). Here, I is the product sum of the neuron output value input to the neuron and the connection weight value, and T is a parameter called temperature. According to the present invention, the above Boltzmann machine can be easily realized. For example, FIGS.
The neuron output value can be determined stochastically by changing the output characteristics of the nonlinear circuit D shown in 3, 15 over time. By changing the changing speed, the same effect as changing the temperature T can be obtained.

【0078】以上では、主にニューラルネットワーク情
報処理への応用について説明したが、本発明はそれに限
定されることはなく、多数の情報を並列に用いる演算回
路とメモリセルアレーとを同一のチップ上に設けて情報
処理を行なうような装置ならば高い集積度で実現するこ
とができる。たとえば、画像処理を行う演算回路と画像
情報を記憶するメモリセルアレーとを同一のチップ上に
設けて高速でコンパクトな画像処理システムを構築する
こともできる。
In the above, the application to neural network information processing has been mainly described. However, the present invention is not limited to this. A device that performs information processing by providing a high integration degree can be realized. For example, a high-speed and compact image processing system can be constructed by providing an arithmetic circuit for performing image processing and a memory cell array for storing image information on the same chip.

【0079】[0079]

【発明の効果】これまで述べたように本発明では、メモ
リセルアレーに隣接してセレクタと演算回路を配置し、
セレクタの入力線と出力線のピッチをそれぞれメモリセ
ルのデータ線ピッチと演算回路のピッチに合わせた。
As described above, according to the present invention, a selector and an arithmetic circuit are arranged adjacent to a memory cell array.
The pitch of the input line and the output line of the selector were adjusted to the data line pitch of the memory cell and the pitch of the arithmetic circuit, respectively.

【0080】このため、メモリアレーのデータ線のピッ
チと演算回路の入力線のピッチが異なる場合においても
セレクタに隣接してメモリセルアレーと演算回路を配置
することができる。例えば、データ線のピッチが大変小
さいDRAMなどのメモリアレーと入力線のピッチが比
較的大きいデジタル演算回路などを長いバスを用いずに
セレクタを介して配置することも可能となる。
Therefore, even when the pitch of the data lines of the memory array and the pitch of the input lines of the arithmetic circuit are different, the memory cell array and the arithmetic circuit can be arranged adjacent to the selector. For example, a memory array such as a DRAM having a very small data line pitch and a digital arithmetic circuit having a relatively large input line pitch can be arranged via a selector without using a long bus.

【0081】したがって、従来問題となっていたバス本
数の増加による占有領域の増大、配線抵抗の増大による
信号遅延あるいはバスの長さの違いによる信号遅延の不
均一などが解決される。
Therefore, the conventional problems such as an increase in the occupied area due to an increase in the number of buses, an increase in wiring resistance, and a non-uniform signal delay due to a difference in bus length are solved.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明を用いた半導体チップの構成の一実施例
を示す図。
FIG. 1 is a diagram showing one embodiment of a configuration of a semiconductor chip using the present invention.

【図2】セレクタ、演算回路の構成の一実施例を示す
図。
FIG. 2 is a diagram illustrating an embodiment of a configuration of a selector and an arithmetic circuit.

【図3】セレクタ単位回路の構成の一実施例を示す図。FIG. 3 is a diagram showing one embodiment of a configuration of a selector unit circuit.

【図4】メモリセルアレーのデータ線を分割した場合の
構成の一実施例を示す図。
FIG. 4 is a diagram showing one embodiment of a configuration when a data line of a memory cell array is divided.

【図5】ベクトルとスカラの乗算を行うプロセッサの構
成の一実施例を示す図。
FIG. 5 is a diagram showing an embodiment of a configuration of a processor that performs multiplication of a vector and a scalar.

【図6】ベクトルとスカラの乗算を行うプロセッサの構
成の一実施例を示す図。
FIG. 6 is a diagram illustrating an embodiment of a configuration of a processor that performs multiplication of a vector and a scalar.

【図7】図5のプロセッサに適した並列書き込み回路の
構成の一実施例を示す図。
FIG. 7 is a diagram showing an embodiment of a configuration of a parallel writing circuit suitable for the processor of FIG. 5;

【図8】階層型ニューラルネットワークの構成を示す
図。
FIG. 8 is a diagram showing a configuration of a hierarchical neural network.

【図9】ホップフィールド型ニューラルネットワークの
構成を示す図。
FIG. 9 is a diagram showing a configuration of a Hopfield type neural network.

【図10】ニューロプロセッサの構成の一実施例を示す
図。
FIG. 10 is a diagram showing one embodiment of a configuration of a neuroprocessor.

【図11】図10の構成の計算アルゴリズムの一実施例
を示す図。
FIG. 11 is a diagram showing one embodiment of a calculation algorithm having the configuration of FIG. 10;

【図12】ニューロプロセッサの構成の一実施例を示す
図。
FIG. 12 is a diagram showing one embodiment of a configuration of a neuroprocessor.

【図13】ニューロプロセッサの構成の一実施例を示す
図。
FIG. 13 is a diagram showing an embodiment of a configuration of a neuroprocessor.

【図14】図13の構成の計算アルゴリズムの一実施例
を示す図。
FIG. 14 is a diagram showing one embodiment of a calculation algorithm having the configuration of FIG. 13;

【図15】ニューロプロセッサの構成の一実施例を示す
図。
FIG. 15 is a diagram showing one embodiment of a configuration of a neuroprocessor.

【図16】図15の構成の計算アルゴリズムの一実施例
を示す図。
FIG. 16 is a diagram showing one embodiment of a calculation algorithm having the configuration of FIG. 15;

【図17】DRAMメモリセルアレーに好適なセレクタ
の一実施例を示す図。
FIG. 17 is a diagram showing one embodiment of a selector suitable for a DRAM memory cell array.

【図18】図17の動作波形の一実施例を示す波形図。18 is a waveform chart showing an example of the operation waveform of FIG.

【図19】デジタル乗算器の単位回路の一実施例を示す
回路図。
FIG. 19 is a circuit diagram showing an embodiment of a unit circuit of the digital multiplier.

【図20】DAコンバータの一実施例を示す回路図。FIG. 20 is a circuit diagram showing one embodiment of a DA converter.

【図21】パターン判別回路の構成の一実施例を示す回
路図。
FIG. 21 is a circuit diagram showing one embodiment of a configuration of a pattern determination circuit.

【図22】従来のニューロプロセッサの構成。FIG. 22 shows a configuration of a conventional neuroprocessor.

【符号の説明】[Explanation of symbols]

ST,STA,STB,STC…セレクタ、PE,PE
A,PEB…演算回路、A,A1,A2,..,AJ,
B,M…メモリセルアレー、CTL…制御回路、IO…
入出力回路、LAT…ラッチ回路、SW,SW1,SW
2,..,SWk…スイッチ、D…非線形演算回路、A
CC…アキュムレータ、AD…ADコンバータ、RA,
RGT,M−PATTERN…レジスタ、DSB…ディ
ストリビュータ、PR…プリチャージ回路、SA…セン
スアンプ、RSA…読み出しアンプ、WS…書込み回
路、CBIAS…共通バイアス回路、DAA1,..,
DAAk…DAコンバータ、BNY…2値化回路、CM
P…比較器、CMPOUT…比較結果変換回路。
ST, STA, STB, STC ... selector, PE, PE
A, PEB: arithmetic circuit, A, A1, A2,. . , AJ,
B, M: memory cell array, CTL: control circuit, IO:
Input / output circuit, LAT ... Latch circuit, SW, SW1, SW
2,. . , SWk: switch, D: nonlinear operation circuit, A
CC: accumulator, AD: AD converter, RA,
RGT, M-PATTERN register, DSB distributor, PR precharge circuit, SA sense amplifier, RSA read amplifier, WS write circuit, CBIAS common bias circuit, DAA1,. . ,
DAAk: DA converter, BNY: Binarization circuit, CM
P: comparator, CMPOUT: comparison result conversion circuit.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 阪田 健 東京都国分寺市東恋ケ窪1丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 青木 正和 東京都国分寺市東恋ケ窪1丁目280番地 株式会社日立製作所中央研究所内 ──────────────────────────────────────────────────続 き Continuing on the front page (72) Inventor Ken Sakata 1-280 Higashi Koikekubo, Kokubunji-shi, Tokyo Inside the Hitachi, Ltd. Central Research Laboratory (72) Inventor Masakazu Aoki 1-280 Higashi Koikekubo, Kokubunji-shi, Tokyo Hitachi, Ltd. Central Research Laboratory

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】複数のDAコンバータを単一のバイアス回
路で制御することを特徴とする情報処理装置。
An information processing apparatus wherein a plurality of DA converters are controlled by a single bias circuit.
【請求項2】複数ビットのデジタル信号をアナログ信号
に変換して出力するDAコンバータを複数個を含んで構
成される情報処理装置であって、上記複数のDAコンバ
ータのアナログ出力の大きさは単一の制御回路で制御さ
れており、上記制御回路は基準となる電流源を含み、上
記DAコンバータはその出力の大きさが上記電流源の電
流値で決まるように上記制御回路により制御されている
ことを特徴とする情報処理装置。
2. An information processing apparatus comprising a plurality of D / A converters for converting a digital signal of a plurality of bits into an analog signal and outputting the analog signal. The control circuit includes a current source serving as a reference, and the DA converter is controlled by the control circuit such that the magnitude of its output is determined by the current value of the current source. An information processing apparatus characterized by the above-mentioned.
【請求項3】請求項2に記載の情報処理装置において、 上記制御回路と上記DAコンバータとは、カレントミラ
ー接続されていることを特徴とする情報処理装置。
3. The information processing apparatus according to claim 2, wherein said control circuit and said DA converter are connected in a current mirror manner.
【請求項4】請求項2又は3において、 上記DAコンバータは、上記デジタル信号が入力される
複数の第1ノードと、第1ノードと第2ノードとの間に直
列に接続された第1及び第2MOSFETを夫々が有する
複数の変換部とを具備し、 上記第1MOSFETのゲートは、対応する上記複数の
第1ノードに接続され、 上記第2MOSFETのゲートは、上記制御回路に接続
され、 上記第1ノードは、第1電位が供給され、 上記第2ノードは、上記第1電位より小さい第2電位が供
給されることを特徴とする情報処理装置。
4. The digital-to-analog converter according to claim 2, wherein the digital-to-analog converter includes a plurality of first nodes to which the digital signal is input, and first and second nodes connected in series between the first and second nodes. A plurality of converters each having a second MOSFET, wherein a gate of the first MOSFET is connected to a corresponding one of the plurality of first nodes; a gate of the second MOSFET is connected to the control circuit; An information processing device, wherein one node is supplied with a first potential, and the second node is supplied with a second potential lower than the first potential.
【請求項5】請求項4において、 上記複数の変換部は、上記第1ノードと第1電位の間に結
合された第3MOSFETが共通に設けられ、 上記第3MOSFETのゲートは、上記第1ノードに結合
されることを特徴とする情報処理装置。
5. The converter according to claim 4, wherein the plurality of converters are provided in common with a third MOSFET coupled between the first node and a first potential, and a gate of the third MOSFET is connected to the first node. An information processing apparatus characterized by being coupled to a computer.
JP2000139397A 2000-01-01 2000-05-08 Information processor Pending JP2001034735A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000139397A JP2001034735A (en) 2000-01-01 2000-05-08 Information processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000139397A JP2001034735A (en) 2000-01-01 2000-05-08 Information processor

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP28597491A Division JP3182813B2 (en) 1991-10-31 1991-10-31 Information processing device

Publications (1)

Publication Number Publication Date
JP2001034735A true JP2001034735A (en) 2001-02-09

Family

ID=18646849

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000139397A Pending JP2001034735A (en) 2000-01-01 2000-05-08 Information processor

Country Status (1)

Country Link
JP (1) JP2001034735A (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003179485A (en) * 2001-12-10 2003-06-27 Nippon Telegr & Teleph Corp <Ntt> Variable threshold/threshold element circuit, functional function reconfigurable integrated circuit and method for holding circuit state
WO2018186390A1 (en) * 2017-04-07 2018-10-11 日本電気株式会社 Semiconductor device
JP2019526876A (en) * 2016-09-07 2019-09-19 ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツングRobert Bosch Gmbh Model calculation unit and control device for calculating multilayer perceptron model
JP2020517005A (en) * 2017-04-04 2020-06-11 ハイロ テクノロジーズ リミテッド Neural network processor incorporating multi-layer hierarchically aggregated computational and memory elements
US11221929B1 (en) 2020-09-29 2022-01-11 Hailo Technologies Ltd. Data stream fault detection mechanism in an artificial neural network processor
US11238334B2 (en) 2017-04-04 2022-02-01 Hailo Technologies Ltd. System and method of input alignment for efficient vector operations in an artificial neural network
US11237894B1 (en) 2020-09-29 2022-02-01 Hailo Technologies Ltd. Layer control unit instruction addressing safety mechanism in an artificial neural network processor
US11544545B2 (en) 2017-04-04 2023-01-03 Hailo Technologies Ltd. Structured activation based sparsity in an artificial neural network
US11551028B2 (en) 2017-04-04 2023-01-10 Hailo Technologies Ltd. Structured weight based sparsity in an artificial neural network
US11615297B2 (en) 2017-04-04 2023-03-28 Hailo Technologies Ltd. Structured weight based sparsity in an artificial neural network compiler
US11811421B2 (en) 2020-09-29 2023-11-07 Hailo Technologies Ltd. Weights safety mechanism in an artificial neural network processor
US11874900B2 (en) 2020-09-29 2024-01-16 Hailo Technologies Ltd. Cluster interlayer safety mechanism in an artificial neural network processor

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003179485A (en) * 2001-12-10 2003-06-27 Nippon Telegr & Teleph Corp <Ntt> Variable threshold/threshold element circuit, functional function reconfigurable integrated circuit and method for holding circuit state
US11599787B2 (en) 2016-09-07 2023-03-07 Robert Bosch Gmbh Model calculation unit and control device for calculating a multi-layer perceptron model
JP2019526876A (en) * 2016-09-07 2019-09-19 ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツングRobert Bosch Gmbh Model calculation unit and control device for calculating multilayer perceptron model
US11551028B2 (en) 2017-04-04 2023-01-10 Hailo Technologies Ltd. Structured weight based sparsity in an artificial neural network
US11263512B2 (en) 2017-04-04 2022-03-01 Hailo Technologies Ltd. Neural network processor incorporating separate control and data fabric
US11216717B2 (en) 2017-04-04 2022-01-04 Hailo Technologies Ltd. Neural network processor incorporating multi-level hierarchical aggregated computing and memory elements
US11675693B2 (en) 2017-04-04 2023-06-13 Hailo Technologies Ltd. Neural network processor incorporating inter-device connectivity
US11238334B2 (en) 2017-04-04 2022-02-01 Hailo Technologies Ltd. System and method of input alignment for efficient vector operations in an artificial neural network
US11238331B2 (en) 2017-04-04 2022-02-01 Hailo Technologies Ltd. System and method for augmenting an existing artificial neural network
US11615297B2 (en) 2017-04-04 2023-03-28 Hailo Technologies Ltd. Structured weight based sparsity in an artificial neural network compiler
US11544545B2 (en) 2017-04-04 2023-01-03 Hailo Technologies Ltd. Structured activation based sparsity in an artificial neural network
US11354563B2 (en) 2017-04-04 2022-06-07 Hallo Technologies Ltd. Configurable and programmable sliding window based memory access in a neural network processor
US11461615B2 (en) 2017-04-04 2022-10-04 Hailo Technologies Ltd. System and method of memory access of multi-dimensional data
US11461614B2 (en) 2017-04-04 2022-10-04 Hailo Technologies Ltd. Data driven quantization optimization of weights and input data in an artificial neural network
JP7148087B2 (en) 2017-04-04 2022-10-05 ハイロ テクノロジーズ リミテッド A neural network processor that incorporates multiple layers of hierarchically aggregated computation and memory elements
JP2020517005A (en) * 2017-04-04 2020-06-11 ハイロ テクノロジーズ リミテッド Neural network processor incorporating multi-layer hierarchically aggregated computational and memory elements
US11514291B2 (en) 2017-04-04 2022-11-29 Hailo Technologies Ltd. Neural network processing element incorporating compute and local memory elements
WO2018186390A1 (en) * 2017-04-07 2018-10-11 日本電気株式会社 Semiconductor device
JPWO2018186390A1 (en) * 2017-04-07 2020-05-14 日本電気株式会社 Semiconductor device
US11468248B2 (en) 2017-04-07 2022-10-11 Nec Corporation Semiconductor device
US11237894B1 (en) 2020-09-29 2022-02-01 Hailo Technologies Ltd. Layer control unit instruction addressing safety mechanism in an artificial neural network processor
US11221929B1 (en) 2020-09-29 2022-01-11 Hailo Technologies Ltd. Data stream fault detection mechanism in an artificial neural network processor
US11811421B2 (en) 2020-09-29 2023-11-07 Hailo Technologies Ltd. Weights safety mechanism in an artificial neural network processor
US11874900B2 (en) 2020-09-29 2024-01-16 Hailo Technologies Ltd. Cluster interlayer safety mechanism in an artificial neural network processor

Similar Documents

Publication Publication Date Title
US7043466B2 (en) Neural network processing system using semiconductor memories
JP3771617B2 (en) Multi-level drum detection and restoration method
US20200202203A1 (en) Neural network computation circuit including semiconductor storage elements
US11302392B2 (en) Analog-to-digital converter and neuromorphic computing device including the same
EP1630685A2 (en) Function reconfigurable semiconductor device and integrated circuit configuring the semiconductor device
JP2001034735A (en) Information processor
US10783963B1 (en) In-memory computation device with inter-page and intra-page data circuits
JPH0467259A (en) Information processor
JP3353786B2 (en) Information processing device
JP3182813B2 (en) Information processing device
JP4177131B2 (en) Logical operation circuit, logical operation device, and logical operation method
TWI825797B (en) Memory device and sensing method thereof
TWI771014B (en) Memory circuit and operating method thereof
KR101939359B1 (en) Magnetic tunneling junction memory device with in-memory processing structure
JPH11297087A (en) Semiconductor memory
CN115587620A (en) Neuromorphic device and electronic device including the same
CN110729010B (en) Semiconductor circuit and method of operating the same
US7167116B2 (en) Memory devices having single bit bus structure with current mode signaling and methods of operating same
US20240028297A1 (en) Semiconductor device performing a multiplication and accumulation operation
US20220156556A1 (en) Spiking neural network circuit
US5295091A (en) Analog implementation of a pattern classifier
Hoskins et al. A vlsi implementation of multi-layer neural network with ternary activation functions and limited integer weights
JPH1091605A (en) Information processor
JP2773443B2 (en) Semiconductor integrated circuit
TW202303460A (en) Neural network engine with associated memory array

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040406