JP3144004B2 - 条件分岐処理装置 - Google Patents
条件分岐処理装置Info
- Publication number
- JP3144004B2 JP3144004B2 JP03313068A JP31306891A JP3144004B2 JP 3144004 B2 JP3144004 B2 JP 3144004B2 JP 03313068 A JP03313068 A JP 03313068A JP 31306891 A JP31306891 A JP 31306891A JP 3144004 B2 JP3144004 B2 JP 3144004B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- address
- conditional branch
- register
- memory
- 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 - Fee Related
Links
Landscapes
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Description
【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は条件分岐命令を他の命令
(逐次に実行可能な命令)と同じサイクル数で処理する
際に処理時間の遅れが生じないようにした新規な条件分
岐処理装置を提供しようとするものである。
(逐次に実行可能な命令)と同じサイクル数で処理する
際に処理時間の遅れが生じないようにした新規な条件分
岐処理装置を提供しようとするものである。
【0002】
【従来の技術】コンピュータにおける制御中枢の基本的
な働きは、命令の取り出しとその解読、実行であり、そ
のためにCPUは制御部と演算部を備えている。
な働きは、命令の取り出しとその解読、実行であり、そ
のためにCPUは制御部と演算部を備えている。
【0003】そして、プログラムの制御構造は、命令を
順番に処理する順次制御や、指定条件の成立、不成立に
応じて選択的に処理を行う条件分岐制御等を含んでい
る。
順番に処理する順次制御や、指定条件の成立、不成立に
応じて選択的に処理を行う条件分岐制御等を含んでい
る。
【0004】つまり、命令が遂次に実行可能な命令であ
る場合にはCPUがこれを順番に処理し、条件分岐命令
である場合にはALU(算術論理回路)の演算結果に関
するステータス(状態値)に応じて飛び先き番地にジャ
ンプするか、次の命令に移行するかを選択して処理の流
れに変更を加える。
る場合にはCPUがこれを順番に処理し、条件分岐命令
である場合にはALU(算術論理回路)の演算結果に関
するステータス(状態値)に応じて飛び先き番地にジャ
ンプするか、次の命令に移行するかを選択して処理の流
れに変更を加える。
【0005】このような命令を実行するCPUを複数用
いてパイプライン処理を行う場合、1段当たりの実行ス
テップを同一にし、かつその長さを短くすることが処理
効率や処理時間の観点から好ましいとされている。
いてパイプライン処理を行う場合、1段当たりの実行ス
テップを同一にし、かつその長さを短くすることが処理
効率や処理時間の観点から好ましいとされている。
【0006】図4は従来のプログラム処理の流れを示す
ものである。
ものである。
【0007】図中aはALUであり、演算結果のステー
タス出力はステータスレジスタbに格納されてから2入
力ANDゲートcに送出されるようになっている。
タス出力はステータスレジスタbに格納されてから2入
力ANDゲートcに送出されるようになっている。
【0008】dはマルチプレクサであり、ANDゲート
cからの信号に応じてインクリメント(+1)されたア
ドレス(プログラムカウンタ)値(図中「INC」で示
す。)と後述するパイプラインレジスタからの飛び先ア
ドレスとを選択的に切り換えてマイクロプログラムメモ
リeにその読み出しアドレスとして送出される。
cからの信号に応じてインクリメント(+1)されたア
ドレス(プログラムカウンタ)値(図中「INC」で示
す。)と後述するパイプラインレジスタからの飛び先ア
ドレスとを選択的に切り換えてマイクロプログラムメモ
リeにその読み出しアドレスとして送出される。
【0009】マイクロプログラムメモリeから読み出さ
れた命令はパイプラインレジスタfに一時的に格納さ
れ、当該命令を構成するオペレーション部(処理内容を
指示する部分)はANDゲートcに送られてステータス
との論理積演算がなされ、また、命令が条件分岐命令で
ある場合にそのアドレス部の値がマルチプレクサdにそ
のまま送出されるようになっている。
れた命令はパイプラインレジスタfに一時的に格納さ
れ、当該命令を構成するオペレーション部(処理内容を
指示する部分)はANDゲートcに送られてステータス
との論理積演算がなされ、また、命令が条件分岐命令で
ある場合にそのアドレス部の値がマルチプレクサdにそ
のまま送出されるようになっている。
【0010】図5は、対象となる命令が条件分岐命令で
ない場合(図5(a)参照。)と、対象となる命令が条
件分岐命令である場合(図5(b)参照。)とについ
て、演算と条件分岐処理との関係を示すタイムチャート
図であり、「CL」はクロック信号、「AL」は演算状
態、「ST]はステータス出力、「RD」はマイクロ命
令の読み出し及び実行タイミングを表している。尚、A
LUaによる演算は、斜線で示すようにクロック信号C
Lにおけるパルスの立ち上がりから始まってパルスの立
ち下がりから次のパルスの立ち上がりまでの間で終了す
る。
ない場合(図5(a)参照。)と、対象となる命令が条
件分岐命令である場合(図5(b)参照。)とについ
て、演算と条件分岐処理との関係を示すタイムチャート
図であり、「CL」はクロック信号、「AL」は演算状
態、「ST]はステータス出力、「RD」はマイクロ命
令の読み出し及び実行タイミングを表している。尚、A
LUaによる演算は、斜線で示すようにクロック信号C
Lにおけるパルスの立ち上がりから始まってパルスの立
ち下がりから次のパルスの立ち上がりまでの間で終了す
る。
【0011】この場合、個々のマイクロ命令を1タイミ
ング(あるいはクロック)サイクルで実行するためには
命令の読みだしをクロック信号の1周期内で行う必要が
ある。
ング(あるいはクロック)サイクルで実行するためには
命令の読みだしをクロック信号の1周期内で行う必要が
ある。
【0012】つまり、条件分岐しない命令にあっては、
図5(a)に示すようにクロックパルスの立ち上がり時
点からマイクロプログラムメモリeからの読み出しが開
始され、次にくるパルスの立ち上がり時点までには読み
出しが終了して実行に移っているので、時間の遅れを伴
うことなく後続パルスの立ち上がりのタイミングで次の
命令の読み出しに移行することができる。
図5(a)に示すようにクロックパルスの立ち上がり時
点からマイクロプログラムメモリeからの読み出しが開
始され、次にくるパルスの立ち上がり時点までには読み
出しが終了して実行に移っているので、時間の遅れを伴
うことなく後続パルスの立ち上がりのタイミングで次の
命令の読み出しに移行することができる。
【0013】しかし、条件分岐命令にあっては、図5
(b)に示すように演算後のステータスに基づいてこれ
に対応する命令の読み出しを開始しなければならない。
(b)に示すように演算後のステータスに基づいてこれ
に対応する命令の読み出しを開始しなければならない。
【0014】よって、図示するように読み出しが後続パ
ルスの立ち上がり時点にまでかかってしまうと、後続パ
ルスの立ち上がりのタイミングで次の命令の読み出しに
移ることができなくなり、結果としてに命令の実行に2
サイクルの時間を要することになる。
ルスの立ち上がり時点にまでかかってしまうと、後続パ
ルスの立ち上がりのタイミングで次の命令の読み出しに
移ることができなくなり、結果としてに命令の実行に2
サイクルの時間を要することになる。
【0015】
【発明が解決しようとする課題】以上のように、従来の
条件分岐処理にあっては、ALUaの演算結果に係るス
テータスを待って次に実行すべき命令を読み出している
ため、命令の読み出しが遅れ、その結果処理に時間がか
かってしまうという問題があり、例えば画像データのよ
うに大量かつ高速での処理を要求される場合において処
理に手間取ってしまうといった不都合が生じる。
条件分岐処理にあっては、ALUaの演算結果に係るス
テータスを待って次に実行すべき命令を読み出している
ため、命令の読み出しが遅れ、その結果処理に時間がか
かってしまうという問題があり、例えば画像データのよ
うに大量かつ高速での処理を要求される場合において処
理に手間取ってしまうといった不都合が生じる。
【0016】条件分岐命令とそうでない命令とを同じサ
イクル数で処理するためには、条件分岐命令を、演算に
係る命令と分岐だけに係る命令とから構成し、例えば、
下記に示すように、 リスト1) アドレス 命令 コメント A10 (A−B),LD ZR ;(A−B)の演算結果に基づく ;ZR(ゼロフラグ)をステータス ;レジスタにロード A11 CJP LL ;ZR=1ならばラベル(LL)へ A12 XXXXXX ;任意の命令 A13 LL:CONT ;次ステップへ移行 A14 YYYYYY ;任意の命令 つまり、A10での演算結果に従うA11での分岐処理
によって、A13又はA12に移行するようにプログラ
ムを記述するか、あるいはクロック周波数を低くするこ
とが考えられるが、いずれにせよ条件分岐全体(演算+
分岐)に要する処理時間が短縮される訳ではない。
イクル数で処理するためには、条件分岐命令を、演算に
係る命令と分岐だけに係る命令とから構成し、例えば、
下記に示すように、 リスト1) アドレス 命令 コメント A10 (A−B),LD ZR ;(A−B)の演算結果に基づく ;ZR(ゼロフラグ)をステータス ;レジスタにロード A11 CJP LL ;ZR=1ならばラベル(LL)へ A12 XXXXXX ;任意の命令 A13 LL:CONT ;次ステップへ移行 A14 YYYYYY ;任意の命令 つまり、A10での演算結果に従うA11での分岐処理
によって、A13又はA12に移行するようにプログラ
ムを記述するか、あるいはクロック周波数を低くするこ
とが考えられるが、いずれにせよ条件分岐全体(演算+
分岐)に要する処理時間が短縮される訳ではない。
【0017】また、前者の場合パイプライン処理におい
て1段当たりの実行ステップが多くなり、処理の効率が
悪化するという不都合が生じる。
て1段当たりの実行ステップが多くなり、処理の効率が
悪化するという不都合が生じる。
【0018】
【課題を解決するための手段】そこで、本発明条件分岐
処理装置は上記した課題を解決するために、インクリメ
ントされたアドレス又はレジスタによって指定される無
条件の飛び先アドレスのいずれかを選択する第1の選択
手段と、マイクロ命令を記憶するとともに第1の選択手
段によるアドレス指定を受けて命令の読み出しがなされ
る主メモリと、条件分岐マイクロ命令に含まれた飛び先
アドレスに対応したマイクロ命令のみを記憶する副メモ
リと、第1の選択手段におけるインクリメントされたア
ドレス及び無条件の飛び先アドレスの切換を制御すると
共に条件分岐命令、無条件分岐アドレス、条件分岐アド
レスから成るマイクロ命令を一時記憶するレジスタと、
主メモリ及び副メモリから読み出されたマイクロ命令の
いずれかをALU(算術論理回路)の演算結果のステー
タスに応じて選択し、レジスタに送出する第2の選択手
段とを備え、クロックの1サイクル周期内において、A
LU(算術論理回路)の条件判断に係る演算の実行中
に、レジスタの無条件分岐アドレス及び条件分岐アドレ
スに応じた複数の飛び先アドレスに対応するマイクロ命
令を主メモリ及び副メモリからそれぞれ読み出すと共
に、ALU(算術論理回路)の演算結果のステータスが
一の状態で、主メモリから読み出されたマイクロ命令を
選択してレジスタに送出し、また、ALU(算術論理回
路)の演算結果のステータスが他の状態で、副メモリの
マイクロ命令を選択してレジスタに送出するようにした
ものである。
処理装置は上記した課題を解決するために、インクリメ
ントされたアドレス又はレジスタによって指定される無
条件の飛び先アドレスのいずれかを選択する第1の選択
手段と、マイクロ命令を記憶するとともに第1の選択手
段によるアドレス指定を受けて命令の読み出しがなされ
る主メモリと、条件分岐マイクロ命令に含まれた飛び先
アドレスに対応したマイクロ命令のみを記憶する副メモ
リと、第1の選択手段におけるインクリメントされたア
ドレス及び無条件の飛び先アドレスの切換を制御すると
共に条件分岐命令、無条件分岐アドレス、条件分岐アド
レスから成るマイクロ命令を一時記憶するレジスタと、
主メモリ及び副メモリから読み出されたマイクロ命令の
いずれかをALU(算術論理回路)の演算結果のステー
タスに応じて選択し、レジスタに送出する第2の選択手
段とを備え、クロックの1サイクル周期内において、A
LU(算術論理回路)の条件判断に係る演算の実行中
に、レジスタの無条件分岐アドレス及び条件分岐アドレ
スに応じた複数の飛び先アドレスに対応するマイクロ命
令を主メモリ及び副メモリからそれぞれ読み出すと共
に、ALU(算術論理回路)の演算結果のステータスが
一の状態で、主メモリから読み出されたマイクロ命令を
選択してレジスタに送出し、また、ALU(算術論理回
路)の演算結果のステータスが他の状態で、副メモリの
マイクロ命令を選択してレジスタに送出するようにした
ものである。
【0019】
【作用】本発明によれば、分岐先を示す複数のアドレス
部を含む条件分岐命令の実行に際して、ALU(算術論
理回路)の条件判断に係る演算中に飛び先アドレスのマ
イクロ命令を主メモリ及び副メモリから予め読み出して
おき、条件判断結果に従って命令を選択的に実行するた
め、従来のように条件判断結果を待ってから該当する命
令を読み出す場合に生じるタイミングの遅れがなく、条
件分岐命令を遂次に実行が可能な命令と同じサイクル数
で実行することができるので、条件分岐命令を演算命令
と分岐命令の2命令に分けて構成することに伴う実行ス
テップ数の増加や処理効率の低下を招くことがない。
部を含む条件分岐命令の実行に際して、ALU(算術論
理回路)の条件判断に係る演算中に飛び先アドレスのマ
イクロ命令を主メモリ及び副メモリから予め読み出して
おき、条件判断結果に従って命令を選択的に実行するた
め、従来のように条件判断結果を待ってから該当する命
令を読み出す場合に生じるタイミングの遅れがなく、条
件分岐命令を遂次に実行が可能な命令と同じサイクル数
で実行することができるので、条件分岐命令を演算命令
と分岐命令の2命令に分けて構成することに伴う実行ス
テップ数の増加や処理効率の低下を招くことがない。
【0020】
【実施例】以下に、本発明条件分岐処理装置を図示した
実施例に従って説明する。
実施例に従って説明する。
【0021】図1は条件分岐処理装置1に係るプログラ
ム処理の流れを示すものであり、複数のマイクロプログ
ラムメモリを設けるとともに、条件分岐制御にあたって
はこれらをステータスに応じて選択的に切り換えて使用
することで時間の遅れを伴うことなく次の命令の実行に
移行することができるようにしたものである。
ム処理の流れを示すものであり、複数のマイクロプログ
ラムメモリを設けるとともに、条件分岐制御にあたって
はこれらをステータスに応じて選択的に切り換えて使用
することで時間の遅れを伴うことなく次の命令の実行に
移行することができるようにしたものである。
【0022】2(1)、2(2)はマルチプレクサであ
り、前段のマルチプレクサ2(1)はパイプラインレジ
スタ3において実行される条件分岐命令のオペレーショ
ン部を切換制御信号として受け取り、インクリメント後
のアドレス又はパイプラインレジスタ3に格納された分
岐アドレスのうちのどちらかを選んでマイクロプログラ
ムメモリ4Aへのアドレス信号として送出するようにな
っている。
り、前段のマルチプレクサ2(1)はパイプラインレジ
スタ3において実行される条件分岐命令のオペレーショ
ン部を切換制御信号として受け取り、インクリメント後
のアドレス又はパイプラインレジスタ3に格納された分
岐アドレスのうちのどちらかを選んでマイクロプログラ
ムメモリ4Aへのアドレス信号として送出するようにな
っている。
【0023】尚、2つのマイクロプログラムメモリ4
A、4Bの大きさ(ビット幅)は同じとされており、4
Aが主メモリとされ、4Bが副メモリとされている。
A、4Bの大きさ(ビット幅)は同じとされており、4
Aが主メモリとされ、4Bが副メモリとされている。
【0024】マルチプレクサ2(2)は、ALU5の演
算結果についてのステータスを切換制御信号として受け
取り、マイクロプログラムメモリ4A及び4Bから読み
出される命令を選択してパイプラインレジスタ3に送出
する。
算結果についてのステータスを切換制御信号として受け
取り、マイクロプログラムメモリ4A及び4Bから読み
出される命令を選択してパイプラインレジスタ3に送出
する。
【0025】パイプラインレジスタ3にはマイクロ命令
が一時的に格納されるようになっており、図ではオペレ
ーション部(CJA.)と2つのアドレス部(PO、A
11)とを含む条件分岐命令が格納された状態を示して
いる。
が一時的に格納されるようになっており、図ではオペレ
ーション部(CJA.)と2つのアドレス部(PO、A
11)とを含む条件分岐命令が格納された状態を示して
いる。
【0026】つまり、オペレーション部がマルチプレク
サ2(1)にその制御信号として送出されると共に、条
件分岐命令のアドレスをA10としたとき、アドレス部
のうち条件分岐命令の次のアドレス(A11)がマルチ
プレクサ2(1)への入力信号として送られ、アドレス
部のうち条件分岐命令の飛び先アドレス(PO)がマイ
クロプログラムメモリ4Bへのアドレス信号とし送出さ
れる。
サ2(1)にその制御信号として送出されると共に、条
件分岐命令のアドレスをA10としたとき、アドレス部
のうち条件分岐命令の次のアドレス(A11)がマルチ
プレクサ2(1)への入力信号として送られ、アドレス
部のうち条件分岐命令の飛び先アドレス(PO)がマイ
クロプログラムメモリ4Bへのアドレス信号とし送出さ
れる。
【0027】図2は下記に示すようなプログラムを想定
したときの条件分岐処理のタイミングを示したものであ
る。
したときの条件分岐処理のタイミングを示したものであ
る。
【0028】 リスト2) アドレス 命令 コメント A10 (A−B),LD ZR CJA.PO A11;(A−B)の演 ;算結果に基づく ;ZR(ゼロフラ ;グ)値をロード ;ZR=1ならば ;ラベル(LL)へ A11 XXXXXX ;任意の命令 A12 ZZZZZZ ;任意の命令 A13 LL:CONT ;次ステップへ移行 A14 YYYYYY ;任意の命令 つまり、この例ではA10における(A−B)のレジス
タ演算結果に従ってステータス(ZR)が得られ、これ
に応じて後続ステップA11の命令又はPOがアドレス
として指し示すA13の命令が選択的に実行される。
タ演算結果に従ってステータス(ZR)が得られ、これ
に応じて後続ステップA11の命令又はPOがアドレス
として指し示すA13の命令が選択的に実行される。
【0029】図2中「CL」はクロック信号、「BR」
は演算及び条件分岐命令の実行状態を示し、「ST」は
ZRステータス出力、「RMA」はマイクロプログラム
メモリ4Aのリード状態、「RMB」はマイクロプログ
ラムメモリ4Bのリード状態、「EX」はステータスに
応じて選択された命令の実行状態を示している。
は演算及び条件分岐命令の実行状態を示し、「ST」は
ZRステータス出力、「RMA」はマイクロプログラム
メモリ4Aのリード状態、「RMB」はマイクロプログ
ラムメモリ4Bのリード状態、「EX」はステータスに
応じて選択された命令の実行状態を示している。
【0030】図示するようにマイクロプログラムメモリ
4Aから読み出されたA10の命令はパイプラインレジ
スタ3で実行され、演算(A−B)を実行している時に
次に実行する予定の2命令がともにリードされる。
4Aから読み出されたA10の命令はパイプラインレジ
スタ3で実行され、演算(A−B)を実行している時に
次に実行する予定の2命令がともにリードされる。
【0031】即ち、マイクロプログラムメモリ4Aから
A11の命令がリードされるとともに、マイクロプログ
ラムメモリ4Bから、A13の命令がリードされる。
A11の命令がリードされるとともに、マイクロプログ
ラムメモリ4Bから、A13の命令がリードされる。
【0032】その際、パイプラインレジスタ3で実行さ
れるA10の命令は、オペレーション部「CJA.」、
2つのアドレス部「PO」、「A11」からなってお
り、POがマイクロプログラムメモリ4Bへの読み出し
アドレスとして送出され、「A11」は無条件の飛び先
アドレスとしてマルチプレクサ2(1)に送出される。
れるA10の命令は、オペレーション部「CJA.」、
2つのアドレス部「PO」、「A11」からなってお
り、POがマイクロプログラムメモリ4Bへの読み出し
アドレスとして送出され、「A11」は無条件の飛び先
アドレスとしてマルチプレクサ2(1)に送出される。
【0033】そして、条件分岐命令であることを示すオ
ペレーション部はマルチプレクサ2(1)への制御信号
として送られ、これによってA11のアドレス信号が選
択される。
ペレーション部はマルチプレクサ2(1)への制御信号
として送られ、これによってA11のアドレス信号が選
択される。
【0034】尚、実行対象となる命令が逐次に実行可能
な命令である場合にはマルチプレクサ2(1)におい
て、インクリメントされたアドレスが選択されるように
なっている。
な命令である場合にはマルチプレクサ2(1)におい
て、インクリメントされたアドレスが選択されるように
なっている。
【0035】その後、ALU5による演算(A−B)の
結果に基づいてZRステータスがマルチプレクサ2
(2)に出力されると、この時点からマルチプレクサ2
(2)の切り換えに要する時間τが経過した時点で命令
の選択が行われる。
結果に基づいてZRステータスがマルチプレクサ2
(2)に出力されると、この時点からマルチプレクサ2
(2)の切り換えに要する時間τが経過した時点で命令
の選択が行われる。
【0036】即ち、ZRステータスの値が1の場合に
は、アドレスPOの指す命令(この例ではA13の命令
「CONT」に次ステップA14への無条件ジャンプ命
令「JMP A14」を付加したもの)がパイプライン
レジスタ3にロードされて実行され、また、ZRステー
タスの値が0の場合には、A11の命令(この例では
「XXXXXX」)がパイプラインレジスタ3へのロー
ド後に実行される。
は、アドレスPOの指す命令(この例ではA13の命令
「CONT」に次ステップA14への無条件ジャンプ命
令「JMP A14」を付加したもの)がパイプライン
レジスタ3にロードされて実行され、また、ZRステー
タスの値が0の場合には、A11の命令(この例では
「XXXXXX」)がパイプラインレジスタ3へのロー
ド後に実行される。
【0037】いずれにしても選択された命令の読み出し
は後続のクロックパルスの立ち上がりまでには完了して
おり、選ばれた命令は後続のクロックパルスに同期して
パイプラインレジスタ3にロードされるので、次の命令
の読み出しが可能となる。
は後続のクロックパルスの立ち上がりまでには完了して
おり、選ばれた命令は後続のクロックパルスに同期して
パイプラインレジスタ3にロードされるので、次の命令
の読み出しが可能となる。
【0038】尚、マイクロプログラムメモリ4Bは条件
分岐処理に際してのみ使用され、よってこれから読み出
した命令の実行後には必ず主メモリであるマイクロプロ
グラムメモリ4Aへと処理が移される。
分岐処理に際してのみ使用され、よってこれから読み出
した命令の実行後には必ず主メモリであるマイクロプロ
グラムメモリ4Aへと処理が移される。
【0039】図3にリスト2)に関するステータスと分
岐処理との関係を概念的に示す。
岐処理との関係を概念的に示す。
【0040】しかして、本発明に係る条件分岐処理で
は、条件分岐命令に係る2つの分岐アドレスの命令を演
算中に予め読み出しておき、演算結果についてのステー
タスが出力された時に何れかの命令を選択して実行する
ようにしているので、図5(b)のように演算結果のス
テータスが得られてから実行命令を読み出す場合に生じ
る処理の遅れを伴うことはない。
は、条件分岐命令に係る2つの分岐アドレスの命令を演
算中に予め読み出しておき、演算結果についてのステー
タスが出力された時に何れかの命令を選択して実行する
ようにしているので、図5(b)のように演算結果のス
テータスが得られてから実行命令を読み出す場合に生じ
る処理の遅れを伴うことはない。
【0041】よって、逐次実行が可能な命令の実行に要
する時間を1サイクルとすると、条件分岐命令と分岐後
の命令の実行には2サイクルの時間を要するので1命令
当たり1サイクルで実行され、条件分岐命令とそれ以外
の命令とでサイクル数を合わせることができる。
する時間を1サイクルとすると、条件分岐命令と分岐後
の命令の実行には2サイクルの時間を要するので1命令
当たり1サイクルで実行され、条件分岐命令とそれ以外
の命令とでサイクル数を合わせることができる。
【0042】
【発明の効果】以上に記載したところから明らかなよう
に、本発明によれば、分岐先を示す複数のアドレス部を
含む条件分岐命令の実行に際して、条件判断に係る演算
中に次の実行命令を主メモリ及び副メモリから前もって
読み出しておき、条件判断結果に従って命令を選択的に
実行するため、従来のように条件判断結果を待ってから
該当する命令を読み出す場合に生じる時間の遅れがな
く、条件分岐命令を他の逐次実行可能な命令と同じサイ
クル数で実行することができるので、条件分岐命令を演
算命令と分岐命令の2命令に分けて構成することに起因
する実行ステップ数の増加や処理効率の低下を伴うこと
がない。
に、本発明によれば、分岐先を示す複数のアドレス部を
含む条件分岐命令の実行に際して、条件判断に係る演算
中に次の実行命令を主メモリ及び副メモリから前もって
読み出しておき、条件判断結果に従って命令を選択的に
実行するため、従来のように条件判断結果を待ってから
該当する命令を読み出す場合に生じる時間の遅れがな
く、条件分岐命令を他の逐次実行可能な命令と同じサイ
クル数で実行することができるので、条件分岐命令を演
算命令と分岐命令の2命令に分けて構成することに起因
する実行ステップ数の増加や処理効率の低下を伴うこと
がない。
【0043】尚、前記した実施例は、本発明の一実施例
にすぎず、この例のみによって本発明の技術的範囲が狭
く解釈されてはならない。例えば、前記実施例では条件
分岐処理において2つのマイクロプログラムメモリを使
用して、これらから読み出される命令の何れかを選択し
て実行したが、一般には複数個のメモリを用いた多重分
岐処理に適用することができる。
にすぎず、この例のみによって本発明の技術的範囲が狭
く解釈されてはならない。例えば、前記実施例では条件
分岐処理において2つのマイクロプログラムメモリを使
用して、これらから読み出される命令の何れかを選択し
て実行したが、一般には複数個のメモリを用いた多重分
岐処理に適用することができる。
【図1】本発明に係る条件分岐処理装置の構成を示すブ
ロック図である。
ロック図である。
【図2】本発明に係る条件分岐処理について説明するた
めのタイムチャート図である。
めのタイムチャート図である。
【図3】ステータスと分岐処理との関係を概念的に示す
説明図である。
説明図である。
【図4】従来の条件分岐処理装置の構成を示すブロック
図である。
図である。
【図5】従来における条件分岐処理について説明するた
めのタイムチャート図であり、(a)は逐次に実行可能
な命令の処理状況を示し、(b)は条件分岐命令の処理
状況を示す。
めのタイムチャート図であり、(a)は逐次に実行可能
な命令の処理状況を示し、(b)は条件分岐命令の処理
状況を示す。
1 条件分岐処理装置 2(1) 第1の選択手段 2(2) 第2の選択手段 3 レジスタ 4A 主メモリ 4B 副メモリ 5 算術論理回路
フロントページの続き (56)参考文献 特開 昭60−181930(JP,A) 特開 昭57−75355(JP,A) 特開 平1−162930(JP,A) 特開 昭62−82402(JP,A) 特開 昭57−75355(JP,A) 特開 平3−152625(JP,A) 特開 平2−266432(JP,A) 特開 平3−33930(JP,A) 特開 昭58−68157(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 9/30 - 9/42
Claims (1)
- 【請求項1】 インクリメントされたアドレス又はレジ
スタによって指定される無条件の飛び先アドレスのいず
れかを選択する第1の選択手段と、 マイクロ命令を記憶するとともに前記第1の選択手段に
よるアドレス指定を受けて命令の読み出しがなされる主
メモリと、 条件分岐マイクロ命令に含まれた飛び先アドレスに対応
したマイクロ命令のみを記憶する副メモリと、 前記第1の選択手段におけるインクリメントされたアド
レス及び無条件の飛び先アドレスの切換を制御すると共
に条件分岐命令、無条件分岐アドレス、条件分岐アドレ
スから成るマイクロ命令を一時記憶するレジスタと、 前記主メモリ及び副メモリから読み出されたマイクロ命
令のいずれかをALU(算術論理回路)の演算結果のス
テータスに応じて選択し、前記レジスタに送出する第2
の選択手段とを備え、 クロックの1サイクル周期内において、前記ALU(算
術論理回路)の条件判断に係る演算の実行中に、前記レ
ジスタの無条件分岐アドレス及び条件分岐アドレスに応
じた複数の飛び先アドレスに対応するマイクロ命令を前
記主メモリ及び副メモリからそれぞれ読み出すと共に、前記ALU(算術論理回路)の 演算結果のステータスが
一の状態で、前記主メモリから読み出されたマイクロ命
令を選択して前記レジスタに送出し、また、前記ALU
(算術論理回路)の演算結果のステータスが他の状態
で、前記副メモリのマイクロ命令を選択して前記レジス
タに送出するようにしたことを特徴とする条件分岐処理
装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP03313068A JP3144004B2 (ja) | 1991-11-01 | 1991-11-01 | 条件分岐処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP03313068A JP3144004B2 (ja) | 1991-11-01 | 1991-11-01 | 条件分岐処理装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH05127898A JPH05127898A (ja) | 1993-05-25 |
| JP3144004B2 true JP3144004B2 (ja) | 2001-03-07 |
Family
ID=18036820
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP03313068A Expired - Fee Related JP3144004B2 (ja) | 1991-11-01 | 1991-11-01 | 条件分岐処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3144004B2 (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6557207B2 (en) | 2000-08-22 | 2003-05-06 | Alto U.S. Inc. | Squeegee assembly for a floor surface treatment apparatus |
| US6760947B2 (en) | 2000-08-22 | 2004-07-13 | Alto U.S. Inc. | Apparatus for treating a floor surface utilizing a handle mounted traverse switch |
| US6763544B2 (en) | 2000-08-22 | 2004-07-20 | Alto Us, Inc. | Apparatus for treating a floor surface |
-
1991
- 1991-11-01 JP JP03313068A patent/JP3144004B2/ja not_active Expired - Fee Related
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6557207B2 (en) | 2000-08-22 | 2003-05-06 | Alto U.S. Inc. | Squeegee assembly for a floor surface treatment apparatus |
| US6760947B2 (en) | 2000-08-22 | 2004-07-13 | Alto U.S. Inc. | Apparatus for treating a floor surface utilizing a handle mounted traverse switch |
| US6763544B2 (en) | 2000-08-22 | 2004-07-20 | Alto Us, Inc. | Apparatus for treating a floor surface |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH05127898A (ja) | 1993-05-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2640454B2 (ja) | ディジタル命令プロセッサ制御装置および1サイクル内で分岐を実行する方法 | |
| JP2645669B2 (ja) | データ処理システム | |
| JPH0115093B2 (ja) | ||
| KR20040016829A (ko) | 파이프라인식 프로세서에서의 예외 취급 방법, 장치 및시스템 | |
| US5930520A (en) | Pipelining device in a parallel processing apparatus and an instruction supplying method therefor | |
| JPH01310441A (ja) | データ処理装置 | |
| JPH06103068A (ja) | データ処理装置 | |
| JP3510729B2 (ja) | 命令実行方法および命令実行装置 | |
| JP3790626B2 (ja) | デュアルワードまたは複数命令をフェッチしかつ発行する方法および装置 | |
| JP3144004B2 (ja) | 条件分岐処理装置 | |
| JPH0743648B2 (ja) | 情報処理装置 | |
| CN101194228B (zh) | 执行微处理器和微控制器的子例行程序的快速返回的装置 | |
| EP0164418A1 (en) | Microprogram control system | |
| JP3602801B2 (ja) | メモリデータアクセス構造およびその方法 | |
| US6874080B2 (en) | Context processing by substantially simultaneously selecting address and instruction of different contexts | |
| JP2875864B2 (ja) | パイプライン処理方式 | |
| US5784634A (en) | Pipelined CPU with instruction fetch, execution and write back stages | |
| JP2824484B2 (ja) | パイプライン処理計算機 | |
| JPS6122818B2 (ja) | ||
| JP2982129B2 (ja) | マイクロプログラム制御装置 | |
| JP4151497B2 (ja) | パイプライン処理装置 | |
| JP2503983B2 (ja) | 情報処理装置 | |
| CN121478350A (zh) | 一种指令执行设备、执行方法及电子装置 | |
| JP3850156B2 (ja) | 命令処理装置 | |
| JP2924004B2 (ja) | 命令コード転送方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080105 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090105 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100105 Year of fee payment: 9 |
|
| LAPS | Cancellation because of no payment of annual fees |