JP3147727B2 - 情報処理装置及びその制御方法 - Google Patents

情報処理装置及びその制御方法

Info

Publication number
JP3147727B2
JP3147727B2 JP22333895A JP22333895A JP3147727B2 JP 3147727 B2 JP3147727 B2 JP 3147727B2 JP 22333895 A JP22333895 A JP 22333895A JP 22333895 A JP22333895 A JP 22333895A JP 3147727 B2 JP3147727 B2 JP 3147727B2
Authority
JP
Japan
Prior art keywords
instruction
address
memory
processor
control signal
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
Application number
JP22333895A
Other languages
English (en)
Other versions
JPH0969049A (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 Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP22333895A priority Critical patent/JP3147727B2/ja
Publication of JPH0969049A publication Critical patent/JPH0969049A/ja
Application granted granted Critical
Publication of JP3147727B2 publication Critical patent/JP3147727B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)
  • Multi Processors (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、単一のチップ上に
設けられた中央演算処理装置(以下、「CPU」と略称
する)とディジタル信号処理プロセッサ(以下、「DS
P」と略称する)とを含む情報処理装置及びその制御方
法に関する。
【0002】
【従来の技術】図7は、CPU720とDSP770と
を接続した従来の情報処理装置の構成を示す。CPU7
20とDSP770とは、それぞれ別々のチップ上に設
けられている。このような構成を有する従来の情報処理
装置では、CPU720は、入出力ポートを介してDS
P770を起動するのが一般的である。
【0003】図7を参照して、CPU720は、CPU
720が実行すべき複数の命令を格納するメモリ711
と、メモリ711から出力される命令を解読し、解読さ
れた命令に応じて演算器、レジスタ等の被制御回路(不
図示)の動作を制御する制御回路712と、制御回路7
12の制御によりメモリ711が読み出すべき命令の番
地を出力する命令ポインタ713と、出力ポート714
とを含んでいる。出力ポート714は、複数ビット(例
えば16ビット)から構成され、そのうちの1ビット
(例えば最上位ビット)はDSP770に接続されてい
る。DSP770に接続される1ビットの値は、制御回
路712によって0または1に設定され、出力ポート7
14によって保持される。
【0004】DSP770は、出力ポート714の1ビ
ット(例えば最上位ビット)を入力とする入力ポート7
60と、DSP770が実行すべき複数の命令を格納す
るメモリ761と、メモリ761から出力する命令を解
読し、解読された命令又は入力ポート760の値に応じ
て演算器、レジスタ等の被制御回路(不図示)の動作を
制御する制御回路762と、制御回路762の制御によ
りメモリ761が読み出すべき命令の番地を出力する命
令ポインタ763とを含んでいる。制御回路762は、
入力ポート760の値が「0」の場合には、命令ポイン
タ763に予め設定された番地を書き込む。
【0005】以下、CPU720からDSP770によ
って実行される処理を起動する場合における従来の情報
処理装置の動作を説明する。
【0006】CPU720の出力ポート714の最上位
ビットがDSP770の入力ポート760に接続されて
いると仮定する。この場合、CPU720は、予め
「1」に設定されている最上位ビットの値を「0」に書
き換えることにより、DSP770に割り込み要求を出
力する。この最上位ビットの値の書き換えは、以下の3
つのステップを実行することにより達成される。すなわ
ち、(1)出力ポート714の内容をCPU720が内
蔵するレジスタ(不図示)に書き込み、(2)上記レジ
スタの最上位ビットを「0」に設定するため、CPU7
20に内蔵される算術論理演算回路(不図示)にて上記
レジスタとx’7FFF’(x’’は16進数を表わ
す)との論理積を計算し、その計算結果を上記レジスタ
に格納し、(3)上記レジスタの値を出力ポート714
に書き込む。
【0007】この最上位ビットの値はDSP770の入
力ポート760に書き込まれ、入力ポート760はその
値を制御回路762に出力する。制御回路762は入力
ポート760の値が「0」のとき、命令ポインタに予め
設定された値、例えばx’FFF0’を強制的に書き込
む。このことにより、メモリのx’FFF0’番地への
分岐が実行され、DSP770は所定の処理を実行する
(割り込み処理の実行)。 このように、CPUからD
SPによって実行される処理の起動は割り込みの形式で
行われる。
【0008】
【発明が解決しようとする課題】しかしながら、上述し
た構成を有する情報処理装置では、割り込み要求を出力
するまでにCPU側で数ステップの処理を行う必要があ
り、また割り込み要求を受け取ったDSP側でも割り込
み処理を実行するまでには多くのマシンサイクルを必要
とすることから、DSP側の処理を高速に起動すること
ができないという問題点があった。また、割り込み要求
を実現するためには、複数の命令を所定の順序で組み合
わせなければならないため、割り込み要求を実現する手
順が複雑でありメモリ711に格納されるプログラムの
構造も複雑となる。このため、プログラム作成時のプロ
グラマーの負担が大きく、またプログラムの可読性が低
いことから、プログラム作成後のテスト、デバッグ等の
効率が悪いという問題点を有していた。
【0009】さらに、近年のLSI微細加工技術の著し
い進歩に伴い、アーキテクチャの異なる複数のプロセッ
サ、例えばCPUとDSPとを単一のチップ上に集積す
ることが可能となってきた。しかし、このような新しい
構成を考慮して、CPUからDSPによって実行される
処理を起動する場合に好適な情報処理装置及びその制御
方法は提案されていなかった。
【0010】本発明は、単一のチップ上に設けられたC
PUとDSPとを含む情報処理装置において、CPUが
DSPの処理の起動を容易にかつ高速に実行することが
可能な情報処理装置及びその制御方法を提供することを
目的とする。
【0011】
【0012】
【0013】
【0014】
【0015】
【0016】
【0017】
【課題を解決するための手段】 本発明の情報処理装置
は、単一のチップ上に設けられた第1プロセッサと第2
プロセッサとを有しており、第1プロセッサは、第1プ
ロセッサ内の処理を起動するのと同一の起動命令を用い
て、あたかもサブルーチンを呼び出すような手続きで第
2プロセッサの処理を起動する。
【0018】該第1プロセッサは、複数の命令を格納す
る第1メモリであって、第1の範囲の番地が割り当てら
れた第1メモリと、該第1メモリに格納された該複数の
命令のうち読み出すべき1つの命令の番地を指定する第
1命令ポインタ手段と、該第1命令ポインタ手段によっ
て指定された番地に対応する命令を該第1メモリから読
み出す第1読み出し手段と、該第1読み出し手段によっ
て読み出された命令の実行を制御する第1制御手段とを
備えている。該第2プロセッサは、複数の命令を格納す
る第2メモリであって、該第1の範囲とは異なる第2の
範囲の番地が割り当てられた第2メモリと、該第2メモ
リに格納された該複数の命令のうち読み出すべき1つの
命令の番地を指定する第2命令ポインタ手段と、該第2
命令ポインタ手段によって指定された番地に対応する命
令を該第2メモリから読み出す第2読み出し手段と、該
第2読み出し手段によって読み出された命令の実行を制
御する第2制御手段とを備えている。該第1制御手段
は、該第1読み出し手段によって読み出された命令が
ブルーチンへの分岐を指示する単一の起動命令である場
合には、該起動命令が指しているサブルーチンの先頭番
が該第1の範囲の番地と該第2の範囲の番地のいずれ
に含まれるかを判定し、該起動命令が指しているサブル
ーチンの先頭番地が該第1の範囲の番地に含まれる場合
には該第1命令ポインタ手段によって指定される命令の
番地を該起動命令が指しているサブルーチンの先頭番地
に設定し、該起動命令が指しているサブルーチンの先頭
番地が該第2の範囲の番地に含まれる場合には該第1命
令ポインタ手段の動作を停止又は継続させ、かつ、該起
動命令を示す情報を該第2プロセッサに送る。該第2制
御手段は、該第1プロセッサから該起動命令を示す情報
を受け取り、該起動命令を示す情報に応じて該第2命令
ポインタ手段によって指定される命令の番地を該起動命
が指しているサブルーチンの先頭番地に設定する。
【0019】第2プロセッサの処理の起動後、第1プロ
セッサはその動作を停止してもよいし継続してもよい。
第2プロセッサの処理の起動後に第1プロセッサがその
動作を停止する場合には、第2プロセッサの処理終了後
に第1プロセッサはその動作を再開する。第2プロセッ
サの処理の起動後も第1プロセッサがその動作を継続す
る場合には、第2プロセッサの処理終了後に第1プロセ
ッサの処理が所定の番地に分岐するように第1プロセッ
サが制御される。
【0020】本発明の制御方法は、単一のチップ上に設
けられた第1プロセッサと第2プロセッサとを備えた情
報処理装置の制御方法であって、該第1プロセッサは、
第1の範囲の番地が割り当てられた第1メモリを有して
おり、該第2プロセッサは、該第1の範囲とは異なる第
2の範囲の番地が割り当てられた第2メモリを有してお
り、該第1メモリに格納された複数の命令のうち1つの
命令を提供するステップと、該命令がサブルーチンへの
分岐を指示する単一の起動命令であるか否かを判定する
ステップと、該命令が該起動命令であると判定された場
合には、該起動命令が指しているサブルーチンの先頭番
が該第1の範囲の番地と該第2の範囲の番地のいずれ
に含まれるかを判定するステップと、該起動命令が指し
ているサブルーチンの先頭番地が該第1の範囲の番地に
含まれると判定された場合には、該起動命令に応じて該
第1プロセッサの動作を制御するステップと、該起動命
が指しているサブルーチンの先頭番地が該第2の範囲
の番地に含まれると判定された場合には、該第1プロセ
ッサの動作を停止又は継続させ、かつ、該起動命令を示
す情報を該第2プロセッサに送るステップと、該第1プ
ロセッサから該起動命令を示す情報を受け取り、該起動
命令を示す情報に応じて該第2プロセッサの動作を制御
するステップとを包含する。
【0021】
【0022】本発明によれば、第1プロセッサに含まれ
る第1メモリから読み出された単一の起動命令(cal
l命令)が指しているサブルーチンの先頭番地に応じ
て、第1プロセッサに含まれる第1メモリをアクセスす
べきか第2プロセッサに含まれる第2メモリをアクセス
すべきかが決定される。第1プロセッサに含まれる第1
メモリをアクセスすべき場合には、その起動命令により
第1プロセッサに含まれる第1メモリが読み出すべき命
令の番地が所定の値に設定される。第2プロセッサに含
まれる第2メモリをアクセスすべき場合には、その起動
命令により、第2プロセッサに含まれる第2メモリが読
み出すべき命令の番地が所定の値に設定される。これに
より、プログラマーは実行すべきプログラムが第1プロ
セッサの第1メモリに格納されているか第2プロセッサ
の第2メモリに格納されているかに応じて異なる起動命
令を使い分けることなく、単一の起動命令(call命
令)を用いてコーディングすることができる。その結
果、プログラム作成の労力が大幅に削減される。また、
プログラムの可読性も向上するため、プログラムのテス
ト、デバッグ、再利用等が容易となる。さらに、第1プ
ロセッサと第2プロセッサとを接続するための入出力ポ
ートが不要であるため、第1プロセッサから第2プロセ
ッサの処理の起動を高速に行うことができる。
【0023】
【発明の実施の形態】以下、本発明の実施の形態を説明
する。
【0024】(第1の実施例)図1は、本発明による第
1の実施例の情報処理装置の構成を示す。情報処理装置
は、CPU140とDSP190とを含んでいる。CP
U140とDSP190とは、単一のチップ100上に
設けられている。本実施例の情報処理装置では、CPU
140はあたかもサブルーチンを呼び出すような手続き
でDSP190への処理を起動する。すなわち、DSP
190の処理を起動後CPU140はその動作を停止
し、DSP190の処理終了後CPU140はその動作
を再開する。
【0025】CPU140は、メモリ111と命令ポイ
ンタ113と制御部112とを含んでいる。メモリ11
1には、実行すべき複数の命令が格納されている。メモ
リ111は、その複数の命令のうち命令ポインタ113
から出力されるアドレスに格納されている命令を読み出
す。メモリ111から読み出された命令は、制御部11
2に供給される。制御部112は、メモリ111から読
み出された命令の実行を制御する。命令ポインタ113
は、制御信号122に応じてメモリ111から読み出す
べき命令のアドレスを出力する。命令ポインタ113に
は、メモリ111から読み出すべき命令のアドレス値が
設定される。命令ポインタ113は、制御信号122が
「1」の場合にはその値を1ずつ加算することにより更
新し、制御信号122が「0」の場合にはその値の更新
を停止する。
【0026】制御部112は、命令デコーダ115と制
御回路120とを含んでいる。命令デコーダ115は、
メモリ111から読み出される命令を解読し、入力され
た命令に応じて制御信号116とアドレス124とを生
成する。制御回路120は、制御信号116と制御信号
172とに応じて制御信号122と制御信号126と制
御信号群128とを生成する。制御信号群128は、演
算器、レジスタ等の被制御回路(不図示)の動作を制御
するために使用される。
【0027】DSP190は、メモリ161と命令ポイ
ンタ163と命令デコーダ170と制御回路180とを
含んでいる。メモリ161には、実行すべき複数の命令
が格納されている。メモリ161は、その複数の命令の
うち命令ポインタ163から出力されるアドレスに格納
されている命令を読み出す。メモリ161から読み出さ
れた命令は、命令デコーダ170に供給される。命令デ
コーダ170は、メモリ161から読み出された命令を
解読し、入力された命令が「処理の終了を指示する命令
(ret命令)」である場合には制御信号172に
「1」を出力し、そうでない場合には制御信号172に
「0」を出力する。制御回路180は、CPU140の
制御回路120から制御信号126を受け取り、制御信
号126の値が「1」のとき制御信号182を「1」と
する。命令ポインタ163は、メモリ161から読み出
す命令のアドレスを出力する。また、命令ポインタ16
3は、CPU140の命令デコーダ115からアドレス
124を受け取り、制御信号182が「1」のときアド
レス124を保持する。
【0028】以下、上述した構成を有する本実施例の情
報処理装置の動作を説明する。
【0029】命令ポインタ113は通常はその保持する
値を1ずつ加算しメモリ111が読み出す命令の番地を
出力する。メモリ111から読み出された命令は命令デ
コーダ115によって解読される。命令デコーダ115
は、入力された命令が「DSP190の処理を起動する
命令(calldsp命令)」であるとき、制御信号1
16をアクティブにし、同時にアドレス124にDSP
190にて起動したいプログラムが格納されているメモ
リ161の先頭のアドレスを出力する。例えば、メモリ
111のx’0100’番地に格納されている命令がc
alldspx’0005’であるとき、アドレス12
4にx’0005’を出力する。制御回路120は制御
信号116がアクティブであれば、制御信号122に
「0」を出力し、同時に制御信号126に「1」を出力
する。命令ポインタ113は制御信号122が「0」で
あるから、更新を停止し、次に実行すべきアドレスを保
持し続ける。これによりCPU140内部の処理は停止
する。
【0030】次に、DSP190内部の制御回路180
は制御信号126が「1」であると、命令ポインタ16
3にアドレス124の値を書き込むよう制御信号182
に「1」を出力する。命令ポインタ163は制御信号1
82が「1」であるのでアドレス124の値をその内容
とし、メモリ161に出力する。すなわち、このとき命
令ポインタ163はメモリ161にx’0005’を出
力する。以降、命令ポインタ163はその値を1ずつ加
算することによりメモリ161に格納されているプログ
ラムを実行する。
【0031】メモリ161から読み出された命令が「処
理の終了を指示する命令(ret命令)」であるとき、
命令デコーダ170は制御信号172に「1」を出力
し、また、命令ポインタ163の動作を停止する指示を
出す。制御回路120は制御信号172が「1」である
と制御信号122に「1」を出力する。命令ポインタ1
13は制御信号122が「1」であるのでその値の更新
を再開する。
【0032】以上の動作を図8に示す。上記によりCP
U140はあたかもサブルーチンを呼び出すような手続
きでDSP190への処理を起動する。またDSP19
0が動作中CPU140は停止し、DSP190の処理
終了後CPU140は動作を再開する。
【0033】(第2の実施例)第1の実施例の情報処理
装置では、CPUがDSPの処理を起動すると、その処
理が終了するまでCPUの動作を停止することとしてい
た。第2の実施例の情報処理装置は、DSPの処理を起
動した後もCPUが動作を継続することを可能として、
CPUとDSPとの並列処理を実現するものである。
【0034】図2は、本発明による第2の実施例の情報
処理装置の構成を示す。情報処理装置は、CPU240
とDSP190とを含んでいる。CPU240とDSP
190とは、単一のチップ100上に設けられている。
【0035】図2において、図1に示す情報処理装置の
構成要素と同一の構成要素には同一の番号を付してい
る。図1に示す情報処理装置の構成と異なる点は、命令
ポインタ113、命令デコーダ115及び制御回路12
0をそれぞれ命令ポインタ213、命令デコーダ215
及び制御回路220で置き換えた点である。
【0036】CPU240は、メモリ111と命令ポイ
ンタ213と制御部212とを含んでいる。メモリ11
1から読み出された命令は、制御部212に供給され
る。制御部212は、メモリ111から読み出された命
令の実行を制御する。命令ポインタ213は、制御信号
222に応じてメモリ111から読み出すべき命令のア
ドレスを出力する。命令ポインタ213には、メモリ1
11から読み出すべき命令のアドレス値が設定される。
命令ポインタ213は、制御信号222が「1」の場合
にはアドレス228を保持し、制御信号222が「0」
の場合にはその値を1だけ加算することにより更新す
る。
【0037】制御部212は、命令デコーダ215と制
御回路220とを含んでいる。命令デコーダ215は、
メモリ111から読み出される命令を解読し、入力され
た命令に応じて制御信号216とアドレス124とを生
成する。制御回路220は、制御信号216と制御信号
172とに応じて制御信号222とアドレス228と制
御信号126と制御信号群128とを生成する。制御信
号群128は、演算器、レジスタ等の被制御回路(不図
示)の動作を制御するために使用される。
【0038】以下、上述した構成を有する本実施例の情
報処理装置の動作を説明する。
【0039】図1に示す情報処理装置の動作と異なる点
は、DSP190の動作中における命令ポインタ213
の制御と、メモリ161から読み出された命令がret
命令である場合の命令ポインタ213の制御である。
【0040】メモリ111から読み出された命令はデコ
ーダ215によって解読される。命令デコーダ215
は、入力された命令が「DSP190の処理を起動し、
かつ、CPU240の動作を継続する命令(calld
sp2命令)」であるとき、制御信号216をアクティ
ブにし、同時にアドレス124にDSP190にて起動
したいプログラムが格納されているメモリ161の先頭
のアドレスを出力する。例えば、メモリ111のx’0
100’番地に格納されている命令がcalldsp2
x’0005’であるとき、アドレス124にx’0
005’を出力する。制御回路220は制御信号216
がアクティブであれば、制御信号222に「0」を出力
し続け、同時に制御信号126に「1」を出力する。命
令ポインタ213は制御信号222が「0」であるから
その値を更新し続ける。これによりCPU240は動作
し続ける。
【0041】一方、メモリ161から読み出された命令
が「処理の終了を指示する命令(ret命令)」である
とき、命令デコーダ170は制御信号172に「1」を
出力し、また、命令ポインタ163の動作を停止する指
示を出す。制御回路220は制御信号172が「1」で
あると制御信号222に「1」を出力し、同時にアドレ
ス228に予め設定された値、例えばx’F000’を
出力する。命令ポインタ213は制御信号222が
「1」であるのでアドレス228を保持し、同時に図示
しない記憶手段にアドレス228を保持する以前の値を
退避する。制御回路220は命令ポインタ213がアド
レス228を保持した後、制御信号222に「0」を出
力する。その結果、命令ポインタ213はアドレス22
8の値を保持した後、その値を1だけ加算することによ
り更新する。これにより、メモリ111内の予め設定さ
れたアドレス228(例えばx’F000’)から処理
が実行される。
【0042】以上の動作を図9に示す。上記によりCP
U240はあたかもサブルーチンを呼び出すような手続
きでDSP190への処理を起動する。またDSP19
0が動作中においてもCPU240は動作しており、D
SP190の処理終了後CPU240は予め設定された
アドレス228に分岐することによりDSP190にお
ける処理の終了を認識する。
【0043】(第3の実施例)第3の実施例の情報処理
装置では、DSPの処理が終了したか否かを監視するた
めに使用されるレジスタがCPUに設けられている。D
SPの処理が終了した場合には、そのレジスタに所定の
値が書き込まれる。CPUは、メモリから読み出された
命令が特定の分岐命令(jmpreg命令)である場合
には、そのレジスタの値を参照する。このようにして、
CPUは、jmpreg命令の実行によりDSPの処理
が終了したか否かを監視する。そのレジスタの値が所定
の値である場合には、CPUの処理がjmpreg命令
によって指定されたアドレスに分岐する。これにより、
CPUはDSPにおける処理の終了を認識する。
【0044】図3は、本発明による第3の実施例の情報
処理装置の構成を示す。情報処理装置は、CPU340
とDSP190とを含んでいる。CPU340とDSP
190とは、単一のチップ100上に設けられている。
【0045】図3において、図2に示す情報処理装置の
構成要素と同一の構成要素には同一の番号を付してい
る。図2に示す情報処理装置の構成と異なる点は、命令
デコーダ215及び制御回路220をそれぞれ命令デコ
ーダ315及び制御回路320で置き換え、レジスタ3
30を追加した点である。
【0046】CPU340は、メモリ111と命令ポイ
ンタ213と制御部312とを含んでいる。メモリ11
1から読み出された命令は、制御部312に供給され
る。制御部312は、メモリ111から読み出された命
令の実行を制御する。命令ポインタ213は、制御信号
322に応じてメモリ111から読み出すべき命令のア
ドレスを出力する。命令ポインタ213には、メモリ1
11から読み出すべき命令のアドレス値が設定される。
命令ポインタ213は、制御信号322が「1」の場合
にはアドレス328を保持し、制御信号322が「0」
の場合にはその値を1だけ加算することにより更新す
る。
【0047】制御部312は、命令デコーダ315と制
御回路320とを含んでいる。命令デコーダ315は、
メモリ111から読み出される命令を解読し、入力され
た命令に応じて制御信号316と制御信号317とアド
レス124とを生成する。制御回路320は、制御信号
316と制御信号317とレジスタ330の値とに応じ
て制御信号322とアドレス328と制御信号126と
制御信号群128とを生成する。制御信号群128は、
演算器、レジスタ等の被制御回路(不図示)の動作を制
御するために使用される。
【0048】以下、上述した構成を有する本実施例の情
報処理装置の動作を説明する。
【0049】図2に示す情報処理装置の動作と異なる点
は、メモリ161から読み出された命令がret命令で
ある場合の命令ポインタ213の制御である。
【0050】メモリ111から読み出された命令はデコ
ーダ315によって解読される。命令デコーダ315
は、入力された命令が「DSP190の処理を起動し、
かつ、CPU340の動作を継続する命令(calld
sp2命令)」であるとき、制御信号316をアクティ
ブにし、同時にアドレス124にDSP190にて起動
したいプログラムが格納されているメモリ161の先頭
のアドレスを出力する。例えば、メモリ111のx’0
100’番地に格納されている命令がcalldsp2
x’0005’であるとき、アドレス124にx’0
005’を出力する。制御回路320は制御信号216
がアクティブであれば、制御信号322に「0」を出力
し続け、同時に制御信号126に「1」を出力する。命
令ポインタ213は制御信号322が「0」であるから
その値を更新し続ける。これによりCPU340は動作
し続ける。
【0051】一方、メモリ161から読み出された命令
が「処理の終了を指示する命令(ret命令)」である
とき、命令デコーダ170は制御信号172に「1」を
出力し、また、命令ポインタ163の動作を停止する指
示を出す。制御信号172が「1」のときレジスタ33
0は「1」に設定される。命令デコーダ315は、メモ
リ111から読み出された命令が「レジスタ330の状
態を調べ、レジスタ330の値が「1」のとき特定のア
ドレスに分岐する命令(jmpreg命令)」であると
き、制御信号317をアクティブにする。制御回路32
0は制御信号317がアクティブであれば、レジスタ3
30の内容を読み出し、その値が「1」のとき制御信号
322に「1」を出力し、同時にアドレス328にjm
preg命令で指定される分岐先アドレスを出力する。
例えばメモリ111から読み出された命令がjmpre
g x’0300’命令のとき、アドレス328にx’
0300’を出力する。命令ポインタ213は制御信号
322が「1」であるのでアドレス328を(x’03
00’)保持する。制御回路320は命令ポインタ21
3がアドレス328を保持した後、制御信号322に
「0」を出力する。その結果、命令ポインタ213はア
ドレス328の値を保持した後、その値を1だけ加算す
ることにより更新する。これにより、メモリ111のア
ドレス328(x’0300’)から処理が実行され
る。
【0052】以上の動作を図10に示す。上記によりC
PU340はあたかもサブルーチンを呼び出すような手
続きでDSP190への処理を起動する。またDSP1
90が動作中においてもCPU340は動作しており、
DSP190の処理終了後CPU340はメモリ111
に格納したプログラムの命令(jmpreg命令)でレ
ジスタ330の値、すなわちDSP190の処理が終了
したか否かを監視し、DSP190の処理終了後、jm
preg命令で指定されたアドレスに分岐することによ
りDSP190における処理の終了を認識する。
【0053】(第4の実施例)第4の実施例の情報処理
装置では、DSPの動作中にCPUの動作を停止させる
か継続されるかを示す情報を格納するレジスタがCPU
に設けられている。CPUは、そのレジスタの内容に応
じてDSPの動作中におけるCPUの動作の停止/継続
を切り換える。この切り換えは、第1の実施例で言及し
たcalldsp命令の機能と第2の実施例で言及した
calldsp2命令の機能とを1つの命令(call
dsp3命令)で実現することを可能にする。
【0054】図4は、本発明による第4の実施例の情報
処理装置の構成を示す。情報処理装置は、CPU440
とDSP190とを含んでいる。CPU440とDSP
190とは、単一のチップ100上に設けられている。
【0055】図4において、図2に示す情報処理装置の
構成要素と同一の構成要素には同一の番号を付してい
る。図2に示す情報処理装置の構成と異なる点は、命令
ポインタ213、命令デコーダ215及び制御回路22
0をそれぞれ命令ポインタ4113、命令デコーダ41
5及び制御回路420で置き換え、レジスタ432を追
加した点である。
【0056】CPU440は、メモリ111と命令ポイ
ンタ413と制御部412とを含んでいる。メモリ11
1から読み出された命令は、制御部412に供給され
る。制御部412は、メモリ111から読み出された命
令の実行を制御する。命令ポインタ413は、制御信号
422及び423に応じてメモリ111から読み出すべ
き命令のアドレスを出力する。命令ポインタ413に
は、メモリ111から読み出すべき命令のアドレス値が
設定される。命令ポインタ413は、制御信号422の
値が「1」の場合に保持している値を1だけ加算するこ
とにより更新し、制御信号422の値が「0」の場合に
保持している値の更新を停止する。また、命令ポインタ
413は、制御信号423の値が「1」の場合にはアド
レス428を新たに保持する。
【0057】制御部412は、命令デコーダ415と制
御回路420とを含んでいる。命令デコーダ415は、
メモリ111から読み出される命令を解読し、入力され
た命令に応じて制御信号416とアドレス124とを生
成する。制御回路420は、制御信号416と制御信号
172とレジスタ432の内容とに応じて制御信号42
2と制御信号423とアドレス428と制御信号126
と制御信号群128とを生成する。制御信号群128
は、演算器、レジスタ等の被制御回路(不図示)の動作
を制御するために使用される。
【0058】以下、上述した構成を有する本実施例の情
報処理装置の動作を説明する。
【0059】図2に示す情報処理装置の動作と異なる点
は、レジスタ432の内容に応じて命令ポインタ413
の制御が切り換えらえれる点である。その結果、レジス
タ432の内容に応じて、DSP190の動作中におけ
るCPU440の動作の停止/継続が切り換えられる。
【0060】レジスタ432には、図示しないデータバ
スを介して「0」又は「1」のいずれかの値が予め設定
される。
【0061】レジスタ432に予め設定された値が
「0」の場合の処理を説明する。メモリ111から読み
出された命令は命令デコーダ415によって解読され
る。命令デコーダ415は、入力された命令がcall
dsp3命令であるとき、制御信号416をアクティブ
にし、同時にアドレス124にDSP190にて起動し
たいプログラムが格納されているメモリ161の先頭の
アドレスを出力する。例えば、メモリ111のx’01
00’番地に格納されている命令がcalldsp3
x’0005’であるとき、アドレス124にx’00
05’を出力する。制御回路420は制御信号416が
アクティブであれば、制御信号422に「0」を出力
し、命令ポインタ413の更新を停止し、同時に制御信
号126に「1」を出力する。制御回路420は制御信
号172が「1」であると制御信号422に「1」を出
力する。命令ポインタ413は制御信号422が「1」
であるのでその値の更新を再開する。
【0062】レジスタ432に予め設定された値が
「1」の場合の処理を説明する。メモリ111から読み
出された命令は命令デコーダ415によって解読され
る。命令デコーダ415は、入力された命令がcall
dsp3命令であるとき、制御信号416をアクティブ
にし、同時にアドレス124にDSP190にて起動し
たいプログラムが格納されているメモリ161の先頭の
アドレスを出力する。例えば、メモリ111のx’01
00’番地に格納されている命令がcalldsp3
x’0005’であるとき、アドレス124にx’00
05’を出力する。制御回路420は制御信号416が
アクティブであれば、制御信号422に「1」を出力し
続け、同時に制御信号126に「1」を出力する。命令
ポインタ413は制御信号422が「1」であるからそ
の値を更新し続け、これによりCPU440は動作し続
ける。制御回路420は制御信号172が「1」である
と制御信号423に「1」を出力し、同時にアドレス4
28に予め設定された値、例えばx’F000’を出力
する。命令ポインタ413は制御信号423が「1」で
あるのでアドレス428を保持し、同時に図示しない記
憶手段にアドレス428を保持する以前の値を退避す
る。制御回路420は命令ポインタ413がアドレス4
28を保持した後、制御信号423に「0」を出力す
る。その結果、命令ポインタ413はアドレス428の
値を保持した後、その値を1だけ加算することにより更
新する。これにより、メモリ111内の予め設定された
アドレス428(例えばx’F000’)から処理が実
行される。
【0063】このようにして、レジスタ432に予め設
定された値に応じて、第1の実施例で言及したcall
dsp命令の機能と第2の実施例で言及したcalld
sp2命令の機能とを1つの命令(calldsp3命
令)で実現することができる。
【0064】(第5の実施例)第1の実施例の情報処理
装置では、calldsp命令は常にDSPの処理を起
動するものであり、CPUのサブルーチンを実行すると
きには別の命令にて指示する必要があった。このため、
プログラマーは、使いたいプログラムがCPU内部のサ
ブルーチンであるかDSP内部のサブルーチンであるか
に応じて異なる命令を使い分ける必要があった。第5の
実施例の情報処理装置は、この点を改良するものであ
り、CPU内部のサブルーチンであるかDSP内部のサ
ブルーチンであるかにかかわりなく、統一された単一の
命令(call命令)だけでCPUでの処理の実行とD
SPへの処理の起動とを行うことを可能とするものであ
る。図5は、本発明による第5の実施例の情報処理装置
の構成を示す。情報処理装置は、CPU540とDSP
590とを含んでいる。CPU540とDSP590と
は、単一のチップ500上に設けられている。
【0065】CPU540は、メモリ511と命令ポイ
ンタ513と制御部512とを含んでいる。メモリ51
1には、実行すべき複数の命令が格納されておりてい
る。また、メモリ511には、一定の範囲の番地が割り
当てられている。例えば、メモリ511には、0番地か
らx’3FF’番地の1024語が割り当てられる。メ
モリ511は、その複数の命令のうち命令ポインタ51
3から出力されるアドレスに格納されている命令を読み
出す。メモリ511から読み出された命令は、制御部5
12に供給される。制御部512は、メモリ511から
読み出された命令の実行を制御する。命令ポインタ51
3は、制御信号522及び523に応じてメモリ511
から読み出すべき命令のアドレスを出力する。命令ポイ
ンタ513には、メモリ511から読み出すべき命令の
アドレス値が設定される。命令ポインタ513は、制御
信号522が「1」の場合にはその値を1だけ加算する
ことにより更新し、制御信号522が「0」の場合には
その値の更新を停止する。また、命令ポインタ513
は、制御信号523が「1」の場合にはアドレス518
の内容を保持する。
【0066】制御部512は、命令デコーダ515と制
御回路520とを含んでいる。命令デコーダ515は、
メモリ511から読み出される命令を解読し、入力され
た命令に応じて制御信号516とアドレス518とを生
成する。制御回路520は、制御信号516とアドレス
518と制御信号572とに応じて制御信号522と制
御信号523と制御信号526と制御信号群528とを
生成する。制御信号群528は、演算器、レジスタ等の
被制御回路(不図示)の動作を制御するために使用され
る。
【0067】DSP590は、メモリ561と命令ポイ
ンタ563と命令デコーダ570と制御回路580とを
含んでいる。メモリ561には、実行すべき複数の命令
が格納されている。メモリ561には、メモリ511に
割り当てられた範囲とは異なる範囲の番地が割り当てら
れている。例えば、メモリ561には、x’400’番
地からx’7FF’番地の1024語が割り当てられ
る。メモリ561は、その複数の命令のうち命令ポイン
タ563から出力されるアドレスに格納されている命令
を読み出す。メモリ561から読み出された命令は、命
令デコーダ570に供給される。命令デコーダ570
は、メモリ561から読み出された命令を解読し、入力
された命令が「処理の終了を指示する命令(ret命
令)」である場合には制御信号572に「1」を出力
し、そうでない場合には制御信号572に「0」を出力
する。制御回路580は、CPU540の制御回路52
0から制御信号526を受け取り、制御信号526の値
が「1」のとき制御信号582を「1」とする。命令ポ
インタ563は、メモリ561から読み出す命令のアド
レスを出力する。また、命令ポインタ563は、CPU
540の命令デコーダ515からアドレス518を受け
取り、制御信号582が「1」のときアドレス518を
保持する。
【0068】以下、上述した構成を有する本実施例の情
報処理装置の動作を説明する。
【0069】命令ポインタ513は通常はその保持する
値を1ずつ加算しメモリ511が読み出す命令の番地を
出力する。メモリ511から読み出された命令は命令デ
コーダ515で解読される。命令デコーダ515は、入
力された命令がサブルーチンへの分岐を指示する命令
(call命令)であるとき、制御信号516をアクテ
ィブにし、call命令とともに指示されるメモリ51
1またはメモリ561のサブルーチン先頭番地をアドレ
ス518に出力する。例えば、メモリ511のx’10
0’番地に格納される命令がcall x’200’命
令であるとき、アドレス518にx’200’を出力す
る。
【0070】制御回路520は制御信号516がアクテ
ィブであればアドレス518の値を調べ、それがメモリ
511の番地であれば制御信号523に「1」、制御信
号526に「0」を出力する。命令ポインタ513は制
御信号523が「1」であるのでアドレス518の内容
を保持する。また、制御回路580は制御信号526が
「0」であるから制御信号582に「0」を出力する。
例えば、メモリ511から読みだされた命令がcall
x’200’であるとき、x’200’番地はメモリ
511の領域であるので、命令ポインタ513はx’2
00’を保持し、命令ポインタ563はその保持内容を
更新しない。以上の動作を図11に示す。
【0071】また、制御回路520は制御信号516が
アクティブであればアドレス518の値を調べ、それが
メモリ561の番地であれば制御信号522、523に
「0」、制御信号526に「1」を出力する。命令ポイ
ンタ513は制御信号522が「0」であるので更新を
停止する。また、制御回路580は制御信号526が
「1」であるから制御信号582に「1」を出力する。
例えば、メモリ511から読みだされた命令がcall
x’500’であるとき、x’500’番地はメモリ
561の領域であるので、命令ポインタ513はその値
の更新を停止し、命令ポインタ563はx’500’を
保持の後、その値に1だけ加算することで順次メモリ5
61にアドレスを出力し、メモリ561に格納されてい
る命令が実行される。以上の動作を図12に示す。
【0072】メモリ561から読み出された命令が処理
の終了を指示する命令(ret命令)であるとき、命令
デコーダ570は制御信号572に「1」を出力し、ま
た、命令ポインタ563の動作を停止する指示を出す。
制御回路520は制御信号572が「1」であると制御
信号522に「1」を出力する。命令ポインタ513は
制御信号522が「1」であるのでその値の更新を再開
する。
【0073】このように、メモリ511とメモリ561
に異なる範囲の番地を割り付け、単一のcall命令で
示されるサブルーチンの先頭番地に応じて、メモリ51
1へのアクセスとメモリ561へのアクセスとを自動的
に切り換えることにより、CPU540内部のサブルー
チンの呼び出し手続きとDSP590内部のサブルーチ
ンの呼び出し手続きとを統一することができる。cal
l命令で示されるサブルーチンの先頭番地がメモリ51
1の領域である場合にはCPU540が動作し続ける。
call命令で示されるサブルーチンの先頭番地がメモ
リ561の領域である場合には、第1の実施例の情報処
理装置と同様の動作を行う。すなわち、DSP590の
処理を起動した後CPU540はその動作を停止し、D
SP590の処理終了後CPU540はその動作を再開
する。
【0074】(第6の実施例)第6の実施例の情報処理
装置は、第5の実施例の情報処理装置と比較すると、c
all命令で示されるサブルーチンの先頭番地がメモリ
561の領域である場合の処理を変更したものである。
本実施例の情報処理装置では、call命令で示される
サブルーチンの先頭番地がDSPに含まれるメモリの領
域である場合には、第2の実施例の情報処理装置と同様
の動作を行う。すなわち、DSPの処理を起動した後も
CPUはその動作を継続し、DSPの処理終了後CPU
は予め設定されたアドレスに分岐することによりDSP
における処理の終了を認識する。図6は、本発明による
第6の実施例の情報処理装置の構成を示す。情報処理装
置は、CPU640とDSP590とを含んでいる。C
PU640とDSP590とは、単一のチップ500上
に設けられている。
【0075】図6において、図5に示す情報処理装置の
構成要素と同一の構成要素には同一の番号を付してい
る。図5に示す情報処理装置の構成と異なる点は、命令
ポインタ513及び制御回路520をそれぞれ命令ポイ
ンタ613及び制御回路620で置き換えた点である。
【0076】CPU640は、メモリ511と命令ポイ
ンタ613と制御部612とを含んでいる。メモリ51
1から読み出された命令は、制御部612に供給され
る。制御部612は、メモリ511から読み出された命
令の実行を制御する。命令ポインタ613は、制御信号
522、523及び623に応じてメモリ511から読
み出すべき命令のアドレスを出力する。命令ポインタ6
13には、メモリ511から読み出すべき命令のアドレ
ス値が設定される。命令ポインタ613は、制御信号5
22が「1」の場合にはその値を1だけ加算することに
より更新し、制御信号522が「0」の場合にはその値
の更新を停止する。また、制御信号523が「1」の場
合にはアドレス518の内容を保持し、制御信号623
が「1」の場合にはアドレス628の内容を保持する。
【0077】制御部612は、命令デコーダ515と制
御回路620とを含んでいる。命令デコーダ515は、
メモリ511から読み出される命令を解読し、入力され
た命令に応じて制御信号516とアドレス518とを生
成する。制御回路620は、制御信号516とアドレス
518と制御信号572とに応じて制御信号522と制
御信号523と制御信号623とアドレス628と制御
信号526と制御信号群528とを生成する。制御信号
群528は、演算器、レジスタ等の被制御回路(不図
示)の動作を制御するために使用される。
【0078】以下、上述した構成を有する本実施例の情
報処理装置の動作を説明する。
【0079】図5に示す情報処理装置の動作と異なる点
は、DSP590の動作中における命令ポインタ613
の制御と、メモリ561から読み出された命令がret
命令である場合の命令ポインタ613の制御である。
【0080】制御回路620は制御信号516がアクテ
ィブであればアドレス518の値を調べ、それがメモリ
511の番地であれば制御信号523に「1」、制御信
号526に「0」を出力する。命令ポインタ613は制
御信号523が「1」であるのでアドレス518の内容
を保持する。例えば、メモリ511から読みだされた命
令がcall x’200’であるとき、x’200’
番地はメモリ511の領域であるので、命令ポインタ6
13はx’200’を保持し、命令ポインタ563はそ
の保持内容を更新しない。
【0081】また、制御回路620は制御信号516が
アクティブであればアドレス518の値を調べ、それが
メモリ561の番地であれば制御信号522に「1」、
制御信号523に「0」、制御信号526に「1」を出
力する。命令ポインタ613は制御信号522が「1」
であるので動作し続ける。例えば、メモリ511のx’
100’番地の命令がcall x’500’であると
き、x’500’番地はメモリ561の領域であるの
で、命令ポインタ613はその値を更新し続け(x’1
01’、x’102’、...)、命令ポインタ563
はx’500’を保持の後、その値に1だけ加算するこ
とで順次メモリ561にアドレスを出力し、メモリ56
1に格納されている命令が実行される。
【0082】また、制御回路620は制御信号572が
「1」であると制御信号623に「1」を出力し、同時
に予め設定したアドレス628(例えばx’3F0’)
を命令ポインタ613に出力する。命令ポインタ613
は制御信号623が「1」であるのでアドレス628を
その保持内容とする。
【0083】このように、メモリ511とメモリ561
に異なる範囲の番地を割り付け、単一のcall命令で
示されるサブルーチンの先頭番地に応じて、メモリ51
1へのアクセスとメモリ561へのアクセスとを自動的
に切り換えることにより、CPU540内部のサブルー
チンの呼び出し手続きとDSP590内部のサブルーチ
ンの呼び出し手続きとを統一することができる。cal
l命令で示されるサブルーチンの先頭番地がメモリ51
1の領域である場合にはCPU540が動作し続ける。
call命令で示されるサブルーチンの先頭番地がメモ
リ561の領域である場合には、第2の実施例の情報処
理装置と同様の動作を行う。すなわち、CPU640は
DSP590の処理を起動した後も動作を継続し、DS
P590の処理終了後CPU590は予め設定されたア
ドレスに分岐することによりDSP590における処理
の終了を認識する。
【0084】なお、上記実施例においてDSPのどの処
理を起動するかといった情報をメモリ161、561等
に格納されたプログラムの先頭アドレス124、518
としたが、これはDSP190、590にて実行したい
処理と一対一に対応するものであればよく先頭アドレス
に限るものではない。
【0085】また、DSP190、590等に処理を起
動する命令として、calldsp命令等を用いたが、
上記実施例の表記に限るものではないことは言うまでも
ない。
【0086】さらに、上述した実施例ではCPUとDS
Pを含む情報処理装置を説明したが、本発明は、CPU
とDSPとの組み合わせに限定されない。同一のタイプ
の又は異なるタイプの2以上のプロセッサを単一のチッ
プ上に集積する場合に本発明は有効に適用され得る。
【0087】
【発明の効果】本発明によれば、CPUに含まれる第1
メモリから読み出された単一の起動命令(callds
p命令)により、DSPに含まれる第2メモリが読み出
すべき命令の番地が所定の値に設定される。これによ
り、CPU側からDSP側の処理を起動する場合にプロ
グラマーは単一のcalldsp命令をコーディングす
るだけで済む。その結果、プログラム作成の労力が大幅
に削減される。また、プログラムの可読性も向上するた
め、プログラムのテスト、デバッグ、再利用等が容易と
なる。
【0088】図13は、CPUがDSPの処理を起動す
る手続きの例を示す。(a)は図7に示す従来の情報処
理装置による場合のコーディング例、(b)〜(e)は
本発明の各実施例の情報処理装置による場合のコーディ
ング例である。
【0089】さらに、CPUとDSPとを接続するため
の入出力ポートが不要であるため、CPUからDSPの
処理の起動を高速に行うことができる。
【0090】DSPの処理の起動後もCPUの動作を継
続させることができる。これにより、CPUとDSPと
が並列動作を行うのでさらに効率よく処理が実行され得
る。また、DSPの処理終了の通知を格納するレジスタ
を設け、そのレジスタの値を参照する命令を実行してD
SPの処理終了を監視することにより、任意の時点でD
SPの処理終了をCPU側で検知することが可能とな
る。
【0091】さらに、CPUの動作の継続/停止に関す
る情報を格納するレジスタを設け、そのレジスタの内容
に応じてCPUの動作の継続/停止を切り換えることに
より、1つの命令で2つの機能を実現することが可能と
なる。
【0092】また、本発明によれば、CPUに含まれる
第1メモリから読み出された単一の起動命令(call
命令)に対応する番地に応じて、CPUに含まれる第1
メモリをアクセスすべきかDSPに含まれる第2メモリ
をアクセスすべきかが決定される。CPUに含まれる第
1メモリをアクセスすべき場合には、その起動命令によ
りCPUに含まれる第1メモリが読み出すべき命令の番
地が所定の値に設定される。DSPに含まれる第2メモ
リをアクセスすべき場合には、その起動命令により、D
SPに含まれる第2メモリが読み出すべき命令の番地が
所定の値に設定される。これにより、プログラマーは実
行すべきプログラムがCPUの第1メモリに格納されて
いるかDSPの第2メモリに格納されているかに応じて
異なる起動命令を使い分けることなく、単一の起動命令
(call命令)を用いてコーディングすることができ
る。その結果、プログラム作成の労力が大幅に削減され
る。また、プログラムの可読性も向上するため、プログ
ラムのテスト、デバッグ、再利用等が容易となる。さら
に、CPUとDSPとを接続するための入出力ポートが
不要であるため、CPUからDSPの処理の起動を高速
に行うことができる。
【0093】DSPの処理の起動後もCPUの動作を継
続させることができる。これにより、CPUとDSPと
が並列動作を行うのでさらに効率よく処理が実行され得
る。
【図面の簡単な説明】
【図1】本発明による第1の実施例の情報処理装置の構
成を示す図である。
【図2】本発明による第2の実施例の情報処理装置の構
成を示す図である。
【図3】本発明による第3の実施例の情報処理装置の構
成を示す図である。
【図4】本発明による第4の実施例の情報処理装置の構
成を示す図である。
【図5】本発明による第5の実施例の情報処理装置の構
成を示す図である。
【図6】本発明による第6の実施例の情報処理装置の構
成を示す図である。
【図7】従来の情報処理装置の構成を示す図である。
【図8】本発明による第1の実施例の情報処理装置の動
作を示す図である。
【図9】本発明による第2の実施例の情報処理装置の動
作を示す図である。
【図10】本発明による第3の実施例の情報処理装置の
動作を示す図である。
【図11】本発明による第5の実施例の情報処理装置の
動作を示す図である。
【図12】本発明による第5の実施例の情報処理装置の
動作を示す図である。
【図13】CPUがDSPの処理を起動する手続きのコ
ーディング例を示す図である。(a)は従来の情報処理
装置の場合のコーディング例、(b)は本発明の第1の
実施例の情報処理装置の場合のコーディング例、(c)
は本発明の第2および第3の実施例の情報処理装置の場
合のコーディング例、(d)は本発明の第4の実施例の
情報処理装置の場合のコーディング例、(e)は本発明
の第5および第6の実施例の情報処理装置の場合のコー
ディング例である。
【符号の説明】
111、161、511、561 メモリ 113、163、213、413、513 命令ポイン
タ 120、180、220、320、420、520、6
20 制御回路 170、515 命令デコーダ 140、240、340、540、640 CPU 190、590 DSP
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 9/38

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】 単一のチップ上に設けられた第1プロセ
    ッサと第2プロセッサとを備えた情報処理装置であっ
    て、 該第1プロセッサは、 複数の命令を格納する第1メモリであって、第1の範囲
    の番地が割り当てられた第1メモリと、 該第1メモリに格納された該複数の命令のうち読み出す
    べき1つの命令の番地を指定する第1命令ポインタ手段
    と、 該第1命令ポインタ手段によって指定された番地に対応
    する命令を該第1メモリから読み出す第1読み出し手段
    と、 該第1読み出し手段によって読み出された命令の実行を
    制御する第1制御手段とを備えており、 該第2プロセッサは、 複数の命令を格納する第2メモリであって、該第1の範
    囲とは異なる第2の範囲の番地が割り当てられた第2メ
    モリと、 該第2メモリに格納された該複数の命令のうち読み出す
    べき1つの命令の番地を指定する第2命令ポインタ手段
    と、 該第2命令ポインタ手段によって指定された番地に対応
    する命令を該第2メモリから読み出す第2読み出し手段
    と、 該第2読み出し手段によって読み出された命令の実行を
    制御する第2制御手段とを備えており、 該第1制御手段は、該第1読み出し手段によって読み出
    された命令がサブルーチンへの分岐を指示する単一の起
    動命令である場合には、該起動命令が指しているサブル
    ーチンの先頭番地が該第1の範囲の番地と該第2の範囲
    の番地のいずれに含まれるかを判定し、該起動命令が指
    しているサブルーチンの先頭番地が該第1の範囲の番地
    に含まれる場合には該第1命令ポインタ手段によって指
    定される命令の番地を該起動命令が指しているサブルー
    チンの先頭番地に設定し、該起動命令が指しているサブ
    ルーチンの先頭番地が該第2の範囲の番地に含まれる場
    合には該第1命令ポインタ手段の動作を停止又は継続さ
    せ、かつ、該起動命令を示す情報を該第2プロセッサに
    送り、 該第2制御手段は、該第1プロセッサから該起動命令を
    示す情報を受け取り、該起動命令を示す情報に応じて該
    第2命令ポインタ手段によって指定される命令の番地を
    該起動命令が指しているサブルーチンの先頭番地に設定
    する情報処理装置。
  2. 【請求項2】 前記第2制御手段は、前記第2読み出し
    手段によって読み出された命令が単一の終了命令である
    場合には、前記第2命令ポインタ手段の動作を停止さ
    せ、かつ、該終了命令を示す情報を該第1プロセッサに
    送り、 前記第1制御手段は、前記第2プロセッサから該終了命
    令を示す情報を受け取り、該終了命令を示す情報に応じ
    て前記第1命令ポインタ手段の動作を制御する、請求項
    に記載の情報処理装置。
  3. 【請求項3】 前記第1制御手段は、前記第1読み出し
    手段によって読み出された前記命令が前記起動命令であ
    る場合には、前記第1命令ポインタ手段の動作を停止さ
    せ、かつ、前記終了命令を示す情報に応答して前記第1
    命令ポインタ手段の動作を開始させる、請求項に記載
    の情報処理装置。
  4. 【請求項4】 単一のチップ上に設けられた第1プロセ
    ッサと第2プロセッサとを備えた情報処理装置の制御方
    法であって、 該第1プロセッサは、第1の範囲の番地が割り当てられ
    た第1メモリを有しており、該第2プロセッサは、該第
    1の範囲とは異なる第2の範囲の番地が割り当てられた
    第2メモリを有しており、 該第1メモリに格納された複数の命令のうち1つの命令
    を提供するステップと、 該命令がサブルーチンへの分岐を指示する単一の起動命
    令であるか否かを判定するステップと、 該命令が該起動命令であると判定された場合には、該起
    動命令が指しているサブルーチンの先頭番地が該第1の
    範囲の番地と該第2の範囲の番地のいずれに含まれるか
    を判定するステップと、 該起動命令が指しているサブルーチンの先頭番地が該第
    1の範囲の番地に含まれると判定された場合には、該起
    動命令に応じて該第1プロセッサの動作を制御するステ
    ップと、 該起動命令が指しているサブルーチンの先頭番地が該第
    2の範囲の番地に含まれると判定された場合には、該第
    1プロセッサの動作を停止又は継続させ、かつ、該起動
    命令を示す情報を該第2プロセッサに送るステップと、 該第1プロセッサから該起動命令を示す情報を受け取
    り、該起動命令を示す情報に応じて該第2プロセッサの
    動作を制御するステップとを包含する制御方法。
  5. 【請求項5】 前記制御方法は、 前記第2メモリに格納された複数の命令のうち1つの命
    令を提供するステップと、 該命令が単一の終了命令であるか否かを判定するステッ
    プと、 該命令が該終了命令であると判定された場合には、前記
    第2プロセッサの動作を停止させ、かつ、該終了命令を
    示す情報を前記第1プロセッサに送るステップと、 前記第2プロセッサから該終了命令を示す情報を受け取
    り、該終了命令を示す情報に応じて前記第1プロセッサ
    の動作を制御するステップとをさらに包含する、請求項
    に記載の制御方法。
JP22333895A 1995-08-31 1995-08-31 情報処理装置及びその制御方法 Expired - Fee Related JP3147727B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22333895A JP3147727B2 (ja) 1995-08-31 1995-08-31 情報処理装置及びその制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22333895A JP3147727B2 (ja) 1995-08-31 1995-08-31 情報処理装置及びその制御方法

Publications (2)

Publication Number Publication Date
JPH0969049A JPH0969049A (ja) 1997-03-11
JP3147727B2 true JP3147727B2 (ja) 2001-03-19

Family

ID=16796600

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22333895A Expired - Fee Related JP3147727B2 (ja) 1995-08-31 1995-08-31 情報処理装置及びその制御方法

Country Status (1)

Country Link
JP (1) JP3147727B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9582287B2 (en) * 2012-09-27 2017-02-28 Intel Corporation Processor having multiple cores, shared core extension logic, and shared core extension utilization instructions

Also Published As

Publication number Publication date
JPH0969049A (ja) 1997-03-11

Similar Documents

Publication Publication Date Title
JP3032747B2 (ja) オンチッププログラミング能力を有する埋め込みフラッシュメモリを備えたマイクロコンピュータ、および埋め込みフラッシュメモリにデータをプログラムする方法
JPH07219809A (ja) データ処理装置およびデータ処理方法
JPH02156334A (ja) 情報処理装置
US4701847A (en) Adaptive instruction sequence synthesizer and process
JP3147727B2 (ja) 情報処理装置及びその制御方法
JPH06275084A (ja) 不揮発性半導体記憶装置及びそれを用いたデータ処理装置
JP3956305B2 (ja) 不揮発性半導体記憶装置およびデータ処理装置
JPH08171504A (ja) エミュレ−ション装置
JPH1011315A (ja) インサーキットエミュレータ装置およびインサーキットエミュレーション方法
JP3097602B2 (ja) データ処理装置
JPH06324861A (ja) Cpu制御システム及び制御方法
KR100465610B1 (ko) 온-칩 프로그래밍 능력을 가지는 내장된 플래시 메모리를 구비한 마이크로컴퓨터 및 상기 내장된 플래시 메모리에 데이터를프로그램하는 방법
JP3839068B2 (ja) 半導体集積回路装置
US5864691A (en) Central processing unit with a selector that bypasses circuits where processing is not required
JP3323341B2 (ja) エミュレーション用プロセッサおよびそれを搭載したエミュレータ
JPS6230455B2 (ja)
JP2859048B2 (ja) マイクロコンピュータ
JP2000029508A (ja) プログラマブルコントローラ
JPH11259308A (ja) プログラマブルコントローラ
JPS6048770B2 (ja) 情報処理方式
JPS63157238A (ja) コンピユ−タ
JPH11316691A (ja) オペレーティングシステムの実行方法及び、これを用いた情報処理装置
JP2000148535A (ja) プロセッサ及びこれを用いたインサーキットエミュレータ
JPH09325935A (ja) バス切り換え回路
JPH09244918A (ja) デバッガ付きインタプリタへの機能付加方式

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20001212

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

Free format text: PAYMENT UNTIL: 20080112

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090112

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20090112

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100112

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20110112

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20110112

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20120112

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees