JPH0855034A - 演算プロセッサ及びこれを用いた割込処理システム - Google Patents

演算プロセッサ及びこれを用いた割込処理システム

Info

Publication number
JPH0855034A
JPH0855034A JP20801394A JP20801394A JPH0855034A JP H0855034 A JPH0855034 A JP H0855034A JP 20801394 A JP20801394 A JP 20801394A JP 20801394 A JP20801394 A JP 20801394A JP H0855034 A JPH0855034 A JP H0855034A
Authority
JP
Japan
Prior art keywords
register
register group
accessible
switching
outside
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
Application number
JP20801394A
Other languages
English (en)
Inventor
Satoru Kamiya
了 神谷
Akitoshi Saito
彰利 斉藤
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.)
Yamaha Corp
Original Assignee
Yamaha Corp
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 Yamaha Corp filed Critical Yamaha Corp
Priority to JP20801394A priority Critical patent/JPH0855034A/ja
Publication of JPH0855034A publication Critical patent/JPH0855034A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 処理すべきタスク数が増えてもハードウェア
構成が複雑になることがなく、且つ割込オーバーヘッド
も減少させる。 【構成】 演算プロセッサ1は、内部の動作に必要なポ
インタ、ステータス及びその他のデータを格納するレジ
スタ群3,4を2組備える。一方のレジスタ群3又は4
が内部からアクセス可能なとき(使用中)には、他方の
レジスタ群4又は3が外部からアクセス可能になる(未
使用)。これら2組のレジスタ群3,4は、外部からの
切換信号SWに従って切換えられる。外部プロセッサ2
は、内部にレジスタ群3,4の内容を退避させるメモリ
6を備え、割込処理の際に、未使用のレジスタ群3又は
4に、メモリ6に記憶されている次に起動すべきタスク
に必要なレジスタ群の内容を復帰させた後、切換信号S
Wを演算プロセッサ1に供給してレジスタ群3,4を切
り換える。そして、切り換え後の未使用のレジスタ群4
又は3の内容をメモリ6に退避させる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、マルチタスク処理を
実行するディジタル・シグナル・プロセッサ(DSP)
等に好適の演算プロセッサ及びこれを用いた割込処理シ
ステムに関する。
【0002】
【従来の技術】単一のDSPを用いて異なる複数のアプ
リケーションをマルチタスク処理にて実行する多重並列
オペレーションは、時分割多重方式により実行され、割
込処理によりタスクの切換が行われる。その際、割り込
まれるタスク及び割り込むタスクのプログラムカウンタ
値、ステータス及びアキュームレータ等のレジスタ格納
値の退避及び復元は、この種のオペレーションにおける
避けられないオーバーヘッドである。そこで、特開平2
−110739号には、各タスクのプログラムカウンタ
値やフラグ等のタスクセットを複数組備え、タスク切換
時にこれらのタスクセットを切換えることにより、レジ
スタ値の退避及び復元等の割込オーバーヘッドを減少さ
せたマルチタスク用中央処理装置が開示されている。
【0003】
【発明が解決しようとする課題】しかしながら、上述し
た従来のマルチタスク用中央処理装置では、切換えるタ
スク数及びパイプライン処理のための分割数に比例して
レジスタ数が増し、ハードウェア構成が複雑化する。こ
の発明は、このような問題点に鑑みなされたもので、処
理すべきタスク数等が増えてもハードウェア構成が複雑
になることがなく、且つ割込オーバーヘッドを減少させ
ることができる演算プロセッサ及びこれを用いた割込処
理システムを提供することを目的とする。
【0004】
【課題を解決するための手段】この発明に係る演算プロ
セッサは、プログラムを記憶するプログラム記憶手段
と、データを記憶するデータ記憶手段と、前記プログラ
ム記憶手段に記憶されたプログラムに従って各部を制御
する制御手段と、この制御手段により制御されて前記デ
ータ記憶手段に記憶されたデータに所定の演算処理を施
す演算手段と、これら各部の動作に必要なポインタ、ス
テータス及びその他のデータを格納するレジスタ群と備
えた演算プロセッサにおいて、前記レジスタ群は、一方
が前記各部からアクセス可能に接続され、他方が外部か
らアクセス可能に接続される同一構成の2組のレジスタ
群からなり、割込処理に伴って外部から供給される切換
信号に従って、前記各部からアクセス可能なレジスタ群
と前記外部からアクセス可能なレジスタ群とを切換える
レジスタ切換手段を備えたことを特徴とする。
【0005】また、この発明に係る割込処理システム
は、内部の動作に必要なポインタ、ステータス及びその
他のデータを格納するレジスタ群を2組備え、一方のレ
ジスタ群が内部からアクセス可能に接続され、他方のレ
ジスタ群が外部からアクセス可能に接続されると共に、
これら2組のレジスタ群を外部からの切換信号に従って
切換えるレジスタ切換手段を備えた演算プロセッサと、
内部に前記レジスタ群の内容を退避させる記憶手段を備
え、割込処理の際に、前記演算プロセッサの外部からア
クセス可能なレジスタ群に、前記記憶手段に記憶されて
いる次に起動すべきタスクに必要なレジスタ群の内容を
復帰させた後に前記切換信号を前記演算プロセッサに供
給して前記レジスタ群を切り換えると共に、切り換え後
の前記外部からアクセス可能なレジスタ群の内容を前記
記憶手段に退避させる外部制御手段とを備えたことを特
徴とする。
【0006】
【作用】この発明によれば、ポインタ等を格納するレジ
スタ群を2組備え、一方のレジスタ群が内部動作に使用
されている最中に、他方のレジスタ群は外部に対してア
クセス可能となるので、この未使用のレジスタ群に対し
て、外部から復帰及び退避のためのアクセスを行うこと
ができる。このため、次に起動されるタスクのレジスタ
群の内容を予め復帰させておいたり、前に起動されたタ
スクのレジスタ群の内容を他のタスクが起動中に退避さ
せる等の処理を行うことにより、タスクの切り換えに伴
う割込オーバーヘッドを減少させることができる。しか
も、この発明によれば、タスク数が増えたりパイプライ
ン処理による命令サイクルの分割数が増えても、使用す
るレジスタ群の数は2組で十分であるため、ハードウェ
ア構成の複雑化を招くようなことも無い。
【0007】
【実施例】以下、図面を参照して、この発明の実施例を
説明する。図1は、この発明の一実施例に係るマルチタ
スクシステムを示すブロック図である。このシステム
は、演算プロセッサ1と外部プロセッサ2とから構成さ
れる。演算プロセッサ1は、例えばDSPのような内部
に演算器を含む信号処理プロセッサで、内部にプログラ
ムカウンタ、ループカウンタ、ステータスレジスタ、書
き込み読み出しポインタ、並びに演算器、メモリ、デコ
ーダ等の内部レジスタを有する。ここでは、これらを総
称してレジスタ群と呼ぶ。このシステムの演算プロセッ
サ1では、このようなレジスタ群がREGA3とREG
B4の2組設けられている。REGA3及びREGB4
は、同一構成で、一方が使用中で内部からアクセス可能
なときに、他方が未使用となり外部からアクセス可能に
接続される。これらは外部からの切換信号SWによって
切換えられる。
【0008】外部プロセッサ2は、外部コントローラ
5、メモリ6及び割込処理受付部7を備えて構成されて
いる。外部コントローラ5は、割込処理受付部7で受け
付けた外部からの割込要求に従って、演算プロセッサ1
に対する割込処理を実行したり、メモリ6に記憶された
多重実行処理プログラムに従って、タスク切換のための
スケジューリングや割込処理を実行する。割込処理に際
して、外部コントローラ5は、未使用のレジスタ群(R
EGA3又はREGB4)に格納されているレジスタ値
をメモリ6に格納し、次に起動すべきタスクのレジスタ
値をメモリ6から読み出して未使用のレジスタ群(RE
GA3又はREGB4)に格納する。割込処理受付部7
は、RS−232C、SCSI等のアナログ、ディジタ
ルインターフェース、及びデータ受信バッファ等から構
成され、外部機器からの割込要求を受け付ける。
【0009】図2は、演算プロセッサ1の一例を示す詳
細ブロック図である。内部バス11には、演算処理プロ
グラムを格納するプログラムメモリ12と、演算処理に
必要な係数や信号データ等を格納するデータメモリ13
と、演算器を構成する乗算器14及び算術論理ユニット
(ALU)15等が接続されている。プログラムメモリ
12に格納された命令コードは、プログラムカウンタ
(PC)16によって一つずつ読み出され、インストラ
クションレジスタ(IR)17に格納されたのち、デコ
ーダ18に供給されて解読される。これにより、各部が
コントロール信号によって制御される。データメモリ1
3の読出アドレスと書込アドレスとは、それぞれ読出ポ
インタ(RP)19及び書込ポインタ(WP)20によ
って指定される。
【0010】乗算器14に与えられる係数等のデータ
は、データメモリ13から読み出され、内部バス11を
介して乗算レジスタ(MR)21に格納される。この格
納データと、プログラムメモリ12から内部バス11を
介して供給されたオペランドとが、マルチプレクサ(M
UX)22によって択一的に選択され、乗算器14の一
方に与えられ、乗算器14の他方に信号処理データ等が
与えられる。乗算器14の出力と内部バス11を介して
与えられるデータのいずれか一方が、マルチプレクサ
(MUX)23によって選択され、ALU15の一方の
入力として与えられ、ALU15の出力又は内部バス1
1上のデータがALU15の他方の入力として与えられ
る。ALU15の出力はアキュームレータ(ACC)2
4に格納される。ALU15の計算結果によって決定さ
れるステータス情報は、ステータスレジスタ(SR)2
5に格納される。また、ループ処理の処理回数は、ルー
プカウンタ(LC)26に保持される。この他、この演
算プロセッサ1には、補助レジスタ27及び補助レジス
タ専用演算ユニット(ARAU)28が設けられてい
る。また、スタック29には、同一タスク内で分岐処理
等が発生した場合のプログラムカウンタの値がスタック
される。
【0011】以上の構成において、プログラムカウンタ
16、読出ポインタ19、書込ポインタ20、乗算レジ
スタ21、アキュームレータ、ステータスレジスタ2
5、ループカウンタ26、保持レジスタ27及びスタッ
ク29等は、タスク切り換え時に全て退避し復元しなけ
ればならない内容を保持したものである。演算プロセッ
サ1には、これらのレジスタ群がそれぞれ2組備えら
れ、切換信号SWによって切換えられる。
【0012】図3は、これらのレジスタ群のうちの1組
のレジスタとその切換手段の具体的構成例を示す図であ
る。レジスタ31,32は、上述したプログラムカウン
タ16などのレジスタ群の一つで、その入力端側及び出
力端側にそれぞれ選択回路33,34,35,36が備
えられている。選択回路33は、内部からのデータをレ
ジスタ31,32のいずれに出力するかを選択し、選択
回路34は、外部からのデータをレジスタ31,32の
いずれに出力するかを選択する。選択回路35は、レジ
スタ31,32のいずれから内部にデータを出力するか
を選択し、選択回路36は、レジスタ31,32のいず
れから外部にデータを出力するかを選択する。インバー
タ37は、選択回路33,35に与える制御信号と選択
回路34,36に与える制御信号とを反転させる。切換
信号SWが“0”のときは、選択回路33,35に供給
される制御信号が“1”、選択回路34,35に供給さ
れる制御信号が“0”となるので、レジスタ31が内部
からアクセス可能になり、レジスタ32が外部からアク
セス可能になる。切換信号SWが“1”のときは、選択
回路33,35に供給される制御信号が“0”、選択回
路34,35に供給される制御信号が“1”となるの
で、レジスタ32が内部からアクセス可能になり、レジ
スタ31が外部からアクセス可能になる。
【0013】以上のシステムにおいて、いま、起動され
るタスクの取り得る状態が、例えば図4に示すように、
RUN、WAIT、READY、及びSUSPENDの
4つであるとする。RUNは、タスクが実行している状
態で、この状態から事象待ちに入るとWAITに遷移す
る。また、READYは、待機状態で、タスクがいつで
も実行状態に遷移し得る状態である。WAITから事象
待ちが完了した場合にもこの状態になり得る。SUSP
ENDは、タスクが停止している状態で、この状態から
直ちに実行状態に移ることはできない。READY及び
WAITから強制中止された場合にも、この状態に遷移
する。
【0014】図5は、イベント発生時に外部コントロー
ラ5が実行する処理の概要を示すフローチャートであ
る。外部コントローラ5は、外部からの割込又は多重実
行処理からのイベントが発生すると、この処理を起動
し、先ず、内部の実行待ち行列等を参照したり、全タス
クの状態(WAIT,READY等)を判断して全タス
クの優先順序を判断する(S1)。次に、発生したイベ
ントがタスクの切換を必要とするかどうかを判断し(S
2)、タスク切換が不要であれば処理を終了するが、タ
スク切換が必要であれば、次に起動するタスクのレジス
タの内容をメモリ6から読み出して未使用のレジスタ群
(REGA3又はREGB4)にそれを書き込む(S
3)。そして、タスク切換のタイミングを判定し(S
4)、タスク切換と同時に切換信号SWを反転させてレ
ジスタ群を切換える(S5)。最後に、新たに未使用と
なったレジスタ群の内容をメモリ6の所定の記憶場所に
格納する。これにより、演算プロセッサ1は、瞬時にタ
スクの切換を行うことができ、タスクが切り替わったこ
とすら検知する必要がない。
【0015】なお、上記の処理では、未使用のレジスタ
群に次のタスクの内容を復帰しておいてから、タスク切
換を実行し、新たに未使用となったレジスタ群の内容を
外部メモリに退避するようにしたが、タスク切換前に未
使用のレジスタ群の内容を外部メモリに退避してから、
次に起動するタスクのレジスタ群の内容を外部メモリか
ら復帰させてタスクを切換えるようにしてもよい。ま
た、外部コントローラ5は、次に切換えるタスクが前回
起動されたタスクであるかどうかを判断し、前回起動さ
れたタスクである場合には、未使用のレジスタ群に前回
のレジスタ群の内容が破壊されずに残っているので、メ
モリからの復帰動作を行わずに直ちにレジスタ群を切換
えるようにしても良い。
【0016】
【発明の効果】以上述べたように、この発明によれば、
ポインタ等を格納するレジスタ群を2組備え、一方のレ
ジスタ群が内部動作に使用されている最中に、他方の未
使用のレジスタ群に対して、外部から復帰及び退避のた
めのアクセスを行うことができるので、次に起動される
タスクのレジスタ群の内容を予め復帰させておいたり、
前に起動されたタスクのレジスタ群の内容を他のタスク
が起動中に退避させる等の処理を行うことにより、タス
クの切り換えに伴う割込オーバーヘッドを減少させるこ
とができる。しかも、この発明によれば、タスク数が増
えたりパイプライン処理による命令サイクルの分割数が
増えても、使用するレジスタ群の数は2組で十分である
ため、ハードウェア構成の複雑化を招くことがないとい
う効果を奏する。
【図面の簡単な説明】
【図1】 この発明の一実施例に係るマルチタスクシス
テムのブロック図である。
【図2】 同システムにおける演算プロセッサの内容を
示すブロック図である。
【図3】 同演算プロセッサにおける各レジスタとその
切換手段の構成を示すブロック図である。
【図4】 同システムで起動されるタスクの状態を説明
するための状態遷移図である。
【図5】 同システムにおけるイベント発生時の割込処
理を示すフローチャートである。
【符号の説明】
1…演算プロセッサ、2…外部プロセッサ、3,4…レ
ジスタ群、5…外部コントローラ、6…メモリ、7…割
込処理受付部。
【手続補正書】
【提出日】平成6年8月18日
【手続補正1】
【補正対象書類名】図面
【補正対象項目名】図3
【補正方法】変更
【補正内容】
【図3】

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 プログラムを記憶するプログラム記憶手
    段と、 データを記憶するデータ記憶手段と、 前記プログラム記憶手段に記憶されたプログラムに従っ
    て各部を制御する制御手段と、 この制御手段により制御されて前記データ記憶手段に記
    憶されたデータに所定の演算処理を施す演算手段と、 これら各部の動作に必要なポインタ、ステータス及びそ
    の他のデータを格納するレジスタ群とを備えた演算プロ
    セッサにおいて、 前記レジスタ群は、一方が前記各部からアクセス可能に
    接続され、他方が外部からアクセス可能に接続される同
    一構成の2組のレジスタ群からなり、 割込処理に伴って外部から供給される切換信号に従っ
    て、前記各部からアクセス可能なレジスタ群と前記外部
    からアクセス可能なレジスタ群とを切換えるレジスタ切
    換手段を備えたことを特徴とする演算プロセッサ。
  2. 【請求項2】 内部の動作に必要なポインタ、ステータ
    ス及びその他のデータを格納するレジスタ群を2組備
    え、一方のレジスタ群が内部からアクセス可能に接続さ
    れ、他方のレジスタ群が外部からアクセス可能に接続さ
    れると共に、これら2組のレジスタ群を外部からの切換
    信号に従って切換えるレジスタ切換手段を備えた演算プ
    ロセッサと、 内部に前記レジスタ群の内容を退避させる記憶手段を備
    え、割込処理の際に、前記演算プロセッサの外部からア
    クセス可能なレジスタ群に、前記記憶手段に記憶されて
    いる次に起動すべきタスクに必要なレジスタ群の内容を
    復帰させた後に前記切換信号を前記演算プロセッサに供
    給して前記レジスタ群を切り換えると共に、切り換え後
    の前記外部からアクセス可能なレジスタ群の内容を前記
    記憶手段に退避させる外部制御手段とを備えたことを特
    徴とする割込処理システム。
JP20801394A 1994-08-09 1994-08-09 演算プロセッサ及びこれを用いた割込処理システム Pending JPH0855034A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20801394A JPH0855034A (ja) 1994-08-09 1994-08-09 演算プロセッサ及びこれを用いた割込処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20801394A JPH0855034A (ja) 1994-08-09 1994-08-09 演算プロセッサ及びこれを用いた割込処理システム

Publications (1)

Publication Number Publication Date
JPH0855034A true JPH0855034A (ja) 1996-02-27

Family

ID=16549235

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20801394A Pending JPH0855034A (ja) 1994-08-09 1994-08-09 演算プロセッサ及びこれを用いた割込処理システム

Country Status (1)

Country Link
JP (1) JPH0855034A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002312302A (ja) * 2001-04-09 2002-10-25 Denso Corp 周辺装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002312302A (ja) * 2001-04-09 2002-10-25 Denso Corp 周辺装置

Similar Documents

Publication Publication Date Title
JP2645669B2 (ja) データ処理システム
US5247628A (en) Parallel processor instruction dispatch apparatus with interrupt handler
US5918033A (en) Method and apparatus for dynamic location and control of processor resources to increase resolution of data dependency stalls
US5613114A (en) System and method for custom context switching
US6374347B1 (en) Register file backup queue
US5428779A (en) System and method for supporting context switching within a multiprocessor system having functional blocks that generate state programs with coded register load instructions
HK1000050B (en) Data processing systems
JPH087678B2 (ja) 異なるアーキテクチヤのインストラクシヨンを処理するコンピユータ及びその結果の通信方法
JPH03286332A (ja) デジタルデータ処理装置
JPH1011301A (ja) マルチタスク処理装置及びマルチタスク処理制御方法
US5276822A (en) System with enhanced execution of address-conflicting instructions using immediate data latch for holding immediate data of a preceding instruction
JPH0855034A (ja) 演算プロセッサ及びこれを用いた割込処理システム
JP2677458B2 (ja) システムコール実行装置
JPH0754467B2 (ja) データ処理装置
JPH07219766A (ja) 演算処理装置
JP2585905B2 (ja) マルチタスク実行装置
JP2925842B2 (ja) パイプライン処理装置
JPS60250438A (ja) 情報処理装置
JP2003150390A (ja) マイクロプロセッサ
JPH06274353A (ja) 信号処理プロセッサ
JPH0821027B2 (ja) A/d変換装置内蔵マイクロコンピュータ
JP2583614B2 (ja) ベクトル演算装置
JPH07210384A (ja) 浮動小数点演算装置
JPH10207720A (ja) 情報処理装置
JPH02110739A (ja) マルチタスク用中央処理装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Effective date: 20040330

Free format text: JAPANESE INTERMEDIATE CODE: A02