[go: up one dir, main page]

JPH02287859A - Data processor - Google Patents

Data processor

Info

Publication number
JPH02287859A
JPH02287859A JP1110896A JP11089689A JPH02287859A JP H02287859 A JPH02287859 A JP H02287859A JP 1110896 A JP1110896 A JP 1110896A JP 11089689 A JP11089689 A JP 11089689A JP H02287859 A JPH02287859 A JP H02287859A
Authority
JP
Japan
Prior art keywords
processing
neural network
processor
data
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP1110896A
Other languages
Japanese (ja)
Inventor
Tomoo Aoyama
青山 智夫
Naohiro Kondou
近藤 直紘
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Hitachi Computer Engineering Co Ltd
Original Assignee
Hitachi Ltd
Hitachi Computer Engineering Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd, Hitachi Computer Engineering Co Ltd filed Critical Hitachi Ltd
Priority to JP1110896A priority Critical patent/JPH02287859A/en
Publication of JPH02287859A publication Critical patent/JPH02287859A/en
Pending legal-status Critical Current

Links

Landscapes

  • Feedback Control In General (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、データ処理装置に関し、特に、ニューラルネ
ットワーク処理を複数プロセッサにマツピングして、多
層構造のニューラルネットワークアルゴリズムの情報処
理を行うデータ処理装置に関するものである。
[Detailed Description of the Invention] [Industrial Application Field] The present invention relates to a data processing device, and particularly to a data processing device that maps neural network processing to a plurality of processors and performs information processing using a multilayered neural network algorithm. It is related to.

〔従来の技術〕[Conventional technology]

近年、音声理解2画像理解、認知科学等の各分野におい
て、脳神経系の働きを模擬したニューラルネットワーク
システl\の研究が注目されている。
In recent years, research on neural network systems that simulate the functioning of the brain's nervous system has been attracting attention in various fields such as speech understanding, image understanding, and cognitive science.

この種のニューラルネットワークシステムは、種々のタ
イプが提案されており、それぞれに特徴を備えている。
Various types of neural network systems of this type have been proposed, each with its own characteristics.

この種のニューラルネットワークシステムの研究は、二
フ・ローゼンブラット、「パーセプトロン」、サイコロ
ジカル・レビュー65 (,1958)、 386頁N
408頁 [F、Rosenblatt、 ”The 
perceptron”。
Research on this type of neural network system can be found in Nifu Rosenblatt, "Perceptron", Psychological Review 65 (, 1958), p. 386N.
Page 408 [F. Rosenblatt, “The
perceptron”.

Psychologjcal  Review  65
.pp、386−408  (1958)コの文献に見
られるパーセプトロンの研究に基礎をおいている。
Psychologjcal Review 65
.. pp, 386-408 (1958) is based on the research on perceptrons found in the literature of Ko.

第7図は、パーセプトロンの概念を説明するため図であ
る。パーセプトロンは、第7図に示すように複数のニュ
ーロンの素子1を層状に複数層(A層、B層、およびC
M)3に配置し、各層3の間で各ニューロンの素子を、
結合度(重み)が可変な結合2によって接続したもので
ある。今、パーセプトロンに入力する入力データを(X
、)なるベクトルで表示すると、各ベクトル要素X、が
A層の各ニューロンiに入力される。また、可変な結合
の結合度の重みをwo、で表示すると、B層のニューロ
ンkに入力される信号ykは、A層の各ニューロンiか
らの入力の各バク1ヘル要素X。
FIG. 7 is a diagram for explaining the concept of a perceptron. As shown in FIG.
M) 3, and each neuron element between each layer 3,
They are connected by a connection 2 whose degree of connection (weight) is variable. Now, the input data to be input to the perceptron is (X
, ), each vector element X is input to each neuron i in the A layer. Furthermore, if the weight of the degree of connection of a variable connection is expressed as wo, then the signal yk input to the neuron k of the B layer is equal to each back 1 health element X of the input from each neuron i of the A layer.

がw4□で加重され積算されて、B層のニューロンkに
入力されるので、その信号ykは、yk=ΣwkJ’x
is weighted and integrated by w4□ and input to neuron k of layer B, so the signal yk is yk=ΣwkJ'x
.

として求められる。更に、B層のニューロンに自体によ
り、関数fによる変形が行われるので、B層のニューロ
ン素子kから出力される値Zkは、Z、=f(yk) となる。このようにして、B層のニューロンにの出力の
Zkが得られ、その出力Zkが更に0層のニューロンの
各素子に伝えられる。このニューロンの素子自体の関数
fとして、種々のタイプを用いることにより、種々のモ
デルが実現可能となるので、種々のシステムが提案され
ている。
It is required as. Furthermore, since the neurons in the B layer are themselves deformed by the function f, the value Zk output from the neuron element k in the B layer becomes Z,=f(yk). In this way, the output Zk to the B-layer neuron is obtained, and the output Zk is further transmitted to each element of the 0-layer neuron. Since various models can be realized by using various types of functions f of the neuron elements themselves, various systems have been proposed.

0層のニューロンに入る信号は、13層のニューロンに
入る信号と同様に変形される。第7図においては、煩雑
さを避けるために3層のネットワークで示したが、一般
的にはパーセラ1−ロンは多層のネットワークを有する
構造となっている。
The signal entering the neuron in layer 0 is transformed in the same way as the signal entering the neuron in layer 13. In FIG. 7, a three-layer network is shown to avoid complexity, but Parcellon generally has a structure having a multi-layer network.

今、CMのニューロンの各素子の状態をベクトル(Z、
)で表示し、また、ベクトル(○□)を当該パーセプト
ロンから出力する所望の目的出力とすると、所望の出力
(O8)ベクトルを得るためには、荷重w、4および関
数fのパラメータを最適化しないと、一般的に(Z、)
ベクトルの出力は、目的の出力(○、)ベクトルに一致
しない。
Now, the state of each element of the CM neuron is expressed as a vector (Z,
), and if the vector (○□) is the desired target output output from the perceptron, then in order to obtain the desired output (O8) vector, optimize the parameters of the weights w, 4 and the function f. Otherwise, generally (Z,)
The output of the vector does not match the desired output (○,) vector.

荷重w、4および関数fのパラメータ等を最適化するた
めの一手法として、例えば、二乗誤差を最小にする方法
がある。これは、システム出力のC層の出力の(Z、)
ベクトルを目的出力の(0,)ベクトルに一致させるべ
く、荷重w、6を最適化して定めるため、荷重w1は、
2乗誤差d;d=Σ(o、−z、)2 を極小化するように荷重wL5を変化させる。このよう
に荷重W工J7を変化させる操作を学習という。
One method for optimizing the parameters of the loads w, 4, the function f, etc. is, for example, a method of minimizing the squared error. This is the (Z,) of the output of the C layer of the system output.
In order to optimize and determine the weight w,6 in order to match the vector with the target output (0,) vector, the weight w1 is
The load wL5 is changed so as to minimize the squared error d; d=Σ(o, -z,)2. The operation of changing the load W work J7 in this way is called learning.

数多くの学習を種々の入カバターン(xj、および目的
ベクトル(O8)ヨ′について繰り返し行い、2乗誤差
d、を極小化するように学習を行って荷重WiJを定め
ることにより、m種の入カデタをm′種のデータに分類
できるパーセプトロンのシステムを構成することができ
る。
By repeating a large number of learnings for various input patterns (xj) and objective vectors (O8), and determining the load WiJ by learning to minimize the squared error d, m types of input data can be obtained. It is possible to construct a perceptron system that can classify data into m' types of data.

パーセプトロンは、このように最適化した加重を定める
ことにより所定の分類機能を持つので、種々雑多な入力
ベクトルを、ある1つのカテゴリに対応させて分類する
ことが可能である。即ちパーセプトロンによりパターン
認識が可能になる。
Since the perceptron has a predetermined classification function by determining the weights optimized in this way, it is possible to classify various miscellaneous input vectors into one category. That is, the perceptron enables pattern recognition.

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

ところで、上述したように、パーセプトロンタイプの多
層構造のニューラルネットワークシステムは、原理的に
パターン認識作用を有する。しかしながら、数多くのパ
ターンを認識できる構成にしようとすれば、ニューラル
ネットワークを構成する要素数にニューロン数および結
合数)を飛宥目的に増大する必要がある。経験的には、
認識バタン数をNとすると、少なくとも1゜ON以十の
ニューロン数が必要なことが知られている。
By the way, as described above, a perceptron type multilayer neural network system has a pattern recognition function in principle. However, in order to create a configuration that can recognize a large number of patterns, it is necessary to increase the number of elements constituting the neural network (the number of neurons and the number of connections) to an extent. From experience,
It is known that when the number of recognized buttons is N, the number of neurons at least 1°ON or more is required.

ニューロン数の増大は、また、学習操作の回数を増大さ
せ、2乗誤差dの極小化のための学習過程がローカルミ
ニマムに落ち入り、そこから抜は出せなくなる危険性を
増大させる。このため、多層構造型のニューラルネット
ワークの規模を単純に拡大していくには限度がある。ま
た、このようなシステムを構成するには、システムを稼
働させるまでの学習時間が増大し、更に、ニューラルネ
ットワークの規模が拡大すると、ネットワーク内の荷重
を定める場合の情報収束性に問題が多い。
An increase in the number of neurons also increases the number of learning operations, increasing the risk that the learning process for minimizing the squared error d will reach a local minimum, from which it will be impossible to escape. For this reason, there are limits to simply increasing the scale of multilayer neural networks. In addition, in order to configure such a system, the learning time required to operate the system increases, and furthermore, as the scale of the neural network increases, there are many problems in information convergence when determining the loads in the network.

本発明は、上記問題点を解決するためになされたもので
ある。
The present invention has been made to solve the above problems.

本発明の目的は、大規模なニューラルネットワークシス
テムを学習時間の増大、収束性の問題を回避して構成す
ることにある。
An object of the present invention is to configure a large-scale neural network system while avoiding problems such as increased learning time and convergence.

また、本発明の他の目的は、ニューラルネットワークシ
ステムの構築に関する問題を、アルゴリズム、それを実
行するハードウェア、そのハードウェア上でアルゴリズ
ムを実行させるラフl−ウェアに関して、一つの解決策
を与えることにある。
Another object of the present invention is to provide a solution to the problem of constructing a neural network system in terms of an algorithm, hardware for executing it, and rough l-ware for executing the algorithm on the hardware. It is in.

更に、本発明の別の目的は、ニューラルネッ1へワーク
処理を複数プロセッサにマツピングして、多層構造のニ
ューラルネットワークアルゴリズムによる情報処理を行
うデータ処理装置に提供することにある。
Furthermore, another object of the present invention is to provide a data processing apparatus that maps work processing to a neural network 1 to a plurality of processors and performs information processing using a multilayer neural network algorithm.

本発明の前記ならびにその他の目的と新規な特徴は、本
明細書の記述及び添付図面によって明らかになるであろ
う。
The above and other objects and novel features of the present invention will become apparent from the description of this specification and the accompanying drawings.

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

上記目的を達成するため、本発明のデータ処理装置は、
複数のプロセッサ要素と、複数のメモリ要素と、複数の
プロセッサ要素および複数のメモリ要素を時間的および
空間的に2次元分割した各グループ単位に、ニューラル
ネジl−ワークの各層の処理を対応させて、各グループ
単位のプロセッサ要素およびメモリ要素で行う情報処理
の制御を行う制御管理部とを備え、ニューラルネットワ
ク処理を複数プロセッサにマツピングして、多層構造の
ニューラルネットワークアルコリズムによる情報処理を
行うことを特徴とする。
In order to achieve the above object, the data processing device of the present invention includes:
A plurality of processor elements, a plurality of memory elements, a plurality of processor elements and a plurality of memory elements are temporally and spatially divided into two-dimensional groups, and the processing of each layer of the neural screw l-work is made to correspond to each group. , a control management unit that controls information processing performed by processor elements and memory elements in each group, and maps neural network processing to multiple processors to perform information processing using a multilayered neural network algorithm. Features.

〔作用〕[Effect]

前記手段によれば、データ処理装置には、複数のプロセ
ッサ要素と、複数のメモリ要素と、複数のプロセッサ要
素および複数のメモリ要素を時間的および空間的に2次
元分割した各グループ単位に、ニューラルネットワーク
の各層の処理を対応させて、各グループ単位のプロセッ
サ要素およびメモリ要素で行う情報処理の制御を行う制
御管理部が備えられる。このデータ処理装置においては
、複数のプロセッサ要素および複数のメモリ要素を用い
て、制御管理部が、ニューラルネットワーク処理を複数
プロセッサにマツピングする制御を行い、多層構造のニ
ューラルネッ1−ワークアルコリズムによる情報処理を
行う。
According to the above means, the data processing device includes a plurality of processor elements, a plurality of memory elements, and a neural network for each group obtained by dividing the plurality of processor elements and the plurality of memory elements two-dimensionally in time and space. A control management unit is provided that controls information processing performed by processor elements and memory elements in each group by associating processing in each layer of the network. In this data processing device, a control management unit uses a plurality of processor elements and a plurality of memory elements to perform control to map neural network processing to a plurality of processors, and uses a multilayered neural network algorithm to control the mapping of neural network processing to a plurality of processors. Perform processing.

すなわち、データ処理装置において、多層構造のニュー
ラルネットワークアルゴリズムによる情報処理を行うた
め、多層構造のニューラルネットワークの各処理プロセ
スに構造化という概念を導入し、データ処理を行うシス
テムを構築する。このような構造化した処理プロセスの
システム構成により、構造化された各処理のプロセスに
おいて、各々のニューラルネジ1−ワーク上での学習ア
ルゴリズムが実行可能となる。構造化したニューラルネ
ットワーク上でのデータ処理を実現するため、データ処
理装置においては、ハードウェアおよびソフトウェアシ
ステムによる各々の処理プロセスを時間的および空間的
に2次元分割して存在させ、当該処理プロセスに、それ
ぞれのニューラルネットワーク処理を実行させる。この
処理の制御は、制御管理部が行う。
That is, in order to perform information processing using a multilayer neural network algorithm in a data processing device, a system for data processing is constructed by introducing the concept of structuring into each processing process of the multilayer neural network. With such a system configuration of structured processing processes, a learning algorithm can be executed on each neural screw 1-work in each structured processing process. In order to realize data processing on a structured neural network, in a data processing device, each processing process by the hardware and software system is divided into two dimensions in time and space, and the processing process is , execute each neural network process. This processing is controlled by the control management section.

これにより、任意のニューラルネットワークを分割し、
分割したネットワークの各層の間のニューロン間の結合
処理を、1または複数のプロセツサにマツピングして処
理することができる。さらに、分割して実行した処理結
果を逐次的に処理し、記号処理等の手法と組合せて使用
することができる。すなわち、ニューラルネットワーク
の処理が言語処理の中の1サブルーチンの□処理と等価
なものとなり、簡易にニューラルネットワークの処理を
実行することができる。したがって、例えば、問題を分
割するための方法、記憶による組合せ構造の処理方法な
ど、ニューラルネジ1〜ワークの処理で指摘されている
処理の不十分さが解消される。
This allows you to partition any neural network and
Connection processing between neurons between each layer of the divided network can be mapped and processed by one or more processors. Furthermore, the results of the divided and executed processing can be sequentially processed and used in combination with techniques such as symbolic processing. That is, the processing of the neural network becomes equivalent to the □ processing of one subroutine in language processing, and the processing of the neural network can be easily executed. Therefore, for example, the insufficiency of processing pointed out in the processing of Neural Screw 1 to Work, such as a method for dividing a problem and a method for processing a combinatorial structure by memory, is resolved.

〔実施例〕〔Example〕

以下、本発明の一実施例を図面を用いて具体的に説明す
る。
Hereinafter, one embodiment of the present invention will be specifically described using the drawings.

なお、実施例を説明するための全回において、同一要素
のものは同一符号を付け、その繰り返しの説明は省略す
る。
Note that throughout the explanation of the embodiments, the same elements are given the same reference numerals, and repeated explanations thereof will be omitted.

まず、本発明の一実施例にかかるデータ処理装置を具体
的に説明する前に、内容の理解を容易にするため、サブ
セットのニューラルネットワークを組合せて認識システ
ムを構築する場合を例として、原理を説明する。
First, before specifically explaining a data processing device according to an embodiment of the present invention, in order to make the content easier to understand, we will explain the principle using an example where a recognition system is constructed by combining neural networks of subsets. explain.

第8図は、階層的ニューラルネットワークのシステム構
成の概念を説明するブロック図である。
FIG. 8 is a block diagram illustrating the concept of the system configuration of a hierarchical neural network.

ここでの認識システムに与える複数の入カデタを(X、
) と表わすと、この(X、)をサブセットに分けて、
各々のサブセットについて各要素を識別するニューラル
ネットワーク(サブセットニューラルネットワーク)を
作る。入力データをサブセットに分けることによって、
例えば構成要素数がn−1になると、ネットワークのニ
ューロン数はn−1でよくなり、ニューロン間の結合数
はn−2となって、学習時間は減少する。このため、こ
の種のニューラルネットワークによってシステムを構成
する場合、入力データをサブセットに分けて、各々のサ
ブセットについて各要素を識別するサブセットニューラ
ルネットワーク(サブニューラルネットワーク)を作り
、各々のサブニューラルネットワークを組合せてシステ
ムを構成する。
Here, multiple input data given to the recognition system are (X,
), then dividing this (X, ) into subsets,
Create a neural network (subset neural network) that identifies each element for each subset. By dividing the input data into subsets,
For example, when the number of constituent elements becomes n-1, the number of neurons in the network can be n-1, the number of connections between neurons is n-2, and the learning time is reduced. Therefore, when configuring a system using this type of neural network, input data is divided into subsets, a subset neural network (sub-neural network) is created that identifies each element for each subset, and each sub-neural network is combined. and configure the system.

第8図においては、各サブセット単位で学習したサブニ
ューラルネットワークを組合せて、1個の認識システム
を構築する。このシステム構成において、AMは入力デ
ータを受信するニューロン層である。B層は入力データ
のサブセットを認識するサブニューラルネットワーク4
から構成される。0層はB層のネットワークの出力を選
択し、目的の出力を得るためのグルーネットワーク5で
ある。このグルーネットワーク5は、複数ネットワーク
を結合するネットワークである。以下、複数のネットワ
ークを結合するネットワークをグルーネットワークとい
う・。
In FIG. 8, one recognition system is constructed by combining the sub-neural networks learned for each subset. In this system configuration, AM is a neuron layer that receives input data. The B layer is a sub-neural network 4 that recognizes a subset of input data.
It consists of The 0th layer is a glue network 5 for selecting the output of the B layer network and obtaining the desired output. This glue network 5 is a network that connects multiple networks. Hereinafter, a network that connects multiple networks is called a glue network.

第8図のシステム構成のネットワークでは、サブニュー
ラルネットワーク4の出力をグルーネットワーク4で判
定し、全入力データ(X、)の認識を行う。しかし、こ
のシステム構成では正しく認識される確率が、極めて低
いことが知られている。
In the network having the system configuration shown in FIG. 8, the output of the sub-neural network 4 is determined by the glue network 4, and all input data (X,) is recognized. However, it is known that the probability of correct recognition with this system configuration is extremely low.

この原因は、サブニューラルネットワーク4が学習した
サブセットX8については正しい出力を与えるが、学習
していないサブセット■7に対してはどのような出力を
与えるかが保障されていないからである。また、各々の
サブニューラルネットワークの出力は、サブセット集合
の中で学習した重みにより認識した結果であり、それ自
身から新たに識別を強化するような情報をとり出せない
性質をもっている。なお、このようなシステム構成で注
意すべきことは、前述したネットワークの目的値のベク
トル(0□)を得るためのシステム構成とするのである
が、この目的値(O工)は、天下り的に予め設定したも
のであって、(O4)をそのような値にとる必然性はな
い。
The reason for this is that although the sub-neural network 4 gives a correct output for the learned subset X8, it is not guaranteed what kind of output it will give for the unlearned subset 7. Furthermore, the output of each sub-neural network is the result of recognition using the weights learned in the subset set, and has the property that no new information that would strengthen discrimination can be extracted from itself. What should be noted in such a system configuration is that the system configuration is to obtain the target value vector (0□) of the network mentioned above, but this target value (O) is It is set in advance, and there is no necessity for (O4) to take such a value.

サブニューラルネットワークからの出力は、どの程度強
く「学習した情報」を認識したかどうかという情報しか
取り出せない。従って、サブニューラルネットワークの
出力を選択するグルーネットワークの選択機構だけでは
、全入力データ(X、)に対して十分な識別が困難であ
る。
The only information that can be extracted from the output from the sub-neural network is how strongly the ``learned information'' has been recognized. Therefore, it is difficult to sufficiently discriminate all input data (X,) using only the glue network selection mechanism that selects the output of the sub-neural network.

このような第8図のニューラルネットワークのシステム
構成の欠点に対しては、例えば、次のようにしてシステ
ムを構成する方法がある。
In order to overcome the drawbacks of the system configuration of the neural network shown in FIG. 8, for example, there is a method of configuring the system as follows.

第1の方法は、サブセットX、以外の情報■7に対して
も誤った出力を出さないようにサブセットのサブニュー
ラルネットワークを学習させておくことである。即ち、 が極小化されるように学習する。この学習においては、
演算量がn ’ n−”=n−”オーダーになる。
The first method is to train the sub-neural network of the subset so as not to output an erroneous output even for information (7) other than the subset X. That is, learning is performed so that is minimized. In this study,
The amount of calculation is on the order of n'n-"=n-".

第2の方法は、サブニューラルネットワークを全入力デ
ータ(X、)に含まれる種々の特徴に対応させるように
学習させることである。その学習の結果、サブニューラ
ルネットワークの出力が特徴抽出情報を示すようになる
と、クルーネットワークにより抽出した特徴を組合せて
入力データのパターン認識が可能になる。このグルーネ
ットワークの出力は、特徴ベクトルを(b、)として、
特徴を数式化すれば、 となる。ここで、Kは、特徴が定義される空間であり、
前記のΣが定義されている空間より等しいか小さい。し
たがって、今、Q個の特徴でパターン認識が可能になっ
たとすると、グルーネットワークの抽出ベクトルを(a
l)として、目的値のベクトル(O9)に相当するもの
は ΣaL  ΣbLTL となる。従って、 を極小化する学習になる。この学習の操作をサブニュー
ラルネットワーク、グルーネットワークに分けて、出力
(2,)を参照して目的値(○、)となるように行い、
それぞれベクトル(ai、) 、  (bi)を定める
変形を行う。しかし、ベクトル(b、)について学習す
ることは、フィードバック機構を持たない多層ニューラ
ルネットワクでは困難である。また、特徴パターンが既
知であるため、その学習では収束が困難となる。
The second method is to train the sub-neural network to correspond to various features included in the total input data (X,). As a result of this learning, when the output of the sub-neural network indicates feature extraction information, it becomes possible to recognize patterns in input data by combining the features extracted by the crew network. The output of this glue network is given by the feature vector (b,),
If we convert the characteristics into a mathematical formula, we get the following. where K is the space in which the features are defined,
is equal to or smaller than the space in which Σ is defined. Therefore, if pattern recognition is now possible with Q features, the extraction vector of the glue network is (a
l), the vector corresponding to the target value vector (O9) is ΣaL ΣbLTL. Therefore, the learning is to minimize . This learning operation is divided into a sub-neural network and a glue network, and the output (2,) is referred to and the target value (○,) is achieved.
Transformation is performed to determine vectors (ai,) and (bi), respectively. However, learning about the vector (b,) is difficult in a multilayer neural network without a feedback mechanism. Furthermore, since the feature pattern is already known, it is difficult to converge by learning it.

したがって、ここでは第1の方法を用いて、認識システ
ムのシステム構成を行い、認識精度を高めていく方向で
議論をすすめる。
Therefore, we will use the first method to configure the recognition system and discuss how to improve recognition accuracy.

第9図は、分割型ニューラルネジ1−ワークのシステム
構成の概念を説明するブロック図である。
FIG. 9 is a block diagram illustrating the concept of the system configuration of the split type neural screw 1-work.

第9図において、6は入力データのサブセラ1−につい
て最適化したサブニューラルネットワークであり、7は
グルーネッ1−ワークである。第9図のシステム構成で
は、理解を容易とし煩雑さを避けるため、サブニューラ
ルネットワークは2つのサブセットとしている。グルー
ネットワーク7は、第8図のグルーネットワーク5に相
当するものであり、それと同様なものであるが、ここで
は直接にA層のニューロン層の入力データの受信部に接
続している。また、第9図のシステム構成において、グ
ルーネジ1ヘワーク7に、複数の各サブニューラルネッ
トワーク6の出力を分離する作用を学習させることがで
きれば、複数のサブニューラルネットワークを組合せて
、入力データ(XS)を各々に分離できるようになる。
In FIG. 9, 6 is a sub-neural network optimized for sub-cell 1- of input data, and 7 is a glue network 1-work. In the system configuration shown in FIG. 9, the sub-neural network is divided into two subsets in order to facilitate understanding and avoid complexity. The glue network 7 corresponds to and is similar to the glue network 5 in FIG. 8, but here it is directly connected to the input data receiving section of the neuron layer of the A layer. In addition, in the system configuration shown in FIG. 9, if the glue screw 1 and work 7 can be made to learn the function of separating the outputs of each of the plurality of sub-neural networks 6, it is possible to combine the plurality of sub-neural networks and input data (XS). can be separated into each.

ニューラルネットワクの成る層の処理は、ニューロン間
の結合荷重の群であられされる。今、結合荷重の群の各
要素を行列の形式で示すと、第10図に示すようになる
。この各要素を示す行列8は、要素の値を「O」で示す
行列8aと、要素の値を「1」で示す行列8bを含む行
列となる。この行列で、結合荷重は対称行列で表わされ
るものとする。例えば、第10図に示す行列8は、要素
の値を「O」で示す行列8aは、第8図のシステム構成
において、サブニューラルネットワークu OI+が識
別する作用に相当する部分である。また、要素の値を「
1」で示す行列は、サブニューラルネットワーク゛1″
が識別する作用に相当する。両サブニューラルネットワ
ークで正しく認識できなくなるということは、第10図
の行列8のハツチングした部分8Cの作用が0行列と見
なせないということと同じである。第9図のシステム構
成の各サブニューラルネットワークの相互作用を、第1
0図のような行列で表示すると、第11図に示すような
行列9となる。第11図の行列9では、G部分がグルー
ネットワーク7(第9図)の作用に相当する。F部分は
グルーネットワーク7とサブニューラルネットワーク6
との間の相互部分で、第9図のシステム構成における0
層の相互作用部に相当する。また、E部分は、第9図の
ような分割型のシステム構成では0行列である。すなわ
ち、第9図のシステム構成のニューラルネットワークシ
ステムが正しく認識する系として作成する条件は、入カ
デタ(X8)を人為的にサブセットに分けたとき、「サ
ブセット間の相互作用が分離でき、この分離によってサ
ブセット内部の各要素による識別作用が影響をうけない
」ことと同等である。
The processing of the layers of the neural network is done by groups of connection weights between neurons. Now, if each element of the group of connection loads is shown in the form of a matrix, it will be as shown in FIG. The matrix 8 indicating each element is a matrix including a matrix 8a indicating the element value with "O" and a matrix 8b indicating the element value with "1". In this matrix, the connection weights are assumed to be expressed as a symmetric matrix. For example, in the matrix 8 shown in FIG. 10, the matrix 8a whose element values are indicated by "O" is a portion corresponding to the action identified by the subneural network u OI+ in the system configuration of FIG. 8. Also, change the value of the element to “
The matrix indicated by ``1'' is the sub-neural network ``1''
corresponds to the action identified by The fact that both sub-neural networks cannot correctly recognize it is the same as the fact that the action of the hatched portion 8C of matrix 8 in FIG. 10 cannot be regarded as a 0 matrix. The interaction of each sub-neural network in the system configuration shown in Figure 9 is
When displayed in a matrix as shown in FIG. 0, a matrix 9 as shown in FIG. 11 is obtained. In the matrix 9 in FIG. 11, the G portion corresponds to the action of the glue network 7 (FIG. 9). F part is glue network 7 and sub neural network 6
0 in the system configuration of Figure 9.
Corresponds to the interaction part of the layer. Further, the E portion is a 0 matrix in a split system configuration as shown in FIG. In other words, the conditions for creating a system for correct recognition by the neural network system with the system configuration shown in Figure 9 are that when the input data (X8) is artificially divided into subsets, the interaction between the subsets can be separated; This is equivalent to ``the discrimination effect of each element inside the subset is not affected by''.

サブセット間の相互作用を特徴抽出という言葉に置換え
ると、第11図の行列で示すようなシステム構成は、特
徴という情報を使って、ニューラルネットワーク″0”
とニューラルネットワークtl I 11間の類似成分
を分離させて、システム構成を行うことと同じである。
If we replace the interaction between subsets with the term feature extraction, the system configuration shown by the matrix in Figure 11 is a neural network "0" using information called features.
This is the same as constructing a system by separating similar components between the neural network tl I 11 and the neural network tl I 11.

ところで、グルーネットワークもまたサブニューラルネ
ットワークで行ったような形式で分割可能である。した
がって、ニューラルネットワークシステムは、それぞれ
に分割したサブニューラルネットワークの組合せとして
、システムを構成することかできる。
By the way, glue networks can also be divided in the same way as subneural networks. Therefore, the neural network system can be configured as a combination of sub-neural networks that are each divided into sub-neural networks.

以下、サブニューラルネットワークの組合せとして構成
されたニューラルネットワークシステムの処理を実行す
るハードウェアについて説明する。
Hereinafter, hardware that executes processing of a neural network system configured as a combination of sub-neural networks will be described.

ニューラルネットワーク処理は、ニューロン間の結合荷
重をメモリ上の配列にとって、各ニューロンに入力する
信号の強度を演算部で処理する場合には、演算が行列計
算等であられされる内積計算になる。したがって、ベク
トルプロセッサまたはパラレルプロセッサを用いて高速
に処理できる。
In neural network processing, when the connection weights between neurons are arranged in a memory and the intensity of the signal input to each neuron is processed by a calculation unit, the calculation becomes an inner product calculation performed by matrix calculation or the like. Therefore, high-speed processing is possible using a vector processor or a parallel processor.

もちろん速度は遅いが、汎用計算機でも演算処理を行う
ことは可能である。いずれの場合もニューラルネットワ
ークをサブニューラルネットワークに区分しておけば、
計算時間が節約できると共に、カレントには不要な結合
荷重などのデータはディスク装置上に保持しておくこと
により、メモリ領域の節約が可能である。
Of course, the speed is slow, but it is possible to perform arithmetic processing on a general-purpose computer. In either case, if you divide the neural network into subneural networks,
In addition to saving calculation time, it is possible to save memory area by holding data such as connection loads that are currently unnecessary on the disk device.

このため、ニューラルネットワークの処理を実現するハ
ードウェアとしては、メモリ、演算器。
For this reason, the hardware that realizes neural network processing is memory and arithmetic units.

外部記憶装置、およびこれらの演算要素を制御する制御
回路が必要である。特に演算量が膨大になるので、パラ
レルアーキテクチャを用いたシステム構成を行うことに
なる。
An external storage device and a control circuit to control these computing elements are required. In particular, since the amount of calculation becomes enormous, a system configuration using a parallel architecture is required.

多層構造のニューラルネジ1−ワークでは、各層内のニ
ューロン処理が、独立に計算できるので、プロセッサ要
素を時分割使用することによりニューロンとプロセッサ
の対応を可変にすることができる。この場合、プロセッ
サ要素を時分割使用する制御を行い、更にニューロン要
素とプロセッサ要素の対応関係を可変にする制御を行う
ために、システム制御部(管理制御部)が設けられる。
In a neural screw 1-work with a multilayer structure, neuron processing in each layer can be calculated independently, so the correspondence between neurons and processors can be made variable by using processor elements in a time-division manner. In this case, a system control section (management control section) is provided to control the time-division use of the processor elements and also control to vary the correspondence between the neuron elements and the processor elements.

このようなシステム制御部を設けることにより、異なる
ニューロン数のサブニューラルネットワークの処理を同
一のプロセッサ要素数のハードウェアで実現することが
できる。
By providing such a system control unit, processing of subneural networks having different numbers of neurons can be realized with hardware having the same number of processor elements.

この実施例では、任意のニューラルネットワクシステム
を、現実の有限のハードウェア上に展開するため、次の
要素によりデータ処理装置が構成される。すなわち、 「(1)複数のプロセッサ要素、メモリ要素を時−20
= 間、空間の方向に2次元形式で分割するハードウェア管
理部と、 (2)時間、空間の方向に2次元形式で分割された各プ
ロセッサ要素と各メモリ要素との処理単位の要素(以下
、リソースという)によって、ニューラルネットワーク
の任意の眉間の動作をシミュレ−1へ可能とするソフト
ウェア管理手段と、(3)時間、空間の方向の2次元形
式で分割された各プロセッサ要素と各メモリ要素の間の
接続関係、を変化させる論理部と、 (4)プロセッサ要素に付随するメモリ要素の内容を、
各々のプロセッサが共通にアクセスできる主記憶メモリ
(ソウトウエア的には共通記憶という)へ書出す論理部
と、 (5)共通記憶からプロセッサに付随するメモリ要素へ
データを読出し書込む論理部と、(6)共通記憶上のデ
ータに対しシリアルな処理を行い結果を共通記憶へ格納
する処理部と、」を組合せてたハードウェア手段および
、ソフトウェア手段によりデータ処理装置が構成される
In this embodiment, in order to develop an arbitrary neural network system on actual limited hardware, a data processing device is configured with the following elements. That is, ``(1) Multiple processor elements and memory elements at -20
= A hardware management unit that is divided in two-dimensional format in the time and space directions; (2) Processing unit elements of each processor element and each memory element that are divided in two-dimensional format in the time and space directions (hereinafter referred to as (3) each processor element and each memory element divided in two-dimensional form in the time and space directions; (4) the contents of the memory element attached to the processor element;
(5) a logic unit that writes data to a main memory that can be commonly accessed by each processor (referred to as common memory in software terms); (5) a logic unit that reads and writes data from the common memory to memory elements attached to the processor; 6) A processing unit that serially processes data on the common memory and stores the results in the common memory, and a data processing device is constituted by hardware means and software means.

このようなハードウェア手段および、ソフ1へウェア手
段で構成するデータ処理装置において、サブニューラル
ネットワーク、グルーネッ[ヘワークの処理アルゴリズ
ムに対応させた処理を行う。
In a data processing device constituted by such hardware means and software means, processing corresponding to the processing algorithm of sub-neural network and Groene [Hewerk] is performed.

複数のニューラルネットワークの情報は共通記憶(主記
憶)上に記憶する。主記憶に入り切らない場合は一部の
ニューラルネットワークの情報をディスク装置上に記憶
しておく。
Information from multiple neural networks is stored in a common memory (main memory). If it does not fit into the main memory, part of the neural network information is stored on the disk device.

1つのニューラルネットワーク(以下、ネットワークと
略称する)の処理を行うとき、111分のネッi・ワー
クの情報をメモリ群へ移す。プロセッサ要素の数をに個
とし、1層分のネッ1−ワークのニューロン数をQ個と
すると、(II / ]0+1 = kのに個に時分割
してプロセッサ要素を使用する。
When processing one neural network (hereinafter abbreviated as network), 111 minutes of network information is transferred to the memory group. Assuming that the number of processor elements is , and the number of neurons in one layer of network is Q, the processor elements are time-divided into (II/]0+1=k.

メモリ群にはプロセッサへ入力する信号データ。The memory group contains signal data input to the processor.

結合荷重データが格納される。この処理には、前述した
論理部(5)が用いられる。これらのデータの個数をP
十P * nとすると、これらは((p十p*p)/k
)+1に区分される。なお、ここでは説明を簡単にする
ため、(メモリ数)=(プロセッサ要素数)としている
。このため、単に区分されるだけでなく、k個のメモリ
要素にp+p*R個のデータが、k個にインリーブされ
た主記憶上のデータのように格納される。
Connection load data is stored. The aforementioned logic unit (5) is used for this processing. The number of these data is P
Assuming 10P*n, these are ((p10p*p)/k
)+1. Note that here, in order to simplify the explanation, it is assumed that (number of memories)=(number of processor elements). Therefore, in addition to being simply partitioned, p+p*R pieces of data are stored in k pieces of memory elements like data on the main memory that is interleaved with k pieces.

そして、前述した論理部(3)によって、各々のメモリ
要素とプロセッサ要素とが接続されて、ハードウェア管
理部(1)によって、処理が開始される。
Then, each memory element and processor element are connected by the logic unit (3) described above, and processing is started by the hardware management unit (1).

時間、空間の方向に2次元形式で分割された処理単位の
要素における各処理が完了すると、論理部(4)によっ
て、各メモリ要素におけるデータが主記憶上に書出され
る。
When each process in the elements of the processing unit divided in two-dimensional format in the time and space directions is completed, the data in each memory element is written onto the main memory by the logic unit (4).

このような一連の処理が、ソフトウェア管理手段(2)
で制御され、1つのサブニューラルネットワークおよび
グルーネットワークの処理が完了する。これらの処理の
結果から、種々の判定を処理部(6)が行い、最終的な
認識結果を主記憶上に出力する。
This series of processing is software management means (2)
, and the processing of one sub-neural network and glue network is completed. Based on the results of these processes, the processing unit (6) makes various determinations and outputs the final recognition results onto the main memory.

以上、ニューラルネットワーク処理を行うシステム構成
を原理について説明したが、次に、このニューラルネッ
トワークシステムのシステム構成の原理に基づいて構成
したデータ処理装置の一実施例について説明する。
The principle of the system configuration for performing neural network processing has been described above.Next, an embodiment of a data processing apparatus configured based on the principle of the system configuration of this neural network system will be described.

第1図は、本発明の一実施例にかかるデータ処理装置の
構成を示すブロック図である。第1図のデータ処理装置
のブロック図は、前述の原理に4、(づいて構成したデ
ータ処理装置の具体例となっており、ニューラルネット
ワークシステムを仮想的に実現するハードウェアの概略
システム構成を示すブロック図となっている。
FIG. 1 is a block diagram showing the configuration of a data processing device according to an embodiment of the present invention. The block diagram of the data processing device shown in FIG. This is a block diagram shown.

第1図において、10は主記憶、11はメモリリクエス
タを含むデータ転送回路である。12は各処理単位のデ
ータを格納するメモリ要素であり、空間的に分割した処
理単位に対応して複数個が設けられている。13はスイ
ッチング回路、14はプロセッサ要素であり、複数個が
設けられている。また、15は複数個のプロセッサ要素
およびメモリ要素の間の接続をスイッチング回路13に
より制御するコン1−ローラ、16はプロセッサ要素1
4の動作を無効/有効化するための制御情報(以下マス
ク情報という)を格納するマスク記憶部、17はハード
ウェア全体を制御するマスクプロセッサである。
In FIG. 1, 10 is a main memory, and 11 is a data transfer circuit including a memory requester. A memory element 12 stores data of each processing unit, and a plurality of memory elements are provided corresponding to the spatially divided processing units. 13 is a switching circuit, 14 is a processor element, and a plurality of them are provided. Further, 15 is a controller 1-roller that controls connections between a plurality of processor elements and memory elements by the switching circuit 13, and 16 is a processor element 1.
17 is a mask processor that controls the entire hardware.

マスタプロセッサ17および主記憶10との関係は、ノ
イマンアーキテクチャにおける汎用プロセッサと主記憶
との関係と同様な関係であり、同様な動作をなす。すな
わち、主記憶上のプログラムを読出し、読み出したプロ
グラムを順序だてて逐次に実行し、主記憶上のデータを
処理していく。
The relationship between the master processor 17 and the main memory 10 is similar to the relationship between the general-purpose processor and the main memory in the Neumann architecture, and they perform similar operations. That is, the program reads the program on the main memory, executes the read program sequentially in order, and processes the data on the main memory.

第1図のシステム構成において、メモリ要素12はマス
クプロセッサ17から見ると(n+1)ウェイにインタ
ーリーブされたローカルメモリに見える。データ転送回
路11は(n+1)本のデータ転送パスをシステムに提
供する。これらのローカルメモリの機能およびデータ転
送バスの機能はマスタプロセッサで実行される命令によ
って管理される。
In the system configuration shown in FIG. 1, the memory element 12 appears to be an (n+1)-way interleaved local memory when viewed from the mask processor 17. The data transfer circuit 11 provides (n+1) data transfer paths to the system. These local memory functions and data transfer bus functions are managed by instructions executed by the master processor.

コントローラ15は(n+1)個のプロセッサ要素14
の起動、処理完了を管理する。また、各プロセッサ要素
14とメモリ要素12との間の接続関係をスイッチング
回路13を制御して管理する。コントローラ15による
各々のプロセッサ要素の処理系の起動は、マスタプロセ
ッサ17で実行される命令によって行われる。
The controller 15 includes (n+1) processor elements 14
Manage startup and processing completion. Further, the connection relationship between each processor element 14 and memory element 12 is managed by controlling the switching circuit 13. Activation of the processing system of each processor element by the controller 15 is performed by an instruction executed by the master processor 17.

プロセッサ要素14とメモリ要素12との間の関係は、
また、ノイマンアーキテクチャにおける汎用プロセッサ
と主記憶との間の関係と同様である。
The relationship between processor element 14 and memory element 12 is
The relationship is also similar to the relationship between the general-purpose processor and main memory in the Neumann architecture.

プロセッサ14の命令はマスクプロセッサ17から見る
と、データとなっている。
When viewed from the mask processor 17, the instructions of the processor 14 are data.

第2図は、各メモリ要素におけるデータの割付けを説明
するメモリマツプの一例を示すための図である。第2図
を参照して、各メモリ要素12の使用法の例を説明する
。第2図において、20はプロセッサの命令を格納する
領域、21は前段のニューロンの状態を保持する領域、
22は前段のニューロンと処理対象段のニューロン間の
結合荷重を保持する領域である。結合荷重の領域22は
nXnの行列の形式で格納されている。この結合荷重の
領域22と同様な領域23がP個分確保され、パラメー
タtによって識別される値である。パラメータtはプロ
セッサ群を時分割使用する場合に使用される値である。
FIG. 2 is a diagram showing an example of a memory map illustrating data allocation in each memory element. An example of how to use each memory element 12 will be described with reference to FIG. In FIG. 2, 20 is an area for storing instructions of the processor, 21 is an area for holding the state of neurons in the previous stage,
Reference numeral 22 denotes an area that holds connection weights between neurons in the previous stage and neurons in the processing target stage. The connection weight area 22 is stored in the form of an n×n matrix. P regions 23 similar to this joint load region 22 are secured, and this is a value identified by the parameter t. The parameter t is a value used when using a group of processors in a time-sharing manner.

24はプロセッサの処理結果を書出す領域である。24 is an area in which the processing results of the processor are written.

再び、第1図を参照して動作を説明する。例えば、1つ
の演算サイクルにおいて、プロセッサ要素PE、がi番
号口の処理対象ニューロンの状態の計算を行う。あるタ
イミングでプロセッサ要素PELとメモリ要素M、をス
イッチング回路13が結合しているとする。この時、プ
ロセッサ要素PELにおいて、前段のニューロン部iと
結合荷重部(i、i)が積算される。前段のニューロン
数をNとすると、これをn個の部分に分けて、各々の部
分に番号1,2.’3.・・・、nを付け、この番号に
よってニューロンの集団を指定する。次のタイミングに
おいて、プロセッサ要素PEiとメモリ要素ML+□が
結合されると、前段のニューロン部(i+1)と結合荷
重部(i、i+1)が積算される。以下、同様にして、
当該プロセッサ要素PE、と各々のメモリ要素の接続関
係を順次に切換え、メモリ要素Mnの次はメモリ要素M
。に切換えて、プロセッサ要素PEえとメモリ要素Mi
−2が接続されるまで、同様の計算が繰り返し行われる
The operation will be explained again with reference to FIG. For example, in one calculation cycle, the processor element PE calculates the state of the neuron to be processed with the i number. Assume that the switching circuit 13 couples the processor element PEL and the memory element M at a certain timing. At this time, in the processor element PEL, the previous stage neuron part i and the connection weight part (i, i) are integrated. Letting the number of neurons in the previous stage be N, divide this into n parts and assign numbers 1, 2, . . . to each part. '3. ..., n, and this number designates a population of neurons. At the next timing, when the processor element PEi and the memory element ML+□ are coupled, the previous stage neuron section (i+1) and the coupling weight section (i, i+1) are integrated. Similarly, below,
The connection relationship between the processor element PE and each memory element is sequentially switched, and the memory element Mn is followed by the memory element M.
. , processor element PE and memory element Mi
Similar calculations are repeated until -2 is connected.

このようにして、プロセッサ要素PEiにおいてi番号
口の処理対象二ニーロンの状態が計算される。
In this way, the state of the second processing target of number i is calculated in the processor element PEi.

処理対象のニューロン層のニューロン数がプロセッサ数
より大きい場合、ニューロン数をプロセッサ数で除算し
た値に1を加算し、この数をPとして、P回の前述のプ
ロセッサ要素とメモリ要素との接続による処理を繰り返
し行う。これにより、全ニューロンの計算が実行される
。このような各プロセッサ要素の時分割制御はコントロ
ーラ15からの各プロセッサ要素14.スイツチング回
路13への指示によって行われる。コントローラ15の
時分割制御の指示は、マスクプロセッサ17の制御下に
あっては、該マスクプロセッサ17で処理されるプログ
ラムによって規定される。
If the number of neurons in the neuron layer to be processed is larger than the number of processors, 1 is added to the value obtained by dividing the number of neurons by the number of processors, and this number is set as P. According to the connection between the aforementioned processor element and memory element P times, Repeat the process. This performs calculations for all neurons. Such time-sharing control of each processor element is performed by each processor element 14 from the controller 15. This is done by instructions to the switching circuit 13. Instructions for time-sharing control by the controller 15 are defined by a program processed by the mask processor 17 under the control of the mask processor 17 .

複数のニューロン処理を、実装可能な装備数のプロセッ
サ要素に割付ける場合、ニューロン数がプロセッサ台数
の整数倍でなければ端数が生じる。
When multiple neuron processes are assigned to the mountable number of processor elements, a fraction occurs unless the number of neurons is an integral multiple of the number of processors.

この端数となるニューロン処理がプロセッサ要素14で
適切に行われるために、各プロセッサ要素14に対応し
て設けられるマスク記憶部16のマスク情報が用いられ
る。マスク情報はコントローラ15により生成されてセ
ットされ、マスク記憶部16に保持されて用いられる。
In order to appropriately perform this fractional neuron processing in the processor element 14, mask information in the mask storage section 16 provided corresponding to each processor element 14 is used. The mask information is generated and set by the controller 15, and is held and used in the mask storage section 16.

このように構成されたデータ処理装置において、マスタ
プロセッサ17は次の命令を実行して、ニューラルネッ
トワーク処理を行う。すなわち、(1)プロセッサ起動
命令、 (2)コントローラ動作指示命令、 (3)主記憶およびローカルメモリ(メモリ要素)間の
データ転送命令、 (4)マスタプロセッサ内でのリソースを使って実行す
る命令(通常のデータ処理命令)、の各々の命令を実行
して処理を進める。
In the data processing device configured in this manner, the master processor 17 executes the following instructions to perform neural network processing. That is, (1) processor startup instructions, (2) controller operation instruction instructions, (3) data transfer instructions between main memory and local memory (memory elements), and (4) instructions executed using resources within the master processor. (normal data processing instructions), the processing proceeds by executing each instruction.

以下、(1)〜(3)の項目の各命令の処理について第
3図〜第5図を参照して説明する。
The processing of each command in items (1) to (3) will be described below with reference to FIGS. 3 to 5.

第3図は、コントローラおよびデータ転送回路の要部の
回路構成を示すブロック図である。第3図のブロック図
は、第1図における主記憶10.マスタプロセッサ17
.コントローラ15.メモリ12゜およびデータ転送回
路11の一部分の回路構成を示す回路図であり、メモリ
リクエスト処理を行う要部の回路構成を示した回路図で
ある。第1図のブロック図では、主記憶10からマスク
プロセッサの命令を読出す部分のデータ線とオペランド
データを読出す部分のデータ線は、分離されて示されて
いるが、第3図の回路図では、命令を読出す部分のデー
タ線は省略されている。
FIG. 3 is a block diagram showing the circuit configuration of main parts of the controller and data transfer circuit. The block diagram of FIG. 3 shows the main memory 10. Master processor 17
.. Controller 15. 2 is a circuit diagram showing the circuit configuration of a part of the memory 12° and the data transfer circuit 11, and is a circuit diagram showing the circuit configuration of a main part that performs memory request processing. FIG. In the block diagram of FIG. 1, the data line for reading instructions of the mask processor from the main memory 10 and the data line for reading operand data are shown separated, but the circuit diagram in FIG. In this figure, the data lines for reading out instructions are omitted.

第3図において、主記憶10から読出された命令はパス
10aを通ってレジスタ30にセットされる。
In FIG. 3, an instruction read from main memory 10 is set in register 30 through path 10a.

レジスタ30にセットされた命令のオペコード部はデコ
ーダ31でデコードされ、前述の項番(4)の命令系と
それ以外の命令系に識別される。デコダ31からの識別
信号はパス31aを通ってスイッチング回路32を制御
し、項番(4)の命令系をパス32a上に送出し、それ
以外の命令系をパス32bJ:に送出する。
The opcode part of the instruction set in the register 30 is decoded by the decoder 31 and distinguished into the instruction system of item number (4) mentioned above and the other instruction systems. The identification signal from the decoder 31 passes through the path 31a and controls the switching circuit 32, sending out the instruction system of item number (4) onto the path 32a, and sending out the other instruction systems onto the path 32bJ:.

したがって、レジスタ33上に格納された命令は前述の
項番(1)〜(3)の命令系の命令である。
Therefore, the instructions stored on the register 33 are the instructions of the above-mentioned item numbers (1) to (3).

ここでは、この系列の命令が○P、R1,R2の3フイ
ールドから構成されているとする。この命令のフィール
ドは増加されてもよい。第3図において、レジスタ33
を中心とする論理部は、コントローラ15(第1図)に
属する論理部である。レジスタ33のオペレーションコ
ード部OPはデコーダ34で解読される。命令の種類に
よっては、デコーダ34のデコード出力によりスイッチ
ング回路35.36を制御し、R1オペランド部および
R2オペランド部のデータをそれぞれレジスタ37〜4
0にセットする。このレジスタ37〜40より下部に示
される論理部は、データ転送回路11(第1図)の論理
部である。レジスタ37は主記憶アクセスの先頭アドレ
スを保持し、レジスタ38は主記憶アクセスの終端アド
レスを保持する。また、レジスタ39はロカルメモリ(
メモリ要素)アクセスの先頭アドレスを保持し、レジス
タ40はローカルメモリアクセスの終端アドレスを保持
する。主記憶とローカルメモリ間のデータ転送指示には
、4オペラントデタを必要とするので、第3図の論理部
の処理では、2命令で4オペランドをセラI−してデー
タ転送を指示する。その後、実際にデータ転送を開始す
る指示の後続命令がデコーダ34で検出されると、パス
34a上の信号値がLL I Ifとなってレジスタ4
1゜42に値がセットされる。パス34a上の信号値は
命令が完了するまでホールドされる。また、デコーダ3
4がレジスタ37.38に値をセットする命令を検出す
ると、パス34b上の信号値を1マシンサイクル間“1
″とする。このパス34b」二の信号によってレジスタ
37.38のアドレスデータは、それぞれ加算器44.
45を介してレジスタ41.42にセットされる。レジ
スタ43には主記憶またはローカルメモリの領域のアク
セス単位のデータ長がセットされており、加算器44.
45によってアクセス単位のデータ長が加算されて、次
にアクセスする主記憶アクセスアドレス、メモリアクセ
スアドレスがそれぞれに生成され、レジスタ41.42
にセットされる。
Here, it is assumed that this series of instructions is composed of three fields: ○P, R1, and R2. The fields of this instruction may be augmented. In FIG. 3, register 33
The logic unit centered around is a logic unit that belongs to the controller 15 (FIG. 1). The operation code section OP of the register 33 is decoded by the decoder 34. Depending on the type of instruction, the switching circuits 35 and 36 are controlled by the decoded output of the decoder 34, and the data in the R1 operand part and the R2 operand part are sent to registers 37 to 4, respectively.
Set to 0. The logic section shown below the registers 37 to 40 is the logic section of the data transfer circuit 11 (FIG. 1). Register 37 holds the start address of main memory access, and register 38 holds the end address of main memory access. In addition, the register 39 is stored in local memory (
The register 40 holds the start address of local memory access (memory element), and the register 40 holds the end address of local memory access. Instructing data transfer between the main memory and the local memory requires 4 operand data, so in the processing of the logic section in FIG. 3, 4 operands are set in two instructions to instruct data transfer. Thereafter, when the decoder 34 detects a subsequent instruction to actually start data transfer, the signal value on the path 34a becomes LL I If and the register 4
The value is set to 1°42. The signal value on path 34a is held until the instruction is completed. Also, decoder 3
4 detects an instruction to set a value in the register 37 or 38, the signal value on the path 34b is set to "1" for one machine cycle.
''. The address data of registers 37 and 38 are transferred to adders 44 and 38 by the signals of paths 34 and 34b, respectively.
45 to registers 41 and 42. The data length of the access unit of the main memory or local memory area is set in the register 43, and the adder 44.
The data length of the access unit is added by 45, and the main memory access address and memory access address to be accessed next are respectively generated, and the registers 41 and 42
is set to

これらの両アクセスアドレスはパス41a、42aを通
して比較器46.47に加えられており、比較器46゜
47によってレジスタ39.40の終端アドレスと比較
される。比較の結果、主記憶アクセスアドレスが終端ア
ドレスと一致すると、パス46a上に信号値″1”が送
出される。この信号値は、インバータ48で反転されて
、パス48a上に送出される。このパス48a上の信号
はデコーダ34に送られて、パス34a上の信号値をI
f OIfに落す。また、レジスタ41からパス41a
を介して送出される主記憶アクセスアドレスは、主記憶
10に送られる。このとき、パス48a上の信号はアド
レスデータの有効無効を示す。
These two access addresses are applied via paths 41a, 42a to comparators 46.47 and are compared by comparators 46.47 with the end address of register 39.40. As a result of the comparison, if the main memory access address matches the end address, a signal value "1" is sent onto the path 46a. This signal value is inverted by inverter 48 and sent onto path 48a. The signal on path 48a is sent to decoder 34, which converts the signal value on path 34a to I
f Drop into OIf. Also, from the register 41 to the path 41a
The main memory access address sent via the main memory 10 is sent to the main memory 10. At this time, the signal on path 48a indicates whether the address data is valid or invalid.

レジスタ38上にセットされたローカルメモリアドレス
は、レジスタ33上の命令がデータ転送開始命令ならば
、まず、加算器45を通してレジスタ42にセットされ
る。そして、次のマシンサイクル以降において、レジス
タ42上のローカルメモリアクセスアドレスと、レジス
タ43上のアクセス単位のデータ長のアドレスとが加算
されて、アクセスアドレスを生成する。レジスタ42に
対するセット信号は、パス34a上の信号とパス60a
上の信号との論理積である。生成されたローカルメモリ
のアクセスアドレスはレジスタ42にセットされて、レ
ジスタ42からパス42a上に送出される。パス42a
上に送出されたアドレスは、比較器47に供給されて、
レジスタ40の終端アドレスと比較される。比較結果は
インバータ49で反転されて出力される。インバータ4
9の出力のパス49a上の信号値がL(I IIの時は
、生成したローカルメモリアクセスアドレスが有効であ
り、It OIIの時は、当該アドレスが無効であるこ
とを示す。なお、レジスタ42の出力のパス42a上の
アドレスは、シフタ50を介してメモリ要素(ローカル
メモリ)12に供給され、メモリの実装数のnピット分
の下位ピッ1〜を無視したアドレスが、メモリ要素12
をアクセスするアドレスとなる。
The local memory address set on register 38 is first set in register 42 through adder 45 if the instruction on register 33 is a data transfer start instruction. Then, from the next machine cycle onwards, the local memory access address on the register 42 and the address of the data length of the access unit on the register 43 are added to generate an access address. The set signal for register 42 is connected to the signal on path 34a and the signal on path 60a.
This is a logical AND with the above signal. The generated local memory access address is set in the register 42 and sent from the register 42 onto the path 42a. path 42a
The address sent out above is supplied to a comparator 47,
It is compared with the end address of register 40. The comparison result is inverted by an inverter 49 and output. Inverter 4
When the signal value on the path 49a of the output of register 9 is L (I II, it indicates that the generated local memory access address is valid, and when it is OII, it indicates that the address is invalid. The address on the output path 42a is supplied to the memory element (local memory) 12 via the shifter 50, and the address ignoring the lower bits 1 to n pits of the number of memory implementations is the address on the memory element 12.
This is the address to access.

このようなアクセスアドレスにより、主記憶1゜および
メモリ要素12がアクセスされ、主記憶1oがら読出さ
れたデータは、パス19を通ってメモリ要素12に書込
まれる。なお、この書込み時には、パス60a上の信号
がライトイネーブルとして用いlうれる。
With such an access address, main memory 1° and memory element 12 are accessed, and data read from main memory 1o is written to memory element 12 through path 19. Note that during this writing, the signal on the path 60a is used as a write enable.

一方、比較器46からインバータ48を介して供給され
るパス48a上の信号は、また、次命令を主記憶から読
出すためのトリガとして用いられ、主記憶10の制御論
理部10bに供給される。なお、主記憶から命令を読出
す処理を行う制御論理部10bの機能は、通常の記憶部
の制御論理であり、ここで直接に関係しないので特には
説明しない。
On the other hand, the signal on the path 48a supplied from the comparator 46 via the inverter 48 is also used as a trigger for reading the next instruction from the main memory, and is supplied to the control logic section 10b of the main memory 10. . Note that the function of the control logic unit 10b that performs the process of reading instructions from the main memory is the control logic of a normal storage unit, and is not directly related here, so it will not be specifically explained.

ところで、レジスタ33上の命令がコントローラ動作指
示命令の場合、R1オペランド部のデータは、スイッチ
ング回路35の制御によりパス61上に送出される。パ
ス61に送出されたオペランドのブタは、後述する第4
a図および第4b図に示すコントローラ15の要部回路
に送られる。なお、ここでのパス61は東線である。
By the way, when the command on the register 33 is a controller operation instruction command, the data in the R1 operand section is sent onto the path 61 under the control of the switching circuit 35. The operand pig sent to path 61 is the fourth
The signal is sent to the main circuit of the controller 15 shown in FIG. 4A and FIG. 4B. Note that the path 61 here is the east line.

また、レジスタ33上の命令がプロセッサ起動命令の場
合、当該命令をデコーダ34がデコードすると、デコー
ダ34からパス62上に信号が送出される。
Further, when the instruction on the register 33 is a processor startup instruction, when the decoder 34 decodes the instruction, a signal is sent from the decoder 34 onto the path 62.

パス62上の信号は各々のプロセッサ要素14に供給さ
れる。
Signals on path 62 are provided to each processor element 14.

第4a図および第4b図は、コントローラの制御信号生
成部の要部の回路構成を示す論理回路図である。
FIGS. 4a and 4b are logic circuit diagrams showing the circuit configuration of the main part of the control signal generation section of the controller.

第4a図の論理回路図は、第1図において、プロセッサ
要素14とメモリ要素12どの接続関係を制御するスイ
ッチング回路13への制御信号を生成するコントローラ
15の制御信号生成部の回路構成を示す論理回路図とな
っている。また、第4b図は、プロセッサ要素14の動
作の無効/有効を制御するマスク記憶部16に送出する
制御情報(マスク情報)を生成するコントローラ15の
制御信号生成部の回路構成を示す論理回路図となってい
る。
The logic circuit diagram in FIG. 4a is a logic circuit diagram showing the circuit configuration of the control signal generation section of the controller 15 that generates a control signal to the switching circuit 13 that controls which connection relationship between the processor element 14 and the memory element 12 in FIG. 1. It is a circuit diagram. Further, FIG. 4b is a logic circuit diagram showing a circuit configuration of a control signal generation unit of the controller 15 that generates control information (mask information) sent to the mask storage unit 16 that controls invalidation/validity of the operation of the processor element 14. It becomes.

第4a図において、パス61a上のフェイズ数を示すデ
ータはレジスタ52にセットされる。ここでフェイズ数
とは、第5図のスイッチング回路の動作図に示すように
、プロセッサ要素とメモリ要素の間の接続(Conne
ction )を切換える時間間隔の数である。本実施
例では、このフェイズ数をプロセッサ数nと等しくして
いる。第4a図において、加算器53は1マシンサイク
ル毎に、レジスタ54の値とII I IIを加算した
値を出力して、レジスタ33上 タ54にセットする。レジスタ54から送出されたデー
タは、比較器55でレジスタ52のデータと比較される
。両データの一致がとられると、パス55a上の信号値
がu I IIとなり、レジスタ54がリセットされる
。このため、レジスタ54の値は、O〜フェイズ数nの
間の値を循環するように変化する。レジスタ54の値を
デコーダ56がデコードし、パス60(東線)の対応す
る信号線、例えば、信号線60b上に1マシンサイクル
の間“1”を送出する。また、レジスタ54からの信号
を送出するパス54aは、スイッチング回路13(第1
図)に接続される。この信号により、スイッチング回路
13が制御される。
In FIG. 4a, data is set in register 52 indicating the number of phases on path 61a. Here, the number of phases refers to the number of connections between the processor element and the memory element, as shown in the operational diagram of the switching circuit in Figure 5.
ction ) is the number of time intervals for switching. In this embodiment, this number of phases is made equal to the number n of processors. In FIG. 4a, the adder 53 outputs a value obtained by adding the value of the register 54 and IIIII II every machine cycle, and sets the value in the upper register 54 of the register 33. The data sent out from the register 54 is compared with the data in the register 52 by a comparator 55. When both data match, the signal value on the path 55a becomes u I II, and the register 54 is reset. Therefore, the value of the register 54 changes so as to cycle through values between O and the number of phases n. A decoder 56 decodes the value of the register 54 and sends out a "1" on the corresponding signal line of the path 60 (east line), for example, signal line 60b, for one machine cycle. Furthermore, the path 54a that sends out the signal from the register 54 is connected to the switching circuit 13 (the first
(Figure). The switching circuit 13 is controlled by this signal.

第4b図は、プロセッサ要素14の動作の無効/有効を
制御するマスク情報を生成するコントローラ15の制御
信号生成部の回路構成を示す論理回路図である。この論
理回路では、レジスタ33(第3図)の命令のR1オペ
ランド部のデータによって、どのプロセッサ要素14(
第1図)の出力を有効無効にするかが示される時、パス
61aにより当該オペランドデータを受けてレジスタ5
7にスタックし、デコーダ58によりデコートして、パ
ス59を介して送出する。パス59から送出されるデコ
ード出力は、マスク情報として、マスク記憶部16(第
1図)にセットされ、保持される。
FIG. 4b is a logic circuit diagram showing a circuit configuration of a control signal generation section of the controller 15 that generates mask information for controlling whether or not the operation of the processor element 14 is disabled or enabled. In this logic circuit, which processor element 14 (
When it is indicated whether to enable or disable the output of FIG.
7, decoded by a decoder 58, and sent out via a path 59. The decoded output sent from the path 59 is set and held in the mask storage section 16 (FIG. 1) as mask information.

次に、マスク記憶部にセットされたマスク情報によるプ
ロセッサ要素の無効/有効の制御を含めて、プロセッサ
要素の動作を説明する。
Next, the operation of the processor element will be explained, including the control of invalidation/validity of the processor element based on the mask information set in the mask storage section.

第6図は、プロセッサ要素の要部の回路構成を示すブロ
ック図である。
FIG. 6 is a block diagram showing the circuit configuration of main parts of the processor element.

第6図を参照して説明する。プロセッサ要素14におい
て、命令がレジスタ70にセットされると、そのオペレ
ーションコード部○Pがデコーダ71で解読され、オペ
ランド部Rがデコーダ72で解読される。デコーダ71
で解読されたデコート出力はパス71aを介して、演算
器73およびメモリリクエスタ74に送られる。このデ
コード出力の信号によって演算器73およびメモリリク
エスタ74の詳細動作が規定される。
This will be explained with reference to FIG. In the processor element 14, when an instruction is set in the register 70, the operation code part ○P is decoded by the decoder 71, and the operand part R is decoded by the decoder 72. Decoder 71
The decoded output is sent to the arithmetic unit 73 and the memory requester 74 via the path 71a. Detailed operations of the arithmetic unit 73 and memory requester 74 are defined by the decoded output signal.

デコーダ72は命令のオペランド部Rのレジスタ番号等
のデータを解読する。デコーダ72の出力はパス72a
、72bを経由して、それぞれセレクタ76゜スイッチ
ング回路77を制御し、オペランドで指定されているレ
ジスタ78と演算器73およびメモリリクエスタ74と
の間の接続関係を制御する。ここでの演算処理はレジス
タ・レジスタ演算のアーキテクチャを仮定している。ま
た、デコーダ72から出力されるパス73cの信号は、
命令処理が最終ステージに入った時に発行され、次命令
の読出しをメモリリクエスタ75に要求する。メモリリ
クエスタ74、75は、アクセス要求をスイッチング回
路13を介して接続されているメモリ要素12に発行す
ることになる。アクセス要求がフェッチ動作の場合、メ
モリリクエスタ74.75からパス74a、75aを経
由して、それぞれにフェッチオペランドデータ。
The decoder 72 decodes data such as register numbers in the operand portion R of the instruction. The output of the decoder 72 is a path 72a
, 72b, the selector 76 and the switching circuit 77 are controlled, respectively, and the connection relationship between the register 78 specified by the operand, the arithmetic unit 73, and the memory requester 74 is controlled. The arithmetic processing here assumes a register-register arithmetic architecture. Furthermore, the signal on the path 73c output from the decoder 72 is
It is issued when instruction processing enters the final stage, and requests the memory requester 75 to read the next instruction. The memory requesters 74 and 75 will issue access requests to the memory elements 12 connected via the switching circuit 13. If the access request is a fetch operation, fetch operand data is sent from the memory requesters 74 and 75 to each of the paths 74a and 75a.

命令がスイッチング回路77、レジスタ70へ送られる
The command is sent to the switching circuit 77 and register 70.

一方、コントローラ15からセットされているマスク記
憶部16のマスク情報はデコーダ71に作用して、命令
の処理を無効化する。すなわち、演算器73、メモリリ
クエスタ74に送るオーダを無効化す=39− る。
On the other hand, the mask information in the mask storage section 16 set by the controller 15 acts on the decoder 71 to invalidate the processing of the command. That is, the order sent to the arithmetic unit 73 and memory requester 74 is invalidated =39-.

上述のように構成されたデータ処理装置のハードウェア
を動作させるソフトウェアについて次に説明する。
Next, software for operating the hardware of the data processing apparatus configured as described above will be described.

再び、第1図を参照する。マスクプロセッサ17と主記
憶10との関係は、従来型の逐次型計算機のそれと同じ
であるから、主記憶10上にデータと命令が置かれて処
理が実行される。ここで与え1られるデータとして、ニ
ューラルネットワークのニューロンの状態、ニューロン
間の結合荷重のデータ、ニューロンの動作関数のプログ
ラムのデータが与えられる。メモリ要素12はマスクプ
ロセッサ17から見ると単一のローカルメモリである。
Referring again to FIG. Since the relationship between the mask processor 17 and the main memory 10 is the same as that of a conventional sequential computer, data and instructions are placed in the main memory 10 and processing is executed. The data given here are the states of neurons in the neural network, data on connection weights between neurons, and program data on operation functions of neurons. Memory element 12 is a single local memory from the perspective of mask processor 17.

従って、データ転送回路11のメモリリクエスタを使っ
て、主記憶10」二のデータをローカルメモリに転送し
、コントローラ15を経由してプロセッサ要素14に起
動をかければ、各々のプロセッサ要素はニューラルネッ
トワークの動作をシミュレートする。
Therefore, by using the memory requester of the data transfer circuit 11 to transfer the data in the main memory 10'2 to the local memory and starting up the processor elements 14 via the controller 15, each processor element will be activated by the neural network. Simulate behavior.

以上の動作をプログラム言語を使って示せば、例えば、 一40= CALL  DATATRNSF(X、  ”O”)C
ALL   5TARTPROC(”O”)となる。こ
の手続きDATATRNSFにおいて、Xの領域は主記
憶上のニューラルネットワーク関連のデータが格納され
ている場所であり、II O+1はローカルメモリの0
番地からそのデータを格納することを示す。そして、手
続き5TARTPR○Cにより、ローカルメモリのO番
地から処理を開始するようにコントローラ15に指示し
ている。
If the above operation is shown using a programming language, for example, -40= CALL DATATRNSF(X, "O")C
ALL 5TARTPROC (“O”). In this procedure DATATRNSF, area
Indicates that the data is stored starting from the address. Then, procedure 5TARTPR○C instructs the controller 15 to start processing from address O in the local memory.

ニューラルネットワークの分割に関する情報はコントロ
ーラ15内のレジスタ内に値をセットすることであるか
ら、 CA L L  S E T U P (Y 、 re
gjstor number)のように記述できる。こ
の手続き5ETUPにおいて、Yは主記憶上にとられた
セットアツプ情報(レジスタセット情報)が格納されて
いる領域である。
Since the information regarding the division of the neural network is to set a value in a register in the controller 15, CALLS ETUP (Y, re
gjstor number). In this procedure 5ETUP, Y is an area where set-up information (register set information) taken on the main memory is stored.

ローカルメモリ(メモリ要素12)に格納された処理結
果を主記憶10上に読出すのは、 CALL  DATArRNsF(”q”、Z)となる
。ここで、qはプロセッサ要素14がメモリ要素12上
に格納した結果のロケーションであり、2は主記憶10
上の領域である。したがって、これらの手続きの処理は
、変数または配列Zを用いて記号処理で容易に行うこと
ができる。
CALL DATArRNsF(“q”, Z) reads the processing result stored in the local memory (memory element 12) onto the main memory 10. where q is the location of the result stored by processor element 14 on memory element 12 and 2 is the location of the result stored on memory element 12 by processor element 14;
This is the area above. Therefore, processing of these procedures can be easily performed symbolically using variables or arrays Z.

以上、本発明を実施例にもとづき具体的に説明したが、
本発明は、前記実施例に限定されるものではなく、その
要旨を逸脱しない範囲において種々変更可能であること
は言うまでもない。
The present invention has been specifically explained above based on examples, but
It goes without saying that the present invention is not limited to the embodiments described above, and can be modified in various ways without departing from the spirit thereof.

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

以上、説明したように、本発明のデータ処理装置によれ
ば、任意の規模のニューラルネットワクを分割して、分
割したサブニューラルネットワークの処理とし、ネット
ワーク1層間のニューロン間の結合を1または複数のプ
ロセッサ要素にマツピングして処理することができる。
As described above, according to the data processing device of the present invention, a neural network of an arbitrary size is divided into sub-neural networks, and connections between neurons in one layer of the network are divided into one or more sub-neural networks. It can be mapped to processor elements and processed.

さらに、分割して実行した処理結果を逐次的に処理し、
記号処理等の手法と組合せて使用することができる。
Furthermore, the results of the divided and executed processing are processed sequentially,
It can be used in combination with techniques such as symbol processing.

すなわち、ニューラルネットワークの処理を言語の中の
サブルーチンのように見なし、一つの機能を実現するも
のとみなせる。
In other words, neural network processing can be viewed like a subroutine in a language, and can be seen as realizing a single function.

ニューラルネットワークの処理で指摘されている問題を
分割するための方法、記憶による組合せ構造の処理の不
十分さが、本発明によって解消される。
The present invention solves problems that have been pointed out in neural network processing, such as the insufficiency of methods for dividing and processing combinatorial structures using memory.

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

第1図は、本発明の一実施例にかかるデータ処理装置の
構成を示すブロック図、 第2図は、各メモリ要素におけるデータの割付けを説明
するメモリマツプの一例を示すための図、第3図は、コ
ントローラおよびデータ転送回路の要部の回路構成を示
すブロック図、 第4a図および第4b図は、コントローラの制御信号生
成部の要部の回路構成を示す論理回路図、第5図は、ス
イッチング回路の動作図、第6図は、プロセッサ要素の
要部の回路構成を示すブロック図、 第7図は、パーセプトロンの概念を説明するための図、 第8図は、階層的ニューラルネットワークのシステム構
成の概念を説明するブロック図、第9図は、分割型ニュ
ーラルネットワークのシステム構成の概念を説明するブ
ロック図、第10図および第11図は、階層型および分
割型のサブニューラルネットワーク間の相互作用を行列
で説明するための図である。 図中、10・・・主記憶、11・・データ転送回路、1
3・スイッチング回路、14・・・プロセッサ要素、1
5・・・コントローラ、16・・・マスク記憶部、17
・・・マスクプロセッサ。
FIG. 1 is a block diagram showing the configuration of a data processing device according to an embodiment of the present invention, FIG. 2 is a diagram showing an example of a memory map explaining data allocation in each memory element, and FIG. is a block diagram showing the circuit configuration of the main part of the controller and the data transfer circuit, FIGS. 4a and 4b are logic circuit diagrams showing the circuit structure of the main part of the control signal generation section of the controller, and FIG. Figure 6 is a block diagram showing the circuit configuration of the main part of the processor element; Figure 7 is a diagram explaining the concept of a perceptron; Figure 8 is a hierarchical neural network system. Figure 9 is a block diagram explaining the concept of the system configuration of a divided neural network. Figures 10 and 11 are diagrams showing the interaction between hierarchical and divided sub-neural networks. FIG. 3 is a diagram for explaining the action using a matrix. In the figure, 10...main memory, 11...data transfer circuit, 1
3. Switching circuit, 14... Processor element, 1
5... Controller, 16... Mask storage section, 17
...mask processor.

Claims (1)

【特許請求の範囲】 1、複数のプロセッサ要素と、複数のメモリ要素と、複
数のプロセッサ要素および複数のメモリ要素を時間的お
よび空間的に2次元分割した各グループ単位に、ニュー
ラルネットワークの各層の処理を対応させて、各グルー
プ単位のプロセッサ要素およびメモリ要素で行う情報処
理の制御を行う制御管理部とを備え、ニューラルネット
ワーク処理を複数プロセッサにマッピングして、多層構
造のニューラルネットワークアルゴリズムによる情報処
理を行うことを特徴とするデータ処理装置。 2、請求項1に記載のニューラルネットワークアルゴリ
ズムによる情報処理を行うデータ処理装置において、制
御管理部は、多層構造のニューラルネットワーク処理を
分割し、各々のニューラルネットワーク処理と、複数の
プロセッサ要素および複数のメモリ要素の処理要素との
対応付けを、時間的にまたは空間的に分割して行うこと
を特徴とするデータ処理装置。 3、主記憶部と、逐次処理プロセッサ部と、ニューロン
の動作をシミュレートする単数または複数のニューロン
処理プロセッサ部と、各ニューロン処理プロセッサのデ
ータおよび命令を保持するニューロンデータ記憶部と、
複数の各ニューロン処理プロセッサと各ニューロンデー
タ記憶部との間の接続をサイクリックに順次変更してい
く第1の論理部と、ニューロン処理プロセッサの動作を
無効化する制御情報を保持する無効情報記憶部と、複数
のニューロンデータ記憶部および主記憶部の間でのデー
タ転送を行う第2の論理部とを備え、ニューラルネット
ワーク処理を複数プロセッサにマッピングして、多層構
造のニューラルネットワークアルゴリズムによる情報処
理を行うことを特徴とするデータ処理装置。
[Claims] 1. Each layer of the neural network is divided into a plurality of processor elements, a plurality of memory elements, and each group obtained by dividing the plurality of processor elements and the plurality of memory elements two-dimensionally in time and space. It is equipped with a control management unit that controls information processing performed by processor elements and memory elements in each group by matching processing, and maps neural network processing to multiple processors to perform information processing using a multilayered neural network algorithm. A data processing device characterized by performing the following. 2. In the data processing device that performs information processing using a neural network algorithm according to claim 1, the control management section divides the multilayered neural network processing, and separates each neural network processing from a plurality of processor elements and a plurality of processor elements. A data processing device characterized in that association of memory elements with processing elements is performed temporally or spatially divided. 3. a main memory section, a sequential processing processor section, one or more neuron processing processor sections that simulate the operation of neurons, and a neuron data storage section that holds data and instructions of each neuron processing processor;
a first logic unit that cyclically sequentially changes the connection between each of the plurality of neuron processing processors and each neuron data storage unit; and an invalidation information storage that holds control information for disabling the operation of the neuron processing processor. and a second logic unit that transfers data between a plurality of neuron data storage units and a main memory unit, and maps neural network processing to multiple processors to perform information processing using a multilayered neural network algorithm. A data processing device characterized by performing the following.
JP1110896A 1989-04-28 1989-04-28 Data processor Pending JPH02287859A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1110896A JPH02287859A (en) 1989-04-28 1989-04-28 Data processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1110896A JPH02287859A (en) 1989-04-28 1989-04-28 Data processor

Publications (1)

Publication Number Publication Date
JPH02287859A true JPH02287859A (en) 1990-11-27

Family

ID=14547434

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1110896A Pending JPH02287859A (en) 1989-04-28 1989-04-28 Data processor

Country Status (1)

Country Link
JP (1) JPH02287859A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023276235A1 (en) * 2021-06-29 2023-01-05 ソニーグループ株式会社 Program, information processing method, recording medium, and information processing device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023276235A1 (en) * 2021-06-29 2023-01-05 ソニーグループ株式会社 Program, information processing method, recording medium, and information processing device

Similar Documents

Publication Publication Date Title
US5204938A (en) Method of implementing a neural network on a digital computer
NL2028867B1 (en) Vector Processor Architectures
US5483620A (en) Learning machine synapse processor system apparatus
US10970623B2 (en) System and method for training artificial intelligence systems using a sima based processor
US9754221B1 (en) Processor for implementing reinforcement learning operations
US5872987A (en) Massively parallel computer including auxiliary vector processor
US5517596A (en) Learning machine synapse processor system apparatus
US5175858A (en) Mechanism providing concurrent computational/communications in SIMD architecture
JP2663995B2 (en) Scalable flow virtual learning neurocomputer
JPH08241291A (en) Processor
JPH03251947A (en) Neuro-chip and neuro-computer using the same
US5907693A (en) Autonomously cycling data processing architecture
US5634063A (en) Neural network and method for operating the same
JP2000163384A (en) Semiconductor device
EP0223849B1 (en) Super-computer system architectures
JPH02287859A (en) Data processor
JPH0447335B2 (en)
JPH05233586A (en) Digital neural circuit and its driving method
JPH04316153A (en) Neuro-processor
JPH10124473A (en) Neural module
James et al. Design of low-cost, real-time simulation systems for large neural networks
Mao et al. LrGAN: A compact and energy efficient PIM-Based architecture for GAN training
De Gloria et al. Clustered Boltzmann Machines: Massively parallel architectures for constrained optimization problems
EP0393571A1 (en) Computing network with nodes, procedures machines to configure it, and relative uses
Duranton et al. Hardware Accelerators for Neural Networks: Simulations in Parallel Machines