JPH0731661B2 - Processor - Google Patents

Processor

Info

Publication number
JPH0731661B2
JPH0731661B2 JP61247436A JP24743686A JPH0731661B2 JP H0731661 B2 JPH0731661 B2 JP H0731661B2 JP 61247436 A JP61247436 A JP 61247436A JP 24743686 A JP24743686 A JP 24743686A JP H0731661 B2 JPH0731661 B2 JP H0731661B2
Authority
JP
Japan
Prior art keywords
processor
cpu
processing system
machine
cpus
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
JP61247436A
Other languages
Japanese (ja)
Other versions
JPS63101957A (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 JP61247436A priority Critical patent/JPH0731661B2/en
Priority to DE19873786583 priority patent/DE3786583T2/en
Priority to EP19870101841 priority patent/EP0240667B1/en
Publication of JPS63101957A publication Critical patent/JPS63101957A/en
Priority to US07/636,562 priority patent/US5297260A/en
Priority to US08/007,061 priority patent/US6379998B1/en
Priority to US08/182,695 priority patent/US5568617A/en
Publication of JPH0731661B2 publication Critical patent/JPH0731661B2/en
Priority to US08/449,722 priority patent/US5909052A/en
Priority to US08/454,568 priority patent/US5968150A/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L25/00Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof
    • H01L25/03Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes
    • H01L25/04Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers
    • H01L25/065Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers the devices being of a type provided for in group H01L27/00
    • H01L25/0652Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers the devices being of a type provided for in group H01L27/00 the devices being arranged next and on each other, i.e. mixed assemblies
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L25/00Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof
    • H01L25/50Multistep manufacturing processes of assemblies consisting of devices, each device being of a type provided for in group H01L27/00 or H01L29/00
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
    • H01L29/02Semiconductor bodies ; Multistep manufacturing processes therefor
    • H01L29/06Semiconductor bodies ; Multistep manufacturing processes therefor characterised by their shape; characterised by the shapes, relative sizes, or dispositions of the semiconductor regions ; characterised by the concentration or distribution of impurities within semiconductor regions
    • H01L29/0657Semiconductor bodies ; Multistep manufacturing processes therefor characterised by their shape; characterised by the shapes, relative sizes, or dispositions of the semiconductor regions ; characterised by the concentration or distribution of impurities within semiconductor regions characterised by the shape of the body
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2924/00Indexing scheme for arrangements or methods for connecting or disconnecting semiconductor or solid-state bodies as covered by H01L24/00
    • H01L2924/0001Technical content checked by a classifier
    • H01L2924/0002Not covered by any one of groups H01L24/00, H01L24/00 and H01L2224/00

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Power Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Manufacturing & Machinery (AREA)
  • Memory System (AREA)
  • Control By Computers (AREA)
  • Multi Processors (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、シングル・プロセツサまたはマルチ・プロセ
ツサを構成し、知的自動機械の制御に好適なプロセツサ
に関する。
The present invention relates to a processor that constitutes a single processor or a multi-processor and is suitable for controlling an intelligent automatic machine.

〔従来の技術〕[Conventional technology]

従来、マルチ・プロセツサ・システムは、例えば特開昭
59−208666号公報に示されるように、1つのCPUとメモ
リ、他のプロセツサエレメントとマスタ・スレーブ動作
する共通バス・スイツチ等から成る。このような単一CP
Uによるプロセツサ・エレメントで構成されるマルチ・
プロセツサ・システムでは、外乱の少ない専用タスク処
理に関する限り問題はないが、知能化された制御処理等
システムに要求される処理内容が高級化してくると、デ
ータベースやシステムステータスの管理,データベース
やセンサ情報に基づく知識処理系の構成,多重割込み処
理,マルチ・ジヨブ機能等バツク・グラウンド的な処理
系サポートが必須となり、リアルタイムマルチ・タスキ
ング,マルチ・ジヨブをサポートできる高級なオペレー
テイングシステム上で高級言語によりそれらの処理を記
述し、実行するのが一般的である。
Conventionally, multi-processor systems have been disclosed in
As shown in Japanese Patent Laid-Open No. 59-208666, it comprises one CPU and memory, another processor element and a common bus switch which operates as a master / slave. Single CP like this
U-based multi-processor element
In the processor system, there is no problem as far as dedicated task processing with less disturbance, but as the processing contents required for the system such as intelligent control processing become sophisticated, database and system status management, database and sensor information It is essential to support a background-based processing system such as a knowledge processing system configuration, multiple interrupt processing, and multi-job function, based on a high-level language on a high-performance operating system that can support real-time multi-tasking and multi-job. It is common to describe and execute those processes.

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

上述した従来のマルチ・プロセツサ・システムにおい
て、高速化のメインとなるリアルタイム制御処理もマル
チ・タスキングでサポートされるタスクの1つとして位
置付けられるため、タスク・スイツチ・オーバーヘツド
や並列処理スケジユールの乱れ等からきめ細かな密結合
並列処理を行えないのが現状である。そのため、スーパ
ーバイザ・システムとしてスーパーミニコン等により知
能処理系を並列処理による制御処理系から分離する方式
を採ることが多いが、並列処理系と知能処理系の通信が
疎になりがちである、各プロセツサのローカルな内部ス
テータスを管理するのにオペレーテイングシステムオー
バーヘツドを要する知能処理の分散化、システム管理の
分散化などの特性が生かされず、実質的な価格性能比の
低下をもたらす、制御処理系の処理性能の拡張に応じて
それに見合つた知能処理系の処理性能の拡張及び2系間
の通信スループツト向上が図り難い等の問題がある。し
たがつて、特に知能ロボツト等の自動機械のように制御
処理系の制御ループが高速化した場合、知能処理系と制
御処理系とで比較的大きなデータが高速に授受される必
要があり、ハードウエア構成上、上記の問題が大きなネ
ツクとなつて自動機械の高速化および高精度化を図るこ
とができないものであつた。
In the above-mentioned conventional multi-processor system, real-time control processing, which is the main factor for speeding up, is also positioned as one of the tasks supported by multi-tasking, so task switches, overheads, and disturbances in parallel processing schedules, etc. At present, it is impossible to perform fine-grained tightly coupled parallel processing. Therefore, a supervisor system often uses a system such as a super minicomputer to separate the intelligent processing system from the control processing system by parallel processing, but the communication between the parallel processing system and the intelligent processing system tends to be sparse. The operating system overhead is required to manage the local internal status of the control processing system, which does not take advantage of the characteristics such as decentralization of intelligent processing that requires overhead and decentralization of system management. There is a problem that it is difficult to increase the processing performance of the intelligent processing system and improve the communication throughput between the two systems according to the expansion of the processing performance. Therefore, especially when the control loop of the control processing system becomes faster, such as in an automatic machine such as an intelligent robot, it is necessary to transfer relatively large data between the intelligent processing system and the control processing system at high speed. Due to the wear structure, the above problem has been a serious problem, and it has been impossible to increase the speed and accuracy of the automatic machine.

本発明の目的は、知能ロボツト等の知的自動機械の知能
処理系と制御処理系とを効果的にインプリメントでき、
両系の処理をバランス良く効率的に処理できるプロセツ
サを提供することにある。
An object of the present invention is to effectively implement an intelligent processing system and a control processing system of an intelligent automatic machine such as an intelligent robot,
It is to provide a processor capable of efficiently processing both systems in a well-balanced manner.

〔問題点を解決するための手段〕[Means for solving problems]

本発明の上記の目的は、シングル・プロセツサ又はマル
チ・プロセツサを構成し機械を制御するためのプロセツ
サにおいて、そのプロセツサを構成するベース・プロセ
ツサ・エレメント内にそれぞれローカルメモリを有し、
前記機械の知能処理系と制御処理系との処理を分担する
2つのCPUと、それらのフツクのCPUからアクセスできる
デユアル・ポート・RAMと、2つのCPUが共に利用可能な
共通バスへいずれか一方のCPUを接続する共通バス・ス
イツチ回路とを備えることにより達成される。
The above-mentioned object of the present invention is a processor for controlling a machine that constitutes a single processor or a multi-processor, and has a local memory in each of the base processor elements constituting the processor,
One of two CPUs that share processing between the intelligent processing system and the control processing system of the machine, dual port RAM that can be accessed from those CPUs, and a common bus that can be used by both CPUs. And a common bus switch circuit for connecting the CPU of

〔作用〕[Action]

本発明のプロセツサはベース・プロセツサ・エレメント
に設けた2つのCPUを1つのプロセツサのごとく動作さ
せるハードウエア・アーキテクチユアを提供する。ま
た、制御処理系とデータベースやセンサ情報に基づく知
能処理系の高い独立性に注目して、メインCPUのメイン
処理系に制御処理系を割り当てて制御演算等を他のベー
ス・プロセツサ・エレメントとの密結合並列処理により
実行させ、割込み処理やシステム管理,知識処理等,バ
ツクグラウンド的要素の強い処理を知能処理系としてメ
インCPUのバツクグラウンド処理系及びバツクグラウン
ドCPUに割り当てて、メインCPUの制御処理系をバツクア
ツプする。それによつて、タスク・スイツチ・オーバー
ヘツドや並列処理を乱す割込み要因をできるだけ取り除
き、独立性の強い2つの処理系を高効率で並列に運用す
ることができるため、2台のCPUの処理性能を加算して
実質的にベース・プロセツサ・エレメントの処理性能を
2倍に向上させるとともに、ベース・プロセツサ・エレ
メントを複数結合するマルチ・プロセツサ・システムに
おいても、従来の2倍の総合処理性能と、ベース・プロ
セツサ・エレメントの増設に対応して制御処理系と知能
処理系のバランスのとれた処理性能拡張とを実現するこ
とができる。
The processor of the present invention provides a hardware architecture for operating two CPUs provided in the base processor element as if they were one processor. In addition, paying attention to the high independence of the control processing system and the intelligent processing system based on the database and sensor information, the control processing system is assigned to the main processing system of the main CPU, and the control calculation is performed with other base processor elements It is executed by tightly coupled parallel processing, and processing with strong background factors such as interrupt processing, system management, knowledge processing, etc. is assigned to the main CPU background processing system and background CPU as an intelligent processing system, and main CPU control processing is performed. Back up the system. As a result, task, switch, overhead, and interrupt factors that disturb the parallel processing can be removed as much as possible, and two highly independent processing systems can be operated in parallel with high efficiency. In addition to substantially improving the processing performance of the base processor element by a factor of two, even in a multi-processor system in which multiple base processor elements are combined, the overall processing performance of the conventional processor is twice as high as that of the base processor element. -It is possible to realize well-balanced processing performance expansion of the control processing system and the intelligent processing system in response to the expansion of the processor element.

〔実施例〕〔Example〕

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

第1図は本発明のプロセツサの一実施例の構成を示すも
ので、この図において、マルチ・プロセツサ・システム
を構成するベース・プロセツサ・エレメント(BPE)1
の内部構成は、2つのCPU15,16(CPUθとCPU1)から成
りこの2つのCPU15,16間専用の通信機構としてデユアル
ポートRAM(DPR)17と、他のベース・プロセツサ・エレ
メント(BPE)との通信を行うためにいずれかのCPUを2
つのCPU間の共通バスであるBPEローカルバス12へ接続す
るために、共通バス・スイツチ制御回路22によつて矛盾
なくスイツチ制御されるマルチ・プレクサ・バスバツフ
ア23とからなる共通バス・スイツチ24を設けてCPU15,16
間、およびベース・プロセツサ・エレメント(BPE)間
の通信処理を行う構造を採つている。また、2つのCPU1
5,16は、それぞれローカルメモリ18,20やローカルI/O1
9,21等を有し、通常は独立して動作可能になつている。
また、CPU間の通信をサポートするデユアル・ポート・R
AM(DPR)17の特徴として、互いのCPU15,16への通信用
割込みライン32,33を持つており、それを利用したオバ
ーヘツドの小さいCPU15,16間通信機能を挙げることがで
きる。ベース・プロセツサ・エレメント1のローカルバ
ス12上にはベース・プロセツサ・エレメントのローカル
メモリ6やローカルI/O7が接続されると共に、他のベー
ス・プロセツサ・エレメントとの共通のバスラインを構
成し、しかもシステム共有メモリ9やシステム共有I/O1
0が接続されるシステムバス14に接続するためのシステ
ムバス・スイツチ8が設けられている。このシステムバ
ス・スイツチ8はアービテーシヨンライン13によつてシ
ステムバス14へのアクセスに関するバス調停処理を行
い、矛盾なくシステムバス14上の共有資源を利用した
り、他のベース・プロセツサ・エレメントとの通信処理
を行つてベース・プロセツサ・エレメント間で並列処理
を実行できるようになつている。
FIG. 1 shows the configuration of an embodiment of the processor of the present invention. In this figure, a base processor element (BPE) 1 that constitutes a multi-processor system is shown.
The internal configuration of is composed of two CPUs 15 and 16 (CPU θ and CPU 1), and as a dedicated communication mechanism between these two CPUs 15 and 16, a dual port RAM (DPR) 17 and other base processor elements (BPE) 2 CPUs to communicate
In order to connect to the BPE local bus 12 which is a common bus between two CPUs, a common bus switch 24 consisting of a multi-plexer bus buffer 23 which is switch-controlled by the common bus switch control circuit 22 without inconsistency is provided. CPU15,16
And the base processor element (BPE). Also, two CPU1
5,16 are local memory 18,20 and local I / O1
It has 9,21 etc., and can usually operate independently.
Also, a dual port R that supports communication between CPUs
A feature of AM (DPR) 17 is that it has communication interrupt lines 32 and 33 to the CPUs 15 and 16 of each other, and a communication function between the CPUs 15 and 16 with a small overhead can be mentioned. On the local bus 12 of the base processor element 1, the local memory 6 and the local I / O7 of the base processor element are connected, and a common bus line with other base processor elements is formed. Moreover, system shared memory 9 and system shared I / O1
A system bus switch 8 for connecting to the system bus 14 to which 0 is connected is provided. The system bus switch 8 performs bus arbitration processing related to access to the system bus 14 through the arbitration line 13 so as to use the shared resources on the system bus 14 consistently and with other base processor elements. It is possible to perform parallel processing between the base processor elements by performing the communication processing of.

第5図は、デユアルポートRAM(DPR)17のハードウエア
ブロツク図を示すもので、この図においてデユアルポー
トRAM(DPR)17は2つのCPU15,16間で共有される共有メ
モリとみなすことができ、2つのCPU15,16のデユアルポ
ートRAM(DPR)へのアクセスを符号77〜80で示す各プロ
セツサのアクセス要求信号、アクセス許可信号を使つて
調停するアービタ60と、アービタ60からのイネーブル信
号75,76に従つてCPUからのバス64,65を内部バス66へス
イツチするバス・スイツチ61,62と、内部バス66のアド
レス、制御線をデコードしメモリ・イネーブル信号81や
割込み制御信号73,74を発生するデコーダ67と、これに
加えて各CPUへの割込み信号32,33をセツト,リセツトす
るためにデコーダ67の発生する割込み制御信号73,74に
よつて動作するフリツプ・フロツプ68,69等から成つて
いる。特徴的なデユアルポートRAM(DPR)のCPU間通信
用割込み機能は、デユアルポートRAM(DPR)の特定の番
地にCPUθへ割込みを発生するレジスタとCPU1へ割込み
を発生するレジスタをそれぞれ設けて、同時にそれらを
お互いのCPUへの命令レジスタと定義して、命令の授受
と割込みの発生とを同時に行う。CPU1がCPUθへ命令を
伝達する場合を例にとると、まずCPU1がCPUθに実行さ
せたい命令属性を自身のレジスタ等にセツトしてそれを
デユアルポートRAM(DPR)上のCPUθへの命令レジスタ
(割込み発生用レジスタ)にストアすると、デコーダ67
がCPUθへの命令レジスタがアクセスされたことをデユ
アルポートRAM(DPR)の内部バス67を監視しデコードす
ることによつて知りCPUθへの命令レジスタ・アクセス
信号パルスをアクセス信号73を使つて送出してフリツプ
・フロツプ68に信号70の値をラツトする。なお、初期
状態はRESET信号70によつてQがH1,がLOにセツトされ
ているため、上記の動作でQにLO,にHIが出力され、L
OアンテイブであるCPUθへの割込み信号30がCPUθに対
してアクテイブになる。
Figure 5 shows a hardware block diagram of the dual port RAM (DPR) 17, in which the dual port RAM (DPR) 17 can be regarded as a shared memory shared between the two CPUs 15 and 16. Arbiter 60 arbitrating using access request signal and access permission signal of each processor, which indicates access to the dual port RAM (DPR) of two CPUs 15 and 16 by reference numerals 77 to 80, and enable signal 75 from arbiter 60, According to 76, the bus switches 61 and 62 for switching the buses 64 and 65 from the CPU to the internal bus 66 and the memory enable signal 81 and the interrupt control signals 73 and 74 by decoding the address and control lines of the internal bus 66 are output. From the decoder 67 which is generated, and in addition to this, the flip-flops 68 and 69 which are operated by the interrupt control signals 73 and 74 which are generated by the decoder 67 in order to set and reset the interrupt signals 32 and 33 to each CPU. Is making . The CPU-to-CPU communication interrupt function of the characteristic dual port RAM (DPR) is equipped with a register to generate an interrupt to CPUθ and a register to generate an interrupt to CPU1 at a specific address of the dual port RAM (DPR). They are defined as instruction registers to each other's CPUs, and instructions are exchanged and interrupts are generated at the same time. Taking the case where CPU1 transmits an instruction to CPUθ as an example, first, CPU1 sets the instruction attribute that CPUθ wants CPUθ to execute in its own register etc., and then sets it to the instruction register for CPUθ on the dual port RAM (DPR) ( When stored in the interrupt generation register), the decoder 67
Knows that the instruction register to CPU θ has been accessed by monitoring and decoding the internal bus 67 of the dual port RAM (DPR) and sends an instruction register access signal pulse to CPU θ using the access signal 73. And latch the value of signal 70 onto flip-flop 68. In the initial state, since Q is set to H1 and LO is set to LO by the RESET signal 70, HI is output to LO and Q to Q by the above operation.
O Interrupt signal 30 to CPU θ, which is inactive, becomes active to CPU θ.

次に割込みを受付けたCPUθは、自身の割込みサービス
ルーチンの中で、実行すべき命令を得るために再びCPU
θへの命令レジスタを参照し、指示されている命令を設
け出すと、同様にしてデコーダ67はそのアクセス状況を
監視しておりCPUθへの命令レジスタ・アクセス信号パ
ルスをアクセス信号73を使いフリツプ・フロツプ68に対
して出力して、HIである70をラツチしQにHIを出力す
る。すなわち、CPUθへの割込み発生ライン32を非アク
テイブにする。上述のシーケンスにより一連の割込み発
生から受付けに至る動作とソフトウエア的な命令授受に
関する動作を同時にかつ最小のオーバーヘツドで実行す
ることができる。
Next, the CPU θ that received the interrupt returns to the CPU θ to obtain the instruction to be executed in its own interrupt service routine.
When the instruction register for θ is provided and the instructed instruction is provided, the decoder 67 also monitors the access status in the same manner, and the instruction register access signal pulse for CPU θ is flipped using the access signal 73. Output to flop 68, latch HI 70 and output HI to Q. That is, the interrupt generation line 32 to the CPU θ is made inactive. By the above-mentioned sequence, it is possible to simultaneously execute a series of operations from generation of an interrupt to acceptance and operations related to software instruction exchange with a minimum overhead.

第1図に戻り、ベース・プロセツサ・エレメント(BP
E)1内のCPUθ又はCPU1のバス28又は29のうちいずれか
一つを選択し、CPUθとCPU1の共有バスとみなせるBPEロ
ーカルバス12として出力するためのバス切換制御(バス
・スイツチ)を行う共通バス・スイツチ24は、前述した
ように共有バス・スイツチ制御回路22とそれによつて制
御されるマルチ・プレクス・バスバツフア23とから構成
される。そのバス・スイツチ制御は、CPUθをマスタ、C
PU1をスレーブとした場合に簡単には第4図に示すNOR回
路83,NAND回路84を備える共有バス・スイツチ・ロジツ
クにより行われる。その特徴的なバス・スイツチ制御シ
ーケンスを第2図のタイム・チヤートとともに配置す
る。まず2つのCPUのローカルバス28,29の獲得権は、常
にそれぞれのCPU側にあり他のバス上のデバイスから侵
害を受けることはない。(,)。CPUθの共有バス
(BPEローカルバス12)アクセス要求はに示すように
常にアクテイブになつており、CPU1の共有バスアクセス
要求はに示す常に必要に応じてアクテイブになる。す
なわち、CPU1が共有バスを獲得している時、以外は、常
にCPUθ側が共有バスを獲得としている。第2図に示す
例ではaでCPU1が共有バスアクセス要求87を出力し、
それを受けてCPUθがその時点で実行している命令処理
を終え共有バス権を放棄できる状態になつたら直ちに
aでホールト・アクノリツヂ82を出力して、aでCPU
θ共有バス・アクセス許可信号85(ゲート83でドライブ
される)を非アクテイブにするとともにaに示す様に
共有バスを放棄する。また、aでCPUθ自身はホール
ト状態にはいり、同時にaでCPU1の共有バス・アクセ
ス許可信号86(ゲート84によつてドライブされる)がア
クテイブになつてaに示すようにバス・スイツチ・バ
ツフア23のCPU1側が選択され、CPU1に共有バスの使用権
が移る。CPU1が共有バスの使用を終えて共有バスを放棄
しても良い時刻になつたら、CPU1共有バス・アクセス要
求87をbに示すように非アクテイブにする。すると直
ちにbでCPUθ共有バス・アクセス許可信号85がアク
テイブになつてバス・スイツチ・バツフア23のCPUθ側
が選択され、CPUθに共有バスの使用権が移つた後、
bでCPUθのホールト・アクノリツヂが解除され、b
でCPUθはホールト状態から実動状態へ移行する。及
びはCPUθ及びCPU1それぞれの実動状態を示してい
る。上述したようなマスタ(CPUθ),スレーブ(CPU
1)動作を行うため、CPUθはCPU1に共有バスの使用権が
移つている間(a−b)と、バススイツチを行いか
つバスの電気的、タイミング的特性は矛盾なく調整する
わずかの間(b−b)との合計時間ホールト状態と
なり実動しない。すなわち、実動権から言えば、CPU1の
方がマスク的に動作することになる。ホールト時間が長
くなりすぎてCPUθの動作がさまたげられないように、
1データ転送ごとに共有バスの使用権をCPUθへ移すモ
ードを設けている。しかし、後述するように、CPUθを
メインCPUとして、CPU1を知能処理等を行うバツク・グ
ラウンドCPUとしてCPUθを支援する形で使用し、かつマ
ルチ・プロセツサ構成を採つた場合にベース・プロセツ
サ・エレメント(BPU)単位で機能分散構造の分散知識
ベース形態を採用することによつて多くの必要データは
自身の近くから入手可能となり、大半のデータ通信はデ
ユアルポートRAM(DPR)を利用して行うことができる。
そのため、ベース・プロセツサ・エレメント(BPE)間
で知識情報の交信を行う率は、CPUθが密結合並列処理
のため他のベース・プロセツサ・エレメント(BPE)と
情報の交信を行う率に比べて十分小さく、本発明による
CPUθの処理能力損失はごくわずかであるとみなすこと
ができる。また、CPUθのバツク・アツプやシステム管
理を行うものとしてCPU1の役割を固定した場合は、CPU
θの動作制御権をCPU1に持たせる方が管理面等で有効で
あり、本発明の共有バス制御は、上述したようなローカ
ル分散処理に適したものであると言える。
Returning to Fig. 1, the bass processor element (BP
E) Select either one of CPUθ or CPU1 bus 28 or 29 in 1 and perform bus switching control (bus switch) to output as BPE local bus 12 that can be regarded as a shared bus between CPUθ and CPU1. The common bus switch 24 is composed of the shared bus switch control circuit 22 and the multiplex bus buffer 23 controlled by the shared bus switch control circuit 22 as described above. The bus switch control is based on CPU θ as the master and C
When PU1 is used as a slave, it is simply carried out by a shared bus switch logic having a NOR circuit 83 and a NAND circuit 84 shown in FIG. The characteristic bus switch control sequence is arranged with the time chart shown in FIG. First, the acquisition rights of the local buses 28 and 29 of the two CPUs are always on the respective CPUs side and are not infringed by devices on other buses. (,). The shared bus (BPE local bus 12) access request of the CPU θ is always active as shown in, and the shared bus access request of the CPU 1 is always active as shown in. That is, except when the CPU 1 acquires the shared bus, the CPU θ side always acquires the shared bus. In the example shown in FIG. 2, the CPU 1 outputs the shared bus access request 87 at a,
In response to this, when the CPU θ finishes the instruction processing being executed at that time and becomes ready to relinquish the shared bus right, immediately output the halt acknowledge 82 with a and the CPU with a
Deactivate the θ shared bus access grant signal 85 (driven by gate 83) and relinquish the shared bus as shown at a. Further, at a, the CPU θ itself enters the halt state, and at the same time, at a, the shared bus access permission signal 86 (driven by the gate 84) of the CPU 1 becomes active, and the bus switch buffer 23 is activated as shown in a. The CPU1 side of is selected, and the right to use the shared bus is transferred to CPU1. When it is time for the CPU1 to finish using the shared bus and abandon the shared bus, the CPU1 shared bus access request 87 is made inactive as shown in b. Immediately after that, the CPUθ shared bus access permission signal 85 becomes active at b, the CPUθ side of the bus switch buffer 23 is selected, and after the shared bus usage right is transferred to CPUθ,
In b, the CPU θ halt acknowledge is released, b
The CPU θ shifts from the halt state to the production state. And indicate the actual operating states of CPU θ and CPU 1, respectively. Master (CPU θ), slave (CPU
1) In order to perform the operation, the CPU θ transfers the shared bus to the CPU 1 (a-b) and for a short time (b) during which the bus switch is performed and the electrical and timing characteristics of the bus are adjusted without contradiction. -It becomes a halt condition for the total time with b) and does not operate. That is, in terms of the production right, the CPU 1 operates like a mask. To prevent the CPU θ from interfering with the halt time being too long,
A mode is provided in which the shared bus usage right is transferred to the CPU θ for each data transfer. However, as will be described later, when the CPU θ is used as a main CPU, the CPU 1 is used as a back ground CPU for performing intelligent processing, etc. in a form supporting the CPU θ, and a multi-processor configuration is adopted, a base processor element ( By adopting the distributed knowledge base form of function distribution structure on a BPU) basis, much necessary data can be obtained close to itself, and most data communication can be performed using dual port RAM (DPR). it can.
Therefore, the rate at which knowledge information is exchanged between base processor elements (BPE) is sufficient compared to the rate at which CPU θ exchanges information with other base processor elements (BPE) due to the tightly coupled parallel processing. Small, according to the invention
The processing power loss of CPU θ can be regarded as negligible. In addition, if the role of CPU1 is fixed to perform the CPU θ back-up and system management,
It is more effective in terms of management to give the CPU 1 the right to control the operation of θ, and it can be said that the shared bus control of the present invention is suitable for the local distributed processing as described above.

次に上述した本発明のプロセツサの一般動作を第2図に
より詳述する。
Next, the general operation of the processor of the present invention described above will be described in detail with reference to FIG.

第3図はCPUθがメインの制御演算を行い、CPU1が知識
ベース(分散型)やセンサ情報等に基づく知能処理やシ
ステム管理を行いCPUθをバツクグラウンドでバツクア
ツプするものとし、ローカル分散処理を行うと仮定して
いる。また、マルチ・プロセツサ構成を採つている場合
は、各ベース・プロセツサ・エレメント(BPE)は他の
ベース・プロセツサ・エレメント(BPE)とともにメイ
ンでは密結合並列処理、バツクグラウンドでは疎結合並
列処理を行うものと仮定している。35は時間軸に沿つた
CPU1の処理の流れを示しており、36,37,38は同様にCUP
θの処理の流れを示している。共有資源としては、ベー
ス・プロセツサ・エレメント(BPE)内のCPUθ,CPU1間
のローカルな共有メモリであるデユアルポートRAM(DP
R)と、マルチ・プロセツサ構成の場合すべてのベース
・プロセツサ・エレメント(BPE)からアクセス可能な
システムバス14上のシステム共有資源とがある。47,48,
54,59がCPUθとDPRとの通信を示し、46,53,56,58がCPU1
とDPRとの通信を示している。同様に、57がCPUθとシス
テム共有資源、51がCPU1とシステム共有資源との通信を
示しており、システム共有資源側から観測すればいずれ
も、ベース・プロセツサ・エレメント(BPE)からのア
クセスとみなされる。また、50がデユアルポートRAM(D
PR)上の割込み機能を利用したCPUθへの割込みを示
し、55が同様にCPU1への割込みを示している。49はCPU1
からCPUθへ共有バス・アクセス要求信号と、それに対
応するCPUθからの共有バス・アクセス許可信号とのハ
ンドシエークの状況を示しており、52は一旦CPU1によつ
て獲得された共有バスが放棄されその使用権が再びCPU
θへ移る様子を示している。88,89は他のBPEからのシス
テム共有資源へのアクセスを示している。90,91は知識
の一部分としてCPU1の処理中に外界情報であるローカル
なセンサ情報が取り込まれている様子を示しており、同
様に、92,93は他のBPEにも共有されている共有センサ情
報がCPUθ,CPU1に取り込まれている様子を示している。
CPUθ及びCPU1の処理内容については、CPUθはメイン処
理系で、他のベース・プロセツサ・エレメント(BPE)
のCPUθとともに知識機械システムの一部分、例えば人
間型知能ロボツトの腕の部分の制御を行うために必要な
数多くの制御演算タスクをできるだけ並列度が向上する
ように分担し合い高効率の密結合並列処理36b,38bを実
行しているものとし、演算プロセツサ等の補助プロセツ
サへ処理を依頼した後の空き時間や、他のベース・プロ
セツサ・エレメント(BPE)との同期処理時に生ずる空
き時間及び、他のベース・プロセツサ・エレメントBPE
やCPU1及び共有資源からの割込みによる処理依頼時にバ
ツクグラウンド処理系としてCPU1と共同で36a,38aに示
す知能処理、システム管理等を行い、CPU1の処理35と合
わせて知能処理系を構成する。このベース・プロセツサ
・エレメント(BPE)で実行される知能処理系は、腕部
分のうちのさらに一部分、例えば筋肉部分に関する情報
群がデータ・ベースとして保持されており、ローカル・
センサ情報もそれに関連の深いものが知覚情報として取
り込まれ、それらによつて構成されるローカルな機能分
散データベースを基本にして筋肉部分に関する知能処理
を実行し、メイン処理系で実行されている制御演算全体
をバツクアツプするものとしている。
In Fig. 3, CPUθ performs the main control calculation, CPU1 performs intelligence processing and system management based on knowledge base (distributed type) and sensor information, etc., and CPUθ backs up in the background, and local distributed processing is performed. I'm assuming. Also, when the multi-processor configuration is adopted, each base processor element (BPE) performs tightly coupled parallel processing in the main together with other base processor elements (BPE), and loosely coupled parallel processing in the background. I assume that. 35 along the time axis
It shows the processing flow of CPU1, 36, 37, 38 are CUP in the same way.
The processing flow of θ is shown. The shared resource is a dual port RAM (DP) which is a local shared memory between CPU θ and CPU1 in the base processor element (BPE).
R) and system shared resources on the system bus 14 that are accessible from all base processor elements (BPEs) in a multi-processor configuration. 47,48,
54,59 indicates communication between CPUθ and DPR, 46,53,56,58 indicates CPU1
And shows communication with DPR. Similarly, 57 indicates the communication between the CPU θ and the system shared resource, 51 indicates the communication between the CPU 1 and the system shared resource, and when observed from the system shared resource side, any of them is regarded as an access from the base processor element (BPE). Be done. Also, 50 is the dual port RAM (D
PR) shows an interrupt to the CPU θ using the interrupt function, and 55 similarly shows an interrupt to the CPU1. 49 for CPU1
Shows the state of handshake of the shared bus access request signal from the CPU to the CPU θ and the corresponding shared bus access permission signal from the CPU θ, 52 indicates the shared bus once acquired by the CPU 1 is abandoned and its use Right again CPU
It shows how to move to θ. 88 and 89 indicate access to system shared resources from other BPEs. 90 and 91 show that local sensor information, which is external information, is taken in during the processing of CPU1 as a part of the knowledge. Similarly, 92 and 93 are shared sensors that are also shared by other BPEs. It shows how the information is taken in by CPUθ, CPU1.
Regarding the processing contents of CPUθ and CPU1, CPUθ is the main processing system and other base processor elements (BPE).
Together with the CPU θ, a large number of control operation tasks necessary for controlling a part of the knowledge machine system, for example, the arm part of the humanoid intelligent robot are shared so as to improve the parallelism as much as possible, and highly efficient tightly coupled parallel processing. Assuming that 36b and 38b are being executed, the free time after requesting processing to an auxiliary processor such as an arithmetic processor, the free time that occurs during synchronization processing with other base processor elements (BPE), and other Bass processor element BPE
When the CPU 1 and the processing request by the interrupt from the shared resource are performed as the background processing system, the intelligent processing shown by 36a and 38a, system management, etc. are performed in cooperation with the CPU 1, and the intelligent processing system is configured together with the processing 35 of the CPU 1. The intelligent processing system executed by this base processor element (BPE) holds a group of information about a further part of the arm part, for example, a muscle part, as a data base.
Sensor information, which is deeply related to it, is also taken in as perceptual information, and based on a local functional distributed database constructed by them, intelligent processing related to muscle parts is executed, and control calculation executed in the main processing system. The whole is supposed to be backed up.

以上のような仮定に基づくシステムにおいて、第3図に
示すCPUθ及びCPU1の処理の流れを簡単に追つてみる。
まずCPUθ及びCPU1はそれぞれ第3図に示す処理36,35を
実行しており、CPU1は早急にCPUθとの通信の必要が生
じて39の時点でデユアルポートRAM(DPR)に通信メツセ
ージを書き込み、通信内容を命令としてCPUθへの命令
レジスタへ書き込む操作46を行う。それに対応して、CP
Uθへの割込み50が生じ、CPUθのバツクグラウンド処理
系でデユアルポートRAM(DPR)がアクセスされ必要な情
報の通信47が行われる。40の時点では、CPUθが、ハン
ドシエークする必要のないCPU間の共有データをたれ流
し的なデユアルポートRAM(DPR)へ書き込んだり、デユ
アルポートRAM(DPR)から読み出したりしていた。種々
のセンサ情報も、センサ側が主体となつて割込みにより
逐次処理されたり、必要に応じてプログラム中で参照さ
れたりして知識の一部として取り込まれる。次にCPU1が
他のベース・プロセツサ・エレメント(BPE)との交信
を行うためシステム共有資源との通信の必要が生じ、49
で共通バス(BPEローカルバス)12の使用権を獲得し、4
1の時点でシステム共有メモリとの通信51を行い、完了
したら52で共通バスの使用権を再びCPUθへ移してい
る。その間CPUθはホールト状態37に保たれ、52により
ホールト状態が解除されると処理36の続きである処理38
を続行する。以後、42の時点ではCPU1とデユアルポート
RAMと(DPR)でCPU間共有データのたれ流し通信が行わ
れ、43の時点ではCPUθからCPU1へ命令付きのハンドシ
エーク・データの通信が39と同様に実行されている。44
ではCPUθとシステム共有資源との通信57が行われてお
り、通信内容は、バツクグラウンド処理38aにおいては
知能処理に関する通信、メイン処理38bにおいては、制
御演算等に関する密結合並列処理データの通信が行わ
れ、その際CPU1の処理や動作への影響はまつたく無い。
45は、CPUθ及びCPU1のデユアルポートRAM(DPR)との
たれ流し通信がほぼ同時刻に行われている様子を示して
いるが、アービタ60による適切なアービテーシヨン・コ
ントロールによつてお互いの処理や動作に何の支親もな
く通信処理が実行されている。
In the system based on the above assumption, the processing flow of CPU θ and CPU 1 shown in FIG. 3 will be briefly followed.
First, the CPU θ and the CPU 1 are executing the processes 36 and 35 shown in FIG. 3, respectively, and the CPU 1 immediately needs communication with the CPU θ and at 39, writes a communication message to the dual port RAM (DPR), The operation 46 of writing the contents of communication as an instruction into the instruction register to the CPU θ is performed. Correspondingly, CP
An interrupt 50 to Uθ occurs, the dual port RAM (DPR) is accessed in the background processing system of the CPUθ, and necessary information communication 47 is performed. At the time of 40, CPU θ was writing shared data between CPUs that do not need to be handshake to a cascading dual port RAM (DPR) or reading from the dual port RAM (DPR). Various sensor information is also taken in as a part of the knowledge by the sensor side being the subject and being sequentially processed by an interrupt, or being referred to in the program as necessary. Next, CPU1 communicates with another base processor element (BPE), which requires communication with system shared resources.
Acquired the right to use 12 common buses (BPE local buses) at 4
At the time of 1, communication 51 with the system shared memory is performed, and when completed, at 52, the right to use the common bus is transferred to the CPU θ again. During that time, the CPU θ is kept in the halt state 37, and when the halt state is released by 52, the process 38 which is a continuation of the process 36.
To continue. After that, at 42, CPU 1 and dual port
The shared data is exchanged between the CPUs by the RAM and (DPR), and at the time of 43, the communication of the handshake data with the instruction from the CPU θ to the CPU 1 is executed similarly to 39. 44
Communication between the CPU θ and the system shared resource is performed, and the communication content includes communication related to intelligent processing in the background processing 38a and communication of tightly coupled parallel processing data related to control calculation in the main processing 38b. In that case, the influence on the processing and operation of the CPU1 is not a problem.
Reference numeral 45 shows that the CPU θ and CPU1 dual-port RAM (DPR) are running at the same time, and the arbiter 60 performs appropriate arbitration control to enable mutual processing and operation. Communication processing is being executed without any support.

以上の様な、ローカルな分散データベースによる知能処
理系及びそれにバツクアツプされた制御処理系を本発明
のプロセツサにより実現する場合、大半の知能処理はデ
ユアルポートRAM(DPR)を介してベース・プロセツサ・
エレメント(BPE)内のCPU間で実行すれば良く、たまに
その処理結果や他のベース・プロセツサ・エレメント
(BPE)による知能処理結果をやりとりするためにシス
テム共有資源をアクセスすれば良いため、システム内の
通信ノード間でごく自然に最良の通信スループツトを実
現できるとともに、それによつて制御処理系と知能処理
系がほぼ完全に独立して並列動作できるため処理性能を
確実に2倍化することが可能となる。また、BPEを増設
することで、知能処理系の処理性能と、制御処理系の処
理性能が比例して増加し、常に両者のバランスのとれた
処理性能を提供することができる。
When the processor of the present invention realizes the intelligent processing system based on the local distributed database and the control processing system backed up to the above, most of the intelligent processing is performed by the base processor via the dual port RAM (DPR).
It is only necessary to execute it between the CPUs in the element (BPE), and occasionally to access the system shared resource in order to exchange the processing result and the intelligent processing result by other base processor element (BPE). It is possible to realize the best communication throughput between the communication nodes of the above, and the control processing system and the intelligent processing system can operate in parallel almost completely independently, so that the processing performance can be surely doubled. Becomes Further, by adding BPE, the processing performance of the intelligent processing system and the processing performance of the control processing system increase in proportion to each other, and it is possible to always provide the processing performance in which both are balanced.

本発明の実施例によれば、マルチ・プロセツサ・システ
ム又は単一プロセツサ・システムの基本となるプロセツ
サ・エレメント(ベース・プロセツサ・エレメント:BP
E)を2つのCPUで構成し、それらの割込み機能付のデユ
アルポートRAM(DPR)と、マスタ・スレーブ動作により
外部から観測した場合、単一CPUのごとく見える双方のC
PUから共通に利用可能な共通バスとで接続し、独立性の
高いメイン処理系とバツクグラウンド処理系とを分離し
て2つのCPUにそれぞれ受け持たせ、2つのCPU間でのロ
ーカルな情報交換はデユアルポートRAM(DPR)を介して
行い、マルチ・プロセツサ構成の場合の他のベース・プ
ロセツサ・エレメント(BPE)との通信は共通バス(BPE
ローカルバス)を通してシステムバス上のシステム共有
資源を介して行うことによりBPEの性能を実質的に2倍
化している。また、本発明のプロセツサを使用してマル
チ・プロセツサ・システムを構成する場合、バツクグラ
ウンド処理系のデータベースを機能分散化して各BPE単
位で持つことにより、バツクグラウンド処理系において
も大半がプロセツサ内のローカルな通信でクローズし他
のプロセツサと頻繁に通信を行う必要がなく、それによ
り通信ノード間での通信スループツトが最適化されるた
めメインで実行されている密結合並列処理に大きな影響
を与えることなくメイン処理系及びバツクグラウンド処
理系の双方でごく自然に高効率な並列処理を行うことが
できる。さらに、本発明のプロセツサの増設により、常
にメイン処理及びバツクグラウンド処理系双方でバラン
スのとれた処理能力向上が図れる。
According to an embodiment of the present invention, a processor element (base processor element: BP) that is the basis of a multi-processor system or a single processor system.
E) is composed of two CPUs, dual port RAM (DPR) with interrupt function for them, and both Cs that look like a single CPU when observed from the outside by the master / slave operation.
Connected to a common bus that can be commonly used from PU, separate the main processing system and background processing system with high independence, and let each two CPUs take charge of each other, exchanging local information between the two CPUs. Communication via the dual port RAM (DPR), and communication with other base processor elements (BPE) in the case of a multi-processor configuration is via a common bus (BPE).
The performance of the BPE is substantially doubled by performing the system shared resource on the system bus through the local bus). Further, in the case of configuring a multi-processor system using the processor of the present invention, by distributing the functions of the database of the background processing system in each BPE unit, most of the background processing system also has a processor inside the processor. It does not have to be closed by local communication and frequently communicate with other processors, which optimizes the communication throughput between communication nodes, which has a great impact on the tightly coupled parallel processing executed in the main. Instead, both the main processing system and the background processing system can naturally perform highly efficient parallel processing. Further, by adding the processor of the present invention, it is possible to always improve the processing capacity in a balanced manner in both the main processing and the background processing system.

次に、本発明の基本プロセツサ・エレメント(BPE)の
マルチ・プロセツサシステムへの拡張応用と、そのシス
テムを利用した知能ロボツト・システムの構成例を第6
図により説明する。
Next, an extended application of the basic processor element (BPE) of the present invention to a multi-processor system and a configuration example of an intelligent robot system using the system will be described.
It will be described with reference to the drawings.

図中符号1にて代表するのは本発明のベース・プロセツ
サ・エレメント(BPE)である。各ベース・プロセツサ
・エレメント1はベース・プロセツサ・エレメント・ロ
ーカルバス12によつて共通バス14a〜14dに接続してい
る。99a.99dは、それぞれ共通バス14a〜14dに対応する
バスアービタ、13a〜13dは対応するアービトレーシヨン
ラインである。共通バス14a〜14cは、それぞれ対応する
共有メモリシステム9a〜9c用の共有メモリ専用バスを構
成する。14dは共有I/Oをサポートする共有I/Oバスであ
る。これら4つの共通バスは、通常1に示すBPE内に制
御処理処理系を担当するCPUθ(第1図の15)にアクセ
ス権があり、必要に応じて知能処理系を担当するCPU1
(第1図の16)が使用する。
A base processor element (BPE) of the present invention is represented by reference numeral 1 in the drawing. Each base processor element 1 is connected to a common bus 14a-14d by a base processor element local bus 12. 99a.99d are bus arbiters corresponding to the common buses 14a-14d, and 13a-13d are corresponding arbitration lines. The common buses 14a to 14c form a shared memory dedicated bus for the corresponding shared memory systems 9a to 9c, respectively. 14d is a shared I / O bus that supports shared I / O. These four common buses usually have access rights to the CPU θ (15 in FIG. 1) in charge of the control processing system in the BPE shown in 1 and the CPU 1 in charge of the intelligent processing system as necessary.
It is used by (16 in Fig. 1).

したがつて、共通バス14a〜14dは制御処理系の専用バス
と考えて良い。各ベース・プロセツサ・エレメントのCP
Uθはこれらの共通バスを通信に使用して必要な制御演
算を密結合並列処理する。101は並列処理を制御するた
めのハードウエア機構(コミユニケーシヨン・コントロ
ーラ)、103はベース・プロセツサ・エレメント間の通
信用割込みを制御するハードウエア機構(コミユニケー
シヨン・インターラプト・コントローラ)である。ベー
ス・プロセツサ・エレメントには知能処理系側の専用共
通バスとしてシステムバス100をサポートするためのバ
ス・スイツチ回路102が知能処理系を担当するCPU1のロ
ーカルバス設けられている。そこには、共有データベー
ス107や様々な共有センサ・インターフエースが置かれ
ている。また、制御処理系を担当するCPU1のローカルバ
スには、高速な数値演算処理を行うため浮動小数点演算
ユニツト(FPU)104を設けている。本例のマルチ・プロ
セツサシステムは、全部で14台のベース・プロセツサ・
エレメントから構成されるが、さらにこのシステムをモ
ジユール化し、モジユール同志で多数結合可能な様に、
内部共通バス14a〜14d等のハードウエア通信機構直結型
の外部拡張チヤンネル105及び、ソフトウエア介入型の
外部拡張チヤンネル106を設けている。外部拡張チヤン
ネル105(ハードウエア直接型)を用いれば、外部のモ
ジユールから直接内部の共有メモリ9a〜9c等のデータを
高速に参照できるし、外部拡張チヤンネル106(ソフト
ウエア介入型)を用いれば、あるプロトユルに基づく高
度で柔軟な通信を他のモジユールと行うことができる。
Therefore, the common buses 14a to 14d can be considered as dedicated buses for the control processing system. CP for each bass processor element
Uθ uses these common buses for communication and performs tightly coupled parallel processing of necessary control operations. 101 is a hardware mechanism for controlling parallel processing (communication controller), and 103 is a hardware mechanism (communications interrupt controller) for controlling interrupts for communication between base processor elements. . The base processor element is provided with a bus switch circuit 102 for supporting the system bus 100 as a dedicated common bus on the side of the intelligent processing system, and a local bus of the CPU 1 in charge of the intelligent processing system. The shared database 107 and various shared sensor interfaces are placed there. Further, a floating point unit (FPU) 104 is provided on the local bus of the CPU 1 which is in charge of the control processing system in order to perform high-speed numerical operation processing. The multi-processor system of this example has a total of 14 base processors.
It is composed of elements, but this system is further modularized, so that multiple modules can be combined with each other,
An external expansion channel 105 directly connected to a hardware communication mechanism such as the internal common buses 14a to 14d and a software intervention type external expansion channel 106 are provided. If the external expansion channel 105 (hardware direct type) is used, the data of the internal shared memories 9a to 9c can be directly referred to from an external module at high speed, and if the external expansion channel 106 (software intervention type) is used, Advanced and flexible communication based on one protocol can be performed with other modules.

このように構成したベース・プロセツサ・エレメントを
用いれば、以上に示したように、制御処理系と知能処理
系を効果的にサポートできるマルチ・プロセツサシステ
ムを構築できる。第6図には制御対象としてロボツトシ
ステムを結合している。次に、これについて説明する。
By using the base processor element configured in this way, as described above, it is possible to construct a multi-processor system capable of effectively supporting the control processing system and the intelligent processing system. In FIG. 6, a robot system is connected as a control target. Next, this will be described.

ロボツトシステムは、ロボツトメカニズム114a,114b
と、そのサポートユニツト111(パワーアンプ等を含
む)及び感覚器としてのロボツトメカニズム114a,114b
に設けたセンサ113a,113bおよびテレビカメラ等のセン
サ112等とから成る。本例のマルチ・プロセツサシステ
ムは制御処理系側で高速な座標変換処理、動力学演算処
理等を行い、結果として位置,速度,加速度等の必要な
指令を、共通I/Oバス上のサーボインターフエース110を
介してサーボユニツト111伝達する。また、逆にサーボ
ユニツト111からは、エンコーダ,タコジエネ,加速度
検出器,モーター電流検出器等のセンサ5によりロボツ
トの現在の動作状態そのものを検出し、フイードバツク
データとしてサーボインターフエース110を介してマル
チ・プロセツサ・システムに伝達される。マルチ・プロ
セツサ・システムの制御処理系は、それらのフイードバ
ツクデータと知能処理系から送られてくる指令やデータ
を利用してサーボユニツト111への次の指令値を計算す
る。また、知能処理系は、2台のロボツトメカニズム11
4a,114b共有のセンサ112は、共有センサインターフエー
ス108を介してシステムバス100にデータを送り、ロボツ
トメカニズム114a,114bそれぞれに固有のセンサ113a,11
3bは、ローカルセンサインターフエース109a,109bを介
して、各機能を担当するベース・プロセツサ・エレメン
トそれぞれの知能処理系の直接データを送る。知能処理
系は、これらセンサ112,113a,113bからの情報及び共有
データベース107を基本にして、センシング,推論,学
習及ぞそれらの結果の必要な制御処理系への指令等の知
能処理を行い、制御処理系をバツクアツプする。
The robot system has robot mechanisms 114a and 114b.
And its support unit 111 (including power amplifier, etc.) and robot mechanism 114a, 114b as a sensory organ.
It is composed of sensors 113a and 113b provided in the sensor and a sensor 112 such as a television camera. The multi-processor system of this example performs high-speed coordinate conversion processing, dynamics calculation processing, etc. on the control processing side, and as a result, the necessary commands such as position, speed, and acceleration are sent to the servo on the common I / O bus. The servo unit 111 is transmitted via the interface 110. On the contrary, from the servo unit 111, the current operating state itself of the robot is detected by the sensor 5 such as an encoder, a tachogenerator, an acceleration detector, a motor current detector, etc., and is fed as feedback data via the servo interface 110. Transmitted to multi-processor system. The control processing system of the multi-processor system calculates the next command value to the servo unit 111 by utilizing the feedback data and the commands and data sent from the intelligent processing system. In addition, the intelligent processing system uses two robot mechanisms 11
4a, 114b shared sensor 112 sends data to system bus 100 via shared sensor interface 108, and sensors 113a, 11b specific to robot mechanisms 114a, 114b respectively.
The 3b sends the direct data of the intelligent processing system of each base processor element in charge of each function via the local sensor interfaces 109a and 109b. Based on the information from these sensors 112, 113a, 113b and the shared database 107, the intelligent processing system performs intelligent processing such as sensing, inference, learning, and the necessary processing of these results to the control processing system, such as commands. Backup the processing system.

以上の様に、本発明の実施例によれば、高度な知能処理
の支援下で、制御処理系が高度な運動制御演算を行うこ
とにより、センシング,推論,学習等の機能を持ち、か
つ高速,高精度な運動を行う知能ロボツト等の知的自動
機械制御システムを構築できる。
As described above, according to the embodiments of the present invention, the control processing system performs advanced motion control calculation under the support of advanced intelligence processing, and thus has functions such as sensing, inference, and learning, and high speed. , It is possible to build an intelligent automatic machine control system such as intelligent robot that performs highly accurate motion.

さらに本発明の実施例によれば、知能ロボツト等の知的
自動機械制御用の制御装置を構成するベース・プロセツ
サ・エレメントに、制御処理系と知能処理系を分けてイ
ンプリメントできるため両系の処理能力及び機能を単一
プロセツサ環境あるいはマルチ・プロセツサ環境でバラ
ンス良く拡張することができる。また、ベース・プロセ
ツサ・エレメント内に、知能処理系と制御処理系との間
の局所的な密結合通信を専用に行うデユアルポートRAM
を設けて、2つの系をそれぞれ担当するCPU間を直結す
ることによりマルチ・プロセツサ環境での制御処理系の
通信を乱し、重大なバスネツクを引き起こす可能性を非
常に小さくできるため、各系間,各機能間の通信スルー
プツトを最適化できる。また、基本プロセツサ・エレメ
ント内の2つのCPUからアクセス可能な共通バスをサポ
ートする為のマスター・スレーブ型のバス・スイツチ・
インターフエース(マルチ・プレクサ・バスバツフア及
び共通バス・スイツチ制御回路)を設け、デユアルCPU
で構成される基本プロセツサを単一プロセツサ化するこ
とにより、基本プロセツサ同志を容易に複数バス結合で
きるため、効率的かつ統一的に処理能力及び機能の拡張
が図れる。
Further, according to the embodiment of the present invention, a control processing system and an intelligent processing system can be separately implemented in a base processor element which constitutes a control device for intelligent automatic machine control such as an intelligent robot, so that processing of both systems can be performed. Capabilities and functions can be expanded in a balanced manner in a single processor environment or a multi-processor environment. In addition, a dual-port RAM dedicated to the local tightly coupled communication between the intelligent processing system and the control processing system in the base processor element.
It is possible to minimize the possibility of disturbing the communication of the control processing system in a multi-processor environment and causing a serious bus network by directly connecting the CPUs in charge of the two systems to each other. , The communication throughput between each function can be optimized. In addition, a master / slave type bus switch to support a common bus that can be accessed from two CPUs in the basic processor element.
Interface (multi-plexer / bus buffer and common bus / switch control circuit) is provided and dual CPU
By making the basic processor composed of a single processor into a single processor, it is possible to easily connect a plurality of basic processors to each other by a plurality of buses, so that the processing capability and the function can be efficiently and uniformly expanded.

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

本発明によれば、センサ等の感覚器や知識ベースに基づ
く知能処理系の支援下で、制御処理系が高速制御,動力
学制御等の高度かつ高負荷な運動制御演算処理を行うこ
とによりセンシング推論,学習等の機能を持ち、かつ高
速,高精度な運動を行う知能ロボツト等の知的自動機械
の制御を実現することができる。
According to the present invention, sensing is performed by the control processing system performing advanced and high-load motion control calculation processing such as high-speed control and dynamics control with the support of a sensory device such as a sensor or an intelligent processing system based on a knowledge base. It is possible to realize control of an intelligent automatic machine such as an intelligent robot having functions such as inference and learning and performing high-speed and high-precision motion.

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

第1図は本発明のプロセツサにおけるベース・プロセツ
サ・エレメントの内部構成とそれによるマルチ・プロセ
ツサ・システムの一部分を示す図、第2図は本発明を構
成するベース・プロセツサ・エレメント内の2つのCPU
間での共通バス(BPEローカルバス)スイツチ・シーケ
ンスを示す図、第3図はベース・プロセツサ・エレメン
ト内の2CPU間での処理の流れを示す図、第4図は本発明
を構成する共有バス・スイツチの基本ロジツク図、第5
図は本発明を構成するデユアル・ポートRAMのロジツク
・ブロツク図、第6図は本発明のプロセツサの他の実施
例を知的自動機械に適用した例を示す図、第7図は第6
図に示す例におけるプロセツサの構成を示す図である。 1……ベース、・プロセツサ・エレメント(BPE)、8
……システム・バス・スイツチ、14……システム・バ
ス、15……CPUθ(マスタ)16……CPU1(スレーブ)、1
7……DPRロジツク、24……共通バス・スイツチ、32……
CPUθへの命令割込みライン、33……CPU1への命令割込
みライン、73……CPUθへの割込み発生用フリツプ・フ
ロツプ、74……CPU1への割込み発生用フリツプ・フロツ
プ、85……CPUθ共通バスアクセス許可信号、86……CPU
1共通バスアクセス許可信号、99……アービタ、100……
知能処理系共通バスシステム、107……共有知識ベー
ス、108……共有センサインターフエス、109……ローカ
ルセンサ・インターフエース、110……サーボインター
フエース、111……サーボユニツト、112……共有セン
サ、113……ローカルセンサ、114a,114b……ロボツトメ
カニズム。
FIG. 1 is a diagram showing an internal structure of a base processor element in a processor of the present invention and a part of a multi-processor system based on it, and FIG. 2 is two CPUs in the base processor element constituting the present invention.
Fig. 3 shows a common bus (BPE local bus) switch sequence between two CPUs, Fig. 3 shows a flow of processing between two CPUs in the base processor element, and Fig. 4 shows a shared bus constituting the present invention.・ Basic logic diagram of switch, No.5
FIG. 6 is a logic block diagram of a dual port RAM which constitutes the present invention, FIG. 6 is a diagram showing an example in which another embodiment of the processor of the present invention is applied to an intelligent automatic machine, and FIG.
It is a figure which shows the structure of the processor in the example shown in a figure. 1 ... Bass, Processor Element (BPE), 8
…… System bus switch, 14 …… System bus, 15 …… CPU θ (master) 16 …… CPU1 (slave), 1
7 …… DPR logic, 24 …… Common bus switch, 32 ……
CPUθ instruction interrupt line, 33 …… CPU1 instruction interrupt line, 73 …… CPUθ interrupt generation flip-flop, 74 …… CPU1 interrupt generation flip-flop, 85 …… CPUθ common bus access Permission signal, 86 …… CPU
1 Common bus access permission signal, 99 …… Arbiter, 100 ……
Intelligent processing common bus system, 107 …… shared knowledge base, 108 …… shared sensor interface, 109 …… local sensor interface, 110 …… servo interface, 111 …… servo unit, 112 …… shared sensor, 113 …… Local sensor, 114a, 114b …… Robot mechanism.

Claims (17)

【特許請求の範囲】[Claims] 【請求項1】シングル・プロセッサを構成し、機械を制
御するためのプロセッサにおいて、 そのプロセッサを構成するベース・プロセッサ・エレメ
ントに、前記機械の1つの制御系ともう1つの制御系と
の処理をそれぞれ分担する2つのCPUと、 前記2つのCPUからそれぞれアクセスできるメモリ手段
と、 前記2つのCPUのいずれか一方のCPUを前記機械の前記各
制御系に接続する共通バスにそれぞれ接続するスイツチ
手段とを備えたことを特徴とするプロセッサ。
1. A processor for constituting a single processor and controlling a machine, wherein a base processor element constituting the processor is provided with processing of one control system and another control system of the machine. Two CPUs that share each of them, a memory unit that can be respectively accessed from the two CPUs, and a switch unit that connects one of the two CPUs to a common bus that connects to each control system of the machine. A processor characterized by having.
【請求項2】前記第1のCPU,第2のCPU,メモリ手段,ス
イッチ手段を集積化して単一プロセッサ化したことを特
徴とする特許請求の範囲第1項記載のプロセッサ。
2. The processor according to claim 1, wherein the first CPU, the second CPU, the memory means and the switch means are integrated into a single processor.
【請求項3】前記ベース・プロセッサ・エレメントを複
数備え、モジュール化したことを特徴とする特許請求の
範囲第1項記載のプロセッサ。
3. The processor according to claim 1, further comprising a plurality of the base processor elements, which are modularized.
【請求項4】シングル・プロセッサを構成し、機械を制
御するためのプロセッサにおいて、 そのプロセッサを構成するベース・プロセッサ・エレメ
ントに、 前記機械の知能処理系と制御処理系との処理をそれぞれ
分担する2つのCPUと、 前記2つのCPUからそれぞれアクセスできるメモリ手段
と、 前記2つのCPUのいずれか一方のCPUを前記機械の知能処
理系に接続する共通バスと制御処理系に接続する共通バ
スとにそれぞれ接続するスイッチ手段とを備えたことを
特徴とするプロセッサ。
4. A processor for constituting a single processor and controlling a machine, wherein a base processor element constituting the processor shares the processing with an intelligent processing system and a control processing system of the machine. Two CPUs, a memory means that can be respectively accessed from the two CPUs, and a common bus that connects one of the two CPUs to the intelligent processing system of the machine and a common bus that connects to the control processing system. A processor comprising switch means for connecting to each other.
【請求項5】前記スイッチ手段は、前記2つのCPUのい
ずれか一方のCPUを前記共通バスのいずれか一方に常接
することを特徴とする特許請求の範囲第4項記載のプロ
セッサ。
5. The processor according to claim 4, wherein the switch means always connects one of the two CPUs to one of the common buses.
【請求項6】前記2つのCPUのいずれか一方のCPUは他方
のCPUの動作を監視する手段を備えたことを特徴とする
特許請求の範囲第4項記載のプロセッサ。
6. The processor according to claim 4, wherein one of the two CPUs has means for monitoring the operation of the other CPU.
【請求項7】前記2つのCPU,メモリ手段,スイッチ手段
を集積化して1チップ化したことを特徴とする特許請求
の範囲第4項記載のプロセッサ。
7. A processor according to claim 4, wherein said two CPUs, memory means and switch means are integrated into one chip.
【請求項8】マルチプロセッサを構成し、機械を制御す
るためのプロセッサにおいて、 そのプロセッサを構成するベース・プロセッサ・エレメ
ントに、 前記機械の知能処理系の処理を担当する第1のCPUと、 前記機械の制御処理系の処理を担当する第2のCPUと、 前記第1のCPUおよび第2のCPUからアクセスできるメモ
リ手段と、 前記第1のCPUを前記機械の知能処理系に接続する共通
バスに接続させる第1のスイッチ手段と、 前記第1または第2のCPUのいずれか一方を前記機械の
制御処理系に接続する共通バスに接続させる第2のスイ
ッチ手段とを備えたことを特徴とするプロセッサ。
8. A processor for constituting a multiprocessor and controlling a machine, wherein a base processor element constituting the processor has a first CPU in charge of processing of an intelligent processing system of the machine, A second CPU in charge of the processing of the control processing system of the machine, a memory means accessible from the first CPU and the second CPU, and a common bus connecting the first CPU to the intelligent processing system of the machine. And a second switch means for connecting one of the first and second CPUs to a common bus for connecting to the control processing system of the machine. The processor to do.
【請求項9】前記第2のスイッチ手段は第2のCPUを前
記機械の制御処理系に接続する共通バスに常接させるこ
とを特徴とする特許請求の範囲第8項記載のプロセッ
サ。
9. The processor according to claim 8, wherein the second switch means causes the second CPU to be permanently connected to a common bus connected to the control processing system of the machine.
【請求項10】前記第1のCPUは第2のCPUの動作を監視
する手段を備えたことを特徴とする特許請求の範囲第8
項記載のプロセッサ。
10. A method according to claim 8, wherein the first CPU includes means for monitoring the operation of the second CPU.
The processor according to the paragraph.
【請求項11】前記第1のCPU,第2のCPU,メモリ手段,
スイッチ手段を集積化して単一プロセッサ化したことを
特徴とする特許請求の範囲第8項記載のプロセッサ。
11. The first CPU, second CPU, memory means,
9. The processor according to claim 8, wherein the switch means is integrated into a single processor.
【請求項12】前記ベース・プロセッサ・エレメントを
複数備え、モジュール化したことを特徴とする特許請求
の範囲第8項記載のプロセッサ。
12. The processor according to claim 8, comprising a plurality of the base processor elements, which are modularized.
【請求項13】マルチプロセッサを構成し、機械を制御
するためのプロセッサにおいて、 そのプロセッサを構成するベース・プロセッサ・エレメ
ントに、 前記機械の知能処理系の処理を担当する第1のCPUと、 前記機械の制御処理系の処理を担当する第2のCPUと、 前記第1のCPUおよび第2のCPUからアクセスできるメモ
リ手段と、 前記第1又は第2のCPUを第1の共通バスに接続するス
イッチ手段とを設けて、プロセッサを構成し、 前記複数のベース・プロセッサ・エレメントの第1のCP
Uを前記機械の知能処理系の第2の共通バスに接続し、 前記複数のプロセッサの第2のCPUを前記第1の共通バ
スを介して前記機械の制御処理系の第3の共通バスに接
続したことを特徴とするプロセッサ。
13. A processor for constituting a multiprocessor and controlling a machine, wherein a base processor element constituting the processor has a first CPU in charge of processing of an intelligent processing system of the machine, A second CPU in charge of processing of a control processing system of a machine, a memory means accessible from the first CPU and the second CPU, and the first or second CPU connected to a first common bus And a switch means to form a processor, the first CP of the plurality of base processor elements
U is connected to the second common bus of the intelligent processing system of the machine, and the second CPU of the plurality of processors is connected to the third common bus of the control processing system of the machine via the first common bus. A processor characterized by being connected.
【請求項14】前記スイッチ手段は第2のCPUを前記機
械の制御処理系の共通バスに常接するスイッチ回路を備
えたことを特徴とする特許請求の範囲第13項記載のプロ
セッサ。
14. The processor according to claim 13, wherein the switch means comprises a switch circuit for permanently connecting the second CPU to a common bus of a control processing system of the machine.
【請求項15】前記第1のCPUは第2のCPUの動作を監視
する手段を備えたことを特徴とする特許請求の範囲第13
項記載のプロセッサ。
15. The method according to claim 13, wherein the first CPU includes means for monitoring the operation of the second CPU.
The processor according to the paragraph.
【請求項16】前記第1のCPU,第2のCPU,メモリ手段,
スイッチ手段を集積化して単一プロセッサ化したことを
特徴とする特許請求の範囲第13項記載のプロセッサ。
16. The first CPU, second CPU, memory means,
14. The processor according to claim 13, wherein the switch means is integrated into a single processor.
【請求項17】前記ベース・プロセッサ・エレメントを
複数備え、モジュール化したことを特徴とする特許請求
の範囲第13項記載のプロセッサ。
17. The processor according to claim 13, comprising a plurality of the base processor elements, which are modularized.
JP61247436A 1986-03-12 1986-10-20 Processor Expired - Lifetime JPH0731661B2 (en)

Priority Applications (8)

Application Number Priority Date Filing Date Title
JP61247436A JPH0731661B2 (en) 1986-10-20 1986-10-20 Processor
DE19873786583 DE3786583T2 (en) 1986-03-12 1987-02-10 Processor.
EP19870101841 EP0240667B1 (en) 1986-03-12 1987-02-10 Processor
US07/636,562 US5297260A (en) 1986-03-12 1991-01-07 Processor having a plurality of CPUS with one CPU being normally connected to common bus
US08/007,061 US6379998B1 (en) 1986-03-12 1993-01-21 Semiconductor device and method for fabricating the same
US08/182,695 US5568617A (en) 1986-03-12 1994-01-13 Processor element having a plurality of processors which communicate with each other and selectively use a common bus
US08/449,722 US5909052A (en) 1986-03-12 1995-05-24 Semiconductor device having plural chips with the sides of the chips in face-to-face contact with each other in the same crystal plane
US08/454,568 US5968150A (en) 1986-03-12 1995-05-30 Processor element having a plurality of CPUs for use in a multiple processor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61247436A JPH0731661B2 (en) 1986-10-20 1986-10-20 Processor

Publications (2)

Publication Number Publication Date
JPS63101957A JPS63101957A (en) 1988-05-06
JPH0731661B2 true JPH0731661B2 (en) 1995-04-10

Family

ID=17163409

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61247436A Expired - Lifetime JPH0731661B2 (en) 1986-03-12 1986-10-20 Processor

Country Status (1)

Country Link
JP (1) JPH0731661B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3039953B2 (en) * 1989-04-28 2000-05-08 株式会社日立製作所 Parallelization device
US7647476B2 (en) * 2006-03-14 2010-01-12 Intel Corporation Common analog interface for multiple processor cores

Also Published As

Publication number Publication date
JPS63101957A (en) 1988-05-06

Similar Documents

Publication Publication Date Title
US5568617A (en) Processor element having a plurality of processors which communicate with each other and selectively use a common bus
EP0901659B1 (en) Parallel processor with redundancy of processor pairs and method
EP0298396B1 (en) Function-distributed control apparatus
JP2564805B2 (en) Information processing device
EP0240667B1 (en) Processor
JPH0731661B2 (en) Processor
JPH0654488B2 (en) Processor
JPS6136845A (en) Single-chip microcomputer
JP2965133B2 (en) Processor system
JP3039918B2 (en) Processor system
JP3081341B2 (en) Intelligent real-time controller, function distributed hierarchical real-time controller, homogeneous hierarchical real-time controller, composite real-time controller
Toong et al. A general multi-microprocessor interconnection mechanism for non-numeric processing
JPH0215152Y2 (en)
JPS63155254A (en) Information processor
JP2503287B2 (en) Multi-function computer with survival confirmation function
Ghosal et al. SHAMP: an experimental shared memory multimicroprocessor system for performance evaluation of parallel algorithms
JPS6143369A (en) Multi-processor system
JPS62293372A (en) Master and slave processor
JPH04133155A (en) Digital computer
JPH04338859A (en) Computer device
Hoshino et al. Real-time control of a multiple-arm system by large-scale multiprocessing
JPH01316851A (en) Channel control system
JPS603027A (en) Resource control system of computer processing system
JPH02120961A (en) Inter-memory data transfer system
JPH02170261A (en) Parallel arithmetic unit