JPH0293757A - マルチプロセッサ方式 - Google Patents

マルチプロセッサ方式

Info

Publication number
JPH0293757A
JPH0293757A JP24415388A JP24415388A JPH0293757A JP H0293757 A JPH0293757 A JP H0293757A JP 24415388 A JP24415388 A JP 24415388A JP 24415388 A JP24415388 A JP 24415388A JP H0293757 A JPH0293757 A JP H0293757A
Authority
JP
Japan
Prior art keywords
processor
sub
instruction
micro
main
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP24415388A
Other languages
English (en)
Inventor
Koichi Nakai
中井 幸一
Tetsuo Kiyomatsu
哲郎 清松
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 JP24415388A priority Critical patent/JPH0293757A/ja
Publication of JPH0293757A publication Critical patent/JPH0293757A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、それぞれがマイクロプログラム制御方式によ
って動作する複数のプロセッサから成り特に双方で1命
令実行時間の異なるプロセッサを同期して高速に動作さ
せるのに好適なマルチプロセッサ方式に関するものであ
る。
[従来の技術〕 従来より、マルチプロセッサシステムにおいてシステム
の性能又は機能を向上させるために、主プロセッサとは
別に特定の命令群を実行する副プロセッサを設け、主プ
ロセッサとは独立して命令実行処理する方式が採られる
いる。その制御方式は主プロセッサから副プロセッサへ
の起動に対し、副プロセッサ内の専用制御メモリとマイ
クロシーケンサに従い、副プロセッサ内で命令処理を実
行し、終了時に主プロセッサに対し終了報告信号を送出
し、主プロセッサにて終了を認識後、主プロセッサ側に
制御を戻すものであり、主プロセッサと副プロセッサで
1マイクロ命令実行時間が大幅に異なっていても特に問
題にはならなかったが、主/副プロセッサ間の起動/応
答時間のオーバーヘットが性能向上のネックとなってい
た。
一方上記方式に対し、特開昭59−87547号公報や
特開昭62−263538号公報等に見られるように、
主/副両プロセッサが主プロセッサ内のみに持つマイク
ロシーケンサに従い、同期してそれぞれの制御メモリを
読出し実行することにより、主/副プロセッサ間での起
動、応答のオーバーヘッドを解消し、処理性能の向上を
図る技術が提案され、実現されてきている。但し、この
ようにマイクロシーケンサを共用し、主/副プロセッサ
を同期して動作させる方式は、マイクロ命令のアドレス
線を共用することであり、最近の1チツプCPU化等の
中ではビンネックの最大の原因となるものであり、また
従来例のように主/副プロセッサが同期して動作しても
互いに1マイクロ命令実行サイクルが同じあるいはほぼ
同じであり、両プロセッサで共用する基本クロックを共
用化できるか、あるいは若干変動させる範囲内で共用化
できるうちは特に問題ないがプロセッサを1チップ化し
、最近のデバイス技術の進歩によるマシンサイクルの高
速化が図られる中で、主プロセッサは数十ナノ秒で1マ
シンサイクルを実行することも可能となってきており、
一方副プロセッサにおいては専用の機能を持つことが優
先であり、マシンサイクルはそれほど高速化しない、あ
るいはできないことが多い為、同期化をやめ非同期応答
方式に変更したり、副プロセッサ側マシンサイクルを考
慮して主プロセッサ側マシンサイクルを見直さなければ
ならないというような問題が発生する。
さらに上記問題点に対し、特開昭58−97747号公
報や特開昭61−131039号公報に見られるように
、マイクロ命令の更新を抑止したり、制御メモリ上の次
のアドレスにも同じマイクロ命令を置くなど、1マシン
サイクルで終了しないマイクロ命令の実行に当り工夫が
見られるが、制御メモリの効率的使用という点では十分
ではなく、特にオンチップROMに制御メモリを格納し
副プロセッサチップとして使うシステムにおいては、チ
ップサイズの制御等で副プロセッサ用マイクロ容量が多
く取れず、特に主/副プロセッサ間で1マイクロ命令の
実行時間が大きく異なるシステムに対し、最小限のマイ
クロ容量で副プロセッサ側の制御メモリの有効利用を図
り、性能を維持することがさらに重要となる。
〔発明が解決しようとする課題〕
従来技術には上記のような問題点があった。
本発明は、以上のような従来技術の問題点に基づき、副
プロセッサのマシンサイクルに対し主プロセッサのマシ
ンサイクルがかなり高速であり、副プロセッサで実行す
る命令についても、その機能によって最適なマイクロ命
令実行サイクルが異なるようなマルチプロセッサシステ
ムに対して、あくまでも主プロセッサと副プロセッサ間
は同期した制御方式をとり、非同期の応答方式に対して
高速性を保持しつつ、さらに主/副プロセッサ間での1
マイクロ命令実行時間の違いによる待合せの為の副プロ
セッサ内制御メモリの容量の無、駄をなくり、VLSi
オンチップROMを副プロセッサの制御メモリとして用
いて高速数値処理や、ディジタル画像処理の性能向上を
図るシステム等に有効となるマルチプロセッサシステム
を提供することを目的とする。
(課題を解決するための手段) 上記目的は、主プロセッサを制御する成木クロックを主
/副プロセッサで共用し、同期して相互の動作を監視し
ながら動作させ、副プロセッサ側の専用マイクロシーケ
ンサに従い制御メモリから読出されたマイクロ命令中の
特定フィールドに副プロセッサ側で実行する命令が基本
クロックに対して何倍のマシンサイクルを要するマイク
ロ命令であるかを記憶するエリアを確保し、自動更新し
ながら副プロセッサ自らのマイクロ命令延長指定を行な
うことにより実現される。
副プロセッサのマイクロ命令中のマイクロ命令数長指定
フィールドの内容はそのままカウンタにセットされ、所
定の値(例えばゼロ)になるまで基本クロックに同期し
てカウントダウン(またはカウントアツプ)される。ま
たマイクロシーケンサは常にリトライ用シーケンサを保
持しており、該カウンタ値が特定値になるまではりトラ
イ用マイクロシーケンサのアドレスを制御メモリアドレ
スとして供給しつづける。これにより、副プロセッサは
、主プロセッサと同期をとって動作しているものの、主
プロセッサのマイクロ命令の実行時間を意識する必要も
なく、副プロセッサで行なう演算の種類により自らのマ
イクロ命令中のマイクロ命令延長指定フィールドに任意
の値をセットしておくだけで最適な命令延長が可能とな
り、カウント中はりトライ用マイクロシーケンサからの
ア1くレスて副プロセッサ側の制御メモリ値が確定され
る為、同一マイクロ命令のくり返しによる制御メモリエ
リアの無駄使いもなくなる。
−力士プロセッサ側マイクロ命令は、副プロセッサ側マ
イクロ命令実行速度に影響されることなく次命令のアド
レス計算等、主プロセッサ内処理を並行して進めること
ができ、また基本クロックを共用し同期して動作してい
るので副プロセッサでの演算の終了を予測でき、高速処
理が行なえる。
[作用〕 主プロセッサと副プロセッサでそれぞれマイクロアドレ
スシーケンサと制御メモリを持ち、更に主プロセッサの
基本クロックを共用して同期して動作する方式をとるマ
ルチプロセッサシステムにおいては、例えば主プロセッ
サ内でアドレス計算や基本演算を行ない、副プロセッサ
側では専用の命令、例えば倍精度の浮動小数点乗算のよ
うな機能は強力であるが1マイクロ命令が主プロセッサ
のマシンサイクル、つまり基本クロックの何倍もかかる
ような命令を実行する場合、副プロセッサ内マイクロ命
令による命令数延長指定フィールドの値に従い、カウン
タにセットされた値から副プロセッサ内マイクロ命令の
実行時間を主プロセッサ側マイクロ命令の実行に影響せ
ず延長でき、カウンタ値が所定の値(例えばゼロ)にな
るまでリトライ用マイクロシーケンサを選択し、同一マ
イクロ命令アドレスを制御メモリに供給しておくことに
より、無駄にマイクロ命令を更新することもなく副プロ
セッサ内制御メモリの効率的使用が図れる。以上のよう
に、基本クロックを共用し、主/副プロセッサが同期化
して動いていることにより応答時間のロスもなく、主プ
ロセッサのマシンサイクルがマシンサイクルの遅い副プ
ロセッサの性能で左右されることもなく、最適な処理が
行なえ、副プロセッサ内命令処理においては、基本クロ
ックのn倍の時間を必要とするマイクロ命令も実質的に
は制御メモリの1ステップ分の容量を持つのみであり、
大幅なマイクロ命令用の記憶容量の低減が図れる。
〔実施例〕
以下、本発明の一実施例について図面を用いて説明する
。第1図は本発明の一実施例を示すマルチプロセッサ方
式のブロック図である。また第2図、第3図はその動作
を説明する図である。
第1図に示すように本発明の主プロセッサ1は基本クロ
ック発生器(以下CLKと略す)3を副プロセッサ51
と共用し、相互監視しながら同期して動作する。主プロ
セッサ1ではマイクロアドレスシーケンサ2の指定によ
り制御メモリ4から読出されたマイクロ命令をマイクロ
命令レジスタ5に格納し、演算論理部7の制御を行なう
。またマイクロアドレスはマイクロアドレス更新回路6
により更新され、次のマイクロアドレスシーケンサ2の
値となる。
主プロセッサ1はマイクロアドレスシーケンサ2の値に
従い、副プロセッサ51で実行すべき命令であれば直ち
に副プロセッサ51側に信号線8を介して起動をかけ、
ウェイト状態であった副プロセッサ51のマイクロアド
レスシーケンサ52をCL K 3で主プロセッサ1と
同期をとりながら動作させる。副プロセッサ51では、
主プロセッサ1の制御と同様に、マイクロアドレスシー
ケンサ52の指定により、制御メモリ54から読出され
たマイクロ命令をマイクロ命令レジスタ55に格納し、
副プロセッサ51側の演算論理部57の制御を行なう。
またマイクロアドレスはマイクロアドレス更新回路56
により更新され1次のマイクロアドレスシーケンサ52
の値となる。
ここで本発明の特徴であるマイクロ命令延長数指定フィ
ールド58について説明する。マイクロアドレスを共用
して動作する従来方式のマルチプロセッサ方式であれば
、主プロセッサ1のマシンサイクルに合わせて副プロセ
ッサ51内のマイクロ命令も同時動作する必要があり、
マシンサイクルを同じくする副プロセッサ51の接続時
は非常に効果を発揮したが1本実施例のような主プロセ
ッサ1のマシンサイクルが副プロセッサ51の何倍も速
いモデルにおいては、従来例に示す特定マイクロ命令の
更新を抑止したり、同一命令を制御メモリに連続して格
納しておく方式では、主プロセッサ1の動作に合わせて
副プロセッサ51のマイクロアドレスだけは更新されて
いることになり。
性能を出すために制御メモリの記憶容量を犠牲にしてい
るところもあった。これに対して本実施例では第1図に
示すように、マイクロアドレスシーケンサ52の後段に
リトライアドレスレジスタ53を設け、マイクロ命令用
の制御メモリ54の記憶容量を、主プロセッサ1内のマ
イクロ命令の更新を意識させず、自らの機能がCLK3
が発生する基本クロックの何倍であるかを予めレジスタ
55に格納されるマイクロ命令中のEXTフィールド5
8に埋め込んでおくことによって最小限の記憶容量で求
められる機能の実現を図っている。
EXTフィールド58に指定される値は、例えば第2図
に示すようなものであり1乗算を行なう場合、4′をE
XTフィールド58に埋め込んでおけば値はカウンタ6
2にCLK3の出力する見本クロックのタイミングで格
納され、チエツク回路63によって終了チエツクを行な
いながら回路64によってカウントダウンされ、またカ
ウンタ62に格納される。チエツク回路63の出力が真
になるまで信号線65上のセレクト信号は、セレクタ6
0を介してリトライアドレスレジスタ53を選択し続け
、同一マイクロアドレスからマイクロ命令を読み続ける
。カウンタ62はチエツク回路63の出力が真となるま
で自己更新を行ない、E、XTフィールド58の値に左
右されない。
第2図に示すように、主プロセッサ1側での1マイクロ
命令の実行を1とし、副プロセッサ51側での乗算(M
)を4、除算(D)を3.加減算(A)を20ツクで実
現できるものとすると、例えば第3図に示すタイミング
分割が実現でき、実際の主/副プロセッサの動作時間に
対し、副プロセッサ51内のマイクロ命令はあくまで1
機能1マイクロステップで行なえ、副プロセッサ51側
制御メモリの大幅な容量削減ができ、主プロセッサ1と
の同期動作を維持し、性能も保持することが可能となっ
た。以上の様に、本実施例によれば。
副プロセッサ接続時に1チツププロセッサを考え。
オンチップROMにマイクロ命令を格納して特定命令の
処理を実現しようとする場合に制御メモリの容量を最小
限に抑え、チップ面積を下げることが可能となり、性能
低下することなく効率的な制御メモリの使用ができる。
木刀式を用いた具体的実施例としては、副プロセッサが
数値演算(浮動小数点、10進演算等)専用のものであ
り、フォートラン、コボル等の高速化を図る為、特定の
専用命令を副プロセッサで高速処理し、性能向上を図る
ことができる。
また他の応用例としては、ビットマツププロセッサやグ
ラフィックプロセッサのようにディジタル画像処理専用
のプロセッサを主プロセッサに対する副プロセッサとし
て位置付けし、副プロセッサ下のフレームメモリ等に対
する処理性能を向上させるような使い方もある。
第1図に示した副プロセッサ51がグラフィック制御を
行なうピッI−マツププロセッサである場合、副プロセ
ッサ内には図形描画やフレームメモリ内の矩形領域転送
(bitbit)などを行なう制御部102を持ち、マ
イクロ命令レジスタ55の指示に従い、下に接続される
フレームメモリ101に対してその出力を展開すること
ができ、フレームメモリ101からのデータは並直列変
換系を通り、CRTIIOに出力される。
このように画像処理用副プロセッサ51を考えた場合で
も、従来例として主プロセッサ1から入出力命令や特定
コマンドにより起動、交信を行なっていた分野に対する
本発明の方式が処理性能の向上に有効であり、応用範囲
も広いということが分かる。
〔発明の効果〕
本発明によれば、以下の効果をあげることができる。
(1)、主/副プロセッサ各々にマイクロシーケンサと
制御メモリを持つが、基本クロックを共用し同期して動
作できる為、非同期応答方式のマルチプロセッサ方式に
対し、高速性が保持される。
(2)、主/副プロセッサでマイクロアドレスを共用し
ない為、主プロセッサのV L S i化及び副プロセ
ッサの1チツプ化に対しピンネックを解消できる。
(3)、クロック同期でマイクロアドレスを更新する方
式を採っているが、副プロセッサ側に基本クロックの何
倍も時間のかかるマイクロ命令が存在しても、マイクロ
命令延長数指定フィールドに従ったマイクロアドレス更
新制御を行なうため、副プロセッサ内制御メモリの記憶
容量増加を抑え、無駄なマイクロ命令を格納する必要が
なくなり、限られたオンチップROM容量内でのマイク
ロプログラムの作成に有効となる。
【図面の簡単な説明】
第1図は本発明の一実施例を示す構成図、第2図は副プ
ロセッサで行なう命令が主プロセッサで実行される命令
の何倍の時間を要するか例示する図、第3図は副プロセ
ッサ内の制御メモリの使用状況を説明する図である。 1・・・主プロセッサ、3・・・基本クロック発生器。 51・・・副プロセッサ、52・・・マイクロアドレス
シーケンサ、53・・・リトライアドレスレジスタ。 54・・・制御メモリ、58・・・マイクロ命令延長数
指定(EXT)フィールド、62・・・カウンタ。 63・・・チエツク回路、64・・・カウント値更新部
。 拓 1 図 々I

Claims (1)

  1. 【特許請求の範囲】 1、マイクロプログラム制御方式の主プロセッサと該主
    プロセッサで処理すべき命令以外の命令を処理するマイ
    クロプログラム制御方式の副プロセッサを持ち、各々に
    専用の制御メモリとマイクロシーケンスコントローラを
    具備し、 主/副プロセッサ共通の基本クロックにもとづき、互い
    に相互の動作を監視しながら同期して動作するマルチプ
    ロセッサシステムにおいて、副プロセッサ側マイクロ命
    令中にマイクロ命令延長数指定フィールドを設け、副プ
    ロセッサ側で動作する各種機能の1命令実行時間に合わ
    せて、任意に副プロセッサにて基本クロックのn(整数
    )倍分だけマイクロ命令実行時間を延長させ、主/副プ
    ロセッサの最適な同期動作を行なわせることを特長とし
    たマルチプロセッサ方式。 2、特許請求の範囲1において、数値演算に関する特定
    の命令群を前記副プロセッサ側で高速に命令処理するこ
    とを特長としたマルチプロセッサ方式。 3、特許請求の範囲1において、グラフィック処理を前
    記、副プロセッサ側で行ない、その出力を外部のフレー
    ムメモリに展開することを特長としたマルチプロセッサ
    方式。
JP24415388A 1988-09-30 1988-09-30 マルチプロセッサ方式 Pending JPH0293757A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24415388A JPH0293757A (ja) 1988-09-30 1988-09-30 マルチプロセッサ方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24415388A JPH0293757A (ja) 1988-09-30 1988-09-30 マルチプロセッサ方式

Publications (1)

Publication Number Publication Date
JPH0293757A true JPH0293757A (ja) 1990-04-04

Family

ID=17114551

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24415388A Pending JPH0293757A (ja) 1988-09-30 1988-09-30 マルチプロセッサ方式

Country Status (1)

Country Link
JP (1) JPH0293757A (ja)

Similar Documents

Publication Publication Date Title
US5036453A (en) Master/slave sequencing processor
US4745544A (en) Master/slave sequencing processor with forced I/O
US4868735A (en) Interruptible structured microprogrammed sixteen-bit address sequence controller
US6219775B1 (en) Massively parallel computer including auxiliary vector processor
JP2502960B2 (ja) マイクロコンピュ−タ、ならびにマイクロコンピユ−タおよびマイクロコンピユ−タ・ネットワ−クを動作させる方法
EP0102242B1 (en) Data processing apparatus
KR920006279B1 (ko) 1개 또는 다수개의 프로그램을 다수개의 연산부에서 실행가능한 프로셋서
US20070250682A1 (en) Method and apparatus for operating a computer processor array
US4443848A (en) Two-level priority circuit
JPS62159268A (ja) マルチプロセツサシステム
US5193159A (en) Microprocessor system
KR970003321B1 (ko) 코프로세서 지정 시스템
EP0295646A2 (en) Arithmetic operation processing apparatus of the parallel processing type and compiler which is used in this apparatus
US5890009A (en) VLIW architecture and method for expanding a parcel
US5034879A (en) Programmable data path width in a programmable unit having plural levels of subinstruction sets
KR900012156A (ko) 공유 제어 기억부를 가진 멀티프로세서 제어기 및 그 동기화 방법
US4975837A (en) Programmable unit having plural levels of subinstruction sets where a portion of the lower level is embedded in the code stream of the upper level of the subinstruction sets
JPH0293757A (ja) マルチプロセッサ方式
EP0448127B1 (en) Microprogram sequence controller
EP0992895A1 (en) Hardware accelerator for data processing systems
EP0177268B1 (en) Programmable data path width in a programmable unit having plural levels of subinstructions sets
KR970006413B1 (ko) 퍼지 컴퓨터
JPS6243734A (ja) マイクロプロセツサ
JP3719241B2 (ja) 演算装置
JPS62293331A (ja) デ−タ処理装置