JPH0668721B2 - アドレス制御回路 - Google Patents
アドレス制御回路Info
- Publication number
- JPH0668721B2 JPH0668721B2 JP25135685A JP25135685A JPH0668721B2 JP H0668721 B2 JPH0668721 B2 JP H0668721B2 JP 25135685 A JP25135685 A JP 25135685A JP 25135685 A JP25135685 A JP 25135685A JP H0668721 B2 JPH0668721 B2 JP H0668721B2
- Authority
- JP
- Japan
- Prior art keywords
- stack
- address
- instruction
- micro
- output
- 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
- 230000003247 decreasing effect Effects 0.000 claims 1
- 230000010365 information processing Effects 0.000 description 9
- 238000000034 method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
Landscapes
- Executing Machine-Instructions (AREA)
Description
【発明の詳細な説明】 産業上の利用分野 本発明は、LSI化された、マイクロプログラムを用い
る情報処理装置のアドレス制御回路に関するものであ
る。
る情報処理装置のアドレス制御回路に関するものであ
る。
従来の技術 近年、多くの計算機の機械命令はマイクロプログラムに
よって解釈実行されており、情報量の増加に伴い、情報
処理速度の高速化が望まれている。特に、画像処理の場
合は、単純処理の繰り返しが多く、マイクロプログラム
も多くのループやサブルーチンによって構成されてい
る。そこで情報処理速度の高速化のためには、繰り返し
回数の多いループ内のプログラムの実行サイクル数を1
サイクルでも減少させることが望ましい。
よって解釈実行されており、情報量の増加に伴い、情報
処理速度の高速化が望まれている。特に、画像処理の場
合は、単純処理の繰り返しが多く、マイクロプログラム
も多くのループやサブルーチンによって構成されてい
る。そこで情報処理速度の高速化のためには、繰り返し
回数の多いループ内のプログラムの実行サイクル数を1
サイクルでも減少させることが望ましい。
以下、図面を参照しながら従来の情報処理装置のマイク
ロプログラムを用いたアドレス制御回路について説明す
る。
ロプログラムを用いたアドレス制御回路について説明す
る。
第4図は、マイクロプログラムを用いた情報処理装置の
従来のアドレス制御回路を示すものである。
従来のアドレス制御回路を示すものである。
ROM32のアドレスレジスタ31に格納されているマ
イクロアドレスがROM32に入力され、ROM32か
ら出力されたマイクロ命令は、マイクロ命令レジスタ3
3に格納され、実行される。同時に、パイプライン方式
で、マイクロアドレスは加算回路34により1加算され
再びアドレスレジスタ31にセットされる。実行する命
令のマイクロアドレスが連続している場合は、上記のサ
イクルの繰り返しとなる。
イクロアドレスがROM32に入力され、ROM32か
ら出力されたマイクロ命令は、マイクロ命令レジスタ3
3に格納され、実行される。同時に、パイプライン方式
で、マイクロアドレスは加算回路34により1加算され
再びアドレスレジスタ31にセットされる。実行する命
令のマイクロアドレスが連続している場合は、上記のサ
イクルの繰り返しとなる。
命令中に、ジャンプサブルーチンが存在した場合は、マ
イクロ命令レジスタ33からの制御信号37によりスタ
ックポインタ36を1加算し、加算回路34で1加算さ
れたマイクロアドレスがサブルーチンの戻りアドレスと
してスタック35に格納され、サブルーチンの先頭アド
レスは、マイクロ命令レジスタ33からアドレスレジス
タ31へ入力される。サブルーチンが終了すると、スタ
ック35からマイクロアドレス(サブルーチンの戻りア
ドレス)が、サブルーチンの最終命令実行中にアドレス
レジスタ31にセットされ、制御信号37によりスタッ
クポイント36が1減算され、サブルーチンの最終命令
実行後の次のサイクルで戻りアドレスの示す命令が実行
される。
イクロ命令レジスタ33からの制御信号37によりスタ
ックポインタ36を1加算し、加算回路34で1加算さ
れたマイクロアドレスがサブルーチンの戻りアドレスと
してスタック35に格納され、サブルーチンの先頭アド
レスは、マイクロ命令レジスタ33からアドレスレジス
タ31へ入力される。サブルーチンが終了すると、スタ
ック35からマイクロアドレス(サブルーチンの戻りア
ドレス)が、サブルーチンの最終命令実行中にアドレス
レジスタ31にセットされ、制御信号37によりスタッ
クポイント36が1減算され、サブルーチンの最終命令
実行後の次のサイクルで戻りアドレスの示す命令が実行
される。
以上の様な構成を用いて、第5図に示すループを含むマ
イクロプログラムの実行を説明する。
イクロプログラムの実行を説明する。
第5図において、プログラム項目AからEまではマイク
ロアドレスは連続していたものである。まず、プログラ
ム項目のA41,B42を順に実行後、C43でプログ
ラムの終了かどうかを判断する。YESであれば終了、
NOであればD44を実行し、E45のGOTO命令実
行により、B42の先頭アドレスへ戻り、B42からE
45が繰り返される。
ロアドレスは連続していたものである。まず、プログラ
ム項目のA41,B42を順に実行後、C43でプログ
ラムの終了かどうかを判断する。YESであれば終了、
NOであればD44を実行し、E45のGOTO命令実
行により、B42の先頭アドレスへ戻り、B42からE
45が繰り返される。
E45のGOTO命令以外の命令は、パイプライン方式
により命令実行中に次命令の先読みが行なわれ、連続実
行される。
により命令実行中に次命令の先読みが行なわれ、連続実
行される。
E45のGOTO命令では、第6図に示す様に命令実行
時には既に次命令のマイクロアドレス(n+2)の先読
みが行なわれアドレスレジスタに格納されているため、
先読み終了後次の実行サイクルで先読みした命令は実行
せずに、マイクロ命令レジスタからGOTO命令の飛先
アドレスMを読み込み、その後の実行サイクルで、飛先
アドレスMの命令が実行される。このGOTO命令実行
時には、戻りアドレスをスタックしておく必要のあるジ
ャンプサブルーチン命令とは異なり、スタック動作は行
なわれていない。
時には既に次命令のマイクロアドレス(n+2)の先読
みが行なわれアドレスレジスタに格納されているため、
先読み終了後次の実行サイクルで先読みした命令は実行
せずに、マイクロ命令レジスタからGOTO命令の飛先
アドレスMを読み込み、その後の実行サイクルで、飛先
アドレスMの命令が実行される。このGOTO命令実行
時には、戻りアドレスをスタックしておく必要のあるジ
ャンプサブルーチン命令とは異なり、スタック動作は行
なわれていない。
発明が解決しようとする問題点 しかし、以上のような構成では、GOTO命令実行時に
不必要な命令先読み動作が1回余分に行なわれてしま
い、GOTO命令の実行には、2実行サイクル必要とな
る。特に、繰り返しの多いループを構成するためのGO
TO命令においては、ループの処理時間が余分に長くな
ってしまうという問題点があった。
不必要な命令先読み動作が1回余分に行なわれてしま
い、GOTO命令の実行には、2実行サイクル必要とな
る。特に、繰り返しの多いループを構成するためのGO
TO命令においては、ループの処理時間が余分に長くな
ってしまうという問題点があった。
本発明は従来技術の以上のような問題を解決するもの
で、ループ内のGOTO命令を削除できるアドレス制御
方式を用いてループの処理時間、即ち情報処理時間を短
縮することを目的とするものである。
で、ループ内のGOTO命令を削除できるアドレス制御
方式を用いてループの処理時間、即ち情報処理時間を短
縮することを目的とするものである。
問題点を解決するための手段 本発明は、マイクロプログラムを格納する記憶手段と、
マイクロアドレス格納手段と、マイクロ命令格納手段
と、マイクロアドレスの加算回路と、マイクロアドレス
のスタックと、スタック位置を示すスタックポイント
と、前記マイクロ命令格納手段からの制御信号により、
前記スタックとスタックポインタを制御するスタック制
御回路とを備え、前記マイクロアドレス格納手段への入
力は、前記加算回路の出力と、前記マイクロ命令格納手
段からの出力と、前記スタックからの出力から構成され
ており、前記スタック制御回路が前記マイクロ命令格納
手段からの制御信号により前記スタックポインタの値を
1単位増やして前記加算回路の出力をスタックポインタ
により指示される前記スタックへ入力する第1の制御
と、前記スタックポインタの値を1単位減らしてスタッ
クポインタにより指示される前記スタックの出力を前記
マイクロアドレス格納手段へ入力する第2の制御と、前
記スタックポインタを変化させずにスタックポインタに
より指示される前記スタックの出力を前記マイクロアド
レス格納手段へ入力する第3の制御を行い、ループの最
後の命令に特定の属性を付加し前記属性に対し前記スタ
ック制御回路が第3の制御を行うことで、ループを繰り
返している間、ループ内の最後の命令を実行する時の前
記スタックの出力が前記ループの先頭マイクロアドレス
になることを特徴とするアドレス制御回路により、上記
目的を達成するものである。
マイクロアドレス格納手段と、マイクロ命令格納手段
と、マイクロアドレスの加算回路と、マイクロアドレス
のスタックと、スタック位置を示すスタックポイント
と、前記マイクロ命令格納手段からの制御信号により、
前記スタックとスタックポインタを制御するスタック制
御回路とを備え、前記マイクロアドレス格納手段への入
力は、前記加算回路の出力と、前記マイクロ命令格納手
段からの出力と、前記スタックからの出力から構成され
ており、前記スタック制御回路が前記マイクロ命令格納
手段からの制御信号により前記スタックポインタの値を
1単位増やして前記加算回路の出力をスタックポインタ
により指示される前記スタックへ入力する第1の制御
と、前記スタックポインタの値を1単位減らしてスタッ
クポインタにより指示される前記スタックの出力を前記
マイクロアドレス格納手段へ入力する第2の制御と、前
記スタックポインタを変化させずにスタックポインタに
より指示される前記スタックの出力を前記マイクロアド
レス格納手段へ入力する第3の制御を行い、ループの最
後の命令に特定の属性を付加し前記属性に対し前記スタ
ック制御回路が第3の制御を行うことで、ループを繰り
返している間、ループ内の最後の命令を実行する時の前
記スタックの出力が前記ループの先頭マイクロアドレス
になることを特徴とするアドレス制御回路により、上記
目的を達成するものである。
作用 本発明は上記構成により、繰り返しの多いループの先頭
番地を前記スタックに格納しておき、ループ内の最終番
地の命令を実行すると同時に、前記マイクロ命令格納手
段からの前記制御信号及びスタック制御回路によりスタ
ックから戻りアドレスとしてループの先頭番地が、前記
マイクロアドレス格納手段へ格納され、かつ前記スタッ
クポインタは1減算せずにそのまま変化しないという操
作が行なわれ、ループを繰り返している間は、ループ内
の最後の命令を実行する時の前記スタックの出力が前記
ループの先頭マイクロアドレスになるようにしたもので
ある。
番地を前記スタックに格納しておき、ループ内の最終番
地の命令を実行すると同時に、前記マイクロ命令格納手
段からの前記制御信号及びスタック制御回路によりスタ
ックから戻りアドレスとしてループの先頭番地が、前記
マイクロアドレス格納手段へ格納され、かつ前記スタッ
クポインタは1減算せずにそのまま変化しないという操
作が行なわれ、ループを繰り返している間は、ループ内
の最後の命令を実行する時の前記スタックの出力が前記
ループの先頭マイクロアドレスになるようにしたもので
ある。
実施例 以下、第1図は本発明の一実施例におけるマイクロプロ
ブラムを用いた情報処理装置のアドレス制御回路を示す
ものである。
ブラムを用いた情報処理装置のアドレス制御回路を示す
ものである。
ROM12のアドレスレジスタ11に格納されているマ
イクロアドレスがROM12に入力され、ROM12か
ら出力されたマイクロ命令は、マイクロ命令レジスタ1
3に格納され実行される。同時にパイプライン方式で、
マイクロアドレスは加算回路14により1加算され再び
アドレスレジスタ11にセットされる。実行する命令の
マイクロアドレスが連続している場合は、上記のサイク
ルの繰り返しとなる。
イクロアドレスがROM12に入力され、ROM12か
ら出力されたマイクロ命令は、マイクロ命令レジスタ1
3に格納され実行される。同時にパイプライン方式で、
マイクロアドレスは加算回路14により1加算され再び
アドレスレジスタ11にセットされる。実行する命令の
マイクロアドレスが連続している場合は、上記のサイク
ルの繰り返しとなる。
命令中にジャンプサブルーチンが存在した場合は、マイ
クロ命令レジスタ13からの制御信号18により、スタ
ック制御回路17が動作し、スタックポインタ16を1
加算し、加算回路14で1加算されたマイクロアドレス
がサブルーチンの戻りアドレスとしてスタック15に格
納され、サブルーチンの先頭アドレスはマイクロ命令レ
ジスタ13からアドレスレジスタ11へ入力される。
クロ命令レジスタ13からの制御信号18により、スタ
ック制御回路17が動作し、スタックポインタ16を1
加算し、加算回路14で1加算されたマイクロアドレス
がサブルーチンの戻りアドレスとしてスタック15に格
納され、サブルーチンの先頭アドレスはマイクロ命令レ
ジスタ13からアドレスレジスタ11へ入力される。
サブルーチンが終了すると、スタック15からマイクロ
アドレス(サブルーチンの戻りアドレス)がサブルーチ
ンの最終命令実行中にアドレスレジスタ11にセットさ
れる。また同時に、制御信号18によってスタック制御
回路17が動作し、スタックポインタ16が1減算され
る場合と、1減算されずにそのまま不変という場合の2
通りの制御が行なわれる。アドレスレジスタ11にセッ
トされた戻りのアドレスの示す命令は、サブルーチンの
最終命令実行後の次のサイクルで実行される。
アドレス(サブルーチンの戻りアドレス)がサブルーチ
ンの最終命令実行中にアドレスレジスタ11にセットさ
れる。また同時に、制御信号18によってスタック制御
回路17が動作し、スタックポインタ16が1減算され
る場合と、1減算されずにそのまま不変という場合の2
通りの制御が行なわれる。アドレスレジスタ11にセッ
トされた戻りのアドレスの示す命令は、サブルーチンの
最終命令実行後の次のサイクルで実行される。
本実施例においては、マイクロ命令内にスタック制御フ
ィールドを2bit設け、この2bitの制御信号18により
スタック制御回路17が動作している。上記のスタック
制御回路17の制御動作を次表に整理して示す。
ィールドを2bit設け、この2bitの制御信号18により
スタック制御回路17が動作している。上記のスタック
制御回路17の制御動作を次表に整理して示す。
実行する命令のマイクロアドレスが連続している場合は
スタック動作は必要ないため、スタック及びスタックポ
インタは無操作である。
スタック動作は必要ないため、スタック及びスタックポ
インタは無操作である。
以上の様なアドレス制御方式を用いてループを含むマイ
クロプログラムの実行を説明する。
クロプログラムの実行を説明する。
本実施例におけるマイクロプログラム内では、本アドレ
ス制御回路の特徴であるスタック制御回路の制御動作の
内、制御信号2bitが(1,0)の時の『マイクロアド
レスをスタックから出力し、かつスタックポインタは不
変』という動作に対応して、Lood Top of Stackという
属性を命令に付加してあり、この属性により制御信号2
bit(1,0)が生成される。
ス制御回路の特徴であるスタック制御回路の制御動作の
内、制御信号2bitが(1,0)の時の『マイクロアド
レスをスタックから出力し、かつスタックポインタは不
変』という動作に対応して、Lood Top of Stackという
属性を命令に付加してあり、この属性により制御信号2
bit(1,0)が生成される。
第2図は、本発明の実施例に用いたループを含んだマイ
クロプログラムの流れ図である。第2図において、プロ
グラム項目F21は、サブルーチン分岐を示す命令であ
り、プログラム項目G22は、第5図に示す従来例のプ
ログラム項目Aのマイクロアドレスをサブルーチン化の
ために変えたものであり、更にプログラム項目内の最後
の命令にLoad Top of Stackという属性を付加してあ
り、それ以外はプログラム項目Aと同様である。プログ
ラム項目B23とC24は、第5図に示す従来例と同様
のものである。プログラム項目H25についても、項目
の最後の命令に、Load Top of Stackという属性を付加
した以外は、第5図に示す従来例と同様のもので、プロ
グラムのステップ数も実行サイクルも同じである。
クロプログラムの流れ図である。第2図において、プロ
グラム項目F21は、サブルーチン分岐を示す命令であ
り、プログラム項目G22は、第5図に示す従来例のプ
ログラム項目Aのマイクロアドレスをサブルーチン化の
ために変えたものであり、更にプログラム項目内の最後
の命令にLoad Top of Stackという属性を付加してあ
り、それ以外はプログラム項目Aと同様である。プログ
ラム項目B23とC24は、第5図に示す従来例と同様
のものである。プログラム項目H25についても、項目
の最後の命令に、Load Top of Stackという属性を付加
した以外は、第5図に示す従来例と同様のもので、プロ
グラムのステップ数も実行サイクルも同じである。
但し、上記のプログラム項目BからHまでは、マイクロ
アドレスは連続したものである。
アドレスは連続したものである。
まず、プログラム項目F21が実行されると、ジャンプ
サブルーチン命令であるため、マイクロ命令レジスタか
らの制御信号によりスタック制御回路17が動作し、ス
タックポインタ16を1加算し、加算回路14で1加算
されたマイクロアドレスがスタック15に格納される。
このマイクロアドレスは、サブルーチンからの戻りアド
レスである。
サブルーチン命令であるため、マイクロ命令レジスタか
らの制御信号によりスタック制御回路17が動作し、ス
タックポインタ16を1加算し、加算回路14で1加算
されたマイクロアドレスがスタック15に格納される。
このマイクロアドレスは、サブルーチンからの戻りアド
レスである。
サブルーチンへ分岐し、プログラム項目G22を実行し
はじめ、最後の命令を実行すると同時に、その命令に付
加してあるLoad Top of Stackという属性から生じる制
御信号によりスタック制御回路17が動作し、スタック
15に格納されているサブルーチンからの戻りアドレス
がアドレスレジスタ11にセットされ、かつ、スタック
ポインタ16は変化しないで、そのまま、サブルーチン
からの戻りアドレスを示しているという動作が行なわれ
る。
はじめ、最後の命令を実行すると同時に、その命令に付
加してあるLoad Top of Stackという属性から生じる制
御信号によりスタック制御回路17が動作し、スタック
15に格納されているサブルーチンからの戻りアドレス
がアドレスレジスタ11にセットされ、かつ、スタック
ポインタ16は変化しないで、そのまま、サブルーチン
からの戻りアドレスを示しているという動作が行なわれ
る。
そして、プログラム項目B23,C24と実行し、プロ
グラムが終了しているか判断し、YESであれば終了、
NOであればプログラム項目H25を実行する。プログ
ラム項目H25の最後の命令を実行すると同時に、その
命令に付加してあるLoad Top of Stackという属性か
ら、プログラム項目G22の場合と同様の動作が生じ、
プログラム項目G22が終了してサブルーチンから戻っ
てきた戻りアドレスと同じマイクロアドレスが、スタッ
ク15からアドレスレジスタ11にセットされる。即
ち、プログラム項目B23の最初の命令から再び実行さ
れ、プログラム項目B23からプログラム項目H25
が、プログラム項目C24でENDになるまで繰り返さ
れることになり、ループが構成されたことになる。
グラムが終了しているか判断し、YESであれば終了、
NOであればプログラム項目H25を実行する。プログ
ラム項目H25の最後の命令を実行すると同時に、その
命令に付加してあるLoad Top of Stackという属性か
ら、プログラム項目G22の場合と同様の動作が生じ、
プログラム項目G22が終了してサブルーチンから戻っ
てきた戻りアドレスと同じマイクロアドレスが、スタッ
ク15からアドレスレジスタ11にセットされる。即
ち、プログラム項目B23の最初の命令から再び実行さ
れ、プログラム項目B23からプログラム項目H25
が、プログラム項目C24でENDになるまで繰り返さ
れることになり、ループが構成されたことになる。
第3図を用いて、Load Top of Stackという属性による
スタック制御回路17のアドレス制御動作を説明する。
スタック制御回路17のアドレス制御動作を説明する。
第2図のプログラム項目FのJumpサブルーチン命令実行
に付随して、予めスタック15には戻りアドレスMが格
納されてある。
に付随して、予めスタック15には戻りアドレスMが格
納されてある。
プログラム項目Hの最後の命令のマイクロアドレスを
n、そのひとつ前をn−1として、マイクロアドレスn
の命令に、Load Top of Stackという属性が付加されて
ある。
n、そのひとつ前をn−1として、マイクロアドレスn
の命令に、Load Top of Stackという属性が付加されて
ある。
マイクロアドレスn−1の命令の実行後、マイクロアド
レスnの命令が実行されると同時に、同一実行サイクル
でLoad Top of Stackの属性から生じる制御信号により
スタック制御回路17が動作し、スタック15から戻り
アドレスMがアドレスレジスタ11に格納される。即ち
命令先読みアドレスとしてMがセットされる。従って、
マイクロアドレスnの命令実行後の次実行サイクルでマ
イクロアドレスMの命令が実行され、従来のように不必
要な命令先読み動作は行なわれない。その後、加算回路
14を通して命令先読みアドレスにM+1,M+2がセ
ットされ、それぞれ実行されていく。
レスnの命令が実行されると同時に、同一実行サイクル
でLoad Top of Stackの属性から生じる制御信号により
スタック制御回路17が動作し、スタック15から戻り
アドレスMがアドレスレジスタ11に格納される。即ち
命令先読みアドレスとしてMがセットされる。従って、
マイクロアドレスnの命令実行後の次実行サイクルでマ
イクロアドレスMの命令が実行され、従来のように不必
要な命令先読み動作は行なわれない。その後、加算回路
14を通して命令先読みアドレスにM+1,M+2がセ
ットされ、それぞれ実行されていく。
以上の説明から明らかなように本実施例によれば、スタ
ック15からマイクロアドレスをアドレスレジスタ11
へ入力し、かつスタックポインタ16は変化しないとい
うアドレス制御を行ない、マイクロプログラムのループ
において、Load Top of Stackという属性をループ内の
最後の命令に付加するだけで、従来ループ形成のために
使用していた2実行サイクルを要するGOTO命令が削
除でき、たとえば1000回のループにおいては、20
00実行サイクル分ループ実行時間が短縮できることに
なり、特に繰り返し回数の多いループにおいては、情報
処理時間の大幅な短縮を図ることができる。
ック15からマイクロアドレスをアドレスレジスタ11
へ入力し、かつスタックポインタ16は変化しないとい
うアドレス制御を行ない、マイクロプログラムのループ
において、Load Top of Stackという属性をループ内の
最後の命令に付加するだけで、従来ループ形成のために
使用していた2実行サイクルを要するGOTO命令が削
除でき、たとえば1000回のループにおいては、20
00実行サイクル分ループ実行時間が短縮できることに
なり、特に繰り返し回数の多いループにおいては、情報
処理時間の大幅な短縮を図ることができる。
また、本実施例においては、サブルーチン分岐のための
プログラム項目F21を1ステップスタック利用のため
に付加してあるが、GOTO命令が1ステップ削除出来
るため、総合的なプログラムのステップ数は増えること
なく、本発明を実現出来る。ルプの直前にサブルーチン
が予めあるプログラムであれば、ステップ数においても
1ステップ減らすことが出来るという効果が生じる。
プログラム項目F21を1ステップスタック利用のため
に付加してあるが、GOTO命令が1ステップ削除出来
るため、総合的なプログラムのステップ数は増えること
なく、本発明を実現出来る。ルプの直前にサブルーチン
が予めあるプログラムであれば、ステップ数においても
1ステップ減らすことが出来るという効果が生じる。
なお、表において制御信号を3ビットとし、スタックを
操作せずかつスタックポインタを1単位減らす制御動作
を追加すれば、第2図のプログラム項目C24でYES
のときにこの制御動作を選択させる属性をプログラム項
目C24に付加しておくことで、あるいはプログラム項
目C24でYESのときの分岐先にある命令列中の一つ
の命令に付加しておくことで、ループ処理を実行する前
後でスタックポインタは不変となり、サブルーチンの内
部でループを実行する、あるいはループの内部で他のル
ープを実行することができる。
操作せずかつスタックポインタを1単位減らす制御動作
を追加すれば、第2図のプログラム項目C24でYES
のときにこの制御動作を選択させる属性をプログラム項
目C24に付加しておくことで、あるいはプログラム項
目C24でYESのときの分岐先にある命令列中の一つ
の命令に付加しておくことで、ループ処理を実行する前
後でスタックポインタは不変となり、サブルーチンの内
部でループを実行する、あるいはループの内部で他のル
ープを実行することができる。
なお、以上の説明において、Load Top of Stackという
属性名やスタック制御フィールドの2bit構成は、他の
名称,他の構成を使用してもよい。
属性名やスタック制御フィールドの2bit構成は、他の
名称,他の構成を使用してもよい。
発明の効果 以上のように本発明は、マイクロプログラムを格納する
記憶手段と、マイクロアドレスを格納するマイクロアド
レス格納手段と、マイクロ命令を格納するマイクロ命令
格納手段と、アドレス加算回路とマイクロアドレススタ
ックとスタックポインタとスタックとスタックポインタ
を制御するスタック制御回路を備え、ループの最後の命
令に特定の属性を付加し、前記属性に対しスタック制御
回路が、前記マイクロアドレススタックから前記マイク
ロアドレスを前記マイクロアドレス格納手段へ入力し、
かつスタックポインタは変化しない制御を行うことによ
り、マイクロプログラムのループにおいて、ループの先
頭アドレスを前記スタックから呼出すようにして従来ル
ープ形成のために使用していた2実行サイクル必要なG
OTO命令を削除し、ループ実行時間が短縮でき、特に
繰り返し回数の多いループにおいては、情報処理時間の
大幅な短縮を図ることができる。
記憶手段と、マイクロアドレスを格納するマイクロアド
レス格納手段と、マイクロ命令を格納するマイクロ命令
格納手段と、アドレス加算回路とマイクロアドレススタ
ックとスタックポインタとスタックとスタックポインタ
を制御するスタック制御回路を備え、ループの最後の命
令に特定の属性を付加し、前記属性に対しスタック制御
回路が、前記マイクロアドレススタックから前記マイク
ロアドレスを前記マイクロアドレス格納手段へ入力し、
かつスタックポインタは変化しない制御を行うことによ
り、マイクロプログラムのループにおいて、ループの先
頭アドレスを前記スタックから呼出すようにして従来ル
ープ形成のために使用していた2実行サイクル必要なG
OTO命令を削除し、ループ実行時間が短縮でき、特に
繰り返し回数の多いループにおいては、情報処理時間の
大幅な短縮を図ることができる。
第1図は、本発明の一実施例におけるアドレス制御回路
のブロック結線図、第2図は本発明の一実施例における
同回路のマイクロプログラムの流れ図、第3図は本発明
の一実施例における同回路の命令実行サイクル、命令先
読みサイクル及びスタックの対応を示す概念図、第4図
は従来のアドレス制御回路のブロック結線図、第5図は
従来の同回路のマイクロプログラムの流れ図、第6図は
従来の同回路のGOTO命令実行サイクルを示す概念図
である。 11……アドレスレジスタ、12……ROM、13……
マイクロ命令レジスタ、14……加算回路、15……ス
タック、16……スタックポインタ、17……スタック
制御回路、18……制御信号。
のブロック結線図、第2図は本発明の一実施例における
同回路のマイクロプログラムの流れ図、第3図は本発明
の一実施例における同回路の命令実行サイクル、命令先
読みサイクル及びスタックの対応を示す概念図、第4図
は従来のアドレス制御回路のブロック結線図、第5図は
従来の同回路のマイクロプログラムの流れ図、第6図は
従来の同回路のGOTO命令実行サイクルを示す概念図
である。 11……アドレスレジスタ、12……ROM、13……
マイクロ命令レジスタ、14……加算回路、15……ス
タック、16……スタックポインタ、17……スタック
制御回路、18……制御信号。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 広上 悦子 神奈川県川崎市多摩区東三田3丁目10番1 号 松下技研株式会社内 (72)発明者 小寺 宏曄 神奈川県川崎市多摩区東三田3丁目10番1 号 松下技研株式会社内
Claims (1)
- 【請求項1】マイクロプログラムを格納する記憶手段
と、前記記憶手段へ入力するマイクロアドレスを格納す
るマイクロアドレス格納手段と、前記記憶手段から出力
されるマイクロ命令を格納するマイクロ命令格納手段
と、前記マイクロアドレスを1単位加算する加算回路
と、2語以上のマイクロアドレスを保持するスタック
と、ポインタの値の増減により前記スタックのスタック
位置を示すスタックポインタと、前記マイクロ命令格納
手段からの制御信号により前記スタックと前記スタック
ポインタを制御するスタック制御回路を具備し、前記マ
イクロアドレス格納手段への入力を、前記加算回路の出
力と、前記マイクロ命令格納手段の出力と、前記スタッ
クポインタで指示されるスタックの出力から構成し、前
記スタック制御回路が前記マイクロ命令格納手段からの
制御信号により前記スタックポインタの値を1単位増や
して前記加算回路の出力をスタックポインタにより指示
される前記スタックへ入力する第1の制御と、前記スタ
ックポインタの値を1単位減らしてスタックポインタに
より指示される前記スタックの出力を前記マイクロアド
レス格納手段へ入力する第2の制御と、前記スタックポ
インタを変化させずにスタックポインタにより指示され
る前記スタックの出力を前記マイクロアドレス格納手段
へ入力する第3の制御を行い、ループの最後の命令に特
定の属性を付加し前記属性に対し前記スタック制御回路
が第3の制御を行うことで、ループを繰り返している
間、ループ内の最後の命令を実行する時の前記スタック
の出力が前記ループの先頭マイクロアドレスになること
を特徴とするアドレス制御回路。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP25135685A JPH0668721B2 (ja) | 1985-11-08 | 1985-11-08 | アドレス制御回路 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP25135685A JPH0668721B2 (ja) | 1985-11-08 | 1985-11-08 | アドレス制御回路 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS62111327A JPS62111327A (ja) | 1987-05-22 |
| JPH0668721B2 true JPH0668721B2 (ja) | 1994-08-31 |
Family
ID=17221610
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP25135685A Expired - Fee Related JPH0668721B2 (ja) | 1985-11-08 | 1985-11-08 | アドレス制御回路 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0668721B2 (ja) |
-
1985
- 1985-11-08 JP JP25135685A patent/JPH0668721B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPS62111327A (ja) | 1987-05-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2560988B2 (ja) | 情報処理装置および処理方法 | |
| JPH06309177A (ja) | マイクロコンピュータ | |
| US5390306A (en) | Pipeline processing system and microprocessor using the system | |
| JP3599499B2 (ja) | 中央処理装置 | |
| JPH07129399A (ja) | 命令属性レジスターを使用して多機能命令を実行する マイクロコンピュータ | |
| JPH03184123A (ja) | デジタルデータプロセッサのための手続き状態記述子システム | |
| JPH0214730B2 (ja) | ||
| JPH03204030A (ja) | コンピュータ用プロセツサ | |
| TWI223193B (en) | Apparatus and method for masked move to and from flags register in a processor | |
| JPS6125166B2 (ja) | ||
| JPS58200349A (ja) | マイクロプログラム制御装置 | |
| JPS60178539A (ja) | 情報処理装置におけるバイパス制御方式 | |
| JP2022023631A (ja) | アセンブリ命令変換プログラム、アセンブリ命令変換方法、及び情報処理装置 | |
| JP3060917B2 (ja) | プロセッサ | |
| JPS6126692B2 (ja) | ||
| JPS62111327A (ja) | アドレス制御回路 | |
| JPH05165640A (ja) | マイクロプロセッサ | |
| JPS61100836A (ja) | 移動命令論理比較命令処理方式 | |
| JPH0619705A (ja) | パイプライン制御方式 | |
| JPS6332587A (ja) | 表示制御装置 | |
| JPH0343831A (ja) | 制御プログラム実行制御回路 | |
| JPH036735A (ja) | データ処理装置 | |
| JPS6221128B2 (ja) | ||
| JP2000305782A (ja) | 演算装置 | |
| JPS60179844A (ja) | 命令再読出し制御方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |