JPH10283186A - プロセッサ - Google Patents

プロセッサ

Info

Publication number
JPH10283186A
JPH10283186A JP8824897A JP8824897A JPH10283186A JP H10283186 A JPH10283186 A JP H10283186A JP 8824897 A JP8824897 A JP 8824897A JP 8824897 A JP8824897 A JP 8824897A JP H10283186 A JPH10283186 A JP H10283186A
Authority
JP
Japan
Prior art keywords
processing
interrupt
interrupt processing
output
instruction
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.)
Withdrawn
Application number
JP8824897A
Other languages
English (en)
Inventor
Tsutomu Fukatsu
勉 普勝
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP8824897A priority Critical patent/JPH10283186A/ja
Publication of JPH10283186A publication Critical patent/JPH10283186A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

(57)【要約】 【課題】 簡易な構造で高速に処理可能なプロセッサを
提供する。 【解決手段】 プロセッサは、パイプライン処理可能な
プロセッサであって、割り込み処理要求があった際の前
記パイプライン処理の状態にしたがって前記割り込み処
理の開始タイミングを制御するように構成されている。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はプロセッサに関し、
特には、パイプライン処理に関する。
【0002】
【従来の技術】従来より、プロセッサの高速処理技術の
一つとして、プロセッサの動作を制御するプログラムの
構成単位であるインストラクション(命令)に対する処
理を、複数の処理資源の中から単一あるいは複数の資源
を使用する複数のステージに分割し、時間的に隣接する
命令系列を異なるステージで処理資源のしように関して
強豪が起こらないようにオーバーラップさせ、高いスル
ープットで処理するパイプライン処理技術が知られてい
る。
【0003】また、プロセッサ自身の処理・プロセッサ
とその周辺装置との協調処理を時間的に、また、使用す
る資源の観点から効率的に実行する手段として、割り込
み処理が知られている。
【0004】割り込みとは、分岐命令と同じく、命令実
行の通常の流れを変えるものであり、そもそも算術演算
エラーの検出や各種プロセッサ周辺イベントに対してリ
アルタイムに応答するために考えられたものである。
【0005】
【発明が解決しようとする課題】しかし、このようなパ
イプライン処理を行うプロセッサにあっては動作クロッ
クの周波数が高いため、割り込み処理はプロセッサ動作
のタイミング上クリティカルパスとなり、プロセッサの
高速処理の妨げとなってしまう。
【0006】また、パイプライン処理では、異なる命令
の複数のステップが同時に行われるため、このような処
理中に割り込み要求要求があった場合に、その割り込み
要求に対する各命令についてのデータの待避処理が発生
し、回路の動作が複雑になってしまう。
【0007】その結果、各命令が正確に実行されなくな
ってしまうことも考えられる。
【0008】本発明はこのような問題点を解決すること
を目的とする。
【0009】また、本願の他の目的は、簡易な構造で高
速に処理可能なプロセッサを提供する処にある。
【0010】
【課題を解決するための手段】前記課題を解決し、目的
を達成するため、本発明は、プログラムを構成する複数
の命令をそれぞれ複数のステージに分割し、近傍にある
複数の命令の互いに異なる前記複数のステージを同時に
処理可能なプロセッサであって、割り込み処理要求信号
を入力する入力手段と、前記入力手段により入力された
割り込み処理要求信号と前記複数の命令の処理状態とに
応じて前記割り込み処理の開示タイミングを制御する制
御手段とを備えて構成されている。
【0011】
【発明の実施の形態】以下、本発明の実施の形態につい
て、図面を用いて詳細に説明する。
【0012】本形態では、本発明を、ビデオ信号・音声
信号をデジタル信号として記録再生するデジタルVTR
に対して適用した場合について説明する。
【0013】図1は本発明の実施形態としてのデジタル
VTRの構成を示すブロック図である。
【0014】図1において、1は図1の各部を制御する
ためのコントローラ、2は後述の如くビデオ信号及び音
声信号の処理を行う信号処理回路、3は磁気テープに対
してビデオ信号・音声信号を記録再生する記録再生回
路、4はビデオ信号・音声信号の処理を行うために用い
られ、これらの信号を記憶するメモリ、5はコントロー
ラ1の制御用の情報を記憶するプログラムメモリ、6は
音声信号等の比較的低速のデータを入出力するためのイ
ンターフェイス、7は信号処理回路3及びメモリ4の間
で比較的高速にデータを授受するためのインターフェイ
ス、8は外部制御系とデータを授受するための外部イン
ターフェイス、9はメモリ5、インターフェイス6及び
外部インターフェイス8をコントローラ1の記憶空間と
してマッピングするためのメモリマネジメントユニット
(MMU)である。
【0015】このような構成において、まず、記録時の
動作について説明する。
【0016】コントローラ1は、まず、入力ビデオ信号
を信号処理回路2、インターフェイス7を介してメモリ
4に書き込み、このメモリ4に記憶されたビデオ信号に
対して信号処理回路2により、周知のDCT・可変長符
号化等の技術を用いて情報量の圧縮及び符号化処理を施
す。更に、符号化されたビデオ信号に対して誤り訂正符
号化処理を施し、記録再生回路3に出力する。
【0017】また、インターフェイス6はMMU9を介
してコントローラの記憶空間の一部にマッピングされて
いるため、入力音声信号はコントローラのストア命令に
よりコントローラに取り込まれる。
【0018】コントローラは取り込んだ音声信号に対し
て所定の処理を施し、MMU9を介してインターフェイ
ス7よりアクセス可能なインターフェイス6に記憶す
る。その後、音声信号はインターフェイス6からインタ
ーフェイス7に転送され、メモリ4に記憶される。この
際、メモリ4の書き込みアドレスを制御することにより
シャフリングを行う。
【0019】メモリ4から読み出された音声信号は、信
号処理回路2により情報量を圧縮し、更に誤り訂正処理
を施して記録再生回路3に出力する。
【0020】記録再生回路3は、信号処理回路2から出
力されたビデオ信号及び音声信号に対して磁気記録に適
したデジタル変調処理を施し、磁気ヘッドによりテープ
上に記録する。
【0021】次に、再生動作について説明する。
【0022】記録再生回路3により再生されたビデオ信
号及び音声信号は、記録時に対応した復調処理が施さ
れ、信号処理回路2を介してメモリ4に書き込まれる。
【0023】信号処理回路2は、メモリ4に記憶された
ビデオ信号に対して誤り訂正処理及び復号化・情報量の
伸長処理を施し、元の形態に変換して出力する。また、
メモリ4に記憶された音声信号に対して誤り訂正処理及
び情報量の伸長処理を施してメモリ4に書き込む。
【0024】メモリ4に記憶された音声信号はインター
フェイス7を介してインターフェイス6に供給される。
コントローラ1はMMU9を介してインターフェイス6
上の該当する記憶空間へロード命令を出力し、供給され
た音声信号を取り込む。このとき、ロードするアドレス
を制御することでデシャフリングを行う。
【0025】コントローラ1は取り込んだ音声信号に対
して補間処理等の所定の処理を施し、インターフェイス
6上の記憶空間に記憶し、出力する。
【0026】コントローラ1には音声信号のサンプリン
グやビデオ信号の同期タイミング、ユーザの操作等に応
じた割り込み信号及び、リセット信号が供給されてい
る。
【0027】次に、図1におけるコントローラ1の構成
例について、図2を用いて説明する。
【0028】図2はコントローラ1中に含まれるプロセ
ッサの構成例を示す図である。
【0029】図2において、11はレジスタファイルで
あり、2つのデータ出力QA,QB、読み出しアドレス
入力RA,RB、書き込み制御入力WE、書き込みアド
レス入力WA、データ入力DIを有する。
【0030】12、13はそれぞれ所定の演算を行う演
算回路であり、それぞれ2つのデータ入力SA,SB、
及びこれらから得られるデータを用いて行われた演算結
果の出力DO及び演算の制御入力CNTを有する。
【0031】14はメモリインターフェイスであり、2
つのデータ入力SA,SB、アドレス出力DA、メモリ
入出力MIO、制御入力CNTを有し、制御入力CNT
に従い入力データSA,SBから得られたデータから生
成したアドレスをアドレス出力DAから出力する。ま
た、メモリ入出力MIOを介してレジスタファイル11
とメモリシステム16との間でのデータ転送や、ポート
EXT_IOを利用したコントローラ外部とのデータ転
送を行う。
【0032】15は2つのデータ入力SA,SB、制御
信号入力CNT、データ出力DO及びアドレス出力PC
Oを有するプログラムカウンタであり、シーケンサ17
の制御によりメモリシステム16に対してプログラムア
ドレスを与える。
【0033】16はデータやインストラクションを記憶
しておくためのメモリシステムで、データのアドレス入
力DA、データ入出力DIO、インストラクションアド
レス入力IA、インストラクション出力ISOを有す
る。このメモリシステム16はROM,RAM,磁気デ
ィスク、外部I/O等で構成されており、キャッシュ、
仮想記憶等の手法で階層化されて構成されることもあ
る。
【0034】17はレジスタファイル読み出しアドレス
RA,RB、レジスタファイル書き込み制御出力WE、
レジスタファイル書き込みアドレス出力WA、プログラ
ムカウンタ制御信号NXTA、演算器制御出力CSU、
CLU、メモリインターフェイス制御出力CMI、デー
タ入力DI、メモリ入力IIN、割り込み要求入力IN
T_Nを有し、メメモリシステム内のインストラクショ
ンをメモリ入力IINから取り込み、そのインストラク
ションに従いレジスタファイル11、演算器12、1
3、メモリインターフェイス14及びプログラムカウン
タ15を制御するためのシーケンサである。
【0035】次に、このような構成のプロセッサの動作
概要を説明する。
【0036】本形態のプロセッサはパイプライン処理を
行うように構成されており、プロセッサの動作を規定す
るプログラムの構成単位であるプロセッサ命令は、複数
のステップに分割されて時間的に隣接する命令系列が異
なるステップでオーバーラップして処理される。
【0037】図3は図2のシーケンサ17の構成を示す
図である。
【0038】まず、本形態のパイプライン処理について
説明する。
【0039】図3において、メモリシステム16から読
み出された命令は端子IINに入力され、以下に説明す
るパイプライン処理の各ステージを規定するためのレジ
スタIDレジスタ21、EXレジスタ23、WBレジス
タ24を動作クロックに従って順に転送される。また、
セレクタ22は後述の如く割り込み発生部27からの選
択信号TRP_EXに従って待避命令TRPとIDレジ
スタ21の出力とを選択する。各レジスタの出力はパイ
プライン制御部25に出力される。
【0040】パイプライン制御部25は各レジスタから
の出力と、各レジスタから出力が供給される直前の状態
に従って制御信号RA,RB,WE,WA,CMI,C
SU及びCLUを各端子から出力して各回路を制御す
る。
【0041】パイプライン処理される各命令はプロセッ
サにより以下の各ステージで時分割に処理される。
【0042】(1)命令取り込みステージ プログラムカウンタ15のアドレス出力PCOから出力
アドレスが出力されてメモリシステム16のアドレス入
力IAに供給される。そして、そのアドレスの内容がメ
モリシステム16のインストラクション出力ISOから
シーケンサ17のインストラクション入力IINへ供給
され、実行命令がシーケンサ17へ取り込まれる。
【0043】(2)命令デコードステージ シーケンサ17は取り込んだ命令をデコードし、読み出
しアドレスRA,RBをレジスタファイル11に供給し
て命令の実行に必要なオペランドをレジスタファイル1
1から出力させる。
【0044】(3)実行ステージ 必要なオペランドがレジスタファイル11の出力QA,
QBから出力されたら、シーケンサ17は演算器12、
13及びメモリインターフェイス14のなかから命令の
実行に必要なユニットを決定し、命令の実行を制御す
る。
【0045】例えば、演算器12による演算の命令であ
れば、レジスタファイルからデータQA,QBを読み出
して演算器12に出力すると共に、制御信号CSUを出
力して演算器12に演算を行わせる。
【0046】また、メモリシステム16からのデータの
ロード命令の場合には、メモリインターフェイス14を
制御して出力DAから所望のデータのアドレスを出力し
てメモリシステム16からデータをロードさせる。
【0047】(4)ライトバックステージ 演算器12、13、メモリインターフェイス14で命令
の実行が終了すると、得られた処理結果をレジスタファ
イル11に書き込む。
【0048】また、本形態のプロセッサは、前記資源の
占有状態、データ依存関係の状態に応じて命令を並列に
実行することが可能で、処理結果に違いが生じない限り
実行可能な命令は実行する。
【0049】このようにパイプライン処理を行う本形態
のプロセッサでは、命令の取り込みからデコードまでに
遅延が生じる。従って、分岐命令等では、分岐の正否の
評価・分岐先アドレスの発生に遅延が生じるため、本来
のプログラムフローとは異なった命令がパイプラインに
挿入される場合がある。
【0050】図4は、3つの命令CMDj、CMDj+1、
CMDj+2をパイプライン処理する場合の動作を示すタ
イミングチャートである。尚、本形態のプロセッサで
は、動作クロックCLKの立ち上がりのタイミングで動
作を実行する。
【0051】図4の例では、3つの命令はすべて分岐を
伴わない通常の命令であるため、プログラムカウンタ1
5の制御信号NXTAは各クロックでINC、即ちイン
クリメントを示している。従って、プログラムカウンタ
15の出力PCOはアドレスJから始まって以下、1づ
つ増加している。
【0052】図においては、t2、t3、t4のタイミ
ングで命令CMDj、CMDj+1、CMDj+2が端子II
Nより入力される。そして、命令CMDjはt3でID
レジスタ21に書き込まれ、以下、t4でEXレジスタ
23、t5でWBレジスタに書き込まれる。他の命令も
同様に1クロック毎に次のレジスタに転送される。
【0053】また、図5は、分岐命令を含む3つの命令
を処理する場合の動作を示すタイミングチャートであ
る。
【0054】図5の例では、t1においてプログラムカ
ウンタ15からはPCOとしてアドレスJが出力されて
いる。そして、t2においてアドレスJに記憶されてい
る分岐命令JMPkが読み出されて端子IINより入力
される。次に、t3において、アドレスJ+1に記憶さ
れている命令CMDj+1が読み出されて端子IINより
入力されると共に、命令JMPkがIDレジスタ21に
転送される。そして、パイプライン制御部25は分岐命
令をデコードしてプログラムカウンタ14に分岐先のア
ドレスKを知らせる。
【0055】次に、t4において、分岐命令の分岐先ア
ドレスKより命令CMDkが読み出されて端子IINよ
り入力され、命令CMDj+1がIDレジスタ21に転送
されてデコードされ、更に、命令分岐命令JMPkがE
Xレジスタ23に転送されて実行される。
【0056】以下、各命令に対して1クロック毎に各ス
テージの処理が行われる。
【0057】次に、このようなパイプライン処理を行う
本形態における割り込み動作について説明する。
【0058】本形態では、優先順位を有する複数種類の
割り込み処理を受け付け可能である。そして、同時に複
数の割り込み要求があった場合には、より優先順位の高
い割り込み処理が実行され、残りの割り込み要求は高位
の割り込み処理が終了するまで待たされる。また、現在
実行中の割り込み処理よりも高位の割り込み要求があっ
た場合には、現在実行中の割り込み処理は中断され、そ
の高位の割り込み処理の終了後再開される。
【0059】また、割り込み処理は、優先度により分類
された割り込み毎にあらかじめ分岐先アドレスが設定さ
れており、割り込み処理要求があったときに当該アドレ
スからプログラム中の割り込み復帰命令までのプログラ
ムを実行することで行われる。
【0060】さて、図3においては、端子INT_IN
よりこのような複数種の割り込み処理要求信号REQが
入力され割り込み調停部26に供給される。
【0061】割り込み調停部26は前述のように、同時
に複数種類の割り込み処理要求があった場合には、より
高位の割り込み要求を抽出してVEC_Oに出力する。
また、ある優先順位の割り込み処理が実行されていると
き、現在実行中の割り込み処理と同じ優先順位、あるい
は、低位の割り込み処理要求があった場合には、入力さ
れた割り込み処理を保持しておき、現在実行中の割り込
み処理の終了後、保持している割り込み処理要求のうち
最も優先順位の高い割り込み処理を選択してVEC_O
に出力する。
【0062】また、パイプライン制御部25が、プログ
ラム中の割り込み復帰命令をパイプライン中で検出し、
復帰信号RTPを活性化した場合、現在実行中の割り込
み処理が終了したことを示しており、割り込み調停部2
6は、割り込み処理要求信号REQと、保持している待
ち割り込み処理とを比較して次に優先順位の高い割り込
み処理を選択してVEC_Oに出力する。
【0063】図6は割り込み調停部26の構成を示す図
である。図において、101は割り込み処理要求信号R
EQ(Request)が入力される端子である。
【0064】本形態では、8種類の割り込み処理を設定
し、REQとして8ビットの信号を入力する。つまり、
8種類の割り込み処理を8ビットのそれぞれの桁に対応
させ各桁が各割り込み処理を示すようにしている。そし
て、上位の桁から優先順位の高いものを設定することに
より、優先順位の比較は8ビットのデータの比較を行う
ことで可能になる。
【0065】例えば、「00100000」という8ビ
ットのデータは、3番目の優先順位を有する割り込み処
理を示し、「01000100」という8ビットのデー
タは、2番目と6番目の優先順位を有する割り込み処理
を示している。
【0066】以下に説明する各要素から出力される8ビ
ットのデータも同様の構成である。
【0067】また、前述の通り、本形態では同時に複数
の割り込みを受け付け可能としている。従って、REQ
としては2つ以上の割り込み処理を示す8ビットのデー
タが入力されることがある。
【0068】本形態のVTRでは、記録時において、入
力ビデオ信号中の垂直同期信号が検出された場合や、回
転ヘッドのPGパルスが発生された時点、あるいは入力
音声信号をサンプリングするためのサンプリングパルス
が発生された時点等でREQ8ビットデータの状態が変
化する。
【0069】102は入力された8ビットのREQにお
いて、最上位の割り込み処理のみを選択してREQ_H
(Request_High)として出力する割り当て回路である。ま
た、103はREQにおいて、最上位の割り込み処理以
外の残りの割り込み処理を選択してREQ_R(Request
_Rest)として出力する解除回路である。
【0070】例えば、先程のようにREQとして「01
000100」が入力された場合、REQ_Hとしては
「01000000」が出力され、REQ_Rとしては
「00000100」が出力される。
【0071】次に、104は図に示した各入力データを
後述の制御部119からの制御信号Aに従って選択し、
レジスタ105に記憶するセレクタである。レジスタ1
05は現在プロセッサにおいて発行されている割り込み
処理以外の待ち割り込み処理を示すデータAST(Asser
t)を記憶し、これをセレクタ104、割り当て回路10
6及び解除回路107に供給する。割り当て回路106
及び解除回路107の動作は前述の割り当て回路102
及び解除回路103と同様であり、割り当て回路106
からは待ち割り込み処理中の最上位のものを示すデータ
AST_Hが出力され、解除回路108からは待ち割り
込み処理中最上位のものを除いた残りを示すデータAS
T_Rが出力される。
【0072】また、108は図に示した各入力データを
制御部119からの制御信号Cに従って選択し、レジス
タ109に記憶するセレクタである。レジスタ109は
現在プロセッサにおいて発行されている割り込み処理を
示すデータCUR(Current)を記憶し、これをセレクタ
108、114及び解除回路110に供給する。解除回
路110の動作は前述の解除回路103、107と同様
であり、解除回路110からは発行中の割り込み処理中
最上位のものを除いた残りを示すデータCUR_Rが出
力される。
【0073】また、111は図に示した各入力データを
制御部119からの制御信号Vに従って選択し、レジス
タ112に記憶するセレクタである。レジスタ112は
シーケンサ15に対して割り込み処理の開始における分
岐アドレスを出力させるためのデータVEC_Oを端子
113に供給する。
【0074】114は、AST_HとCUR_Rとを比
較する比較回路、115はAST_HとCURとを比較
する比較回路、116はREQ_HとCURとを比較す
る比較回路である。
【0075】117はリセット信号RSTを入力し、制
御回路119に出力する端子、118はパイプライン制
御部25から供給された割り込み処理終了パルスRTP
を入力し、制御回路119に供給する端子である。
【0076】制御回路119は端子117、118から
の各信号の状態に応じて各比較回路114〜116の結
果を監視し、比較結果に従って各セレクタ104、10
8及び111を制御するための制御信号A,C,Vを出
力する。
【0077】以下、制御部119の動作について説明す
る。制御部119は以下の3つの状態において各比較回
路の比較結果を監視し、各制御信号を出力する。
【0078】(1)リセット信号RSTが入力された場
合 リセット信号RSTは装置の電源ONに伴って発生さ
れ、この場合、制御部119は、各セレクタにデータ
「00000000」を選択させ、待ち割り込み処理、
発行割り込み、割り込み分岐がない状態にする。
【0079】(2)リセット信号が入力されず、割り込
み処理終了信号RTPが入力された場合 (2)−1 RTPはCURで示される発行割り込み処理中、最上位
の割り込み処理が終了した状態を示している。そこで、
制御部119はまず比較回路114の比較結果を監視す
る。ここで、比較回路114はAST_H、即ち待ち割
り込み処理中最上位のものとCUR_R、即ち発行割り
込み処理中、終了した割り込み処理を除いて最も優先順
位の高いものとを比較し、AST_Hの方が大きい場合
には“1”を出力し、逆の場合には“0”を出力する。
【0080】この結果、AST_Hの方が大きい場合に
は現在発行中の割り込み処理よりも優先順位の高い待ち
割り込み処理があるということを表している。
【0081】そこで、レジスタ109にCUR_RとA
ST_Hとの論理和CUR_RorAST_Hを供給する
べくセレクタ108の制御信号Cを出力する。
【0082】また、待ち割り込み処理中AST_Hが実
行されるべくCURに代入されたため、現在の待ち割り
込み処理としては、AST_Rと割り込み要求信号RE
Qとの論理和をとったものとなる。そこで、AST_R
とREQとの論理和AST_RorREQをレジスタ10
5に供給するべくセレクタ104の制御信号Aを出力す
る。
【0083】また、実行していた割り込み処理に変わっ
て、新たにAST_Hで示されていた割り込み処理を開
始するので、プログラム上、この割り込み処理の開始ア
ドレスに分岐しなくてはならない。そこで、レジスタ1
12にAST_Hを供給するべくセレクタ111の制御
信号Vを出力する。この結果、端子113からは新たな
割り込み処理のための分岐命令として、AST_Hが出
力される。
【0084】(2)−2 比較回路114の比較結果により、AST_Hの値がC
URと同じ、または小さい場合には、発行中の割り込み
処理よりも優先順位の高い待ち割り込み処理は存在しな
いことを示している。
【0085】そこで、発行割り込み処理中、終了した割
り込み処理を除いて最も優先順位の高いものを実行する
ためにCUR_Rを選択するべく制御信号Cを出力す
る。
【0086】また、待ち割り込み処理ASTについては
変化がないため、レジスタ105にはASTとREQと
の論理和ASTorREQが供給されるべく制御信号Aを
出力する。
【0087】また、レジスタ112の値は変更しない。
つまり、この状態は、CURに示された低位の割り込み
処理の実行中に更に割り込まれたより高位の割り込み処
理が終了した状態であり、高位の割り込み処理に割り込
まれた低位の割り込み処理についてはプログラムが途中
で中断した状態となっている。
【0088】従って、高位の割り込み処理の終了後、C
URで示された低位の割り込み処理よりも高位の待ち割
り込み処理がない場合には、中断された低位の割り込み
処理が再開される。低位の割り込み処理を中断すると
き、実行していたプログラムにおけるレジスタファイル
11の内容は他のレジスタに待避されており、再開時に
はこの待避していたレジスタの内容に基づいて中断して
いた割り込み処理を実行することができる。
【0089】従って、新たな割り込み分岐命令としての
VEC_Oを変更する必要はない。
【0090】(3)RST、RTPのどちらも入力され
ていない場合 (3)−1 この場合には、制御回路119は、比較回路114では
なく、比較回路115及び116の比較結果に従って制
御信号を出力する。
【0091】まず、制御部119は比較回路115の比
較結果を監視する。ここで、比較回路115は、AST
_Hの値、即ち、待ち割り込み処理中最も優先順位の高
いものとCURの値、即ち現在発行中の割り込み処理と
の比較を行い、AST_Hの方が大きい場合には“1”
を出力し、逆の場合には“0”を出力する。
【0092】この結果、AST_Hの方が大きい場合に
は、現在実行中の割り込み処理よりも優先順位の高い待
ち割り込み処理があることを示している。
【0093】そこで、レジスタ109にCURとAST
_Hとの論理和CURorAST_Hを供給するべくセレ
クタ108の制御信号Cを出力する。
【0094】また、待ち割り込み処理中AST_Hが実
行されるべくCURに代入されたため、現在の待ち割り
込み処理としては、AST_Rと割り込み要求信号RE
Qとの論理和をとったものとなる。そこで、AST_R
とREQとの論理和AST_RorREQをレジスタ10
5に供給するべくセレクタ104の制御信号Aを出力す
る。
【0095】また、実行していた割り込み処理に変わっ
て、新たにAST_Hで示されていた割り込み処理を開
始するので、プログラム上、この割り込み処理の開始ア
ドレスに分岐しなくてはならない。そこで、レジスタ1
12にAST_Hを供給するべくセレクタ111の制御
信号Vを出力する。この結果、端子113からは新たな
割り込み処理のための分岐命令として、AST_Hが出
力される。
【0096】(3)−2 また、比較回路115の比較結果により、AST_Hの
値がCURと同じ、または小さい場合には、現在実行中
の割り込み処理よりも優先順位の高い待ち割り込み処理
は存在しないことを示している。
【0097】この場合には更に、比較回路116の比較
結果を監視する。比較回路116はREQ_Hの値、即
ち、割り込み要求入力中最も優先順位の高いものと、C
UR,即ち現在実行中の割り込み処理とを比較し、RE
Q_Hの方が大きい場合には“1”を出力し、逆の場合
には“0”を出力する。
【0098】この結果、REQ_Hの方が大きい場合に
は、現在実行中の割り込み処理よりも優先順位の高い割
り込み処理要求があることを示している。
【0099】そこで、レジスタ109にCURとREQ
_Hとの論理和CURorREQ_Hを供給するべくセレ
クタ108の制御信号Cを出力する。
【0100】また、待ち割り込み処理を示すASTを記
憶するレジスタ105には、入力REQ信号中、最も優
先順位の高いREQ_Hを除いた残りのものを示すRE
Q_Rと現在の待ち割り込み処理を示すASTとの論理
和ASTorREQ_Rとを供給するべく制御信号Aを出
力する。更に、新たにREQ_Hで示される割り込み処
理の分岐を命令するため、レジスタ112にREQ_H
を供給するべく制御信号Vを出力する。
【0101】また、比較回路116の比較結果により、
CURの値とREQ_Hの値が同じ、もしくはREQ_
Hの方が小さい場合、現在実行中の割り込み処理よりも
優先順位の高い割り込み処理要求がないことを示してい
る。
【0102】そこで、入力された割り込み処理要求RE
Qは待ち割り込みとなり、ASTとREQとの論理和A
STorREQをレジスタ105に供給するべく制御信号
Aを出力する。
【0103】また、このとき、現在実行中の割り込み処
理は変更がないので、セレクタ108によりCURを選
択するべく制御信号Cを出力する。また、レジスタ11
2の値は変更しない。
【0104】本形態においては、割り込み調停部26の
外部より割り込み要求信号が別途供給されない。つま
り、割り込み調停部26は自身で割り込みがあったか否
かを判断しなくてはならない。
【0105】そこで、(3)において、リセット時、及
び割り込み処理の終了時以外のときには常に(実際に
は、調停回路の動作クロック毎に)比較回路115、1
16の出力を監視することにより、現在実行している割
り込み処理よりも優先順位の高い待ち割り込み、あるい
は割り込み処理要求があるか否かを検出し、優先順位の
高い割り込み処理要求に対してすぐさま実行に移れるよ
うにしている。
【0106】以上説明したように、本形態では、複数種
類の割り込み処理をその優先順位に対応した8ビットの
データで表し、これらの8ビットのデータの比較により
割り込み処理の調停動作を制御している。
【0107】従って、非常に簡単に割り込み処理の優先
順位を決定することができる。
【0108】また、割り込み処理要求に対し、迅速に対
応することができる。
【0109】次に、割り込み発行部27について説明す
る。
【0110】割り込み調停部26から出力されたVEC
_Oが供給されると、割り込み発行制御部27はパイプ
ライン制御部25から出力された信号PSM_Oによる
パイプライン制御部25の状態に応じてNXTAからプ
ログラムカウンタ15にパイプライン制御部25から供
給された割り込み分岐アドレスの出力を指示すると共
に、セレクタ22の制御信号TRP_EXを出力する。
【0111】TRP_EXはセレクタ22に供給されて
おり、TRP_EXが活性化された場合には割り込み処
理に伴うデータの待避命令TRPが選択されてEXレジ
スタ23に供給される。
【0112】次に、このような割り込み発行部27の動
作について図7、8のタイミングチャートを用いて説明
する。
【0113】図7は割り込み要求があったとき、パイプ
ライン処理中の命令が分岐命令でなかった時の動作を示
す図である。
【0114】前述の図4の場合と同様に、アドレスJか
ら命令CMDjが読み出され、t3においてデコードさ
れる。このとき、即ちt3において、割り込み調停部2
5から割り込み信号VEC_Oが供給されると、割り込
み発行部27はプログラムカウンタ14に対してNXT
Aより割り込み分岐先のアドレスの出力を指示する。そ
して、次のクロックt4においてはセレクタ制御信号T
RP_EXを出力する。これにより、t5において次に
実行されるべき命令CMDj+1に関するデータの待避動
作TRPが実行され、次のクロックt6においては、割
り込み分岐先のアドレスVn+1に記憶されていた命令C
MDVnが実行される。
【0115】このように、割り込み発行部27は、パイ
プライン制御部25より供給されているPSM_Oに基
づき、割り込み信号VEC_Oが供給されたときにID
ステージにてデコードされている命令の内容を検出す
る。そして、その内容が分岐命令以外の場合には直ちに
分岐先アドレスの出力を指示すると共に、2クロック後
に割り込みに伴うデータの待避を指示する。
【0116】これにより、割り込み直前の命令CMD
j、TRP命令、割り込み分岐先のアドレス命令CMDV
nを空きサイクル無しに最小レイテンシで実行すること
ができる。
【0117】次に、割り込み信号VEC_Oが入力され
た時にIDステージでデコードされた命令が分岐命令の
時の動作を説明する。
【0118】図8において、図5の場合と同様に、アド
レスJから分岐命令JMPkが読み出され、t3におい
てデコードされる。そして、図7と同様t3において割
り込み信号VEC_Oが供給される。このとき、割り込
み発行部27は、IDステージでデコードされた命令が
分岐命令であるため、図7の場合のように次のクロック
で制御信号TRP_EXを出力せず1クロック遅延させ
てクロックt5において発生する。
【0119】この結果、クロックt6において、分岐先
命令CMDkに関するデータの待避動作TRPを確実に
実行することができる。
【0120】ここで、もし、図7の場合と同様に割り込
み信号を受けた後次のクロックで制御信号TRP_EX
を発行してしまうと、待避命令TRPをt5で実行する
ことになる。
【0121】この結果、命令CMDj+1に対するデータ
の待避が行われることになり、分岐先の命令CMDkに
ついてのデータの待避が行われなくなってしまう。
【0122】従って、割り込み処理の終了後に分岐先の
アドレスが生成されず、割り込み処理からの復帰時、本
来のプログラムフローとは異なったアドレスに分岐して
しまう。即ち、図8の例でいえば、割り込み復帰後は分
岐先命令CMDkから実行されなければならないはず
が、命令CMDj+1から実行されてしまうことになる。
【0123】本形態では、このように、割り込み信号の
発行時におけるIDステージの状態にしたがって、待避
命令の発行タイミングを遅らせているため、分岐先のア
ドレスの命令についてのデータ待避動作を確実に実行す
ることができ、割り込み処理の復帰後割り込み前のアド
レスから正確に処理を行うことができる。
【0124】また、本形態では、割り込み信号の入力時
においてIDステージでデコードされている命令が分岐
命令であるか否かにより制御信号TRP_EXの発行タ
イミングを制御したが、これは分岐命令に限るものでは
ない。
【0125】即ち、前述の形態では、各命令は4クロッ
クで終了するものとして説明したが、実際には数〜数十
クロックかかる命令もあり、その場合には、割り込み発
行部27はパイプライン制御部25からの信号PSM_
Oに従って、パイプライン制御部25の状態を検出し、
制御信号TRP_EXの出力タイミングを制御すればよ
い。
【0126】また、本形態では、本発明をデジタルVT
Rにおけるプロセッサに対して適用したが、これ以外に
も、割り込み機能を有するプロセッサを備える装置に対
して本発明を適用可能であり、同様の効果を有する。
【0127】
【発明の効果】以上説明したように、本発明によれば、
割り込み処理要求信号と複数の命令の処理状態とに応じ
て割り込み処理の開始タイミングを制御しているので、
パイプライン処理を行う場合であっても、割り込み処理
の開始までにデータを確実に待避させることができ、割
り込み処理の終了後、割り込み開始直前の命令に確実に
復帰することができる。
【図面の簡単な説明】
【図1】本発明の実施形態としてのデジタルVTRの構
成を示す図である。
【図2】図1におけるコントローラ中に含まれるプロセ
ッサの構成例を示す図である。
【図3】図2におけるシーケンサの構成を示す図であ
る。
【図4】図3の回路の動作を説明するためのタイミング
チャートである。
【図5】図3の回路の動作を説明するためのタイミング
チャートである。
【図6】図3における割り込み調停部の構成を示す図で
ある。
【図7】図3の回路の動作を説明するためのタイミング
チャートである。
【図8】図3の回路の動作を説明するためのタイミング
チャートである。
【符号の説明】
1 コントローラ 14 アドレスカウンタ 15 シーケンサ

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 プログラムを構成する複数の命令をそれ
    ぞれ複数のステージに分割し、近傍にある複数の命令の
    互いに異なる前記複数のステージを同時に処理可能なプ
    ロセッサであって、 割り込み処理要求信号を入力する入力手段と、 前記入力手段により入力された割り込み処理要求信号と
    前記複数の命令の処理状態とに応じて前記割り込み処理
    の開示タイミングを制御する制御手段とを備えるプロセ
    ッサ。
  2. 【請求項2】 前記入力手段は複数種類の前記割り込み
    処理要求信号を入力することを特徴とする請求項1に記
    載のプロセッサ。
  3. 【請求項3】 演算回路と、レジスタファイルと、プロ
    グラムカウンタと、前記プログラムを記憶したメモリ
    と、前記複数の命令の互いに異なる前記複数のステージ
    を同時に処理可能に前記演算回路、レジスタファイル及
    びプログラムカウンタを制御する手段を備えたことを特
    徴とする請求項1に記載のプロセッサ。
  4. 【請求項4】 前記複数のステージは、命令取り込みス
    テージ、命令デコードステージ、命令実行ステージ及び
    ライトバックステージを含むことを特徴とする請求項1
    に記載のプロセッサ。
  5. 【請求項5】 前記制御手段は、前記割り込み処理要求
    信号入力時の前記デコードステージの処理状態に応じて
    前記割り込み処理の開始タイミングを制御することを特
    徴とする請求項4に記載のプロセッサ。
  6. 【請求項6】 パイプライン処理可能なプロセッサであ
    って、割り込み処理要求があった際の前記パイプライン
    処理の状態にしたがって前記割り込み処理の開始タイミ
    ングを制御することを特徴とするプロセッサ。
JP8824897A 1997-04-07 1997-04-07 プロセッサ Withdrawn JPH10283186A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8824897A JPH10283186A (ja) 1997-04-07 1997-04-07 プロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8824897A JPH10283186A (ja) 1997-04-07 1997-04-07 プロセッサ

Publications (1)

Publication Number Publication Date
JPH10283186A true JPH10283186A (ja) 1998-10-23

Family

ID=13937562

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8824897A Withdrawn JPH10283186A (ja) 1997-04-07 1997-04-07 プロセッサ

Country Status (1)

Country Link
JP (1) JPH10283186A (ja)

Similar Documents

Publication Publication Date Title
KR100733943B1 (ko) 프로세서 시스템, dma 제어 회로, dma 제어 방법,dma 제어기의 제어 방법, 화상 처리 방법, 및 화상처리 회로
US7194610B2 (en) Processor and pipeline reconfiguration control method
JP3984786B2 (ja) 異なる待ち時間を伴う命令のスケジューリング
JP2748822B2 (ja) 情報処理装置
US6167529A (en) Instruction dependent clock scheme
JP2002163127A (ja) トレース制御回路
US5499348A (en) Digital processor capable of concurrently executing external memory access and internal instructions
JP2007058331A (ja) プロセッサシステム及びマルチスレッドプロセッサ
JPH10283186A (ja) プロセッサ
JP2918019B2 (ja) シングルチップマイクロプロセッサのテスト回路
US20100049944A1 (en) Processor integrated circuit and product development method using the processing integrated circuit
JP4006065B2 (ja) プロセッサ
JPH08249267A (ja) Dmaコントローラ
JP2904172B2 (ja) 論理回路シミュレータ
JP2906792B2 (ja) ディジタルプロセッサ及びその制御方法
JP3996982B2 (ja) プロセッサ
JPH10283197A (ja) プロセッサ及び割り込み調停方法
TW201826114A (zh) 半導體裝置的處理器與其操作方法
JP2758624B2 (ja) マイクロプログラムの調速方式
JP2968749B2 (ja) マイクロプログラム調速制御回路
JP3814548B2 (ja) 情報処理制御装置
JP4151497B2 (ja) パイプライン処理装置
JPH1165887A (ja) プロセッサ
JP3134811B2 (ja) データ処理装置
JPH1055289A (ja) デバッグ情報生成回路、およびそれを用いた情報処理装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20040706