JPH02226382A - Error absorbing system by weight correction in neuro-computer - Google Patents

Error absorbing system by weight correction in neuro-computer

Info

Publication number
JPH02226382A
JPH02226382A JP1045208A JP4520889A JPH02226382A JP H02226382 A JPH02226382 A JP H02226382A JP 1045208 A JP1045208 A JP 1045208A JP 4520889 A JP4520889 A JP 4520889A JP H02226382 A JPH02226382 A JP H02226382A
Authority
JP
Japan
Prior art keywords
output
signal
analog
weight
input
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.)
Granted
Application number
JP1045208A
Other languages
Japanese (ja)
Other versions
JP2618470B2 (en
Inventor
Hideki Yoshizawa
英樹 吉沢
Hiromoto Ichiki
宏基 市來
Hideki Kato
英樹 加藤
Kazuo Asakawa
浅川 和雄
Yoshihide Sugiura
義英 杉浦
Hiroyuki Tsuzuki
都築 裕之
Shuichi Endo
秀一 遠藤
Takashi Kawasaki
川崎 貴
Toshiharu Matsuda
松田 俊春
Hiroshi Iwamoto
岩本 弘
Shuetsu Tsuchiya
土屋 主悦
Katsuya Ishikawa
勝哉 石川
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP1045208A priority Critical patent/JP2618470B2/en
Priority to DE69026740T priority patent/DE69026740D1/en
Priority to EP90103900A priority patent/EP0385436B1/en
Priority to US07/486,647 priority patent/US5216746A/en
Publication of JPH02226382A publication Critical patent/JPH02226382A/en
Application granted granted Critical
Publication of JP2618470B2 publication Critical patent/JP2618470B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Feedback Control In General (AREA)

Abstract

PURPOSE:To absorb off-set or gain error by calculating correct weight for dummy node from a detection output voltage, which is outputted from a second analog bus, by using gain. CONSTITUTION:A dummy node means 6 is connected to the analog bus of a neural network 18 and generates a fixed voltage in the designated analog bus at the time of a test mode. An weight correcting means 19 in a digital control means determines the intermediate weight of the weight to each neuro- processor to be multiplied with the fixed voltage, which is generated from the dummy node means 6 in a second state at the time of the test mode, from the off-set voltage of each neuro-processor and calculates the correct weight for dummy node from the detected output voltage, which is outputted from the second analog bus, by using the gain. An weight memory 14 stores the weight corrected by the weight correcting means. Thus, weight data for dummy node are adjusted and the off-set or gain error can be absorbed.

Description

【発明の詳細な説明】 〔概   要〕 重み補正による誤差吸収方式に関し、 少ない配線本数で階層ネットワークを構成する基本ユニ
ット間でのデータの授受を実現できる時分割方式のニュ
ーロコンピュータにおいて、ダミノード用重みデータを
調整してオフセットやゲイン誤差を吸収することを目的
とし、 アナログ信号を第1のアナログバスより時分割的に入力
し、積和演算を行ってアナログ信号を第2のアナログバ
スに出力するアナログニューロプロセッサの集合からな
るニューラルネットワークと、該ニューラルネットワー
クのアナログバスに接続されテストモード時において、
指定された前記アナログバスに固定電圧を発生するダミ
ーノード手段と、テストモード時の第1の状態において
前記第1のアナログバスにダミーノード手段を介して0
ボルトを強制的に入力し、前記第2のアナログバスから
アナログニューロプロセッサ内で発生されたオフセット
電圧を検出する誤差測定手段と、前記各ニューロプロセ
ッサのオフセット電圧からテストモード時の第2の状態
において、前記ダミーノード手段から生成される固定電
圧と乗算されるべき各ニューロプロセッサへの重みの中
間的な重みを決め、第2のアナログバスから出力される
検出出力電圧からゲイン利得を使って正しいダミーノー
ド用重みを計算するディジタル制御手段内の重み補正手
段と、該重み補正手段によって補正された重みを格納す
る重みメモリと、前記ニューラルネットワークの動作を
制御する制御パターンがシーケンサの制御によって順次
読み出される制御パターンメモリとからなるように構成
する。
[Detailed Description of the Invention] [Summary] Regarding the error absorption method using weight correction, in a time-sharing type neurocomputer that can realize data exchange between basic units configuring a hierarchical network with a small number of wires, weights for dummy nodes are used. The purpose is to adjust the data to absorb offset and gain errors. Analog signals are input from the first analog bus in a time-division manner, a product-sum operation is performed, and the analog signals are output to the second analog bus. A neural network consisting of a set of analog neuroprocessors and a test mode connected to the analog bus of the neural network,
dummy node means for generating a fixed voltage on the designated analog bus; and dummy node means for generating a fixed voltage on the specified analog bus;
error measuring means for forcibly inputting volts and detecting an offset voltage generated in the analog neuroprocessor from the second analog bus; and in a second state in a test mode from the offset voltage of each neuroprocessor. , determine an intermediate weight for each neuroprocessor to be multiplied by the fixed voltage generated from the dummy node means, and use the gain from the detected output voltage output from the second analog bus to generate the correct dummy. Weight correction means in the digital control means for calculating node weights, a weight memory for storing the weights corrected by the weight correction means, and a control pattern for controlling the operation of the neural network are sequentially read out under the control of a sequencer. control pattern memory.

〔産業上の利用分野〕 本発明は、アナログニューロンチップをアナログ時分割
伝送路により結合することで実現されるニューロコンピ
ュータに係り、さらに詳しくは、重み補正による誤差吸
収方式に関する。
[Industrial Field of Application] The present invention relates to a neurocomputer realized by connecting analog neuron chips through an analog time-division transmission line, and more particularly to an error absorption method using weight correction.

〔従来の技術〕[Conventional technology]

従来の逐次処理コンピュータ(ノイマン型コンピュータ
)では、使用方法や環境の変化に応じてコンピュータの
データ処理機能を調節することが難しいので、適応性を
有するデータ処理方式として、新たに階層ネットワーク
による並列分散処理方式が提唱されてきている。特に、
バックプロパゲーション法と呼ばれる処理方式(D、 
E、 Rumelhart。
With conventional sequential processing computers (Neumann type computers), it is difficult to adjust the computer's data processing function according to changes in the usage method or environment, so we have developed a new parallel and distributed data processing method using a hierarchical network as an adaptive data processing method. Treatment methods have been proposed. especially,
A processing method called backpropagation method (D,
E. Rumelhart.

G、E、Hinton、 and R,J、l+Iil
liams、  ”LearningInternal
 Representations by Error
 Propagation +PARALLEL  D
ISTRIBUTED  PROCESSING、  
Vol、1.  pp。
G, E, Hinton, and R, J, l+Iil
liams, “Learning Internal
Representations by Error
Propagation +PARALLEL D
ISTRIBUTED PROCESSING,
Vol.1. pp.

318−364. The MIT Press、 1
986)が、その実用性の高さから注目されている。
318-364. The MIT Press, 1
986) is attracting attention due to its high practicality.

バック・プロパゲージコン法では、基本ユニ・7トと呼
ぶ一種のノードと重みを持つ内部結合とから階層ネット
ワークを構成している。第3F図に、基本ユニット1の
原理構成を示す。この基本ユニット1は、連続ニューロ
ンモデルに類似した処理を実行する。即ち、これは多大
カー出力系となっており、複数の入力(yh )に対し
それぞれの内部結合の重み(Wi h lを乗じる乗算
処理部2と、それらの全乗算結果を加算する累算処理部
3と、この加算値に非線形の閾値処理を施して1つの最
終出力X8を出力する閾値処理部4とを備える。
In the back propagation method, a hierarchical network is constructed from a type of node called a basic unit and internal connections with weights. FIG. 3F shows the basic configuration of the basic unit 1. This basic unit 1 performs processing similar to a continuous neuron model. In other words, this is a multi-car output system, which includes a multiplication processing unit 2 that multiplies a plurality of inputs (yh) by the respective internal connection weights (Wih l), and an accumulation processing unit that adds all the multiplication results. 3 and a threshold processing section 4 that performs nonlinear threshold processing on this added value and outputs one final output X8.

第36図は階層型ニューラルネットワークの構成概念図
である。構成の多数の基本ユニット(1h、1−i、1
−jlが、第36図に示すように階層的に接続されるこ
とで、入力信号パターンに対応するところの出力信号パ
ターンが出力されることになる。
FIG. 36 is a conceptual diagram of the structure of a hierarchical neural network. A large number of elementary units of the configuration (1h, 1-i, 1
-jl are connected hierarchically as shown in FIG. 36, so that an output signal pattern corresponding to the input signal pattern is output.

学習時には、出カバターンと目的とする教師パターンの
差が小さくなるように、各階層間の結合の重み(Wユ、
)が決定される。この様な学習は、複数の入カバターン
に対して行われ、多重化される。また、連想時には、人
カバターンが学習時に入力した完全情報と少し異なる不
完全な情報であっても、学習時の教師パターンに近い出
カバターンが得られることにより、連想処理が可能とな
る。
During learning, the weights of the connections between each layer (Wu,
) is determined. Such learning is performed for multiple input patterns and multiplexed. In addition, during association, even if the human cover pattern is incomplete information that is slightly different from the complete information input during learning, associative processing becomes possible by obtaining a cover pattern close to the teacher pattern during learning.

この様な構成のニューロコンピュータを現実のものとし
ていくためには、階層ネットワークを構成することにな
る基本ユニット1間のデータの授受を、できる限り少な
い配線本数で実現していく必要がある。このことは、複
雑なデータ処理を実現していくために、階層ネットワー
クの構成をより多層化したり、基本ユニットの数を増し
ていく必要があるという背景のもとで、どうしても解決
していかなくてはならない課題の1つなのである。
In order to make a neurocomputer with such a configuration a reality, it is necessary to realize data exchange between the basic units 1 that constitute a hierarchical network using as few wiring lines as possible. This problem cannot be solved because in order to realize complex data processing, it is necessary to make the hierarchical network structure more layered and increase the number of basic units. This is one of the issues that must be addressed.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

しかしなから、先に説明したデータ転送方式では、第3
6図に示す階層ネットワークの構成からも明らかなよう
に、2つの眉間の配線本数が極めて多くなることから、
階層ネットワークをチップ化するときに、小さくできな
くなると共に、信頼性を高めることができなくなるとい
う問題点がある。例えば、隣接する2つの層の基本ユニ
ット数を同じとし、すべての基本ユニット1が互いに接
続されるという完全結合を想定するならば、配線本数は
基本ユニット数の2乗に比例して増加することになる。
However, in the data transfer method explained earlier, the third
As is clear from the hierarchical network configuration shown in Figure 6, the number of wires between the two eyebrows is extremely large.
When a hierarchical network is made into a chip, there are problems in that it becomes impossible to make it smaller and it becomes impossible to improve reliability. For example, if the number of basic units in two adjacent layers is the same and we assume a perfect connection in which all basic units 1 are connected to each other, the number of wires will increase in proportion to the square of the number of basic units. become.

このように、配線本数が急激に増加してしまう。In this way, the number of wires increases rapidly.

本発明は、少ない配線本数で階層ネットワークを構成す
る基本ユニット間でのデータの授受を実現できる時分割
方式のニューロコンピュータにおいて、ダミノード用重
みデータを調整してオフセットやゲイン誤差を吸収する
ことを目的とする。
An object of the present invention is to absorb offset and gain errors by adjusting weight data for dummy nodes in a time-sharing neurocomputer that can realize data exchange between basic units forming a hierarchical network with a small number of wires. shall be.

〔課題を解決するための手段〕[Means to solve the problem]

第1A図は本発明のニューロコンピュータのシステムブ
ロック図である。
FIG. 1A is a system block diagram of the neurocomputer of the present invention.

ニューラルネットワーク18は、アナログ信号を第1の
アナログバスより時分割的に入力し、積和演箕を行って
アナログ信号を第2のアナログバスに出力するアナログ
ニューロプロセッサの集合からなり、ダミーノード手段
6は、ニューラルネットワーク18のアナログバスに接
続されテストモード時において、指定された前記アナロ
グバスに固定電圧を発生し、誤差測定手段20は、テス
トモード時の第1の状態において前記第1のアナログバ
スにダミーノード手段6を介して0ボルトを強制的に入
力し、前記第2のアナログバスからアナログニューロプ
ロセッサ内で発生されたオフセット電圧を検出し、ディ
ジタル制御手段内の重み補正手段19は、各ニューロプ
ロセッサのオフセット電圧からテストモード時の第2の
状態において、前記ダミーノード手段6から生成される
固定電圧と乗算されるべき各ニューロプロセッサへの重
みの中間的な重みを決め、第2のアナログバスから出力
される検出出力電圧からゲイン利得を使って正しいダミ
ーノード用重みを計算し、重みメモリ14は、重み補正
手段によって補正された重みを格納し、ニューラルネッ
トワーク18は、ニューラルネットワークの動作を制御
する制御パターンがシーケンサ13の制御によって順次
読み出される制御パターンメモリ12とからなるアナロ
グ信号を第1のアナログバスより時分割的に入力し、積
和演算を行ってアナログ信号を第2のアナログバスに出
力するアナログニューロプロセッサの集合からなり、ダ
ミーノード手段6は、ニュラルネットワーク18のアナ
ログバスに接続されテストモード時において、指定され
た前記アナログバスに固定電圧を発生し、誤差測定手段
20は、テストモード時の第1の状態において前記第1
のアナログバスにダミーノード手段6を介して0ボルト
を強制的に入力し、前記第2のアナログバスからアナロ
グニューロプロセッサ内で発生されたオフセット電圧を
検出し、ディジタル制御手段内の重み補正手段19は、
各ニューロプロセッサのオフセット電圧からテストモー
ド時の第2の状態において、前記ダミーノード手段6か
ら生成される固定電圧と乗算されるべき各ニューロプロ
セッサへの重みの中間的な重みを決め、第2のアナログ
バスから出力される検出出力電圧からゲイン利得を使っ
て正しいダミーノード用重みを計算し、重みメモリ14
は、重み補正手段によって補正された重みを格納し、制
御パターンメモリ12は、ニューラルネットワークの動
作を制御する制御パターンがシーケンサ13の制御によ
って順次読み出される。
The neural network 18 consists of a set of analog neuroprocessors that time-divisionally input analog signals from a first analog bus, perform sum-of-products operation, and output the analog signals to a second analog bus, and includes dummy node means. 6 is connected to the analog bus of the neural network 18 and generates a fixed voltage on the specified analog bus in the test mode, and the error measuring means 20 is connected to the analog bus of the neural network 18 in the test mode. Forcibly inputting 0 volts to the bus via the dummy node means 6, detecting the offset voltage generated in the analog neuroprocessor from the second analog bus, and the weight correction means 19 in the digital control means, In the second state in the test mode, from the offset voltage of each neuroprocessor, an intermediate weight of the weight to be applied to each neuroprocessor to be multiplied by the fixed voltage generated from the dummy node means 6 is determined, and the second The correct weight for the dummy node is calculated using the gain from the detected output voltage output from the analog bus, the weight memory 14 stores the weight corrected by the weight correction means, and the neural network 18 calculates the correct weight for the dummy node by using the gain gain from the detected output voltage output from the analog bus. An analog signal consisting of a control pattern memory 12 in which a control pattern for controlling a control pattern is sequentially read out under the control of a sequencer 13 is input in a time-sharing manner from a first analog bus, and a product-sum operation is performed to convert the analog signal into a second analog signal. The dummy node means 6 is connected to the analog bus of the neural network 18 and generates a fixed voltage on the specified analog bus in the test mode, and the error measuring means 20 is the first state in the first state in the test mode.
0 volt is forcibly input to the analog bus of the second analog bus through the dummy node means 6, an offset voltage generated within the analog neuroprocessor is detected from the second analog bus, and a weight correction means 19 within the digital control means is detected. teeth,
In the second state in the test mode, from the offset voltage of each neuroprocessor, an intermediate weight of the weight to be applied to each neuroprocessor to be multiplied by the fixed voltage generated from the dummy node means 6 is determined, and the second The correct weight for the dummy node is calculated using the gain from the detected output voltage output from the analog bus, and the weight is stored in the weight memory 14.
stores the weights corrected by the weight correction means, and control patterns for controlling the operation of the neural network are sequentially read out from the control pattern memory 12 under the control of the sequencer 13.

〔作   用〕[For production]

アナログ入力信号を時分割でアナログニューロチップに
入力し、この信号と重みデータとの積を取り、この積信
号をそれぞれ加算して得られる積和信号を非線形関数回
路を通して出力することによりアナログニューロチップ
を構成する。このアナログニューロチップを複数個用い
て階層型あるいは帰還型のニューラルネットワーク18
を構成し、このニューラルネットワーク18にシーケン
サ13によってアクセスすべきアドレスが与えられた制
御パターンメモリ12から出力される制御信号を加える
。またニューラルネットワーク18には学習等によって
得られる重みデータが重みメモリ14から供給される。
An analog neurochip is created by inputting an analog input signal into the analog neurochip in a time-division manner, multiplying this signal with weight data, and outputting the sum-of-products signal obtained by adding these product signals through a nonlinear function circuit. Configure. A hierarchical or feedback neural network 18 using multiple analog neurochips
A control signal output from the control pattern memory 12 to which an address to be accessed is given by the sequencer 13 is added to the neural network 18. Further, the neural network 18 is supplied with weight data obtained through learning or the like from the weight memory 14.

そしてニューラルネットワーク18、制御パターンメモ
リ12、シーケンサ13、重みメモリ14はディジタル
制御手段15のディジタル信号によって制御され、且つ
管理される。また、ディジタル制御手段15内のMPU
では、特に、学習アルゴリズムが実行され、かつ出力信
号のチエツクなどが行われる。このようにして、時分割
アナログ入力信号と時分割アナログ出力信号を用いるこ
とを特徴とするアナログニューロコンピュータシステム
が実現される。
The neural network 18, control pattern memory 12, sequencer 13, and weight memory 14 are controlled and managed by digital signals from the digital control means 15. Moreover, the MPU in the digital control means 15
In particular, a learning algorithm is executed, output signals are checked, etc. In this way, an analog neurocomputer system characterized by using time-division analog input signals and time-division analog output signals is realized.

〔実  施  例〕〔Example〕

第1B図は本発明のニューロチップから構成されるアナ
ログニューロプロセッサ(ANP)11のデュアルイン
ラインパッケージの概略図である。
FIG. 1B is a schematic diagram of a dual in-line package of an analog neuroprocessor (ANP) 11 comprised of the neurochip of the present invention.

これは、MB4442と呼ばれニューロンモデルの処理
を実行する。内部の闇値処理部はシグモイド関数で置換
したモデルとなっている。アナログニューロチップはA
NPと呼ばれ、アナログデータを人出力するデバイスで
ある。第1C図は本発明のANPの内部構成図である。
This is called MB4442 and executes neuron model processing. The internal dark value processing section is a model in which it is replaced with a sigmoid function. Analog neurochip is A
It is called a NP and is a device that outputs analog data manually. FIG. 1C is an internal configuration diagram of the ANP of the present invention.

第1C図に示すようにANPIIはアナログバスBlと
アナログバスB2の間に接続される。ANPIIは入力
するアナログ信号と重みを掛けるアナログ乗算部22、
積の和を求めるアナログ加算部23、和を保持するサン
プル/ホールド部24、シグモイド関数の値を出力する
非線形関数部25よりなる。第1B図のANPIIの各
端子を説明する。ANPllの内部はアナログ回路部と
ディジタル回路部から構成されている。十−6ボルトの
端子は、アナログ回路部のオペアンプに供給される電源
端子である。D in及びり。utはアナログ入力信号
及び出力信号の端子である。AGNDはアナログ回路部
の接地端子である。R1+及びRt一端子はアナログ回
路部にある積分回路の外付抵抗Rの端子であり、Ct十
、Ct一端子は同じく積分回路の外付キャパシタCの端
子である。DGNDはディジタル回路部のグランド端子
である。+5ボルトはディジタル回路部の電源端子であ
る。R3Tは積分回路のキャパシタの電荷等のリセット
を行うリセット信号端子である。C3I及びC8Oはデ
イジ−チェーン用制御信号の入出力端子であり、OCは
オフセットキャンセル制御信号用端子、S/H端子は、
サンプル/ボールド用制御信号端子、5YNCは各層の
処理に対する同期信号端子、DCL Kはアナログ入力
信号の処理を行うための基本クロック信号端子、WCL
Kはディジタル重みデータを取り込むためのクロック端
子、WDはビットシリアルで人力するディジタル重みデ
ータ用の端子である。
As shown in FIG. 1C, ANP II is connected between analog bus B1 and analog bus B2. ANPII is an analog multiplier 22 that multiplies the input analog signal and weight;
It consists of an analog addition section 23 that calculates the sum of products, a sample/hold section 24 that holds the sum, and a nonlinear function section 25 that outputs the value of the sigmoid function. Each terminal of ANPII in FIG. 1B will be explained. The inside of ANPll is composed of an analog circuit section and a digital circuit section. The 1-6 volt terminal is the power supply terminal supplied to the operational amplifier of the analog circuit section. D in andri. ut is a terminal for analog input signals and output signals. AGND is the ground terminal of the analog circuit section. The R1+ and Rt1 terminals are the terminals of the external resistor R of the integrating circuit in the analog circuit section, and the Ct1+ and Ct1 terminals are the terminals of the external capacitor C of the integrating circuit. DGND is a ground terminal of the digital circuit section. +5 volts is the power supply terminal for the digital circuit section. R3T is a reset signal terminal for resetting the charge of the capacitor of the integrating circuit. C3I and C8O are input/output terminals for daisy chain control signals, OC is a terminal for offset cancel control signals, and S/H terminal is
Control signal terminal for sample/bold, 5YNC is a synchronization signal terminal for processing of each layer, DCL K is a basic clock signal terminal for processing analog input signals, WCL
K is a clock terminal for taking in digital weight data, and WD is a terminal for manually inputting digital weight data in a bit serial manner.

第2図は、本発明のアナログニューロプロセッサ(AN
P)の原理構成図である。
FIG. 2 shows the analog neuroprocessor (AN) of the present invention.
It is a principle block diagram of P).

別々のANP (図示せず)から時分割的に送られてく
るアナログ人力信号をアナログバスB1からANPll
内のアナログ乗算部22に入力し、このアナログ乗算部
22ではシフトレジスタ27を介してビットシリアルに
入力されその後直並列変換されたディジタル重みデータ
WDと掛は算して、アナログ入力信号とディジタル重み
データとの積を示す積信号を得る。次の、アナログ加算
部23は、外付けの抵抗RとキャパシタCからなるミラ
ー積分回路であって、アナログバスB1に接続された前
段の複数のANP (ANPの存在する場所をノードと
呼ぶ)から時分割で送られるアナ0グ入力信号とダミー
ノードから送られる闇値用のアナログ入力信号とからそ
れぞれ得られる積信号の和を求めるものである。次に、
サンプル/ホールド部24で積信号を所望時間待たせる
ためにホールドした後に、さらにそのサンプル/ボール
ドされた出力を非線形関数部25を介して変換する。出
力制御部26では、シーケンスジェネレータ28の制御
を受けて所定時間遅延させた後に、アナログ出力信号り
。utをアナログバスB2へ出力する。なお、シーケン
スジェネレータ28は内部に供給される制御信号も生成
する。そして、位相制御部29では、おもにANP内の
アナログ回路部とディジタル回路部を接続する各スイッ
チのオンかオフが確実に行われるように、制御信号の位
相を制御するもので、特に、第1のスイッチがオンのと
き第2のスイッチをオフにする場合それ等のスイッチが
同時にオンする場合がないように制御信号の位相を制御
する。
Analog human signals sent in a time-sharing manner from separate ANPs (not shown) are transferred from analog bus B1 to ANPll.
The analog multiplier 22 multiplies the input signal with the digital weight data WD, which is input bit serially via the shift register 27 and is then serial-parallel converted, to obtain the analog input signal and the digital weight. Obtain a product signal indicating the product with the data. The next analog adder 23 is a Miller integration circuit consisting of an external resistor R and a capacitor C, and is connected to a plurality of ANPs in the previous stage connected to the analog bus B1 (the place where an ANP exists is called a node). The sum of the product signals obtained from the analog input signal sent in a time-division manner and the dark value analog input signal sent from the dummy node is calculated. next,
After the product signal is held in the sample/hold unit 24 for a desired time, the sampled/bolded output is further converted via the nonlinear function unit 25. The output control unit 26 outputs an analog output signal after a predetermined time delay under the control of the sequence generator 28. Output ut to analog bus B2. Note that the sequence generator 28 also generates control signals that are supplied internally. The phase control section 29 mainly controls the phase of the control signal so that each switch connecting the analog circuit section and the digital circuit section within the ANP is reliably turned on or off. When the second switch is turned off when the second switch is on, the phase of the control signal is controlled so that the two switches are not turned on at the same time.

なお、シーケンスジェネレータ28は、リセット信号R
3T、、DCLK、WCLK、5YNC。
Note that the sequence generator 28 receives a reset signal R.
3T,,DCLK,WCLK,5YNC.

S/H,QC,、C3Iを後述するマスクコントロール
ブロックから入力するとともにC8Oを出力し、ANP
の内部の制御信号を生成する。
Inputs S/H, QC, , C3I from the mask control block described later, outputs C8O, and outputs ANP.
Generates internal control signals.

ニューラルネットワークでは、同時処理により高速演算
を行う必要がある。本発明では時分割データを使ってい
るが、定常状態では、各ANPがパイプライン的に同時
処理を行う。理想的なニューラルネットワークでは、ニ
ューロンは他のそれぞれのニューロンに相互結合した結
線が必要であるが、このままシステムを実現しようとす
ると、配線数が多くなる。そこで、本発明では時分割デ
ータを扱うので、各ANP内の積和の処理時間が伸びる
が、それを縦方向に、すなわち同層方向にチップを並列
に並べることで、層内のニューロチップを構成するAN
Pの同時処理により、その処理時間を改善する。また、
各層ではパイプライン処理が可能で、このことでも処理
時間が小さくなる。アナログバスに接続した例えば3個
の各ニューロチップには、入力が入ってくると、それは
3個とも同時に入り3個とも並列に、そのアナログ電圧
に対して、各ANPが重みとの積を生成し、それを積分
器のキャパシタに電荷として保持する。
Neural networks need to perform high-speed calculations through simultaneous processing. Although time-division data is used in the present invention, in a steady state, each ANP performs simultaneous processing in a pipeline manner. In an ideal neural network, each neuron would need to be interconnected with each other, but if the system were to be implemented as is, the number of wires would be large. Therefore, in the present invention, since time-division data is handled, the processing time for the sum of products in each ANP increases, but by arranging the chips in parallel in the vertical direction, that is, in the direction of the same layer, the neurochips in the layer can be AN to configure
Simultaneous processing of P improves the processing time. Also,
Each layer can be pipelined, which also reduces processing time. For example, when an input is input to each of three neurochips connected to an analog bus, it is input to all three at the same time, and in parallel, each ANP generates a product of the weight and the analog voltage. and holds it as a charge in the integrator capacitor.

そして、次の時間区域で、同じアナログバスのアナログ
入力に対して、各ANPは重みとの積を形成し積分器の
キャパシタ内に前の時間区域で決まった積に加え込むこ
とになる。前段のすべてのANPからのアナログ入力信
号に対する重みとの積に対する和が生成された後、その
和はサンプル/ホールドされる。その後、シグモイド関
数を介して出力されるが、これは、C3I制御信号入力
時に出力される。そして、出力完了時にC3Iが立ち下
がり、その後一定時間遅延後にC3oを立ち上げて、出
力バスの使用権を同一層内の隣接ニューロチップからな
るANPに与える。
Then, in the next time period, for the analog input of the same analog bus, each ANP will form a product with a weight and add it to the product determined in the previous time period in the integrator capacitor. After the sum is generated for the product of the weights on the analog input signals from all previous ANPs, the sum is sampled/held. Thereafter, it is output via a sigmoid function, which is output when the C3I control signal is input. Then, when the output is completed, C3I falls, and after a certain time delay, C3o rises, giving the right to use the output bus to the ANP consisting of adjacent neurochips in the same layer.

第3図はニューロチップである基本ユニットの第1の実
施例構成図である。同図の乗算部32、加算部33、閾
値処理部34は連続ニューロンモデルの実行部であるが
、この実施例では出力保持部35が存在する。具体的に
は、基本ユニット31に接続される複数の人力をY i
−、この各接続に対応して設定される重みをWiとする
ならば、乗算部32は、 Y i −W i を算出し、加算部33は、 X−ΣYi −Wi−θ を算出する。但し、θは闇値である。闇値部34は最終
出力をYとするならば、 Y= 1/ (1+ exp (−X) )  ・・・
・(11を算出することになる。
FIG. 3 is a block diagram of a first embodiment of the basic unit which is a neurochip. The multiplication section 32, addition section 33, and threshold processing section 34 in the figure are continuous neuron model execution sections, but in this embodiment, an output holding section 35 is present. Specifically, the plurality of human power connected to the basic unit 31 is
-, and the weight set corresponding to each connection is Wi, then the multiplier 32 calculates Y i −W i and the adder 33 calculates X−ΣYi −Wi−θ. However, θ is a dark value. If the final output of the dark value section 34 is Y, then Y= 1/ (1+ exp (-X))...
・(11 will be calculated.

ダミーノードから入力される“+1″という値に“−θ
”という重みをかけて加算部33で「Xθ」の結果が出
力される。従って閾値部34ではS字曲線による変換だ
けが行われている。
“−θ” is applied to the value “+1” input from the dummy node.
”, and the adder 33 outputs the result of “Xθ”. Therefore, in the threshold section 34, only the conversion using the S-shaped curve is performed.

乗算部32は、乗算型D/Aコンバータ32aで構成さ
れ、前段層の基本ユニット31から、あるいは後述する
ダミーノードの回路からのアナログ信号(入カスイソチ
部37を介して入力される)の入力と、その入力に対し
て乗算されるべきディジタル信号の重み情1(後述する
重み保持部38を介して入力される)との乗算を行って
、得られた乗算結果をアナログ信号で出力するよう処理
するもの、加算部33は、積分器で構成されるアナログ
加算器33aとアナログ加算器33aの加算結果を保持
する保持回路33bとにより構成される。乗算型D/A
コンバータ32aは、D/Aコンバータの基準電圧端子
にアナログ入力信号を人力し、各ディジタル入力端子に
重みの各ビットをディジタル人力信号として入力するも
のであり、結果として、そのアナログ入力信号と重みと
の積を生成する。アナログ加算器33aは、乗算型D/
Aコンバータ32aの出力と、前回に求められて保持回
路33bに保持されている加算値とを加算して新たな加
算値を求めるもの、保持回路33bは、アナログ加算器
33aが求めた加算値をホールドするとともに、そのホ
ールド値を前回の加算値としてアナログ加算器33aに
フィードバックさせるものである。これらの加算処理は
制御回路39より出力される加算制御信号に同期して実
行される。闇値部34は、アナログの関数発生回路であ
る非線形関数発生回路34aで構成され、入力に対して
シグモイド関数等の非線形信号を出力するものである。
The multiplication section 32 is composed of a multiplication type D/A converter 32a, and receives an input of an analog signal (input via an input channel section 37) from the basic unit 31 in the previous layer or from a dummy node circuit described later. , the input is multiplied by weight information 1 of the digital signal to be multiplied (input via the weight holding unit 38 described later), and the obtained multiplication result is output as an analog signal. The adding section 33 is composed of an analog adder 33a formed of an integrator and a holding circuit 33b that holds the addition result of the analog adder 33a. Multiplying D/A
The converter 32a inputs an analog input signal to the reference voltage terminal of the D/A converter, and inputs each bit of the weight to each digital input terminal as a digital input signal.As a result, the analog input signal and the weight are generate the product of The analog adder 33a is a multiplication type D/
A new added value is obtained by adding the output of the A converter 32a and the added value previously obtained and held in the holding circuit 33b.The holding circuit 33b adds the added value obtained by the analog adder 33a. At the same time, the held value is fed back to the analog adder 33a as the previous addition value. These addition processes are executed in synchronization with an addition control signal output from the control circuit 39. The dark value section 34 is composed of a nonlinear function generation circuit 34a that is an analog function generation circuit, and outputs a nonlinear signal such as a sigmoid function in response to an input.

乗算結果の累算が閾値(−θ)の加算を含めて終了した
ときに、保持回路33bにホールドされている加算値X
に対し閾値(−θ)を加えて(11式のシグモイド関数
の演算処理を施し、アナログ出力値Yを得るもの、出力
保持部35は、サンプルホールド回路で構成され、後段
層の基本ユニット31への出力となる非線形関数発生回
路34aのアナログ信号の出力値Yをホールドするもの
である。
When the accumulation of the multiplication results including the addition of the threshold value (-θ) is completed, the addition value X held in the holding circuit 33b
The analog output value Y is obtained by adding a threshold value (-θ) to (calculating the sigmoid function of Equation 11). This is to hold the output value Y of the analog signal of the nonlinear function generating circuit 34a, which is the output of the nonlinear function generating circuit 34a.

また、36は出力スイソチ部であり、制御回路39より
の出力制御信号を受けて一定時間ONすることで、出力
保持部35が保持するところの最終出力をアナログバス
B2上に出力するよう処理するもの、37は入カスイン
チ部であり、制御回路39よりの入力制御信号を受けて
前段層の基本ユニット31から最終出力からのアナログ
出力が送られてくるときにONすることで入力の受付を
行う。38は重み保持部であり、パラレルアウトシフト
レジスタ等により構成され、重みメモリから送られてく
るビットシリアルの重み信号がバッファ38aのゲート
がオープン(制御回路39による重み入力制御信号がオ
ン)された時に、この重み信号を乗算部32が必要とす
るビットパラレルの重みとして保持するものである。ヒ
ントパラレルの重みは乗算制御信号が与えられたときに
パラレルで乗算部に与えられる。39はディジタル回路
部の制御回路で外部からの同期信号から内部の同期信号
を生成するもので、内部のアナログ処理の機能の制御を
実行する。
Further, 36 is an output switch section, which processes so as to output the final output held by the output holding section 35 onto the analog bus B2 by turning ON for a certain period of time in response to an output control signal from the control circuit 39. Reference numeral 37 is an input input unit, which receives an input control signal from the control circuit 39 and accepts input by turning ON when an analog output from the final output is sent from the basic unit 31 in the previous layer. . Reference numeral 38 denotes a weight holding unit, which is composed of a parallel out shift register, etc., and receives the bit serial weight signal sent from the weight memory when the gate of the buffer 38a is opened (the weight input control signal from the control circuit 39 is turned on). At times, this weight signal is held as a bit-parallel weight required by the multiplier 32. The hint parallel weights are applied to the multiplier in parallel when the multiplication control signal is applied. Reference numeral 39 denotes a control circuit of the digital circuit section, which generates an internal synchronization signal from an external synchronization signal, and controls internal analog processing functions.

このように構成されることで、第3図の信号処理構成を
採る基本ユニット31の入出力がアナログ信号でもって
実現されることになるのである。
With this configuration, the input and output of the basic unit 31 having the signal processing configuration shown in FIG. 3 can be realized using analog signals.

なお、乗算型D/Aコンバータ32aは、ディジタル信
号の重み情報をパラレルで受は取るようにするものでも
よいし、重み情報をシリアルで受は取ってからパラレル
変換するようにするものでもよい。あるいは、重み情報
をアナログ信号で構成するならば、乗算型D/Aコンバ
ータ32aの代わりに、アナログ乗算器を用いることが
できる。
Note that the multiplication type D/A converter 32a may be configured to receive and receive the weight information of the digital signal in parallel, or may be configured to receive and receive the weight information in serial and then perform parallel conversion. Alternatively, if the weight information is constituted by an analog signal, an analog multiplier can be used instead of the multiplication type D/A converter 32a.

第4図はI IIIの本発明のニューロチップ(ANP
)の実施例の具体的回路図である。
Figure 4 shows the neurochip (ANP) of the present invention of III.
) is a specific circuit diagram of an embodiment.

このユニットでは入力部42、乗算部43、加算部44
、サンプル/ボールド部45、非線形関数部46、及び
出力部47から構成され、ここでは、出力保持回路はな
く、サンプル/ホール、ド部45が出力保持の機能も有
するものとする。
In this unit, an input section 42, a multiplication section 43, an addition section 44
, a sample/bold section 45, a nonlinear function section 46, and an output section 47. Here, it is assumed that there is no output holding circuit, and the sample/hold section 45 also has an output holding function.

入力部42はオフセットキャンセル部51と、1倍のバ
ッファ49から構成されている。1倍のバッファ49は
電圧フォロアで、オペアンプの出力を一端子にフィード
バックし、子端子に入力電圧を入力することによって構
成される。データ入力はアナログの時分割されたパルス
信号である。
The input section 42 includes an offset canceling section 51 and a 1x buffer 49. The 1x buffer 49 is a voltage follower and is configured by feeding back the output of an operational amplifier to one terminal and inputting the input voltage to a child terminal. The data input is an analog time-shared pulse signal.

OCはオフセットコントロール信号であり、これが1の
ときアナログスイッチ66がオンし、1倍のバッファ4
9には、0電圧が強制的に設定される。一方、オフセッ
トコントロール信号OCが、0のときアナログスイッチ
66はオフされ、他方のアナログスイッチの他方65が
オンし、データ入力が1倍のバッファ49に入力される
。すなわち、オフセットコントロール信号OCが1であ
る場合には、ニューロンユニットにはOボルトが強制的
に入力されて乗算器出力までの回路のオペアンプ出力に
生じるオフセット電圧に対するオフセットのキャンセル
の動作を行うようにしている。
OC is an offset control signal, and when this is 1, the analog switch 66 is turned on, and the 1x buffer 4 is turned on.
9 is forcibly set to 0 voltage. On the other hand, when the offset control signal OC is 0, the analog switch 66 is turned off, the other analog switch 65 is turned on, and the data input is input to the 1x buffer 49. That is, when the offset control signal OC is 1, O volts are forcibly input to the neuron unit so that the neuron unit performs the operation of canceling the offset voltage generated at the operational amplifier output of the circuit up to the multiplier output. ing.

アナログスイッチ65と66は同図ではOC信号の反転
位相と正相位相でスイツチングの制御が行われているが
、位相制御回路によって、同時オンがないようになって
いる。以後このことをOCが「位相制御された」という
言い方をすることにする。
In the figure, switching of the analog switches 65 and 66 is controlled by the inverted phase and positive phase of the OC signal, but a phase control circuit prevents them from being turned on simultaneously. Hereinafter, this will be referred to as the OC being "phase-controlled."

正負切換回路52は2つの倍数器をカスケード結合して
構成されている。倍数器では入力抵抗(10にΩ)とフ
ィードバンク抵抗(10にΩ)によって10/10、す
なわち1倍の電圧の反転したものが形成され、それを1
段だけを通すか、2段を通すかによってアナログ電圧の
符号を決定している。
The positive/negative switching circuit 52 is constructed by cascading two multipliers. In a multiplier, the input resistance (10Ω to 10Ω) and the feedbank resistor (10 to Ω) form an inverted version of 10/10, or 1x the voltage, which is then
The sign of the analog voltage is determined depending on whether only one stage or two stages are passed.

その制御信号はディジタル重みデータの符号ビン)(S
IGN)であり、このS’lGNビットはMOSスイッ
チ70のゲートに接続されている。この5IGNの制御
信号も位相制御されている。符号ビ・7トが1である場
合に入力部42からの入力電圧は第1段目の倍数器で反
転され、さらにスイッチ67もオンしているので後段の
倍数器も通り、結果として正相となる。また符号ビット
がOである場合には、反転回路68を介して、スイッチ
69がオンとなる。この時スイッチ67と70はオフし
ているため、入力部42からの入力端子はスイッチ69
を介して後段のオペアンプ71の一端子に入力される。
The control signal is the code bin of digital weight data) (S
IGN), and this S'lGN bit is connected to the gate of the MOS switch 70. This 5IGN control signal is also phase controlled. When the sign bit 7 is 1, the input voltage from the input section 42 is inverted by the first-stage multiplier, and since the switch 67 is also on, it passes through the subsequent multiplier, resulting in a positive phase. becomes. Further, when the sign bit is O, the switch 69 is turned on via the inversion circuit 68. At this time, the switches 67 and 70 are off, so the input terminal from the input section 42 is connected to the switch 69.
The signal is inputted to one terminal of the operational amplifier 71 at the subsequent stage via the .

従って、前段の抵抗72と後段のオペアンプのフィード
バックの抵抗73とによって倍数器が形成され、1倍さ
れた形で反転される。すなわち、符号ビットの正負によ
って人力部42の入力が、正または負の電圧として形成
され、これが、興奮性と抑制性のシナプス結合に従った
電圧となる。正負切換回路52からの出力は乗算部43
の中にあるD/Aコンバータ53のR−2R抵抗回路網
の74の点、すなわち基準電圧端子に入力される。
Therefore, a multiplier is formed by the resistor 72 at the front stage and the feedback resistor 73 of the operational amplifier at the rear stage, and the signal is multiplied by 1 and inverted. That is, the input to the human power unit 42 is formed as a positive or negative voltage depending on the sign bit, and this becomes a voltage according to excitatory and inhibitory synaptic connections. The output from the positive/negative switching circuit 52 is sent to the multiplier 43
The voltage is input to point 74 of the R-2R resistor network of the D/A converter 53 located in the D/A converter 53, that is, to the reference voltage terminal.

R−2R方式のD/Aコンバータをまず説明する。MS
BからI−S Bまでのディジタル重みによって内部の
スイッチはオンまたはオフをとる。ディジタル値が1で
ある場合に、電流は右側のスイッチ75を通って、オペ
アンプ76の仮想接地点78に流れ込む。オペアンプ7
6の仮想接地点78は十端子と同じ電圧になるように制
御され、これがグランドであるから仮想的な0ボルトで
ある。
First, the R-2R type D/A converter will be explained. M.S.
The internal switch is turned on or off depending on the digital weight from B to ISB. If the digital value is 1, current flows through the right switch 75 to the virtual ground point 78 of the operational amplifier 76. operational amplifier 7
The virtual ground point 78 of 6 is controlled to have the same voltage as the 10 terminal, and since this is the ground, it is virtual 0 volt.

D/Aコンバータ53においてRはIOKΩ、2Rは2
0にΩである。スイッチの状態に関わらず、2Rの抵抗
には電流が流れ、ディジタル値の値に従ってその2Rに
流れる重み電流が仮想接地点78の方に流れるかどうか
が決定される。1香石の2Rに流れる電流をiとする。
In the D/A converter 53, R is IOKΩ, 2R is 2
0 to Ω. Regardless of the state of the switch, current flows through the 2R resistor, and it is determined whether the weight current flowing through the 2R flows toward the virtual ground point 78 according to the value of the digital value. Let i be the current flowing through 2R of 1 fragrant stone.

右から2番目すなわちLSBに対応する2Rの電流は1
香石の2Rにかかる電圧を2Rで割った値であるから2
RXi÷2Rでiとな?6υっ−・′1番香石横方向の
Rには電流21が流れる。右から3番目の2Rには2R
X i+RX2 iの電圧がかかり、これを2Rで割る
から21の電流が流れる。以下同様で左に行くに従って
4i、8iとなって2のべき乗で増える電流になる。こ
の2のべき乗になった重み電流をオペアンプの方に流す
か流さないかを決めているのがMSBからLSBである
。従って、ディジタル重みに対応する電流が2のべき乗
の形で仮想接地78に流れこみ、オペアンプ76の入力
インピーダンスは無限大であるから、この電流がオペア
ンプ36の帰還抵抗78に流れる。従って、D/Aコン
バータの出力電圧V。utは入力電圧をEとすれば、 Vout” ×(Do +2XDI +22XDz 2” 十・・・・+2” MDll−1) となる。ここで、DoはLSBで、Dll−1がMSB
であるとする。すなわち、掛算部43の出力は等価的に
入力電圧Eに重みを掛けた値になっている。
The current of 2R corresponding to the second from the right, that is, LSB, is 1
Since it is the value obtained by dividing the voltage applied to 2R of the incense stone by 2R, 2
RXi÷2R is i? 6υ-・'A current 21 flows in the R in the lateral direction of the first scented stone. 2R is the third 2R from the right
A voltage of X i + RX2 i is applied, and this is divided by 2R, so a current of 21 flows. In the same manner, the current becomes 4i and 8i as it goes to the left, increasing as a power of 2. It is from MSB to LSB that determines whether or not the weighted current, which is a power of 2, flows toward the operational amplifier. Therefore, a current corresponding to the digital weight flows into the virtual ground 78 in the form of a power of two, and since the input impedance of the operational amplifier 76 is infinite, this current flows into the feedback resistor 78 of the operational amplifier 36. Therefore, the output voltage V of the D/A converter. If the input voltage is E, ut is Vout" × (Do +2XDI +22XDz 2"10...+2" MDll-1). Here, Do is the LSB, and Dll-1 is the MSB.
Suppose that That is, the output of the multiplier 43 is equivalently a value obtained by multiplying the input voltage E by weight.

その重み係数はMSBからLSBに人力されるディジタ
ル値で制御されることになる。一方、加算部44は時分
割多重化アナログ信号の各電圧とディジタル重みデータ
との容積についてミラー積分器を時分割的に使用するこ
とにより累積加算動作を実行する。そして、サンプル/
ホールド回路45は、加算結果をサンプル/ホールドす
る。
The weighting coefficients are controlled by digital values manually entered from MSB to LSB. On the other hand, the adder 44 performs a cumulative addition operation for the volume of each voltage of the time-division multiplexed analog signal and the digital weight data by using a Miller integrator in a time-division manner. And sample/
A hold circuit 45 samples/holds the addition result.

次に加算部44を説明する。加算部44は抵抗Rと帰還
キャパシタCによる積分器である。加算部44の入力部
には時分割加算制御部55があり、位相制御されたサン
プル/ホールド信号S/H信号が1のとき乗算部43の
出力電圧がオペアンプの仮想接地点79に入力され、S
/H信号が0のとき反転回路80によりスイッチ81が
オンとなって乗算部43の出力が抵抗Rを介してグラン
ドに接続されるので加算部44帰還キャパシタCには加
算されないことになる。今、S/H信号が1のとき、乗
算部43の出力電圧は抵抗Rを介してオペアンプ102
の一端子に入力し、入力電圧を抵抗Rで割った電流が仮
想接地を介して帰還キャパシタCの方に入力される。こ
の後、S/H信号がまたOとなり、乗算部43と加算部
44は切り離されるので、乗算部43は次の入力信号に
対して、重みデータを掛けることができる。キャパシタ
Cを含む積分回路の帰還回路82には4つのスイッチを
用いてオフセットキャンセル機能が付加されている。今
オフセットコントロール信号OCが1になったとすると
、スイッチ83と84がオンで、85と86がオフとな
る。オフセットコントロール信号OCがOの時には、デ
ータ入力部42、データ入力端子DATA −INPU
Tに入力電圧が与えられ、それに対応する乗算部43の
出力が抵抗Rを介してキャパシタCに入力される。この
時、スイッチ85.86がオンであり、キャパシタCの
極性はオペアンプの一端子に接続されている側か−、オ
ペアンプ102の出力に接続されている側が十である。
Next, the adding section 44 will be explained. The adder 44 is an integrator including a resistor R and a feedback capacitor C. A time division addition control section 55 is provided at the input section of the addition section 44, and when the phase-controlled sample/hold signal S/H signal is 1, the output voltage of the multiplication section 43 is inputted to the virtual ground point 79 of the operational amplifier. S
When the /H signal is 0, the switch 81 is turned on by the inverting circuit 80 and the output of the multiplier 43 is connected to the ground via the resistor R, so that it is not added to the feedback capacitor C of the adder 44. Now, when the S/H signal is 1, the output voltage of the multiplier 43 is applied to the operational amplifier 102 via the resistor R.
A current obtained by dividing the input voltage by the resistor R is input to the feedback capacitor C via virtual ground. After this, the S/H signal becomes O again and the multiplier 43 and the adder 44 are separated, so the multiplier 43 can multiply the next input signal by the weight data. An offset canceling function is added to the feedback circuit 82 of the integrating circuit including the capacitor C using four switches. Assuming that the offset control signal OC is now 1, switches 83 and 84 are on, and switches 85 and 86 are off. When the offset control signal OC is O, the data input section 42 and the data input terminal DATA-INPU
An input voltage is applied to T, and the corresponding output of multiplier 43 is input to capacitor C via resistor R. At this time, the switches 85 and 86 are on, and the polarity of the capacitor C is either - on the side connected to one terminal of the operational amplifier, or positive on the side connected to the output of the operational amplifier 102.

次に、オフセットコントロール信号OCが1である場合
にはデータ入力は強制的にはOにされる。この場合、正
負切換回路42及び乗算部43のD/Aコンバータ53
を介してもしオフセットがなければ、D/Aコンバータ
44の出力は0ボルトとなる。しかし、オペアンプ49
.103.71.102があるためにオフセット電圧が
生じ、そのオフセット電圧が加算部44のキャパシタC
に蓄えられる。この場合、前のオフセットコントロール
信号OCがOである場合と違ってスイッチ83.84が
オンとなり、キャパシタCの十−の極性は逆転する。そ
のため、入力信号が人力された時に生じるオフセット電
圧はオフセットコントロール信号○Cを1にすることに
より、キャパシタCの極性が変わり、結果として、オフ
セットがキャンセルされることになる。本発明では、こ
のように、キャパシタCの極性の反転を用いて等測的に
オフセットキャンセル機能を有するように構成されてい
る。なお、スイッチ87はリセット信号によって制御さ
れ、処理開始時にリセット信号が与えられた場合に、キ
ャパシタChの電圧を零にし、加算部の出力を強制的に
0にリセットするものである。このOC信号も位相制御
されているものとする。
Next, when the offset control signal OC is 1, the data input is forced to 0. In this case, the positive/negative switching circuit 42 and the D/A converter 53 of the multiplication section 43
If there is no offset, the output of the D/A converter 44 will be 0 volts. However, op amp 49
.. 103.71.102, an offset voltage is generated, and the offset voltage is applied to the capacitor C of the adding section 44.
is stored in In this case, unlike the case where the previous offset control signal OC was O, the switches 83 and 84 are turned on, and the polarity of the capacitor C is reversed. Therefore, by setting the offset control signal ○C to 1, the polarity of the capacitor C changes, and as a result, the offset voltage that occurs when an input signal is input manually is canceled. In this way, the present invention is configured to have an offset canceling function isometrically by using the polarity reversal of the capacitor C. Note that the switch 87 is controlled by a reset signal, and when the reset signal is applied at the start of processing, the voltage of the capacitor Ch is set to zero, and the output of the adder section is forcibly reset to zero. It is assumed that this OC signal is also phase controlled.

加算部44の出力はサンプル/ホールド回路45の入力
となる。サンプル/ホールド部45では、位相制御され
たサンプル/ホールド制御信号S/Houtが1である
場合に、スイッチ88を介して加算部44の出力がキャ
パシタChに蓄えられる。
The output of the adder 44 becomes the input of the sample/hold circuit 45. In the sample/hold unit 45, when the phase-controlled sample/hold control signal S/Hout is 1, the output of the adder 44 is stored in the capacitor Ch via the switch 88.

S / Hout制御信号が1である場合には、反転回
路94によってスイッチ90の制御信号は0となり、キ
ャパシタChの一方の端子はグランドに接地されず、ス
イッチ91がオンになることによりユニットの最終出力
信号がそのスイッチ91を介してキャパシタChに入力
される。すなわち、その時の最終出力信号がオペアンプ
96の出力端からフィードバックされてキャパシタC6
の下側に与えられる。従って、キャパシタCには、加算
部44の出力から最終出力信号の値を引いた電圧が保持
される。一方S / HouL制御信号が0のときには
、スイッチ89と90がオンし、キャパシタChの下側
はグランドとなり、結果としてキャパシタCに蓄えられ
た電圧、すなわち加算部44の出力から最終出力値を引
いた電圧値がスイッチ89を介して1倍のオペアンプ9
3の+側に入力され、そしてこのオペアンプ93はバッ
ファとして働いて、オペアンプ93の出力がシグモイド
関数の入力となる。また、S / Hout制御信号が
1のときスイッチ88がオンし、キャパシタC6には加
算器の出力値と最終出力値との差の電圧が蓄えられてい
るときには、スイッチ92がオンしている。そのためオ
ペアンプ93にはOボルトが強制的に入力される。この
時にシグモイド関数46及びオペアンプ96.アナログ
スイッチ100を介してオフセット電圧ΔVがスイッチ
91を介してC,、の下側に入力される。したがってS
 / Hout制御信号がOの時点、すなわちスイッチ
89がオンでスイッチ92がオフである場合には、C6
に蓄えられた電圧、すなわち(加算部の出力−オフセッ
ト電圧Δ■)がオペアンプ93とシグモイド関数46を
介して最終出力になるが、S/Hout信号が1になる
と、この時に生成されるオフセット電圧もΔ■であるか
ら結果として、オフセット電圧かキャンセルされること
になる。
When the S/Hout control signal is 1, the control signal of the switch 90 is set to 0 by the inverting circuit 94, one terminal of the capacitor Ch is not grounded, and the switch 91 is turned on, so that the final terminal of the unit is The output signal is input to the capacitor Ch via the switch 91. That is, the final output signal at that time is fed back from the output terminal of the operational amplifier 96 to the capacitor C6.
given below. Therefore, the voltage obtained by subtracting the value of the final output signal from the output of the adder 44 is held in the capacitor C. On the other hand, when the S/HouL control signal is 0, the switches 89 and 90 are turned on, and the lower side of the capacitor Ch becomes ground, and as a result, the final output value is subtracted from the voltage stored in the capacitor C, that is, the output of the adder 44. The operational amplifier 9 whose voltage value is 1 times the voltage value through the switch 89
The operational amplifier 93 functions as a buffer, and the output of the operational amplifier 93 becomes the input to the sigmoid function. Further, when the S/Hout control signal is 1, the switch 88 is turned on, and when the capacitor C6 stores a voltage equal to the difference between the output value of the adder and the final output value, the switch 92 is turned on. Therefore, O volts are forcibly input to the operational amplifier 93. At this time, the sigmoid function 46 and the operational amplifier 96. An offset voltage ΔV is inputted via the analog switch 100 to the lower side of C, , via the switch 91. Therefore S
/Hout control signal is O, that is, when switch 89 is on and switch 92 is off, C6
The voltage stored in , that is, (output of the adder - offset voltage Δ■) becomes the final output via the operational amplifier 93 and the sigmoid function 46, but when the S/Hout signal becomes 1, the offset voltage generated at this time Since is also Δ■, as a result, the offset voltage is canceled.

シグモイド関数を生成する非線形関数部は非線形回路選
択制御部があり、位相制御されたSe151g信号を1
にするとスイッチ95がオンし、シグモイド関数の出力
が次段に入力される。しかし、Se151g信号が0の
時には反転回路97を介してスイッチ98の制御信号が
1となってそれがオンし、シグモイド関数の出力はカッ
トされる。すなわちSe151g信号が0の時には、サ
ンプル/ホールド部の出力電圧がシグモイド関数を介さ
ずに直接オペアンプ96に入力される。オペアンプ96
は本質的には出力を一端子に直接帰還する1倍のオペア
ンプでバッファの働きをする。すなわち出力インピーダ
ンスをOにするバッファとなる。
The nonlinear function section that generates the sigmoid function has a nonlinear circuit selection control section, and the phase-controlled Se151g signal is
When the switch 95 is turned on, the output of the sigmoid function is input to the next stage. However, when the Se151g signal is 0, the control signal of the switch 98 becomes 1 via the inversion circuit 97, turning it on, and the output of the sigmoid function is cut. That is, when the Se151g signal is 0, the output voltage of the sample/hold section is directly input to the operational amplifier 96 without going through the sigmoid function. operational amplifier 96
is essentially a 1x operational amplifier that feeds the output directly back to one terminal, acting as a buffer. In other words, it becomes a buffer that sets the output impedance to O.

出力部47には時分割アナログ出力部64と出力制御部
63が接続されている。C3Iが1のときにはスイッチ
99がオンで、スイッチ101もオンであるため、オペ
アンプ96の最終出力値が。
A time division analog output section 64 and an output control section 63 are connected to the output section 47 . When C3I is 1, switch 99 is on and switch 101 is also on, so the final output value of operational amplifier 96 is.

DATA −0tlTPUTに出力され、しかもその一
端子にフィードバックされて、オペアンプ96は1倍の
オペアンプとして働く。それと同時に最終出力値がサン
プル/ホールド部45にフィードバックされる。一方、
C3Iが0のときインバータ104を介してスイッチ1
00がオンになり、スイッチ101.99がオフになる
。すなわちオペアンプ96の出力はDATA −011
TPUT線には出力されないことになる。しかし、スイ
ッチ100がオンすることによって1倍のバッファを形
成するようにしているためオペアンプ96の電圧フォロ
ア動作は破壊されることなく実行される。出力部47は
出力制御入力信号C3Iによって出力パルス電圧を伝達
するかどうかを決める回路である。このC3Iをデイレ
イ回路105を介してC3Oとして出力し、層内の隣接
するニューロデツプに対する出力アナログ信号の時間タ
イミングを決定することになる。
It is output to DATA -0tlTPUT and fed back to one terminal thereof, so that the operational amplifier 96 functions as a 1x operational amplifier. At the same time, the final output value is fed back to the sample/hold section 45. on the other hand,
When C3I is 0, switch 1 is connected via inverter 104.
00 is turned on and switch 101.99 is turned off. In other words, the output of the operational amplifier 96 is DATA -011
It will not be output to the TPUT line. However, since a one-time buffer is formed by turning on the switch 100, the voltage follower operation of the operational amplifier 96 is performed without being destroyed. The output section 47 is a circuit that determines whether or not to transmit the output pulse voltage based on the output control input signal C3I. This C3I is outputted as C3O via the delay circuit 105, and the time timing of the output analog signal to the adjacent neurodep within the layer is determined.

このため、本発明では出力部47からのアナログ信号は
時分割で伝達されるため、バス上で他のニューロチップ
からのアナログ信号と競合しない。
Therefore, in the present invention, since the analog signal from the output section 47 is transmitted in a time-division manner, it does not compete with analog signals from other neurochips on the bus.

第5図は第4図において、オフセットキャンセルOCを
0CO1OC1、サイン5IGNをPN。
In FIG. 5, offset cancel OC is 0CO1OC1 and sign 5IGN is PN in FIG.

PN、サンプル/ボールドSHを5HII、5HIO、
サンプル/ホールドS/Houtを5H21,5H20
、シグモイド選択信号Se151gを−S IGM、S
 IGM、デイジ−チェーン用信号C3Iをcs、−c
sでの2信号で位相制御を実現する。すなわち、1つの
制御信号を、それぞれ正相を逆相の2信号で構成しかつ
位相をずらすことにより、これらの制御信号の正相と逆
相で制御される別のスイッチが同時にオン状態にならな
いようにした信号にした場合の実施例である。なお、D
/Aコンバータ53の出力端に接続されたキャパシタC
1、抵抗Rfはオペアンプ76のフィードバック信号を
D/Aコンバータの演算速度にあわせるためのものであ
り、DT端子には、D/Aコンバータのディジタル入力
が加えられる。
PN, sample/bold SH to 5HII, 5HIO,
Sample/Hold S/Hout 5H21, 5H20
, sigmoid selection signal Se151g -S IGM,S
IGM, daisy chain signal C3I cs, -c
Phase control is realized using two signals at s. In other words, by configuring one control signal as two signals, one in positive phase and the other in reverse phase, and shifting the phases, other switches controlled by the positive and negative phases of these control signals will not turn on at the same time. This is an example in which a signal is generated as shown in FIG. In addition, D
/A capacitor C connected to the output terminal of the A converter 53
1. The resistor Rf is for adjusting the feedback signal of the operational amplifier 76 to the calculation speed of the D/A converter, and the digital input of the D/A converter is applied to the DT terminal.

第5図で第4図と同一箇所は同一番号を付して説明を省
略する。
In FIG. 5, the same parts as in FIG. 4 are given the same numbers, and the explanation will be omitted.

第6図は、本発明の重み補正による誤差方式に基づく積
分器におけるタイミング図である。データクロックDC
LKと重みクロックWCLKは基本的な動作クロックで
、データクロックDCLKのハイ状態の半周期間に高速
な重みクロックWCLKが出力される。重みクロックW
CLK信号は重みシリアルデータを取り込むための同期
クロックである。データクロックDCLK信号はアナロ
グ入力信号に対する処理を行うための基本クロックであ
る。同期信号5YNCは各層において一層内の各アナロ
グニューロンプロセッサANPの同期をとる同期信号で
ある。積分器の出力電圧の変化は下の三角形で示された
部分の波形で示される。
FIG. 6 is a timing diagram for an integrator based on the weighted error method of the present invention. data clock dc
LK and the weighted clock WCLK are basic operating clocks, and the high-speed weighted clock WCLK is output during a half cycle of the high state of the data clock DCLK. weight clock W
The CLK signal is a synchronous clock for capturing weighted serial data. The data clock DCLK signal is a basic clock for processing analog input signals. The synchronization signal 5YNC is a synchronization signal for synchronizing each analog neuron processor ANP in one layer in each layer. The change in the output voltage of the integrator is shown by the waveform shown by the triangle at the bottom.

積分波形は、サンプル/ホールド制御信号SHのパルス
で制御され、このパルスがハイの間、積分の動作を実行
する。すなわち、積分器のキャパシタCに対する充電を
開始し、このサンプル/ホールド制御信号SHのパルス
がハイの間は、このキャパシタに徐々に電荷が蓄積され
て電圧は上がるが、サンプル/ホールド制御信号SHの
パルスがロウとなって遮断されると、充電動作を停止す
る。
The integration waveform is controlled by pulses of the sample/hold control signal SH, and while this pulse is high, an integration operation is performed. That is, when charging of the capacitor C of the integrator is started, and while the pulse of the sample/hold control signal SH is high, charge is gradually accumulated in this capacitor and the voltage increases, but the voltage of the sample/hold control signal SH is high. When the pulse becomes low and is cut off, the charging operation is stopped.

従って、この積分時間範囲でのチャージ分だけが意味を
持つ。サンプル/ホールド制御信号のパルスの幅によっ
て比例配分された電圧、即ち、入力電圧に積分ゲインを
掛けたものとなる。すなわち、入力サンプル/ホールド
制御信号S/Hのパルス幅がPのとき、キャパシタCに
充電される電圧は■3であり、サンプル/ホールド制御
信号S/Hのパルス幅Wのとき充電電圧はV、l とな
る。
Therefore, only the charge amount within this integration time range is meaningful. The voltage is proportionally distributed depending on the pulse width of the sample/hold control signal, that is, the input voltage is multiplied by the integral gain. That is, when the pulse width of the input sample/hold control signal S/H is P, the voltage charged to the capacitor C is 3, and when the pulse width of the sample/hold control signal S/H is W, the charging voltage is V. , l.

サンプル/ホールド制御信号SHが下がり、スイッチン
グ制御より積分器のキャパシタの極性が変わり、オフセ
ット分が加算されている積分出力は反転する。そして、
オフセットコントロール信号OCがハイ状態でサンプル
/ホールド制御信号SHが再び立ち上がると、オフセッ
ト電圧■5(vb ’ )がそのキャパシタに加算され
、SH倍信号立ち下がった時点では、結果としてオフセ
ット分がキャンセルされた積分出力値Va−V。
The sample/hold control signal SH falls, the polarity of the integrator capacitor changes due to switching control, and the integrated output to which the offset has been added is inverted. and,
When the sample/hold control signal SH rises again while the offset control signal OC is in a high state, the offset voltage ■5 (vb') is added to the capacitor, and when the SH multiplier signal falls, the offset is canceled as a result. The integrated output value Va-V.

(V、  ′−V、  ′)を極性をもどしてサンプル
/ホールドされる。
(V,'-V,') is sampled/held with its polarity restored.

次に、階層型ニューラルネットワークを説明する。第7
A図は階層型ネットワークの概念図である。階層型では
左側の入力層の入力ノード110から入った入力データ
は順次右側の方向に向かって1方向にだけ処理されてい
く。中間層の各ニューロン112は、ダミーノード11
1を含む前の層の出力をそれぞれ層内の完全結合で受け
るようになっている。入力層に例えば4個の入力ツード
ア 110があると、それにダミーノード111の1個がた
され、中間層の各ニューロン112からみると入力層は
5つのニューロンに見えている。ここで、ダミーノード
111とは、スレッシュホールドをコントロールするも
ので、積和の結果Xのシグモイド関数 の値Xに一定値−θを加えることによりX軸の正方向に
シフトさせた値f (X−θ)にするものである。これ
はダミーノード111に対応する重みをニューロン内で
変えることと等価であるが、後述するマックスバリュー
ノード回路を用いて、定値θを生成している。このよう
に、ダミーノドに対する重みを用意しておけば、闇値を
重みで表現することができる。そして出力層のニューロ
ン112から中間層はニューロンが4個あるようにみえ
る。入力層に加えられた入力データは、中間層ニューロ
ン112、出力層ニューoンl 12で重みデータを用
いてそれぞれ積和演算を施され、結果として出力データ
を発生する。
Next, a hierarchical neural network will be explained. 7th
Diagram A is a conceptual diagram of a hierarchical network. In the hierarchical type, input data input from the input node 110 of the input layer on the left side is processed in only one direction, sequentially toward the right side. Each neuron 112 in the middle layer is a dummy node 11
The outputs of the previous layer including 1 are received by complete connections within each layer. If there are, for example, four input two-doors 110 in the input layer, one dummy node 111 is added to them, and when viewed from each neuron 112 in the intermediate layer, the input layer appears to be five neurons. Here, the dummy node 111 controls the threshold, and is a value f (X −θ). This is equivalent to changing the weight corresponding to the dummy node 111 within the neuron, but the constant value θ is generated using a max value node circuit, which will be described later. In this way, by preparing weights for dummy throats, it is possible to express darkness values using weights. It appears that there are four neurons in the intermediate layer starting from neuron 112 in the output layer. The input data applied to the input layer is subjected to a sum-of-products operation using weight data in the intermediate layer neuron 112 and the output layer neuron 12, respectively, and output data is generated as a result.

第7A図に示した階層型構造のものを本発明のANPを
用いて実現すると、第7B図のように、各層間、つまり
人力と中間層との間、中間層と出力層の間、出力層の出
力にそれぞれの独立のアナログバスB1.B2.B3を
設けることになφ。
When the hierarchical structure shown in FIG. 7A is realized using the ANP of the present invention, as shown in FIG. Each independent analog bus B1. B2. It is necessary to provide B3.

縦方向のA N Pは全部並列に実行できるという構造
になる。出力層の出力にはサンプルホールド回路SHを
付ける。
The structure is such that all vertical ANPs can be executed in parallel. A sample and hold circuit SH is attached to the output of the output layer.

第8図は階層ニューラルネットワークを実現する本発明
のニューロコンピュータのブロック図である。ニューロ
チップからアナログニューロンプロセッサANP 1〜
5を各層に並列に配置し、各層間に独立にアナログバス
(Bl、B2.B3)を設ける。同図において、ANP
i  2.3で中間層を形成し、ANP4.5で出力層
を形成する。
FIG. 8 is a block diagram of a neurocomputer of the present invention that implements a hierarchical neural network. Analog neuron processor ANP 1~ from neurochip
5 are arranged in parallel on each layer, and analog buses (Bl, B2, B3) are provided independently between each layer. In the same figure, ANP
An intermediate layer is formed using i2.3, and an output layer is formed using ANP4.5.

また、入力段のANPはなく、入力側にはアナログ入力
信号をタイミングよく入力するためのデイジー回路17
1.172が存在する。S/Hで示す回路はサンプル/
ホールド回路173,174である。ANP1〜5には
それぞれコントロール用のロジック信号が必要であるの
で、マスクコントロールブロック(MCB)181から
各層に多くの制御信号線を送り込む。データクロックD
CLKはすべてのANPの入力側のデイジー回路171
と172に与えられ、アナログ処理の基本クロックとな
る。重みクロックWCLKもすべてのANPと入力側の
デイジー回路171.172に与えられ、重みデータ用
の高速クロックである。
Also, there is no ANP in the input stage, and the input side has a daisy circuit 17 for inputting analog input signals with good timing.
1.172 exists. The circuit indicated by S/H is a sample/
These are hold circuits 173 and 174. Since each of ANP1 to ANP5 requires logic signals for control, many control signal lines are sent from the mask control block (MCB) 181 to each layer. data clock D
CLK is the daisy circuit 171 on the input side of all ANPs.
and 172, and serves as the basic clock for analog processing. Weight clock WCLK is also given to all ANPs and input side daisy circuits 171 and 172, and is a high speed clock for weight data.

重みメモリブロック185,186から各ANP4.5
及びANPI、2.3にはその重みクロックWCLKに
同期して重みデータが入力される。
Each ANP4.5 from weight memory blocks 185 and 186
Weight data is input to ANPI and ANPI 2.3 in synchronization with the weight clock WCLK.

また、同期信号5YNCIは中間層のANPに与えられ
る層の同期クロックで同期信号5YNC2は出力層のA
NPに与えられる層の同期クロックである。SHIとO
Clは中間層のANPに対するサンプル/ホールド制御
信号とオフセットコントロール信号、SH2とOC2は
出力層のANPに対するサンプル/ボールド制御信号と
オフセットコントロール信号である。
Also, the synchronization signal 5YNCI is the layer synchronization clock given to the intermediate layer ANP, and the synchronization signal 5YNC2 is the output layer ANP.
This is the layer synchronization clock given to the NP. SHI and O
Cl is a sample/hold control signal and an offset control signal for the ANP in the intermediate layer, and SH2 and OC2 are a sample/bold control signal and offset control signal for the ANP in the output layer.

左側のブロックであるデイジー回路171,172は、
人力層に相当する入力側回路である。入力ノード、つま
り入力層内のニューロンを実現するために、アナログ信
号を時分割でANPが出すのと同じタイミングで、アナ
ログ入力ポート0゜1より与えられるアナログ入力信号
を回路内に入力しなければならない。つまり、出力層か
らみれば、出力層のANP4.5は前の中間層のANP
l、2.3からアナログ信号をアナログバスB2を介し
て時分割で受けることを基本動作としている。これと同
し関係が中間層と入力層にも存在しなければならない。
Daisy circuits 171 and 172, which are blocks on the left, are
This is an input side circuit corresponding to the human power layer. In order to realize an input node, that is, a neuron in the input layer, the analog input signal given from the analog input port 0°1 must be input into the circuit at the same timing as the ANP outputs the analog signal in time division. It won't happen. In other words, from the perspective of the output layer, the ANP of the output layer is 4.5, which is the ANP of the previous intermediate layer.
The basic operation is to receive analog signals from 1 and 2.3 in a time-division manner via analog bus B2. This same relationship must exist in the intermediate layer and the input layer.

入力層と中間層の関係は、中間層のANPから見るとそ
の前に入力層のANPがあるように見えなければいけな
い。このことは、中間層のANPがアナログバスB2に
アナログ信号を出力するタイミングと同じ機能でアナロ
グ入力ボート0.1からのアナログ人力信号に対しても
決まった規則でアナログバスB1に出力しなくてはなら
ないという制約がある。即ちアナログ入力ボート0.1
からの入力信号はアナログバスB1に時分割に乗ってく
る。アナログ人力ボートOからのアナログ信号は、適当
なタイミングでアナログバスB1に乗るが、そこに出力
した次のタイミングで、アナログ入力ボート1からの次
のアナログ入力信号が同じアナログバスB1に乗る。こ
の同期をとるために一定のタイミングで出される入力制
御信号C8Iをデイジー回路171が人力し、一定時間
後に、その回路から出力制御信号C8Oが出される。こ
のC3Iはマスクコントロール回路181のC3O1か
ら出力される。デイジー回路171,172は一種の遅
延回路である。
The relationship between the input layer and the intermediate layer must be such that when viewed from the intermediate layer ANP, it appears that the input layer ANP is in front of it. This means that the middle layer ANP has the same function as the timing for outputting an analog signal to the analog bus B2, and the analog human input signal from the analog input port 0.1 must also be output to the analog bus B1 according to a fixed rule. There is a restriction that it cannot be done. i.e. analog input port 0.1
The input signals from the input terminals are time-divisionally routed onto the analog bus B1. The analog signal from the analog human-powered boat O gets on the analog bus B1 at an appropriate timing, but at the next timing after being output there, the next analog input signal from the analog input boat 1 gets on the same analog bus B1. In order to achieve this synchronization, the daisy circuit 171 manually outputs an input control signal C8I that is output at a certain timing, and after a certain period of time, an output control signal C8O is output from the circuit. This C3I is output from C3O1 of the mask control circuit 181. Daisy circuits 171 and 172 are a type of delay circuit.

各デイジー回路171はマスクコントロール181から
入力制御信号C3Iを人力すると、自分は縦方向に隣接
する次のデイジー回路172に対して、アナログ入力ボ
ート1のアナログ出力信号を出すように、C8O信号を
次に渡すことになる。
When each daisy circuit 171 inputs the input control signal C3I from the mask control 181, it transmits the C8O signal to the next vertically adjacent daisy circuit 172 so as to output the analog output signal of the analog input port 1. will be handed over to.

この動作をデイジー制御と呼ぶ。This operation is called daisy control.

マスクコントロール回路181のC3O1が立ち上がる
と、スイッチ175がオンし、サンプル/ホールド回路
173に保持されているアナログ入力ボートOのアナロ
グ入力信号はアナログバスB1に乗る。C3OIはデイ
ジー回路171のC3Iであるから、これが立ち下がっ
てから一定時間後にC8Oが立ち上がる。これはデイジ
ー回路172のC3Iであると同時に、スイッチ176
を制御してオンにさせるので、サンプル/ホールド回路
174に保持されていたアナログ入力ボート1のアナロ
グ入力信号をバスB1に乗せる。階層構造になった本シ
ステムでは、このデイジー制御が必要となる。つまり、
アナログ入力信号に対してアナログ入力ボートOからサ
ンプル/ホールド回路173を介してアナログバスB1
に出力すれば、次にアナログ入力信号に対してアナログ
入力ボート1からサンプル/ホールド回路174を介し
て同じアナログバスB1に出力させることになる。中間
層の各ニューロンでみているとアナログ人力ボート0の
アナログ入力信号とアナログ入力ボート1からの次のア
ナログ入力信号とは時分割で逐次に入ってくる。
When C3O1 of the mask control circuit 181 rises, the switch 175 is turned on, and the analog input signal of the analog input port O held in the sample/hold circuit 173 is transferred to the analog bus B1. Since C3OI is C3I of the daisy circuit 171, C8O rises after a certain period of time after C3OI falls. This is C3I of daisy circuit 172 as well as switch 176.
is controlled and turned on, so that the analog input signal of analog input port 1 held in sample/hold circuit 174 is placed on bus B1. This system, which has a hierarchical structure, requires this daisy control. In other words,
The analog input signal is connected to the analog bus B1 from the analog input port O through the sample/hold circuit 173.
Then, the analog input signal is output from the analog input port 1 to the same analog bus B1 via the sample/hold circuit 174. Looking at each neuron in the intermediate layer, the analog input signal from analog human-powered boat 0 and the next analog input signal from analog input boat 1 are inputted sequentially in a time-sharing manner.

各デイジー回路171.172は、アナログバスB1上
のバス競合を防ぐために、入力制御信号C3Iを特定の
時間だけ遅延させて出力制御信号C8Oを出す。
Each daisy circuit 171, 172 outputs an output control signal C8O by delaying the input control signal C3I by a specific time to prevent bus contention on the analog bus B1.

中間層においても、マスクコントロールブロック181
からの出力制御信号C3O2をC3Iとして受けるAN
P 1がアナログ信号を出力したら、C8OをC8Iと
してANP2に渡すと、次にANP2が出力する。AN
P2のC8OをC3Iとして受けるANP3が次にアナ
ログ信号を出力すことになる。要するに、ここではAN
PI、2゜3の順に出力し、中間層のデイジー動作が終
わる。
Also in the middle layer, the mask control block 181
AN that receives the output control signal C3O2 from as C3I
When P1 outputs an analog signal, C8O is passed to ANP2 as C8I, and then ANP2 outputs it. AN
ANP3, which receives C8O of P2 as C3I, will output an analog signal next. In short, here AN
PI and 2°3 are output in this order, and the daisy operation of the intermediate layer is completed.

これと並行して全ての動作を管理しているマスクコント
ロールブロック181は、出力層のANP4にC3O3
を与えるとANP 4が出力し、出力完了後、ANP4
がANP5にC8Oを与えるとANP5が出力する。
In parallel with this, the mask control block 181, which manages all operations, supplies C3O3 to ANP4 of the output layer.
When given, ANP 4 outputs, and after the output is completed, ANP 4
gives C8O to ANP5, ANP5 outputs.

出力層のANP4.5からの出力は、それぞれマスクコ
ントロールブロック181からC8O3信号及びANP
4からのデイジ−チェーン用出力制御信号C8Oによっ
てそれぞれサンプル/ホールド回路177.178でサ
ンプル/ホールドされる。この出力電圧は、アナログ出
力ボート0゜1からアナログ出力信号として出力される
他、アナログマルチプレクサ179で選択された後、A
/Dコンバータ180でA/D変換され、MPU182
、メモリ183、通信インタフェイス184から構成さ
れるディジタル制御手段に入力される。そして、MPU
182で例えば学習時に与えたMPU内に蓄えられた教
師信号と比較し、所望の出力信号であるかのヂエソクを
行い、この結果に基づいて後述する重みメモリの重みデ
ータを変更する。マックスバリューノード回路187は
マスクコントロールブロック181からダミーノード制
御信号DC3L、DC32が出力イネーブル1及び2に
加えられるとともに、出力端子はアナログバスBl、B
2に接続される。
The output from ANP4.5 of the output layer is the C8O3 signal and ANP from the mask control block 181, respectively.
The sample/hold circuits 177 and 178 sample/hold the daisy-chain output control signal C80 from the output signal C80. This output voltage is output as an analog output signal from the analog output port 0.1, and is also selected by the analog multiplexer 179 and then
/D converter 180 performs A/D conversion, and MPU 182
, a memory 183, and a communication interface 184. And MPU
At step 182, for example, it is compared with a teacher signal stored in the MPU given during learning to check whether it is a desired output signal, and based on this result, weight data in a weight memory, which will be described later, is changed. Max value node circuit 187 receives dummy node control signals DC3L and DC32 from mask control block 181 to output enable 1 and 2, and output terminals are connected to analog buses Bl and B.
Connected to 2.

第9A図は第8図に示した実施例にかかる階層型ニュー
ロコンピュータのタイミング図である。
FIG. 9A is a timing diagram of the hierarchical neurocomputer according to the embodiment shown in FIG. 8.

各層別にその制御信号線が抜き出して書かれている。、
まず基本的な動作クロックであるデータクロツクDCL
Kと重みクロックWCLKは同一層のすべてのANPや
入力側のデイジー回路171172に同時に入る。
Control signal lines are extracted and written for each layer. ,
First, the data clock DCL, which is the basic operating clock.
K and the weight clock WCLK enter all the ANPs in the same layer and the daisy circuit 171172 on the input side at the same time.

重みクロックWCLKは、重みのディジタルデータをシ
リアルで送り込むためのシリアル同期パルスで、重みメ
モリブロックから重みを読み出すための同期クロックで
ある。どのタイミングで、入力データを取り込むかはそ
れぞれの制御信号で規定する。まず第9A図のタイミン
グチャートにおいて、C801はマスクコントロールブ
ロック1131から出力されるデイジ−チェーン用制御
信号C801、すなわちデイジー回路171へのデイジ
−チェーン用制御信号C3Iである。デイジー回路17
1において、C3Iが1番目のアナログ入力信号をアナ
ログ入力ボート0からサンプル/ホールド回路5H17
3を介してアナログバスB1に出力させる。すなわちタ
イミングチャートの■においてアナログ信号をアナログ
バスB1に出力させる。この瞬間に、アナログバスB1
上に電圧が乗り、ANPI、ANP2.ANP3はこの
アナログ信号に対して並列に積和演算を行う。
The weight clock WCLK is a serial synchronization pulse for serially sending the digital data of the weight, and is a synchronization clock for reading the weight from the weight memory block. The timing at which input data is taken in is determined by each control signal. First, in the timing chart of FIG. 9A, C801 is the daisy-chain control signal C801 output from the mask control block 1131, that is, the daisy-chain control signal C3I to the daisy circuit 171. Daisy circuit 17
1, C3I outputs the first analog input signal from analog input port 0 to sample/hold circuit 5H17.
3 to the analog bus B1. That is, the analog signal is output to the analog bus B1 at point (■) in the timing chart. At this moment, analog bus B1
Voltage is applied to the top, ANPI, ANP2. ANP3 performs a sum-of-products operation on this analog signal in parallel.

そのC8Oがデイジー回路171を通過し、C8Oが立
ち下がってから所定時間後に次のC3Iが■に示ずよう
に立ち上がり、デイジー回路172にそのC8Iが入る
。次のC8■は入力層の2番目のデイジー回路172に
入る制御信号である。
The C8O passes through the daisy circuit 171, and after a predetermined time after the C8O falls, the next C3I rises as shown in (■), and the C8I enters the daisy circuit 172. The next C8 is a control signal that enters the second daisy circuit 172 in the input layer.

そしてC3Iがハイの間にアナログ入力ボート1からア
ナログ入力信号をサンプル/ホールド回路S H174
を介してANPI、ANP2.ANP3に入力し、ここ
で積和演算を行う。マスクコントロールブロック181
かものII)C31は、ダミーノードへの制御信号であ
る。各層とも入力の他にダミーノードからの信号がある
のでにニーロンノード数+1)個のノードの形態であり
、入力層では2人力であるが、各中間層のANPからみ
ると3人力であるように見える。これを時間的に説明す
ると、2つのC3Iと1つのDC31で1つのブロック
となる制御信号である。入力のサイクルは、最初のC3
Iから始まり、DC31のダミーへの入力で終わる。ダ
ミーノードはマンクスバリューノード回路187であり
、その回路はDC3Iが入力されている間アナログバス
に固定されたある閾値電圧を出力する。すなわち■で示
すようにDC3Iが立ち上がってからこの電圧が出力さ
れている間、中間層の各ANPは通常の入力と同様に積
和演算を行って、その固定電圧が前の2つのアナログ入
力信号の積和演算されたものの結果に加えられることに
なる。すなわち、掛は算後、足し算を実行する。5YN
CIは、csoiが立ち上がる前のDCLKの立ち下が
りでハイとなり、[)C31が立ち上がってから次のD
CLKの立ち下がりでロウとなる。これは入力層の同期
をとる信号である。WCLKが人力されている間でアナ
ログ入力と重みデータの掛は算が行われる。
Then, while C3I is high, the sample/hold circuit S H174 samples the analog input signal from analog input port 1.
ANPI, ANP2. The signal is input to ANP3, and sum-of-products calculation is performed here. Mask control block 181
Kamono II) C31 is a control signal to the dummy node. In addition to the input, each layer has a signal from a dummy node, so the number of Neelon nodes + 1) nodes is required, and the input layer requires 2 people, but from the ANP of each middle layer, it requires 3 people. appear. To explain this in terms of time, two C3Is and one DC31 constitute one control signal. The input cycle is the first C3
It starts with I and ends with the input to the dummy of DC31. The dummy node is a Manx value node circuit 187, which outputs a fixed threshold voltage on the analog bus while DC3I is input. In other words, as shown by ■, while this voltage is being output after DC3I rises, each ANP in the intermediate layer performs a sum-of-products operation in the same way as a normal input, and the fixed voltage is used as the previous two analog input signals. will be added to the result of the product-sum operation. In other words, after multiplication, addition is performed. 5YN
CI goes high at the falling edge of DCLK before csoi rises, and the next D after C31 rises.
It becomes low at the falling edge of CLK. This is the signal that synchronizes the input layer. While WCLK is being input manually, the analog input and weight data are multiplied.

中間層のANPに入るサンプル/ホールド信号SH1に
は、2つの山Ml、M2が出力されているが、最初の山
M1の少し前で積をとり山の部分で和を生成し、ホール
ドする。そして、次の山M2でオフセット電圧Vb  
(第6図参照)を差し引いてサンプル/ホールドする。
Two peaks M1 and M2 are output to the sample/hold signal SH1 that enters the ANP of the intermediate layer, and the product is multiplied slightly before the first peak M1, and the sum is generated at the peak and held. Then, at the next peak M2, the offset voltage Vb
(See Figure 6) and sample/hold.

このような処理を入力されるすべてのアナログ信号につ
いて順次繰り返し行い、積和の計算が終わる。この場合
はダミーを含めて中間層の各ANPは積和演算を3回実
行する。これで中間層の各ANPの処理は終わり、3人
力に対する積の加算までが終了する。
Such processing is sequentially repeated for all input analog signals, and the calculation of the sum of products is completed. In this case, each ANP in the middle layer, including the dummy, executes the sum-of-products operation three times. This completes the processing of each ANP in the middle layer, and ends the addition of products for the three human forces.

また、タイミングチャートに於いてDC31が立ち下が
った直後のDCLKがハイのとき、アナログ2カボート
0.1.ダミーノードから3つの信号について積和演算
した結果が各ANPI、2゜3のキャパシタ(第4図、
サンプル/ホール1部45内の06)にホールドされる
。このような動作が基本的に繰り返されることになるが
、中間層と出力層との間にあるアナログバスB2にAN
Plの出力信号をいつ出力するかということはマスクコ
ントロールブロック181から出されるC802の信号
の立ち上がりで決まる。
Also, in the timing chart, when DCLK is high immediately after DC31 falls, analog 2 covers 0.1. The result of the product-sum calculation for the three signals from the dummy node is each ANPI, a 2°3 capacitor (Fig. 4,
It is held at 06) in the sample/hole 1 section 45. This kind of operation is basically repeated, but AN
When to output the Pl output signal is determined by the rising edge of the C802 signal output from the mask control block 181.

SHIの下に示したオフセットコントロール制御信号O
CIはANPの内部においてオフセットキャンセルを行
う。すなわち各ANPは内部的にオペアンプを含むアナ
ログ回路であって、回路自体がオフセットを持っている
ため、このオフセットをキャンセルするための制御信号
がOC信号である。OClに示されるように積和の演算
が1つ実行される毎に1つのパルスが出され、内部にお
いてオフセットキャンセルが実行されている。タイミン
グチャートでは■で示すようにC3O2が立ち上がると
ともにANPIからアナログバスB2にANP 1にホ
ールドされていた信号が出力し、C3O2がハイの間に
出力層のANP4が積和演算を行う。■で示されるC3
O2の立ち上がりはその前の入力結果の積和の結果を出
力するタイミングである。
Offset control control signal O shown below SHI
CI performs offset cancellation inside ANP. That is, each ANP is an analog circuit that internally includes an operational amplifier, and since the circuit itself has an offset, the control signal for canceling this offset is the OC signal. As shown in OCl, one pulse is output every time one product-sum operation is executed, and offset cancellation is executed internally. In the timing chart, as shown by ■, when C3O2 rises, the signal held in ANP1 is output from ANPI to analog bus B2, and while C3O2 is high, ANP4 in the output layer performs a sum-of-products operation. C3 indicated by ■
The rise of O2 is the timing for outputting the product-sum result of the previous input results.

次に、第9図を使って中間層と出力層との間のタイミン
グを説明する。
Next, the timing between the intermediate layer and the output layer will be explained using FIG.

なお、同図において、中間層からのデイジ−チェーン制
御信号の出力■、■、■、■及び出力層からの出力■、
■に同期してアナログバス上にあられれるアナログ信号
は上述した入力層からのデイジ−チェーン制御信号の出
力■、■、■に同期してアナログバス上に入力されるア
ナログ信号に対して■処理サイクル前の結果が現れるこ
とになる。パイプライン処理の実行は後で説明するが、
タイミングチャートの■で示されるC802の立ち上が
り時において、ANPIの出力が出される。
In the figure, outputs of daisy chain control signals from the intermediate layer ■, ■, ■, ■ and outputs from the output layer ■,
The analog signal that is applied to the analog bus in synchronization with ■ is processed by the analog signal that is input on the analog bus in synchronization with the output of the daisy chain control signal from the input layer described above ■, ■, ■. The results from before the cycle will appear. The execution of pipeline processing will be explained later, but
At the rise of C802, which is indicated by ■ in the timing chart, the ANPI output is output.

■に示されるC3O2の立ち上がり時にタイミングチャ
ー) S H2の信号を見るとパルスが2つ出されてい
る。SH2H2O28図のブロック図において、出力層
の第1番目のANP4に入力されている。すなわちSH
2H2O2つの山のパルスにおいて、ANP4内で和の
演算が1つ実−行される。中間層には図に示されるよう
にANPI、2゜3の3つの中間層のニューロンがある
が、マックスバリューノード回路187によるダミーノ
ードが1つ加えられ、合計4つのニューロンがあると仮
定されている。従ってSH2H2O22つのパルスが■
の部分から見て4回出力されており、このS H2信号
の4組の山のパルスで中間層のアナログ信号がANP4
に入力され積和が演算される。
When looking at the S H2 signal (timing chart) shown in (2) at the rise of C3O2, two pulses are output. In the block diagram of FIG. SH2H2O28, it is input to the first ANP4 of the output layer. That is, S.H.
One sum operation is performed in ANP 4 in the two peak pulses of 2H2O. As shown in the figure, there are three intermediate layer neurons of ANPI and 2°3 in the intermediate layer, but one dummy node is added by the max value node circuit 187, so it is assumed that there are four neurons in total. . Therefore, the two pulses of SH2H2O2 are ■
The analog signal in the middle layer is output as ANP4 by the four sets of peak pulses of this S H2 signal.
The sum of products is calculated.

この動作は当然、中間層のANPが入力信号に対して積
和演算をしているタイミングと同時に行っていることに
なり、これはパイプライン処理となっている。C3O2
の下の信号は中間層にあるANPIのC8Oの信号で、
これは同じ中間層のANP2に対するC8Iである。こ
れが■で示されている部分である。その下はANP2の
C8Oでその下はANP3のC3Iでこれが■である。
Naturally, this operation is performed at the same time as the intermediate layer ANP is performing the product-sum operation on the input signal, and this is pipeline processing. C3O2
The signal below is the ANPI C8O signal in the middle layer,
This is the C8I for ANP2 in the same middle layer. This is the part indicated by ■. Below that is C8O of ANP2, and below that is C3I of ANP3, which is ■.

その下がANP3のC8○であり、その下の■がダミー
ノードのC3IであってこれはDC32、ずなわちマス
タコントロールブロックから出される信号である。C3
Iで見ると■、■、■、■の順序でそれぞれ中間層のA
NPI、ANP2.ANP3、そしてダミーノードのマ
ックスバリューノード回路187に人力される。この間
S H2信号は2つの山を持つパルス信号を4つ出して
いる。
Below it is C8○ of ANP3, and below it is C3I of the dummy node, which is the signal output from DC32, that is, the master control block. C3
Looking at I, the middle class A is in the order of ■, ■, ■, ■.
NPI, ANP2. ANP3 and the max value node circuit 187 of the dummy node are manually operated. During this time, the S H2 signal outputs four pulse signals with two peaks.

すなわち、ANP4の出力層のニューロンは人力アナロ
グ信号と重みとの積を4つ分加えることになる。■の部
分でANPIにC3Iが人力している時にはANPIか
らアナログ信号が中間層と出力層の間のアナログバスに
信号が出され、これがANP4に入力される。そしてこ
の時、対応する重みデータがANP4に入力され、それ
と共に積が実行され、SH2H2O21の山で加算され
、第2の山でサンプル/ホールドされる。そしてこの計
算が終わると、ANPIからC8Oの信号が立ち上がり
、これがANP2のC3Iとなる。これが■の状態であ
り、この時重みデータとアナログバス上のデータとが掛
は算され、和が計算される。■が立ち下がったあと所定
時間後にANP3へのC8Iがハイとなり■で示ずよう
にANP4で積和演算が行われる。このような積和の演
算がANPd内で計算され、■のところでマックスバリ
ューノード回路187から出力される固定電圧がANP
4に人力され、これが内部のいままで蓄えられた積和に
加えられることになる。
That is, the output layer neuron of ANP4 adds four products of the human input analog signal and the weight. In the part (2), when the C3I is manually inputting to the ANPI, an analog signal is output from the ANPI to the analog bus between the intermediate layer and the output layer, and this signal is input to the ANP4. And at this time, the corresponding weight data is input to ANP4, and the product is performed with it, summed at the peak of SH2H2O21, and sampled/held at the second peak. When this calculation is completed, the signal C8O rises from ANPI, and this becomes C3I of ANP2. This is the state (2), and at this time the weight data and the data on the analog bus are multiplied and the sum is calculated. C8I to ANP3 goes high after a predetermined period of time after {circle around (2)} falls, and a sum-of-products operation is performed in ANP4 as shown by {circle around (2)}. Such a product-sum operation is calculated in ANPd, and the fixed voltage output from the max value node circuit 187 at point (3) is calculated in ANPd.
4, and this is added to the sum of products that has been stored inside.

以上の動作は出力層のANP5に対しても並行して行わ
れる。ここに同時処理がある。ANP 4で計算された
積和演算の結果が出力層に接続されたアナログバスB3
に出力されるタイミングはマスクコントロールブロック
181から出されるC3O3の立ち上がりである。マソ
クスバリニーノド回路187がアナログバスB2に出力
するための制御信号がDC32であって、これが■に対
応する。このDC32までは中間層における計算結果を
出力するまでの動作である。タイミングチャートのこれ
よりも下に書いである信号に対しては同じような動作で
あり、中間層とカスケードに接続された出力層側の動作
を規定する信号パルスである。C3O3が立ち上がると
、ANP4で1算された積和演算の結果が出力されるこ
とになる。
The above operations are performed in parallel on the ANP5 of the output layer. There is simultaneous processing here. The result of the product-sum operation calculated by ANP 4 is connected to the analog bus B3 to the output layer.
The timing at which this signal is output is the rising edge of C3O3 output from the mask control block 181. The control signal for output by the MASOX BALINE node circuit 187 to the analog bus B2 is DC32, which corresponds to (2). The operation up to DC32 is the operation up to outputting the calculation result in the intermediate layer. The signals below this in the timing chart operate in a similar manner, and are signal pulses that define the operation of the output layer connected in cascade to the intermediate layer. When C3O3 rises, the result of the sum-of-products operation, which is incremented by 1 at ANP4, is output.

出力層ではANP4、ANP5の2個が出力される。な
お、例えば■のC3O2の立ち上がりは、ANP 1に
入る信号で、この立ち上がりはDCLKよりも遅れてい
る。これはアナログ入力信号とディジタル重みデータと
の積演算を行う場合、WCLKてディジタルデータを読
み込む時にシリアルであって、これを内部でパラレルに
変換するディジタルデータの読み込み時間とアナログ入
力信号がD/Aコンバータすなわち乗算処理部に到達す
るまでの時間を考慮してC3O2の立ち上がりを遅ら(
でいるからである。すなわち、最初の頭の部分でズして
いるのは、データの呼び出し、つまりシリアルデータの
読み込み時間が含まれている。データがセットし終わる
のはDCLKの立ち上がりから、しばらくたった時間す
なわちWCLKで16サイクル後である。アナログ乗算
の開始時間はC3O2が立ち上がってからWCLKで8
サイクルたった後である。
In the output layer, two ANP4 and ANP5 are output. Note that, for example, the rise of C3O2 in ■ is a signal that enters ANP 1, and this rise is delayed from DCLK. This is because when performing a product operation between an analog input signal and digital weight data, it is serial when reading digital data using WCLK, and the digital data reading time to internally convert it to parallel and the analog input signal is D/A. The rise of C3O2 is delayed by taking into account the time it takes to reach the converter, that is, the multiplication processing unit (
This is because it is. In other words, what is missing at the beginning includes the time required to call the data, that is, read the serial data. The data setting ends after a while after the rise of DCLK, that is, after 16 cycles of WCLK. The start time of analog multiplication is 8 on WCLK after C3O2 rises.
After the cycle.

第10図は、ディジタル重みデータの読み込みタイミン
グを示すタイミングチャートである。同図において、マ
スタクロックMCLK、同期信号5YNC,重みクロッ
クWCL K、データクロックDCLK、実際の重みデ
ータWDATAが示されている。重みデータWDATA
は重みメモリからビットシリアルで読み出され、16ビ
ツトがシリアルに人力される。Sはサインビットで、B
14〜BOまでが数値ビットである。同図において重み
データWDATAのB8.B7.B6の部分が重みクロ
ックWCLKとの対応として図の下方に拡大された形で
表現されている。重みクロックWCLKは周期が250
 n5ecでデユーティ比50%になっている。WCL
Kの立ち下がりからシーケンサ内部にあるアドレス更新
用のカウンタの伝播遅延時間後に重みメモリにアドレス
が与えられる。即ち重みメモリ (RAM)のビットn
のアドレスは重みデータWDATAのビット7が格納さ
れている重みメモリのアドレスである。このアドレスが
確定した後、tAA時刻後にビット7が読み出されてい
る。ビット7からビット6への変化は重みクロックの次
の周期への変化によって決まり、ビット6は次の周期で
読み出されている。重みデータの16ビツトはANPに
入力され、ANPに入力されるアナログ電圧との積が内
部のD/Aコンバータによって計算されるので、アナロ
グ電圧の入力開始は、データクロツタDCLKからの立
ち上がりからずっと後に入力される。即ち、アナログ入
力電圧は入力されてからD/Aコンバータに到達される
までの時間があるのでその時間とディジタル重みデータ
が内部にセントされる時間とを制御し、重みデータの到
着時間とアナログの到着時間がちょうど一致するように
アナログ電圧を入力する必要がある。
FIG. 10 is a timing chart showing the timing of reading digital weight data. In the figure, a master clock MCLK, a synchronization signal 5YNC, a weight clock WCLK, a data clock DCLK, and actual weight data WDATA are shown. Weight data WDATA
is read bit serially from the weight memory, and 16 bits are entered serially. S is the sign bit, B
14 to BO are numerical bits. In the figure, B8. of weight data WDATA. B7. The portion B6 is shown enlarged in the lower part of the diagram in correspondence with the weighted clock WCLK. The weight clock WCLK has a period of 250
The duty ratio is 50% in n5ec. W.C.L.
The address is given to the weight memory after the propagation delay time of the address update counter inside the sequencer from the fall of K. i.e. bit n of weight memory (RAM)
The address is the address of the weight memory where bit 7 of the weight data WDATA is stored. After this address is determined, bit 7 is read out after time tAA. The change from bit 7 to bit 6 is determined by the change to the next cycle of the weight clock, with bit 6 being read out in the next cycle. The 16 bits of weight data are input to ANP, and the product with the analog voltage input to ANP is calculated by the internal D/A converter, so the analog voltage input starts long after the rise from the data clock DCLK. be done. That is, since there is a time from when the analog input voltage is input until it reaches the D/A converter, that time and the time when the digital weight data is sent internally are controlled, and the arrival time of the weight data and the analog input voltage are controlled. You need to input the analog voltage so that the arrival times exactly match.

例えば、アナログ入力端子の立ち上がりは、重みデータ
のB7あたりから立ちあげ、重みデータのBOが入力さ
れ、その後すべての重みデータが内部で確定した頃にそ
のアナログ値との乗算がスタートするように時間の制御
をとる必要がある。
For example, the analog input terminal rises from around B7 of the weight data, the weight data BO is input, and the time is set so that the multiplication with the analog value starts when all the weight data is internally determined. It is necessary to take control of the

そして加算はDCLKが次にロウになる期間で行われる
The addition is performed during the next period when DCLK becomes low.

ANPの動作時間は、5YNC信号とWCLK。ANP operation time is 5YNC signal and WCLK.

及びデータDCLKで規定される。そしてアナログ入力
電圧はANPの入力端子からディジタル重みデータと積
を実行するD/Aコンバータ迄の電圧到達時間等にかな
りの時間誤差があるので、マージンを見込んでC3Iの
立上りはDCLKの立上りより遅れたところから始まる
ことになる。
and data DCLK. Since the analog input voltage has a considerable time error in the time it takes for the voltage to arrive from the input terminal of the ANP to the D/A converter that performs the product with the digital weight data, the rise of C3I is delayed from the rise of DCLK to allow for a margin. It will start from there.

第11A図はマスクコントロールブロック181の構成
図である。マスクコントロールブロック181はすべて
の制御信号を総括する部分である。
FIG. 11A is a block diagram of the mask control block 181. The mask control block 181 is a part that integrates all control signals.

主要な構成要素は外部バスインタフェイス回路200、
制御パターンメモリ201及びマイクロブログラムシー
ケンサ202とマイクロコードメモリ203、アドレス
作成部204である。外部バスインタフェイス回路20
0は、MPU等に接続するためのインタフェイスでアド
レス線205、データ線206及び制御信号線207に
接続されている。外部バスインクフェイス回路200の
上位アドレス比較回路208、レジスタであるDFF2
09はそれぞれMPU等から与えられる上位アドレスを
デコードし、上位アドレスが予め定められた番地である
場合に、下位アドレスとデータをそれぞれD−FF20
9,211にタイミング回路214からのラッチ信号を
トリガとしてセットする。そのアドレスとデータはそれ
ぞれバスドライバ210と212を介して、内部アドレ
スバスと内部データバスを介して内部に入力される。
The main components are an external bus interface circuit 200,
They are a control pattern memory 201, a microprogram sequencer 202, a microcode memory 203, and an address generation section 204. External bus interface circuit 20
0 is an interface for connecting to an MPU, etc., and is connected to an address line 205, a data line 206, and a control signal line 207. Upper address comparison circuit 208 of external bus ink face circuit 200, DFF2 which is a register
09 respectively decodes the upper address given from the MPU etc., and when the upper address is a predetermined address, the lower address and data are respectively sent to the D-FF20.
The latch signal from the timing circuit 214 is set at 9, 211 as a trigger. The address and data are input internally via an internal address bus and an internal data bus via bus drivers 210 and 212, respectively.

そのアドレスはマイクロコードメモリ203を参照して
、マイクロコードをデータバスを介してMPU側から書
き込む場合等に利用される。また下位アドレスはバスド
ライバ210を介してマイクロコードアドレスをマイク
ロプログラムシーケンサ202にも渡され、MPU側か
らの特定なアドレスで制御パターンメモリ201を参照
できるようにしている。
The address is used when referring to the microcode memory 203 and writing the microcode from the MPU side via the data bus. Furthermore, the microcode address of the lower address is also passed to the microprogram sequencer 202 via the bus driver 210, so that the control pattern memory 201 can be referenced with a specific address from the MPU side.

MPUあるいは主記憶からのデータはデータ線206を
介してD−FF211にランチされた後、バスドライバ
212を介してマイクロコードメモリ内のセパレートI
10RAM213あるいは、制御パターンメモリ201
内のセパレー1−I11−l1ORA、216に加えら
れる。MPU或いはメモリからのデータストローブ信号
が制御信号線207を介してタイミング回路214に加
えられるとアクノリッジ信号を返送する通信方式で、ア
ドレスやデータの送受信に関する制御が行われる。タイ
ミング回路214はD−FF211.DFF209への
ランチタイミングやWR倍信号介してマイクロコードメ
モリ203、制御パターンメモリ201への書き込みタ
イミング等を制御する。
Data from the MPU or main memory is launched to the D-FF 211 via the data line 206, and then transferred to a separate I in the microcode memory via the bus driver 212.
10 RAM 213 or control pattern memory 201
Separate 1-I11-11ORA, 216 within. When a data strobe signal from the MPU or memory is applied to the timing circuit 214 via the control signal line 207, an acknowledge signal is sent back, thereby controlling the transmission and reception of addresses and data. The timing circuit 214 is a D-FF 211. It controls the launch timing to the DFF 209 and the writing timing to the microcode memory 203 and the control pattern memory 201 via the WR multiplication signal.

第9図のタイミングチャートに示されるようなニューロ
チップに与える複雑な制御信号の” 1 ”“0”パタ
ーンは、制御パターンメモリ201に1周期分格納され
、その1周期分のパターンをマイクロプログラムシーケ
ンサ202の制御に従って制御パターンメモリ201か
ら読み出すことによって生成する。例えばリセット信号
Re5et %データクロックDCLK、重みクロック
WCL K。
The "1" and "0" patterns of complex control signals given to the neurochip as shown in the timing chart of FIG. It is generated by reading from the control pattern memory 201 under the control of the control pattern memory 202 . For example, reset signal Re5et% data clock DCLK, weight clock WCLK.

C3OI、tso2.C3O3や5YNCI、5YNC
2、SHI、SH2、OCl、OC2等の制御信号はセ
パレー) I10RAM215から読出され、パターン
に付随する制御情報つまりシーケンス制御フラグは第2
のセパレートI10RAM216から読み出される。例
えば制御パターンメモリ201は10001.1000
1というパターンが格納されている場合には、1,0”
ビットのパターンであるから、この“”10”ビットの
パターンを繰り返すように制御パターンメモリ201の
アドレスを制御すれば、このパターンの繰り返しが制御
パターンメモリ201から読み出されることになる。す
なわち制御信号のパターンは非常に複雑なパターンであ
るので、これらのパターンを予めこのセパレートI10
RAM215に格納しておき、そのセパレートI10R
AM215のアドレスをマイクロプログラムシーケンサ
202の制御に従って指定することによって順次そのビ
ットパターンを出力する構造になっている。
C3OI, tso2. C3O3, 5YNCI, 5YNC
2. Control signals such as SHI, SH2, OCl, and OC2 are separated) The control information that accompanies the pattern, that is, the sequence control flag, is read from the I10RAM215 and is
The data is read from the separate I10RAM 216 of . For example, the control pattern memory 201 is 10001.1000.
If the pattern 1 is stored, 1,0"
Since it is a bit pattern, if the address of the control pattern memory 201 is controlled to repeat this "10" bit pattern, the repetition of this pattern will be read out from the control pattern memory 201. In other words, the control signal Since the patterns are very complex, these patterns must be prepared in advance with this Separate I10.
Store it in RAM215 and its separate I10R
The structure is such that by specifying the address of the AM 215 under the control of the microprogram sequencer 202, the bit pattern is sequentially output.

よって、幾つかの同じパターンを繰り返すことになるの
で、その繰り返しをどのように実現するかはアドレス制
御に従う。この1周期分のパターンをオリジナルパター
ンと呼ぶことにする。オリジナルパターンを繰り返すた
めには、マイクロプログラムシーケンサ202に制御パ
ターンメモリ201からの特定な情報をフィードバック
する必要がある。すなわち第2のセパレートI10RA
M216内のシーケンサコントロールフラグを条件入力
としてマイクロプログラムシーケンサ202に入力する
ことにより、マイクロプログラムシーケンサ202は第
1のセパレートI10RAM215内のオリジナルパタ
ーンの入っている先頭アドレスに戻るように制御する。
Therefore, since some of the same patterns are repeated, how the repetition is realized depends on address control. This pattern for one period will be called an original pattern. In order to repeat the original pattern, it is necessary to feed back specific information from the control pattern memory 201 to the microprogram sequencer 202. That is, the second separate I10RA
By inputting the sequencer control flag in M216 to the microprogram sequencer 202 as a conditional input, the microprogram sequencer 202 is controlled to return to the top address containing the original pattern in the first separate I10RAM 215.

このことにより、オリジナルパターンの繰り返しが実行
される。すなわち、マイクロプログラムシーケンサ20
2はその条件が満たされるまで汎用ボート出力線202
−1を介してセパレートI10RAM215へのアドレ
ス信号を逐次に生成する。通常はこのアドレスはインク
リメントされるがオリジナルパターンの最終になったと
いう条件が満たされると、そのオリジナルパターンが格
納されている先頭アドレスに戻るようにする。結果とし
て特定なパターンが繰り返しセパレートI/、ORAM
215から制御パターンが出力される。
This causes repetition of the original pattern. That is, the microprogram sequencer 20
2 is the general-purpose boat output line 202 until the condition is met.
-1 to sequentially generate an address signal to the separate I10RAM 215. Normally, this address is incremented, but when the condition that the original pattern reaches the end is met, it returns to the first address where the original pattern is stored. As a result, a specific pattern is repeatedly separated into I/ORAM.
A control pattern is output from 215.

第11B図Lt、マスクコントロールブロック181を
制御するメモリ201及び203内の情報の相互関係で
ある。同図において、制御パターンメモリ1が第1のセ
パレートI10RAM215に相当し、制御パターンメ
モリ2が第2のセパレートI10RAM216に相当す
る。マイクロコードメモリ203内には、シーケンサ2
02の制御コードが記憶され、主に、Jump命令とR
epea を命令が格納されている。アドレスの増加方
向にみて、特定なアドレスにRepea を命令があり
、この反復命令に従う制御パターンメモリ内のパターン
1の繰り返し数は制御パターンメモリ2の対応するアド
レスに格納され、例えば「10」であるとすれば、10
回の反復を実行することになる。このようにして、アド
レスが増加し、マイクロコードメモリのJump命令に
来たときに、マイクロコードメモリ203内の第2のJ
umpで500Hに飛び、Pattern2を出力する
。Pattern 2を5回繰り返すと、マイクロコー
ドメモリ203内の第3のJumpで、再びr、100
 HJに飛び、Pattern 1を出力することにな
る。このようにして、オリジナルパターンが繰り返され
て、制御パターンメモリ1から読み出される。
FIG. 11B Lt shows the interrelationship of information in memories 201 and 203 that control mask control block 181. In the figure, control pattern memory 1 corresponds to a first separate I10RAM 215, and control pattern memory 2 corresponds to a second separate I10RAM 216. In the microcode memory 203, the sequencer 2
02 control codes are stored, mainly Jump commands and R
Instructions are stored in epea. Looking at the increasing direction of addresses, there is a Repeat command at a specific address, and the number of repetitions of pattern 1 in the control pattern memory according to this repeat command is stored in the corresponding address of the control pattern memory 2, for example "10". Then, 10
This will result in several iterations. In this way, when the address increases and comes to the Jump instruction in the microcode memory, the second J in the microcode memory 203
Jump to 500H with ump and output Pattern2. When Pattern 2 is repeated 5 times, r, 100 is again set at the third Jump in the microcode memory 203.
It will jump to HJ and output Pattern 1. In this way, the original pattern is read out from the control pattern memory 1 repeatedly.

この制御パターンメモリ201を参照するアドレスの読
み出しクロックに同期してWCLKが作られており、重
みメモリ185,186からWCLKに同期して情報が
読み出される。重みメモリ185.186へのアドレス
はアドレス作1部204のアドレス1及びアドレス2か
ら出力されるアドレス信号によってアクセスされる。ア
ドレス1とアドレス2はそれぞれ、中間層と出力層に対
応して分離している。中間層にあるANPに与えるべき
重みデータはアドレス1によって指定される重みメモリ
185から読み出され、出力層へのANPへの重みデー
タはアドレス2によって指定される重みメモリ186か
ら読み出された内容である。各アドレスは重みメモリ1
85,186の内容が重みデータの各ビットをアドレス
が増す方向に1ビツトずつ格納されているので、アドレ
スカウンタ217,218へのカウント制御信号がマイ
クロプログラムシーケンサ202から与えられる必要が
ある。そのアドレスカウンタ217218によってこの
アドレスがバスドライバ219.220を介して次から
次へと重みメモリ185.186へのアドレス信号とし
て、インクリメントして与えられる。そして複数の重み
データがその重みメモリ185,186から読み出され
る。
WCLK is created in synchronization with the read clock of the address that refers to this control pattern memory 201, and information is read out from the weight memories 185 and 186 in synchronization with WCLK. Addresses to weight memories 185 and 186 are accessed by address signals output from address 1 and address 2 of address generator 1 204. Address 1 and address 2 are separated corresponding to the intermediate layer and output layer, respectively. The weight data to be given to the ANP in the intermediate layer is read from the weight memory 185 specified by address 1, and the weight data to be given to the ANP in the output layer is the content read from the weight memory 186 specified by address 2. It is. Each address has weight memory 1
Since the contents of 85 and 186 are stored one bit at a time in the direction of increasing address for each bit of weight data, it is necessary for the microprogram sequencer 202 to provide a count control signal to the address counters 217 and 218. The address counter 217218 increments this address and provides it as an address signal to the weight memory 185, 186 one after another via the bus driver 219, 220. A plurality of weight data are then read out from the weight memories 185 and 186.

第1のセパレートI10RAM215からWCLKとマ
イクロプログラムシーケンス202からのカウンタ制御
信号がアドレス作成部204内のアンド回路221.2
22に加えられている。カウンタ制御信号がハイのとき
、WCLKによってアドレスカウンタは更新され、WC
LKの1〜16ビツトまではアドレスカウンタ217,
218をインクリメントする。そして、残りのWCLK
17〜26ビツトに対しては、カウンタ制御信号をロウ
とすることによりWCLKをインヒビットとしてアドレ
スカウンタ217,218のインクリメントを停止する
。そして、5YNCI、5YNC2に同期して、それぞ
れカウンタリセット信号をマイクロプログラムシーケン
ス202からアンド回路221,222に送出して、ア
ドレスカウンタ217.218をリセットする。このこ
とにより、重みメモリ185,186のアドレスを先頭
アドレスに戻す。なお、マスクコントロールブロック1
81から出力されるモード信号は、重みメモリの1通常
使用、すなわち重みメモリをMPUデータバスから切り
離し重みデータをANPに与えるモードと、重みメモリ
をMPUデータバスに接続し、MPUから重みメモリを
参照するモードを形成するためのものである。
The WCLK from the first separate I10RAM 215 and the counter control signal from the microprogram sequence 202 are connected to the AND circuit 221.2 in the address generation unit 204.
It has been added to 22. When the counter control signal is high, the address counter is updated by WCLK and the WCLK
The 1st to 16th bits of LK are handled by the address counter 217,
Increment 218. And the rest of WCLK
For bits 17 to 26, the counter control signal is set low to inhibit WCLK and stop incrementing the address counters 217 and 218. Then, in synchronization with 5YNCI and 5YNC2, counter reset signals are sent from the microprogram sequence 202 to the AND circuits 221 and 222, respectively, to reset the address counters 217 and 218. This returns the addresses of the weight memories 185 and 186 to the starting address. In addition, mask control block 1
The mode signal output from 81 is for one normal use of the weight memory, that is, a mode in which the weight memory is disconnected from the MPU data bus and weight data is given to the ANP, and a mode in which the weight memory is connected to the MPU data bus and the weight memory is referenced from the MPU. This is to form a mode that

モード信号は、MPUからのデータの下位ビットが、下
位アドレスの1ビツトとタイミング回路214からの書
込み信号からWRをアンド回路223にて生じるアンド
信号をトリガとしてフリップフロップ224にセットさ
れることにより形成される。このモード信号がOのとき
重みメモリは通常使用となる。
The mode signal is formed by setting the lower bit of the data from the MPU to the flip-flop 224 using the AND signal generated by the AND circuit 223 as a trigger from WR from 1 bit of the lower address and the write signal from the timing circuit 214. be done. When this mode signal is O, the weight memory is normally used.

書込み信号WRと内部アドレスバスの1ピントがアンド
回路223を介してフリップフロップ224のクロック
端子に入力され、内部データバスのLSBがフリップフ
ロップ224のデータ端子に入力される。上位アドレス
を比較回路208でマスタコントロー、ルブロソク18
1が選択されているかを判定し、選択されている場合、
下位アドレスとデータをDFF209,211に取り込
む。
Write signal WR and one pin of the internal address bus are input to the clock terminal of the flip-flop 224 via the AND circuit 223, and the LSB of the internal data bus is input to the data terminal of the flip-flop 224. The upper address is compared with the master control by the comparison circuit 208, and the reference controller 18
Determine whether 1 is selected, and if it is selected,
The lower address and data are taken into the DFFs 209 and 211.

このような、インタフェイス動作はMPUに接続される
他のデバイスに対しても同様に行われるが重みメモリは
通常ANPに対し重みデータを供給しているので、MP
Uのデータバスに直接接続するとバス競合が生じる。こ
れを防ぐために、内部データバスのLSBがフリップフ
ロップ224に取り込まれた時はモードを1として、重
みメモリを後述するようにチップセレクトしないように
して、重みメモリからデータバス上にデータが生じない
ようにする。内部アドレスバスが所定タイミングにおい
て、内部アドレスバスによって、マイクロコードメモリ
203と制御パターンメモリ201のいずれかのアドレ
スを指定し、そのアクセスされたアドレスに内部データ
バスから所望のデータを書き込む。これにより、マイク
ロプログラムシーケンサ202やマイクロコードメモリ
203、セバレー1−111−110RAに記憶された
プログラムを変更するか、セパレー)I10RAM21
5に記憶された制御パターンを変更する。
Such interface operations are performed similarly for other devices connected to the MPU, but since the weight memory normally supplies weight data to the ANP, the MP
Connecting directly to U's data bus will result in bus contention. To prevent this, when the LSB of the internal data bus is taken into the flip-flop 224, the mode is set to 1, and the weight memory is not chip-selected as described later, so that no data is generated from the weight memory on the data bus. Do it like this. The internal address bus specifies an address in either the microcode memory 203 or the control pattern memory 201 at a predetermined timing, and writes desired data from the internal data bus to the accessed address. This allows you to change the program stored in the microprogram sequencer 202, microcode memory 203, or Separate 1-111-110RA, or
5. Change the control pattern stored in 5.

第12A図はこの重みデータメモリ230のデータ格納
構成図である。同図において列方向の8ビツトは同じア
ドレスに入った8ビツトデータの情報であり、各ビット
は下からANPI、ANP2・・・ANP8に与えられ
る。行方向はアドレスが異なり、図に示すように左に行
(はどアドレスが増加する方向となっている。重みデー
タはサインビットを含めて16ビツトであるからこれを
アドレスの小さい方向から大きい方に向かって格納する
。MSBは、サインビットで、それ以外の15ビツトは
数値ビットである。マイクロプログラムシーケンサ20
2からアドレスがWCLKに同期してインクリメントさ
れると、重みデータの1ワ一ド分、すなわち16ビツト
がMSBから順にLSBまで読み出されることになる。
FIG. 12A is a data storage configuration diagram of this weight data memory 230. In the figure, 8 bits in the column direction are information of 8-bit data entered at the same address, and each bit is applied to ANPI, ANP2, . . ., ANP8 from the bottom. The addresses are different in the row direction, and as shown in the figure, the row (row) address increases in the left direction.The weight data is 16 bits including the sign bit, so it is sorted from the smaller address to the larger address. The MSB is a sign bit and the other 15 bits are numerical bits. Microprogram sequencer 20
When the address is incremented from 2 in synchronization with WCLK, one word of weight data, that is, 16 bits, is read out in order from MSB to LSB.

8個の複数のANPに同時にこれらの重みデータが渡さ
れる。このようにアドレスの増加する方向にデータが格
納される構造になっているため、この重みデータに対す
るアドレスのカウンタが必要となる。
These weight data are passed to eight ANPs simultaneously. Since the structure is such that data is stored in the direction in which the addresses increase, an address counter for this weight data is required.

すなわち、MSBからLSHの重みデータデータの1ワ
一ド分がカウントされたら、1個分の重みデータになる
ようにカウントされる制御が必要となる。この制御はや
はりマイクロプログラムシーケンサ202で行っている
That is, when one word of weight data from MSB to LSH is counted, control is required so that it is counted as one piece of weight data. This control is also performed by the microprogram sequencer 202.

第12B図は重みメモリブロック185.186具体的
回路である。メモリ230はMB8464A−70とい
うRAMである。出力はANP 1〜ANP8に対応す
る8ビツトである。基本的にMPUのバスから見たバス
信号線とマスクコントロールブロック181から見える
アドレス1と2のどちらかを使う。アドレス1と2は前
述した第11A図のアドレス1と2である。このアドレ
ス1と2はWCLKに同期してインクリメントされる形
で入力される。8ビツトのデータは同時に読み出され、
各ビットはANPI〜ANP8に対して同時に与えられ
る。
FIG. 12B shows a specific circuit of the weight memory blocks 185 and 186. Memory 230 is a RAM called MB8464A-70. The output is 8 bits corresponding to ANP1 to ANP8. Basically, either the bus signal line seen from the MPU bus or addresses 1 and 2 seen from the mask control block 181 are used. Addresses 1 and 2 are addresses 1 and 2 in FIG. 11A described above. These addresses 1 and 2 are input in a form that is incremented in synchronization with WCLK. 8-bit data is read simultaneously,
Each bit is given to ANPI to ANP8 simultaneously.

モード信号がOのときアンドゲート233を介して、重
みメモリ230はチップセレクトされ、このとき、マイ
クロプログラムシーケンサ202からのアドレス1.2
がマルチプレクサ234で有効となる。そして、重みメ
モリ230から重みデータがANP 1〜8に送られる
。一方、反転回路231の出力は、ハイであるからトラ
イステートパストランシーバ232はディスイネーブル
状態となって重みメモリ230の出力はMPUへと出力
されない。
When the mode signal is O, the weight memory 230 is chip-selected via the AND gate 233, and at this time, the address 1.2 from the microprogram sequencer 202 is
is available at multiplexer 234. Weight data is then sent from the weight memory 230 to ANPs 1-8. On the other hand, since the output of the inversion circuit 231 is high, the tri-state path transceiver 232 is disabled and the output of the weight memory 230 is not output to the MPU.

MPUに出力する場合には、モード信号を1にして、M
PUからの適当なアドレス情報によって、アドレスデコ
ーダ235を介してメモリ230をチップセレクトし、
メモリ230にMPUからアドレスを与える。モード信
号が1のとき、MPUバスへの読み出しまたはバスから
メモリ230への書き込みの制御すなわちリードライト
の方向は、MPUからアンドゲート236を介して来る
ブタ線の読み出し信号Read Signal によっ
て決められる。
When outputting to MPU, set the mode signal to 1 and
Chip selects the memory 230 via the address decoder 235 according to appropriate address information from the PU,
An address is given to the memory 230 from the MPU. When the mode signal is 1, control of reading from the MPU bus or writing from the bus to the memory 230, that is, the direction of the read/write is determined by the read signal Read Signal on the pig line coming from the MPU via the AND gate 236.

次に学習のアルゴリズムについて説明する。Next, the learning algorithm will be explained.

第12C図は本発明に利用されるバックプロパゲーショ
ンという学習アルゴリズムのフローチャートである。学
習は次のように進められる。本発明のニューラルネット
ワークすなわち、ANPの集合によって構成される階層
型ネットワークの入力に学習すべき完全情報がMPUか
ら図示しない入力制御回路を介して入力される。そして
、その入力信号は入力端回路、中間層及び出力層を介し
てネットワーク出力にA/Dコンバータを介した後MP
Uに与えられる。MPU側の主記憶内に学習アルゴリズ
ムが存在する。MPU内は、教師信号を主記憶から取り
入れ、ネットワークの出力と教師信号との誤差を調べる
。もし、その誤差が大きければ、MPUは、ネットワー
クが正しい出力を出す方向に、ネットワークの接続の強
さである重みデータを変えることになる。この重みデー
タは重みメモリ230を介して各層のANPに加えられ
る。
FIG. 12C is a flowchart of a learning algorithm called backpropagation used in the present invention. Learning proceeds as follows. Complete information to be learned is input to the neural network of the present invention, that is, a hierarchical network constituted by a set of ANPs, from the MPU via an input control circuit (not shown). Then, the input signal is passed through the input end circuit, the intermediate layer, and the output layer to the network output via the A/D converter, and then to the MP.
given to U. A learning algorithm exists in the main memory on the MPU side. The MPU takes in the teacher signal from the main memory and checks the error between the network output and the teacher signal. If the error is large, the MPU will change the weight data, which is the strength of the network connection, so that the network outputs the correct output. This weight data is added to the ANP of each layer via the weight memory 230.

重みデータが学習アルゴリズムによって更新される場合
、第12C図のパックプロパゲーション学習アルゴリズ
ムに従うことになる。学習アルゴリズムがスタートする
と、MPUは出力層のL番目のニューロンANPLは教
師信号YLと、現在の出力YL との誤差を求めてそれ
をZLに代入する。出力YLは、ニューロンA N P
 Lの出力であるから、例えばシグモイド関数を非線形
素子として使うならば、この非線形関数の出力値として
出されたものである。従って、ニューロンA N P 
Lにおいて、誤差ZLを非線形関数の入力側に誤差伝播
する必要がある。誤差伝播を行う場合、エネルギー関数
、すなわち誤差信号の2乗に1/2を掛けたエネルギー
、すなわち EL = 1/2 (yt、 −YL ) 2の非線形
関数人力X、に対する偏分、すなわち29X。
If the weight data is updated by a learning algorithm, it will follow the pack propagation learning algorithm of Figure 12C. When the learning algorithm starts, the MPU causes the L-th neuron ANPL in the output layer to calculate the error between the teacher signal YL and the current output YL and substitute it into ZL. Output YL is neuron A N P
Since it is the output of L, for example, if a sigmoid function is used as a nonlinear element, it is the output value of this nonlinear function. Therefore, neuron A N P
In L, it is necessary to propagate the error ZL to the input side of the nonlinear function. When performing error propagation, the energy function, i.e. the energy of the square of the error signal multiplied by 1/2, i.e. EL = 1/2 (yt, -YL) 2, is the deviation of the nonlinear function human power X, i.e. 29X.

は次のように変形できる。can be transformed as follows.

=(Yt、   Yt、  )  ・ r(xL )と
なる。ここで、非線形関数f (xL)がシグモイド関
数であるとするならば、 ■1−である。従って、δすなわちエネルギーの非線形
関数入力XLに対する偏分はVL×ZLとなり、すなわ
ちS2に示されるUl−となる。このエネルギーの非線
形関数入力に対する誤差分δをさらに中間層へ逆伝播さ
せる必要がある。
=(Yt, Yt, ) · r(xL). Here, if the nonlinear function f (xL) is a sigmoid function, then (1). Therefore, the deviation of δ, that is, the energy with respect to the nonlinear function input XL, becomes VL×ZL, that is, Ul− shown in S2. It is necessary to further back-propagate the error amount δ with respect to the input of this energy nonlinear function to the intermediate layer.

中間層の第に番目のニューロンをA、とする。Let A be the th neuron in the intermediate layer.

Al1の出力はYkとする。出力層のニューロンANP
Lの非線形関数入力XLはすべての中間層にあるニュー
ロンの出力(Y、  ・・Yk、4A、l)マテノそれ
ぞれに重みWLKを掛けた積和で表現される。
The output of Al1 is assumed to be Yk. Output layer neuron ANP
The nonlinear function input XL of L is expressed as the sum of products obtained by multiplying each of the outputs (Y, . . . Yk, 4A, l) of neurons in all hidden layers by a weight WLK.

従って、Xtの重みWLKに対する偏分はとなる。一方
、エネルギーELに対する重みWLKの変分は次式で与
えられる。
Therefore, the deviation of Xt with respect to the weight WLK is as follows. On the other hand, the variation of the weight WLK with respect to the energy EL is given by the following equation.

このシグモイド関数の微分子 ′(XL )を変形する
と、 f  ’  (XL  )  −Yt、  (1−YL
  )となる。これはフローチャートの82に示される
となる。すなわちS3のTtxは EL θWLk を表現しているもので、エネルギーの重みに対する偏分
である。従って、このTLKを重みの変化分ΔWとすれ
ばよいが、収束を早めるために84に示される第1式の
第2項を加えて、次のような漸化式にして重みを修正す
る。
When we transform the differential molecule ′(XL) of this sigmoid function, we get f′(XL) −Yt, (1−YL
). This is shown at 82 in the flowchart. That is, Ttx in S3 expresses EL θWLk and is a partial division of energy with respect to weight. Therefore, this TLK may be set as the change in weight ΔW, but in order to accelerate convergence, the second term of the first equation shown at 84 is added to form the following recurrence equation to modify the weight.

ΔWLk−αTLk十β・△W1う WLll=W、、+ΔW、に ここで、α、βは定数である。今、出力層の特定なニュ
ーロンANPLに注目しているが、このANPLは中間
層のニューロンにすべて接続されているものとするなら
ば、各ANPLに対してKを1からK mnxまで繰り
返す必要がある。これがフローチャートのR1に示す繰
り返しで、中間層のニューロン数に□つだけ繰り返すこ
とになる。この繰り返しが終わると出力層の特定なニュ
ーロンANPLに対する逆伝播が終了することになる。
ΔWLk−αTLk+β·ΔW1WLll=W, , +ΔW, where α and β are constants. We are now focusing on a specific neuron ANPL in the output layer, but if we assume that this ANPL is connected to all neurons in the middle layer, it is necessary to repeat K from 1 to K mnx for each ANPL. be. This is the repetition shown in R1 of the flowchart, and is repeated as many times as there are neurons in the intermediate layer. When this repetition is completed, the back propagation for the specific neuron ANPL in the output layer is completed.

従ってこれをすべての出力層のニューロン(ANPI 
、 ANP2 、  ・−−、ANPL mai+ )
に対して行う必要があるため、フローチャートのR2に
示すように、Lを1からLllaXまで繰り返すことに
なる。すなわち、最終出力層のニューロンの数L ma
xだけ繰り返すことになる。
Therefore, this can be applied to all output layer neurons (ANPI
, ANP2, ・--, ANPL mai+)
Therefore, as shown in R2 of the flowchart, L is repeated from 1 to LllaX. That is, the number of neurons in the final output layer L ma
It will be repeated x times.

次に今度は中間層から人力層に向かって学習することに
なる。アルゴリズムはほぼ同様であるが、誤差信号は教
師信号と出力電圧との差で表現できず、S5の式になる
。すなわち、Z、が中間層のに番目のニューロン、A、
の出力誤差信号に対応する項となる。これは次式によっ
て明らかである。
Next, learning will begin from the middle layer to the human-powered layer. Although the algorithm is almost the same, the error signal cannot be expressed by the difference between the teacher signal and the output voltage, and is expressed by the formula S5. That is, Z, is the second neuron in the hidden layer, A,
This term corresponds to the output error signal of This is clear from the following equation.

−ΣWL k −UL となる。従って、S5のZkのインデックスLに対して
1からL maつまで、すなわち出力の数だけ繰り返す
(R3)ことによって中間層の誤差信号骨Z、が計算さ
れる。その後は中間層と出力層との間のアルゴリズムと
同じである。すなわち、まず、シグモイド関数の微分値
V、を出し、それを用いてUk、すなわちエネルギーの
非線形関数入カに対する変化分を86で求める。S7で
そのU。
-ΣWL k -UL. Therefore, the error signal bone Z of the intermediate layer is calculated by repeating the process from 1 to L ma times for the index L of Zk in S5, that is, as many times as the number of outputs (R3). After that, the algorithm between the intermediate layer and the output layer is the same. That is, first, the differential value V of the sigmoid function is obtained, and using it, Uk, that is, the change in energy with respect to the input of the nonlinear function is obtained at 86. That U in S7.

を用いて人力層の出力、YJとの積Tk1を求める。こ
れを重み変化分の主要部として、S8に示すように収束
を早めるための第2項を加えて、ΔW5.を求め、前の
値WkJにそのΔWk Jを加えて新たなWkjとする
。これが重みの更新である。この重みの更新を入力数J
イ□だけ繰り返す(R4)。すなわちj=1からJff
laxまで繰り返すことによって入力層と中間層の間の
重みが更新されることになる。なお、S5のZ、は中間
層の出力の誤差信号に対応するものであって、これは出
力層のエネルギーの関数入力値に対する偏分しLを後ろ
向きに逆伝播した形で表現され、WLKは中間層と出力
層との重みが定まって初めて定まるものである。すなわ
ち重みの更新に対する計算は出力層のニューロンANP
Lから始めて中間層のニューロンANPKに移り、中間
層のニューロンANPKではその重み変化分ΔWはその
前段のΔWが決まらないと計算できないものとなってい
る。
The output of the human power layer and the product Tk1 with YJ are obtained using . Taking this as the main part of the weight change, a second term is added to speed up the convergence as shown in S8, and ΔW5. is calculated, and ΔWk J is added to the previous value WkJ to obtain a new Wkj. This is a weight update. Input number J to update this weight
Repeat B□ (R4). That is, from j=1 to Jff
By repeating up to lax, the weights between the input layer and the hidden layer will be updated. Note that Z in S5 corresponds to the error signal of the output of the intermediate layer, and this is expressed as the partial division of the energy of the output layer with respect to the function input value, L, which is backwardly propagated, and WLK is This is determined only after the weights of the intermediate layer and the output layer are determined. In other words, the calculation for updating the weights is performed by the neuron ANP in the output layer.
Starting from L and moving to the middle layer neuron ANPK, the weight change ΔW of the middle layer neuron ANPK cannot be calculated unless the preceding stage ΔW is determined.

従って最後の入力層まで遡って始めて81算が可能とな
るところからこの学習はバックプロパゲーションと呼ば
れている。
Therefore, this learning is called backpropagation because 81 arithmetic is possible only when going back to the last input layer.

バックプロパゲーションによる学習は学習用のデータを
完全情報として入力し、結果を出力する前向き動作とそ
の結果のエラーを小さくするようにすべての結合の強さ
を後ろ向きに変えることになる。その為、この前向き動
作も必要となる。この前向き動作において本発明のアナ
ロダニニーラルネット部が有効に利用される。また、出
力値を逆伝播するアルゴリズムはMPUで実行される。
Learning by backpropagation inputs the training data as complete information, and changes the strength of all connections backwards to reduce the forward motion that outputs the result and the resulting error. Therefore, this forward movement is also necessary. In this forward motion, the analog knee neural net portion of the present invention is effectively utilized. Also, the algorithm for backpropagating the output values is executed on the MPU.

なお、シグモイド関数でない非線形である場合には、そ
の非線形の微分値が異なる。例えばtanh(X)であ
るならば学習アルゴリズムは第12D図のように、非線
形の微分結果は、出力層ではVL−1−IYLIとなり
(S2’)、中間層では■。
Note that in the case of nonlinearity that is not a sigmoid function, the differential value of the nonlinearity is different. For example, if tanh(X), the learning algorithm is as shown in FIG. 12D, and the nonlinear differentiation result is VL-1-IYLI in the output layer (S2'), and ■ in the intermediate layer.

−1−IYk l  (36′)となる。-1-IYk l (36').

その他は、第12C図と同じ参照符号をつけて説明を省
略する。
Others are given the same reference numerals as in FIG. 12C, and their explanation will be omitted.

第13図は入力側のデイジー回路173,174の構成
図である。図中240,241,242はDタイプのフ
リップフロップである。DCLK信号の立ち上がりでD
端子に入力されるデータをセットし、出力Qを1の状態
にする。第1のフリップフロップ240は、DCLKの
立ち下がりで、C3I信号をセットする。そして、次の
立ち上がりで第2番目のフリップフロップ241にその
出力信号をセットする。
FIG. 13 is a configuration diagram of the daisy circuits 173 and 174 on the input side. In the figure, 240, 241, and 242 are D-type flip-flops. D at the rising edge of the DCLK signal
The data input to the terminal is set, and the output Q is set to 1. The first flip-flop 240 sets the C3I signal at the falling edge of DCLK. Then, at the next rising edge, the output signal is set in the second flip-flop 241.

その出力は第3番目のフリップフロップ242のD端子
に入力されている。その入力をセットするクロック信号
は4ビツトカウンタ243の出力である。カウンタ24
3はWCLKの立ち下がりでトリガされる。クリアされ
るのはDCLKの立ち下がりである。従って、DCLK
の立ち下がりにカウンタ243はオールOとなり、WC
LKの立ち下がりが8回入力された後、上位ビットのQ
D倍信号ハイとなるので、これがトリガとなってフリッ
プフロップ242はC3Oにハイ信号を出力する。フリ
ップフロップ241の出力が0になればC3Oはクリア
される。このような動作により、C3Iが立ち下がって
、WCLKの8パルス分に相当する所定な時間通過した
のちC8Oが出力されるというデイジー動作が行われる
Its output is input to the D terminal of the third flip-flop 242. The clock signal that sets its input is the output of 4-bit counter 243. counter 24
3 is triggered on the falling edge of WCLK. It is cleared at the falling edge of DCLK. Therefore, DCLK
At the falling edge of , the counter 243 becomes all O, and WC
After the falling edge of LK is input 8 times, the Q of the upper bit
Since the D times signal becomes high, this serves as a trigger and the flip-flop 242 outputs a high signal to C3O. When the output of the flip-flop 241 becomes 0, C3O is cleared. With this operation, a daisy operation is performed in which C3I falls and C8O is output after a predetermined time period corresponding to eight WCLK pulses has passed.

第14図はダミーノードのニューロンを形成するマック
スバリューノード回路187の具体的回路図である。同
図において抵抗250、ツェナーダイオード251.2
52、抵抗253、電圧フォロア254.255は一定
電圧を形成する回路である。抵抗250.253とツェ
ナーダイオード251.252を介して+12ボルトか
ら一12ボルトに電流が流れると電圧フォロア254.
255の人力には、それぞれ+7ボルトと一7ボルトが
形成される。これらの電圧は電圧フォロア254.25
5の出力抵抗256を介して出力される。この2つの一
定電圧を時分割で引き出すようにアナログスイッチ25
7〜264を用いて制御する。Tモードの信号が0の時
、その一定電圧はアナログスイッチ257を介して次の
電圧フォロア265に与えられる。Tモードが1すなわ
ち、テストモードの時にはアナログスイッチ258によ
ってその出力はアナロググランドに抑えられるため、0
ポルトが電圧フォロア265に入力される。テストモー
ドでは、バス上のオフセットがMPUに通知されること
になる。電圧フォロア265は、出力部のスイッチ制御
によってイネーブルされる。出力イネーブルが1のとき
、アナログスイッチ260がオンで電圧フォロアとして
働き、その出力が与えられるが、この時、ダミーノード
出力には出力されない。逆に出力イネーブルがOの時に
ダミーノード出力に出力される。アナログスイッチ26
0とその出力のスイッチ制御は出力イネーブルlまたは
2によって制御され、0イネーブルである。すなわち出
力イネーブル1または2がOの時にダミーノード出力に
一定電圧が出力される。なお、ダミーノード出力は上側
が入力層のダミーノード用であり、2番目が中間層のダ
ミーノード用の出力である。このダミーノードの出力電
圧は適当な値に固定されるため、スレッシュホールド電
圧として使用可能となる。なお、ツェナーダイオード2
51,252は逆バイアス状態で一定の電圧を出すもの
であり、固定電圧は、+7ボルトから一7ボルトまでの
範囲で可変できるようにしている。出力イネーブル1.
2はアナログバスにつながっている他のANPからの出
力電圧とそのアナログバス上で衝突を避けるためにマス
クコントロールブロック181からのダミーノード制御
信号DC3でイネーブル状態が決められている。
FIG. 14 is a specific circuit diagram of the max value node circuit 187 forming a dummy node neuron. In the same figure, a resistor 250 and a Zener diode 251.2
52, resistor 253, and voltage followers 254 and 255 are circuits that form a constant voltage. When current flows from +12 volts to -12 volts through resistor 250.253 and Zener diode 251.252, voltage follower 254.
For 255 human power, +7 volts and 17 volts are formed respectively. These voltages are the voltage follower 254.25
It is outputted via the output resistor 256 of 5. The analog switch 25 is configured to draw out these two constant voltages in a time-division manner.
7 to 264. When the T-mode signal is 0, the constant voltage is applied to the next voltage follower 265 via the analog switch 257. When the T mode is 1, that is, in the test mode, the output is suppressed to analog ground by the analog switch 258, so the output is 0.
Port is input to voltage follower 265. In test mode, the offset on the bus will be notified to the MPU. Voltage follower 265 is enabled by switch control of the output. When the output enable is 1, the analog switch 260 is turned on and functions as a voltage follower, and its output is provided, but at this time, it is not output to the dummy node output. Conversely, when the output enable is O, it is output to the dummy node output. analog switch 26
Switch control of 0 and its output is controlled by output enable l or 2, which is 0 enable. That is, when output enable 1 or 2 is O, a constant voltage is output to the dummy node output. Note that the upper dummy node output is for the input layer dummy node, and the second dummy node output is for the intermediate layer dummy node. Since the output voltage of this dummy node is fixed to an appropriate value, it can be used as a threshold voltage. In addition, Zener diode 2
Reference numerals 51 and 252 output a constant voltage in a reverse bias state, and the fixed voltage can be varied in the range from +7 volts to 17 volts. Output enable 1.
2 has its enable state determined by the dummy node control signal DC3 from the mask control block 181 in order to avoid collision on the analog bus with output voltages from other ANPs connected to the analog bus.

第15図は非線形間数発生回路であり、第16図、第1
7図、第18図はANP内部のディジタルロジック側の
ハードウェアである。
Figure 15 shows a nonlinear number generation circuit, Figure 16,
7 and 18 show the hardware on the digital logic side inside the ANP.

第15図はシグモイド関数を実現するトランジスタ回路
網である。ここでいうシグモイド関数とは連続で単調非
減少な関数を指し、かつ線形関数を特に除外するもので
はない。同図において343.356,378,390
,298,314のトランジスタとそれに対になったト
ランジスタで差動増幅器を形成し、コレクタ側に接続さ
れたトランジスタ群がそれぞれカレントミラー回路であ
る。差動ANPの左側のトランジスタのコレクタを流れ
るコレクタ電流が出力電流である。カレントミラーで電
流の方向を変えて出力している。電流は出力vOに接続
されている抵抗336にはいる。抵抗336によって電
圧か電流に変えられる。
FIG. 15 shows a transistor network realizing a sigmoid function. The sigmoid function here refers to a continuous, monotonically non-decreasing function, and does not specifically exclude linear functions. In the same figure, 343.356,378,390
, 298, and 314 and their paired transistors form a differential amplifier, and each transistor group connected to the collector side is a current mirror circuit. The collector current flowing through the collector of the left transistor of the differential ANP is the output current. A current mirror changes the direction of the current and outputs it. Current enters a resistor 336 connected to the output vO. A resistor 336 converts it into a voltage or current.

ドライブ能力がないため、出力にはハイインピーダンス
のオペアンプバッファで受ける。トランジスタ337,
339より入力端の回路はバイアス回路である。シグモ
イド関数を実現するために区分線形法を使っている。シ
グモイド関数の各区分の傾きはエミッタに接続されたエ
ミッタ抵抗344と出力抵抗336の比によって決めら
れる。この時トランジスタ343等のエミッタ抵抗も含
まれる。各差動ANPのゲイン:す異なる。各区分線形
の移り変わりに対するブレイクポイントは飽和特性を利
用している。その飽和特性はすべて異なる。■0の出力
点において、各オペアンプから出力される電流の総和の
値がシグモイド関数になるように各ANPの飽和特性を
変えている。トランジスタ345と抵抗R1は電流源で
ある。トランジスタ346と抵抗R2、トランジスタ3
53と抵抗R3等はすべて同じ電流を供給する電流源で
ある。すなわち、電流値は同じになるように抵抗が決め
られている。すべて同一電流源である。トランジスタ3
45,346のコレクタは接続されているので、和の電
流が抵抗344.347の交点に流れる。トランジスタ
343,348のコレクタ電流は、バランスした時点で
は同じになる。
Since it has no drive capability, the output is received by a high impedance operational amplifier buffer. transistor 337,
The circuit at the input end of 339 is a bias circuit. A piecewise linear method is used to realize the sigmoid function. The slope of each section of the sigmoid function is determined by the ratio of the emitter resistor 344 connected to the emitter and the output resistor 336. At this time, emitter resistors such as the transistor 343 are also included. Gain of each differential ANP: Different. Breakpoints for each piecewise linear transition utilize saturation characteristics. Their saturation characteristics are all different. (2) At the 0 output point, the saturation characteristics of each ANP are changed so that the sum of the currents output from each operational amplifier becomes a sigmoid function. Transistor 345 and resistor R1 are current sources. Transistor 346 and resistor R2, transistor 3
53, resistor R3, etc. are all current sources that supply the same current. That is, the resistances are determined so that the current values are the same. All have the same current source. transistor 3
Since the collectors of 45 and 346 are connected, the sum current flows at the intersection of resistors 344 and 347. The collector currents of transistors 343 and 348 become the same at the time of balance.

トランジスタ351はカレントミラーの特性をよくする
ためのものである。トランジスタ350はダイオード接
続である。電流の向きを変えるということは出力に対し
て、電流を引っ張りこむ場合と電流を外に出す場合があ
る。同図に示すように、カレントミラーのトランジスタ
351のコレクタからは出力に向かって電流が流れる。
The transistor 351 is for improving the characteristics of the current mirror. Transistor 350 is diode connected. Changing the direction of current means that there are two ways to draw in current and to send out current. As shown in the figure, a current flows from the collector of the current mirror transistor 351 toward the output.

下側のトランジスタ配列は沢山あるが、エミッタとコレ
クタが同じ点に接続されているトランジスタは同しトラ
ンジスタである。例えばトランジスタ358と360は
同じトランジスタでこれはトランジスタ345と同じも
のである。また359と361も同じトランジスタでこ
れは346に対応する。368 369のトランジスタ
は同じであり、これは353に対応する。以下、同様で
ある。したがって、同じ電流で駆動される定電流電源を
有するオペアンプが出力電圧の正負に従って電流の向き
が異なるような動作を行うものが全部で6個ある回路で
ある。また、トランジスタ337,338はレベルシフ
トであり、330と327もレベルシフトである。レベ
ルシフト回路はシグモイド関数の正と負で動作範囲がほ
ぼ同じになるようにするためのものである。トランジス
タ352はトランジスタ351のコレクタ電流とトラン
ジスタ353のコレクタ電流が等しくなるための補正用
のものである。トランジスタ367.385,287.
307も同様である。
There are many lower transistor arrangements, but transistors whose emitters and collectors are connected to the same point are identical transistors. For example, transistors 358 and 360 are the same transistor, which is the same as transistor 345. Also, 359 and 361 are the same transistor, and correspond to 346. The transistors of 368 and 369 are the same, which corresponds to 353. The same applies hereafter. Therefore, the circuit includes a total of six operational amplifiers each having a constant current power supply driven by the same current and operating in such a way that the current direction changes depending on the positive or negative output voltage. Further, transistors 337 and 338 are level shifters, and 330 and 327 are also level shifters. The level shift circuit is used to ensure that the operating ranges of the positive and negative sigmoid functions are approximately the same. The transistor 352 is for correction so that the collector current of the transistor 351 and the collector current of the transistor 353 become equal. Transistors 367, 385, 287.
The same applies to 307.

第16図は、ニューロチップ内に供給するパルス信号の
形成するためのシーケンスジェネレータ28(第2図)
の具体回路である。401と402及び404と405
はインバータで、各インバータはクロック用のインバー
タである。フリップフロップF、Fのランチ信号の立ち
上がり用と立ち下がり用とに分けてクロックを作ってい
る。同図のフリップフロップは立ち上がりクロックでラ
ッチするもので、インバータとF、Fで立ち上がりラッ
チのF、Fを形成する。例えばDCLKでは、インバー
タ401を1個通ったものが立ち下がりランチ用のクロ
ック信号となる。そしてインバータ402を通ったもの
が立ち上がりラッチ用のクロックDCLKとなる。同様
にインバータ404の出力が立ち下がり用のWCLKで
インバータ405の出力が立ち上がり用クロックWCL
Kである。F、F410において、5YNC信号をDC
LKの立ち下がりがラッチしている。F、  F410
と415で5YNC信号をDCLKの1サイクル分遅ら
せ、5NC2信号を作って、5YNCとその1クロツク
遅れた信号とで1τのパルスを作っている。5YNCが
立ち上がった後の1τ(D CL Kの1周期)のパル
スでANP内の積分用コンデンサの放電を行う。すなわ
ちCR3Tという信号がそのコンデンサのリセット信号
である。
FIG. 16 shows a sequence generator 28 (FIG. 2) for forming pulse signals to be supplied to the neurochip.
This is a concrete circuit. 401 and 402 and 404 and 405
is an inverter, and each inverter is a clock inverter. Separate clocks are created for the rise and fall of the launch signals of flip-flops F and F. The flip-flop shown in the figure latches with a rising clock, and the inverter and F form the rising latch F and F. For example, in the case of DCLK, the signal that passes through one inverter 401 becomes the falling launch clock signal. The clock that passes through the inverter 402 becomes the rising latch clock DCLK. Similarly, the output of inverter 404 is WCLK for falling, and the output of inverter 405 is clock WCL for rising.
It is K. In F, F410, 5YNC signal is DC
The falling edge of LK is latched. F, F410
and 415, the 5YNC signal is delayed by one DCLK cycle to create the 5NC2 signal, and the 5YNC and the signal delayed by one clock create a 1τ pulse. The integrating capacitor in ANP is discharged with a pulse of 1τ (one cycle of DCLK) after 5YNC rises. That is, the signal CR3T is the reset signal for that capacitor.

もう1つのDSH2は5YNCの立ち下がりからDCL
Kの1τ分の長さをとったパルスであって、これがAN
P内のサンプル/ホールドのコンデンサに対するサンプ
ル/ホールド信号となる。411のF、Fではクロック
がWCLKで、データがDCLKであるから、WCLK
でDCLK信号をラッチしている。その後ナントゲート
414で5YNC信号がハイになっていて、かつDCL
Kがハイという状態で最初にきたWCLKをトリガして
F、F443のクロックにしている。ナントゲート41
4とインパーク440でアンドとなる。
The other DSH2 is DCL from the falling edge of 5YNC.
This is a pulse with a length of 1τ of K, which is AN
This becomes the sample/hold signal for the sample/hold capacitor in P. In F and F of 411, the clock is WCLK and the data is DCLK, so WCLK
latches the DCLK signal. After that, the 5YNC signal is high at the Nant gate 414, and the DCL
When K is high, the first WCLK that comes is triggered and becomes the clock for F and F443. Nantes Gate 41
4 and inpark 440 result in an AND.

F、F443において、5YNC信号がハイになってい
る状態で最初にきたWCLKという信号がディジタル重
みデータすなわちWDの符号ビットを取り込んでいる。
In F and F443, the first signal WCLK that comes while the 5YNC signal is high takes in digital weight data, that is, the sign bit of WD.

この信号はシリアルに入ってくる重みディジタルデータ
のMSB、ずなわち符号ビットである。すなわちF、F
411とアントゲ−1−(414,440)のタイミン
グで符号ビットをF、F443がランチする。4ビツト
の2進カウンタ416はWCLKのパルス数をかぞえる
。16ビツトのディジタル重みデータが入ってくるので
16回数える。数え終わったところで、出力がハイとな
り、インバータ423に入る。この信号は16個カウン
トし終わったことを指示する信号である。この信号はシ
リアルにANPに入ってきた重みデータをシフトレジス
タ27 (第2図)に入れる制御等に使われる。またカ
ウンタ416の最下位ビットはインバータ422に人力
される。このインバータ422の出力はC8O信号を生
成する。C8Oはデイジ−チェーンの制御信号であって
、アナログバスB1において、前段の2つのANPから
出される信号の競合を防ぐため、前の時刻のC8が落ち
た後、次のC8を出すようにデイジー動作を実行するた
めのデイレイ回路を形成する必要がある。このデイレイ
の遅延時間はWCLKをカウントし、そのカウンタ値で
形成している。カウンタ416のカウントが終わり、フ
リ・7プフロソプ433にその終わったという指示の信
号がインバータ423を介してラッチされるが、これは
WCLKでたたいている。すなわち17(回目のWCL
Kでたたいている。インバータ437と438を通して
、ラッチされた信号がカウンタ416に戻り、カウンタ
416のインクリメント動作をこれ以上させないように
ディスイネーブルの制御を行っている。インバータ43
8の出力がロウになると、カウンタ416はカウントが
停止する。F、F433の頁の出力はフリップフロップ
442に入っている。これがシフトレジスタ408の出
力のゲート信号になる。ずなわち、16111のディジ
タル重みデータが入ってくるのをシフトレジスタ408
で順々にシフトし、符号ビットを除いた数値ビットの1
5ビツトのデータをパラレルに並べたところでこれらを
出力する。シフトしている間は出力は出ないようにし、
全部入ったところで出力するためのゲート信号がWRで
ある。シフトレジスタ408の内容はANPの掛算器に
与えられる。F、F433から出力される信号は、分岐
されてシフトレジスタのイネーブル信号に使われる。F
、F442はF、F433の出力を立ち上がりでラッチ
するものである。WCLKの16個の立ち下がりラッチ
でシフトが完了し、その後ゲートを開くのに立ち上がり
ラッチでもよいが、立ち下がりで行っている。F、F4
12はシグモイド関数の選択用のパルス信号を作るもの
である。F、F412を使ってリセット信号がはいった
時点で、WD、すなわち重みディジタル入力信号がOか
1によってシグモイドを使うか使わないかを選択する。
This signal is the MSB, or sign bit, of the serially incoming weighted digital data. That is, F, F
F and F443 launch the code bit at the timing of 411 and Antogame-1-(414, 440). A 4-bit binary counter 416 counts the number of WCLK pulses. Since 16-bit digital weight data is input, it is counted 16 times. When the count is finished, the output becomes high and enters the inverter 423. This signal is a signal indicating that 16 counts have been completed. This signal is used to control the input of weight data serially input to the ANP into the shift register 27 (FIG. 2). The least significant bit of counter 416 is also input to inverter 422 . The output of this inverter 422 generates the C8O signal. C8O is a daisy chain control signal, and in order to prevent conflicts between the signals output from the two previous ANPs on the analog bus B1, the daisy chain is set so that the next C8 is output after the previous C8 falls. It is necessary to form a delay circuit to perform the operation. The delay time of this delay is formed by counting WCLK and using the counter value. When the counter 416 finishes counting, a signal indicating that the count is finished is latched to the flipflop 433 via the inverter 423, which is beat by WCLK. That is, the 17th (WCL)
I'm hitting K. The latched signal is returned to the counter 416 through inverters 437 and 438, and disable control is performed so that the counter 416 is no longer incremented. Inverter 43
When the output of 8 becomes low, the counter 416 stops counting. The outputs of pages F and F433 enter a flip-flop 442. This becomes the gate signal of the output of shift register 408. That is, the input digital weight data of 16111 is transferred to the shift register 408.
1 of the numerical bits, excluding the sign bit.
Once the 5-bit data is arranged in parallel, it is output. No output is output while shifting,
The gate signal for outputting when all the signals are input is WR. The contents of shift register 408 are provided to the ANP multiplier. The signals output from F and F433 are branched and used as shift register enable signals. F
, F442 latches the outputs of F and F433 at the rising edge. The shift is completed with 16 falling latches of WCLK, and then rising latches may be used to open the gate, but this is done at falling. F, F4
Reference numeral 12 generates a pulse signal for selecting a sigmoid function. When a reset signal is input using F and F412, whether or not to use the sigmoid is selected depending on whether the WD, that is, the weight digital input signal is O or 1.

この方法は本システムで使用されない場合もある。実際
はシグモイド選択信号は、外部から直接形成する。下の
回路はデイジ−チェーン回路である。カウンタ416の
出力をF、F434でデイレイを作り、そのデイレイで
最後のF、F445をトリガを掛けている。このことに
より、DCLKの1τ分ズラした上に、そのままズラす
のではなく、頭をおとすようにしている。すなわちC3
I信号それ自身はDCLKの1周期分はないこともあり
、そのC8IをC8OにするためにはC3Iに対して、
最初の、例えば、2マイクロ分を削って波形の前を遅ら
せ、後ろはそのまま信号を作っている。ゲート425と
427はC3Iのバッファゲートである。正のバッファ
とインバータバッファである。
This method may not be used in this system. In reality, the sigmoid selection signal is directly generated externally. The circuit below is a daisy-chain circuit. The output of the counter 416 is used to create a delay using F and F434, and this delay is used to trigger the final F and F445. As a result, in addition to being shifted by 1τ of DCLK, the head is lowered instead of being shifted as it is. That is, C3
The I signal itself may not last for one cycle of DCLK, so in order to change C8I to C8O, for C3I,
The first part, for example, is removed by 2 microns to delay the front of the waveform, and the rear part remains as it is to create the signal. Gates 425 and 427 are C3I buffer gates. positive buffer and inverter buffer.

第17図はサンプル/ホールドS/H信号と、OC信号
を形成する位相制御回路29(第2図)である。S/H
信号はインバータ515に入るものと、ゲート524に
入るものと別れている。OC信号も同様である。S/H
信号がゲート524とインバータ515に別れ、インバ
ータ515経出でゲート525に入るとその後はインバ
ータが8段ある。S/H信号に対してそのままの位相と
逆位相の2通りの信号を作っている。これはインバータ
を数段骨カスケードに結合し、たすきがけすることによ
り2つの出力が同時に1になることを避けている。すな
わち、サンプル/ホールドS/H信号の2つ、S/HO
とS/H1を形成し、それが両方ともJにならないよう
にするようにしている。すなわち、インバータチェーン
はS/H信号の両方が同時オンを避けるためのデイレイ
回路である。デイレイの遅延時間はインバータチェーン
の長さによって決まり、片方がオンになってから数段骨
遅らせ、もう片方をオンにしている。
FIG. 17 shows the phase control circuit 29 (FIG. 2) that forms the sample/hold S/H signal and the OC signal. S/H
The signal is separated into one that enters the inverter 515 and one that enters the gate 524. The same applies to the OC signal. S/H
The signal is divided into a gate 524 and an inverter 515, and after passing through the inverter 515 and entering the gate 525, there are eight stages of inverters. Two types of signals are generated with respect to the S/H signal: one with the same phase and one with the opposite phase. This prevents two outputs from becoming 1 at the same time by connecting inverters to several stages of bone cascades and cross-crossing them. That is, two sample/hold S/H signals, S/HO
and S/H1, and try to prevent both of them from becoming J. That is, the inverter chain is a delay circuit that prevents both S/H signals from being turned on at the same time. The delay time is determined by the length of the inverter chain; one side is turned on, then delayed several steps, and then the other side is turned on.

S/HDOとS/HDIに関しても同様である。The same applies to S/HDO and S/HDI.

00信号に関する回路も基本的には同じであるが、それ
はCR3T信号がゲート528と529に入っているの
で、CR3Tが1の場合には強制的に両方出力を1にす
る。OCOとOClの両方共、同時に1になることを避
けているが、○Cの場合はCR3Tが1の場合だけ同時
に1になるようにしている。このことにより、アナログ
スイッチのtti制御を介して積分器のコンデンサの電
荷を放電するというリセット機能を実現している。
The circuit for the 00 signal is basically the same, but since the CR3T signal is input to gates 528 and 529, when CR3T is 1, both outputs are forced to 1. Both OCO and OCl are prevented from becoming 1 at the same time, but in the case of ○C, they are made to become 1 at the same time only when CR3T is 1. This realizes a reset function of discharging the charge in the integrator capacitor through the tti control of the analog switch.

第18図は15ビツトのシフトレジスタ27(第2図)
である。ゲート602と603及び6014、そしてF
、F627で1ビツトに相当し、これを使って説明する
。ゲート603には、前の時刻の出力が入力されている
もので、これはF。
Figure 18 shows a 15-bit shift register 27 (Figure 2)
It is. Gates 602, 603 and 6014, and F
, F627 corresponds to 1 bit, and will be explained using this. The output of the previous time is input to the gate 603, which is F.

F628の出力である。前のビットからの入力というこ
とで、シフト用のデータ信号となる。ゲート603に入
っている他の信号は5HFT、ずなわちシフト信号のイ
ンバータである。これはシフト制御信号で、これが有効
のとき、シフトの指示を行うことになる。またゲート6
02にはF、 F627そのものの出力が入っている。
This is the output of F628. Since it is an input from the previous bit, it becomes a data signal for shifting. The other signal entering gate 603 is a 5HFT, an inverter of the shift signal. This is a shift control signal, and when it is valid, it instructs a shift. Also gate 6
02 contains the output of F and F627 itself.

これは自分自身の出力をフィードバックしていることに
なる。
This means that you are feeding back your own output.

ゲート602の他の入力には5HFT信号のインバート
が同じように入っているが、この位相はゲ−)603に
入っているものと異なる。これによりシフトが無効の時
に、今の出力をそのまま保持することになる。クロック
信号はシフトと無関係に常時入ってくるので、クロック
が入ってもシフトが有効でなければシフトは行わない。
The other input of gate 602 similarly receives an inversion of the 5HFT signal, but its phase is different from that of gate 603. This will keep the current output as is when shift is disabled. Since the clock signal always comes in regardless of the shift, even if the clock comes in, if the shift is not valid, the shift will not be performed.

シフト信号5)IFTが有効の時だけ前のビットをシフ
トし、ゲート603を通って入力することでシフト動作
となる。WR倍信号ゲート632.633等のアンドに
入っている。これは各ビットの出力を出すか出さないか
の選択信号となり、乗算器の方にシフトレジスタに格納
されたデータをわたすかどうかの制御信号となる。また
、ファンアウトをとるために、例えばインバータ620
によって15個のうち5個のF、Fのリセット信号そし
て、ゲート626で10個のF、Fのリセット信号を受
は持つようにしている。ファンアウトのシフトレジスタ
608はシフトイネーブル5HFTと出力のイネーブル
WRの機能がついている。
Shift signal 5) Shifts the previous bit only when IFT is valid and inputs it through gate 603 to perform a shift operation. It is included in the AND of WR multiplication signal gates 632, 633, etc. This serves as a selection signal for outputting or not outputting each bit, and serves as a control signal for passing the data stored in the shift register to the multiplier. Also, in order to take out the fan-out, for example, the inverter 620
Therefore, the receiver has 5 F, F reset signals out of 15, and the gate 626 has 10 F, F reset signals. The fan-out shift register 608 has a shift enable 5HFT and an output enable WR function.

次に、本発明に係るニューロコンピュータを帰還型ネッ
トワークで構成した場合について説明する。
Next, a case will be described in which the neurocomputer according to the present invention is configured with a feedback network.

第19A図は帰還型ネットワークの概念図である。FIG. 19A is a conceptual diagram of a feedback network.

帰還型ネットワークの場合にも、基本的には入力が存在
するが、自分が出力した信号も帰ってくるという帰還路
をもった構造となる。この帰還方式は、階層型ニューラ
ルネットワークにおける1層を時分割多重使用するタイ
プとして利用される場合と、またいわゆるホップフィー
ルド型のニューラルネットワークとして利用される場合
がある。
In the case of a feedback network, there is basically an input, but the structure also has a feedback path in which the signal it outputs also returns. This feedback method may be used as a type in which one layer in a hierarchical neural network is time-division multiplexed, or as a so-called Hopfield type neural network.

前者の場合、ANPの入出力信号は、時分割であるので
、各ANPの出力点ではある一定のシーケンスサイクル
毎にその間じANPの出力データが逐次に出力されて、
1つシーケンスサイクルごとに階層型ニューラルネット
ワークの入力層、中間層、出力層として順次動作する。
In the former case, since the input/output signals of the ANP are time-divided, the output data of that same ANP is sequentially output at every certain sequence cycle at the output point of each ANP.
It operates sequentially as an input layer, a middle layer, and an output layer of a hierarchical neural network for each sequence cycle.

後者の場合、ANPの出力が特定の値になるまで、つま
り安定するまで、出力電圧が帰還される。帰還している
結果を出した時に、その結果が前のデータ、つまり自分
が前に出したデータと一致するまで、状態が繰り返され
、安定解に達すれば収束となる。
In the latter case, the output voltage is fed back until the output of the ANP reaches a specific value, that is, until it becomes stable. When the returned result is produced, the state is repeated until the result matches the previous data, that is, the data produced before, and convergence occurs when a stable solution is reached.

本発明の実施例によれば、第19B図に示されるように
、帰還路を共通アナログバスCBで実現することになり
コの字型の帰還部が存在する。そして1個目分が計算し
て出したものが出力され帰還路を通じて各ANPからの
出力がフィードバックされることになる。この帰還動作
を繰り返していく。
According to the embodiment of the present invention, as shown in FIG. 19B, the feedback path is realized by the common analog bus CB, so that a U-shaped feedback section exists. Then, the calculated result of the first ANP is output, and the output from each ANP is fed back through the feedback path. This return operation is repeated.

第20図は本発明のニューロコンピュータを階層型ネッ
トワークとして動作する帰還型ネットワークによって実
現した実施例である。アナログ入力ボート1.2からの
時分割アナログ人力信号に対してANPl、2.3にお
いて積和演算を行い、ANPI、2.3を中間層として
動作させANPl、2.3からアナログバスB2に時分
割出力し、この出力信号を帰還路であるアナログコモン
バスCBを介してアナログバスB1に帰還し再びこの帰
還信号に対してANPl、2.3で積和演算を行うこと
により、ANPI、2.3を出力層として動作させるこ
とにより、−層のANPI、23により階層型ネットワ
ークを実現したものである。マックスバリューノード回
路187はマスクコントロールブロックのDO3出力を
受けてアナログバスB2にダミー信号を生ずる。そして
マスクコントロールブロックからD CL K及びWC
LKがそれぞれデイジー回路171に入力され、C8I
信号の立ち上がり及び立ち下がりのタイミングを規定す
る。
FIG. 20 shows an embodiment in which the neurocomputer of the present invention is realized by a feedback network that operates as a hierarchical network. A multiply-accumulate operation is performed in ANP1, 2.3 on the time-sharing analog human input signal from the analog input port 1.2, and ANPI, 2.3 operates as an intermediate layer, and the time is transferred from ANP1, 2.3 to the analog bus B2. The output signal is divided and outputted, and this output signal is returned to the analog bus B1 via the analog common bus CB, which is a feedback path, and the sum-of-products operation is performed on this feedback signal again by ANPI, 2.3. By operating 3 as an output layer, a hierarchical network is realized by the - layer ANPI, 23. The max value node circuit 187 receives the DO3 output of the mask control block and generates a dummy signal on the analog bus B2. And from the mask control block D CL K and WC
LK are respectively input to the daisy circuit 171, and C8I
Specifies the rising and falling timing of the signal.

第21A図は第20図に示した帰還型階層ネットワーク
のタイミングチャートである。
FIG. 21A is a timing chart of the feedback hierarchical network shown in FIG. 20.

DCLKが立ち上がっている間だけ、WCLKは発生し
、DCLKが立ち上がってからアナログ信号が定常化し
、かつ重みデータがシリアルに入ってきた後で、パラレ
ルに揃う前のタイミングでマスクコントロールブロック
181からのC3O1がデイジー回路171に入力され
■に示すように立ち上がる。この時アナログ入力ボート
1よりサンプル/ホールドS / Hに保持されている
アナログ信号はアナログスイッチ175を介してアナロ
グバスB1に現れ、ANPI、2.3で積和演算が行わ
れる。次のDCLKの入力で、デイジー回路172への
C3Iが■に示すように立ち上がると、アナログ入力ポ
ートからの入力信号を保持しているサンプル/ホールド
回路S/Hの信号がアナログスイッチを介してアナログ
バスB1上に現れ、ANPI、2.3で2回目の積和演
算が行われる。さらに次のタイミングでDCLKが入力
した後、■に示すようにマスクコントロールブロックよ
りダミー信号DO3が発生し、ANPl2.3において
は、固定電圧に対する3回目の和が実行される。次の5
YNC信号が立ち上がっている間に、ANPl、2.3
の出力層の積和演算が行われる。重みメモリへのアドレ
ス1の信号のアドレスカウント禁止信号が立ち上がって
いる間だけ、アドレスカウンタをカウントするWCLK
がイネーブルされ、それ以外の時には、そのカウントは
抑止される。次に、C3O2がマスクコントロールブロ
ックよりANPIに与えられると、ANPIは、前回の
積和の結果をアナログバスB2に出力し、アナログ共通
バスCBを通してアナログバスB1に帰還し、■で示す
ように再びANPi、2.3において積和演算を行う。
WCLK is generated only while DCLK is rising, and after DCLK has risen, the analog signal has stabilized, and weight data has entered serially, but before it is aligned in parallel, C3O1 from the mask control block 181 is generated. is input to the daisy circuit 171 and rises as shown in ■. At this time, the analog signal held in the sample/hold S/H from the analog input port 1 appears on the analog bus B1 via the analog switch 175, and a sum-of-products operation is performed at ANPI, 2.3. When the next DCLK is input, C3I to the daisy circuit 172 rises as shown in ■, and the signal of the sample/hold circuit S/H holding the input signal from the analog input port is transferred to the analog switch via the analog switch. It appears on bus B1, and the second sum-of-products operation is performed at ANPI, 2.3. Furthermore, after DCLK is input at the next timing, the dummy signal DO3 is generated from the mask control block as shown in (2), and the third summation of the fixed voltage is performed in ANP12.3. Next 5
While the YNC signal is rising, ANPl, 2.3
A sum-of-products operation is performed for the output layer. WCLK that counts the address counter only while the address count prohibition signal of the address 1 signal to the weight memory is rising.
is enabled, and its counting is suppressed at other times. Next, when C3O2 is given to ANPI from the mask control block, ANPI outputs the previous product-sum result to analog bus B2, returns to analog bus B1 through analog common bus CB, and returns as shown by ■. A sum-of-products operation is performed in ANPi, 2.3.

C3O2がANPIの内部のデイジ−チェーン回路にお
いて、所定遅延を加えられた後、ANP2に■に示すよ
うに入力信号C3Iを加え、この時、ANPの出力信号
がアナログバスB2に共通バスC’B及びアナログバス
A1、B1を介して再びANPIに加えられ、ここで積
和演算が行われる。同様にANP2からのC8oは所定
時間遅らせた後、ANP3のC3I信号となり、このC
8I信号が■に示すように立ち上がった時にANP3の
出力信号がアナログバスB2.共通バスCB、アナログ
バスB1を介して再びANPI、2.3に帰還されてこ
こで積和演算が行われる。同様に■に示すようにダミー
ノードからの信号DC3の立ち上がりの際に再び、固定
電圧に対してANPl、23により和の演算が行われる
。そして、次のC802の信号の立上りでANPI、2
からS/Hを介して出力が■、■に示すように生じる。
After C3O2 is subjected to a predetermined delay in the internal daisy-chain circuit of ANPI, the input signal C3I is applied to ANP2 as shown in ■, and at this time, the output signal of ANP is transferred to the analog bus B2 and the common bus C'B. and is applied again to ANPI via analog buses A1 and B1, where a sum-of-products operation is performed. Similarly, C8o from ANP2 becomes the C3I signal of ANP3 after being delayed for a predetermined time.
When the 8I signal rises as shown in ■, the output signal of ANP3 is transferred to the analog bus B2. The signal is fed back to the ANPI 2.3 via the common bus CB and the analog bus B1, where the product-sum operation is performed. Similarly, as shown in (2), when the signal DC3 from the dummy node rises, the sum calculation is again performed with respect to the fixed voltage by ANP1, 23. Then, at the next rising edge of the C802 signal, ANPI becomes 2.
Outputs are generated as shown in (1) and (2) through the S/H.

なお、アナログ入力ボート2からは出力されない。Note that no output is made from the analog input port 2.

ここで■、■、■はANPI、2.3が中間層として動
作し、■、■、■はANPl、、2.3が出力層とし、
て動作する。従ってこの実施例によれば、ANPl、2
.3の1層のみの構成で階層型ネットワークを構成でき
る。
Here, ■, ■, ■ are ANPI, 2.3 operates as the middle layer, ■, ■, ■ are ANPI, 2.3 is the output layer,
It works. Therefore, according to this embodiment, ANPl,2
.. A hierarchical network can be configured with only one layer of 3.

第22図は本発明にかかるアナログニューロコンピュー
タをホップフィールド型の帰還型ネットワークで構成し
た実施例であり、第23図はそのタイミングチャートで
ある。マスクコントロールブロック181の、メモリ・
アドレス端子及びモード端子の出力が重みメモリブロッ
ク185に加えられ、この重みメモリブロック185の
データ出力であるBIOはANP 1、BllはANP
2、B12はANP3に接続される。マスクコントロー
ルブロック181のC3O1の端子からの出力信号は、
デイジー回路171、スイッチ175に加えられ、この
信号の立ち上がりで、アナログ入力ボート1からのサン
プル/ホールド回路173の出力をアナログバスB1に
乗せる。そしてデイジー回路171で所定時間遅延され
た後、C8○の出力が生じ、これがデイジー回路172
にC8Iとして加えられてアナログ入力ボート2に接続
されたサンプル/ホールド回路174の信号をスイッチ
176を介してアナログバスB1に乗せる。
FIG. 22 shows an embodiment in which the analog neurocomputer according to the present invention is configured with a Hopfield type feedback network, and FIG. 23 is a timing chart thereof. The memory of the mask control block 181
The outputs of the address terminal and the mode terminal are added to the weight memory block 185, and the data output of this weight memory block 185, BIO, is ANP 1, Bll is ANP
2, B12 is connected to ANP3. The output signal from the C3O1 terminal of the mask control block 181 is
It is applied to the daisy circuit 171 and the switch 175, and at the rising edge of this signal, the output of the sample/hold circuit 173 from the analog input port 1 is placed on the analog bus B1. Then, after being delayed for a predetermined time in the daisy circuit 171, an output of C8○ is generated, which is transmitted to the daisy circuit 172.
The signal of the sample/hold circuit 174, which is added as C8I to the analog input port 2 and connected to the analog input port 2, is placed on the analog bus B1 via the switch 176.

同様にデイジー回路172′の出力信号C8Oがアナロ
グ人力ボート3に接続れたサンプル/ホールド回路17
4′の出力スイッチ176′を開いてその信号をアナロ
グバスB1に乗せる。ANPlでは第23図に示すよう
に、DCLK信号の1周期で1つの積和の演算を行い、
DCLK信号がハイの時に重みクロックを駆動し、その
重みクロックに同期して入るディジタル重みデータと、
アナログ入力信号との掛は算を行い、DCLKの後半の
ロウ信号の時に、サンプル/ホールド信号SHがハイと
なり、積分器のキャパシタにおいて、和の動作を行う。
Similarly, the sample/hold circuit 17 to which the output signal C8O of the daisy circuit 172' is connected to the analog human powered boat 3
4' output switch 176' is opened to put the signal on the analog bus B1. In ANPl, as shown in Fig. 23, one sum of products calculation is performed in one cycle of the DCLK signal,
Digital weight data that drives a weight clock when the DCLK signal is high and enters in synchronization with the weight clock;
Multiplication with the analog input signal is performed, and when the signal is low in the latter half of DCLK, the sample/hold signal SH becomes high, and the sum operation is performed in the capacitor of the integrator.

すなわちC3O1すなわちデイジー回路1のC3Iがハ
イになっている期間■で、バスBI上のアナログ信号に
対してANPl、23は積和演算を行う。また、マスク
コントロールブロック181からのOC信号がハイとな
ると、ANPl2.3はオフセットキャンセルを行い、
サンプル/ホールドして1つの積和演算周期を終える。
That is, during period (3) when C3O1, that is, C3I of the daisy circuit 1, is high, ANP1, 23 performs a product-sum operation on the analog signal on the bus BI. Furthermore, when the OC signal from the mask control block 181 becomes high, ANPl2.3 performs offset cancellation,
One product-sum operation cycle is completed by sampling/holding.

次に第2のデイジー回!?&172の人力信号C3Iが
ハイ■になるので、次のアナログ入力ボートからの入力
信号に対しANPI、2.3は積和演算を行う。そして
、その積和演算周期が終了した後に、デイジー回路17
2′にC8I信号が入り、サンプル/ホールド回[11
74′から出力信号が生じて、■で示すように第3番目
の積和演算サイクルに入る。
Next is the second Daisy episode! ? Since the human input signal C3I of &172 becomes high ■, ANPI 2.3 performs a sum-of-products operation on the input signal from the next analog input port. Then, after the product-sum calculation cycle ends, the daisy circuit 17
2', the C8I signal enters the sample/hold circuit [11
An output signal is generated from 74', and the third sum-of-products calculation cycle begins, as indicated by ■.

次にマスクコントロールブロック181からC802信
号■が生じて、ANPIから前回の積和サイクルの時に
形成されていた信号がアナログバスCBを介して帰還さ
れ、その帰還された信号に対して、ANPI、ANP2
.ANP3で積和演算を同時に行う。次に所定時間遅延
した後、ANPlのC8O出力信号が■でANP2に加
えられ、ここでデイジ−チェーン的に前回の積和サイク
ルの時に蓄えられた信号をANP2が出力する。この信
号はアナログバスCBを介して帰還されてANPI、A
NP2.APN3で積和演算を■で駆動する。そして同
様に所定時間遅延した後、ANP2のC8○が■でAN
P3に加わえられ、ここでANP3からの出力をアナロ
グバスCBを介して帰還して、ANPI、ANP2.A
PN3において■で積和演算を行う。帰還型ネットワー
クにおいては、第23A図及び第23B図に示すように
、3つのANPにおいて、6つの積和演算サイクルを経
て出力が、それぞれサンプル/ホールド回路177.1
78.178′を介してアナログ出力ボート0、■、2
へと出力される。また、サンプル/ホールド回路177
.178.178′の出力信号がアナログマルチプレク
サ179で選択出力されたものをA/Dコンバータ18
0を介してMPU182、メモリ182、通信インター
フェイス184を含むデジイタル制御回路に与えられる
。MPU182で現時刻のニューロン出力状態と前時刻
のニューロン出力状態が同じになったかどうかをチエツ
クする。同じになれば収束したものと判定する。このよ
うに、1本の共通アナログバスCBを介して実行される
。帰還動作を繰り返していくことによって安定解に到達
すればこれを最終的な出力とする。
Next, the C802 signal ■ is generated from the mask control block 181, and the signal that was formed during the previous multiply-accumulate cycle is fed back from ANPI via the analog bus CB.
.. ANP3 performs product-sum calculations at the same time. Next, after a predetermined time delay, the C8O output signal of ANP1 is applied to ANP2 at point 2, where ANP2 outputs the signal stored in the previous product-sum cycle in a daisy chain manner. This signal is fed back via analog bus CB to ANPI, A
NP2. Drive the sum of products operation with APN3. Similarly, after a predetermined time delay, C8○ of ANP2 becomes AN with ■.
P3, where the output from ANP3 is fed back via analog bus CB, and ANPI, ANP2 . A
In PN3, a product-sum operation is performed with ■. In the feedback network, as shown in FIGS. 23A and 23B, the outputs of the three ANPs go through six product-sum calculation cycles and are sent to sample/hold circuits 177.1, respectively.
Analog output ports 0, ■, 2 via 78.178'
is output to. In addition, the sample/hold circuit 177
.. The output signals of 178 and 178' are selectively outputted by the analog multiplexer 179 and sent to the A/D converter 18.
0 to a digital control circuit including an MPU 182, a memory 182, and a communication interface 184. The MPU 182 checks whether the neuron output state at the current time and the neuron output state at the previous time have become the same. If they are the same, it is determined that they have converged. In this way, it is carried out via one common analog bus CB. If a stable solution is reached by repeating the feedback operation, this is used as the final output.

第24図は、帰還型ネットワークと階層型ネ。Figure 24 shows a feedback network and a hierarchical network.

トワークを組み合わせたものの最適実施例である。This is an optimal embodiment of a combination of networks.

入力層としてデイジー回路が設けられ、中間層にはAN
PI、2.3が設けられる。出力層にはANP4.5が
設けられる。そして中間層のANPl、2.3の出力は
アナログバスB2と共通アナログバスCDを介してアナ
ログバスB1に帰還される。また、アナログバスB1、
B2にはダミーノードとして働くマックスバリューノー
ド回路187が接続されている。そして、出力層を構成
するANP4.5の出力はサンプル/ホールド回路17
7.1.78をそれぞれ介してアナログ出力ボート0及
び1に出力される。B3は出力層アナログバスである。
A daisy circuit is provided as an input layer, and an AN
PI, 2.3 is provided. ANP4.5 is provided in the output layer. The output of the intermediate layer ANP1, 2.3 is fed back to the analog bus B1 via the analog bus B2 and the common analog bus CD. In addition, analog bus B1,
A max value node circuit 187 that functions as a dummy node is connected to B2. The output of ANP 4.5, which constitutes the output layer, is sent to the sample/hold circuit 17.
7.1.78 to analog output ports 0 and 1, respectively. B3 is an output layer analog bus.

第25図を用いて第24図に示したニューラルネットワ
ークの動作を説明する。
The operation of the neural network shown in FIG. 24 will be explained using FIG. 25.

まず、DCLK及びWCL、Kがマスタコントロルブロ
ソクからデイジー回路171及びANPl、2,3,4
.5にそれぞれ入力される。マスクコントロールブロッ
ク181から■に示すようにC3OlがC3Iとして第
1のデイジー回路171に入力されるとアナログ入力ボ
ートOからの信号がサンプル/ホールド回路173及び
スイッチ175を介してアナログバスB1に生じ、AN
Pi、  2. 3において積和演算がSHI及びCS
1の制御で行われる。
First, DCLK, WCL, and K are connected from the master control block to the daisy circuit 171 and ANP1, 2, 3, 4.
.. 5 respectively. When C3Ol is input as C3I to the first daisy circuit 171 from the mask control block 181 as shown in (■), a signal from the analog input port O is generated on the analog bus B1 via the sample/hold circuit 173 and the switch 175. AN
Pi, 2. In 3, the product-sum operation is SHI and CS
This is done under the control of 1.

次に、C3O1が立下がった後、所定時間経過後に第2
のデイジー回路172に入力されるC8I信号が■に示
すように立ち上がると、アナログ入力ボート1からの信
号かサンプル/ホールド回路174及びスイッチ176
を介してアナログバスB2により中間層のANPI、2
.3において、SHIに示すように積和演算が行われる
。同様にC8Oが信号が立ち下がった後、所定時間経過
後に■に示すように第3のデイジー回路へのC3I信号
が立ち上がると、中間層ANPI、2.3で積和演算が
行われる。そして、中間層ANP 1゜2.3の出力は
C3O2が■で示すように立ち上がってANPIに加え
られると、アナログバスB2に出力されその出力は共通
アナログバスCBを介してアナログバスB1に帰還され
るので、中間層のANPI、ANP2.ANP3におい
ては再び積和演算が行われSHIとOCIの制御で積和
演算が行われると共に、ANPIの出力はアナログバス
B2上に生じているので、ANP4.ANP5において
も、SH2とOC2の制御で積和演算が行われる。すな
わち、この実施例においては、中間層ANPI、ANP
2、ANP3と出力FJANP4  ANP5において
同時に積和演算が行われる。
Next, after a predetermined period of time has passed after C3O1 falls, the second
When the C8I signal input to the daisy circuit 172 rises as shown in (■), the signal from the analog input port 1 or the sample/hold circuit 174 and the switch 176
ANPI, 2 of the intermediate layer by analog bus B2 via
.. 3, a product-sum operation is performed as shown in SHI. Similarly, when the C3I signal to the third daisy circuit rises after a predetermined time has elapsed after the C8O signal falls, the product-sum operation is performed in the intermediate layer ANPI, 2.3. Then, the output of the intermediate layer ANP 1°2.3 is outputted to the analog bus B2 when C3O2 rises as shown by ■ and is applied to the ANPI, and the output is fed back to the analog bus B1 via the common analog bus CB. Therefore, the middle layer ANPI, ANP2. In ANP3, the product-sum operation is performed again under the control of SHI and OCI, and since the output of ANPI is generated on the analog bus B2, ANP4. In ANP5 as well, the sum of products calculation is performed under the control of SH2 and OC2. That is, in this embodiment, the middle layers ANPI, ANP
2. A product-sum calculation is performed simultaneously at ANP3 and outputs FJANP4 and ANP5.

次に、C3O2が立ち下がった後所定時間経過後に中間
層のANP2に■に示すようにC3I信号を入力される
とANP2の出力信号はANP2、共通バスCBを介し
てアナログバスB1に帰還されるので、ANPI、2.
3においては再び積和演算が行われると共にANP4.
5においても同時タイミングで積和演算が行われる。
Next, after a predetermined period of time has passed after C3O2 falls, the C3I signal is input to ANP2 in the intermediate layer as shown in ■, and the output signal of ANP2 is fed back to analog bus B1 via ANP2 and common bus CB. Therefore, ANPI, 2.
In ANP4.3, the product-sum calculation is performed again.
5, the product-sum calculation is also performed at the same timing.

さらに、■で示すようにC3I信号がANP3に入力さ
れるとANP3は出力信号をアドレスバスB1に生じる
のでANPl、2.3及び出力層のANP4.5で同時
に積和演算が実行される。
Further, when the C3I signal is input to the ANP3 as shown by ■, the ANP3 generates an output signal on the address bus B1, so that the sum-of-products operation is simultaneously executed by ANP1, 2.3 and ANP4.5 of the output layer.

その次に、マックスバリューノード回路187ヘダミー
信号DSCIが■で与えられると、アナログバスBに■
に一定電圧が出力され、この電圧は共通バスCB及びア
ナログバスB1を介して帰還され、これに対して、AN
PI、2.3で積和演算が行われる。それと共に出力層
ANP4.5でも積和演算が行われる。
Next, when the dummy signal DSCI is given to the max value node circuit 187 at ■, the analog bus B is
A constant voltage is output to the AN, and this voltage is fed back via the common bus CB and the analog bus B1.
A sum-of-products operation is performed in PI, 2.3. At the same time, a product-sum operation is also performed in the output layer ANP4.5.

5YNCIは、中間層で積和演算される期間と中間層及
び出力層で積和演算される期間にわたってハイであり、
5YNC2は中間層と出力層で積和演算がされる間がハ
イである。そして、C803が出力されるとANP4は
■のところで出力を生じ、そのC3O3信号が立ち下が
った後、所定時間後にANP5もまた出力を■のところ
で生ずる。
5YNCI is high during the period in which the sum of products is calculated in the intermediate layer and the period in which the sum of products is calculated in the intermediate layer and the output layer,
5YNC2 is high while the sum-of-products operation is performed in the intermediate layer and the output layer. When C803 is output, ANP4 produces an output at point 2. After the C3O3 signal falls, ANP5 also produces an output at point 2 after a predetermined time.

なお、アドレス1及びイネーブル信号がロウである間は
WCLKが抑止される。
Note that while the address 1 and enable signal are low, WCLK is inhibited.

本発明によれば、n個のニューロチップからなる前段層
とm個の複数のニューロチップからなる後段の層を考え
るとき、従来は配線数がnm個になるのに、本発明の実
施例によれば、アナログバス1本にすることができるの
で配線数を大幅に減少させることができ、また、n個の
ニューロチップからなる層に入力アナログ信号を入力す
る際に、放送方式と同様にアナログバスを介して同時に
入力できるので、1層内のn個のニューロチップが並列
演算ができる。さらに、各層についてもパイプライン処
理が行われるので、演算速度を高速にできる。
According to the present invention, when considering a former layer consisting of n neurochips and a subsequent layer consisting of a plurality of m neurochips, conventionally the number of wires is nm, but in the embodiment of the present invention, the number of wires is nm. According to the method, it is possible to reduce the number of wires to a single analog bus, which greatly reduces the number of wires.In addition, when inputting analog signals to a layer consisting of n neurochips, it is possible to use analog Since inputs can be made simultaneously via the bus, n neurochips in one layer can perform parallel operations. Furthermore, since pipeline processing is performed for each layer, the calculation speed can be increased.

また、ニューロチップをアナログ回路で構成しているの
で、回路の規模が小さくてすみ、このため電力も小さく
てすむので、多数のニューロチップによりニューロコン
ピュータを構成するこができる。さらに、ニューロチッ
プの数を増やすことはマスクコントロールブロック内の
制御ハターンメモリに格納されて制御パターンをかえる
ことにより容易に行える。
Furthermore, since the neurochip is constructed of analog circuits, the scale of the circuit can be small, and therefore the power consumption can be small, so that a neurocomputer can be constructed with a large number of neurochips. Furthermore, the number of neurochips can be easily increased by changing the control pattern stored in the control pattern memory in the mask control block.

第26A図、第26B図は実際のAN、Pが持っている
誤差を発生するメカニズムの概念図である。
FIG. 26A and FIG. 26B are conceptual diagrams of the mechanism that generates errors that AN and P actually have.

第26A図は入力電圧が既知である特定の値である場合
で、ニューラルネットワークの出力電圧が点線に示され
る理論値であってもG1から05までのニューロンに相
当するANPにおいて、積分ゲインのバラつきがあるた
め点線のような理論値からズした出力値が生成される場
合がある。第26B図は入力電圧が0ボルトの場合であ
ってこの場合も出力電圧はオフセット電圧として出力さ
れる。このような出力における誤差電圧をどのように測
定すればよいかということが重要な問題である。
Figure 26A shows the case where the input voltage is a known specific value, and even if the output voltage of the neural network is the theoretical value shown by the dotted line, there is a variation in the integral gain in the ANP corresponding to neurons from G1 to 05. Therefore, an output value that deviates from the theoretical value as shown by the dotted line may be generated. FIG. 26B shows the case where the input voltage is 0 volts, and in this case as well, the output voltage is output as an offset voltage. An important question is how to measure the error voltage at such an output.

第27図、第28図はそれぞれこのパルス的な誤差電圧
を計る階層型及び帰還型のニューラルネソトワークにお
ける誤差計測用回路である。マックスバリューノード回
路187の出力はアナログバスに接続されている。また
、MPUから与えられるデータをポートレジスタにセッ
トし、その制御信号En、Tnmド、レイヤーモードの
各ビットはマックスバリューノード回路187に与えら
れるが、そのマックスバリューノードに与えられるイネ
ーブル信号は同時にオペアンプの出力のスイッチの制御
にも利用される。例えばイネーブル信号1の時には中間
層の電圧はA/Dコンバータ707を介してMPUに入
る。このことによって誤差の計測が可能となる。Tモー
ドとはテストモードのことであり、このTモードを使う
ことによって前述したO入力に対する中間層と出力層の
アナログバスにおける電圧がA/Dコンバータを介して
MPUで測定可能となる。例えば、Tモード−1では階
層形のニューラルネットワークでは0人力に対するオフ
セット電圧が応答となるはずである。0人力時にA/D
コンバータを介してどのような電圧がセンスされるかを
モニタする。各層毎にモニタするために中間層及び出力
層に接続されたアナログバス電圧が順番にMPUに転送
される。Tモードを逆にローにすると、今度はハイレベ
ルの電圧が常に出される。DC31とDC32は、オア
回路に入力されており、ポートレジスタから出力される
Enがハイの間はロウにされている。ポートレジスタに
よってTモードを1にし、レイヤを1にセットし、En
をハイにすれば、入力層だけをロウにして出力をモニタ
することが可能となる。その結果を記憶する。次にレイ
ヤをロウにすれば中間層のアナログバス上のオフセット
をセンスできる。この選択を行うのがポートレジスタで
ある。第28図の帰還型の場合では基本的にはバスは1
本であるから1回の計測で可能となる。どちらも積和演
算を実行しないと、オフセット電圧の測定やゲイン誤差
は測定できない。後述するように、ダミーノードに対す
る重みを変えてその時の出力電圧を測定する。この場合
、それぞれのC3IとC8Oの制御を行い、Tモードで
各層の出力状態をセンスする。このセンスしたデー夕を
A/Dコンバータを介してMPUにとる。
FIGS. 27 and 28 show error measurement circuits in hierarchical and feedback type neural networks that measure this pulse-like error voltage, respectively. The output of max value node circuit 187 is connected to the analog bus. Also, the data given from the MPU is set in the port register, and each bit of the control signal En, Tnm de, and layer mode is given to the max value node circuit 187, but at the same time, the enable signal given to the max value node is output from the operational amplifier. It is also used to control switches. For example, when the enable signal is 1, the intermediate layer voltage enters the MPU via the A/D converter 707. This makes it possible to measure errors. The T mode is a test mode, and by using this T mode, the voltage on the intermediate layer and output layer analog buses for the aforementioned O input can be measured by the MPU via the A/D converter. For example, in T mode-1, a hierarchical neural network should respond to an offset voltage with respect to 0 human power. A/D at 0 man power
Monitor what voltage is sensed through the converter. Analog bus voltages connected to the intermediate layer and output layer are sequentially transferred to the MPU for monitoring on a layer-by-layer basis. Conversely, if the T mode is set to low, a high level voltage will always be output. DC31 and DC32 are input to an OR circuit, and are kept low while En output from the port register is high. Set T mode to 1 by port register, set layer to 1, and set En
By setting it high, it is possible to monitor the output by setting only the input layer to low. Memorize the result. Next, by setting the layer low, you can sense the offset on the analog bus in the middle layer. The port register makes this selection. In the case of the feedback type shown in Figure 28, the bus is basically 1
Since it is a book, it is possible to measure it only once. In either case, offset voltage and gain error cannot be measured unless the product-sum operation is performed. As will be described later, the weight for the dummy node is changed and the output voltage at that time is measured. In this case, each C3I and C8O is controlled and the output state of each layer is sensed in T mode. This sensed data is sent to the MPU via an A/D converter.

第27図の誤差計測用回路を第29A図及び第30A図
の動作タイミングチャートを用いて、より具体的に説明
する。第29図において、DLCKの1周期において、
積和の1サイクルが行われる。そのDCLKの1周期の
前半のDCLKがハイの時に重みクロックWCLKが少
なくとも16個入力される。この重みクロックWCLK
は、シリアルデータをシフトレジスタに16(固蓄える
ためのクロックである。5YNC信号は1つのANPの
動作タイミングを規定するもので、DCLKより半サイ
クル前に立ち上がり、DCLKの半分のサイクルの点で
立ち下がる。SHはサンプル/ホールド信号でそのWC
LKが入力した後、すなわち入力アナログデータとディ
ジタル重みデータとの積が行われた後にその積信号をコ
ンデンサにまずチャージするものである。そして、サン
プル/ホールド信号の最初のハイ信号が立ち下がった時
点で、オフセットキャンセル信号○Cが立ち上がり、コ
ンデンサの極性を逆に反転する。その時、コンデンサへ
の入力信号は、0にカットしておいて、再びサンプル/
ホールド信号の次のハイ信号において、コンデンサにチ
ャージを行うと、コンデンサには、入力信号Oの時のオ
フセット電圧に等しい電圧がチャージされる。これによ
ってコンデンサはオフセット分だけ少なくなった信号、
すなわちオフセットがキャンセルされた信号が蓄積され
ることになる。しかし、これでもオフセットが残る場合
には更に本発明の誤差吸収方式を利用する。
The error measurement circuit shown in FIG. 27 will be explained in more detail using the operation timing charts shown in FIGS. 29A and 30A. In FIG. 29, in one cycle of DLCK,
One cycle of product sum is performed. At least 16 weighted clocks WCLK are input when DCLK is high in the first half of one period of DCLK. This weight clock WCLK
is a clock for storing serial data in the shift register. The 5YNC signal specifies the operation timing of one ANP, and rises half a cycle before DCLK, and rises at half the cycle of DCLK. SH is the sample/hold signal and its WC
After LK is input, that is, after the input analog data and digital weight data are multiplied, the product signal is first charged into the capacitor. Then, when the first high signal of the sample/hold signal falls, the offset cancel signal ○C rises and reverses the polarity of the capacitor. At that time, the input signal to the capacitor is cut to 0, and sampled again.
When the capacitor is charged at the next high signal of the hold signal, a voltage equal to the offset voltage at the time of the input signal O is charged to the capacitor. As a result, the capacitor receives a signal that is reduced by the offset,
In other words, signals whose offsets have been canceled are accumulated. However, if an offset remains even after this, the error absorption method of the present invention is further utilized.

第27図において、ポートレジスタ1にMPtJよりテ
ストモードに入る指令信号が入力されると、En出力が
ハイに立ち上がり、テストモードの1または0がイネー
ブル状態となる。レイヤがロウからハイに立ち上がると
、中間層のテストを行う。
In FIG. 27, when a command signal to enter the test mode is input from MPtJ to the port register 1, the En output rises to high and the test mode 1 or 0 becomes enabled. When the layer rises from low to high, test the middle layer.

そして、Tモードが1の時には、オフセットの誤差信号
を検出する場合である。レイヤがハイであり、En信号
がハイであるので、ゲート702及び703を介して出
力イネーブルがハイとなる。
When the T mode is 1, an offset error signal is detected. Since the layer is high and the En signal is high, the output enable is high through gates 702 and 703.

そして、マックスバリューノード回路の中間屑入力への
固定電圧をOボルトまたはハイ状態にするため、その回
路をイネーブル状態にする。出力イネーブルがハイに立
ち上がると、中間層のテスト終了までハイの状態となる
。すなわち、中間層について、オフセットの誤差を検出
する。ここで、上述したようにDCLKがハイ信号とな
り、積和の1周期が行われる。その後で、C3I  (
C3O2)がハイとなり、ANPIから出力がアナログ
バス(中間層)上に出力される。
The circuit is then enabled to bring the fixed voltage to the intermediate scrap input of the max value node circuit to O volts or high. Once the output enable goes high, it remains high until the end of the middle layer test. That is, offset errors are detected for the intermediate layer. Here, as described above, DCLK becomes a high signal and one cycle of product-sum is performed. After that, C3I (
C3O2) goes high and an output is output from ANPI onto the analog bus (interlayer).

次に一定時間たったANP2へもC3I信号がデイジ−
チェーン的に加えられるので、ANP2からも同様にア
ナログ出力信号が出力され、中間層の出力バス上にのる
。さらに所定時間経過後に、ANP3のC3I信号がハ
イに立ち上がるので、ANP 3からアナログ出力信号
が中間層の出力のアナログバス上に出力される。中間層
に出力された各アナログ信号はオペアンプ704及びア
ナログスイッチ705,706を介してA/Dコンバー
タ707に加えられる。そしてA/Dコンバータ707
の出力QfはMPUに送られ、それぞれ主記憶に一時保
持される。次に、第29B図のタイミングチャートに示
されるように、Tモードを1にしてダミーノードの出力
電圧をハイにして、各ANPの出力電圧QgをMPUが
センスする。
Next, after a certain period of time, the C3I signal is also sent to ANP2.
Since the signals are added in a chain manner, an analog output signal is similarly outputted from ANP2 and is placed on the output bus of the intermediate layer. Further, after a predetermined period of time has elapsed, the C3I signal of ANP 3 rises to high, so that the analog output signal from ANP 3 is output onto the analog bus of the output of the intermediate layer. Each analog signal output to the intermediate layer is applied to an A/D converter 707 via an operational amplifier 704 and analog switches 705 and 706. and A/D converter 707
The output Qf of is sent to the MPU and temporarily held in the main memory. Next, as shown in the timing chart of FIG. 29B, the T mode is set to 1, the output voltage of the dummy node is set to high, and the MPU senses the output voltage Qg of each ANP.

MPUはこのQfとQgから求まる加算器利得Ag=(
Qgを求める。
The MPU calculates the adder gain Ag=(
Find Qg.

また、ポートレジスタ1のレイヤの出力がOの時にはイ
ンバータ708とゲート709.710を介して出力イ
ネーブル2にハイ信号が加えられるので、中間層のダミ
ーノード出力端子すなわち、マックスバリューノード回
路の第2の出力端子から出力信号が生じて出力層のAN
P4.5のオフセットを検出する。そして、その出力は
前述と同様にオペアンプ711.アナログスイッチ71
2713を介してA/Dコンバータ707に加えられる
。なお、アナログスイッチ714,715はA/Dコン
バータ707へと出力しない場合に電圧を電圧フォロア
で保護するものである。なお、ANP4及び5の出力は
サンプル/ホールド715.716で一時保持されて、
アナログ出力信号として出力される。上述したものはT
モードが1の場合であるので、ANPI、2.3.4.
5にはそれぞれ0の入力信号が加えられるから、ANP
l乃至5のオペアンプのオフセット電圧がA/Dコンバ
ータ707からANPに出力される。
Furthermore, when the output of the layer of port register 1 is O, a high signal is applied to output enable 2 via inverter 708 and gates 709 and 710, so that the dummy node output terminal of the intermediate layer, that is, the second An output signal is generated from the output terminal and the AN of the output layer
Detect P4.5 offset. Then, the output is the operational amplifier 711. analog switch 71
2713 to the A/D converter 707. Note that the analog switches 714 and 715 protect the voltage with voltage followers when not outputting to the A/D converter 707. Note that the outputs of ANP4 and ANP5 are temporarily held by sample/hold 715 and 716,
Output as an analog output signal. The above is T
Since the mode is 1, ANPI, 2.3.4.
Since an input signal of 0 is added to each of 5, ANP
Offset voltages of operational amplifiers 1 to 5 are output from the A/D converter 707 to the ANP.

なお、第29B図に示すように、Tモードを立ち上げた
時には、ダミーノードアウトプット・フォ・インプット
・レイヤ及びダミーノードアウトプット・フォ・インタ
ミオーデソト・レイやからはハイレベルのアナログ信号
か出力されるので、A/Dコンバータ707からはAN
PI乃至5を構成するオペアンプの出力電圧Qf(後述
する)が出力される。
As shown in FIG. 29B, when the T mode is activated, high-level analog signals are output from the dummy node output for input layer and the dummy node output for intermediate layer. Since the A/D converter 707 outputs
Output voltage Qf (described later) of the operational amplifiers configuring PI to 5 is output.

第28図は帰還型ニューラルネットワークにおける誤差
計測用回路を示し、第3OA、第30B図はその動作タ
イミングを示す。マックスバリューノード回路187か
らは入力層へのダミーノード出力を示す出力信号のみが
出力され、ANPl2.3にそれぞれ入力される。AN
PI、2.3の出力アナログバスは共通バスCBを介し
て入力側のアナログバスへと帰還される。ポートレジス
タ1、ゲート702,703、オペアンプ704、アナ
ログスイッチ705.706、A/Dコンバータ707
、ゲート708,709,710及びアナログスイッチ
714の動作は第27図の動作と同様である。1層で出
力層を兼ねるので、階層型のような出力層はないので出
力層へのダミーノード出力は生じない。出力層へダミー
ノード出力を与える第2の出力イネーブル端子は接地さ
れる。
FIG. 28 shows an error measurement circuit in a feedback neural network, and FIGS. 3OA and 30B show its operation timing. Only output signals indicating dummy node outputs to the input layer are output from the max value node circuit 187 and input to ANP12.3, respectively. AN
The output analog bus of PI, 2.3 is fed back to the input analog bus via the common bus CB. Port register 1, gates 702, 703, operational amplifier 704, analog switch 705, 706, A/D converter 707
, gates 708, 709, 710 and analog switch 714 are similar to those shown in FIG. Since one layer also serves as the output layer, there is no output layer like in a hierarchical type, so no dummy node output to the output layer occurs. A second output enable terminal that provides a dummy node output to the output layer is grounded.

そして、ANPI、2.3からの出力信号はサンプル/
ホールド回路718,719,720を介して出力され
る。
And the output signal from ANPI, 2.3 is sampled/
It is output via hold circuits 718, 719, and 720.

第28図の誤差計測用回路を第30A図及び第30B図
の動作タイミングチャートを用いて、より具体的に説明
する。第30図において、DLCKの1周期において、
積和の1サイクルが行われる。そのDCLKの1周期の
前半のDCLKがハイの時に重みクロックWCLKが少
なくとも16個入力される。この重みクロックW CL
 Kは、シリアルデータをシフトレジスタに16個蓄え
るためのクロックである。5YNC信号は1つのANP
の動作タイミングを規定するもので、DCLKより半サ
イクル前に立ち上がり、DCLKの半分のサイクルの点
で立ち下がる。SHはサンプル/ホールド信号でそのW
CLKが入力した後、すなわち入力アナログデータとデ
ィジタル重みデータとの積が行われた後にその積信号を
コンデンサにまずチャージするものである。そして、サ
ンプル/ホールド信号の最初のハイ信号が立ち下がった
時点で、オフセットキャンセル信号OCが立ち上がり、
コンデンサの極性を逆に反転する。その時、コンデンサ
への入力信号は、0にカットしておいて、再びサンプル
/ホールド信号の次のハイ信号において、コンデンサに
チャージを行うと、コンデンサには、入力信号Oの時の
オフセフ)電圧に等しい電圧がチャージされる。これに
よってコンデンサはオフセット分だけ少なくなった信号
、すなわちオフセットがキャンセルされた信号が蓄積さ
れることになる。しかし、これでもオフセットが残る場
合には、さらに本発明の誤差吸収方式を利用する。
The error measurement circuit shown in FIG. 28 will be explained in more detail using the operation timing charts shown in FIGS. 30A and 30B. In FIG. 30, in one period of DLCK,
One cycle of product sum is performed. At least 16 weighted clocks WCLK are input when DCLK is high in the first half of one period of DCLK. This weight clock W CL
K is a clock for storing 16 pieces of serial data in the shift register. 5YNC signal is one ANP
This specifies the operation timing of the signal, which rises half a cycle before DCLK and falls at half a cycle of DCLK. SH is the sample/hold signal and its W
After CLK is input, that is, after the input analog data and digital weight data are multiplied, the product signal is first charged into the capacitor. Then, when the first high signal of the sample/hold signal falls, the offset cancel signal OC rises.
Reverse the polarity of the capacitor. At that time, the input signal to the capacitor is cut to 0, and when the capacitor is charged again at the next high signal of the sample/hold signal, the capacitor has a voltage equal to the offset voltage when the input signal is O. Equal voltages are charged. As a result, the capacitor stores a signal reduced by the amount of the offset, that is, a signal with the offset canceled. However, if an offset remains even after this, the error absorption method of the present invention is further utilized.

第28図において、ポートレジスタ1にMPUよりテス
トモードに入る指令信号が人力されると、En出力がハ
イに立ち上がり、テストモードの1または0がイネーブ
ル状態となる。レイヤが口2つからハイに立ち上がると
、1層のテストを行う。
In FIG. 28, when a command signal to enter the test mode is input from the MPU to the port register 1, the En output rises to high and the test mode 1 or 0 becomes enabled. When the layer rises high from the two mouths, test the first layer.

そして、Tモードが1の時には、オフセットの誤差信号
を検出する場合である。レイヤがハイであり、En信号
がハイであるので、ゲート702を介して出力イネーブ
ルの1番目がハイとなる。そして、マックスバリューノ
ード回路の屑入力への固定電圧を0ボルトまたはハイ状
態にするため、その回路をイネーブル状態にする。すな
わち、1層について、オフセットの誤差を検出する。こ
こで、上述したようにDCLKがハイ信号となり、積和
の1周期が行われる。帰還形では、出力イネプル信号は
、すぐ立ち下がるので、入力側のバスはディスイネーブ
ルとなる。しかし、出力イネーブルがハイの間で、すで
にすべてのANPのオフセット電圧は内部でサンプルホ
ールドされていることになる。その後で、csI (C
3o2)がハイとなり、ANPIから出力が出力のアナ
ログバス上に出力される。
When the T mode is 1, an offset error signal is detected. Since the layer is high and the En signal is high, the first output enable goes high through gate 702. The circuit is then enabled in order to bring the fixed voltage to the scrap input of the max value node circuit into a 0 volt or high state. That is, the offset error is detected for one layer. Here, as described above, DCLK becomes a high signal and one cycle of product-sum is performed. In the feedback type, the output enable signal falls immediately, so the bus on the input side is disabled. However, while the output enable is high, all ANP offset voltages are already sampled and held internally. After that, csI (C
3o2) goes high, and the output from ANPI is output onto the output analog bus.

次に一定時間たったANP2へもC3I信号がデイジ−
チェーン的に加えられるので、ANP 2からも同様に
ホールドしてあったオフセット分のアナログ出力信号が
出力され、この層の出力バス上にのる。さらに所定時間
経過後に、ANP3のC3I信号がハイに立ち上がるの
で、ANP3からアナログ出力信号が層の出力のアナロ
グバス上に出力される。層に出力されたオフセット分の
各アナログ信号Qrはオペアンプ704及びアナログス
イッチ705.706を介してA/Dコンバータ707
に加えられる。そしてA/Dコンバータ707の出力Q
fはMPUに送られ、それぞれ主記憶に一時保持される
。次に、第30B図のタイミングチャートに示されるよ
うに、Tモードを1にしてダミーノードの出力電圧をハ
イにして、各ANPの出力電圧QgをMPUがセンスす
る。
Next, after a certain period of time, the C3I signal is also sent to ANP2.
Since the signals are added in a chain manner, an analog output signal corresponding to the held offset is output from ANP 2 as well, and is placed on the output bus of this layer. Further, after a predetermined period of time has elapsed, the C3I signal of ANP3 rises to high level, so that the analog output signal from ANP3 is outputted onto the layer output analog bus. Each offset analog signal Qr output to the layer is sent to the A/D converter 707 via an operational amplifier 704 and analog switches 705 and 706.
added to. And the output Q of A/D converter 707
f is sent to the MPU and temporarily held in the main memory. Next, as shown in the timing chart of FIG. 30B, the T mode is set to 1, the output voltage of the dummy node is set to high, and the MPU senses the output voltage Qg of each ANP.

MPUはこのQfとQgから求まる加算器利得Ag=(
Qgを計算する。上述したものはTモードが1の場合で
あるので、ANPI、2.3にはそれぞれ0の入力信号
が加えられるから、ANPI乃至5のオペアンプのオフ
セット電圧がA/Dコンバータ707からMPU側に出
力される。
The MPU calculates the adder gain Ag=(
Calculate Qg. The above is a case where the T mode is 1, so input signals of 0 are applied to ANPI and 2.3, so the offset voltage of the operational amplifiers ANPI to 5 is output from the A/D converter 707 to the MPU side. be done.

なお、第30B図に示すように、Tモードを立ち上げた
時には、ダミーノードアウトプット・フオ・インプット
・レイヤからはハイレベルのアナログ信号が出力される
ので、A/Dコンバータ707からはANPI乃至3を
構成するオペアンプの出力電圧Qg (後述する)が出
力される。
As shown in FIG. 30B, when the T mode is activated, a high-level analog signal is output from the dummy node output fo input layer, so the A/D converter 707 outputs ANPI or The output voltage Qg (described later) of the operational amplifier configuring the circuit 3 is output.

次にアナログニューロンプロセッサにおける演算誤差発
生モデルと、ダミーノードを利用した重み補正型方式に
ついて、説明する。
Next, a calculation error generation model in an analog neuron processor and a weight correction type method using dummy nodes will be explained.

第31図は本発明の第1次補正と第2次補正処理のアル
ゴリズムの概略図である。第1次補正処理は加算器利得
推定のための計測条件設定とオフセット電圧の計測処理
である。すなわち、フローチャートが開始すれば、ダミ
ーノードの固定電圧をOにして、誤差計測用重みデータ
の1−Qfをダミーノードに対する重みとして再設定す
ることになる。第2次補正処理はダミーノード0ボルト
に対するオフセット電圧Qfと、1−Qfを1ボルトの
ダミーノードに対する中間的な重みとして乗算した結果
に、さらにオフセット電圧が加えられて出力される混合
誤差出力Qgの2つの情報を使って正しい加算器利得A
g=(Qg = (Q−Qr )/(l−Qlを計算す
ることである。
FIG. 31 is a schematic diagram of the algorithm for the primary correction and secondary correction processing of the present invention. The first correction process is a process of setting measurement conditions for estimating the adder gain and measuring an offset voltage. That is, when the flowchart starts, the fixed voltage of the dummy node is set to O, and 1-Qf of the weight data for error measurement is reset as the weight for the dummy node. The second correction process is the result of multiplying the offset voltage Qf for a dummy node of 0 volts by 1-Qf as an intermediate weight for a dummy node of 1 volt, and then the offset voltage is added to the result, which is a mixed error output Qg. Correct adder gain A using the two pieces of information
The purpose is to calculate g=(Qg=(Q-Qr)/(l-Ql).

重み補正方式は、ダミーノードから生成される固定電圧
に対する各ニューロチップへの重み(この重みを以下、
ダミーノード用重みという)を調整することによって誤
差電圧を吸収する手法である。
The weight correction method assigns a weight to each neurochip with respect to a fixed voltage generated from a dummy node (this weight is hereinafter referred to as
This is a method of absorbing error voltages by adjusting the dummy node weights.

誤差には、オフセット誤差とゲイン誤差がある。Errors include offset errors and gain errors.

本発明ではダミーノードが論理的に存在している。In the present invention, dummy nodes logically exist.

すなわち、マックスバリューノード回路からアナログバ
スに例えば1ボルトの固定電圧を発生させる方式を採用
しているので、ダミーノード用重みを調整することによ
って誤差を吸収することになる。ANPに0ボルト入力
を入れた場合にどの程度の誤差を出し、その誤差がどの
ような経路で発生するかは、実施例として以下に説明さ
れる。
That is, since a method is adopted in which a fixed voltage of, for example, 1 volt is generated from the max value node circuit to the analog bus, errors are absorbed by adjusting the weight for the dummy node. How much error occurs when 0 volt input is applied to the ANP and what path the error occurs will be explained below as an example.

第32図は、アナログニューロンプロセッサにおける演
算誤差モデルとダミーノードを利用した重み補正型方式
の概念図である。例えば重みが0゜3で入力が0の場合
には理論的には出力はOとなる。加算器利得が0.98
のとき、入力の0にこの0.98をかけても0となり、
意味はない。一方、入力が1ボルトの場合には、I X
 0.3が本来の積の値である。そして、加算器利得が
0.98である場合には実際にかけられる値は0.98
 X O,3となる。同様に他のノードからの1ボルト
に対して1×0.4と(−1,0) X (−0,6)
を計算し、これらの容積が0.98倍された値のすべて
の和をとると、図に示すように、1.274ボルトとな
る。これにさらに、オペアンプのオフセットが生じ、0
.01ボルトが加えられると、結果として、1.264
ボルトとなる。実際の値は1 x 0.3 + I X
 0゜4+(−1,0) X (−0,6)であるから
1.3ボルトである。ところが1.3ボルトとなるべき
ところが、ゲイン誤差とオフセット誤差によって1.2
64ボルトになる。これが演算誤差発生モデルである。
FIG. 32 is a conceptual diagram of a weight correction type method using an arithmetic error model and dummy nodes in an analog neuron processor. For example, if the weight is 0°3 and the input is 0, theoretically the output will be O. Adder gain is 0.98
Then, even if you multiply the input 0 by this 0.98, it will be 0,
There's no point. On the other hand, if the input is 1 volt, I
0.3 is the original product value. If the adder gain is 0.98, the value actually multiplied is 0.98
It becomes X O,3. Similarly, for 1 volt from other nodes, 1 x 0.4 and (-1,0) x (-0,6)
If we calculate the sum of all the values obtained by multiplying these volumes by 0.98, we get 1.274 volts, as shown in the figure. In addition to this, there is an offset of the op amp, and 0
.. 01 volts is applied, resulting in 1.264
Becomes a bolt. The actual value is 1 x 0.3 + I
Since 0°4+(-1,0)X(-0,6), the voltage is 1.3 volts. However, what should have been 1.3 volts turned out to be 1.2 volts due to gain error and offset error.
It will be 64 volts. This is the calculation error generation model.

下の図が重み補正型方式の概念図であって、演算誤差発
生モデルにおいて生成されているオフセット電圧−0,
01ボルトの誤差を補正するために、この図で、まずダ
ミーノードの電圧をO9Oボルトとしている。このとき
、加算器利得が0.98であっても1導出力は0.0ボ
ルトとなるが、オフセット電圧が加えられ、オフセット
電圧Qfは−0,01ボルトとなる。そしてこれをダミ
ーノードに対する重みをQfを相殺するために補正とし
てダミーノード用重みを1から1.01に変える。これ
が第1次補正であって、一般には、1、O−Qfの値と
なる。しかし、加算器利得は1.0であるべきところが
0.98となっているので、1.0IX0.98−〇、
9898ボルトが#隼結果となる。さらにオペアンプの
オフセットが同様に−0,01ボルトとすると、これが
加算されて出力は0.9798ボルトとなり、これを混
合誤差出力値Qgとする。オフセット電圧−0,01ボ
ルトと、第1次補正のみによって与えられた混合誤差出
力電圧の0.9798であるQgとの2つの情報から第
2次補正をかけて加算利得Ag=(Qgを計算する。第
2次補正は図に示されるように次式に従う。
The figure below is a conceptual diagram of the weight correction type method, where the offset voltage -0, which is generated in the calculation error generation model, is
In order to correct the error of 01 volts, in this figure, the voltage of the dummy node is first set to 090 volts. At this time, even if the adder gain is 0.98, the 1-lead output is 0.0 volts, but an offset voltage is added, and the offset voltage Qf becomes -0.01 volts. Then, as a correction, the weight for the dummy node is changed from 1 to 1.01 in order to offset Qf. This is the first correction, and generally has a value of 1, O-Qf. However, the adder gain should be 1.0 but is 0.98, so 1.0IX0.98-〇,
9898 volts is #Hayabusa result. Furthermore, if the offset of the operational amplifier is similarly set to -0.01 volts, this is added and the output becomes 0.9798 volts, which is taken as the mixed error output value Qg. Calculate the additive gain Ag = (Qg The second correction follows the following equation as shown in the figure.

%式%(1 すなわち、今の例題では、Ag=(Qgが0.98であ
るから、Ag=(Qgを求めることが第2次補正の第1
次段階となる。なぜならば、第1次補正量(iQf)に
固定電圧の1ボルトを掛け、さらに加算器利得Ag=(
Qgを掛けたものにオフセット電圧Qfを加えたものが
Qgとなるので、Qg−(1−Qy ) X I XA
g=(Qg +Qfとなるからで、さらに、重みWll
が、0−W8×Ag=(Qg+Q。
%Formula%(1 In other words, in the current example, Ag=(Qg is 0.98, so finding Ag=(Qg is the first step in the second correction.
This is the next step. This is because the first correction amount (iQf) is multiplied by the fixed voltage of 1 volt, and the adder gain Ag=(
The product multiplied by Qg plus the offset voltage Qf becomes Qg, so Qg-(1-Qy) X I XA
This is because g=(Qg +Qf, and furthermore, the weight Wll
However, 0-W8×Ag=(Qg+Q.

を満足するようにしなくてはならいないので、を求める
ことが第2次補正の第2段階となる。この理由は、前層
のすべてのANPからの出力信号〜123 がすべて0のとき本来は、後層の各ANPの出力信号も
ANPにオフセットがあってもOとなるべきである。す
なわち、ダミーノードの出力は常に1であるから、ダミ
ーノードの出力に対して、後層の出力信号が0になるよ
うなダミーノードからの後層の各ANPへの入力信号に
対する重みが決定されればよいことになるからである。
Since it is necessary to satisfy , the second step of the secondary correction is to find . The reason for this is that when the output signals ~123 from all ANPs in the previous layer are all 0, the output signals of each ANP in the subsequent layer should also be 0 even if there is an offset in the ANP. In other words, since the output of the dummy node is always 1, the weight for the input signal from the dummy node to each ANP in the subsequent layer is determined so that the output signal of the subsequent layer becomes 0. This is because it would be a good thing.

このW3=0.010204を第2次補正した重みとし
て1ボルトのダミーノードにかけ、さらに加算器利得A
g=(Qg=0.98をかけると、0.0099999
となり、はぼ0.01ボルトとなる。これにオフセット
電圧−0601が加算されるため、結果としてOボルト
となる。
This W3=0.010204 is applied to a 1 volt dummy node as a second-order corrected weight, and the adder gain A
g = (multiplying Qg = 0.98, 0.0099999
Therefore, it becomes approximately 0.01 volt. Since the offset voltage -0601 is added to this, the result is O volts.

このようにオフセットに関してもゲイン利得が関係して
いることになる。オフセットゲインの両方を同時に独立
に補正すれば良いがそれが出来ないため、それ等の両方
が混合した形で修正する方式になっている。このように
して、ダミーノードから固定電圧の1ボルトを発生した
とき、ANPの入力が0ボルトのときに出力されるオフ
セット電圧がキャンセルされ、結果として出力が0ボル
トとなるように補正することが可能となる。このような
補正処理は補正イネーブルフラグ”F、n”を1にする
ことによって行われる。
In this way, the offset is also related to the gain. It would be better to correct both offset gains simultaneously and independently, but since this is not possible, a method is used in which both of them are corrected in a mixed form. In this way, when a fixed voltage of 1 volt is generated from the dummy node, the offset voltage that is output when the ANP input is 0 volts is canceled, and the output can be corrected to become 0 volts as a result. It becomes possible. Such correction processing is performed by setting the correction enable flag "F,n" to 1.

第27図の階層型ニューラルネットワークにおける誤差
計測回路においてTモードを1にするとマックスバリュ
ーノード回路の中で発生される固定電圧が強制的に0ボ
ルトになる。アナログバス■または■にはこれによって
Oボルトが強制的に入力される。例えば入力層のアナロ
グバス■を0ボルトにすると、中間層の各ANPI、2
.3の出力がオフセット電圧として出力される。これを
A/Dコンバータ707を介してMPU側に入力する。
When the T mode is set to 1 in the error measurement circuit in the hierarchical neural network shown in FIG. 27, the fixed voltage generated in the max value node circuit is forced to 0 volts. This forces O volts to be input to the analog bus ■ or ■. For example, if the input layer analog bus ■ is set to 0 volts, each intermediate layer ANPI, 2
.. The output of No. 3 is output as an offset voltage. This is input to the MPU side via the A/D converter 707.

MPU側はこのオフセット電圧をQfとして貯える。M
PUはこのQtを用いて、第1次補正を行う。Qfが与
えられると、これを用いてダミーノード用重みを計算し
、重み補正する必要がある。第1次補正の後半において
は、ダミーノードの固定電圧を1ボルトとする。例えば
、中間層の第1のANP 1を対象とすれば、このダミ
ーノ−ド電圧に対する重みデータを1.01とするよう
に制御する。中間層のそのANPIの加算器利得が0.
98とすれば、加算器の出力は、0.9898となり、
さらにオフセット電圧−0,01ボルトが加わってQg
である0、 9798ボルトが出力される。これを中間
層の出力アナログバスに接続された誤差計測用回路の内
部のA/Dコンバータを介して再びMPUにQg情報と
して与える。そしてMPUは、Ag=(Qgの計算及び
1/Ag=(QgからW、を計算する。その結果Waは
第2次補正量として1ボルトを発生するダミーノードに
対する重みデータ、すなわち、0.010204となる
。このとき、ANP内の加算器利得が0.98であるか
ら、加算器出力は0.01ボルトとなり、オフセットが
加わってO,ボルトになる。このことをMPUが確認す
れば、ダミーノード用重みが0.010204という正
しい値であることがわかるので、MPUはW8を重みメ
モリに格納する。
The MPU side stores this offset voltage as Qf. M
The PU uses this Qt to perform the first correction. When Qf is given, it is necessary to use this to calculate the weight for the dummy node and correct the weight. In the second half of the first correction, the fixed voltage of the dummy node is set to 1 volt. For example, if the first ANP 1 in the intermediate layer is targeted, the weight data for this dummy node voltage is controlled to be 1.01. If the adder gain of that ANPI in the middle layer is 0.
98, the output of the adder will be 0.9898,
Furthermore, an offset voltage of -0.01 volts is added and Qg
0.9798 volts is output. This is given again to the MPU as Qg information via the A/D converter inside the error measurement circuit connected to the output analog bus of the intermediate layer. The MPU then calculates Ag=(Qg and 1/Ag=(Qg to W). As a result, Wa is the weight data for the dummy node that generates 1 volt as the secondary correction amount, that is, 0.010204 At this time, since the adder gain in ANP is 0.98, the adder output becomes 0.01 volts, and the offset is added to become O, volts.If the MPU confirms this, the dummy Since the weight for the node is found to be the correct value of 0.010204, the MPU stores W8 in the weight memory.

以上の動作をすべてのANPに対して行うことになる。The above operation will be performed for all ANPs.

第33A図乃至第33D図は階層型ネットワークの場合
の重みデータ修正アルゴリズムである。
FIGS. 33A to 33D are weight data correction algorithms for a hierarchical network.

マス、マスクコントロールブロックを誤差計測モードに
する。テストモードすなわち、Tモードを1にし、レイ
ヤは中間層の1、Enは1とする。すると、入力層のダ
ミーノードの固定電圧は0ボルト電圧となるので、中間
層の各ANPのオフセット電圧を計測することになる。
Set the mass and mask control block to error measurement mode. The test mode, that is, T mode, is set to 1, the layer is set to 1 (intermediate layer), and En is set to 1. Then, the fixed voltage of the dummy node in the input layer becomes 0 volts, so the offset voltage of each ANP in the intermediate layer is measured.

第1次補正を行うために、MPUは、割り込み処理を開
始することによって第1次補正と第2次補正を行う。ま
ず中間層の処理中のANP数を計数する割り込み回数カ
ウンタ変数をOにし、割り込み処理を開始する。
In order to perform the first correction, the MPU performs the first correction and the second correction by starting an interrupt process. First, the interrupt number counter variable that counts the number of ANPs being processed in the intermediate layer is set to O, and interrupt processing is started.

すると、ANPは0ボルト入力電圧に対する出力電圧を
Qfとして出力すると、計測用回路のA/D変換を介し
てデータQfをMPUが内部のレジスタへ読み込み、さ
らにそのレジスタから主記憶メモリへそれを移す。そし
て、割り込みカウンタ変数をインクリメントし、この割
り込みカウンタ数が計測対象数すなわち、ANP数に一
致しているかどうかを調べる。それらがもし一致してい
なければ、カウント数をセンスしなから待ち状態になる
。もしカウント変数が計測対象数に等しければ割り込み
処理ルーチンを終わって中間層のANPに対する第1次
補正処理に入る。すなわち、各ANPに対してダミーノ
ードの電圧を1ボルトにし、第1次補正した値1.0 
 Qrをまず重みとして、主記憶メモリにすべてのAN
Pに対する重みとして格納する。すなわち、Tモードを
Oにする。
Then, when the ANP outputs the output voltage with respect to the 0 volt input voltage as Qf, the MPU reads the data Qf into an internal register through the A/D conversion of the measurement circuit, and then transfers it from the register to the main memory. . Then, the interrupt counter variable is incremented, and it is checked whether the interrupt counter number matches the number of objects to be measured, that is, the number of ANPs. If they do not match, the count number is sensed and the wait state is entered. If the count variable is equal to the number of objects to be measured, the interrupt processing routine is ended and the first correction processing for the ANP in the intermediate layer is started. That is, the voltage of the dummy node is set to 1 volt for each ANP, and the first correction value is 1.0.
First, all ANs are stored in the main memory using Qr as a weight.
Store it as a weight for P. That is, the T mode is set to O.

すると、Tモード−0のときには、ダミーノードからは
固定電圧の1ボルトが生成されるので、これに対し、オ
フセット電圧及びゲイン誤差の影響を同時計測し、第2
次補正の前処理を行う。再び割り込み回数カウンタ変数
を0にし、割り込み処理開始を行う。すなわち計測用回
路のA/D変換を介してQgを測定することになる。ダ
ミーノードの電圧は1.0で、第1次補正によって例え
ばANPへの重みカ月、01になっているので、加算器
利得0.98に対して出力が0.9898になり、オフ
セット電圧−0,01ボルトが加わってQgである0、
9798ボルトが計算される。このQgをA/Dコンバ
ータを介してMPUが読み、レジスタからメモリに移し
、これを中間層内のすべてのANPに対して行うように
カウント変数をインクリメントする。このインクリメン
ト数が計測対象数になったかどうかのチエツクを行なっ
て一致していなければさらに計測を実行する。もし、カ
ウンタ数が計測対象数になっていれば割り込み処理ルー
チンを終わって第2次補正処理に入る。すなわち、Ag
=(Qgの逆数に−QfをかけたWaを各ANPに対し
て求める。このWllを1ボルトを生成するダミーノー
ドに対する重みデータとしてあたえる。
Then, in T mode -0, a fixed voltage of 1 volt is generated from the dummy node, so the effects of offset voltage and gain error are simultaneously measured, and the second
Perform preprocessing for the next correction. The interrupt number counter variable is set to 0 again and interrupt processing is started. That is, Qg is measured through A/D conversion of the measurement circuit. The voltage of the dummy node is 1.0, and the first correction makes the weight to ANP, for example, 01, so the output is 0.9898 for the adder gain of 0.98, and the offset voltage is -0. ,01 volt is added and Qg is 0,
9798 volts is calculated. The MPU reads this Qg via the A/D converter, moves it from the register to memory, and increments a count variable to do this for all ANPs in the middle layer. A check is made to see if this incremented number has reached the number to be measured, and if they do not match, further measurement is performed. If the counter number is equal to the number of objects to be measured, the interrupt processing routine is ended and the second correction processing begins. That is, Ag
=(Wa, which is the inverse of Qg multiplied by -Qf, is obtained for each ANP. This Wll is given as weight data to a dummy node that generates 1 volt.

すなわちダミーノード用重みを修正するルーチンに入り
、例えば、ANPに対する重みデータ0.010204
と決定する。これらの重みは重みメモリに格納される。
That is, a routine is entered to modify the weight for the dummy node, and for example, the weight data for ANP is set to 0.010204.
I decide. These weights are stored in weight memory.

以上の動作は出力層のANPのすべてに対しても行うこ
とになる。従って、■に移って、Tモードを1、レイヤ
をOにして出力層モードにし、En=1として、同様な
処理に入る。すなわち、割り込み回数カウンタを0にし
、割り込み処理ル−チンに入って、測定用回路によって
0ボルトのダミーノードに対するオフセット電圧、Qf
を出力層内のANPに対して求め、これらのデータをメ
モリに貯える。この処理を計測対象数(出力層のANP
数)だけ行った後、割り込み処理ルーチンをぬけて第1
次補正処理を行うことになる。すなわちダミーノードの
固定電圧1ボルトに対する中間的な重みデータを設定す
ることになる。
The above operation will also be performed for all ANPs in the output layer. Therefore, moving to (2), set the T mode to 1, set the layer to O, set the output layer mode, set En=1, and enter the same process. That is, the interrupt counter is set to 0, the interrupt handling routine is entered, and the measurement circuit calculates the offset voltage, Qf, with respect to the 0 volt dummy node.
is calculated for the ANP in the output layer, and these data are stored in memory. This process is performed on the number of measurement targets (output layer ANP
number), exits the interrupt processing routine and returns to the first
Next correction processing will be performed. That is, intermediate weight data for the fixed voltage of 1 volt of the dummy node is set.

■に移る。TモードをOにし、レイヤを0にし、Enを
1にする。そして第2次補正のための前処理に入り、Q
fを計算する。すなわち、ダミーノードから固定電圧1
ボルトが発生されるので、オフセット電圧及びゲイン誤
差の影響を同時計測することになる。割り込み回数カウ
ント変数を0にし、割り込み処理開始を行ってQgをA
/D変換器を介して読んでメモリに移す。そして割り込
みカウント変数をインクリメントし、出力層内のANP
の数だけ行った後、割込み処理ルーチンから抜けて、第
2次補正用のWaを計算し、それをダミーノード用重み
として重みメモリに格納する。
Move on to ■. Set T mode to O, layer to 0, and En to 1. Then, preprocessing for the second correction begins, and Q
Calculate f. That is, from the dummy node to the fixed voltage 1
Since volts are generated, the effects of offset voltage and gain error will be measured simultaneously. Set the interrupt count variable to 0, start interrupt processing, and set Qg to A.
/D converter to read and transfer to memory. Then increment the interrupt count variable and increment the ANP in the output layer.
After repeating the number of times, the CPU exits from the interrupt processing routine, calculates Wa for the second correction, and stores it in the weight memory as a dummy node weight.

階層型の場合、第2次補正で得られたWaは本来ダミー
ノードに与えられた重みに加算する必要がある。しかも
、すべての重みは1/Ag=(Qgがかけられる必要が
ある。
In the case of the hierarchical type, Wa obtained by the second correction needs to be added to the weight originally given to the dummy node. Moreover, all weights need to be multiplied by 1/Ag=(Qg.

帰還型ネットワークの場合の重みデータ修正アルゴリズ
ムは第34A図及び第34B図に示される。この場合も
同様である。帰還型ネットワークでは層は1層である。
The weight data modification algorithm for the feedback network is shown in Figures 34A and 34B. The same applies to this case. A feedback network has one layer.

マスクコントロールブロックを誤差計測モードにし、T
モードを1にし、レイヤを1、Enを1にして、まずダ
ミーノードの0ボルト電圧出力によってオフセット電圧
を計測する。割り込みカウンタ変数を0にし、割り込み
処理ルーチンに入って計測用回路の出力側にあるA/D
変換を介してQfを読み、それをメモリに移す。この処
理をANP数だけ繰り返し、割り込み処理ルーチンを終
了し、第1次補正処理に入る。
Set the mask control block to error measurement mode and press T.
Set the mode to 1, layer to 1, and En to 1, and first measure the offset voltage by the 0 volt voltage output of the dummy node. Set the interrupt counter variable to 0, enter the interrupt processing routine, and connect the A/D on the output side of the measurement circuit.
Read Qf via transformation and move it to memory. This process is repeated by the number of ANPs, the interrupt processing routine is ended, and the first correction process is started.

帰還型ネットワークでは1層しかないために、第1次補
正と第2次補正は1度だけ行えばよい。次に、第2次補
正を行うためにTモードを0に、レイヤをOのままで、
Enを1にする。そしてダミ一ノードの固定電圧1ボル
トを入力し、オフセット電圧及びゲイン誤差の影響を同
時計測することになる。割り込み回数カウンタ変数を0
にし、割り込み処理開始を行う。計測用回路のA/D変
換を介して、Qgを各ANPごとに読む。すなわち、ダ
ミーノードからの1ボルトに対して第1次補正で決まっ
た重みデータを与えると、ANPは、内部の加算器利得
0.98をかけ、さらにオフセット電圧が加わった電圧
としてQgを出力する。この処理は、1層分のすべての
ANPに対して行われ、各ANPに対応するQfとQg
の情報がメモリに書き込まれると、割り込み処理ルーチ
ンが終わる。
Since there is only one layer in the feedback network, the first and second corrections only need to be performed once. Next, in order to perform the second correction, leave the T mode at 0 and the layer at O,
Set En to 1. Then, a fixed voltage of 1 volt at the dummy node is input, and the effects of offset voltage and gain error are simultaneously measured. Set the interrupt count counter variable to 0.
and start interrupt processing. Qg is read for each ANP via A/D conversion of the measurement circuit. That is, when weight data determined by the first correction is given to 1 volt from the dummy node, ANP multiplies the internal adder gain of 0.98 and outputs Qg as a voltage with an offset voltage added. . This process is performed on all ANPs for one layer, and Qf and Qg corresponding to each ANP are
When the information is written to memory, the interrupt handling routine ends.

そして、MPUは第2次補正処理を行う。すなわち、M
PUはAg=(Qgの逆数からW、を各ANPに対して
計算し、これを重み修正量として重みメモリに格納する
ことになる。
Then, the MPU performs secondary correction processing. That is, M
The PU calculates Ag=(W from the reciprocal of Qg) for each ANP and stores this in the weight memory as a weight correction amount.

〔発明の効果〕〔Effect of the invention〕

本発明によれば、ダミーノード用重みをANPへの入力
信号がOのときに出力信号が0となるように設定するこ
とにより、ニューロコンピュータのオフセット電圧の誤
差、加算器のゲインの誤差を抑制することができる。
According to the present invention, by setting the weight for the dummy node so that the output signal is 0 when the input signal to the ANP is O, errors in the offset voltage of the neurocomputer and errors in the gain of the adder are suppressed. can do.

【図面の簡単な説明】[Brief explanation of the drawing]

第1A図は、本発明のニューロコンピュータの原理ブロ
ック図、 第1B図は、本発明のアナログニューロプロセッサ(A
NP)のチップから構成されたパッケージの概略図、 第1C図は、本発明のANPの内部構成図、第2図は、
本発明のアナログニューロプロセッサの原理構成図、 第3図は、本発明の基本ユニットの一実施例のブロック
図、 第4図は、本発明の基本ユニットの実施例の具体的回路
図、 第5図は、本発明の基本ユニットの他の実施例の具体的
回路図、 第6図は、本発明の基本ユニットに用いられる積分器の
動作タイミングを説明する図、第7A図は、階層型ニュ
ーラルネットワークの概念図、 第7B図は、本発明による階層型ニューラルネットワー
クの概念図、 第8図は、本発明のニューロコンピュータを階層型ネッ
トワークで実現した一実施例の具体的回路図、 第9A図及び第9B図は、第8図に示した信号処理のタ
イミング図、 第10図は、ディジタル重みデータの読み込みタイミン
グを示す図、 111A図は、マスクコントロールブロックの具体的回
路図、 第11B図は、制御パターンメモリ及びマイクロコード
メモリの構造を示ず図、 第12A図は、重みデータメモリへのデータ充填方法を
示す図、 第12B図は、重みデータメモリの具体的構成図、 第12C図及び第12D図は学習アルゴリズムのフロー
チャート、 第13図は、デイジー回路の具体的回路図、第14図は
、マックスバリューノード回路の具体的回路図、 第15図は、シグモイド関数発生回路の具体的回路図、 第16図は、シーケンスジェネレータの具体的回路図、 第17図は、位相制御回路の具体的回路図、第18図は
、シフトレジスタの具体的回路図、第19A図は、帰還
型ネットワークを説明する概念図、 第19B図は、本発明のニューロコンピュータにより帰
還型ネットワークを構成した場合の説明図、 第20図は、本発明によるニューロコンピュータにより
、第1の帰還型ネ・ノドワークを構成した実施例の具体
的回路図、 第21A図及び第21B図は、第20図に示した実施例
の信号処理を示すタイミング図、第22図は、本発明の
ニューロコンピュータにより、第2の帰還型ネットワー
クを構成した実施例の具体的ブロック図、 第23A図及び第23B図は、第22図に示した実施例
の信号処理を示すタイミング図、第24図は、本発明の
ニューロコンピュータにより階層型と帰還型とを組み合
わせた他の実施例のブロック図、 第25A図及び第25B図は、第24図に示した実施例
の信号処理を示すタイミング図、第26A図及び第26
B図は実際のANPが持っている誤差を発生するメカニ
ズムの概念図、第27図、第28図は、それぞれこのパ
ルス的な誤差電圧を計る階層型及び帰還型のニューラル
ネットワークにおける誤差計測用回路を示す図、第29
A図は、階層型ネットワークの中間層におけるオフセッ
ト電圧計測用制御シーケンス、第29B図は、階層型ネ
ットワークの中間層におけるゲイン誤差計測用制御シー
ケンス、第30A図は、帰還型ネットワークにおけるオ
フセット電圧計測用制御シーケンス、 第30B図は、帰還型ネットワークにおけるゲイン誤差
計測用制御シーケンス、 第31図は、本発明の誤差計測に用いられる第1次、第
2次補正処理の説明図、 第32図は、アナログニューロンプロセッサにおける演
算誤差発生モデルとダミーノードを利用した重み補正型
方式を示す図、 第33A図〜第33D図は、階層型ネットワークの場合
の重みデータ修正方法を示すフローチャート、 第34A図及び第34B図は、帰還型ネ・2トワークの
場合の重みデータ修正方法を示すフローチャート、 第35図は、ニューロンモデルの基本ユニットの原理構
成図、 第36図は、階層型ニューラルネットワークの構成概念
図である。 6・ ・ ・ダミーノード手段、 12 ・ 13 ・ 14 ・ 15 ・ 16 ・ 17 ・ 18 ・ ワーク、 19・ 20・ ・制御パターンメモリ、 ・シーケンサ、 ・重みメモリ、 ・ディジタル制御手段、 ・D/Aコンバータ、 ・A/Dコンバータ、 ・ANPで構成したニューラルネット ・・重み補正手段、 ・・誤差測定手段。 第1B 図 第1C 図 、スへ 重みデータ修正アルゴリズム(階層型ネットワークの場
合)0v電圧入力によって、オフセ ット電圧を計測する。 重みデータ修正アルゴリズム(帰還型ネットワークの場
合)0v電圧入力によって、オフセ ット電圧を計測する。
FIG. 1A is a principle block diagram of the neurocomputer of the present invention, and FIG. 1B is a block diagram of the principle of the neurocomputer of the present invention.
1C is an internal configuration diagram of the ANP of the present invention, and FIG. 2 is a schematic diagram of a package composed of a chip of
FIG. 3 is a block diagram of an embodiment of the basic unit of the present invention; FIG. 4 is a specific circuit diagram of an embodiment of the basic unit of the present invention; 6 is a diagram illustrating the operation timing of the integrator used in the basic unit of the present invention. FIG. 7A is a diagram illustrating the operation timing of the integrator used in the basic unit of the present invention. A conceptual diagram of the network. Figure 7B is a conceptual diagram of a hierarchical neural network according to the present invention. Figure 8 is a specific circuit diagram of an embodiment in which the neurocomputer of the present invention is realized by a hierarchical network. Figure 9A 9B is a timing diagram of the signal processing shown in FIG. 8, FIG. 10 is a diagram showing the timing of reading digital weight data, FIG. 111A is a specific circuit diagram of the mask control block, and FIG. 11B is a diagram showing the timing of reading digital weight data. , FIG. 12A is a diagram showing a method of filling data into the weight data memory, FIG. 12B is a specific configuration diagram of the weight data memory, FIG. 12C is a diagram showing the structure of the control pattern memory and the microcode memory, Fig. 12D is a flowchart of the learning algorithm, Fig. 13 is a specific circuit diagram of the daisy circuit, Fig. 14 is a specific circuit diagram of the max value node circuit, and Fig. 15 is a specific circuit diagram of the sigmoid function generation circuit. , Fig. 16 is a specific circuit diagram of a sequence generator, Fig. 17 is a specific circuit diagram of a phase control circuit, Fig. 18 is a specific circuit diagram of a shift register, and Fig. 19A is a specific circuit diagram of a feedback network. A conceptual diagram to be explained. FIG. 19B is an explanatory diagram when a feedback network is configured using the neurocomputer of the present invention. FIG. 20 is an explanatory diagram when a first feedback network is configured using the neurocomputer according to the present invention. 21A and 21B are timing diagrams showing the signal processing of the embodiment shown in FIG. 20, and FIG. 23A and 23B are timing diagrams showing the signal processing of the embodiment shown in FIG. 22, and FIG. 24 is a hierarchical FIGS. 25A and 25B are block diagrams of other embodiments combining the feedback type and the feedback type, and FIGS. 26A and 26 are timing diagrams showing signal processing of the embodiment shown in FIG.
Figure B is a conceptual diagram of the mechanism that generates errors in an actual ANP, and Figures 27 and 28 are error measurement circuits in hierarchical and feedback neural networks that measure this pulse-like error voltage, respectively. Figure 29 showing
Figure A is a control sequence for measuring offset voltage in the middle layer of a hierarchical network, Figure 29B is a control sequence for measuring gain error in the middle layer of a hierarchical network, and Figure 30A is a control sequence for measuring offset voltage in a feedback network. Control sequence, FIG. 30B is a control sequence for measuring gain error in the feedback network, FIG. 31 is an explanatory diagram of the first and second correction processing used for error measurement of the present invention, and FIG. 32 is: 33A to 33D are flowcharts showing a weight data correction method in the case of a hierarchical network; Figure 34B is a flowchart showing the weight data correction method in the case of feedback type network, Figure 35 is a diagram showing the principle configuration of the basic unit of the neuron model, and Figure 36 is a conceptual diagram of the configuration of the hierarchical neural network. be. 6. Dummy node means, 12. 13. 14. 15. 16. 17. 18. Work, 19. 20. - Control pattern memory, - Sequencer, - Weight memory, - Digital control means, - D/A converter , ・A/D converter, ・Neural network composed of ANP, ・Weight correction means, ・Error measurement means. Figure 1B Figure 1C Weight data correction algorithm (for hierarchical network) Offset voltage is measured by 0V voltage input. Weight data correction algorithm (in case of feedback network) Measure offset voltage by inputting 0v voltage.

Claims (1)

【特許請求の範囲】 1)アナログ信号を第1のアナログバスより時分割的に
入力し、積和演算を行ってアナログ信号を第2のアナロ
グバスに出力するアナログニューロプロセッサの集合か
らなるニューラルネットワーク(18)と、 該ニューラルネットワーク(18)のアナログバスに接
続されテストモード時において、指定された前記アナロ
グバスに固定電圧を発生するダミーノード手段(6)と
、 テストモード時の第1の状態において前記第1のアナロ
グバスにダミーノード手段(6)を介して0ボルトを強
制的に入力し、前記第2のアナログバスからアナログニ
ューロプロセッサ内で発生されたオフセット電圧を検出
する誤差測定手段(20)と、 前記各ニューロプロセッサのオフセット電圧からテスト
モード時の第2の状態において、前記ダミーノード手段
(6)から生成される固定電圧と乗算されるべき各ニュ
ーロプロセッサへの重みの中間的な重みを決め、第2の
アナログバスから出力される検出出力電圧からゲイン利
得を使って正しい重みを計算するディジタル制御手段内
の重み補正手段(19)と、 該重み補正手段によって補正された重みを格納する重み
メモリ(14)と、 前記ニューラルネットワークの動作を制御する制御パタ
ーンがシーケンサ(13)の制御によって順次読み出さ
れる制御パターンメモリ(12)とからなることを特徴
とするニューロコンピュータにおける重み補正による誤
差吸収方式 2)前記重み補正手段は、ダミーノードの固定電圧を0
にしてオフセット電圧Q_fを求め、これにより誤差計
測用重みデータ(1−Q_f)を求める第1次補正手段
と、 (1−Q_f)をダミーノードの1ボルトの電圧に対す
る中間的重みとし、さらにオフセット電圧Q_fとから
形成される混合誤差出力をQ_gとして加算器利得A_
g=(Q_g−Q_f)/(1−Q_f)を求める第2
次補正手段とよりなることを特徴とする請求項1記載の
ニューロコンピュータにおける重み補正による誤差吸収
方式 3)前記ダミーノードはマックスバリューノード回路か
ら構成され、このマックスバリューノード回路は固定電
圧を発生する手段と、前記固定電圧をダミーノード出力
から所定タイミングに出力する手段よりなることを特徴
とする請求項1記載のニューロコンピュータにおける重
み補正による誤差吸収方式 4)前記誤差検出手段はMPUからの指定に従ってテス
トモードを有効にするイネーブル信号と、マックスバリ
ューノード回路の指定された出力電圧を0ボルト電圧か
0ボルトでない電圧かを選択するテストモード信号と、
各層の指定を行うレイヤ信号を生成するポートレジスタ
手段(701)と、 前記イネーブル信号がイネーブル状態のときレイヤ信号
の状態に対応する層の入力側の入力アナログバスに前記
マックスバリューノード回路からテストモードの状態に
対応する固定電圧を生成することを有効にするためのイ
ネーブル信号を生成する制御手段(702、708、7
09、703、710)とからなるディジタル回路手段
を具備することを特徴とする請求項1記載のニューロコ
ンピュータにおける重み補正による誤差吸収方式5)前
記誤差検出手段は、各層の出力アナログバスの検出出力
電圧を受けるバッファ手段(711)と、 前記ディジタル回路手段から出力されるイネーブル信号
がイネーブル状態であるとき前記検出出力電圧を有効に
出力するスイッチング手段と、前記スイッチング手段に
接続され前記検出出力電圧をMPUを含むディジタル制
御手段側にディジタル量として出力するA/D変換手段
(707)を有することを特徴とする請求項1記載ニュ
ーロコンピュータにおける重み補正による誤差吸収方式
[Claims] 1) A neural network consisting of a set of analog neuroprocessors that time-divisionally input analog signals from a first analog bus, perform product-sum operations, and output the analog signals to a second analog bus. (18); dummy node means (6) connected to the analog bus of the neural network (18) and generating a fixed voltage on the specified analog bus in the test mode; and a first state in the test mode. error measuring means for forcibly inputting 0 volts to the first analog bus through the dummy node means (6) and detecting an offset voltage generated within the analog neuroprocessor from the second analog bus; 20), and an intermediate weight to each neuroprocessor to be multiplied by a fixed voltage generated from the dummy node means (6) in the second state in the test mode from the offset voltage of each neuroprocessor. Weight correction means (19) within the digital control means that determines the weight and calculates the correct weight using the gain from the detected output voltage output from the second analog bus, and the weight corrected by the weight correction means. Weight correction in a neurocomputer characterized by comprising a weight memory (14) for storing weights, and a control pattern memory (12) from which control patterns for controlling the operation of the neural network are sequentially read out under control of a sequencer (13). Error absorption method 2) The weight correction means sets the fixed voltage of the dummy node to 0.
The first correction means calculates the offset voltage Q_f by calculating the weight data (1-Q_f) for error measurement; The mix error output formed from the voltage Q_f is set as Q_g, and the adder gain A_
Second step to find g=(Q_g-Q_f)/(1-Q_f)
3) The dummy node comprises a max value node circuit, and the max value node circuit comprises means for generating a fixed voltage. , comprising means for outputting the fixed voltage from a dummy node output at a predetermined timing.4) An error absorption method using weight correction in a neurocomputer according to claim 1, wherein the error detection means is configured to operate in a test mode according to a designation from an MPU. an enable signal for enabling the max value node circuit; and a test mode signal for selecting a specified output voltage of the max value node circuit as a 0 volt voltage or a non-0 volt voltage;
port register means (701) for generating a layer signal for specifying each layer; and a port register means (701) for generating a test mode signal from the max value node circuit to an input analog bus on the input side of the layer corresponding to the state of the layer signal when the enable signal is in the enable state. control means (702, 708, 7) for generating an enable signal for enabling generation of a fixed voltage corresponding to a state;
09, 703, 710) Error absorption method by weight correction in a neurocomputer according to claim 1. buffer means (711) for receiving the voltage; switching means for effectively outputting the detected output voltage when the enable signal output from the digital circuit means is in an enable state; and switching means connected to the switching means for outputting the detected output voltage. 2. An error absorption system using weight correction in a neurocomputer as claimed in claim 1, further comprising an A/D conversion means (707) for outputting a digital quantity to a digital control means including an MPU.
JP1045208A 1989-02-28 1989-02-28 Error absorption method by weight correction in neurocomputer. Expired - Lifetime JP2618470B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP1045208A JP2618470B2 (en) 1989-02-28 1989-02-28 Error absorption method by weight correction in neurocomputer.
DE69026740T DE69026740D1 (en) 1989-02-28 1990-02-28 Fault-absorbing system in a neural computer
EP90103900A EP0385436B1 (en) 1989-02-28 1990-02-28 An error absorbing system in a neuron computer
US07/486,647 US5216746A (en) 1989-02-28 1990-02-28 Error absorbing system in a neuron computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1045208A JP2618470B2 (en) 1989-02-28 1989-02-28 Error absorption method by weight correction in neurocomputer.

Publications (2)

Publication Number Publication Date
JPH02226382A true JPH02226382A (en) 1990-09-07
JP2618470B2 JP2618470B2 (en) 1997-06-11

Family

ID=12712852

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1045208A Expired - Lifetime JP2618470B2 (en) 1989-02-28 1989-02-28 Error absorption method by weight correction in neurocomputer.

Country Status (1)

Country Link
JP (1) JP2618470B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11928576B2 (en) 2018-10-18 2024-03-12 Denso Corporation Artificial neural network circuit and method for switching trained weight in artificial neural network circuit

Also Published As

Publication number Publication date
JP2618470B2 (en) 1997-06-11

Similar Documents

Publication Publication Date Title
JP2679738B2 (en) Learning processing method in neurocomputer
KR940001173B1 (en) Neurocomputer
TWI525558B (en) Resilient high - speed hardware reverse transfer and feedback type neural network system
KR950008840B1 (en) Neuro chip
US5220559A (en) Neuron architecture
TWI417797B (en) A Parallel Learning Architecture and Its Method for Transferred Neural Network
CA2112113A1 (en) Neural network architecture
EP0475732B1 (en) Asynchronous control system for a neuro computer
WO1991018347A1 (en) Spin: a sequential pipelined neurocomputer
US5216746A (en) Error absorbing system in a neuron computer
JPH02193251A (en) Error backward propagation and nerve network system
CN110689123B (en) Long-short term memory neural network forward acceleration system and method based on pulse array
Saeks et al. On the Design of an MIMD Neural Network Processor
US5857178A (en) Neural network apparatus and learning method thereof
JPH02226382A (en) Error absorbing system by weight correction in neuro-computer
JP2677656B2 (en) Central control system for neurocomputer
JPH02232786A (en) Error absorbing system by variable integral pulse in neurocomputer
JP2679733B2 (en) Hopfield net
JPH02232725A (en) Neurocomputer having multidummy node
Kechriotis et al. Training fully recurrent neural networks on a ring transputer array
KR940001172B1 (en) Learning processing system of network structure data processing unit
Jutten et al. Simulation machine and integrated implementation of neural networks: A review of methods, problems and realizations
WO2024091680A1 (en) Compute in-memory architecture for continuous on-chip learning
JP3463890B2 (en) Neural circuit mimic element
JPH05298276A (en) Signal processor