[go: up one dir, main page]

JPH0731661B2 - プロセツサ - Google Patents

プロセツサ

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
English (en)
Other versions
JPS63101957A (ja
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/ja
Priority to DE87101841T priority patent/DE3786583T2/de
Priority to EP19870101841 priority patent/EP0240667B1/en
Publication of JPS63101957A publication Critical patent/JPS63101957A/ja
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/ja
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 semiconductor or other solid state devices
    • H01L25/03Assemblies consisting of a plurality of semiconductor or other solid state devices all the devices being of a type provided for in a single subclass of subclasses H10B, H10F, H10H, H10K or H10N, e.g. assemblies of rectifier diodes
    • H01L25/04Assemblies consisting of a plurality of semiconductor or other solid state devices all the devices being of a type provided for in a single subclass of subclasses H10B, H10F, H10H, H10K or H10N, e.g. assemblies of rectifier diodes the devices not having separate containers
    • H01L25/065Assemblies consisting of a plurality of semiconductor or other solid state devices all the devices being of a type provided for in a single subclass of subclasses H10B, H10F, H10H, H10K or H10N, e.g. assemblies of rectifier diodes the devices not having separate containers the devices being of a type provided for in group H10D89/00
    • H01L25/0652Assemblies consisting of a plurality of semiconductor or other solid state devices all the devices being of a type provided for in a single subclass of subclasses H10B, H10F, H10H, H10K or H10N, e.g. assemblies of rectifier diodes the devices not having separate containers the devices being of a type provided for in group H10D89/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 semiconductor or other solid state devices
    • H01L25/50Multistep manufacturing processes of assemblies consisting of devices, the devices being individual devices of subclass H10D or integrated devices of class H10
    • 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
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10DINORGANIC ELECTRIC SEMICONDUCTOR DEVICES
    • H10D62/00Semiconductor bodies, or regions thereof, of devices having potential barriers
    • H10D62/10Shapes, relative sizes or dispositions of the regions of the semiconductor bodies; Shapes of the semiconductor bodies
    • H10D62/117Shapes of semiconductor bodies

Landscapes

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、シングル・プロセツサまたはマルチ・プロセ
ツサを構成し、知的自動機械の制御に好適なプロセツサ
に関する。
〔従来の技術〕
従来、マルチ・プロセツサ・システムは、例えば特開昭
59−208666号公報に示されるように、1つのCPUとメモ
リ、他のプロセツサエレメントとマスタ・スレーブ動作
する共通バス・スイツチ等から成る。このような単一CP
Uによるプロセツサ・エレメントで構成されるマルチ・
プロセツサ・システムでは、外乱の少ない専用タスク処
理に関する限り問題はないが、知能化された制御処理等
システムに要求される処理内容が高級化してくると、デ
ータベースやシステムステータスの管理,データベース
やセンサ情報に基づく知識処理系の構成,多重割込み処
理,マルチ・ジヨブ機能等バツク・グラウンド的な処理
系サポートが必須となり、リアルタイムマルチ・タスキ
ング,マルチ・ジヨブをサポートできる高級なオペレー
テイングシステム上で高級言語によりそれらの処理を記
述し、実行するのが一般的である。
〔発明が解決しようとする問題点〕
上述した従来のマルチ・プロセツサ・システムにおい
て、高速化のメインとなるリアルタイム制御処理もマル
チ・タスキングでサポートされるタスクの1つとして位
置付けられるため、タスク・スイツチ・オーバーヘツド
や並列処理スケジユールの乱れ等からきめ細かな密結合
並列処理を行えないのが現状である。そのため、スーパ
ーバイザ・システムとしてスーパーミニコン等により知
能処理系を並列処理による制御処理系から分離する方式
を採ることが多いが、並列処理系と知能処理系の通信が
疎になりがちである、各プロセツサのローカルな内部ス
テータスを管理するのにオペレーテイングシステムオー
バーヘツドを要する知能処理の分散化、システム管理の
分散化などの特性が生かされず、実質的な価格性能比の
低下をもたらす、制御処理系の処理性能の拡張に応じて
それに見合つた知能処理系の処理性能の拡張及び2系間
の通信スループツト向上が図り難い等の問題がある。し
たがつて、特に知能ロボツト等の自動機械のように制御
処理系の制御ループが高速化した場合、知能処理系と制
御処理系とで比較的大きなデータが高速に授受される必
要があり、ハードウエア構成上、上記の問題が大きなネ
ツクとなつて自動機械の高速化および高精度化を図るこ
とができないものであつた。
本発明の目的は、知能ロボツト等の知的自動機械の知能
処理系と制御処理系とを効果的にインプリメントでき、
両系の処理をバランス良く効率的に処理できるプロセツ
サを提供することにある。
〔問題点を解決するための手段〕
本発明の上記の目的は、シングル・プロセツサ又はマル
チ・プロセツサを構成し機械を制御するためのプロセツ
サにおいて、そのプロセツサを構成するベース・プロセ
ツサ・エレメント内にそれぞれローカルメモリを有し、
前記機械の知能処理系と制御処理系との処理を分担する
2つのCPUと、それらのフツクのCPUからアクセスできる
デユアル・ポート・RAMと、2つのCPUが共に利用可能な
共通バスへいずれか一方のCPUを接続する共通バス・ス
イツチ回路とを備えることにより達成される。
〔作用〕
本発明のプロセツサはベース・プロセツサ・エレメント
に設けた2つのCPUを1つのプロセツサのごとく動作さ
せるハードウエア・アーキテクチユアを提供する。ま
た、制御処理系とデータベースやセンサ情報に基づく知
能処理系の高い独立性に注目して、メインCPUのメイン
処理系に制御処理系を割り当てて制御演算等を他のベー
ス・プロセツサ・エレメントとの密結合並列処理により
実行させ、割込み処理やシステム管理,知識処理等,バ
ツクグラウンド的要素の強い処理を知能処理系としてメ
インCPUのバツクグラウンド処理系及びバツクグラウン
ドCPUに割り当てて、メインCPUの制御処理系をバツクア
ツプする。それによつて、タスク・スイツチ・オーバー
ヘツドや並列処理を乱す割込み要因をできるだけ取り除
き、独立性の強い2つの処理系を高効率で並列に運用す
ることができるため、2台のCPUの処理性能を加算して
実質的にベース・プロセツサ・エレメントの処理性能を
2倍に向上させるとともに、ベース・プロセツサ・エレ
メントを複数結合するマルチ・プロセツサ・システムに
おいても、従来の2倍の総合処理性能と、ベース・プロ
セツサ・エレメントの増設に対応して制御処理系と知能
処理系のバランスのとれた処理性能拡張とを実現するこ
とができる。
〔実施例〕
以下、本発明の実施例を図面を参照して説明する。
第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上の共有資源を利用した
り、他のベース・プロセツサ・エレメントとの通信処理
を行つてベース・プロセツサ・エレメント間で並列処理
を実行できるようになつている。
第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θに対
してアクテイブになる。
次に割込みを受付けたCPUθは、自身の割込みサービス
ルーチンの中で、実行すべき命令を得るために再びCPU
θへの命令レジスタを参照し、指示されている命令を設
け出すと、同様にしてデコーダ67はそのアクセス状況を
監視しておりCPUθへの命令レジスタ・アクセス信号パ
ルスをアクセス信号73を使いフリツプ・フロツプ68に対
して出力して、HIである70をラツチしQにHIを出力す
る。すなわち、CPUθへの割込み発生ライン32を非アク
テイブにする。上述のシーケンスにより一連の割込み発
生から受付けに至る動作とソフトウエア的な命令授受に
関する動作を同時にかつ最小のオーバーヘツドで実行す
ることができる。
第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に持たせる方が管理面等で有効で
あり、本発明の共有バス制御は、上述したようなローカ
ル分散処理に適したものであると言える。
次に上述した本発明のプロセツサの一般動作を第2図に
より詳述する。
第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)で実行される知能処理系は、腕部
分のうちのさらに一部分、例えば筋肉部分に関する情報
群がデータ・ベースとして保持されており、ローカル・
センサ情報もそれに関連の深いものが知覚情報として取
り込まれ、それらによつて構成されるローカルな機能分
散データベースを基本にして筋肉部分に関する知能処理
を実行し、メイン処理系で実行されている制御演算全体
をバツクアツプするものとしている。
以上のような仮定に基づくシステムにおいて、第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による適切なアービテーシヨン・コ
ントロールによつてお互いの処理や動作に何の支親もな
く通信処理が実行されている。
以上の様な、ローカルな分散データベースによる知能処
理系及びそれにバツクアツプされた制御処理系を本発明
のプロセツサにより実現する場合、大半の知能処理はデ
ユアルポートRAM(DPR)を介してベース・プロセツサ・
エレメント(BPE)内のCPU間で実行すれば良く、たまに
その処理結果や他のベース・プロセツサ・エレメント
(BPE)による知能処理結果をやりとりするためにシス
テム共有資源をアクセスすれば良いため、システム内の
通信ノード間でごく自然に最良の通信スループツトを実
現できるとともに、それによつて制御処理系と知能処理
系がほぼ完全に独立して並列動作できるため処理性能を
確実に2倍化することが可能となる。また、BPEを増設
することで、知能処理系の処理性能と、制御処理系の処
理性能が比例して増加し、常に両者のバランスのとれた
処理性能を提供することができる。
本発明の実施例によれば、マルチ・プロセツサ・システ
ム又は単一プロセツサ・システムの基本となるプロセツ
サ・エレメント(ベース・プロセツサ・エレメント:BP
E)を2つのCPUで構成し、それらの割込み機能付のデユ
アルポートRAM(DPR)と、マスタ・スレーブ動作により
外部から観測した場合、単一CPUのごとく見える双方のC
PUから共通に利用可能な共通バスとで接続し、独立性の
高いメイン処理系とバツクグラウンド処理系とを分離し
て2つのCPUにそれぞれ受け持たせ、2つのCPU間でのロ
ーカルな情報交換はデユアルポートRAM(DPR)を介して
行い、マルチ・プロセツサ構成の場合の他のベース・プ
ロセツサ・エレメント(BPE)との通信は共通バス(BPE
ローカルバス)を通してシステムバス上のシステム共有
資源を介して行うことによりBPEの性能を実質的に2倍
化している。また、本発明のプロセツサを使用してマル
チ・プロセツサ・システムを構成する場合、バツクグラ
ウンド処理系のデータベースを機能分散化して各BPE単
位で持つことにより、バツクグラウンド処理系において
も大半がプロセツサ内のローカルな通信でクローズし他
のプロセツサと頻繁に通信を行う必要がなく、それによ
り通信ノード間での通信スループツトが最適化されるた
めメインで実行されている密結合並列処理に大きな影響
を与えることなくメイン処理系及びバツクグラウンド処
理系の双方でごく自然に高効率な並列処理を行うことが
できる。さらに、本発明のプロセツサの増設により、常
にメイン処理及びバツクグラウンド処理系双方でバラン
スのとれた処理能力向上が図れる。
次に、本発明の基本プロセツサ・エレメント(BPE)の
マルチ・プロセツサシステムへの拡張応用と、そのシス
テムを利用した知能ロボツト・システムの構成例を第6
図により説明する。
図中符号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)が使用する。
したがつて、共通バス14a〜14dは制御処理系の専用バス
と考えて良い。各ベース・プロセツサ・エレメントのCP
Uθはこれらの共通バスを通信に使用して必要な制御演
算を密結合並列処理する。101は並列処理を制御するた
めのハードウエア機構(コミユニケーシヨン・コントロ
ーラ)、103はベース・プロセツサ・エレメント間の通
信用割込みを制御するハードウエア機構(コミユニケー
シヨン・インターラプト・コントローラ)である。ベー
ス・プロセツサ・エレメントには知能処理系側の専用共
通バスとしてシステムバス100をサポートするためのバ
ス・スイツチ回路102が知能処理系を担当するCPU1のロ
ーカルバス設けられている。そこには、共有データベー
ス107や様々な共有センサ・インターフエースが置かれ
ている。また、制御処理系を担当するCPU1のローカルバ
スには、高速な数値演算処理を行うため浮動小数点演算
ユニツト(FPU)104を設けている。本例のマルチ・プロ
セツサシステムは、全部で14台のベース・プロセツサ・
エレメントから構成されるが、さらにこのシステムをモ
ジユール化し、モジユール同志で多数結合可能な様に、
内部共通バス14a〜14d等のハードウエア通信機構直結型
の外部拡張チヤンネル105及び、ソフトウエア介入型の
外部拡張チヤンネル106を設けている。外部拡張チヤン
ネル105(ハードウエア直接型)を用いれば、外部のモ
ジユールから直接内部の共有メモリ9a〜9c等のデータを
高速に参照できるし、外部拡張チヤンネル106(ソフト
ウエア介入型)を用いれば、あるプロトユルに基づく高
度で柔軟な通信を他のモジユールと行うことができる。
このように構成したベース・プロセツサ・エレメントを
用いれば、以上に示したように、制御処理系と知能処理
系を効果的にサポートできるマルチ・プロセツサシステ
ムを構築できる。第6図には制御対象としてロボツトシ
ステムを結合している。次に、これについて説明する。
ロボツトシステムは、ロボツトメカニズム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を基本にして、センシング,推論,学
習及ぞそれらの結果の必要な制御処理系への指令等の知
能処理を行い、制御処理系をバツクアツプする。
以上の様に、本発明の実施例によれば、高度な知能処理
の支援下で、制御処理系が高度な運動制御演算を行うこ
とにより、センシング,推論,学習等の機能を持ち、か
つ高速,高精度な運動を行う知能ロボツト等の知的自動
機械制御システムを構築できる。
さらに本発明の実施例によれば、知能ロボツト等の知的
自動機械制御用の制御装置を構成するベース・プロセツ
サ・エレメントに、制御処理系と知能処理系を分けてイ
ンプリメントできるため両系の処理能力及び機能を単一
プロセツサ環境あるいはマルチ・プロセツサ環境でバラ
ンス良く拡張することができる。また、ベース・プロセ
ツサ・エレメント内に、知能処理系と制御処理系との間
の局所的な密結合通信を専用に行うデユアルポートRAM
を設けて、2つの系をそれぞれ担当するCPU間を直結す
ることによりマルチ・プロセツサ環境での制御処理系の
通信を乱し、重大なバスネツクを引き起こす可能性を非
常に小さくできるため、各系間,各機能間の通信スルー
プツトを最適化できる。また、基本プロセツサ・エレメ
ント内の2つのCPUからアクセス可能な共通バスをサポ
ートする為のマスター・スレーブ型のバス・スイツチ・
インターフエース(マルチ・プレクサ・バスバツフア及
び共通バス・スイツチ制御回路)を設け、デユアルCPU
で構成される基本プロセツサを単一プロセツサ化するこ
とにより、基本プロセツサ同志を容易に複数バス結合で
きるため、効率的かつ統一的に処理能力及び機能の拡張
が図れる。
〔発明の効果〕
本発明によれば、センサ等の感覚器や知識ベースに基づ
く知能処理系の支援下で、制御処理系が高速制御,動力
学制御等の高度かつ高負荷な運動制御演算処理を行うこ
とによりセンシング推論,学習等の機能を持ち、かつ高
速,高精度な運動を行う知能ロボツト等の知的自動機械
の制御を実現することができる。
【図面の簡単な説明】
第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……ロボツトメ
カニズム。

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】シングル・プロセッサを構成し、機械を制
    御するためのプロセッサにおいて、 そのプロセッサを構成するベース・プロセッサ・エレメ
    ントに、前記機械の1つの制御系ともう1つの制御系と
    の処理をそれぞれ分担する2つのCPUと、 前記2つのCPUからそれぞれアクセスできるメモリ手段
    と、 前記2つのCPUのいずれか一方のCPUを前記機械の前記各
    制御系に接続する共通バスにそれぞれ接続するスイツチ
    手段とを備えたことを特徴とするプロセッサ。
  2. 【請求項2】前記第1のCPU,第2のCPU,メモリ手段,ス
    イッチ手段を集積化して単一プロセッサ化したことを特
    徴とする特許請求の範囲第1項記載のプロセッサ。
  3. 【請求項3】前記ベース・プロセッサ・エレメントを複
    数備え、モジュール化したことを特徴とする特許請求の
    範囲第1項記載のプロセッサ。
  4. 【請求項4】シングル・プロセッサを構成し、機械を制
    御するためのプロセッサにおいて、 そのプロセッサを構成するベース・プロセッサ・エレメ
    ントに、 前記機械の知能処理系と制御処理系との処理をそれぞれ
    分担する2つのCPUと、 前記2つのCPUからそれぞれアクセスできるメモリ手段
    と、 前記2つのCPUのいずれか一方のCPUを前記機械の知能処
    理系に接続する共通バスと制御処理系に接続する共通バ
    スとにそれぞれ接続するスイッチ手段とを備えたことを
    特徴とするプロセッサ。
  5. 【請求項5】前記スイッチ手段は、前記2つのCPUのい
    ずれか一方のCPUを前記共通バスのいずれか一方に常接
    することを特徴とする特許請求の範囲第4項記載のプロ
    セッサ。
  6. 【請求項6】前記2つのCPUのいずれか一方のCPUは他方
    のCPUの動作を監視する手段を備えたことを特徴とする
    特許請求の範囲第4項記載のプロセッサ。
  7. 【請求項7】前記2つのCPU,メモリ手段,スイッチ手段
    を集積化して1チップ化したことを特徴とする特許請求
    の範囲第4項記載のプロセッサ。
  8. 【請求項8】マルチプロセッサを構成し、機械を制御す
    るためのプロセッサにおいて、 そのプロセッサを構成するベース・プロセッサ・エレメ
    ントに、 前記機械の知能処理系の処理を担当する第1のCPUと、 前記機械の制御処理系の処理を担当する第2のCPUと、 前記第1のCPUおよび第2のCPUからアクセスできるメモ
    リ手段と、 前記第1のCPUを前記機械の知能処理系に接続する共通
    バスに接続させる第1のスイッチ手段と、 前記第1または第2のCPUのいずれか一方を前記機械の
    制御処理系に接続する共通バスに接続させる第2のスイ
    ッチ手段とを備えたことを特徴とするプロセッサ。
  9. 【請求項9】前記第2のスイッチ手段は第2のCPUを前
    記機械の制御処理系に接続する共通バスに常接させるこ
    とを特徴とする特許請求の範囲第8項記載のプロセッ
    サ。
  10. 【請求項10】前記第1のCPUは第2のCPUの動作を監視
    する手段を備えたことを特徴とする特許請求の範囲第8
    項記載のプロセッサ。
  11. 【請求項11】前記第1のCPU,第2のCPU,メモリ手段,
    スイッチ手段を集積化して単一プロセッサ化したことを
    特徴とする特許請求の範囲第8項記載のプロセッサ。
  12. 【請求項12】前記ベース・プロセッサ・エレメントを
    複数備え、モジュール化したことを特徴とする特許請求
    の範囲第8項記載のプロセッサ。
  13. 【請求項13】マルチプロセッサを構成し、機械を制御
    するためのプロセッサにおいて、 そのプロセッサを構成するベース・プロセッサ・エレメ
    ントに、 前記機械の知能処理系の処理を担当する第1のCPUと、 前記機械の制御処理系の処理を担当する第2のCPUと、 前記第1のCPUおよび第2のCPUからアクセスできるメモ
    リ手段と、 前記第1又は第2のCPUを第1の共通バスに接続するス
    イッチ手段とを設けて、プロセッサを構成し、 前記複数のベース・プロセッサ・エレメントの第1のCP
    Uを前記機械の知能処理系の第2の共通バスに接続し、 前記複数のプロセッサの第2のCPUを前記第1の共通バ
    スを介して前記機械の制御処理系の第3の共通バスに接
    続したことを特徴とするプロセッサ。
  14. 【請求項14】前記スイッチ手段は第2のCPUを前記機
    械の制御処理系の共通バスに常接するスイッチ回路を備
    えたことを特徴とする特許請求の範囲第13項記載のプロ
    セッサ。
  15. 【請求項15】前記第1のCPUは第2のCPUの動作を監視
    する手段を備えたことを特徴とする特許請求の範囲第13
    項記載のプロセッサ。
  16. 【請求項16】前記第1のCPU,第2のCPU,メモリ手段,
    スイッチ手段を集積化して単一プロセッサ化したことを
    特徴とする特許請求の範囲第13項記載のプロセッサ。
  17. 【請求項17】前記ベース・プロセッサ・エレメントを
    複数備え、モジュール化したことを特徴とする特許請求
    の範囲第13項記載のプロセッサ。
JP61247436A 1986-03-12 1986-10-20 プロセツサ Expired - Lifetime JPH0731661B2 (ja)

Priority Applications (8)

Application Number Priority Date Filing Date Title
JP61247436A JPH0731661B2 (ja) 1986-10-20 1986-10-20 プロセツサ
DE87101841T DE3786583T2 (de) 1986-03-12 1987-02-10 Prozessor.
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 (ja) 1986-10-20 1986-10-20 プロセツサ

Publications (2)

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

Family

ID=17163409

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61247436A Expired - Lifetime JPH0731661B2 (ja) 1986-03-12 1986-10-20 プロセツサ

Country Status (1)

Country Link
JP (1) JPH0731661B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3039953B2 (ja) * 1989-04-28 2000-05-08 株式会社日立製作所 並列化装置
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 (ja) 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 (ja) 情報処理装置
US4754398A (en) System for multiprocessor communication using local and common semaphore and information registers
EP0240667B1 (en) Processor
JPH0731661B2 (ja) プロセツサ
JPH0654488B2 (ja) プロセツサ
JPS6136845A (ja) シングルチツプマイクロコンピユ−タ
JP2965133B2 (ja) プロセッサシステム
JP3039918B2 (ja) プロセッサシステム
JP3081341B2 (ja) 知能型リアルタイムコントロ−ラ、機能分散階層型リアルタイムコントローラ、均質階層型リアルタイムコントローラ、複合型リアルタイムコントローラ
Toong et al. A general multi-microprocessor interconnection mechanism for non-numeric processing
JPH0215152Y2 (ja)
CN118938779A (zh) 视驱控一体控制器
JPS603027A (ja) コンピユ−タ処理システムにおける資源管理方式
JPS63155254A (ja) 情報処理装置
JP2503287B2 (ja) 生存確認機能を持つ複合計算機
Ghosal et al. SHAMP: An experimental shared memory multimicroprocessor system for performance evaluation of parallel algorithms
JPS6143369A (ja) マルチプロセツサシステム
JPS62293372A (ja) マスタスレ−ブプロセツサ
JPH04133155A (ja) デイジタル計算機
JPH04338859A (ja) コンピュータ装置
Hoshino et al. Real-time control of a multiple-arm system by large-scale multiprocessing
JPH01316851A (ja) チャネル制御方式