JPH0642234B2 - Parallel processing system - Google Patents

Parallel processing system

Info

Publication number
JPH0642234B2
JPH0642234B2 JP60097702A JP9770285A JPH0642234B2 JP H0642234 B2 JPH0642234 B2 JP H0642234B2 JP 60097702 A JP60097702 A JP 60097702A JP 9770285 A JP9770285 A JP 9770285A JP H0642234 B2 JPH0642234 B2 JP H0642234B2
Authority
JP
Japan
Prior art keywords
processor
parallel processing
processing system
processing
control
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.)
Expired - Lifetime
Application number
JP60097702A
Other languages
Japanese (ja)
Other versions
JPS61256465A (en
Inventor
雅嗣 亀谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP60097702A priority Critical patent/JPH0642234B2/en
Publication of JPS61256465A publication Critical patent/JPS61256465A/en
Publication of JPH0642234B2 publication Critical patent/JPH0642234B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、分散型知識ベースに基づく知能処理と高度な
運動制御演算処理を行う制御要素に対応し得る並列処理
システムに係り、特に人間型知能ロボツト等、複数の制
御要素から成る知能機械システムの知的制御に好適な並
列処理システムに関する。
Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a parallel processing system capable of handling intelligent processing based on a distributed knowledge base and control elements that perform advanced motion control arithmetic processing, and more particularly, human-type intelligent processing. The present invention relates to a parallel processing system suitable for intelligent control of an intelligent mechanical system including a plurality of control elements such as a robot.

〔発明の背景〕[Background of the Invention]

従来の並列処理システムは、文献日経エレクトロニクス
誌1983年4月11日号の第105頁〜第126頁に示さ
れるように、科学技術計算専用のベクトルプロセツサや
特殊な専用用途向けのマルチ・インストラクシヨン・ス
トリーム・マルチ・データ・ストリームMIMD(Multi
-Instruction Stream Multi-Data Stream)型の並列処理
システム等のごく限られた用途向けの専用システムとし
て実用化しているのが現状である。また、並列処理性能
の大幅な向上を図るためには、大量のプロセツサエレメ
ントをうまく結合し、効率良く並列処理を行う技術で不
可欠であると考えられる。しかし、従来のシステムは、
前述した文献例の第122頁〜第124頁に示す衛星画
像処理用のMPP(図18)や、連続体や場のシミユレ
ーシヨン用のPAXS−129(図19)等に示される
ように、並列処理システムを構成するプロセツサエレメ
ントは1つのプロセツサから成り、処理対象に応じてプ
ロセツサエレメントの接続を固定して専用的な結合構成
を採つており、各プロセツサエレメントから出される他
のプロセツサエレメントとの接続のための通信用継ぎ手
も2本ないし4本程度と限られているため、周辺の関連
のあるプロセツサエレメントとしか通信できず、大局
的、汎用的な処理に向かないと考えられる。ところが、
将来要求される知能処理用の並列処理システムは、その
処理の内容が複雑、多様であるため、汎用的なMIMD
方式による並列処理が行えるハードウエア・アーキテク
チユアを有している必要がある。また、従来のシステム
は、科学計算やシミユレーシヨン、大量の同種の処理の
繰り返し演算を行うものが大半であり、今後望まれる知
識や知能をベースにした高度制御演算処理をリアルタイ
ムで行い、知的制御対象の制御を行うことを考慮した、
制御用知的並列処理システムは現状のところ皆無であ
る。
A conventional parallel processing system, as shown in pages 105 to 126 of the April 11, 1983 issue of the Nikkei Electronics magazine, is a vector processor dedicated to scientific and technological calculations and a multi-instrument dedicated to special purpose applications. Relaxation stream multi data stream MIMD (Multi
-It is currently in practical use as a dedicated system for very limited purposes such as an instruction stream (multi-data stream) type parallel processing system. In addition, in order to significantly improve the parallel processing performance, it is considered essential for a technique to efficiently combine a large number of processor elements and perform parallel processing efficiently. However, conventional systems
Parallel processing as shown in MPP (FIG. 18) for satellite image processing and PAXS-129 (FIG. 19) for simulation of continuums and fields shown on pages 122 to 124 of the above-mentioned literature example. The processor elements that make up the system consist of one processor, and the connection of the processor elements is fixed according to the processing target, and a dedicated coupling configuration is adopted. Other processor elements output from each processor element Since the number of communication joints for connecting to and from is limited to two or four, it is considered that it can only communicate with related processor elements in the surroundings, and is not suitable for global and general-purpose processing. . However,
The parallel processing system for intelligent processing that will be required in the future has a complicated and diverse content of processing, so that it is a general-purpose MIMD.
It is necessary to have a hardware architecture capable of parallel processing by the method. In addition, most conventional systems perform repeated calculations of scientific calculations, simulations, and a large amount of similar processing, and perform advanced control calculation processing based on knowledge and intelligence desired in the future in real time, and intelligent control. Considering to control the target,
At present, there is no intelligent parallel processing system for control.

〔発明の目的〕[Object of the Invention]

本発明の目的は、複数の制御要素から成る知能機械シス
テムを、知識ベースに基づいた知能処理の支援の下に、
高速に連動制御演算を行うことによつてリアルタイムで
制御するための高効率な制御用知的並列処理システムを
提供することにある。
An object of the present invention is to provide an intelligent mechanical system composed of a plurality of control elements with the support of intelligent processing based on knowledge base,
An object of the present invention is to provide a highly efficient intelligent control parallel processing system for controlling in real time by performing high-speed interlocking control calculation.

〔発明の概要〕[Outline of Invention]

本発明は、複数の制御要素から成る知能機械、例えば、
人間型知能ロボツト等を、知識ベースに基づいた知能処
理の支援の下に、高速に運動制御演算を行うことによつ
てリアルタイムで知的制御を行うための高効率な制御用
知的並列処理システムを構築するものであり、その手段
として、並列処理システムの構成要素でありシステムの
核となる高効率で汎用処理性の高い知能処理、高速演算
処理向きのモジユール化されたマルチ・マイクロ・プロ
セツサ・モジユール(構成プロセツサ・エレメント)内
の構成と、さらにそれらを各制御要素に対応して機能分
散し、複数密に接続する手法及び、それによつて構築さ
れる全体システム構成と、各制御要素を制御するための
運動制御演算を担当するマルチ・マイクロ・プロセツサ
・モジユール内で高効率で並列処理し、リアルタイム処
理性能を向上させるMIMD型完全並列処理方式と、共
有知識と分散知識に分け、共有知識は共有主記憶に共有
知識ベースとして各制御要素に関連の深い知識は、その
要素の制御を担当するマルチ・マイクロ・プロセツサ・
モジユール内に分散し、分散知識ベースとして保持する
方式の機能分散型知識構造と、それらの知識ベースに基
づき、運動制御演算処理のバツクグラウンドで知能処理
を行い、制御を支援する方式の知能処理、知識処理方法
とを提案し、汎用性、リアルタイム処理性の高い大規模
知的制御対象向きの制御用知的並列処理システムを提供
するものである。
The present invention relates to an intelligent machine composed of a plurality of control elements, for example,
An intelligent parallel processing system for highly efficient control for performing intelligent control in real time by performing high-speed motion control arithmetic on a human-type intelligent robot, etc. with the support of intelligent processing based on a knowledge base. As a means for that, a multi-micro processor that is a component of a parallel processing system and is a core of the system. The configuration inside the module (configuration processor element), and the method of distributing the functions corresponding to each control element and connecting them densely, and the overall system configuration constructed by it and controlling each control element In order to improve the real-time processing performance, highly efficient parallel processing is performed within the multi-micro processor module that is in charge of motion control calculation for And MIMD type full parallel processing system is divided into a shared knowledge and distributed knowledge depth knowledge related to the control element as a shared knowledge base shared knowledge shared main storage, the multi-micro-processor-responsible for control of the element
A function-distributed knowledge structure of a method that is distributed in modules and held as a distributed knowledge base, and based on these knowledge bases, intelligent processing of a method that performs intelligent processing in the background of motion control arithmetic processing and supports control, A knowledge processing method is proposed to provide an intelligent parallel processing system for control, which is suitable for a large-scale intelligent controlled object and has high versatility and real-time processability.

〔発明の実施例〕Example of Invention

以下、本発明の実施例を図面により説明する。 Embodiments of the present invention will be described below with reference to the drawings.

第1図は本発明の並列処理システムを構成するマルチ・
マイクロ・プロセツサ・モジユール(MMPM)のハー
ドウエア構成を示している。マルチ・マイクロ・プロセ
ツサ・モジユール(MMPM)は、13台のベースプロ
セツサ(BP)1〜13から構成される。各ベースプロ
セツサ(BP)1〜13はさらに並列動作可能な2台の
数値演算プロセツサAPUと数値データ処理プロセツサ
NDP及びそれらを統合管理するとともに、知識処理等
のデータ処理や判断処理さらに各種並列処理機能、通信
機能をサポートしてベースプロセツサBPの中心的役割
を果たすメインプロセツサCPUとから成る。ベースプ
ロセツサを構成するこれらのプロセツサについては後述
する。13台のベースプロセツサ(BP)1〜13は、
内部通信バスである3つの独立した高速共有メモリバス
53,54,55で接続され、それぞれの共有メモリバ
ス上には共有メモリ(SCM,DCM)47,48,4
9が接続されている。各共有メモリ47,48,49へ
のアクセス制御は高効率のバスアービタ(DC)44,
45,46によつて行われ、各ベースプロセツサBP
は、通常のメモリアクセスと同様にして高速かつほぼ平
等にこれらの共有メモリを矛盾なくアクセスできる。本
実施例におけるこれらの共有メモリ47〜49の総合通
信スループツトは、ランダムアクセス下において24M
bytes/sに達する。さらに、ベースプロセツサ(BP)
1〜13間でアクセス可能な汎用の共有バスとしてバス
アービタ50により制御されるバス56をサポートして
おり、ここにはおもにベースプロセツサ(BP)1〜1
3共通の共有I/O51が接続される。これらの共有リ
ソースとは別に各ベースプロセツサ(BP)1〜13
は、ローカルバス57〜69上に、自身のみがアクセス
可能なローカルメモリ及びローカルI/O17〜29を
それぞれ有し、通常のプログラムはローカルメモリ上に
置かれる。さらに、本実施例の大きな特徴として、13
台のベースプロセツサ(BP)1〜13が密結合型完全
並列処理を高効率かつ機械的に実行できるように、13
台のベースプロセツサBP群を分割された並列処理タス
クのリレーシヨンに応じて関係の深い処理を実行するも
の同志をまとめ、グリープを構成して同期をとりながら
データフローのようにクリテイカルパスの処理時間に近
い最良の並列処理時間で、予めスケジユールされた並列
処理を実行できるグループ内プロセツサ間同期機構と、
任意のメインプロセツサ(BP)間で割込みを高効率で
かけ合うことにより任意のサービスタスクをいつでも高
速に起動でき、かつその起動状態の管理及び監視ができ
る様にすることによつて、高速なランダム通信を可能に
し、知能処理における疎結合型並列処理や突発的なラン
ダム通常処理をサポートするプロセツサ間命令伝達機構
とをコミユニケーシヨンコントローラ(CC)30〜4
2内に設け、並列処理用ハードウエア機構として十分な
スループツトが得られるように、専用及び共通バス52
によつて他の共通バスとは独立に専用接続している。な
お、プロセツサ間命令伝達機構における命令伝達シーケ
ンスは、ステータス共有メモリ(SCM)47上に設け
られた任意メインプロセツサから任意メインプロセッサ
への割込みを可能にする割込みレジスタテーブルのサー
ビスタスクを起動させたいプロセツサに相当する所定の
アドレスに、そのサービスタスクの先頭番地を書き込む
操作を行うだけで良い。その操作が実行されると、ステ
ータス共有メモリ47を監視している共通割込み制御回
路(CINTC)43は書き込まれたアドレスから命令指示を
行つたメインプロセツサと、サービスタスク処理を依頼
されたメインプロセツサとを解析し、目的とするプロセ
ツサへ割込みをかけ、それが受け付けられたら割込みベ
クトルをそのメインプロセツサへ伝達し、必要な割込み
ベクトルレジスタを参照させて、サービスタスクの先頭
番地へダイレクトにジヤンプさせる。共有割込み制御回
路43は、共有メモリ47上の割込みレジスタをサービ
スタスク処理の依頼を受けたプロセツサが参照するのを
みてサービスタスクが起動されたことを知り、サービス
タスクの起動フラグを立てる。命令を指示したメインプ
ロセツサは、そのフラグをチエツクすることによつて命
令が伝達され、次の命令指示が可能になつたことを知
る。グループ内プロセツサ間同期構は、コミユニケーシ
ヨンコントローラ(CC)30〜42内にそれぞれ複数
有するグループレジスタ(16ビツト)に所定のビツト
をセツトしてその値をロードするだけで、セツトしたビ
ツトに対応するプロセツサ間でグループが構成され、そ
れまでのタスク処理がそのグループで共同して実行され
たことと、そのプロセツサのタスク処理が完了し、グル
ープ内に属す他のプロセツサのタスク処理終了待ちであ
ることを示すようになつている。グループ内プロセツサ
間同期機構は、各プロセツサごとに指示されたグループ
レジスタの内容をタスク処理を終了したプロセツサと照
らし合わせることによつて、グループ内に属するすべて
のプロセッサのタスク処理が終了したら同期がとれたも
のとして同期終了フラグをセツトして、同期割込みが許
可されていれば、メインプロセツサに対し割込みを発生
して同期処理終了を通知する。同期割込みを利用すれ
ば、同期がとれるまでのメインプロセツサの遊び時間を
バツクグラウンドオペレーシヨンに割り当て有効利用で
きる。以上の並列処理用ハードウエア機構により極小の
ソフトウエアオーバーヘツドで汎用性の高い並列処理を
サポートできる。
FIG. 1 is a block diagram of a multi-processor system which constitutes the parallel processing system of the present invention.
1 shows a hardware configuration of a Micro Processor Module (MMPM). The multi-micro processor module (MMPM) is composed of 13 base processors (BP) 1 to 13. Each of the base processors (BP) 1 to 13 further manages two numerical operation processors APU and numerical data processing processors NDP which can operate in parallel and manages them in an integrated manner, and also performs data processing such as knowledge processing and judgment processing and various parallel processing. It consists of a main processor CPU which supports functions and communication functions and plays a central role of the base processor BP. These processors constituting the base processor will be described later. The 13 base processors (BP) 1-13 are
It is connected by three independent high-speed shared memory buses 53, 54, 55 which are internal communication buses, and shared memories (SCM, DCM) 47, 48, 4 are provided on the respective shared memory buses.
9 is connected. The access control to each shared memory 47, 48, 49 is a highly efficient bus arbiter (DC) 44,
45 and 46, each base processor BP
Can access these shared memories at high speed and almost equally without any inconsistency, as in normal memory access. The total communication throughput of these shared memories 47 to 49 in this embodiment is 24M under random access.
reaches bytes / s. In addition, the base processor (BP)
The bus 56 controlled by the bus arbiter 50 is supported as a general-purpose shared bus accessible between 1 to 13, and mainly includes the base processor (BP) 1-1.
Three common shared I / Os 51 are connected. In addition to these shared resources, each base processor (BP) 1-13
Has local memories and local I / Os 17 to 29 accessible only by themselves on the local buses 57 to 69, and normal programs are placed on the local memories. Furthermore, as a major feature of this embodiment, 13
13 so that the base processors (BP) 1 to 13 of the base can perform tightly coupled type complete parallel processing efficiently and mechanically.
A group of base processors BP that execute deeply related processing in accordance with the relay of parallel processing tasks that are divided into groups. Combining comrades to form a group and synchronizing them to create a data path like a critical path. In-group processor synchronization mechanism that can execute pre-scheduled parallel processing with the best parallel processing time close to the processing time,
A high-speed random task can be performed by enabling interrupt service between any main processor (BP) with high efficiency to start any service task at high speed at any time, and to manage and monitor the start status. An instruction transmission mechanism between processors that enables loosely coupled parallel processing in intelligent processing and sudden random normal processing is provided as a communication unit controller (CC) 30-4.
The dedicated and common bus 52 is provided in the second bus so that a sufficient throughput can be obtained as a hardware mechanism for parallel processing.
Therefore, it is exclusively connected independently of other common buses. In the instruction transfer sequence in the inter-processor instruction transfer mechanism, it is desired to activate the service task of the interrupt register table which enables the interrupt from the arbitrary main processor provided on the status shared memory (SCM) 47 to the arbitrary main processor. It suffices to perform the operation of writing the start address of the service task to a predetermined address corresponding to the processor. When the operation is executed, the common interrupt control circuit (CINTC) 43 that monitors the status shared memory 47 is connected to the main processor that gives an instruction from the written address and the main processor that is requested to process the service task. Analyze the processor, interrupt the target processor, transfer the interrupt vector to the main processor when it is accepted, refer to the necessary interrupt vector register, and jump directly to the start address of the service task. Let The shared interrupt control circuit 43 knows that the service task has been activated by seeing the processor that has received the request for service task processing from the interrupt register on the shared memory 47, and sets the service task activation flag. The main processor which has instructed the instruction knows that the instruction is transmitted by checking the flag and the next instruction can be instructed. The synchronization mechanism between processors within a group corresponds to the set bit simply by setting a predetermined bit in the group register (16 bits) in each of the communication unit controllers (CC) 30 to 42 and loading the value. A group has been configured between the processors, and the task processing up to that point has been jointly executed by that group, and the task processing of that processor has been completed, and the task processing of other processors belonging to the group is waiting for completion. To show that. The inter-processor synchronization mechanism checks the contents of the group register specified for each processor with the processor that has finished the task processing, so that the synchronization is achieved when the task processing of all the processors in the group is completed. If the synchronous interrupt is permitted, an interrupt is generated to the main processor to notify the end of synchronous processing. If the synchronous interrupt is used, the play time of the main processor until the synchronization is achieved can be effectively used by assigning it to the background operation. With the above parallel processing hardware mechanism, highly versatile parallel processing can be supported with a minimal software overhead.

以上がマルチ・マイクロ・プロセツサ・モジユール(M
MPM)内のおもな機構であるが、モジユール化して1
つのプロセツサのごとく動作させるための、本発明にお
いては、外部通信用プロセツサとしての機能をベースプ
ロセツサ(BP)11,12,13に持たせ、それを使
用して複数台のマルチ・マイクロ・プロセツサ・モジユ
ール(MMPM)を結合できるようになつている。外部
通信機能を持つベースプロセツサ(BP)11,12,
13は、2つの外部通信機構を持つ。1つは、他の複数
のマルチ・マイクロ・プロセツサ・モジユール(MMP
M)と共有可能な共有バスであるシステムバス(SYSBUS)
73,74,75に接続可能なアドレス出力、データ入
出力及びシステムバス制御入出力の各信号を提供するシ
ステム・バス・バツフア(SBB)70,71,72を
外部通信用ベースプロセツサ(BP)11,12,13
それぞれに対応して設け、3つのシステムバス73,7
4,75上の共有主記憶等の共有リソースを各マルチ・
マイクロ・プロセツサ・モジユール(MMPM)それぞ
れからアクセスできるようになつている。もう一つの外
部通信機構は、他の1つのマルチ・マイクロ・プロセツ
サ・モジユール(MMPM)とデユアルポートRAMに
よつて一対一の専用接続を行い、関連のある制御を行う
マルチ・マイクロ・プロセツサ・モジユール(MMP
M)間を密結合する外部通信用継ぎ手機構(EC)1
4,15,16であり、やはり外部通信用ベースプロセ
ツサ(BP)11,12,13それぞれに対応して設け
ている。この通信機構の詳細は後述する。
The above is the multi-micro processor module (M
It is a major mechanism within MPM)
In the present invention for operating like one processor, the base processor (BP) 11, 12, 13 is provided with a function as a processor for external communication, and by using it, a plurality of multi-micro processors are used.・ The module (MMPM) can be combined. Base processor (BP) 11, 12, with external communication function
13 has two external communication mechanisms. One is multiple other multi-micro processor modules (MMPs).
System bus (SYSBUS) that is a shared bus that can be shared with M)
A system bus buffer (SBB) 70, 71, 72 that provides address output, data input / output, and system bus control input / output signals connectable to 73, 74, 75, and a base processor (BP) for external communication. 11, 12, 13
Three system buses 73, 7 provided corresponding to each
Shared resources such as shared main memory on 4,75
It can be accessed from Micro Processor Modules (MMPM). The other external communication mechanism is a multi-micro processor module (MMPM) that performs a one-to-one dedicated connection with another multi-micro processor module (MMPM) and a dual-port RAM to perform related control. (MMP
External communication joint mechanism (EC) 1 for tightly coupling M)
4, 15 and 16 are also provided corresponding to the external communication base processors (BP) 11, 12 and 13, respectively. Details of this communication mechanism will be described later.

第2図はベースプロセツサ(BP)の内部を説明するも
のである。ベースプロセツサ(BP)は前述したよう
に、2台の数値演算プロセツサ(APU)78,79と
1台の数値データプロセツサ(NDP)77及びそれら
を統合して管理するとともに、システム全体の制御に参
加して種々の並列処理や通信処理さらには知能処理を行
うメインプロセツサ(CPU)76とから構成される。
本実施例においては、数値演算プロセツサ78,79が
制御演算を主として行い、メインプロセツサ76とは符
号80でインターフエースされメインプロセツサ76、
数値データプロセツサ77と完全並列に動作する。メイ
ンプロセツサ76は、数値演算プロセツサ78,79を
操作して制御演算のアルゴリズムを自身のオペコードで
実行し、他のベースプロセツサBPとともに制御演算の
流れを制御して完全並列処理を行うが、同期がとれるま
での空き時間や数値演算プロセツサ78,79に演算処
理を依頼した後の空き時間等、いわばメインプロセツサ
76の遊び時間は、同期割込みや数値演算プロセツサ7
8,79の処理終了割込み等のサポートによりバツクグ
ラウンドオペレーシヨンに有効利用できるようになつて
いる。本実施例においては、このバツクグラウンド・オ
ペレーシヨンとして知能処理を考えており、メインプロ
セツサ76は、数値データプロセツサ77とともに知識
ベースやセンサからの外界情報を利用して知能処理をバ
ツクグラウンドで行い、その結果をメインで実行されて
いる制御演算に反映する。
FIG. 2 illustrates the inside of the base processor (BP). As described above, the base processor (BP) manages two numerical arithmetic processors (APU) 78 and 79, one numerical data processor (NDP) 77 and those in an integrated manner, and controls the entire system. And a main processor (CPU) 76 which participates in and performs various parallel processing, communication processing, and intelligent processing.
In the present embodiment, the numerical operation processors 78 and 79 mainly perform control operations, and are interfaced with the main processor 76 by the reference numeral 80.
It operates in parallel with the numerical data processor 77. The main processor 76 operates the numerical operation processors 78 and 79 to execute the algorithm of the control operation by its own opcode, and controls the flow of the control operation together with other base processors BP to perform the complete parallel processing. The idle time of the main processor 76, such as the free time until synchronization is achieved and the free time after requesting arithmetic processing from the numerical processing processors 78 and 79, is, so to speak, a synchronous interrupt or the numerical processing processor 7.
With the support of processing end interrupts 8 and 79, it can be effectively used for background operation. In this embodiment, intelligent processing is considered as the background operation, and the main processor 76 uses the external information from the knowledge base and the sensor together with the numerical data processor 77 to perform the intelligent processing in the background. The result is reflected in the control calculation executed in the main.

第3図は数値演算プロセツサAPUとメインプロセツサ
CPUとの並列処理動作の様子を示している。矢印85
より上部がバツクグラウンドジヨブ、矢印84より下部
がメインの制御演算処理を示している。知能処理等のバ
ツクグラウンドジヨブ81を実行しているメインプロセ
ツサCPUは、数値演算プロセツサAPUの演算処理8
3が終了し、数値演算プロセツサAPUの処理終了割込
み86がメインプロセツサCPUに対してかかると現在
のレジスタの状態を必要だけスタツクに退避した後、メ
インジヨブ82に符号87で強制的に引き戻され、同期
処理や次の演算の準備を行つた後、再び数値演算プロセ
ツサAPUに演算処理を88で依頼して89でレジスタ
をもとの状態に復帰してから再びバツクグラウンドジヨ
ブ81を呼び出し続きを実行する。この手法により、符
号82で示す処理は十分短い時間で完了するため、メイ
ンプロセツサCPUは大半の処理能力を知能処理等のバ
ツクグラウンドオペレーシヨンに割り当てることが可能
となる。同期割込みを利用した場合の同期がとれるまで
のメインプロセツサCPUの遊び時間の有効利用も、複
数演算プロセツサAPUの処理終了割込みの場合と同様
にして実現される。
FIG. 3 shows a state of parallel processing operation of the numerical operation processor APU and the main processor CPU. Arrow 85
The upper part shows the control ground processing, and the lower part from the arrow 84 shows the main control calculation processing. The main processor CPU executing the back ground job 81 such as intelligent processing is operated by the numerical processing processor APU.
3 is completed, and when the processing end interrupt 86 of the numerical processor APU is applied to the main processor CPU, the current register state is saved in the stack as much as necessary, and then the main job 82 is forcibly pulled back by the reference numeral 87. After preparing for the synchronous processing and the next operation, the numerical operation processor APU is requested to perform the operation processing again at 88, the register is returned to the original state at 89, and the back ground job 81 is called again. Run. By this method, the processing indicated by reference numeral 82 is completed in a sufficiently short time, so that the main processor CPU can allocate most of the processing capacity to the background operation such as the intelligent processing. The effective use of the idle time of the main processor CPU until the synchronization is achieved when using the synchronous interrupt is realized in the same manner as in the case of the processing end interrupt of the multiple arithmetic processor APU.

なお、以上の方法によりバツクグラウンドオペレーシヨ
ンは、制御演算を意識することなく、通常のプログラム
と同様に記述することが可能となつている。
By the above method, the back ground operation can be described in the same manner as a normal program without paying attention to control calculation.

第4図は、マルチ・マイクロ・プロセツサ・モジユール
(MMPM)90内で並列処理される制御演算とそのバ
ツクグラウンドで実行され、制御演算を支援する知能処
理との関係及び処理の様子を模式的に表わしたものであ
る。マルチ・マイクロ・プロセツサ・モジユール(MM
PM)90内の各ベースプロセツサ(BP)1〜13で
処理される符号94に代表する制御演算は符号97に示
すように各ベースプロセツサ(BP)1〜13で密に連
絡をとりながら完全並列に処理される。各ベースプロセ
ツサ(BP)1〜13が分担するタスクは、制御演算を
例えば加減乗除算等のプリミテイブな演算レベルまで分
解してできるだけ並列に処理できるように分配されたも
のであり、クリテイカルパスの処理時間に近い最良の並
列処理ができるように予めスケジユールして各ベースプ
ロセツサ(BP)1〜13に割り当てられている。知能
処理は、やはり各ベースプロセツサ(BP)1〜13単
位で知識ベースを持ち知能処理を機能ごとに分担して符
号93に代表するように制御演算のバツクグラウンドで
符号96に示すようにベースプロセツサ間でゆるやかに
情報伝達を行いながら分散型並列処理によつて実行され
る。また、各マルチ・マイクロ・プロセツサ(MMP
M)は、担当する制御対象に関係の深い知識を各ベース
プロセツサ(BP)1〜13の知識ベース内に保持し、
それを利用してなるべく他のマルチ・マイクロ・プロセ
ツサ(MMPM)の知識を利用しなくても大半の知能処
理が可能になるように工夫している。これら知能処理の
具体例については後述する。この図において符号95は
完全並列処理される制御演算全体を表現している。知能
処理は符号98に代表されるように、制御装置全体95
の各種パラメータに影響を与え、制御演算の流れや各種
制御量の制御を行う。さらに、知能処理においては、知
識ベースだけではなく、符号99に代表される制御対象
に関連の深いセンサからの情報の処理も合わせて行い、
知識の一つとして利用する。システム共通の知識に関し
ては符号100に示すようにシステムバス73〜75を
通じて知識を取り出したり、新たに格納又は変更を行つ
たりすることが可能となつている。
FIG. 4 is a schematic diagram showing the relationship between a control operation which is processed in parallel in the multi-micro processor module (MMPM) 90 and the intelligent processing which is executed in the background and supports the control operation, and the state of the processing. It is a representation. Multi Micro Processor Module (MM
The control operation represented by the reference numeral 94, which is processed by the respective base processors (BP) 1 to 13 in the PM) 90, is shown in the reference numeral 97, while closely communicating with the respective base processors (BP) 1 to 13. Processed in parallel. The tasks shared by the respective base processors (BP) 1 to 13 are distributed so that control operations can be decomposed into primitive operation levels such as addition, subtraction, multiplication and division and processed in parallel as much as possible. Is preliminarily scheduled and assigned to each base processor (BP) 1 to 13 so that the best parallel processing close to the processing time can be performed. The intelligent processing has a knowledge base in units of 1 to 13 of each base processor (BP), and the intelligent processing is divided for each function and represented by reference numeral 93. It is executed by distributed parallel processing while slowly transmitting information between the processors. In addition, each multi-micro processor (MMP
M) holds knowledge deeply related to the controlled object in charge in the knowledge base of each base processor (BP) 1 to 13,
It is devised so that most of the intelligent processing can be performed without using the knowledge of other multi-micro processors (MMPM). Specific examples of these intelligent processes will be described later. In this figure, reference numeral 95 represents the entire control operation which is completely parallel processed. The intelligent processing is represented by reference numeral 98, and the entire control device 95
Influences various parameters of, and controls the flow of control calculation and various controlled variables. Further, in the intelligent processing, not only the knowledge base but also the processing of information from the sensor that is closely related to the controlled object represented by the reference numeral 99 is performed.
Use as one of the knowledge. As for the knowledge common to the system, it is possible to take out the knowledge through the system buses 73 to 75 and to newly store or change the knowledge as indicated by reference numeral 100.

第5図は制御演算全体が完全並列処理により実行されて
いる様子を示している。符号103に代表される下向き
の矢印は、ベースプロセツサ(BP)が制御演算を実行
している部分を示しており、演算処理は時間の経過に伴
い原則(例外は分岐処理等がはいる場合)として図中上
から下へ行われていくものとする。このような密結合型
完全並列処理においては、タスク間のリレーシヨンが複
雑なため、タスク間で密な情報交換が必要となり、どの
タスクが終了したらどのタスクが実行可能になるかとい
うタスク間の先行関係に矛盾が生じないように、同期を
とる必要がある。従来、このような完全並列処理におい
ては、データフローに代表されるデータ依存型の並列処
理制御が一般的であつた。データフロー型制御は、タス
ク間のリレーシヨンが簡単であり分岐処理等汎用処理が
存在しない場合は、専用的なシステムに限られるが、ハ
ードウエア等での実現が可能なため有効といえる。しか
し、タスク数が莫大になつてタスク間のリレーシヨンが
複雑化しておりかつ様々なジヨブに適用できる汎用性が
要求されると、同期処理自体をプログラムでダイナミツ
クに制御できる必要があり、また条件分岐処理等も自在
に実行できなければならず、多くの同期用フラグと同期
処理のための大きなソフトウエアオーバーヘツドを伴う
ため、タスクを細分化できなかつたり、プログラムが複
雑化したり等、実質的な処理効率の向上が望めないとい
う問題があつた。そこで、本実施例においては、プロセ
ツサをプロセスとみなし、プロセスを制御する方式のプ
ロセツサ制御をグループ内プロセツサ間同期機構によつ
て行い、矛盾なく並列処理を行う方式を提案し、採用し
ている。この方式は、関連のあるタスクを処理するベー
スプロセツサ(BP)をグループにまとめ、そのグルー
プに属するプロセツサ間で同期をとりながら処理を行う
ため、常に制御すべきプロセスはプロセツサ台数分の1
3プロセスを越えることはない。したがつて同期処理も
常に1ワード(16ビツト)のデータ処理で完了するた
めに、ソフトウエアオーバーヘツドを極小化できる。第
5図においては、符号105に代表される横線にて同期
処理が行われている。符号105ではベースプロセツサ
(BP0)1と(BP1)2とがグループを構成し、タ
スク処理が共に完了して必要なデータが出そろいベース
プロセツサ(BP0)1と(BP1)2の間での情報交
換が可能になつたため、ベースプロセツサ(BP0)1
とベースプロセツサ(BP1)2の間で同期処理を行つ
てお互いにその事を確認し合つている。グループは、タ
スクのリレーシヨンによつて最良となるように自在に変
更できるため、グループ内プロセツサ間同期機構を十分
利用すれば、クリテイカルパスの処理時間に近い最良の
完全並列処理を容易にサポートできる。さらに、プロセ
スを制御してる関係上、同期処理単位間で符号106に
示すような条件分岐処理も比較的容易にサポートでき
る。符号104に代表するのは、プロセツサ間で同期が
とれるまでの空時間、すなちわプロセツサの遊び時間を
示している。この時間間は、同期処理が終了したら割込
みによりメインプロセツサ(CPU)に知らせるグルー
プ内プロセツサ同期機構の同期終了割込み機能によつて
同期処理を管理することにより、知能処理等のバツクグ
ラウンドジヨブにメインプロセツサ(CPU)の余剰処
理能力を割り当てることができる。また、制御演算にお
いては、数値演算処理が多いため大半の処理は数値演算
プロセツサAPUで実行される。そのため、ベースプロ
セツサ(BP)は制御演算を実行中であつても、メイン
プロセツサCPUが数値演算プロセツサAPUに数値演
算を依頼した後のメインプロセツサCPUの空き時間
も、同期割込み機能と同様の数値演算プロセツサAPU
の処理終了割込み機能によつてバツクグラウンドジヨブ
に有効利用できるため、本実施例においては、メインプ
ロセツサCPUの大半の処理能力を知能処理に割り当て
ることが可能となつている。
FIG. 5 shows a state where the entire control calculation is executed by completely parallel processing. A downward arrow typified by reference numeral 103 indicates a portion where the base processor (BP) is executing a control operation, and the operation processing is in principle performed with the passage of time (exceptions include branch processing). ) Is performed from top to bottom in the figure. In such tightly-coupled complete parallel processing, since the relay between tasks is complicated, it is necessary to exchange information closely between tasks, and between tasks, which tasks can be executed after which tasks are completed. It is necessary to synchronize so that the preceding relationship does not conflict. Conventionally, in such complete parallel processing, data dependent parallel processing control represented by a data flow has been generally used. The data flow type control is effective because it can be realized by hardware, etc., although it is limited to a dedicated system when the relay between tasks is simple and there is no general-purpose processing such as branch processing. However, if the number of tasks becomes huge and the relay between tasks becomes complicated and versatility that can be applied to various jobs is required, it is necessary to control the synchronous processing itself dynamically by the program, and Branch processing must be able to be executed freely, and since many synchronization flags and a large software overhead for synchronization processing are involved, tasks cannot be subdivided and programs become complicated. There was a problem that it was not possible to improve the processing efficiency. Therefore, in this embodiment, a processor is regarded as a process, a processor control method for controlling the process is performed by an inter-processor synchronization mechanism in the group, and a parallel processing method is proposed and adopted. In this method, base processors (BPs) that process related tasks are grouped and the processors belonging to the group perform processing in synchronization with each other.
It does not exceed 3 processes. Therefore, since the synchronous processing is always completed by the data processing of 1 word (16 bits), the software overhead can be minimized. In FIG. 5, the synchronization processing is performed by the horizontal line represented by reference numeral 105. In the reference numeral 105, the base processors (BP0) 1 and (BP1) 2 form a group, and task processing is completed together and necessary data are available between the base processors (BP0) 1 and (BP1) 2. Since it is possible to exchange information, the base processor (BP0) 1
And the base processor (BP1) 2 are synchronized with each other to confirm the facts. Since the group can be freely changed to the best one by relaying the tasks, if the synchronization mechanism between processors in the group is fully utilized, the best complete parallel processing close to the processing time of the critical path can be easily supported. it can. Further, due to the control of the process, the conditional branch processing as shown by reference numeral 106 between the synchronous processing units can be supported relatively easily. The symbol 104 represents the idle time until synchronization is established between the processors, that is, the idle time of the processor. During this time, when the synchronous processing is completed, an interrupt is sent to the main processor (CPU) to notify the main processor (CPU) of the synchronous processing by the synchronous end interrupt function of the processor synchronization mechanism within the group, and the background processing such as intelligent processing can be performed. The surplus processing capacity of the main processor (CPU) can be assigned. Further, in the control calculation, since there are many numerical calculation processes, most of the processes are executed by the numerical calculation processor APU. Therefore, even when the base processor (BP) is executing the control operation, the free time of the main processor CPU after the main processor CPU requests the numerical operation processor APU to perform the numerical operation is the same as the synchronous interrupt function. Numerical arithmetic processor APU
Since it can be effectively used for the back ground job by the processing end interrupt function, the processing capacity of most of the main processor CPU can be assigned to the intelligent processing in this embodiment.

第6図はシステム全体の共通バスであるシステムバス7
3,74,75により符号90に代表されるマルチ・マ
イクロ・プロセツサ・モジユール(MMPM)が複数モ
ジユール(本実施例においては最大128モジユール)
共有データベースの存在する共有主記憶100,10
1,102を共有している様子を示している。共有主記
憶には共有データの他、共有プログラムも駐留し、各マ
ルチ・マイクロ・プロセツサ・モジユール(MMPM)
は、自身の持つ共有メモリあるいはローカルメモリ内に
これらの共有データや共有プログラムを取り込んで処理
を行う。システムバス73,74,75を3つ独立して
設けることによつて多数のモジユールによるシステムバ
スアクセス競合を緩和している。各システムバス73,
74,75へのアクセスは、前述したように、各マルチ
・マイクロ・プロセツサ・モジユール(MMPM)の外
部通信用ベース・プロセツサ(BP)11,12,13
のシステムバスバツフア(SBB)70,71,72を
介して行われる。このように、全体としてそれ程高速で
なくとも、システム全体を構成するすべてのマルチ・マ
イクロ・プロセツサ・モジユール(MMPM)からアク
セス可能なシステムバス及びその上に設けられた共有主
記憶を有することにより、専用的な結合だけでは不備が
多くどうしても汎用性に欠けがちであつた巨大マルチ・
プロセツサ・システムに大きな汎用性を持たせることが
できる。
FIG. 6 shows a system bus 7 which is a common bus for the entire system.
A plurality of multi-micro processor modules (MMPM) represented by reference numeral 90, 3, 74 and 75 (128 modules at maximum in this embodiment).
Shared main memory 100, 10 with shared database
1 and 102 are shared. In addition to shared data, shared programs also reside in the shared main memory, and each multi-micro processor module (MMPM)
Processes the shared data or shared program in its own shared memory or local memory. By providing three system buses 73, 74, and 75 independently, contention for system bus access due to a large number of modules is mitigated. Each system bus 73,
As described above, the access to the 74, 75 is based on the external communication base processor (BP) 11, 12, 13 of each multi-micro processor module (MMPM).
System bus buffers (SBB) 70, 71, 72 of. In this way, by having a system bus accessible from all the multi-micro processor modules (MMPM) that make up the entire system and a shared main memory provided thereon, even if it is not so fast as a whole, There are many deficiencies in the dedicated combination, and there is a general lack of versatility.
You can add great versatility to your processor system.

しかし、システムバス73,74,75や共有主記憶1
00,101,102だけに頼りすぎると、アクセス競
合によつて十分効率が上がらないことになる。そこで本
実施例においては、前述したように、各マルチ・マイク
ロ・プロセツサ・モジユール(MMPM)の外部通信用
ベースプロセツサ(BP)11,12,13に外部通信
用継ぎ手機構(EC)14,15,16をそれぞれ設
け、関連の深い制御処理、知能処理を担当するマルチ・
マイクロ・プロセツサ・モジユール(MMPM)間をそ
れらの通信用継ぎ手で専用的に接続して大半の知識は近
くのマルチ・マイクロ・プロセツサ・モジユール(MM
PM)から入手可能にし、共有主記憶への依存度を減少
させてシステムバスへのアクセス競合を極小化してい
る。
However, the system buses 73, 74, 75 and the shared main memory 1
Reliance on only 00, 101, and 102 will result in insufficient efficiency due to access competition. Therefore, in the present embodiment, as described above, the external communication base processor (BP) 11, 12, 13 of each multi-micro processor module (MMPM) is connected to the external communication joint mechanism (EC) 14, 15. , 16 are provided respectively, and a multi
Most of the knowledge is obtained by connecting the Micro Processor Modules (MMPM) exclusively with their communication joints.
PM) to reduce the dependency on the shared main memory and minimize the access contention to the system bus.

第7図は外部通信用継ぎ手機構(EC)14,15,1
6を利用して人間型知能ロボツトの制御システムをマル
チ・マイクロ・プロセツサ・モジユール(MMPM)に
よつて構成した例を示している。マルチ・マイクロ・プ
ロセツサ・モジユール(MMPM)103,104,1
05をリング状に結合してシステム全体の制御及び管理
を行う頭脳部を構成し、そこから視覚部、腕部、足部そ
れぞれの総合制御及び管理を担当する各マルチ・マイク
ロ・プロセツサ・モジユール(MMPM)106,11
0,109に連結をとつている。さらに、頭部の総合制
御を行うマルチ・マイクロ・プロセツサ・モジユール
(MMPM)106は、左,右それぞれの視覚制御を担
当する各マルチ・マイクロ・プロセツサ・モジユール
(MMPM)107,108と連絡している。同様に腕
部の総合制御を行うマルチ・マイクロ・プロセツサ・モ
ジユール(MMPM)110はマルチ・マイクロ・プロ
セツサ・モジユール(MMPM)113,114と、足
部の総合制御を行うマルチ・マイクロ・プロセツサ・モ
ジユール(MMPM)109はマルチ・マイクロ・プロ
セツサ・モジユール(MMPM)111,112とそれ
ぞれ連絡し、全体として機能分散、階層化構造を形成し
ている。この機能分散,階層化システムを構成する12
台のマルチ・マイクロ・プロセツサ・モジユール(MM
PM)は3つのシステムバス73,74,75によつて
も接続されるが、関連制御要素間を外部通信継ぎ手機構
(EC)によつて専用接続することにより、頭部、視覚
部、腕部、足部の各制御部において大半の関連する必要
な知識は近くのマルチ・マイクロ・プロセツサ・モジユ
ール(MMPM)内の知識ベースから入手可能となるた
め、多数のマルチ・マイクロ・プロセツサ・モジユール
(MMPM)によるシステムバスアクセス競合による処
理能力損失の問題は実質上問題なくなると考えられる。
FIG. 7 shows a joint mechanism (EC) 14, 15, 1 for external communication.
6 shows an example in which a control system for a human-type intelligent robot is configured by using a multi-micro processor module (MMPM) by utilizing the method described in FIG. Multi Micro Processor Module (MMPM) 103, 104, 1
05 is connected in a ring to form a brain part that controls and manages the entire system. From there, each multi-micro processor module that is in charge of total control and management of the visual part, arm part, and foot part ( MMPM) 106, 11
It is connected to 0 and 109. Further, the multi-micro processor module (MMPM) 106, which performs total control of the head, communicates with each multi-micro processor module (MMPM) 107, 108 in charge of left and right visual control. There is. Similarly, the multi-micro processor module (MMPM) 110 that performs total control of the arms is a multi-micro processor module (MMPM) 113 and 114, and the multi-micro processor module that performs total control of the foot. The (MMPM) 109 communicates with the multi-micro processor modules (MMPM) 111 and 112, respectively, and forms a function distribution and a hierarchical structure as a whole. Constituting this functionally distributed and hierarchical system 12
Multi Micro Processor Module (MM
PM) is also connected by the three system buses 73, 74, 75, but the related control elements are exclusively connected by the external communication joint mechanism (EC), so that the head, the visual part, and the arm part are connected. , A large number of multi-micro processor modules (MMPM), since most relevant and necessary knowledge for each control part of the foot is available from the knowledge base in the nearby multi-micro processor module (MMPM). ), The problem of processing capacity loss due to system bus access contention is considered to virtually disappear.

第8図は第7図における頭脳から視覚制御系に至る部分
の外部通信用継ぎ手機構(EC)によるマルチ・マイク
ロ・プロセツサ・モジユール(MMPM)103,10
4,107,108間での通信の様子を拡大して示して
いる。図中符号115に代表される外部通信用継ぎ手機
構(EC)によるマルチ・マイクロ・プロセツサ・モジ
ユール(MMPM)間の通信は、前述した様にデユアル
ポートRAMを介在させ、通信相手同志で必要なら割込
みをかけ合い適宜ハンドシエーク行つてデユアルポート
RAM上のデータをやりとりする手法で行われ、機構的
な特徴は前述したプロセツサ間命令伝達機構に準じてい
る。
FIG. 8 shows a multi-micro processor module (MMPM) 103, 10 by means of an external communication joint mechanism (EC) from the brain to the visual control system in FIG.
The state of communication between 4, 107 and 108 is enlarged and shown. Communication between the multi-micro processor module (MMPM) by the external communication joint mechanism (EC) represented by reference numeral 115 in the figure intervenes the dual port RAM as described above, and interrupts if necessary by the communication partners. Is carried out by handshake and the data on the dual port RAM is exchanged appropriately, and the mechanical characteristics are similar to the inter-processor command transmission mechanism described above.

第9図はマルチ・マイクロ・プロセツサ・モジユール
(MMPM)104とマルチ・マイクロ・プロセツサ・
モジユール(MMPM)108との間の外部通信用継ぎ
手機構(EC)による通信115をさらに拡大して詳細
に示したものである。116及び117はそれぞれマル
チ・マイクロ・プロセツサ・モジユール(MMPM)1
04及びマルチ・マイクロ・プロセツサ・モジユール
(MMPM)108の外部通信用ベースプロセツサ(B
P)126,127の管理下にある外部通信用継ぎ手機
構(EC)を示している。外部通信用継ぎ手機構(E
C)116,117は、デユアルポートRAM118を
アクセスするためのアドレス出力、データ入出力、デユ
アルポートRAM118を制御するための信号入出力及
び割込み受信機能をサポートする。デユアルポートRA
M118は、符号121及び符号123に示す割込みベ
クトルがデユアルポートRAM118上の所定のアドレ
スにベースプロセツサ(BP)127,126から書き
込まれたときに、ベースプロセツサ(BP)127から
ベースプロセツサ126への割り込み指示121であれ
ば、ベースプロセツサ(BP)126へ割込み122を
発生し、ベースプロセツサ(BP)126からベースプ
ロセツサ127への割り込み指示123であれば、ベー
スプロセツサ(BP)127への割込み124を発生す
る様にデユアルポートRAM118上に割込み発生機能
を有している。割込みをかけられたベースプロセツサ
(BP)は、デユアルポートRAM118上に書き込ま
れた割込みベクトルを参照し、割込みベクトルの指示し
ている割込みサービスルーチンの処理へ移行する。符号
119,符号120に示すデユアルポートRAM118
上での一般のデータの入出力処理は、割込みベクトルを
サポートするアドレス領域を以外の領域で、通常のメモ
リアクセスと同様自由に行える様になつている。
FIG. 9 shows a multi-micro processor module (MMPM) 104 and a multi-micro processor module.
The communication 115 by the external communication joint mechanism (EC) with the module (MMPM) 108 is further expanded and shown in detail. 116 and 117 are multi-micro processor modules (MMPM) 1 respectively.
04 and multi-micro processor module (MMPM) 108 for external communication base processor (B
P) 126, 127 showing the joint mechanism (EC) for external communication. External communication joint mechanism (E
C) 116 and 117 support address output for accessing the dual port RAM 118, data input / output, signal input / output for controlling the dual port RAM 118, and interrupt receiving function. Dual Port RA
When the interrupt vector denoted by reference numerals 121 and 123 is written from the base processor (BP) 127, 126 to a predetermined address on the dual port RAM 118, the M118 outputs from the base processor (BP) 127 to the base processor 126. Interrupt instruction 121 to the base processor (BP) 126, and an interrupt instruction 123 from the base processor (BP) 126 to the base processor 127, the base processor (BP) 126. An interrupt generation function is provided on the dual port RAM 118 so as to generate an interrupt 124 to the 127. The interrupted base processor (BP) refers to the interrupt vector written in the dual port RAM 118, and shifts to the process of the interrupt service routine designated by the interrupt vector. Dual port RAM 118 denoted by reference numerals 119 and 120
The above-mentioned general data input / output processing can be freely performed in the area other than the address area supporting the interrupt vector as in the normal memory access.

第10図は前述したマルチ・マイクロ・プロセツサ・モ
ジユール(MMPM)間の通信をサポートするシステム
バス73,74,75及び外部通信用継ぎ手機構(E
C)14,15,16を利用して、各マルチ・マイクロ
・プロセツサ・モジユール(MMPM)内のベースプロ
セツサ(BP)各々が分散して有するデータベース及び
知能処理ソフトウエア間での符号130,132に代表
するマルチ・マイクロ・プロセツサ・モジユール(MM
PM)内外に渡る情報のやりとりと、3つのシステムバ
ス上に設けられた共有知識ベースの存在する3つの共有
主記憶100,101,102を使用した符号131に
代表する情報のやりとり及び外界からの知識情報として
符号132に代表するセンサ情報の入手の様子を模式的
に示している。図中に示しているマルチ・マイクロ・プ
ロセツサ・モジユール(MMPM)103,104,1
07,108は前にも述べたように、本実施例において
第1図に示すように13台のベースプロセツサ(BP)
1〜13から成り、そのうち11〜13の3つのベース
プロセツサ(BP)が外部通信用の機構EC及びシステ
ムバスバツフアSBBを有するが、本図においては、符
号129に代表する外部通信用機構を有するベースプロ
セツサ(BP)以外の符号128に代表する一般のベー
スプロセツサ(BP)は、簡単のため適当に省略してい
る。本システムにおいては、このように機能分散、階層
化構造の巨大知的並列処理システムを第10図に示すよ
うなマルチ・マイクロ・プロセツサ・モジユール(MM
PM)間の密でかつ汎用性の高い通信ネツトワークによ
り容易に実現可能である。本考案を構成する通信ネツト
ワーク方式によれば、密結合型並列処理、疎結合型並列
処理あるいは分散型並列処理等の様々な通信量を有する
様々な並列処理や分散処理が混在してもマルチ・マイク
ロ・プロセツサ・モジユール(MMPM)内の適切な通
信機構により接続し、適切な処理機構を使用して処理を
行うことによつてデータ通信量に応じた通常スループツ
トを提供できるため、並列処理の最大の難的であつた通
信オーバーヘツドによる並列処理効率低下の問題を解決
できる。前述した第6図においては、主知識ベース及び
センサ情報に基づく知能処理、知識処理の様子をよく表
わしている。本実施例においてはこのような知識処理
は、あくまでも制御対象の運動制御等を行う制御演算の
バツクグラウンドで自然に実行され、その処理結果に基
づいて種々の制御量や制御の流れ等に影響を与えて制御
演算処理自体を制御するところに特徴がある。
FIG. 10 shows a system bus 73, 74, 75 for supporting communication between the above-mentioned multi-micro processor module (MMPM) and a joint mechanism (E) for external communication.
C) Using 14, 15 and 16, reference numerals 130 and 132 between the database and the intelligent processing software that the base processors (BP) in each multi-micro processor module (MMPM) have in a distributed manner. A typical multi-micro processor module (MM
PM) Exchange of information between inside and outside, exchange of information represented by reference numeral 131 using three shared main memories 100, 101, 102 having shared knowledge bases provided on three system buses and from the outside world. A state in which sensor information represented by reference numeral 132 is acquired as knowledge information is schematically shown. Multi-micro processor module (MMPM) 103, 104, 1 shown in the figure
As described above, the reference numerals 07 and 108 indicate 13 base processors (BP) in this embodiment, as shown in FIG.
1 to 13, of which three base processors (BP) 11 to 13 have a mechanism EC for external communication and a system bus buffer SBB. In this figure, a mechanism for external communication represented by reference numeral 129. A general base processor (BP) represented by the reference numeral 128 other than the base processor (BP) having the above is omitted for simplicity. In this system, a huge intelligent parallel processing system having such a function-distributed and hierarchical structure is used as a multi-micro processor module (MM) as shown in FIG.
It can be easily realized by a dense and highly versatile communication network between PMs. According to the communication network method which constitutes the present invention, even if various parallel processing or distributed processing having various communication amounts such as tightly coupled parallel processing, loosely coupled parallel processing or distributed parallel processing are mixed, -By connecting with an appropriate communication mechanism in the Micro Processor Module (MMPM) and performing processing using an appropriate processing mechanism, it is possible to provide normal throughput corresponding to the data communication amount, so that parallel processing can be performed. It is possible to solve the problem of the parallel processing efficiency deterioration due to the communication overhead, which is the biggest difficulty. In FIG. 6 described above, the states of the intelligence processing and the knowledge processing based on the main knowledge base and the sensor information are well represented. In this embodiment, such knowledge processing is naturally executed in the background of the control calculation for performing motion control of the controlled object, etc., and affects various control amounts and control flows based on the processing result. It is characterized in that it is given to control the control arithmetic processing itself.

本発明の実施例によれば、高速共有メモリ通信機構とプ
ロセツサ間命令伝達機構及びグループ内プロセツサ間同
期機構等の並列処理用ハードウエアのサポートの下に数
値演算プロセツサAPUを中心に制御演算を完全並列処
理によつて高速処理し、複雑な運動制御等をリアルタイ
ムで実行することを可能にして、かつ数値演算プロセツ
サAPUと並列動作するメインプロセツサCPUの大半
の処理能力を、制御演算のバツクグラウンドで実行する
知識ベースとセンサによる外界の情報を基にした知能処
理に割り当てることを可能にし、その知能処理の結果を
制御演算の種々のパラメータに反映する手法により知的
制御を実現する制御用知的並列処理モジユールであるマ
ルチ・マイクロ・プロセツサ・モジユールMMPMを提
供し、さらにマルチ・マイクロ・プロセツサ・モジユー
ルMMPMに外部通信用ハードウエアであるシステムバ
スバツフアと外部通信用継ぎ手機構とを設け、前者によ
り複数のマルチ・マイクロ・プロセツサ・モジユールM
MPMで共有可能なシステムバスとそのシステムバス上
の共有を記憶等の共有リソースをサポートし、後者で関
連するマルチ・マイクロ・プロセツサ・モジユールMM
PMと一対一での専用密結合をサポートして機能分散、
階層化接続構造を提供し、それらによりさらに複数のマ
ルチ・マイクロ・プロセツサ・モジユールMMPMを効
率良く汎用的に結合してネツトワークを構成し、その結
果、巨大制御用知的並列処理システムを構築することが
できる。
According to the embodiment of the present invention, the control operation is completed mainly by the numerical operation processor APU under the support of the parallel processing hardware such as the high-speed shared memory communication mechanism, the inter-processor instruction transfer mechanism, and the inter-processor synchronization mechanism. The parallel processing enables high-speed processing, enables complex motion control, etc. to be executed in real time, and the processing capacity of most of the main processor CPU that operates in parallel with the numerical processing processor APU is controlled by the back ground of the control processing. It is possible to allocate to intelligent processing based on the knowledge base executed by the computer and the external information from the sensor, and the result of the intelligent processing is reflected in various parameters of the control operation. Provides a multi-micro processor module MMPM, which is a dynamic parallel processing module. · A system bus punishment Hua and external communication joint mechanism is an external communication hardware provided in the micro-processor-modules MMPM, a plurality of multi-micro-processor-module M by the former
A multi-micro processor module MM that supports shared resources such as a system bus that can be shared by MPM and sharing on that system bus
Supports dedicated one-to-one tight coupling with PM, function distribution,
Providing a hierarchical connection structure, by which multiple multi-micro processor modules MMPM can be efficiently and universally combined to construct a network, and as a result, an intelligent parallel processing system for huge control can be constructed. be able to.

〔発明の効果〕〔The invention's effect〕

本発明によれば、複雑、高度な運動制御演算をリアルタ
イムで高速で実行し得ると共に、それらの制御演算を支
援する知能処理、知識処理をも高速処理することができ
る。
According to the present invention, complex and sophisticated motion control calculations can be executed in real time at high speed, and the intelligent processing and knowledge processing that support these control calculations can also be processed at high speed.

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

図面は本発明のシステムの一実施例を示すもので、第1
図はマルチ・マイクロ・プロセツサ・モジユールのハー
ドウエア構成図、第2図はベースプロセツサの構成図、
第3図は数値演算プロセツサとメインプロセツサとの並
列動作を示す図、第4図はマルチ・マイクロ・プロセツ
サ・モジユール内の並列処理模式図、第5図はグループ
内のプロセツサ間同期機構を利用した完全並列処理の流
れを示す図、第6図はシステムバスによる共有主記憶の
共有の様子を示す図、第7図は人間型知能ロボツトへマ
ルチ・マイクロ・プロセツサ・モジユールを適用した場
合のシステム構成例を示す図、第8図は外部通信用継ぎ
手機構を利用した接続拡大図、第9図は外部通信用継ぎ
手機構の詳細を示す図、第10図は知識ベースを基本と
するプロセツサネツトワーク図である。 1〜13……ベースプロセツサ(BP)、47〜49…
…共有メモリ、30〜42……コミユニケーシヨンコン
トローラ(CC)、70〜72……システムバス・バツ
フア、73〜75……システムバス、14〜16……外
部通信用継ぎ手機構、76……メインプロセツサ(CP
U)、77……数値データプロセツサ(NDP)、78
〜79……数値演算プロセツサ(APU)、93……バ
ツクグラウンドジヨブ(知能処理)、94……制御演
算、95……制御演算全体、100〜102……共有主
記憶、118……デユアルポートRAM、99及び13
2……センサ情報。
The drawings show one embodiment of the system of the present invention.
The figure shows the hardware configuration of the multi-micro processor module. Fig. 2 shows the configuration of the base processor.
Fig. 3 is a diagram showing the parallel operation of the numerical processing processor and the main processor, Fig. 4 is a schematic diagram of parallel processing in the multi-micro processor module, and Fig. 5 uses the synchronization mechanism between the processors in the group. FIG. 6 is a diagram showing the flow of complete parallel processing, FIG. 6 is a diagram showing how shared main memory is shared by the system bus, and FIG. 7 is a system in which a multi-micro processor module is applied to a human-type intelligent robot. FIG. 8 is a diagram showing a configuration example, FIG. 8 is an enlarged view of a connection using an external communication joint mechanism, FIG. 9 is a view showing details of the external communication joint mechanism, and FIG. 10 is a knowledge-based processor network. It is a work figure. 1 to 13 ... Base processor (BP), 47 to 49 ...
... Shared memory, 30-42 ... Communication controller (CC), 70-72 ... System bus buffer, 73-75 ... System bus, 14-16 ... External communication joint mechanism, 76 ... Main Processor (CP
U), 77 ... Numerical data processor (NDP), 78
~ 79 ... Numerical operation processor (APU), 93 ... Background ground job (intelligent processing), 94 ... Control operation, 95 ... Overall control operation, 100-102 ... Shared main memory, 118 ... Dual port RAM, 99 and 13
2 ... Sensor information.

Claims (9)

【特許請求の範囲】[Claims] 【請求項1】知識や知能の支援の下に制御を行う必要の
ある知的制御対象のための並列処理システムにおいて、 複数のベースプロセッサ(1〜13)を、高速な共有メ
モリ通信機構(44〜46,47〜49,53〜55)
と、任意のプロセッサ間で命令及び情報の授受を行うプ
ロセッサ間命令伝達機構(30)とによって結合してモ
ジュール化し、 前記複数のマルチ・マイクロ・プロセッサ・モジュール
(MMPM)は、前記知的制御対象の制御演算とそれを
支援する知能処理とを機能分散して実行する手段を備
え、 前記複数のマルチ・マイクロ・プロセッサ・モジュール
(MMPM)を、モジュール間通信機構(14〜16,
70〜72)により結合したことを特徴とする並列処理
システム。
1. A parallel processing system for an intelligent controlled object which needs to be controlled with the support of knowledge or intelligence, wherein a plurality of base processors (1 to 13) are connected to a high speed shared memory communication mechanism (44). ~ 46, 47-49, 53-55)
And an inter-processor instruction transfer mechanism (30) for exchanging instructions and information between arbitrary processors to form a module, and the plurality of multi-microprocessor modules (MMPM) are the intelligent control targets. Of a plurality of multi-micro processor modules (MMPM), and an inter-module communication mechanism (14-16,
70-72), and a parallel processing system.
【請求項2】特許請求の範囲第1項記載の並列処理シス
テムにおいて、 前記マルチ・マイクロ・プロセッサ・モジュール(MM
PM)を構成するベースプロセッサ(1〜13)は、メ
インプロセッサ(76)と、前記メインプロセッサ(7
6)の管理下でメインプロセッサ(76)と並列動作可
能な複数の演算処理用プロセッサ(78,79)とを備
え、 前記メインプロセッサ(76)は演算処理を演算処理用
プロセッサ(78,79)に依頼してその処理が終了す
るまでのメインプロセッサ(76)の遊び時間又は、メ
インプロセッサ(76)間で制御演算の同期がとれるま
でのメインプロセッサ(76)の遊び時間を、バックグ
ラウンドで行う並列処理としての制御演算を支援する処
理に割り当てられることを特徴とする並列処理システ
ム。
2. The parallel processing system according to claim 1, wherein the multi-microprocessor module (MM).
The base processors (1 to 13) forming the PM include a main processor (76) and the main processor (7).
Under the control of 6), the main processor (76) and a plurality of arithmetic processing processors (78, 79) capable of operating in parallel are provided, and the main processor (76) performs arithmetic processing on the arithmetic processing processors (78, 79). Of the main processor (76) until the request is sent to the main processor (76) or until the control calculation is synchronized between the main processors (76) in the background. A parallel processing system characterized by being assigned to a process for supporting a control operation as a parallel process.
【請求項3】特許請求の範囲第2項記載の並列処理シス
テムにおいて、 前記メインプロセッサ(76)は、処理中に知能処理を
支援するための処理演算となる主たる演算の実行を演算
処理用プロセッサ(78,79)に依頼して生じるその
遊び時間に、バックグラウンド処理として知能処理を呼
び出して実行する機能と、前記演算処理プロセッサ(7
8,79)による演算の実行が終了した際又は他のベー
スプロセッサが必要な処理を終了した際に、前記メイン
プロセッサ(76)に対して割込みを生成して前記メイ
ンプロセッサ(76)を前記主たる演算処理に復帰させ
る同期処理機能とを備えたことを特徴とする並列処理シ
ステム。
3. The parallel processing system according to claim 2, wherein the main processor (76) executes a main operation that is a processing operation for supporting intelligent processing during processing. (78, 79) A function of calling and executing an intelligent process as a background process in the play time generated by requesting the arithmetic processor (7).
8, 79) when the execution of the operation is completed, or when another base processor completes the necessary processing, an interrupt is generated to the main processor (76) to make the main processor (76) the main processor. A parallel processing system having a synchronous processing function for returning to arithmetic processing.
【請求項4】特許請求の範囲第1項記載の並列処理シス
テムにおいて、 前記マルチ・マイクロ・プロセッサ・モジュールを構成
するベースプロセッサ(11〜13)のうちの1つ以上
に、各マルチ・マイクロ・プロセッサ・モジュール間の
通信を行う手段(70〜72)を設け、この通信手段
(70〜72)をバス(73〜75)に接続したことを
特徴とする並列処理システム。
4. A parallel processing system according to claim 1, wherein one or more of the base processors (11 to 13) constituting the multi-micro processor module is provided with each multi-micro processor. A parallel processing system comprising means (70 to 72) for performing communication between processor modules and connecting the communication means (70 to 72) to buses (73 to 75).
【請求項5】特許請求の範囲第1項記載の並列処理シス
テムにおいて、 前記マルチ・マイクロ・プロセッサ・モジュールを構成
するベースプロセッサ(11〜13)のうちの1つ以上
に、そのマルチ・マイクロ・プロセッサ・モジュールの
管理下で他のマルチ・マイクロ・プロセッサ・モジュー
ルと直接接続可能な外部通信機構(14〜16)を1つ
以上設けたことを特徴とする並列処理システム。
5. The parallel processing system according to claim 1, wherein one or more of the base processors (11 to 13) constituting the multi-micro processor module are provided with the multi-micro processor. A parallel processing system comprising one or more external communication mechanisms (14 to 16) which can be directly connected to another multi-microprocessor module under the control of the processor module.
【請求項6】特許請求の範囲第3項記載の並列処理シス
テムにおいて、 前記各マルチ・マイクロ・プロセッサ・モジュールを構
成するメインプロセッサ(76)は、制御対象の各制御
要素それぞれに関係の深い知識をメインプロセッサの管
理下で機能する知識ベースを分散して備えたことを特徴
とする並列処理システム。
6. The parallel processing system according to claim 3, wherein the main processor (76) constituting each of the multi-microprocessor modules has knowledge deeply related to each control element to be controlled. A parallel processing system comprising distributed knowledge bases that function under the control of a main processor.
【請求項7】特許請求の範囲第1項または第4項記載の
並列処理システムにおいて、 前記マルチ・マイクロ・プロセッサ・モジュール間を共
通に接続する共通バス(73〜75)上に、共有主記憶
(100〜102)を設け、 各マルチ・マイクロ・プロセッサ・モジュール間で共通
の知識を保持する共有知識ベースを前記共有主記憶(1
00〜102)上に設けたことを特徴とする並列処理シ
ステム。
7. The parallel processing system according to claim 1 or 4, wherein a shared main memory is provided on a common bus (73 to 75) commonly connecting the multi-microprocessor modules. (100 to 102), and a shared knowledge base for holding common knowledge among the multi-microprocessor modules is provided in the shared main memory (1
00-102) provided on the parallel processing system.
【請求項8】特許請求の範囲第1項または第5項記載の
並列処理システムにおいて、 前記マルチ・マイクロ・プロセッサ・モジュールの1つ
と他の1つとを、マルチ・マイクロ・プロセッサ・モジ
ュール間でハードウエア割込みをかけ合う機能を有する
手段(118)によって接続したことを特徴とする並列
処理システム。
8. The parallel processing system according to claim 1 or 5, wherein one of the multi-microprocessor modules and the other one are hard-wired between the multi-microprocessor modules. A parallel processing system, characterized in that they are connected by means (118) having a function of causing wear interrupts.
【請求項9】特許請求の範囲第1項記載の並列処理シス
テムにおいて、 前記複数のマルチ・マイクロ・プロセッサ・モジュール
は、一対一の専用密結合されていると共に、この結合を
サポートする機能分散的もしくはまたは階層化的に接続
されていることを特徴とする並列処理システム。
9. The parallel processing system according to claim 1, wherein the plurality of multi-microprocessor modules are tightly coupled to each other in a one-to-one relationship, and the functions are distributed to support the coupling. Alternatively, a parallel processing system characterized by being connected in a hierarchical manner.
JP60097702A 1985-05-10 1985-05-10 Parallel processing system Expired - Lifetime JPH0642234B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60097702A JPH0642234B2 (en) 1985-05-10 1985-05-10 Parallel processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60097702A JPH0642234B2 (en) 1985-05-10 1985-05-10 Parallel processing system

Publications (2)

Publication Number Publication Date
JPS61256465A JPS61256465A (en) 1986-11-14
JPH0642234B2 true JPH0642234B2 (en) 1994-06-01

Family

ID=14199254

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60097702A Expired - Lifetime JPH0642234B2 (en) 1985-05-10 1985-05-10 Parallel processing system

Country Status (1)

Country Link
JP (1) JPH0642234B2 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58154058A (en) * 1982-03-10 1983-09-13 Hitachi Ltd Executing system of os

Also Published As

Publication number Publication date
JPS61256465A (en) 1986-11-14

Similar Documents

Publication Publication Date Title
US5968150A (en) Processor element having a plurality of CPUs for use in a multiple processor system
CN112465129B (en) On-chip heterogeneous artificial intelligent processor
US6363453B1 (en) Parallel processor with redundancy of processor pairs
JPH04348451A (en) Parallel computer
GB2244356A (en) Inter-processor communication
CN111767995B (en) Operation method, device and related product
EP0240667B1 (en) Processor
JPH0642234B2 (en) Parallel processing system
CN113721989A (en) Multiprocessor parallel operation system and computer architecture
JPH061464B2 (en) Multi Microprocessor Module
Siegel et al. Parallel memory system for a partitionable SIMD/MIMD machine
CN117290279B (en) Shared tight coupling based general computing accelerator
Ghosal et al. SHAMP: an experimental shared memory multimicroprocessor system for performance evaluation of parallel algorithms
JP3081341B2 (en) Intelligent real-time controller, function distributed hierarchical real-time controller, homogeneous hierarchical real-time controller, composite real-time controller
JPH01177672A (en) System for processing digital signal
JPS63101957A (en) Processor
JP2965133B2 (en) Processor system
JP3039918B2 (en) Processor system
van Dijk et al. EMPS: The design of an architecture for a distributed homogeneous multiprocessor system
Gamez Hardware design of a multiprocessor system with five Motorola MC6809E microprocessors
KR20240041159A (en) System and method for cooperative working with cpu-gpu server
Wong et al. A microprocessor-based office image processing system
KR950008838B1 (en) A node computer structure of parallel processing computer for multimedia knowledge processing
JPS6143369A (en) Multi-processor system
JPS6259345B2 (en)

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term