JPH0224721A - プログラム制御装置 - Google Patents
プログラム制御装置Info
- Publication number
- JPH0224721A JPH0224721A JP17381188A JP17381188A JPH0224721A JP H0224721 A JPH0224721 A JP H0224721A JP 17381188 A JP17381188 A JP 17381188A JP 17381188 A JP17381188 A JP 17381188A JP H0224721 A JPH0224721 A JP H0224721A
- Authority
- JP
- Japan
- Prior art keywords
- program
- instruction
- program counter
- program memory
- instructions
- 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
Links
- 230000015654 memory Effects 0.000 claims abstract description 67
- 238000012546 transfer Methods 0.000 claims abstract description 14
- 238000012545 processing Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 230000009977 dual effect Effects 0.000 description 2
- 210000003127 knee Anatomy 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- GVBNSPFBYXGREE-UHFFFAOYSA-N Visnadine Natural products C1=CC(=O)OC2=C1C=CC1=C2C(OC(C)=O)C(OC(=O)C(C)CC)C(C)(C)O1 GVBNSPFBYXGREE-UHFFFAOYSA-N 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004898 kneading Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Landscapes
- Advance Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産業上の利用分野)
本発明は、ディジタル信号処理プロセッサ(DSP)の
内部に備えられたプログラム制御装置に関する。
内部に備えられたプログラム制御装置に関する。
(従来の技術)
音声合成装置やディジタルフィルタ等には、その処理デ
ータを高速で演算するためにディジタル信号処理プロセ
ッサが使用されている。
ータを高速で演算するためにディジタル信号処理プロセ
ッサが使用されている。
このディジタル信号処理プロセッサの動作プログラムは
、プロセッサ内部に組み込み、あるいは外付けされたプ
ログラムメモリに格納される。−般に、プログラムメモ
リには、プログラムを構成する命令が実行順にシーケン
シャルに格納される。しかし、ディジタル信号処理プロ
セッサのプログラムは、同一命令が繰り返されることが
多いことから、プログラムメモリの容量を減少させる目
的で、ダイナミックに命令の読み出しを行なうプログラ
ム制御装置が設けられている。
、プロセッサ内部に組み込み、あるいは外付けされたプ
ログラムメモリに格納される。−般に、プログラムメモ
リには、プログラムを構成する命令が実行順にシーケン
シャルに格納される。しかし、ディジタル信号処理プロ
セッサのプログラムは、同一命令が繰り返されることが
多いことから、プログラムメモリの容量を減少させる目
的で、ダイナミックに命令の読み出しを行なうプログラ
ム制御装置が設けられている。
第2図に、そのような従来のプログラム制御装置のブロ
ック図を示す。
ック図を示す。
この装置は、プログラムメモリ1に格納されたプログラ
ムを構成する命令を、所定の順に読み出してデコード命
令2を得て、これを外部回路に向けて出力するものであ
る。
ムを構成する命令を、所定の順に読み出してデコード命
令2を得て、これを外部回路に向けて出力するものであ
る。
この装置には、プログラムメモリ1からの命令の読み出
しを制御するプログラムカウンタ3と、プログラムメモ
リ1から読み出された命令を一時格納する命令レジスタ
4と、この命令レジスタ4に格納された命令を解読しデ
コード命令2を出力する復号器5と、この装置各部の動
作を制御するコントローラ6から構成されている。
しを制御するプログラムカウンタ3と、プログラムメモ
リ1から読み出された命令を一時格納する命令レジスタ
4と、この命令レジスタ4に格納された命令を解読しデ
コード命令2を出力する復号器5と、この装置各部の動
作を制御するコントローラ6から構成されている。
プログラムカウンタ3は、プログラムメモリ1の読み出
しアドレスを決定するカウンタで、例えば、通常、1マ
シンサイクル毎に1ずつカウントアツプするよう制御さ
れている。プログラムメモリ1からは、プログラムカウ
ンタ3の制御に従って、該当するアドレスから命令が読
み出され、命令レジスタ4に格納される。
しアドレスを決定するカウンタで、例えば、通常、1マ
シンサイクル毎に1ずつカウントアツプするよう制御さ
れている。プログラムメモリ1からは、プログラムカウ
ンタ3の制御に従って、該当するアドレスから命令が読
み出され、命令レジスタ4に格納される。
命令レジスタ4に格納された命令は、復号器5において
解読される。命令には、通常、演算命令、ジャンプ命令
、I10命令等がある。ジャンプ命令以外の命令の場合
、復号器5で解読を終えると、そのままデコード命令2
として外部回路に向けて出力される。
解読される。命令には、通常、演算命令、ジャンプ命令
、I10命令等がある。ジャンプ命令以外の命令の場合
、復号器5で解読を終えると、そのままデコード命令2
として外部回路に向けて出力される。
コントローラ6は、ジャンプ命令以外の命令の場合、プ
ログラムカウンタ3に対しカウントアツプを指示し、命
令レジスタ4に対し、プログラムメモリ1から出力され
る次の命令の格納の指示を行なう。
ログラムカウンタ3に対しカウントアツプを指示し、命
令レジスタ4に対し、プログラムメモリ1から出力され
る次の命令の格納の指示を行なう。
、一方、ジャンプ命令の場合には、復号器5からその命
令中に含まれるジャンプ先アドレスをプログラムカウン
タ3に向けて転送し、プログラムカウンタ3に対しその
ジャンプ先アドレスの格納を指示する。これによって、
プログラムカウンタ3は、ジャンプ先アドレスを開始点
として再び1ずつカウントアツプを開始し、プログラム
メモリlからはそれに応じた命令が出力される。
令中に含まれるジャンプ先アドレスをプログラムカウン
タ3に向けて転送し、プログラムカウンタ3に対しその
ジャンプ先アドレスの格納を指示する。これによって、
プログラムカウンタ3は、ジャンプ先アドレスを開始点
として再び1ずつカウントアツプを開始し、プログラム
メモリlからはそれに応じた命令が出力される。
ところで、通常、プログラムメモリ1からの命令の読み
出しのためには、一定のアクセスタイムが要求される。
出しのためには、一定のアクセスタイムが要求される。
又、命令レジスタ4に格納された命令な復号器5が解読
する場合、やはり一定の解読時間が要求される。
する場合、やはり一定の解読時間が要求される。
従って、プログラムカウンタ3がプログラムメモリ1に
対し所定のアドレス信号を出力し、こねに応じてプログ
ラムメモリ1から命令が読み出され、その命令が命令レ
ジスタ4に格納され、更に復号器5がその命令を解読す
るまでには一定の動作時間が必要になる。
対し所定のアドレス信号を出力し、こねに応じてプログ
ラムメモリ1から命令が読み出され、その命令が命令レ
ジスタ4に格納され、更に復号器5がその命令を解読す
るまでには一定の動作時間が必要になる。
このプログラム制御装置により出力されるデコード命令
2を受は入れる外部回路の演算速度が上記動作時間に比
べて遅い場合には問題はないが、逆に演算速度が高速化
された場合、デコード命令2の出力が遅いことは演算の
高速化を妨げる要因となる。
2を受は入れる外部回路の演算速度が上記動作時間に比
べて遅い場合には問題はないが、逆に演算速度が高速化
された場合、デコード命令2の出力が遅いことは演算の
高速化を妨げる要因となる。
そこで、従来、プログラムメモリ1からの命令の読み出
しと復号器5の命令の解読とを、いわゆるバイブライン
制御によって並行して実行するようにしている。即ち、
プログラムカウンタ3がプログラムメモリ1にアドレス
信号を供給し命令が読み出される間、復号器5は、その
1マシンサイクル前に読み出された命令を命令レジスタ
4から受は入れ解読作業を実行する。
しと復号器5の命令の解読とを、いわゆるバイブライン
制御によって並行して実行するようにしている。即ち、
プログラムカウンタ3がプログラムメモリ1にアドレス
信号を供給し命令が読み出される間、復号器5は、その
1マシンサイクル前に読み出された命令を命令レジスタ
4から受は入れ解読作業を実行する。
従来のプログラム制御装置においては、このようにして
その処理の高速化を図っていた。
その処理の高速化を図っていた。
(発明が解決しようとする課題)
ところで、以上のような従来のプログラム制御装置のジ
ャンプ命令に関する動作について説明する。
ャンプ命令に関する動作について説明する。
第3図は、その従来の装置の動作タイムチャートである
。
。
図(a)に示すように、プログラムカウンタは、1マシ
ンサイクル毎に、m−1,m、m+1というように1ず
つカウントアツプされる。そして、そのアドレス信号に
対応して読み出された命令を、それぞれCニー2 、
Ct−+・・・というように表示すると、その命令は第
3図(b)に示すように命令レジスタに格納され、これ
が同図(C)に示すように復号器によって解読される。
ンサイクル毎に、m−1,m、m+1というように1ず
つカウントアツプされる。そして、そのアドレス信号に
対応して読み出された命令を、それぞれCニー2 、
Ct−+・・・というように表示すると、その命令は第
3図(b)に示すように命令レジスタに格納され、これ
が同図(C)に示すように復号器によって解読される。
そして、先ず、第3図に示すように、プログラムカウン
タ3がm−1を示しているとき、命令レジスタ4には、
既にその1マシンサイクル前に読み出された命令Cm−
2が格納されており、それが復号器5によって解読され
ている。
タ3がm−1を示しているとき、命令レジスタ4には、
既にその1マシンサイクル前に読み出された命令Cm−
2が格納されており、それが復号器5によって解読され
ている。
プログラムカウンタ3が1だけカウントアツプされてア
ドレス信号がmになったとき、命令レジスタ4には命令
cm−tが格納され、これが復号器5によって解読され
る。尚、命令C1は、ジャンプ命令であるものとし、そ
のジャンプ命令にはジャンプ先アドレスが含まれている
ものとする。
ドレス信号がmになったとき、命令レジスタ4には命令
cm−tが格納され、これが復号器5によって解読され
る。尚、命令C1は、ジャンプ命令であるものとし、そ
のジャンプ命令にはジャンプ先アドレスが含まれている
ものとする。
ジャンプ命令であるか否かは、復号器5が命令の解読を
終えてから初めて分かるため、命令C,nに含まれるジ
ャンプ先アドレスβがプログラムカウンタ3に格納され
るときには、既にプログラムカウンタはm+1を示して
おり、図示しない命令C+a+1が読み出されている。
終えてから初めて分かるため、命令C,nに含まれるジ
ャンプ先アドレスβがプログラムカウンタ3に格納され
るときには、既にプログラムカウンタはm+1を示して
おり、図示しない命令C+a+1が読み出されている。
この命令Cm * 1は不要な命令であるため、1マシ
ンサイクル分装置の動作が見過られる。
ンサイクル分装置の動作が見過られる。
そして、次にプログラムカウンタがアドレス信号で+1
を出力したとき、命令C4が命令レジスタに格納され、
復号器5によってこれが解読される。その後、プログラ
ムカウンタがg+2に功つントアップされ、以下、既に
説明したと同様の動作が続行される。
を出力したとき、命令C4が命令レジスタに格納され、
復号器5によってこれが解読される。その後、プログラ
ムカウンタがg+2に功つントアップされ、以下、既に
説明したと同様の動作が続行される。
即ち、従来、このようにプログラム中にジャンプ命令が
存在した場合、必ず1マシンサイクル分の無駄時間が発
生してしまう、従って、例えば分類や検索等の処理の多
い、即ちジャンプ命令の非常に多いプログラムにおいて
は、この無駄時間が実行時間中で大きな割り合いを占め
、処理能率を低下させるという問題があった。
存在した場合、必ず1マシンサイクル分の無駄時間が発
生してしまう、従って、例えば分類や検索等の処理の多
い、即ちジャンプ命令の非常に多いプログラムにおいて
は、この無駄時間が実行時間中で大きな割り合いを占め
、処理能率を低下させるという問題があった。
本発明は以上の点に着目してなされたもので、ジャンプ
動作における無駄時間を無くし、効率の良い制御を行な
うことができるプログラム制御装置を提供することを目
的とするものである。
動作における無駄時間を無くし、効率の良い制御を行な
うことができるプログラム制御装置を提供することを目
的とするものである。
(課題を解決するための手段)
本発明のプログラム制御装置は、プログラムを格納した
デュアルポート型のプログラムメモリから、前記プログ
ラムを構成する命令を所定の順に読み出して解読し、外
部回路に向けて出力するプログラム制御装置において、
前記プログラムメモリからの前記命令の読み出しを制御
する第1のプログラムカウンタ及び第2のプログラムカ
ウンタと、前記プログラムメモリの第1の出力ポートに
接続され、前記第1のプログラムカウンタの制御により
前記プログラムメモリから読み出された命令を一時格納
する第1の命令レジスタと、前記プログラムメモリの第
2の出力ポートに接続され、前記第2のプログラムカウ
ンタの制御により前記プログラムメモリから読み出され
た命令を一時格納する第2の命令レジスタと、前記いず
れかの命令レジスタに格納された命令を解読する復号器
と、前記プログラムメモリの第1の出力ポートと前記第
2のプログラムカウンタとを接続し、前記第2の出力ポ
ートと前記第1のプログラムカウンタとを接続するジャ
ンプ先アドレス転送線と、前記命令レジスタの何れか一
方に格納された命令を前記復号器が解読するよう、前記
命令レジスタを選択制御し、かつ、選択中の命令レジス
タにジャンプ命令が格納されたとき、次のタイミングで
命令レジスタの選択を切り換える選択制御回路とを設け
たことを特徴とするものである。
デュアルポート型のプログラムメモリから、前記プログ
ラムを構成する命令を所定の順に読み出して解読し、外
部回路に向けて出力するプログラム制御装置において、
前記プログラムメモリからの前記命令の読み出しを制御
する第1のプログラムカウンタ及び第2のプログラムカ
ウンタと、前記プログラムメモリの第1の出力ポートに
接続され、前記第1のプログラムカウンタの制御により
前記プログラムメモリから読み出された命令を一時格納
する第1の命令レジスタと、前記プログラムメモリの第
2の出力ポートに接続され、前記第2のプログラムカウ
ンタの制御により前記プログラムメモリから読み出され
た命令を一時格納する第2の命令レジスタと、前記いず
れかの命令レジスタに格納された命令を解読する復号器
と、前記プログラムメモリの第1の出力ポートと前記第
2のプログラムカウンタとを接続し、前記第2の出力ポ
ートと前記第1のプログラムカウンタとを接続するジャ
ンプ先アドレス転送線と、前記命令レジスタの何れか一
方に格納された命令を前記復号器が解読するよう、前記
命令レジスタを選択制御し、かつ、選択中の命令レジス
タにジャンプ命令が格納されたとき、次のタイミングで
命令レジスタの選択を切り換える選択制御回路とを設け
たことを特徴とするものである。
又、2つの同一のプログラムを格納した2つのプログラ
ムメモリを用いても、同様のことを行なうことができる
。
ムメモリを用いても、同様のことを行なうことができる
。
(作用)
以上の装置は、例えば、通常、第1のプログラムカウン
タの制御によりプログラムメモリから命令を読み出して
、これを第1の命令レジスタに格納し、復号器はそこに
格納された命令の解読を行なうよう動作する。ジャンプ
命令が無く、プログラムカウンタが、1ずつ順にカウン
トアツプされて命令を読み出す場合、この動作が繰り返
される。
タの制御によりプログラムメモリから命令を読み出して
、これを第1の命令レジスタに格納し、復号器はそこに
格納された命令の解読を行なうよう動作する。ジャンプ
命令が無く、プログラムカウンタが、1ずつ順にカウン
トアツプされて命令を読み出す場合、この動作が繰り返
される。
一方、第1の命令レジスタにジャンプ命令が格納された
場合、復号器がそのジャンプ命令の解読を開始すると同
時に、そのジャンプ命令中のジャンプ先アドレスが、ジ
ャンプ先アドレス転送線を通じて第2のプログラムカウ
ンタに格納される。
場合、復号器がそのジャンプ命令の解読を開始すると同
時に、そのジャンプ命令中のジャンプ先アドレスが、ジ
ャンプ先アドレス転送線を通じて第2のプログラムカウ
ンタに格納される。
そして、復号器が第1の命令レジスタに格納された命令
の解読を終え、それがジャンプ命令と認識されると、選
択制御回路は、直ちに第2の命令レジスタの出力を復号
器に出力するようその選択を切り換える。
の解読を終え、それがジャンプ命令と認識されると、選
択制御回路は、直ちに第2の命令レジスタの出力を復号
器に出力するようその選択を切り換える。
第2の命令レジスタには、既に、第2のプログラムカウ
ンタのジャンプ先アドレスに基づいて読み出された命令
が格納されており、復号器は直ちにその命令の解読に移
る。その結果、ジャンプ命令によって従来のような無駄
時間が生じることがない。
ンタのジャンプ先アドレスに基づいて読み出された命令
が格納されており、復号器は直ちにその命令の解読に移
る。その結果、ジャンプ命令によって従来のような無駄
時間が生じることがない。
(実施例)
以下、本発明を図の実施例を用いて詳細に説明する。
第1図は、本発明のプログラム制御装置の実施例を示す
ブロック図である。
ブロック図である。
この装置は、プログラムメモリ10と、そのプログラム
メモリ10からの命令の読み出しを制御する第1のプロ
グラムカウンタllaと第2のプログラムカウンタll
bと、プログラムメモリ10から読み出された命令を格
納する第1の命令レジスタ13a、第2の命令レジスタ
13b、及びこれらの出力を選択するセレクタ14と、
復号器15と、各部の動作を制御するコントローラ16
とを有している。
メモリ10からの命令の読み出しを制御する第1のプロ
グラムカウンタllaと第2のプログラムカウンタll
bと、プログラムメモリ10から読み出された命令を格
納する第1の命令レジスタ13a、第2の命令レジスタ
13b、及びこれらの出力を選択するセレクタ14と、
復号器15と、各部の動作を制御するコントローラ16
とを有している。
上記、第1のプログラムカウンタllaと第2のプログ
ラムカウンタllbとは、いずれも選択制御回路16の
制御によって1ずつカウントアツプし、あるいはジャン
プ先アドレスを格納するカウンタから成る。
ラムカウンタllbとは、いずれも選択制御回路16の
制御によって1ずつカウントアツプし、あるいはジャン
プ先アドレスを格納するカウンタから成る。
又、第1の命令レジスタ13aは、プログラムメモリ1
oの第1の出力ポートに接続されている。又、第2の命
令レジスタ13bは、プログラムメモリ10の第2の出
力ポート12bに接続されている。
oの第1の出力ポートに接続されている。又、第2の命
令レジスタ13bは、プログラムメモリ10の第2の出
力ポート12bに接続されている。
プログラムメモリ10は、いわゆるデュアルポート型メ
モリであって、第1のプログラムカウンタllaの制御
により読み出された命令は、第1の出力ポート12aに
出力され、第2のプログラムカウンタllbの制御によ
り読み出された命令は第2の出力ポート12bに出力さ
れる。このデュアルポートメモリは、良く知られている
ように、2つのプログラムカウンタlla、llbから
入力されるアドレス信号が一致しない場合には、その中
に格納された命令が、それぞれ別個に並行して読み出さ
れるランダム・アクセス・メモリから成る。
モリであって、第1のプログラムカウンタllaの制御
により読み出された命令は、第1の出力ポート12aに
出力され、第2のプログラムカウンタllbの制御によ
り読み出された命令は第2の出力ポート12bに出力さ
れる。このデュアルポートメモリは、良く知られている
ように、2つのプログラムカウンタlla、llbから
入力されるアドレス信号が一致しない場合には、その中
に格納された命令が、それぞれ別個に並行して読み出さ
れるランダム・アクセス・メモリから成る。
セレクタ14は、第1の命令レジスタ13aあるいは第
2の命令レジスタ13bの出力する命令のいずれか一方
を選択して、復号器15に向けて出力する回路である。
2の命令レジスタ13bの出力する命令のいずれか一方
を選択して、復号器15に向けて出力する回路である。
このセレクタ14の選択動作は、選択制御回路16によ
って制御される。復号器15は、セレクタ14から出力
された命令を解読し、図示しない外部回路に向けて解読
後の命令を出力する回路である。選択制御回路18は、
復号器15によって解読された命令の内容に従い、プロ
グラムカウンタlla及びllbの動作を制御し、セレ
クタ14の選択動作を制御するゲート回路から成る。
って制御される。復号器15は、セレクタ14から出力
された命令を解読し、図示しない外部回路に向けて解読
後の命令を出力する回路である。選択制御回路18は、
復号器15によって解読された命令の内容に従い、プロ
グラムカウンタlla及びllbの動作を制御し、セレ
クタ14の選択動作を制御するゲート回路から成る。
更に、この回路には、プログラムメモリ10の第1の出
力ポート12aと、第2のプログラムカウンタllbと
を接続するジャンプ先アドレス転送線17a、及び、プ
ログラムメモリ10の第2の出力ポート12bと、第1
のプログラムカウンタllaとを接続するジャンプ先ア
ドレス転送線17bとが設けられている。このジャンプ
先アドレス転送線17a、17bは、いずれもプログラ
ムメモリ10から読み出された命令の内のジャンプ先ア
ドレスに相当する部分を、無条件で第1のプログラムカ
ウンタllaあるいは第2のプログラムカウンタllb
に転送するパラレル転送線である。そして、例えば第1
のプログラムカウンタ11aの制御によりプログラムメ
モリ10から命令が読み出され、第1の出力ポート12
aから出力される命令に基づいて処理が実行されている
場合には、ぞの命令のジャンプ先アドレスに相当する部
分が、常に第2のプログラムカウンタに格納される。選
択制御回路16はそのように各部の動作制御を行なう。
力ポート12aと、第2のプログラムカウンタllbと
を接続するジャンプ先アドレス転送線17a、及び、プ
ログラムメモリ10の第2の出力ポート12bと、第1
のプログラムカウンタllaとを接続するジャンプ先ア
ドレス転送線17bとが設けられている。このジャンプ
先アドレス転送線17a、17bは、いずれもプログラ
ムメモリ10から読み出された命令の内のジャンプ先ア
ドレスに相当する部分を、無条件で第1のプログラムカ
ウンタllaあるいは第2のプログラムカウンタllb
に転送するパラレル転送線である。そして、例えば第1
のプログラムカウンタ11aの制御によりプログラムメ
モリ10から命令が読み出され、第1の出力ポート12
aから出力される命令に基づいて処理が実行されている
場合には、ぞの命令のジャンプ先アドレスに相当する部
分が、常に第2のプログラムカウンタに格納される。選
択制御回路16はそのように各部の動作制御を行なう。
以上の構成の本発明のプログラム制御装置は次のように
動作する。
動作する。
第4図は、本発明の詳細な説明するタイムチャートであ
る。
る。
この実施例では、第1図に示した第1のプログラムカウ
ンタllaの制御によって読み出された命令に基づいて
処理が実行されているものとする。
ンタllaの制御によって読み出された命令に基づいて
処理が実行されているものとする。
即ち、第4図(a)に示すように、先ず、第1のプログ
ラムカウンタllaが、1マシンサイクル毎にm−1,
m、m+1というようにカウントアツプされていく。そ
して、第4図(b)に示すように、第1の命令レジスタ
13aに対し命令C−−2、C−リ、Cmというように
、プログラムカウンタ3のカウントタイミングより1マ
シンサイクル遅れて該当する命令が格納され、それが復
号器15によって解読されていく[第4図(f)]。
ラムカウンタllaが、1マシンサイクル毎にm−1,
m、m+1というようにカウントアツプされていく。そ
して、第4図(b)に示すように、第1の命令レジスタ
13aに対し命令C−−2、C−リ、Cmというように
、プログラムカウンタ3のカウントタイミングより1マ
シンサイクル遅れて該当する命令が格納され、それが復
号器15によって解読されていく[第4図(f)]。
このとき、第2のプログラムカウンタllbには、先に
説明したように、プログラムメモリ10から読み出され
た命令の内、ジャンプ先アドレスに相当する部分が格納
されるが、ジャンプ命令以外の命令が読み出された場合
、そのデータは無意味であって、第4図(c)、(d)
に示すように全く無視される。即ち、第4図(e)に示
すように、セレクタは専らa側、即ち第1の命令レジス
タ13aの出力を復号器15に向けて出力するよう選択
をしている。
説明したように、プログラムメモリ10から読み出され
た命令の内、ジャンプ先アドレスに相当する部分が格納
されるが、ジャンプ命令以外の命令が読み出された場合
、そのデータは無意味であって、第4図(c)、(d)
に示すように全く無視される。即ち、第4図(e)に示
すように、セレクタは専らa側、即ち第1の命令レジス
タ13aの出力を復号器15に向けて出力するよう選択
をしている。
ここで、第1のプログラムカウンタllaがカウントを
mとし、その1マシンサイクル後に、第1の命令レジス
タにジャンプ命令C1が格納されたとする。
mとし、その1マシンサイクル後に、第1の命令レジス
タにジャンプ命令C1が格納されたとする。
この場合、第2のプログラムカウンタllbには、ジャ
ンプ先アドレス℃が格納される。尚、このタイミングで
は、まだセレクタ14はa側、即ち第1の命令レジスタ
13aを選択しており、復号器15は命令C1の解読を
行なっている。そして、この命令C1が解読されると、
これはジャンプ命令であるから、選択制御回路16はセ
レクタ14を制御しその選択をb側に切り換える[第4
図(e)]。
ンプ先アドレス℃が格納される。尚、このタイミングで
は、まだセレクタ14はa側、即ち第1の命令レジスタ
13aを選択しており、復号器15は命令C1の解読を
行なっている。そして、この命令C1が解読されると、
これはジャンプ命令であるから、選択制御回路16はセ
レクタ14を制御しその選択をb側に切り換える[第4
図(e)]。
一方、既に第2のプログラムカウンタllbは、その1
マシンサイクル前にジャンプ先アドレス2を示しており
、プログラムメモリ10からは、それに該当する命令が
第2の命令レジスタ13bに読み出される[第4図(d
)]。この読み出されるタイミングは、先のジャンプ命
令C,。
マシンサイクル前にジャンプ先アドレス2を示しており
、プログラムメモリ10からは、それに該当する命令が
第2の命令レジスタ13bに読み出される[第4図(d
)]。この読み出されるタイミングは、先のジャンプ命
令C,。
が解読された直後となる。そして、その段階では、セレ
クタがb側に切り換わっており、ジャンプ先アドレス℃
に格納された命令CQが復号器15によって解読される
。その後は、今度は第2のプログラムカウンタllbの
制御によって、プログラムメモリ10から順に命令が読
み出され、それが処理に使用されることになる。
クタがb側に切り換わっており、ジャンプ先アドレス℃
に格納された命令CQが復号器15によって解読される
。その後は、今度は第2のプログラムカウンタllbの
制御によって、プログラムメモリ10から順に命令が読
み出され、それが処理に使用されることになる。
その後の動作は、先に説明したと同様である。
この第4図の動作を見て分かるように、ジャンプ命令C
,,が実行された場合においても、従来のような1マシ
ンサイクル分の無駄時間が生じない。従って、ジャンプ
命令を多く含むプログラムの実行にあたっては、無駄時
間がなく高い効率で処理を実行することができる。
,,が実行された場合においても、従来のような1マシ
ンサイクル分の無駄時間が生じない。従って、ジャンプ
命令を多く含むプログラムの実行にあたっては、無駄時
間がなく高い効率で処理を実行することができる。
尚、第1図の実施例においては、デュアルポートメモリ
を使用してプログラムの読み出しを行なっている。この
プログラムメモリは、ランダム・アクセス・メモリであ
るから、例えば、第1のプログラムカウンタllaによ
って命令を読み出し、所定の処理を実行している間、第
2のプログラムカウンタllbを用いて、任意のアドレ
スに新たな命令の書き込みを行なうことができる。この
結果、必要な都度、必要なタイミングでプログラムの書
き換えを行ない、より高度な複雑な処理を実行すること
が可能となる。
を使用してプログラムの読み出しを行なっている。この
プログラムメモリは、ランダム・アクセス・メモリであ
るから、例えば、第1のプログラムカウンタllaによ
って命令を読み出し、所定の処理を実行している間、第
2のプログラムカウンタllbを用いて、任意のアドレ
スに新たな命令の書き込みを行なうことができる。この
結果、必要な都度、必要なタイミングでプログラムの書
き換えを行ない、より高度な複雑な処理を実行すること
が可能となる。
第5図に、本発明の装置の他の実施例を示す要部のブロ
ック図を示した。
ック図を示した。
この装置は、第1図の装置において、そのプログラムメ
モリ10を2つのプログラムメモリとしたものである。
モリ10を2つのプログラムメモリとしたものである。
即ち、図のように、第1のプログラムメモリ10′ a
と第2のプログラムメモリ10’bとから構成されてい
る。この両メモリは、いずれも全く同一のプログラムが
格納された、例えばリード・オンリ・メモリから構成さ
れるものとする。
と第2のプログラムメモリ10’bとから構成されてい
る。この両メモリは、いずれも全く同一のプログラムが
格納された、例えばリード・オンリ・メモリから構成さ
れるものとする。
このようにすれば、第1図に示した装置と全く同一の動
作を実行させることができる。しかも、2つの同一内容
のリード・オンリ・メモリを使用するようにしても、リ
ード・オンリ・メモリの構成上、ハードウェア的には、
第1図の実施例よりもむしろ小型化を図ることが可能で
ある。
作を実行させることができる。しかも、2つの同一内容
のリード・オンリ・メモリを使用するようにしても、リ
ード・オンリ・メモリの構成上、ハードウェア的には、
第1図の実施例よりもむしろ小型化を図ることが可能で
ある。
尚、この実施例において、その他の結線等については、
第1図と全く同様であり、その図示及び説明は省略する
。
第1図と全く同様であり、その図示及び説明は省略する
。
本発明は以上の実施例に限定されない。
第1図の実施例においては、選択制御回路16は、命令
レジスタ13a、13bと復号器15の間に挿入された
セレクタ14を制御するよう説明したが、命令レジスタ
13aや命令レジスタ13bのデータの出力を直接制御
したり、復号器15の入力ポートを2つ設け、いずれの
ポートから入力する命令を処理するかの選択を制御した
り、種々の変形が可能である。又、プログラムカウンタ
の動作制御についても、既知の同等の制御手段に置き換
えることが可能である。
レジスタ13a、13bと復号器15の間に挿入された
セレクタ14を制御するよう説明したが、命令レジスタ
13aや命令レジスタ13bのデータの出力を直接制御
したり、復号器15の入力ポートを2つ設け、いずれの
ポートから入力する命令を処理するかの選択を制御した
り、種々の変形が可能である。又、プログラムカウンタ
の動作制御についても、既知の同等の制御手段に置き換
えることが可能である。
(発明の効果)
以上説明した本発明のプログラム制御装置によれば、2
つのプログラムカウンタと2つの命令レジスタとを設け
、一方の命令レジスタに格納された命令を解読している
間、他方のプログラムカウンタによってジャンプ先アド
レスを指定し、ジャンプ命令の解読と同時にジャンプ先
アドレスにおける命令の出力を可能としたので、ジャン
プ命令実行時、従来のような無駄時間を生じ難く、高能
率、高速なプログラム制御が可能となる。
つのプログラムカウンタと2つの命令レジスタとを設け
、一方の命令レジスタに格納された命令を解読している
間、他方のプログラムカウンタによってジャンプ先アド
レスを指定し、ジャンプ命令の解読と同時にジャンプ先
アドレスにおける命令の出力を可能としたので、ジャン
プ命令実行時、従来のような無駄時間を生じ難く、高能
率、高速なプログラム制御が可能となる。
第1図は本発明のプログラム制御装置の実施例を示すブ
ロック図、第2図は従来のプログラム制御装置の一例を
示すブロック図、第3図は従来の装置の動作を示すタイ
ムチャート、第4図は本発明の動作を示すタイムチャー
ト、第5図は本発明の装置の他の実施例を示す要部ブロ
ック図である。 10・・・プログラムメモリ、 10’a・・・第1のプログラムメモリ、10′ b・
・・第2のプログラムメモリ、11a・・・第1のプロ
グラムカウンタ、11b・・・第2のプログラムカウン
タ、12a・・・第1の出力ポート、 12b・・・第2の出力ポート、 13a・・・第1の命令レジスタ、 13b・・・第2の命令レジスタ、14・・・セレクタ
、15・・・復号器、16・・・選択制御回路。 特許出願人 沖電気工業株式会社 手続補正書帽側 平成元年 2月6 日
ロック図、第2図は従来のプログラム制御装置の一例を
示すブロック図、第3図は従来の装置の動作を示すタイ
ムチャート、第4図は本発明の動作を示すタイムチャー
ト、第5図は本発明の装置の他の実施例を示す要部ブロ
ック図である。 10・・・プログラムメモリ、 10’a・・・第1のプログラムメモリ、10′ b・
・・第2のプログラムメモリ、11a・・・第1のプロ
グラムカウンタ、11b・・・第2のプログラムカウン
タ、12a・・・第1の出力ポート、 12b・・・第2の出力ポート、 13a・・・第1の命令レジスタ、 13b・・・第2の命令レジスタ、14・・・セレクタ
、15・・・復号器、16・・・選択制御回路。 特許出願人 沖電気工業株式会社 手続補正書帽側 平成元年 2月6 日
Claims (1)
- 【特許請求の範囲】 1、プログラムを格納したデュアルポート型のプログラ
ムメモリから、前記プログラムを構成する命令を所定の
順に読み出して解読し、外部回路に向けて出力するプロ
グラム制御装置において、前記プログラムメモリからの
前記命令の読み出しを制御する第1のプログラムカウン
タ及び第2のプログラムカウンタと、 前記プログラムメモリの第1の出力ポートに接続され、
前記第1のプログラムカウンタの制御により前記プログ
ラムメモリから読み出された命令を一時格納する第1の
命令レジスタと、 前記プログラムメモリの第2の出力ポートに接続され、
前記第2のプログラムカウンタの制御により前記プログ
ラムメモリから読み出された命令を一時格納する第2の
命令レジスタと、 前記いずれかの命令レジスタに格納された命令を解読す
る復号器と、 前記プログラムメモリの第1の出力ポートと前記第2の
プログラムカウンタとを接続し、前記第2の出力ポート
と前記第1のプログラムカウンタとを接続するジャンプ
先アドレス転送線と、前記命令レジスタの何れか一方に
格納された命令を前記復号器が解読するよう、前記命令
レジスタを選択制御し、かつ、選択中の命令レジスタに
ジャンプ命令が格納されたとき、次のタイミングで命令
レジスタの選択を切り換える選択制御回路とを設けたこ
とを特徴とするプログラム制御回路。 2、それぞれ同一のプログラムを格納した第1のプログ
ラムメモリ及び第2のプログラムメモリから、前記プロ
グラムを構成する命令を所定の順に読み出して、外部回
路に向けて出力するプログラム制御装置において、 前記第1のプログラムメモリからの前記命令の読み出し
を制御する第1のプログラムカウンタと、 前記第2のプログラムメモリからの前記命令の読み出し
を制御する第2のプログラムカウンタと、 前記第1のプログラムカウンタの制御により前記第1の
プログラムメモリから読み出された命令を一時格納する
第1の命令レジスタと、 前記第2のプログラムカウンタの制御により前記第2の
プログラムメモリから読み出された命令を一時格納する
第2の命令レジスタと、 前記いずれかの命令レジスタに格納された命令を解読す
る復号器と、 前記第1のプログラムメモリの出力ポートと前記第2の
プログラムカウンタとを接続し、前記第2のプログラム
メモリの出力ポートと前記第1のプログラムカウンタと
を接続するジャンプ先アドレス転送線と、 前記命令レジスタの何れか一方に格納された命令を前記
復号器が解読するよう、前記命令レジスタを選択制御し
、かつ、選択中の命令レジスタにジャンプ命令が格納さ
れたとき、次のタイミングで命令レジスタの選択を切り
換える選択制御回路とを設けたことを特徴とするプログ
ラム制御回路。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP17381188A JPH0224721A (ja) | 1988-07-14 | 1988-07-14 | プログラム制御装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP17381188A JPH0224721A (ja) | 1988-07-14 | 1988-07-14 | プログラム制御装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0224721A true JPH0224721A (ja) | 1990-01-26 |
Family
ID=15967597
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP17381188A Pending JPH0224721A (ja) | 1988-07-14 | 1988-07-14 | プログラム制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0224721A (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH02103535U (ja) * | 1989-02-07 | 1990-08-17 | ||
| JPH0397405U (ja) * | 1990-01-24 | 1991-10-07 | ||
| JPH03104201U (ja) * | 1990-02-09 | 1991-10-29 | ||
| US6266764B1 (en) | 1998-03-17 | 2001-07-24 | Matsushita Electric Industrial Co., Ltd. | Program controller for switching between first program and second program |
-
1988
- 1988-07-14 JP JP17381188A patent/JPH0224721A/ja active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH02103535U (ja) * | 1989-02-07 | 1990-08-17 | ||
| JPH0397405U (ja) * | 1990-01-24 | 1991-10-07 | ||
| JPH03104201U (ja) * | 1990-02-09 | 1991-10-29 | ||
| US6266764B1 (en) | 1998-03-17 | 2001-07-24 | Matsushita Electric Industrial Co., Ltd. | Program controller for switching between first program and second program |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3237858B2 (ja) | 演算装置 | |
| JPH0224721A (ja) | プログラム制御装置 | |
| JPH0224719A (ja) | プログラム制御装置 | |
| JPH05197543A (ja) | 情報処理装置の命令デコード方式 | |
| JPS622363A (ja) | 演算装置 | |
| JPH02287624A (ja) | データ処理装置 | |
| JP2982129B2 (ja) | マイクロプログラム制御装置 | |
| JPH04362737A (ja) | データ処理システム | |
| JP2985244B2 (ja) | 情報処理装置 | |
| JP3088956B2 (ja) | 演算装置 | |
| JPS58225440A (ja) | メモリ制御装置 | |
| JP3117214B2 (ja) | シーケンサのマイクロプログラム制御方式 | |
| JPH0683624A (ja) | プロセッサの制御方法およびプロセッサ | |
| JP2000250869A (ja) | マルチプロセッサの制御方法およびその装置 | |
| JPH0354632A (ja) | 演算命令処理装置 | |
| JPS5899869A (ja) | 並列処理方式 | |
| JPH04276827A (ja) | パイプライン処理装置 | |
| JPH06259391A (ja) | パイプライン状処理装置構成方式 | |
| JPS59189407A (ja) | シ−ケンス制御装置 | |
| JPH0218732B2 (ja) | ||
| JPH0855033A (ja) | 情報処理装置 | |
| JPH1040168A (ja) | データ処理装置 | |
| JPH08297583A (ja) | 割り込み処理装置およびその方法 | |
| JPH07210384A (ja) | 浮動小数点演算装置 | |
| JPH01224870A (ja) | 情報処理装置における主記憶アクセス命令実行制御方式 |