JPH06131181A - 階層並列処理型中央処理装置 - Google Patents
階層並列処理型中央処理装置Info
- Publication number
- JPH06131181A JPH06131181A JP3162631A JP16263191A JPH06131181A JP H06131181 A JPH06131181 A JP H06131181A JP 3162631 A JP3162631 A JP 3162631A JP 16263191 A JP16263191 A JP 16263191A JP H06131181 A JPH06131181 A JP H06131181A
- Authority
- JP
- Japan
- Prior art keywords
- sub
- instruction
- main cpu
- processing
- processing unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3877—Concurrent instruction execution, e.g. pipeline or look ahead using a secondary processor, e.g. coprocessor
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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/163—Interprocessor communication
- G06F15/17—Interprocessor communication using an input/output type connection, e.g. channel, I/O port
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
- Multi Processors (AREA)
Abstract
(57)【要約】
【目的】メインCPUとサブ処理装置の演算を効率よく
行うことができる中央処理装置を提供すること。 【構成】シ−ケンシャルに記述された命令列を実行する
機能を有するメインCPU部と、そのメインCPU部か
らアクセス可能なメインソ−スと、メインCPU部から
のマクロ命令の指令によりそれ以前に指令されたマクロ
命令の実行結果をメインCPU部の対応するバスサイク
ルに呼応して出力するサブ処理装置とから構成する。 【効果】ストア命令をサブ処理装置に指令するまでサブ
処理装置との同期処理を行うことなく演算処理の高速化
が図れる。
行うことができる中央処理装置を提供すること。 【構成】シ−ケンシャルに記述された命令列を実行する
機能を有するメインCPU部と、そのメインCPU部か
らアクセス可能なメインソ−スと、メインCPU部から
のマクロ命令の指令によりそれ以前に指令されたマクロ
命令の実行結果をメインCPU部の対応するバスサイク
ルに呼応して出力するサブ処理装置とから構成する。 【効果】ストア命令をサブ処理装置に指令するまでサブ
処理装置との同期処理を行うことなく演算処理の高速化
が図れる。
Description
【0001】
【産業上の利用分野】本発明は、数値演算等の演算を行
う演算処理装置に限り、特に演算処理の高速化を図るこ
とができるアプリケ−ションに好適な並列処理方式中央
演算処理装置に関する。
う演算処理装置に限り、特に演算処理の高速化を図るこ
とができるアプリケ−ションに好適な並列処理方式中央
演算処理装置に関する。
【0002】
【従来の技術】従来、実時間処理能力、スカラ処理能力
を上げるための演算処理装置としては例えば特開63−
316133号公報に記載されているものがある。この
演算処理装置は、ホストプロセッサと、演算処理を担当
する演算ユニットからなる処理装置であって、ホストプ
ロセッサ上で記述される、演算ユニットの演算シ−ケン
スを実行可能な第2のプロセッサを用意し、ホストプロ
セッサと第2のプロセッサが共に演算ユニットを共有し
て第2のプロセッサに演算処理シ−ケンスを実行させ、
ホストプロセッサはそれと並行に主メモリと演算ユニッ
トのレジスタファイル間でデ−タ入出力を行う装置であ
る。この装置によりハ−ドウェアの並列性を有効的に引
き出し、演算処理の高速化を図っている。
を上げるための演算処理装置としては例えば特開63−
316133号公報に記載されているものがある。この
演算処理装置は、ホストプロセッサと、演算処理を担当
する演算ユニットからなる処理装置であって、ホストプ
ロセッサ上で記述される、演算ユニットの演算シ−ケン
スを実行可能な第2のプロセッサを用意し、ホストプロ
セッサと第2のプロセッサが共に演算ユニットを共有し
て第2のプロセッサに演算処理シ−ケンスを実行させ、
ホストプロセッサはそれと並行に主メモリと演算ユニッ
トのレジスタファイル間でデ−タ入出力を行う装置であ
る。この装置によりハ−ドウェアの並列性を有効的に引
き出し、演算処理の高速化を図っている。
【0003】
【発明が解決しようとする課題】上記従来技術は、演算
処理の高速化については優れた装置であるが、ある階層
に存在する処理装置がそれより下位レベルに存在する処
理装置との間で、並列処理動作の効率を高めるといった
点については十分配慮されていなかった。
処理の高速化については優れた装置であるが、ある階層
に存在する処理装置がそれより下位レベルに存在する処
理装置との間で、並列処理動作の効率を高めるといった
点については十分配慮されていなかった。
【0004】本発明の目的はメインCPUとサブ処理装
置の演算を効率よく行うことのできる階層並列処理型中
央処理装置を提供することにある。
置の演算を効率よく行うことのできる階層並列処理型中
央処理装置を提供することにある。
【0005】
【課題を解決するための手段】上記目的は、シ−ケンシ
ャルに記述された命令列を実行する機能を有するメイン
CPU部と、前記メインCPU部からアクセス可能なメ
インリソ−スと、メインCPU部からのマクロ命令の指
令によりその指令に応じた処理を実行する機能とストア
命令の指令によりそれ以前に指令された前記マクロ命令
の実行結果をメインCPU部の対応するバスサイクルに
呼応して出力する機能とを有するサブ処理装置とを有
し、前記マクロ命令は前記サブ処理装置内のメモリ手段
に保持するデ−タか又は前記メインCPU部によるマク
ロ命令の指令時にオペランドデ−タとして引き渡された
デ−タを用いて前記サブ処理システムに処理を実行させ
る情報を含み、前記ストア命令には前記サブ処理システ
ム内のメモリ手段に保持されている目的のデ−タを指定
すると共に、ストア命令の指令時に生成されるメインC
PU部のストアバスサイクルに呼応して前記目的のデ−
タを出力させる情報を含み、前記ストア命令を実行する
機能には前記目的とするデ−タが存在するメモリ手段が
先行して指令されているマクロ命令の実行に伴って変更
される場合にその変更が終了するまで前記メインCPU
部の前記ストアバスサイクルを延長する待ち信号を出力
してメインCPU部を待たせる手段を有することによっ
て達成される。
ャルに記述された命令列を実行する機能を有するメイン
CPU部と、前記メインCPU部からアクセス可能なメ
インリソ−スと、メインCPU部からのマクロ命令の指
令によりその指令に応じた処理を実行する機能とストア
命令の指令によりそれ以前に指令された前記マクロ命令
の実行結果をメインCPU部の対応するバスサイクルに
呼応して出力する機能とを有するサブ処理装置とを有
し、前記マクロ命令は前記サブ処理装置内のメモリ手段
に保持するデ−タか又は前記メインCPU部によるマク
ロ命令の指令時にオペランドデ−タとして引き渡された
デ−タを用いて前記サブ処理システムに処理を実行させ
る情報を含み、前記ストア命令には前記サブ処理システ
ム内のメモリ手段に保持されている目的のデ−タを指定
すると共に、ストア命令の指令時に生成されるメインC
PU部のストアバスサイクルに呼応して前記目的のデ−
タを出力させる情報を含み、前記ストア命令を実行する
機能には前記目的とするデ−タが存在するメモリ手段が
先行して指令されているマクロ命令の実行に伴って変更
される場合にその変更が終了するまで前記メインCPU
部の前記ストアバスサイクルを延長する待ち信号を出力
してメインCPU部を待たせる手段を有することによっ
て達成される。
【0006】
【作用】あるレベル(階層)に存在する処理装置がそれ
より下位レベルに存在する様々なサブ処理装置に対し
て、命令(ストア命令以外)及びその命令に必要なデ−
タを次々に出力していく場合、前記処理装置かストア命
令をサブ処理装置に指令するまでそのサブ処理装置との
同期処理(処理間のリレ−ションに矛盾が生じない様
に、処理装置間で待ち合わせる処理)を行う必要がな
い。また、ストア命令の出力を、できるだけ後の時刻に
ずらしていく、すなわち、サブ処理装置からの必要なデ
−タのストア処理を、そのデ−タが実際に必要となるま
で遅らせるコンパイル上の最適化によって、容易に、処
理装置間の並列処理動作の効率をより最適化することが
できる。
より下位レベルに存在する様々なサブ処理装置に対し
て、命令(ストア命令以外)及びその命令に必要なデ−
タを次々に出力していく場合、前記処理装置かストア命
令をサブ処理装置に指令するまでそのサブ処理装置との
同期処理(処理間のリレ−ションに矛盾が生じない様
に、処理装置間で待ち合わせる処理)を行う必要がな
い。また、ストア命令の出力を、できるだけ後の時刻に
ずらしていく、すなわち、サブ処理装置からの必要なデ
−タのストア処理を、そのデ−タが実際に必要となるま
で遅らせるコンパイル上の最適化によって、容易に、処
理装置間の並列処理動作の効率をより最適化することが
できる。
【0007】
【実施例】本発明の実施例を図1を用いて詳細に説明す
る。
る。
【0008】本発明の並列処理方式中央演算処理装置
(PCPU)は、メインCPU部1と1台以上のサブ処
理装置2(本例では2a〜2dの4台のサブ処理装置か
ら成る)と主記憶装置等の記憶サブシステムに代表され
るメインリソ−ス3とから構成される。メインCPU部
1と各サブ処理装置2a〜2dとはデ−タバスData
l1、コントロ−ルバスCONTl2及び命令バスで接
続され、通常はメインCPU部1の管理下で各サブ処理
装置2a〜2dは動作する。本例においては命令バスは
アドレスバスADDRl3の一部分を共有することによ
って代用している。すなわち、ADDRl3の一部を用
いて、各サブ処理装置が処理すべき内容を命令として各
サブシステム2a〜2dに与える方式を採っている。ま
たさらに、ADDRl3を用いて与えた命令種類によっ
ては、デ−タバスDatal1の内容にサブ命令を含ま
せて各サブ処理装置2a〜2dに与えることも可能であ
る。各サブシステム2a〜2dは、インタ−フェ−ス入
出力Dで、処理すべきデ−タバスDatal1上のデ−
タを入力するか又は処理した結果デ−タをDatal1
へ出力する。同様に、インタ−フェ−ス入力Iで必要な
実行すべき命令デ−タを、インタ−フェ−ス入出力Cで
必要な制御信号(ex.有効な命令起動の為のストロ−
ブ信号や命令を受け取った事を示すレディ信号等)をや
りとりする。本例において、サブ処理装置A2aは、自
身の管理下にさらにサブ処理装置としてAA2aa及び
AB2abとサブリソ−ス3a等のサブシステムを有す
る。丁度、サブ処理装置A2aの立場をメインCPU部
1の立場に置き替えた構造を採っている。サブ処理装置
A2aは、専用のデ−タバスADatal4、アドレス
バスAADDRl6、制御バスACONTl5を有し、
メインCPU部1と同様の方式で各サブシステムと接続
される。
(PCPU)は、メインCPU部1と1台以上のサブ処
理装置2(本例では2a〜2dの4台のサブ処理装置か
ら成る)と主記憶装置等の記憶サブシステムに代表され
るメインリソ−ス3とから構成される。メインCPU部
1と各サブ処理装置2a〜2dとはデ−タバスData
l1、コントロ−ルバスCONTl2及び命令バスで接
続され、通常はメインCPU部1の管理下で各サブ処理
装置2a〜2dは動作する。本例においては命令バスは
アドレスバスADDRl3の一部分を共有することによ
って代用している。すなわち、ADDRl3の一部を用
いて、各サブ処理装置が処理すべき内容を命令として各
サブシステム2a〜2dに与える方式を採っている。ま
たさらに、ADDRl3を用いて与えた命令種類によっ
ては、デ−タバスDatal1の内容にサブ命令を含ま
せて各サブ処理装置2a〜2dに与えることも可能であ
る。各サブシステム2a〜2dは、インタ−フェ−ス入
出力Dで、処理すべきデ−タバスDatal1上のデ−
タを入力するか又は処理した結果デ−タをDatal1
へ出力する。同様に、インタ−フェ−ス入力Iで必要な
実行すべき命令デ−タを、インタ−フェ−ス入出力Cで
必要な制御信号(ex.有効な命令起動の為のストロ−
ブ信号や命令を受け取った事を示すレディ信号等)をや
りとりする。本例において、サブ処理装置A2aは、自
身の管理下にさらにサブ処理装置としてAA2aa及び
AB2abとサブリソ−ス3a等のサブシステムを有す
る。丁度、サブ処理装置A2aの立場をメインCPU部
1の立場に置き替えた構造を採っている。サブ処理装置
A2aは、専用のデ−タバスADatal4、アドレス
バスAADDRl6、制御バスACONTl5を有し、
メインCPU部1と同様の方式で各サブシステムと接続
される。
【0009】図1に示した接続構造から明らかな様に、
本発明の並列処理方式中央演算処理装置は、並列階層構
造を採っている。すなわち、メインCPU部1の管理下
の同階層に並列に4つのサブ処理装置2a〜2dが配置
され、サブ処理装置A2aの管理下の同階層に並列に2
つのサブ処理装置2aa,2abが配置される階層構造
になっている。メインCPU部1からサブ処理装置A2
aをみた場合、A2aの管理下のサブシステムによる命
令の実行動作は観測されず、直接的にはすべてA2aに
対して命令を指示し、A2aによってその命令が実行さ
れている様に観測される。サブ処理装置A2aは、メイ
ンCPU部1からの命令(マクロ命令)を受けそれをさ
らに細分化した命令(ミクロ命令)に分解して、A2a
自身で実行できるものはA2a自身で実行し、サブ処理
装置2aa,2abで実行できるものはそれらに対し細
分化した命令(ミクロ命令)を生成して必要な機能を実
行させる。仮に、上位レベルの命令をマクロ命令と呼
び、下位レベルの細分化された命令をミクロ命令と呼ぶ
ことにする。例えば、サブリソ−ス3aの内容をデ−タ
バスDatal1に読み出すだけの単純なマクロ命令
(この場合ストア命令に相当する)が上位からサブ処理
装置A2aに対して与えられたとすると、これ以上細分
化できない基本命令なのでそのままミクロ命令としてA
2aによって実行される。すなわち、A2aがサブリソ
−ス3aからまず目的のデ−タをAADDRl6及びA
CONTl5を適切な信号を出力することによりADa
tal4上に読み出した後、そのままそのデ−タをA2
aがインタ−フェ−ス入出力DにパスしてDatal1
上に出力する。メインCPU部1からは、サブ処理装置
A2aの管理下の構造は全く見えず、単にマクロ命令に
よって指定したA2a内のメモリシステム上のアドレス
に存在するデ−タを読み出した様に観測される。同様
に、複雑なマクロ命令を指令した場合でも、サブ処理装
置A2a内でそれがどの様に分解され、どのサブシステ
ムを用いてどの様に実行されたかは全く見えず、単にそ
のマクロ命令がA2aによって実行されA2a上のメモ
リシステムの指定したアドレスに返送された結果のみを
後で見ることができる。
本発明の並列処理方式中央演算処理装置は、並列階層構
造を採っている。すなわち、メインCPU部1の管理下
の同階層に並列に4つのサブ処理装置2a〜2dが配置
され、サブ処理装置A2aの管理下の同階層に並列に2
つのサブ処理装置2aa,2abが配置される階層構造
になっている。メインCPU部1からサブ処理装置A2
aをみた場合、A2aの管理下のサブシステムによる命
令の実行動作は観測されず、直接的にはすべてA2aに
対して命令を指示し、A2aによってその命令が実行さ
れている様に観測される。サブ処理装置A2aは、メイ
ンCPU部1からの命令(マクロ命令)を受けそれをさ
らに細分化した命令(ミクロ命令)に分解して、A2a
自身で実行できるものはA2a自身で実行し、サブ処理
装置2aa,2abで実行できるものはそれらに対し細
分化した命令(ミクロ命令)を生成して必要な機能を実
行させる。仮に、上位レベルの命令をマクロ命令と呼
び、下位レベルの細分化された命令をミクロ命令と呼ぶ
ことにする。例えば、サブリソ−ス3aの内容をデ−タ
バスDatal1に読み出すだけの単純なマクロ命令
(この場合ストア命令に相当する)が上位からサブ処理
装置A2aに対して与えられたとすると、これ以上細分
化できない基本命令なのでそのままミクロ命令としてA
2aによって実行される。すなわち、A2aがサブリソ
−ス3aからまず目的のデ−タをAADDRl6及びA
CONTl5を適切な信号を出力することによりADa
tal4上に読み出した後、そのままそのデ−タをA2
aがインタ−フェ−ス入出力DにパスしてDatal1
上に出力する。メインCPU部1からは、サブ処理装置
A2aの管理下の構造は全く見えず、単にマクロ命令に
よって指定したA2a内のメモリシステム上のアドレス
に存在するデ−タを読み出した様に観測される。同様
に、複雑なマクロ命令を指令した場合でも、サブ処理装
置A2a内でそれがどの様に分解され、どのサブシステ
ムを用いてどの様に実行されたかは全く見えず、単にそ
のマクロ命令がA2aによって実行されA2a上のメモ
リシステムの指定したアドレスに返送された結果のみを
後で見ることができる。
【0010】次に図2を用いて、本実施例の動作シ−ケ
ンスの一例を説明する。
ンスの一例を説明する。
【0011】メインCPU部1から各サブ処理装置A,
B,C,Dへのマクロ命令の指令をそれぞれIA,I
B,IC,IDとし、特に各サブ処理装置A,B,C,
D内のメモリシステム(レジスタ、サブリソ−ス、スタ
ック等)からデ−タバスDatal1への結果デ−タの
ストアを指示するストア命令の指令をSA,SB,S
C,SDとしている。同様に、サブ処理装置A2aとそ
の管理下のサブ処理装置AA2aa,AB2abとの間
でも、A2aからの対応するミクロ命令の指令をIA
A,IABとし、AA2aa,AB2abからA2aへ
結果デ−タをストアするストア命令の指令を特にSA
A,SABと表現している。DTは、リソ−スとのデ−
タのやりとりやリソ−スからの命令デ−タのフェッチを
示す。Dは、メインCPU部1又は各サブ処理装置2a
〜2dの管理するデ−タバスへの下位レベルからのスト
アデ−タの出力状態を示している。すなわち、メインC
PU部1においてはDatal1への自身の管理するサ
ブシステム(A2a,B2b,C2c,D2d,リソ−
ス3)からの結果デ−タ出力であり、サブ処理装置A2
aにおいてはADatal4への自身の管理するサブシ
ステム(AA2aa,AB2ab,サブリソ−ス3a)
からの結果デ−タ出力である。本発明においては、上位
処理装置がサブ処理装置から結果デ−タを得る場合スト
ア命令をそのサブ処理装置に対して指示し、ストア命令
を指令されたサブ処理装置はそのストア命令で指定され
たメモリシステムのアドレスに存在する結果デ−タを上
位システムに対し出力する。この際、サブ処理装置側で
その指定されたメモリシステムのアドレスに対する結果
デ−タの設定処理が完了していない場合、上位システム
からストア命令が指令されたときに前記結果デ−タの設
定処理が完了するまで上位システムを待たせる機能を、
サブ処理装置と上位システムとの間の同期システムとし
て持たせている。図2中のIは各処理装置内のみで処理
できる命令を示している。すなわち、Iで示される命令
が実行されている場合、他の処理装置とのデ−タの交換
が行われないため、各処理装置は他から干渉されず自身
のみで自由に動作できることを意味する。なお、ストア
命令の実行はSIで表している。
B,C,Dへのマクロ命令の指令をそれぞれIA,I
B,IC,IDとし、特に各サブ処理装置A,B,C,
D内のメモリシステム(レジスタ、サブリソ−ス、スタ
ック等)からデ−タバスDatal1への結果デ−タの
ストアを指示するストア命令の指令をSA,SB,S
C,SDとしている。同様に、サブ処理装置A2aとそ
の管理下のサブ処理装置AA2aa,AB2abとの間
でも、A2aからの対応するミクロ命令の指令をIA
A,IABとし、AA2aa,AB2abからA2aへ
結果デ−タをストアするストア命令の指令を特にSA
A,SABと表現している。DTは、リソ−スとのデ−
タのやりとりやリソ−スからの命令デ−タのフェッチを
示す。Dは、メインCPU部1又は各サブ処理装置2a
〜2dの管理するデ−タバスへの下位レベルからのスト
アデ−タの出力状態を示している。すなわち、メインC
PU部1においてはDatal1への自身の管理するサ
ブシステム(A2a,B2b,C2c,D2d,リソ−
ス3)からの結果デ−タ出力であり、サブ処理装置A2
aにおいてはADatal4への自身の管理するサブシ
ステム(AA2aa,AB2ab,サブリソ−ス3a)
からの結果デ−タ出力である。本発明においては、上位
処理装置がサブ処理装置から結果デ−タを得る場合スト
ア命令をそのサブ処理装置に対して指示し、ストア命令
を指令されたサブ処理装置はそのストア命令で指定され
たメモリシステムのアドレスに存在する結果デ−タを上
位システムに対し出力する。この際、サブ処理装置側で
その指定されたメモリシステムのアドレスに対する結果
デ−タの設定処理が完了していない場合、上位システム
からストア命令が指令されたときに前記結果デ−タの設
定処理が完了するまで上位システムを待たせる機能を、
サブ処理装置と上位システムとの間の同期システムとし
て持たせている。図2中のIは各処理装置内のみで処理
できる命令を示している。すなわち、Iで示される命令
が実行されている場合、他の処理装置とのデ−タの交換
が行われないため、各処理装置は他から干渉されず自身
のみで自由に動作できることを意味する。なお、ストア
命令の実行はSIで表している。
【0012】図2における並列動作シ−ケンスは、全て
メインCPU部1によって実行される命令及びサブ処理
装置に対するマクロ命令がベ−スとなって制御されてい
る。メインCPU部1で実行される命令処理は完全にシ
−ケンシャルであり、従来からのシ−ケンシャルプログ
ラミング方式によって記述することができる。すなわ
ち、プログラマはメインCPU部1上のプログラムのみ
を記述すれば良いことがわかる。メインCPU部1は、
まずポイントP1,P2,P3,P4でそれぞれ各サブ
処理装置A,B,C,Dに対し対応するマクロ命令I
A,IB,IC、IDを指令する。各サブ処理装置A,
B,C,Dは、メインCPU部1からストア命令が指令
されるまで、メインCPU部1と並列に動作し続けるこ
とができる。まずサブ処理装置Aの処理が終了し、メイ
ンCPU部1はポイントP5で次のマクロ命令IAをサ
ブ処理装置Aに指令している。もし、先行するマクロ命
令の処理が終了していなくても、次に投入すべきマクロ
命令がストア命令SI以外のマクロ命令IXならば、先
行してサブ処理装置に投入しておくことができ、メイン
CPU部1は以前に指令したマクロ命令処理の終了を待
つ必要はない。ただし、この場合、先行して投入された
1つ以上のマクロ命令を、サブ処理装置内の処理ユニッ
トが実行を開始するまで一時的に蓄えておくための命令
キュ−等の命令ストレ−ジシステムを、サブ処理装置側
に設けておく。メインCPU部1は、ポイントP6で、
サブ処理装置Bに対し、ストア命令SBを指令し、サブ
処理装置Bの必要な結果デ−タのストア動作を要求す
る。本例では、サブ処理装置Bの先行するマクロ命令の
処理がポイントP6の時点で丁度終了しており、結果デ
−タが得られているため、直ちにストア命令SBがサブ
処理装置Bに受け付けられて直ちにストア動作SIが実
行され、ポイントP7のデ−タフェッチステ−トDでサ
ブ処理装置BはメインCPU部1の管理するデ−タバス
Datal1に結果デ−タを出力する。同様に、メイン
CPU部1は、ポイントP5ではサブ処理装置Aにマク
ロ命令IAを、ポイントP8ではサブ処理装置Cにマク
ロ命令ICを、ポイントP9ではサブ処理装置Dにマク
ロ命令IDを、ポイントP10ではサブ処理装置Bにマ
クロ命令IBを、ポイントP11ではサブ処理装置Cに
マクロ命令ICをそれぞれ指令している。ポイントP9
のIDを除いては指令した時刻にはすでに先行するマク
ロ命令の処理が終了しており、対象となるサブ処理装置
は処理を実行していない状態、すなわちアイドル状態
(図中---で表現)中に次のマクロ命令が投入されてい
る。このため、対象とするそれらのサブ処理装置は、そ
れらのマクロ命令を直ちに受け付け、直ちに実行を開始
している。ポイントP9におけるマクロ命令IDは、サ
ブ処理装置Dが依然として先行するマクロ命令の処理を
実行中であるため、前述した様に、ポイントP9におけ
るメインCPU部1からのマクロ命令IDは一度サブ処
理装置D内に設けられた命令キュ−システムに蓄えら
れ、先行するマクロ命令の処理が終了するポイントP1
3で、サブ処理装置Dはマクロ命令IDを前記命令キュ
−システムから取り出し、その処理を開始する。したが
って、メインCPU部1の処理の実行と、サブ処理装置
Dの処理の実行とは互いに干渉されることなく完全に並
列に動作している。
メインCPU部1によって実行される命令及びサブ処理
装置に対するマクロ命令がベ−スとなって制御されてい
る。メインCPU部1で実行される命令処理は完全にシ
−ケンシャルであり、従来からのシ−ケンシャルプログ
ラミング方式によって記述することができる。すなわ
ち、プログラマはメインCPU部1上のプログラムのみ
を記述すれば良いことがわかる。メインCPU部1は、
まずポイントP1,P2,P3,P4でそれぞれ各サブ
処理装置A,B,C,Dに対し対応するマクロ命令I
A,IB,IC、IDを指令する。各サブ処理装置A,
B,C,Dは、メインCPU部1からストア命令が指令
されるまで、メインCPU部1と並列に動作し続けるこ
とができる。まずサブ処理装置Aの処理が終了し、メイ
ンCPU部1はポイントP5で次のマクロ命令IAをサ
ブ処理装置Aに指令している。もし、先行するマクロ命
令の処理が終了していなくても、次に投入すべきマクロ
命令がストア命令SI以外のマクロ命令IXならば、先
行してサブ処理装置に投入しておくことができ、メイン
CPU部1は以前に指令したマクロ命令処理の終了を待
つ必要はない。ただし、この場合、先行して投入された
1つ以上のマクロ命令を、サブ処理装置内の処理ユニッ
トが実行を開始するまで一時的に蓄えておくための命令
キュ−等の命令ストレ−ジシステムを、サブ処理装置側
に設けておく。メインCPU部1は、ポイントP6で、
サブ処理装置Bに対し、ストア命令SBを指令し、サブ
処理装置Bの必要な結果デ−タのストア動作を要求す
る。本例では、サブ処理装置Bの先行するマクロ命令の
処理がポイントP6の時点で丁度終了しており、結果デ
−タが得られているため、直ちにストア命令SBがサブ
処理装置Bに受け付けられて直ちにストア動作SIが実
行され、ポイントP7のデ−タフェッチステ−トDでサ
ブ処理装置BはメインCPU部1の管理するデ−タバス
Datal1に結果デ−タを出力する。同様に、メイン
CPU部1は、ポイントP5ではサブ処理装置Aにマク
ロ命令IAを、ポイントP8ではサブ処理装置Cにマク
ロ命令ICを、ポイントP9ではサブ処理装置Dにマク
ロ命令IDを、ポイントP10ではサブ処理装置Bにマ
クロ命令IBを、ポイントP11ではサブ処理装置Cに
マクロ命令ICをそれぞれ指令している。ポイントP9
のIDを除いては指令した時刻にはすでに先行するマク
ロ命令の処理が終了しており、対象となるサブ処理装置
は処理を実行していない状態、すなわちアイドル状態
(図中---で表現)中に次のマクロ命令が投入されてい
る。このため、対象とするそれらのサブ処理装置は、そ
れらのマクロ命令を直ちに受け付け、直ちに実行を開始
している。ポイントP9におけるマクロ命令IDは、サ
ブ処理装置Dが依然として先行するマクロ命令の処理を
実行中であるため、前述した様に、ポイントP9におけ
るメインCPU部1からのマクロ命令IDは一度サブ処
理装置D内に設けられた命令キュ−システムに蓄えら
れ、先行するマクロ命令の処理が終了するポイントP1
3で、サブ処理装置Dはマクロ命令IDを前記命令キュ
−システムから取り出し、その処理を開始する。したが
って、メインCPU部1の処理の実行と、サブ処理装置
Dの処理の実行とは互いに干渉されることなく完全に並
列に動作している。
【0013】次に、サブ処理装置Aを基準処理装置とし
て、サブ処理装置A及びその管理下のサブ処理装置AA
及びABの動作シ−ケンスを追ってみる。まず、ポイン
トP1でメインCPU部1からサブ処理装置Aに対して
指令されたマクロ命令IAを受けて、サブ処理装置Aは
そのマクロ命令の実行を開始する。サブ処理装置Aはポ
イントP14及びP15で自身の管理下のサブ処理装置
AA及びABに対してそれぞれミクロ命令IAA及びI
ABを出力する。ポイントP1におけるマクロ命令IA
は、サブ処理装置Aからサブ処理装置AA,ABへのス
トア命令を含んでいないので、サブ処理装置AA,AB
におけるミクロ命令IAA,IABに対する処理が終了
するのを待たずしてサブ処理装置Aはマクロ命令IAに
対する処理を終了することができる。ポイントP5でメ
インCPU部1は次のマクロ命令IAをサブ処理装置A
に対し指令する。サブ処理装置Aは、その点アイドル状
態にあるため、そのマクロ命令IAを直ちに受け付ける
と同時に実行を開始する。サブ処理装置AはポイントP
16でサブ処理装置AAに、ポイントP17でサブ処理
装置ABに対しそれぞれミクロ命令IAA及びIABを
指令する。ポイントP18で、サブ処理装置Aはサブ処
理装置AAの結果デ−タが必要となるため、ストア命令
SAAをサブ処理装置AAに対し指令する。サブ処理装
置AAはその時点ですでに必要な処理を終了しているの
でストア命令SAAを直ちに実行し(SI)、結果デ−
タをポイントP19のデ−タフェッチステ−トDでデ−
タバスADatal4に出力し、サブ処理装置Aはその
デ−タを得て、P5におけるマクロ命令IAによって指
示されているメモリシステム(例えばレジスタファイ
ル)の適切なアドレスに記憶する。同様に、ポイントP
20で、サブ処理装置Aはサブ処理装置ABの結果デ−
タが必要となり、ストア命令SABをサブ処理装置AB
に対して指令する。その時点で、サブ処理装置ABはP
17で指令されたミクロ命令IABの最後の基本命令I
を実行中であり、まだ必要な前記結果デ−タを得ていな
い。そのため、ストア命令SABは直ちに実行されず、
サブ処理装置Aはストア命令SABのデ−タフェッチス
テ−トDでサブ処理装置ABの必要な処理が終了するま
で待ち状態(図中---で表現)となる。サブ処理装置A
Bは、ポイントP23でP17に対応するミクロ命令I
ABに関する必要な処理を終了し、前記ストア命令の実
行ステ−トSIで結果デ−タをADatal4に出力す
る。ポイントP24でその出力された結果デ−タがサブ
処理装置Aにフェッチされ、待たされていたデ−タフェ
ッチステ−トDは終了する。これらの動作と並列に、メ
インCPU部1は、ポイントP12でサブ処理装置Aに
対してストア命令SAを指令し、ポイントP5で指令し
たマクロ命令IAに対応する最終的な結果デ−タを要求
している。それが、ポイントP24でえられた前記結果
デ−タと同一のものであるとすると、サブ処理装置Aは
ポイントP21でそれを直接ハンドリングして、P12
で指令されたストア命令SAに対応したストア処理ステ
−トSIを実行する。これを、下位レベルのサブ処理装
置からのデ−タのダイレクトパスモ−ドと呼ぶ。ポイン
トP20におけるストア命令SABと同様、ポイントP
12におけるストア命令SAもその時点でサブ処理装置
Aの必要な処理が終了していないため、ポイントP12
のストア命令SAのデ−タフェッチステ−トDでメイン
CPU部1は一時的に待たされる。メインCPU部1
は、ポイントP22で必要な結果デ−タを得てデ−タフ
ェッチステ−トDを終了する。
て、サブ処理装置A及びその管理下のサブ処理装置AA
及びABの動作シ−ケンスを追ってみる。まず、ポイン
トP1でメインCPU部1からサブ処理装置Aに対して
指令されたマクロ命令IAを受けて、サブ処理装置Aは
そのマクロ命令の実行を開始する。サブ処理装置Aはポ
イントP14及びP15で自身の管理下のサブ処理装置
AA及びABに対してそれぞれミクロ命令IAA及びI
ABを出力する。ポイントP1におけるマクロ命令IA
は、サブ処理装置Aからサブ処理装置AA,ABへのス
トア命令を含んでいないので、サブ処理装置AA,AB
におけるミクロ命令IAA,IABに対する処理が終了
するのを待たずしてサブ処理装置Aはマクロ命令IAに
対する処理を終了することができる。ポイントP5でメ
インCPU部1は次のマクロ命令IAをサブ処理装置A
に対し指令する。サブ処理装置Aは、その点アイドル状
態にあるため、そのマクロ命令IAを直ちに受け付ける
と同時に実行を開始する。サブ処理装置AはポイントP
16でサブ処理装置AAに、ポイントP17でサブ処理
装置ABに対しそれぞれミクロ命令IAA及びIABを
指令する。ポイントP18で、サブ処理装置Aはサブ処
理装置AAの結果デ−タが必要となるため、ストア命令
SAAをサブ処理装置AAに対し指令する。サブ処理装
置AAはその時点ですでに必要な処理を終了しているの
でストア命令SAAを直ちに実行し(SI)、結果デ−
タをポイントP19のデ−タフェッチステ−トDでデ−
タバスADatal4に出力し、サブ処理装置Aはその
デ−タを得て、P5におけるマクロ命令IAによって指
示されているメモリシステム(例えばレジスタファイ
ル)の適切なアドレスに記憶する。同様に、ポイントP
20で、サブ処理装置Aはサブ処理装置ABの結果デ−
タが必要となり、ストア命令SABをサブ処理装置AB
に対して指令する。その時点で、サブ処理装置ABはP
17で指令されたミクロ命令IABの最後の基本命令I
を実行中であり、まだ必要な前記結果デ−タを得ていな
い。そのため、ストア命令SABは直ちに実行されず、
サブ処理装置Aはストア命令SABのデ−タフェッチス
テ−トDでサブ処理装置ABの必要な処理が終了するま
で待ち状態(図中---で表現)となる。サブ処理装置A
Bは、ポイントP23でP17に対応するミクロ命令I
ABに関する必要な処理を終了し、前記ストア命令の実
行ステ−トSIで結果デ−タをADatal4に出力す
る。ポイントP24でその出力された結果デ−タがサブ
処理装置Aにフェッチされ、待たされていたデ−タフェ
ッチステ−トDは終了する。これらの動作と並列に、メ
インCPU部1は、ポイントP12でサブ処理装置Aに
対してストア命令SAを指令し、ポイントP5で指令し
たマクロ命令IAに対応する最終的な結果デ−タを要求
している。それが、ポイントP24でえられた前記結果
デ−タと同一のものであるとすると、サブ処理装置Aは
ポイントP21でそれを直接ハンドリングして、P12
で指令されたストア命令SAに対応したストア処理ステ
−トSIを実行する。これを、下位レベルのサブ処理装
置からのデ−タのダイレクトパスモ−ドと呼ぶ。ポイン
トP20におけるストア命令SABと同様、ポイントP
12におけるストア命令SAもその時点でサブ処理装置
Aの必要な処理が終了していないため、ポイントP12
のストア命令SAのデ−タフェッチステ−トDでメイン
CPU部1は一時的に待たされる。メインCPU部1
は、ポイントP22で必要な結果デ−タを得てデ−タフ
ェッチステ−トDを終了する。
【0014】上記方式による中央演算処理内並列処理を
階層並列処理方式と呼ぶ。本方式による利点をまとめて
おく。
階層並列処理方式と呼ぶ。本方式による利点をまとめて
おく。
【0015】(1)あるレベル(階層)に存在する処理
装置がそれより下位レベルに存在する様々なサブ処理装
置に対して、命令(ストア命令以外)及びその命令に必
要なデ−タを次々に出力していく場合、前記処理装置か
ストア命令をサブ処理装置に指令するまでそのサブ処理
装置との同期処理(処理間のリレ−ションに矛盾が生じ
ない様に、処理装置間で待ち合わせる処理)を行う必要
がない。
装置がそれより下位レベルに存在する様々なサブ処理装
置に対して、命令(ストア命令以外)及びその命令に必
要なデ−タを次々に出力していく場合、前記処理装置か
ストア命令をサブ処理装置に指令するまでそのサブ処理
装置との同期処理(処理間のリレ−ションに矛盾が生じ
ない様に、処理装置間で待ち合わせる処理)を行う必要
がない。
【0016】(2)ストア命令の出力を、できるだけ後
の時刻にずらしていく、すなわち、サブ処理装置からの
必要なデ−タのストア処理を、そのデ−タが実際に必要
となるまで遅らせるコンパイル上の最適化によって、容
易に、処理装置間の並列処理動作の効率をより最適化す
ることができる。
の時刻にずらしていく、すなわち、サブ処理装置からの
必要なデ−タのストア処理を、そのデ−タが実際に必要
となるまで遅らせるコンパイル上の最適化によって、容
易に、処理装置間の並列処理動作の効率をより最適化す
ることができる。
【0017】(3)メインCPU部又はサブ処理装置の
下に、同じア−キテクチャで新たなサブ処理を追加して
いくことによって、容易に処理能力・処理機能を追加し
ていくことができる。
下に、同じア−キテクチャで新たなサブ処理を追加して
いくことによって、容易に処理能力・処理機能を追加し
ていくことができる。
【0018】次に、図1のサブ処理装置A2aを用い
て、一般的なサブ処理装置のア−キテクチャについて説
明する。
て、一般的なサブ処理装置のア−キテクチャについて説
明する。
【0019】サブ処理装置A2aは、例えば浮動小数点
数値処理を実行するFPU(Flooting point operation
Processing Unit)の様な、メインCPU部1の処理機
能の一部を代行するコプロセッサとする。サブ処理装置
A2a内は、前述したC,I,Dの外部との各インタ−
フェ−スから成るインタ−フェ−スユニット200、レ
ジスタファイル202、実行ユニットE201、ストア
ユニットSTR203及びスタックレジスタファイル2
04から構成されている。インタ−フェ−スユニット2
00は、メインCPU部1からのマクロ命令及びデ−タ
を受信する。もし、先行する命令の実行処理が終了して
いない場合、前記の新たなマクロ命令及びデ−タは、一
時的にインタ−フェ−スユニット200内の命令キュ−
及びデ−タキュ−等のテンポラリストレ−ジに蓄えられ
る。実行ユニットE201は、レジスタファイル202
内のレジスタを対象とした演算及び操作、又はレジスタ
ファイル202内のレジスタとインタ−フェ−スユニッ
トによって受信したメインCPU部1からのデ−タを用
いた演算及び操作を行う。ストアユニットSTR203
は、メインCPU部1からのストア命令の指令に呼応し
て、レジスタファイル上の指定されたレジスタの内容を
メインCPU部1の対応するバスサイクルで、入出力イ
ンタ−フェ−スDよりデ−タバスDatal1に出力す
る機能を有する。この際、ストアユニットSTR203
は、すでにメインCPU部1から指令されていて、イン
タ−フェ−スユニット200内のテンポラリストレ−ジ
に一時的に蓄えられている先行するマクロ命令の中で、
少なくとも、前記ストア命令で指定された対象レジスタ
を、そのマクロ命令の処理結果をロ−ドするために使用
するデスティネ−ションレジスタとして指定する命令
(マクロ命令)が存在していれば、メインCPU部1か
らの前記ストア命令に対するレディ信号(アクティブな
場合、そのストア命令の処理が終了したことを示す制御
信号)を、サブ処理装置A2aのインタ−フェ−ス部C
が一時的に非アクティブに固定することによってメイン
CPU部1を待たせる方式の同期処理を行い、メインC
PU部1とサブ処理装置A2aとの間で同期をとる。こ
れにより、各処理装置間のデ−タの処理順序に矛盾を生
じない様にし、メインCPU部1上に記述されている処
理シ−ケンスをシ−ケンシャルに実行することができ
る。前記条件が解除された時、すなわち先行するマクロ
命令の中で、ストア命令により指示されたレジスタをデ
スティネ−ションレジスタとして使用するマクロ命令の
処理が全て終了したとき、レディ信号がアクティブ状態
に転じ、メインCPU部1は次の実行動作に移行する。
スタックレジスタファイル204はサブ処理装置内A内
のメモリユニットであり、メインCPU部1の実行する
シ−ケンサの中でタスクスイッチが生じた場合、レジス
タファイルの内容をコピ−してスタックしていく機能
や、メインCPU部12aからの外部デ−タの代りにス
タックレジスタファイル204のデ−タを用いて、実行
ユニットE201が演算及び操作を実行する機能等を有
する。また、スタックレジスタファイル204は、メイ
ンCPU部1からメモリリソ−スの1つとしてアクセス
できる。すなわち、メインCPU部1のロ−カルメモリ
と同等にアクセスすることができる。また、記述したよ
うに、サブ処理装置A2aは、より下位レベルのサブ処
理装置と通信するためのバスインタ−フェ−スチャネル
プロトコルAData,AADDR,ACONTを有す
る。
数値処理を実行するFPU(Flooting point operation
Processing Unit)の様な、メインCPU部1の処理機
能の一部を代行するコプロセッサとする。サブ処理装置
A2a内は、前述したC,I,Dの外部との各インタ−
フェ−スから成るインタ−フェ−スユニット200、レ
ジスタファイル202、実行ユニットE201、ストア
ユニットSTR203及びスタックレジスタファイル2
04から構成されている。インタ−フェ−スユニット2
00は、メインCPU部1からのマクロ命令及びデ−タ
を受信する。もし、先行する命令の実行処理が終了して
いない場合、前記の新たなマクロ命令及びデ−タは、一
時的にインタ−フェ−スユニット200内の命令キュ−
及びデ−タキュ−等のテンポラリストレ−ジに蓄えられ
る。実行ユニットE201は、レジスタファイル202
内のレジスタを対象とした演算及び操作、又はレジスタ
ファイル202内のレジスタとインタ−フェ−スユニッ
トによって受信したメインCPU部1からのデ−タを用
いた演算及び操作を行う。ストアユニットSTR203
は、メインCPU部1からのストア命令の指令に呼応し
て、レジスタファイル上の指定されたレジスタの内容を
メインCPU部1の対応するバスサイクルで、入出力イ
ンタ−フェ−スDよりデ−タバスDatal1に出力す
る機能を有する。この際、ストアユニットSTR203
は、すでにメインCPU部1から指令されていて、イン
タ−フェ−スユニット200内のテンポラリストレ−ジ
に一時的に蓄えられている先行するマクロ命令の中で、
少なくとも、前記ストア命令で指定された対象レジスタ
を、そのマクロ命令の処理結果をロ−ドするために使用
するデスティネ−ションレジスタとして指定する命令
(マクロ命令)が存在していれば、メインCPU部1か
らの前記ストア命令に対するレディ信号(アクティブな
場合、そのストア命令の処理が終了したことを示す制御
信号)を、サブ処理装置A2aのインタ−フェ−ス部C
が一時的に非アクティブに固定することによってメイン
CPU部1を待たせる方式の同期処理を行い、メインC
PU部1とサブ処理装置A2aとの間で同期をとる。こ
れにより、各処理装置間のデ−タの処理順序に矛盾を生
じない様にし、メインCPU部1上に記述されている処
理シ−ケンスをシ−ケンシャルに実行することができ
る。前記条件が解除された時、すなわち先行するマクロ
命令の中で、ストア命令により指示されたレジスタをデ
スティネ−ションレジスタとして使用するマクロ命令の
処理が全て終了したとき、レディ信号がアクティブ状態
に転じ、メインCPU部1は次の実行動作に移行する。
スタックレジスタファイル204はサブ処理装置内A内
のメモリユニットであり、メインCPU部1の実行する
シ−ケンサの中でタスクスイッチが生じた場合、レジス
タファイルの内容をコピ−してスタックしていく機能
や、メインCPU部12aからの外部デ−タの代りにス
タックレジスタファイル204のデ−タを用いて、実行
ユニットE201が演算及び操作を実行する機能等を有
する。また、スタックレジスタファイル204は、メイ
ンCPU部1からメモリリソ−スの1つとしてアクセス
できる。すなわち、メインCPU部1のロ−カルメモリ
と同等にアクセスすることができる。また、記述したよ
うに、サブ処理装置A2aは、より下位レベルのサブ処
理装置と通信するためのバスインタ−フェ−スチャネル
プロトコルAData,AADDR,ACONTを有す
る。
【0020】次に、ある階層レベルに存在する処理装置
と、その処理装置の管理下に接続される1レベル下位の
階層のサブ処理装置との間の結合方式について、図1に
示した方式以外のものを挙げ、特徴及び効果を説明す
る。
と、その処理装置の管理下に接続される1レベル下位の
階層のサブ処理装置との間の結合方式について、図1に
示した方式以外のものを挙げ、特徴及び効果を説明す
る。
【0021】図3は、図1の例において、アドレスバス
ADDRl3で代用していた命令バスIとコントロ−ル
バスCONTlで代用されているサブ処理装置を制御す
るための制御バス(各サブ処理装置の入力インタ−フェ
−スCに入力されている)とを分離し、メインCPU部
1にサブ処理装置用の命令バスSINSTSl3と制御
バスSCONTSl2を特別に設けた実施例である。本
方式は、以下の特徴と効果を有する。
ADDRl3で代用していた命令バスIとコントロ−ル
バスCONTlで代用されているサブ処理装置を制御す
るための制御バス(各サブ処理装置の入力インタ−フェ
−スCに入力されている)とを分離し、メインCPU部
1にサブ処理装置用の命令バスSINSTSl3と制御
バスSCONTSl2を特別に設けた実施例である。本
方式は、以下の特徴と効果を有する。
【0022】(1)アドレスバスADDRl3によるア
ドレス指定を伴うメインリソ−ス3へのメインCPU部
1のアクセスと、サブ処理装置A,Bへの任意のマクロ
命令の指令及びサブ処理装置A,Bでの処理の実行とを
並列化することができる。図1の例では、アドレスバス
ADDRl3の一部をマクロ命令を指定するための命令
バスとして用いているため、ランダムなアドレスに配置
されているメインリソ−ス3上のデ−タにアドレスバス
ADDRl3を用いてアクセスした場合、同時にマクロ
命令の指令ができなくなるため、そのアクセス対象とな
ったデ−タ1つ1つに対してそのアクセスと並行に、任
意のマクロ命令による演算処理の指示を行い、サブ処理
装置メインCPU部1のメインリソ−ス3への前記アク
セス動作と並列に動作させることが困難である(実行す
るマクロ命令の種類が1つに限定されていれば、事前に
そのマクロ命令をサブ処理装置に指定しておくことによ
り、並列動作が可能となる)。(2)事前にサブ処理装
置に指示するマクロ命令がメインCPU部1にわかって
いる場合、すなわちメインCPU部1内のメモリにその
シ−ケンスが記憶されているか又はメインCPU部1が
そのシ−ケンスを外部から事前にプリフェッチしておい
て内部の命令キュ−等のストレ−ジバッファに蓄えてい
る場合、メインCPU部1の動作とそのサブ処理装置の
動作の大部分を並列化することができる。特に、メイン
リソ−ス3上のデ−タをサブ処理装置が利用しない場合
(サブ処理装置内のレジスタファイルがスタックレジス
タファイル上のデ−タのみで処理を実行できる場合)、
メインCPU部1の動作とそのサブ処理装置の動作を完
全に並列化できる。
ドレス指定を伴うメインリソ−ス3へのメインCPU部
1のアクセスと、サブ処理装置A,Bへの任意のマクロ
命令の指令及びサブ処理装置A,Bでの処理の実行とを
並列化することができる。図1の例では、アドレスバス
ADDRl3の一部をマクロ命令を指定するための命令
バスとして用いているため、ランダムなアドレスに配置
されているメインリソ−ス3上のデ−タにアドレスバス
ADDRl3を用いてアクセスした場合、同時にマクロ
命令の指令ができなくなるため、そのアクセス対象とな
ったデ−タ1つ1つに対してそのアクセスと並行に、任
意のマクロ命令による演算処理の指示を行い、サブ処理
装置メインCPU部1のメインリソ−ス3への前記アク
セス動作と並列に動作させることが困難である(実行す
るマクロ命令の種類が1つに限定されていれば、事前に
そのマクロ命令をサブ処理装置に指定しておくことによ
り、並列動作が可能となる)。(2)事前にサブ処理装
置に指示するマクロ命令がメインCPU部1にわかって
いる場合、すなわちメインCPU部1内のメモリにその
シ−ケンスが記憶されているか又はメインCPU部1が
そのシ−ケンスを外部から事前にプリフェッチしておい
て内部の命令キュ−等のストレ−ジバッファに蓄えてい
る場合、メインCPU部1の動作とそのサブ処理装置の
動作の大部分を並列化することができる。特に、メイン
リソ−ス3上のデ−タをサブ処理装置が利用しない場合
(サブ処理装置内のレジスタファイルがスタックレジス
タファイル上のデ−タのみで処理を実行できる場合)、
メインCPU部1の動作とそのサブ処理装置の動作を完
全に並列化できる。
【0023】図4は、デ−タバスDatal1に直接サ
ブ処理装置A,Bを接続するのではなく、図3の例に加
えてさらに、独立したサブ処理装置用のデ−タバスSD
atasl1を設けてそこにサブ処理装置A,Bのデ−
タ入出力インタ−フェ−スDを接続した実施例である。
本実施例は以下に示す特徴及び効果を有する。
ブ処理装置A,Bを接続するのではなく、図3の例に加
えてさらに、独立したサブ処理装置用のデ−タバスSD
atasl1を設けてそこにサブ処理装置A,Bのデ−
タ入出力インタ−フェ−スDを接続した実施例である。
本実施例は以下に示す特徴及び効果を有する。
【0024】(1)メインCPU部1によるメインリソ
−ス3へのアクセスとサブ処理装置A,Bへのマクロ命
令の指示とを並列化できる点は、図3の場合と同様であ
る。ただし、サブ処理装置A,Bでの処理に関連したメ
インリソ−ス3上のデ−タはメインCPU部1を介して
ハンドリングされ、サブ処理装置とメインリソ−ス3と
の間でやりとりされる。
−ス3へのアクセスとサブ処理装置A,Bへのマクロ命
令の指示とを並列化できる点は、図3の場合と同様であ
る。ただし、サブ処理装置A,Bでの処理に関連したメ
インリソ−ス3上のデ−タはメインCPU部1を介して
ハンドリングされ、サブ処理装置とメインリソ−ス3と
の間でやりとりされる。
【0025】(2)図3の実施例の(2)の特徴・効果
の他に、サブリソ−ス3aをサブ処理装置用のバスシス
テムSl(SINST,SCONT,SData)上に
設けることによって、メインリソ−ス3をアクセスしな
くてもサブリソ−ス3a上のデ−タを用いてサブ処理装
置にて実行する処理が実現できるようにしておくことに
より、メインCPU部1の動作とサブ処理装置の動作と
が完全に並列動作できる時間を大幅に長くすることがで
きる。
の他に、サブリソ−ス3aをサブ処理装置用のバスシス
テムSl(SINST,SCONT,SData)上に
設けることによって、メインリソ−ス3をアクセスしな
くてもサブリソ−ス3a上のデ−タを用いてサブ処理装
置にて実行する処理が実現できるようにしておくことに
より、メインCPU部1の動作とサブ処理装置の動作と
が完全に並列動作できる時間を大幅に長くすることがで
きる。
【0026】次にサブ処理装置内の並列処理について述
べる。
べる。
【0027】前述した様にサブ処理装置は、メインCP
U部1からみるとマクロ命令として定義された1つ以上
の機能を実行するコプロセッサとして観測される。各機
能の実行方法は、サブ処理装置側で自由に決定でき、結
果的にストア命令がメインCPU部1から指令されたと
きに必要な結果デ−タがメインCPU部1側へ受け渡さ
れるという条件さえ満たされれば、メインCPU部1上
で実行される全体のシ−ケンスには一切矛盾を生じな
い。従って、サブ処理装置の構成法及び処理方式につい
ては以下の特徴及び柔軟性がある。
U部1からみるとマクロ命令として定義された1つ以上
の機能を実行するコプロセッサとして観測される。各機
能の実行方法は、サブ処理装置側で自由に決定でき、結
果的にストア命令がメインCPU部1から指令されたと
きに必要な結果デ−タがメインCPU部1側へ受け渡さ
れるという条件さえ満たされれば、メインCPU部1上
で実行される全体のシ−ケンスには一切矛盾を生じな
い。従って、サブ処理装置の構成法及び処理方式につい
ては以下の特徴及び柔軟性がある。
【0028】(1)サブ処理装置の下位レベルにさらな
るサブ処理装置を設けて、前述した様な階層型並列処理
を実現でき、機能性能の向上を図ることができる。
るサブ処理装置を設けて、前述した様な階層型並列処理
を実現でき、機能性能の向上を図ることができる。
【0029】(2)サブ処理装置内で、上位レベルから
得た命令(例えばマクロ命令、ミクロ命令)をさらに小
さな基本命令に分解し、それら基本命令間で並列処理を
行うことにより、処理性能をさらに向上させることがで
きる。
得た命令(例えばマクロ命令、ミクロ命令)をさらに小
さな基本命令に分解し、それら基本命令間で並列処理を
行うことにより、処理性能をさらに向上させることがで
きる。
【0030】本発明の並列処理型中央演算処理装置の並
列方式の点からみた従来の処理装置に対する絶対的なメ
リットを次に示す。
列方式の点からみた従来の処理装置に対する絶対的なメ
リットを次に示す。
【0031】(1)マクロ命令化により、複数の基本オ
ペレ−ションを1マシン命令語として表現できるため、
従来の中央演算処理装置に比べて非常に少ないビット数
で命令デ−タを構成できる。命令のフェッチ動作はメイ
ンCPU部の扱うデ−タ量の半分以上を扱い、メインC
PU部にとって非常に高負荷である。この事は、メイン
CPU部がフェッチすべき全体のデ−タ量を従来のシス
テムに比べて非常に少なくでき、その分処理速度の向上
を図ることができる。
ペレ−ションを1マシン命令語として表現できるため、
従来の中央演算処理装置に比べて非常に少ないビット数
で命令デ−タを構成できる。命令のフェッチ動作はメイ
ンCPU部の扱うデ−タ量の半分以上を扱い、メインC
PU部にとって非常に高負荷である。この事は、メイン
CPU部がフェッチすべき全体のデ−タ量を従来のシス
テムに比べて非常に少なくでき、その分処理速度の向上
を図ることができる。
【0032】(2)サブ処理装置内の性能向上(例えば
サブ処理装置内で並列処理を行う)がメインCPU部の
ア−キテクチャに影響を与えることなく実施でき、将来
の性能改善に有利。
サブ処理装置内で並列処理を行う)がメインCPU部の
ア−キテクチャに影響を与えることなく実施でき、将来
の性能改善に有利。
【0033】(3)メインCPU部の処理能力の許容す
る範囲で、サブ処理装置の数を自在に増やすことがで
き、結合機能の向上及びサブ処理装置間並列処理による
処理能力の向上を容易に行うことができる。
る範囲で、サブ処理装置の数を自在に増やすことがで
き、結合機能の向上及びサブ処理装置間並列処理による
処理能力の向上を容易に行うことができる。
【0034】(4)メインCPU部も、命令バスを別に
用意する(図3、図4の実施例)ことにより、プログラ
ムのシ−ケンスに矛盾をきたさず、結果デ−タが正しく
得られる範囲で、メインCPU部からサブ処理装置への
マクロ命令指令操作とメインCPU部におけるメインC
PU部のみで実行可能な命令処理とを並列に処理するこ
とができる。
用意する(図3、図4の実施例)ことにより、プログラ
ムのシ−ケンスに矛盾をきたさず、結果デ−タが正しく
得られる範囲で、メインCPU部からサブ処理装置への
マクロ命令指令操作とメインCPU部におけるメインC
PU部のみで実行可能な命令処理とを並列に処理するこ
とができる。
【0035】図5は、本発明の階層並列処理型中央演算
処理装置における、並列処理構造をまとめたものであ
る。メインCPU部は、図3、図4に示した様な専用の
インストラクションバスを有するSl3を有し、サブ処
理装置に対して、自身で実行する命令処理(I)と並列
に、マクロ命令(MI)を出力することができる。メイ
ンCPU部は、下位レベルにサブ処理装置Aとサブ処理
装置Bを有し、メインCPU部からのマクロ命令MI
A,MIBにそれぞれ呼応して動作する。サブ処理装置
Aは、さらにその下位レベルにサブ処理装置AAを有
し、サブ処理装置Aからのミクロ命令MIAAに呼応し
て動作する。各サブ処理装置は、上位からのマクロ命令
MIA,MIB又はミクロ命令MIAAを受けると、そ
れらをよりプリミティブな処理単位である基本命令BI
に分解し、実行ユニットにより処理する。すでに説明し
た様に、サブ処理装置Aは、より下位のサブ処理装置A
Aと階層並列処理動作を行う。サブ処理装置Bは自身の
内部に複数の実行ユニットを有し、その間で基本命令B
Iを分担して、並列に処理する機能を有する。上位から
指令されたマクロ命令は、1つの機能としてその処理ア
ルゴリズムが規定されているものであれば、そのマクロ
命令を構成する基本命令またはミクロ命令間の並列性は
予め明白であり、その並列性を最大に引き出せるような
サブ処理装置内の処理構造を設計段階で規定することが
でき、性能を向上させることができる。逆に基本命令の
レベルで並列処理性の高い機能をマクロ命令として規定
すれば、より効果的な並列動作が期待できる。
処理装置における、並列処理構造をまとめたものであ
る。メインCPU部は、図3、図4に示した様な専用の
インストラクションバスを有するSl3を有し、サブ処
理装置に対して、自身で実行する命令処理(I)と並列
に、マクロ命令(MI)を出力することができる。メイ
ンCPU部は、下位レベルにサブ処理装置Aとサブ処理
装置Bを有し、メインCPU部からのマクロ命令MI
A,MIBにそれぞれ呼応して動作する。サブ処理装置
Aは、さらにその下位レベルにサブ処理装置AAを有
し、サブ処理装置Aからのミクロ命令MIAAに呼応し
て動作する。各サブ処理装置は、上位からのマクロ命令
MIA,MIB又はミクロ命令MIAAを受けると、そ
れらをよりプリミティブな処理単位である基本命令BI
に分解し、実行ユニットにより処理する。すでに説明し
た様に、サブ処理装置Aは、より下位のサブ処理装置A
Aと階層並列処理動作を行う。サブ処理装置Bは自身の
内部に複数の実行ユニットを有し、その間で基本命令B
Iを分担して、並列に処理する機能を有する。上位から
指令されたマクロ命令は、1つの機能としてその処理ア
ルゴリズムが規定されているものであれば、そのマクロ
命令を構成する基本命令またはミクロ命令間の並列性は
予め明白であり、その並列性を最大に引き出せるような
サブ処理装置内の処理構造を設計段階で規定することが
でき、性能を向上させることができる。逆に基本命令の
レベルで並列処理性の高い機能をマクロ命令として規定
すれば、より効果的な並列動作が期待できる。
【0036】
【発明の効果】本発明には以下の効果がある。
【0037】 あるレベル(階層)に存在する処理装
置がそれより下位レベルに存在する様々なサブ処理装置
に対して、命令(ストア命令以外)及びその命令に必要
なデ−タを次々に出力していく場合、前記処理装置かス
トア命令をサブ処理装置に指令するまでそのサブ処理装
置との同期処理(処理間のリレ−ションに矛盾が生じな
い様に、処理装置間で待ち合わせる処理)を行う必要が
ない。
置がそれより下位レベルに存在する様々なサブ処理装置
に対して、命令(ストア命令以外)及びその命令に必要
なデ−タを次々に出力していく場合、前記処理装置かス
トア命令をサブ処理装置に指令するまでそのサブ処理装
置との同期処理(処理間のリレ−ションに矛盾が生じな
い様に、処理装置間で待ち合わせる処理)を行う必要が
ない。
【0038】 ストア命令の出力を、できるだけ後の
時刻にずらしていく、すなわち、サブ処理装置からの必
要なデ−タのストア処理を、そのデ−タが実際に必要と
なるまで遅らせるコンパイル上の最適化によって、容易
に、処理装置間の並列処理動作の効率をより最適化する
ことができる。
時刻にずらしていく、すなわち、サブ処理装置からの必
要なデ−タのストア処理を、そのデ−タが実際に必要と
なるまで遅らせるコンパイル上の最適化によって、容易
に、処理装置間の並列処理動作の効率をより最適化する
ことができる。
【0039】 メインCPU部又はサブ処理装置の下
に、同じア−キテクチャで新たなサブ処理を追加してい
くことによって、容易に処理能力・処理機能を追加して
いくことができる。
に、同じア−キテクチャで新たなサブ処理を追加してい
くことによって、容易に処理能力・処理機能を追加して
いくことができる。
【0040】 サブ処理装置の下位レベルにさらなる
サブ処理装置を設けて、前述した様な階層型並列処理を
実現でき、機能性能の向上を図ることができる。
サブ処理装置を設けて、前述した様な階層型並列処理を
実現でき、機能性能の向上を図ることができる。
【0041】 サブ処理装置内で、上位レベルから得
た命令(例えばマクロ命令、ミクロ命令)をさらに小さ
な基本命令に分解し、それら基本命令間で並列処理を行
うことにより、処理性能をさらに向上させることができ
る。
た命令(例えばマクロ命令、ミクロ命令)をさらに小さ
な基本命令に分解し、それら基本命令間で並列処理を行
うことにより、処理性能をさらに向上させることができ
る。
【0042】 マクロ命令化により、複数の基本オペ
レ−ションを1マシン命令語として表現できるため、従
来の中央演算処理装置に比べて非常に少ないビット数で
命令デ−タを構成できる。命令のフェッチ動作はメイン
CPU部の扱うデ−タ量の半分以上を扱い、メインCP
U部にとって非常に高負荷である。この事は、メインC
PU部がフェッチすべき全体のデ−タ量を従来のシステ
ムに比べて非常に少なくでき、その分処理速度の向上を
図ることができる。
レ−ションを1マシン命令語として表現できるため、従
来の中央演算処理装置に比べて非常に少ないビット数で
命令デ−タを構成できる。命令のフェッチ動作はメイン
CPU部の扱うデ−タ量の半分以上を扱い、メインCP
U部にとって非常に高負荷である。この事は、メインC
PU部がフェッチすべき全体のデ−タ量を従来のシステ
ムに比べて非常に少なくでき、その分処理速度の向上を
図ることができる。
【0043】 サブ処理装置内の性能向上(例えばサ
ブ処理装置内で並列処理を行う)がメインCPU部のア
−キテクチャに影響を与えることなく実施でき、将来の
性能改善に有利。
ブ処理装置内で並列処理を行う)がメインCPU部のア
−キテクチャに影響を与えることなく実施でき、将来の
性能改善に有利。
【0044】 メインCPU部の処理能力の許容する
範囲で、サブ処理装置の数を自在に増やすことができ、
結合機能の向上及びサブ処理装置間並列処理による処理
能力の向上を容易に行うことができる。
範囲で、サブ処理装置の数を自在に増やすことができ、
結合機能の向上及びサブ処理装置間並列処理による処理
能力の向上を容易に行うことができる。
【0045】 メインCPU部も、命令バスを別に用
意する(図3,図4の実施例)ことにより、プログラム
のシーケンスに矛盾をきたさず、結果データが正しく得
られる範囲で、メインCPU部からサブ処理装置へのマ
クロ命令指令操作とメインCPU部におけるメインCPU
部のみで実行可能な命令処理とを並列に処理することが
できる。
意する(図3,図4の実施例)ことにより、プログラム
のシーケンスに矛盾をきたさず、結果データが正しく得
られる範囲で、メインCPU部からサブ処理装置へのマ
クロ命令指令操作とメインCPU部におけるメインCPU
部のみで実行可能な命令処理とを並列に処理することが
できる。
【図1】並列処理方式中央演算処理装置のハードウエア
ブロック図
ブロック図
【図2】本発明の動作シーケンスの一例を説明する図
【図3】サブ処理装置への専用インストラクションバス
とコントロールバスを有するメインCPU部を示す図
とコントロールバスを有するメインCPU部を示す図
【図4】サブ処理装置への専用インストラクションバス
とコントローラバス及びデータバスを有するメインCP
U部の例
とコントローラバス及びデータバスを有するメインCP
U部の例
【図5】本システムの階層並列処理を示す図
1…メインCPU部、2…サブ処理装置、3…メインリ
ソース、200…入出力インターフェース、202…レ
ジスタファイル、203…ストア処理回路、204…ス
タックレジスタファイル
ソース、200…入出力インターフェース、202…レ
ジスタファイル、203…ストア処理回路、204…ス
タックレジスタファイル
Claims (7)
- 【請求項1】シ−ケンシャルに記述された命令列を実行
する機能を有するメインCPU部と、前記メインCPU
部からアクセス可能なメインリソ−スと、メインCPU
部からのマクロ命令の指令によりその指令に応じた処理
を実行する機能とストア命令の指令によりそれ以前に指
令された前記マクロ命令の実行結果をメインCPU部の
対応するバスサイクルに呼応して出力する機能とを有す
るサブ処理装置とを有し、前記マクロ命令は前記サブ処
理装置内のメモリ手段に保持するデ−タか又は前記メイ
ンCPU部によるマクロ命令の指令時にオペランドデ−
タとして引き渡されたデ−タを用いて前記サブ処理シス
テムに処理を実行させる情報を含み、前記ストア命令に
は前記サブ処理システム内のメモリ手段に保持されてい
る目的のデ−タを指定すると共に、ストア命令の指令時
に生成されるメインCPU部のストアバスサイクルに呼
応して前記目的のデ−タを出力させる情報を含み、前記
ストア命令を実行する機能には前記目的とするデ−タが
存在するメモリ手段が先行して指令されているマクロ命
令の実行に伴って変更される場合にその変更が終了する
まで前記メインCPU部の前記ストアバスサイクルを延
長する待ち信号を出力してメインCPU部を待たせる手
段を有することを特徴とする階層並列処理型中央処理装
置。 - 【請求項2】請求項1の中央処理装置において、前記マ
クロ命令は、複数の基本命令から構成されることを特徴
とする階層並列処理型中央処理装置。 - 【請求項3】請求項1の中央処理装置において、前記サ
ブ処理装置はさらにその下位レベルに第二のサブ処理装
置を有し、請求項1のメインCPU部に相当する機能を
前記サブ処理装置が担当し、請求項1のサブ処理装置に
相当する機能を前記第二のサブ処理装置が担当すること
を特徴とする階層並列処理型中央処理装置。 - 【請求項4】請求項1の中央処理装置は、複数のサブ処
理装置を有し、それらが階層並列動作することを特徴と
する階層並列処理型中央処理装置。 - 【請求項5】請求項1記載の中央処理装置は、前記サブ
処理装置内にマクロ命令を解読し、そのマクロ命令を構
成するより小さな基本命令に分解するデュ−ド手段と、
その基本命令を実行する実行ユニットと、分解された前
記基本命令を処理を正しく実行するために決められたシ
−ケンスに従って実行ユニットに与えるシ−ケンス制御
手段とを有することを特徴とする階層並列処理型中央処
理装置。 - 【請求項6】請求項5の中央処理装置は、そのサブ処理
装置内に複数の実行ユニットを有し、分解された基本命
令を並列に処理することを特徴とする階層並列処理型中
央処理装置。 - 【請求項7】請求項1の中央処理装置は、メインCPU
部に、サブ処理装置に対してマクロ命令を生成するため
の専用の命令バスを有することを特徴とする階層並列処
理型中央処理装置。
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3162631A JP2884831B2 (ja) | 1991-07-03 | 1991-07-03 | 処理装置 |
| EP92111156A EP0521486B1 (en) | 1991-07-03 | 1992-07-01 | Hierarchical structure processor |
| DE69230118T DE69230118T2 (de) | 1991-07-03 | 1992-07-01 | Prozessor mit hierarchischer Struktur |
| US08/405,925 US5530889A (en) | 1991-07-03 | 1995-03-16 | Hierarchical structure processor having at least one sub-sequencer for executing basic instructions of a macro instruction |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3162631A JP2884831B2 (ja) | 1991-07-03 | 1991-07-03 | 処理装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH06131181A true JPH06131181A (ja) | 1994-05-13 |
| JP2884831B2 JP2884831B2 (ja) | 1999-04-19 |
Family
ID=15758283
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3162631A Expired - Fee Related JP2884831B2 (ja) | 1991-07-03 | 1991-07-03 | 処理装置 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5530889A (ja) |
| EP (1) | EP0521486B1 (ja) |
| JP (1) | JP2884831B2 (ja) |
| DE (1) | DE69230118T2 (ja) |
Families Citing this family (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CA2137488C (en) * | 1994-02-18 | 1998-09-29 | Richard I. Baum | Coexecuting method and means for performing parallel processing in conventional types of data processing systems |
| US5752071A (en) * | 1995-07-17 | 1998-05-12 | Intel Corporation | Function coprocessor |
| US5987602A (en) * | 1997-05-06 | 1999-11-16 | Microsoft Corporation | Parameterless language in a machine for implementation thereof |
| US6496926B1 (en) * | 1997-05-06 | 2002-12-17 | Microsoft Corporation | Computer-implemented paramaterless language with exception handler |
| US6216218B1 (en) | 1997-11-03 | 2001-04-10 | Donald L. Sollars | Processor having a datapath and control logic constituted with basis execution blocks |
| US6016539A (en) * | 1997-11-03 | 2000-01-18 | Teragen Corporation | Datapath control logic for processors having instruction set architectures implemented with hierarchically organized primitive operations |
| US6237083B1 (en) | 1998-02-13 | 2001-05-22 | Advanced Micro Devices, Inc. | Microprocessor including multiple register files mapped to the same logical storage and inhibiting sychronization between the register files responsive to inclusion of an instruction in an instruction sequence |
| US6317820B1 (en) * | 1998-06-05 | 2001-11-13 | Texas Instruments Incorporated | Dual-mode VLIW architecture providing a software-controlled varying mix of instruction-level and task-level parallelism |
| WO2001077818A2 (en) * | 2000-04-05 | 2001-10-18 | Infineon Technologies North America Corp. | Method for predicting the instruction execution latency of a de-coupled configurable co-processor |
| JP4699685B2 (ja) | 2003-08-21 | 2011-06-15 | パナソニック株式会社 | 信号処理装置及びそれを用いた電子機器 |
| EP2278452A1 (en) * | 2009-07-15 | 2011-01-26 | Nxp B.V. | Coprocessor programming |
| JP2010055629A (ja) * | 2009-11-30 | 2010-03-11 | Panasonic Corp | 画像音声信号処理装置及びそれを用いた電子機器 |
| DE102018201417A1 (de) | 2018-01-30 | 2019-08-01 | Volkswagen Aktiengesellschaft | Verfahren zum Bereitstellen verifizierter Informationen über ein Verkehrszeichen, Verkehrszeichenanlage sowie Verfahren für ein Navigationssystem zur Verifikation eines Verkehrszeichens |
Family Cites Families (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4750110A (en) * | 1983-04-18 | 1988-06-07 | Motorola, Inc. | Method and apparatus for executing an instruction contingent upon a condition present in another data processor |
| EP0525831B1 (en) * | 1983-04-18 | 1998-07-01 | Motorola, Inc. | Method and apparatus for enabling a processor to coordinate with a coprocessor in the execution of an instruction which is in the intruction stream of the processor. |
| US4914578A (en) * | 1983-04-18 | 1990-04-03 | Motorola, Inc. | Method and apparatus for interrupting a coprocessor |
| JPS62214464A (ja) * | 1986-03-17 | 1987-09-21 | Hitachi Ltd | データ処理システム |
| US4809169A (en) * | 1986-04-23 | 1989-02-28 | Advanced Micro Devices, Inc. | Parallel, multiple coprocessor computer architecture having plural execution modes |
| JPH0619760B2 (ja) * | 1986-04-23 | 1994-03-16 | 日本電気株式会社 | 情報処理装置 |
| DE3751108T2 (de) * | 1986-11-12 | 1995-10-26 | Nippon Electric Co | Mikroprozessor mit der Fähigkeit, an einen Koprozessor geschaltet zu werden. |
| IN171198B (ja) * | 1987-02-24 | 1992-08-15 | Digital Equipment Corp | |
| US5226170A (en) * | 1987-02-24 | 1993-07-06 | Digital Equipment Corporation | Interface between processor and special instruction processor in digital data processing system |
| JPS63226764A (ja) * | 1987-03-17 | 1988-09-21 | Fanuc Ltd | 高速浮動小数点演算システム |
| DE3855524T2 (de) * | 1987-06-19 | 1997-02-06 | Hitachi Ltd | Arithmetik-Parallelverarbeitungseinheit und zugehöriger Kompilator |
| JPH0789320B2 (ja) * | 1987-06-19 | 1995-09-27 | 株式会社日立製作所 | 演算処理装置 |
| US5247628A (en) * | 1987-11-30 | 1993-09-21 | International Business Machines Corporation | Parallel processor instruction dispatch apparatus with interrupt handler |
| JP2738692B2 (ja) * | 1988-01-29 | 1998-04-08 | 株式会社日立製作所 | 並列化コンパイル方法 |
| JP2754825B2 (ja) * | 1989-02-03 | 1998-05-20 | 日本電気株式会社 | マイクロプロセッサ |
| US5257358A (en) * | 1989-04-18 | 1993-10-26 | Nec Electronics, Inc. | Method for counting the number of program instruction completed by a microprocessor |
| US5218711A (en) * | 1989-05-15 | 1993-06-08 | Mitsubishi Denki Kabushiki Kaisha | Microprocessor having program counter registers for its coprocessors |
-
1991
- 1991-07-03 JP JP3162631A patent/JP2884831B2/ja not_active Expired - Fee Related
-
1992
- 1992-07-01 DE DE69230118T patent/DE69230118T2/de not_active Expired - Fee Related
- 1992-07-01 EP EP92111156A patent/EP0521486B1/en not_active Expired - Lifetime
-
1995
- 1995-03-16 US US08/405,925 patent/US5530889A/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| DE69230118D1 (de) | 1999-11-18 |
| EP0521486B1 (en) | 1999-10-13 |
| EP0521486A2 (en) | 1993-01-07 |
| DE69230118T2 (de) | 2000-02-03 |
| JP2884831B2 (ja) | 1999-04-19 |
| US5530889A (en) | 1996-06-25 |
| EP0521486A3 (ja) | 1994-03-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6219775B1 (en) | Massively parallel computer including auxiliary vector processor | |
| JP7788211B2 (ja) | データ処理方法、装置、及び関連製品 | |
| JPH0766329B2 (ja) | 情報処理装置 | |
| US20070250682A1 (en) | Method and apparatus for operating a computer processor array | |
| JPS58151655A (ja) | 情報処理装置 | |
| US4967338A (en) | Loosely coupled pipeline processor | |
| EP0295646B1 (en) | Arithmetic operation processing apparatus of the parallel processing type and compiler which is used in this apparatus | |
| US20030177288A1 (en) | Multiprocessor system | |
| JP2884831B2 (ja) | 処理装置 | |
| CN116909628B (zh) | 直接内存访问系统、数据搬运方法、设备及存储介质 | |
| JP4865960B2 (ja) | データ処理装置およびその制御方法 | |
| Christodoulis et al. | An FPGA target for the StarPU heterogeneous runtime system | |
| CN119621152A (zh) | 向量处理装置、芯片、电子设备及方法 | |
| KR20230124598A (ko) | 높은 처리량 및 낮은 오버헤드 커널 개시를 위한 압축 커맨드 패킷 | |
| WO2021187027A1 (ja) | 情報処理装置及び情報処理方法 | |
| JPS6315628B2 (ja) | ||
| JPH08235149A (ja) | 単一命令・多データ型並列計算機の命令生成・分配装置 | |
| JPH0789320B2 (ja) | 演算処理装置 | |
| EP1570371A1 (en) | Data processing system having a cartesian controller | |
| JPS6153754B2 (ja) | ||
| JP3144918B2 (ja) | ベクトル処理装置 | |
| JP2883488B2 (ja) | 命令処理装置 | |
| JP2583614B2 (ja) | ベクトル演算装置 | |
| JP2883489B2 (ja) | 命令処理装置 | |
| KR20230023762A (ko) | 하드웨어 오토로더 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |