Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPH077338B2 - 並列処理プロセッサ - Google Patents
[go: Go Back, main page]

JPH077338B2 - 並列処理プロセッサ - Google Patents

並列処理プロセッサ

Info

Publication number
JPH077338B2
JPH077338B2 JP63122918A JP12291888A JPH077338B2 JP H077338 B2 JPH077338 B2 JP H077338B2 JP 63122918 A JP63122918 A JP 63122918A JP 12291888 A JP12291888 A JP 12291888A JP H077338 B2 JPH077338 B2 JP H077338B2
Authority
JP
Japan
Prior art keywords
instruction
address
branch
programmable counter
timing
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
JP63122918A
Other languages
English (en)
Other versions
JPH01292430A (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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP63122918A priority Critical patent/JPH077338B2/ja
Publication of JPH01292430A publication Critical patent/JPH01292430A/ja
Publication of JPH077338B2 publication Critical patent/JPH077338B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 産業上の利用分野 本発明はマイクロプロセッサの命令処理機構の構成に関
するものである。
従来の技術 近年、ソフトウェアプログラミング方式のマイクロプロ
セッサはあらゆる方面で多用されており、その構成とし
ては、順次実行される命令群からなるプログラムを格納
するプログラム格納手段と、複数のアドレスを有し、該
アドレスが前記プログラム格納手段に格納された命令に
よって特定されるデータ入出力手段と、前記プログラム
格納手段から送出される命令に基づいてデータの演算を
実行する演算手段と、前記データ入出力手段(データメ
モリや入出力ポートが該当する。)と前記演算手段の間
を結合するデータバスを備えていることに特徴づけられ
る。また、その代表的な構成が特公昭58-33584号公報に
示されている。
このようなソフトウェアプログラミング方式のマイクロ
プロセッサはあらゆる用途に利用できるが、その反面、
処理の高速性を要求される一部の機器のコントローラと
して用いるには、ワイヤードロジックで構成された専用
のコントローラに比較して、リアルタイム処理能力に欠
けるという問題があった。マイクロプロセッサの処理能
力を高めるためにパイプライン処理方式が採用された
り、あるいは、米国特許第3,980,992号公報や特許出願
公開第62-69351号公報に示されるような多重処理構成の
マイクロプロセッサが提案されてきた。
発明が解決しようとする課題 しかしながら、パイプライン処理方式は、あらかじめ命
令を先読みしておいて命令の実行効率を向上させるもの
であるが、条件分岐命令などが含まれていると、その例
外処理が複雑になったり、先読みの効果が得られなくな
るなどの不都合を生じる。また、多重処理構成のマイク
ロプロセッサではALU(算術論理演算ユニット)やデー
タバスなどの資源を共有するために複数の処理ループが
時分割で実行されることになり、処理のリアルタイム性
は向上するものの処理効率は向上しないという問題点を
有していた。
本発明は上記問題点に鑑み、多重処理構成のマイクロプ
ロセッサにおいて、従来以上に処理効率を向上させるこ
とにある。
課題を解決するための手段 前記した課題を解決するために本発明の並列処理プロセ
ッサは、第1の命令選択手段による命令の選択に続いて
第2の命令選択手段による命令の選択を行なわせしめ、
これらの命令選択手段によって選択された命令の実行サ
イクルを交互に割り当てるコンテキストコントローラ
と、一方の命令選択手段によって選択された命令が、命
令コードの次にアドレス情報を有するオペランドを伴な
う分岐命令であるかを判別する命令判別器と、前記命令
判別器から分岐命令の検知信号を受けて、当該命令選択
手段による次の実行サイクルまでに、その分岐命令が有
するアドレス情報を当該命令選択手段に伝達して分岐先
のアドレスからの命令の実行に備える命令取り出しコン
トローラを備えている。
作用 本発明では前記した構成によって、第2の命令選択手段
から取り出された命令が分岐アドレスを伴っていれば、
第1の命令選択手段から取り出された命令の実行中に、
すなわち、第2の命令選択手段から取り出された命令の
実行開始時までに第2命令選択手段のアドレスを更新さ
せることにより、実質的にマイクロプロセッサの処理効
率を向上させる。
実施例 以照、本発明の実施例について図面を参照しながら説明
する。
第1図は本発明の一実施例における並列処理プロセッサ
の構成図を示したものであり、順次実行される命令群か
らなるプログラムが格納される命令ROM1から、第1のプ
ログラマブルカウンタ(PC1)2あるいは第2のプログ
ラマブルカウンタ(PC2)3によって選択された命令
は、命令の保持ならびに先読みのための命令キュー4に
送られる。前記命令キュー4はいったん保持された命令
は命令デコーダ5に送出されるとともに、そのアドレス
インデックス部はアドレスバス6と前記第1のプログラ
マブルカウンタ2および前記第2のプログラマブルカウ
ンタ3に送出される。前記命令デコーダ5によって作り
出された制御信号群はコントロールバス7を介してマイ
クロプロセッサを構成する各ブロックに供給される。ま
た、タイミングジェネレータ(TG)8においてマイクロ
プロセッサの処理のための複数のタイミング信号が作り
出され、これらのタイミング信号は前記コントロールバ
ス7を介して各ブロックに供給される。前記アドレスバ
ス6と第1のアドレスレジスタ(ADR1)9、第2のアド
レスレジスタ(ADR1)10、データバス11の間は相互にア
ドレスデータを受け渡すように連結されている。前記第
1のアドレスレジスタ9および前記第2のアドレスレジ
スタ10はRAM(スタック領域も含まれる。)12、汎用パ
ラレル入出力ポート(PIO)13のアドレスを保持する。
前記汎用パラレル入出力ポート13の3群の入出力線は、
それぞれ、A0〜A15端子、B0〜B15端子、C0〜C15端子に
よって構成されたA,B,C群の入出力端子群に接続されて
いる。さらに、前記データバス11には第1のレジスタ
(AX)14と第2のレジスタ(AY)15を介してALU16の入
力部が接続され、前記ALUの出力はアキュムレータユニ
ット(ACC)(フラグ群も含まれる。)17に供給され
る。前記アキュムレータユニット17と前記データバス11
の間も双方向のバスで連結されている。
一方、前記タイミングジェネレータ8からのタイミング
信号はコンテキストコントローラ18にも供給され、前記
コンテキストコントローラ18の出力信号は命令の実行サ
イクル識別信号として前記アキュムレータユニット17と
命令取り出しコントローラ20に供給され、アドレス設定
の動作イネイブル信号として前記第2のアドレスレジス
タ10に供給され、インバータ19を介した反転信号が前記
第1のアドレスレジスタ9に供給されている。前記命令
取り出しコントローラ20からは前記第1のプログラマブ
ルカウンタ2、前記第2のプログラマブルカウンタ3に
カウントクロック信号とプリセット信号がそれぞれ供給
されている。また、前記命令ROM1からの命令は命令判別
器21にも供給され、前記命令取り出しコントローラ20に
は前記命令判別器21からカウント更新指令信号が供給さ
れるとともに、前記命令デコーダ5からプリセット指令
信号が、前記アキュムレータユニット17からゼロフラグ
とキャリーフラグの内容がそれぞれ供給されている。さ
らに、命令キュー4は、第1バッファ4A、第2バッファ
4B、第3バッファ4C、第4バッファ4Dを有しており、第
1バッファ4Aと第2バッファ4BはFIFO(ファーストイン
ファーストアウト)形式のスタックを形成していて、第
1のプログラマブルカウンタ2によって取り出された命
令の第1バイト目と、第2のプログラマブルカウンタ3
によって取り出された命令の第1バイト目が、次々と交
互に格納されるように構成されている。
なお、各ブロックのデータ出力部がいずれも3ステート
構成になっていて、データの出力を要求されない期間は
ハイインピーダンス状態に保持されるものとする。ま
た、各ブロックにはコントロールバス7を介して必要な
タイミング信号と制御信号が供給されるものとする。
以上のように構成された並列処理プロセッサについて、
第1図に示した構成図と、第2図に示した主要部のタイ
ミングチャートによりその動作を説明する。第2図Aは
第1図のCLK端子に供給される外部クロック信号波形、
第2図Bは命令デコーダ5による命令解読期間、第2図
Caは命令取り出しコントローラ20が第1のプログラマブ
ルカウンタ2をプリセットするタイミング、第2図Cbは
命令取り出しコントローラ20が第2のプログラマブルカ
ウンタ3をプリセットするタイミング、第2図Dは命令
ROM1に対する第1のプログラマブルカウンタ2の作用期
間、第2図Eは命令ROM1のデコーダ部のプリチャージ期
間、第2図Fは命令ROM1から命令キュー4の第2バッフ
ァ4Bへの命令コードの転送タイミング、第2図Gは2バ
イト命令読み込み時における第1のプログラマブルカウ
ンタ2あるいは第2のプログラマブルカウンタ3のイン
クリメントのタイミング、第2図Hは命令ROM1から命令
キュー4の第4バッファ4Dへの命令オペランドの転送タ
イミング、第2図Iは命令キュー4の第2バッファ4Bか
ら第1バッファ4Aへの命令コードの転送タイミング、第
2図Jは命令キュー4の第4バッファ4Dから第3バッフ
ァ4Cへの命令オペランドの転送タイミング、第2図Kは
命令キュー4の第3バッファ4Cから第1のプログラマブ
ルカウンタ2および第2のプログラマブルカウンタ3に
供給されるプリセットデータの変化、第2図Lはコンテ
キストコントローラ18から出力される実行サイクル識別
信号をそれぞれ示したものである。
さて、第1図の並列処理プロセッサにおいて、命令ROM1
から取り出された命令は命令キュー4にいったん保持さ
れたあと命令デコーダ5によって処理内容が解釈されて
実行される。
ここで、第2図のa区間が第1のプログラマブルカウン
タ2によって取り出された命令の実行区間に割り当てら
れ、b区間が第2のプログラマブルカウンタ3によって
取り出された命令の実行区間に割り当てられる。なお、
アキュムレータユニット17には、a区間で使用されるア
キュムレータとフラグ群ならびにb区間で使用されるア
キュムレータとフラグ群が別々に用意され、これらの選
択はコンテキストコントローラ18から供給される実行サ
イクル識別信号による。また、第1のアドレスレジスタ
9と第2のアドレスレジスタ10の切り換えもコンテキス
トコントローラ18によって行なわれる。
時刻t0において条件分岐命令の実行を開始して時刻t2か
らは分岐先の命令を実行するためには、時刻t2までの間
に、命令の解読と、分岐条件の判定、分岐先アドレスの
第1のプログラマブルカウンタ2へのプリセット、命令
ROM1から命令キュー4の第2バッファ4Bへの命令コード
の転送ならびに第2バッファ4Bから第1バッファ4Aへの
命令コードの転送を完了すればよい。第1図の並列処理
プロセッサでは、第2図Bのタイミングにおいて命令の
解読を行ない、それが条件分岐命令であれば命令デコー
ダ5から命令取り出しコントローラ20に対してプリセッ
ト指令信号が送出される。命令取り出しコントローラ20
はアキュムレータユニット17から供給されるゼロフラグ
とキャリーフラグの内容を判別して分岐条件が成立すれ
ば、第2図Caのタイミングにおいて、第1のプログラマ
ブルカウンタ2に命令キュー4の第3バッファ4Cから供
給されるアドレス情報(分岐先絶対アドレスもしくは相
対アドレス情報であって、第2図Kのタイミングで供給
される。)をもとに、第1のプログラマブルカウンタ2
をプリセットする。さらに、第2図Dのタイミングにお
いて命令ROM1のデコーダ部にカウント値を供給するカウ
ンタが第1のプログラマブルカウンタ2に切り換えら
れ、新たなプリセット値をもとに、第2図Eの実線で示
したタイミングで、命令ROM1のデコーダ部のプリチャー
ジ(セットアップ)が行なわれる。プリチャージが完了
すると、第2図Fのタイミングにおいて命令ROM1から命
令コードの第1バイト目が取り出されて命令キュー4の
第2バッファ4Bに格納されるとともに命令判別器21にも
供給される。命令判別器21は供給された命令コードを判
別して、それが分岐命令であって、アドレス情報を有す
るオペランドを伴う命令であれば、命令判別器21は分岐
命令の検知信号として、命令取り出しコントローラ20に
対してカウント更新指令を送出し、その結果、第2図G
のタイミングで命令取り出しコントローラ20が第1のプ
ログラマブルカウンタ2もしくは第2のプログラマブル
カウンタ3をインクリメントさせ、第2図Eの一点鎖線
のタイミングにおいて、命令ROM1のデコーダ部の2度目
のプリチャージが行なわれる。2度目のプリチャージが
完了すると、第2図Hのタイミングにおいて、命令ROM1
から命令コードの第2バイト目が取り出されて命令キュ
ー4の第4バッファ4Dに格納される。第4バッファ4Dに
格納された第2バイト目の命令コードは第2図Jのタイ
ミングにおいて命令キュー4の第3バッファ4Cに転送さ
れ、その直後から、第2図Kに示したように、第1のプ
ログラマブルカウンタ2に新たなプリセットデータが供
給される。一方、命令キュー4の第2バッファ4Bに格納
された命令コードは、第2図Iのタイミングにおいて、
第1バッファ4Aに転送され、続く時刻t2からの命令解読
に備える。
したがって、時刻t2からは分岐先の命令を実行すること
ができる。すなわち、第1図に示した並列処理プロセッ
サでは、第1のプログラマブルカウンタ2によって取り
出された命令の実行区間であるa区間とa区間の間に、
第2のプログラマブルカウンタ3によって取り出された
命令の実行区間であるb区間が存在することを利用し
て、a区間にとっては命令の実行の裏サイクルにあたる
b区間が終了するまでに、分岐先の命令を実行するため
に必要な準備を完了させている。
なお、以上の説明では条件分岐命令について述べたが、
無条件分岐命令の場合には条件判別が不要になるだけ
で、同様にして、命令の実行の裏サイクルにおいて分岐
アドレスを確定させることができ、サブルーチンコール
命令についても同様である。
このようにして、第1図に示した並列処理プロセッサで
は、第1のプログラマブルカウンタ2もしくは第2のプ
ログラマブルカウンタ3から取り出された命令が、いわ
ゆる2サイクル命令の、プログラマブルカウンタのプリ
セット動作を伴う分岐命令であっても、各区間の次の実
行サイクルの開始時までに、分岐先の命令を実行する準
備を完了することができ、実質的にマイクロプロセッサ
の処理効率を向上させることができる。
ところで、第1図に示した実施例では、第1および第2
のプログラマブルカウンタを有する2重の処理機構を有
する並列処理プロセッサについて説明したが、それ以上
の多重処理機構を有する並列処理プロセッサにおいて
も、同様にして本発明が適用できることは言うまでもな
い。
第3図は本発明の別の実施例を示したもので、この例で
は3重の処理機構を有する並列処理プロセッサに本発明
を適用している。第3図の装置ではコンテキストコント
ローラ18が、アキュムレータユニット17と、第1のアド
レスレジスタ9、第2のアドレスレジスタ10、第3のア
ドレスレジスタ22と、命令取り出しコントローラ20に対
して第4図La,Lb,Lcに示すような3種類の識別信号を送
出する。これらの識別信号に基づいて命令取り出しコン
トローラ20は第1のプログラマブルカウンタ2、第2の
プログラマブルカウンタ3、第3のプログラマブルカウ
ンタ23に対して必要なタイミングでカウントクロック信
号とプリセット信号を供給する。なお、第4図は第3図
に示したマイクロプロセッサの主要部のタイミングチェ
ートで、第2図に対比させたものである。
第4図からもわかるように、第3図に示した並列処理プ
ロセッサでは、a区間が始まる時刻t0において条件分岐
命令の実行を開始した場合、次のa区間が開始される時
刻t3からは分岐先の命令を実行することができ、第1図
に示した並列処理プロセッサと同様にマイクロプロセッ
サの処理効率を向上させることができる。
発明の効果 本発明の並列処理プロセッサは以上の説明からも明らか
なように、順次実行される命令群からなるプログラムを
格納するプログラム格納手段(命令ROM1)と、前記プロ
グラム格納手段に格納された特定の命令を選択する前記
プログラム格納手段に対してアドレスを指定して当該ア
ドレスに格納された命令を選択する少なくとも第1およ
び第2の命令選択手段(第1のプログラマブルカウンタ
2および第2のプログラマブルカウンタ3)と、前記プ
ログラム格納手段から送出される命令に基づいてデータ
の演算を実行する演算手段(ALU16)と、命令の実行サ
イクルを発生するタイミングジェネレータ8と、前記第
1の命令選択手段による命令の選択に続いて前記第2の
命令選択手段による命令の選択を行なわせしめ、これら
の命令選択手段によって選択された命令の実行サイクル
を交互に割り当てるコンテキストコントローラ18と、一
方の命令選択手段によって選択された命令が、命令コー
ドの次にアドレス情報を有するオペランドを伴なう分岐
命令であるかを判別する命令判別器と、前記命令判別器
から分岐命令の検知信号を受けて、当該命令選択手段に
よる次の実行サイクルまでに、その分岐命令が有するア
ドレス情報を当該命令選択手段に伝達して分岐先のアド
レスからの命令の実行に備える命令取り出しコントロー
ラ20を備えたことを特徴とするもので、従来以上に処理
効率の向上する並列処理プロセッサを得ることができ、
大なる効果を奏する。
【図面の簡単な説明】
第1図は本発明の一実施例における並列処理プロセッサ
の構成図、第2図は第1図の主要部のタイミングチャー
ト、第3図は本発明の別の実施例における並列処理プロ
セッサの構成図、第4図は第3図の主要部のタイミング
チャートである。 1……命令ROM、2……第1のプログラマブルカウン
タ、3……第2のプログラマブルカウンタ、8……タイ
ミングジェネレータ、16……ALU、18……コンテキスト
コントローラ、20……命令取り出しコントローラ。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】順次実行される命令群からなるプログラム
    を格納するプログラム格納手段と、 前記プログラム格納手段に対してアドレスを指定して当
    該アドレスに格納された命令を選択する少なくとも第1
    および第2の命令選択手段と、 前記プログラム格納手段から送出される命令に基づいて
    データの演算を実行する演算手段と、 命令の実行サイクルを発生するタイミングジェネレータ
    と、 前記第1の命令選択手段による命令の選択に続いて前記
    第2の命令選択手段による命令の選択を行なわせしめ、
    これらの命令選択手段によって選択された命令の実行サ
    イクルを交互に割り当てるコンテキストコントローラ
    と、 一方の命令選択手段によって選択された命令が、命令コ
    ードの次にアドレス情報を有するオペランドを伴なう分
    岐命令であるかを判別する命令判別器と、 前記命令判別器から分岐命令の検知信号を受けて、当該
    命令選択手段による次の実行サイクルまでに、その分岐
    命令が有するアドレス情報を当該命令選択手段に伝達し
    て分岐先のアドレスからの命令の実行に備える命令取り
    出しコントローラを具備してなる並列処理プロセッサ。
JP63122918A 1988-05-19 1988-05-19 並列処理プロセッサ Expired - Lifetime JPH077338B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63122918A JPH077338B2 (ja) 1988-05-19 1988-05-19 並列処理プロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63122918A JPH077338B2 (ja) 1988-05-19 1988-05-19 並列処理プロセッサ

Publications (2)

Publication Number Publication Date
JPH01292430A JPH01292430A (ja) 1989-11-24
JPH077338B2 true JPH077338B2 (ja) 1995-01-30

Family

ID=14847821

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63122918A Expired - Lifetime JPH077338B2 (ja) 1988-05-19 1988-05-19 並列処理プロセッサ

Country Status (1)

Country Link
JP (1) JPH077338B2 (ja)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54138354A (en) * 1978-04-20 1979-10-26 Oki Electric Ind Co Ltd Microprocessor unit

Also Published As

Publication number Publication date
JPH01292430A (ja) 1989-11-24

Similar Documents

Publication Publication Date Title
US5353418A (en) System storing thread descriptor identifying one of plural threads of computation in storage only when all data for operating on thread is ready and independently of resultant imperative processing of thread
KR920006279B1 (ko) 1개 또는 다수개의 프로그램을 다수개의 연산부에서 실행가능한 프로셋서
US4897787A (en) Data processing system
JP2884831B2 (ja) 処理装置
US5117387A (en) Microprogrammed timer processor
US4758949A (en) Information processing apparatus
EP0240606B1 (en) Pipe-line processing system and microprocessor using the system
JPH03233630A (ja) 情報処理装置
US5175827A (en) Branch history table write control system to prevent looping branch instructions from writing more than once into a branch history table
JP2514963B2 (ja) デ―タ処理装置
JPH077338B2 (ja) 並列処理プロセッサ
WO1995006280A2 (en) Data transfer accelerating apparatus and method
US5187782A (en) Data processing system
JP2583506B2 (ja) データ処理装置
JPS6349938A (ja) 命令先取り制御装置
JPH0654471B2 (ja) 並列処理プロセッサ
JPH0317135B2 (ja)
EP0015276B1 (en) A digital pipelined computer
JPH0338727A (ja) 資源干渉制御装置とデータ処理装置
US5524221A (en) Next instruction pointer calculation system for a microcomputer
JP2825315B2 (ja) 情報処理装置
JPH0667896A (ja) シングルチップマイクロコンピュータ
JPH05233283A (ja) 並列命令実行方式
JPH0340075A (ja) マイクロコンピュータ
JPH05250318A (ja) マイクロプロセッサ

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080130

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090130

Year of fee payment: 14

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090130

Year of fee payment: 14