JP4758538B2 - データ処理装置および制御方法 - Google Patents

データ処理装置および制御方法 Download PDF

Info

Publication number
JP4758538B2
JP4758538B2 JP2000259818A JP2000259818A JP4758538B2 JP 4758538 B2 JP4758538 B2 JP 4758538B2 JP 2000259818 A JP2000259818 A JP 2000259818A JP 2000259818 A JP2000259818 A JP 2000259818A JP 4758538 B2 JP4758538 B2 JP 4758538B2
Authority
JP
Japan
Prior art keywords
processing unit
dedicated
unit
transition destination
destination address
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
JP2000259818A
Other languages
English (en)
Other versions
JP2002073351A (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.)
GAIA SYSTEM SOLUTIONS Inc
Original Assignee
GAIA SYSTEM SOLUTIONS 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 GAIA SYSTEM SOLUTIONS Inc filed Critical GAIA SYSTEM SOLUTIONS Inc
Priority to JP2000259818A priority Critical patent/JP4758538B2/ja
Publication of JP2002073351A publication Critical patent/JP2002073351A/ja
Application granted granted Critical
Publication of JP4758538B2 publication Critical patent/JP4758538B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、マイクロプロセッサやその機能を補完する周辺回路に関し、特に、割込み処理を実行可能なデータ処理ユニットおよびその制御方法に関するものである。
【0002】
【従来の技術】
高速ネットワークに関連する処理や、動画に代表される画像処理等に使用されるプロセッサは非常に高いクロック周波数で動作できるようになっており、特定のデータ処理をリアルタイムで実行する能力が備わってきている。一方、半導体テクノロジは3年で集積度を2倍にアップさせるといった速度で技術が向上しており、シリコンチップに搭載できる回路規模も数千万ゲートになりつつある。
【0003】
【発明が解決しようとする課題】
このため、システム全体がワンチップに搭載されたシステムLSIの開発が盛んに行われており、例えば、画像処理、符号化・復号化などにおける特定のデータ処理を行うプロセッサ(専用データ処理ユニット)と、外部要求に応じた割込要求などを含めた汎用的な処理を行うプロセッサ(データ処理ユニット)をワンチップに搭載したシステムLSIが考えられている。このシステムLSIでは、システム全体の制御はソフトウェアにより行われるが、そのソフトウェアの走行環境は汎用プロセッサ、すなわち、データ処理ユニットによって提供される。したがって、専用データ処理ユニットの動作も含めてソフトウェアで制御することが可能であり、フレキシブルなシステムを構築できるシステムLSIを提供できる。また、実績のある専用データ処理ユニットでは処理が難しい部分は、汎用データ処理ユニットを用いてフレキシブルに対応することが可能であり、実績のある専用データ処理ユニットと汎用データ処理ユニットとを元に開発および設計を進めることができるので、短時間で性能が高く、信頼性の高いシステムLSIを提供できるというメリットもある。
【0004】
従来のシステムでは、汎用的なプロセッサが単体チップとしてプリント基板などのボード上に搭載され、ボード全体として一つのシステムが構成されている。このような経緯から、従来のプロセッサの機能の延長でシステム全体がワンチップに収納されたデータ処理装置を設計し、従来の汎用プロセッサを単純にシステムLSIに組み込むだけでは、システムLSIの機能を十分に活かしているとはいえない。すなわち、ボードに汎用的なプロセッサを搭載するときには、ボードのプリント配線を介して、ボード上に専用処理用に開発されたチップあるいは専用回路として搭載されている各機能ブロックと汎用プロセッサとを繋ぐ必要があるので、ピン数制限、プリント回路の密度などによりプロセッサに接続できる機能ブロックの数にはおのずと限界がある。これに対し、ワンチップに汎用プロセッサに加えて、各機能ブロックとしての機能を果たす回路を搭載してシステムインテグレーションを図ったシステムLSIにおいては、チップ、すなわち、半導体装置内で機能ブロックと汎用プロセッサとを接続できるのでプリント配線と比較すると遥かに多くの信号線を確保できる。したがって、より多くの機能ブロックをワンチップ上で汎用プロセッサに接続することにより多機能で処理速度の速いシステムLSIを提供することができる。
【0005】
このような高性能のシステムLSIを実際に実現しようにすると、各機能ブロックから割込み処理の要求が汎用プロセッサに多数入り込んでくることになる。したがって、それらの割込み要求に対し柔軟かつ高速に対処できなければ、機能ブロックを同一のチップ内に収納して集積化した効果はそれほどなく、システムLSIの高速化を図ることは難しい。特に、高速ネットワークのデータ処理や動画データの処理を行う専用データ処理ユニットではリアルタイムのデータ処理が行われるので、このような専用データ処理ユニットをシステムLSIに集積化するために同一のチップに搭載された汎用プロセッサ側にはより頻繁に割込み要求が入ってくることになる。このため、システムLSI化して専用データ処理ユニット側と汎用プロセッサとの融合を図り、高速処理が可能なシステムLSIを実現する際に、専用データ処理ユニットを用いたリアルタイム応答性を損ねないためには、これらのユニットからの割込み要求を最小限のクロック数で迅速に処理できることが要求される。
【0006】
しかしながら、プロセッサにおける割込み処理は、割込みレベルに応じたアドレスに遷移先アドレスを格納させておき、割込み要求があるとその予め設定された遷移先アドレスから命令をフェッチして割込み処理を実行する方法が採用されている。たとえば、コードRAMのゼロ番地から7番地までに、割込み要求のレベル0〜7に応じた遷移先アドレスがそれぞれ予め格納される。この方法では、遷移先アドレスを変更しようとする場合には、事前にコードRAMの内容を書き換えておく必要がある。したがって、専用データ処理ユニットなどの他の処理ユニットから様々な割込み要求があったとき、あるいは、複数の他の処理ユニットから異なる割込み要求があったときに予め設定されている遷移先アドレスでは対応できない。また、それらの割込み要求に対応するためにコードRAMを書き換えるなどの処理を行おうとすると、それらの割込み要求に対応するために膨大なクロックを消費することになる。したがって、他の処理ユニットからの割込み要求に応じて柔軟に遷移先を変更することは不可能であり、他の処理ユニットと同一チップ内に収納されることにより集積化されデータの転送処理などは高速化できるが、リアルタイム性が要求される専用データ処理ユニットをワンチップにインテグレートしてクロック単位で処理を進行できる信頼性の高いシステムLSIを提供することができなかった。
【0007】
汎用プロセッサのハードウェアを専用処理ユニットなどの同一チップ内に搭載される他の処理ユニットの構成に合わせて設計変更することにより、割込み要求に対する処理を少ないクロックで実行できるようにすることも可能であろう。しかしながら、それでは、システムLSI毎にプロセッサも設計しなおすことになり実績のある汎用プロセッサを用いるメリットがなくなってしまい、すべてがカスタムのシステムLSIを設計するのと同じになってしまう。したがって、システムLSIの開発期間が長くなり、コストが上昇する要因となり、実績のある専用データ処理ユニットと汎用データ処理ユニットとを組み合わせ短期間に性能の良いシステムLSIを提供することが難しくなる。
【0008】
そこで、本発明においては、汎用性の高い汎用処理が可能なデータ処理ユニットであって、さらに、同一チップ上に搭載される専用データ処理ユニットなどの他の処理ユニットからの多彩な割込み要求に対しても柔軟に、最小限のクロックで対処することができるデータ処理ユニットおよびそれを搭載したシステムLSIであるデータ処理装置を提供することを目的としている。特に、動画処理やネットワーク処理などのリアルタイムのデータ処理が要求されるシステムLSIにおいて、汎用プロセッサと機能ブロックとなる他の処理ユニット間の遷移および割込み制御をより柔軟にクロック単位で制御することができるデータ処理ユニットおよびデータ処理装置を提供することを目的としている。
【0009】
そして、汎用のデータ処理ユニットと、専用命令に基づくデータ処理を実行可能な専用データ処理ユニットとを搭載したシステムLSIにおいて、リアルタイム処理性能の高いシステムLSIとして提供することも本発明の目的である。
【0010】
【課題を解決するための手段】
このため、本発明においては、汎用的なプロセッサであるデータ処理ユニットに、データ処理ユニットと同一チップに搭載された他の処理ユニットから遷移先アドレスを設定できる第2の記憶手段を設け、遷移先アドレスを直に設定できるようにすると共に、その遷移先アドレスを他の処理ユニットからの第2の割込み信号により選択できるようにしている。この結果、他の処理ユニットからの割込み要求に基づく遷移先アドレスをフレキシブルに設定することが可能となり、その遷移先アドレスを従来の予め設定されている遷移先アドレスと同様にクロック単位で選択して遷移先アドレスからの処理を実行することができる。
【0011】
すなわち、本発明の一態様は、コードRAMから命令をフェッチするフェッチユニットであって割込み信号を受け付けるフェッチユニットと、演算ユニットを含み汎用処理を行う実行ユニットとを含む汎用処理ユニットが、前記汎用処理ユニットと同一チップ内に搭載された他の処理ユニットであって、特定のデータ処理に特化した専用回路を備えた専用処理ユニットとを有するデータ処理装置である。前記コードRAMには、前記実行ユニットで実行される汎用命令および前記専用処理ユニットで実行される専用命令を含むプログラムが格納されており、前記フェッチユニットは、前記コードRAMの指定された命令フェッチ用のアドレスから順番にフェッチし、フェッチした前記専用命令は前記専用処理ユニットに供給する。さらに、前記フェッチユニットは、前記汎用処理ユニットの外部から供給される通常の割込み信号である第1の割込み信号により遷移する前記命令フェッチ用のアドレスである第1の遷移先アドレスが格納された第1のレジスタと、前記専用処理ユニットから供給される第2の割込み信号により遷移する前記命令フェッチ用のアドレスである第2の遷移先アドレスが格納された第2のレジスタであって、前記専用処理ユニットと同一チップ内のバスにより接続された第2のレジスタと、第1および第2の割込み信号に基づき第1のレジスタに格納された第1の遷移先アドレスおよび第2のレジスタに格納された第2の遷移先アドレスを選択して出力する出力手段とを含む。専用処理ユニットは、第2のレジスタの第2の遷移先アドレスを、バスを介して、第2の割込み信号の出力に対し予め変更しておく機能と、前記第2の割込み信号を出力し前記第2の遷移先アドレスの前記専用命令を取得する機能とを含む。また、本発明のデータ処理装置の制御方法は、フェッチユニットが外部から第1の割込み信号を受信すると第1のレジスタに設定された第1の遷移先アドレスを出力して第1の割込み処理を実行する工程と、専用処理ユニットが、第2のレジスタの第2の遷移先アドレスを、バスを介して、第2の割込み信号の出力に対し予め変更し、フェッチユニット専用処理ユニットから第2の割込み信号を受信すると第2のレジスタから第2の遷移先アドレスを出力して第2の割込み処理を実行し、第2の遷移先アドレスの専用命令を専用処理ユニットに供給する工程とを有することを特徴としている。
【0012】
本発明のデータ処理装置およびその制御方法では、データ処理ユニットの外部から供給される第1の割込み信号により遷移する第1の遷移先アドレスが格納された第1の記憶手段に加え、データ処理ユニットと共に同一チップに搭載される他の処理ユニットから供給される第2の割込み信号により遷移する第2の遷移先アドレスが格納される第2の記憶手段とを備えている。そして、レジスタなどにより構成される第2の記憶手段の第2の遷移先アドレスは、専用データ処理ユニットなどの他の処理ユニットから設定可能にしてある。したがって、他の処理ユニットからの第2の割込み信号に対応して遷移するアドレスは、他の処理ユニットからダイレクトに設定することができ、第2の割込み信号により、その遷移先アドレスからの処理を実行することができる。このため、第1の記憶手段に格納された第1の遷移先アドレスを変更することなく、他の処理ユニットからの割込み要求に柔軟に対処できる。
【0013】
また、他の処理ユニットからの様々な割込み要求に対処するために、第1の記憶手段に記憶された第1の遷移先アドレスを変更するようなソフトウェア処理は不要であり、また、その様な処理ができるハードウェアも不要である。したがって、汎用プロセッサとして汎用的に用いられる割込み機能あるいはシステムに変更を加えずに、他の処理ユニットからの割込み信号に対し、外部からの従来の割込み信号と同じレベルで、同様の処理速度で、他の処理ユニットで指定された遷移先アドレスからの処理をフレキシブルに実行できる。
【0014】
さらに、第2の記憶手段の遷移先アドレスは他の処理ユニットから設定することができるので、汎用のデータ処理ユニットの構成あるいはシステムを変更しなくても、それと共に搭載される他の処理ユニットにより、その他の処理ユニットが要求する割込み処理の内容をフレキシブルに遷移先アドレスとして変更あるいは設定することができる。また、他の処理ユニットは、同一チップ内に搭載されているために、プリント基板などに搭載されている場合と異なり、第2の記憶手段を構成するレジスタなどの記録媒体と他の処理ユニットとをバスなどの高速なデータ回線を介して簡単に接続することができる。したがって、第2の記憶手段の遷移先アドレスを変更あるいは設定する処理もクロック単位で行うことができ、第2の割込み信号を出力するタイミングと合わせてクロック単位で遷移先を制御することができる。
【0015】
第1および第2の割込み信号に基づき第1および第2の遷移先アドレスを選択して出力可能な出力手段においては、外部からの割込み信号(第1の割込み信号)と、他の処理ユニットからの割込み信号(第2の割込み信号)のいずれを優先するようにしても良い。しかしながら、他の処理ユニットが、システムLSIとして要求される特定のデータ処理を行う専用データ処理ユニットであることがほとんどとなるので、これら他の処理ユニットからの割込み信号を優先して選択し、それらの他の処理ユニットが要求する遷移先アドレスからの処理を優先して実行できるようにすることが望ましい。
【0016】
同一チップに複数の他の処理ユニットを搭載しているデータ処理装置においては、複数の第2の記憶手段を有する汎用のデータ処理ユニットを提供することも可能であるが、汎用性が少なくなるとともに構成が複雑になるのでコストアップの要因である。これに対し、それら複数の他の処理ユニットから供給される第2の割込み信号および第2の記憶手段に設定される第2の遷移先アドレスを選択してデータ処理ユニットに供給する割込み選択手段を設けることにより、第2の記憶手段をそれぞれの他の処理ユニットに対応させなくても、それらの割込み要求に対して柔軟に対応することができる。したがって、複数の専用データ処理ユニットなどの他の処理ユニットと共に汎用性の高いデータ処理ユニットにより、それらの他の処理ユニットの要求に対し柔軟に、リアルタイムで応答できるデータ処理装置を提供できる。
【0017】
このように、本発明にかかるデータ処理ユニットと他のデータ処理ユニットとを搭載したシステムLSIにおいては、データ処理ユニットの汎用性を維持したまま、他の処理ユニットからの割込み要求に対し柔軟かつ高速に対処することが可能であり、リアルタイムのデータ処理に適したシステムLSIを提供することができる。このため、他の処理ユニットとして、特に、高速ネットワークのデータ処理や動画データの処理を行う専用データ処理ユニットを搭載したリアルタイムのデータ処理に適したデータ処理装置、すなわち、システムLSIを提供することができる。
【0018】
そして、本発明のデータ処理ユニットは汎用性を維持したまま、他の処理ユニットからの割込み要求に対し柔軟にリアルタイムに高速に対処できるので、本発明のデータ処理ユニットと専用データ処理ユニットとを組み合わせることにより、設計および開発時間を大幅に短縮することが可能であり、短期間で高性能のシステムLSIを開発でき、低コストで提供することができる。
【0019】
データ処理ユニットに、他の処理ユニットに命令を供給可能なフェッチユニットを設けたデータ処理装置においては、さらに、他の処理ユニットが指定する遷移先アドレスからプログラムにより自由に設定できる。したがって、ハードウェアを変更せずに、他の処理ユニットからの割込み要求に対する処理内容をフレキシブルに変更あるいは修正することが可能であり、遷移先アドレスが柔軟に設定できるメリットと合わせて、非常に柔軟性が高く、さらに、開発が容易なデータ処理ユニットを提供することができる。そして、割込み要求に対する遷移先を柔軟に設定して、その処理をリアルタイムで制御することができるので、ネットワーク処理や動画処理などのリアルタイム性が要求される用途にまさに適したデータ処理装置を実際に提供することが可能となる。
【0020】
【発明の実施の形態】
以下に図面を参照して本発明の実施の形態を説明する。図1に、本発明に係るデータ処理ユニット(以降では、PU)2と、所定のデータ処理に特化した専用データ処理ユニット(他の処理ユニットまたは専用回路、以降ではVU)3とを有するデータ処理装置であるシステムLSI1の概略構成を示してある。本例のPU2は、割込み処理や基本命令などの汎用的な処理を実行する実行部5と、VU3および実行部5にデコードされた制御信号を提供する命令発行部6を備えている。命令発行部6は、実行形式のマイクロプログラムコード(命令)を内蔵したコードRAM7と、このコードRAM7から命令をフェッチするフェッチユニット4とを備えている。
【0021】
フェッチユニット4では、命令の実行状態、ステータスレジスタ9の状態さらにはシステムLSI1の外部割込み用のインターフェース11を介して入力された割込み信号φ1などによって決まる所定のコードRAM7のアドレスを順次発行し、そのアドレスに記憶された命令をフェッチするフェッチ部12を備えている。本例のコードRAM7には、PU2の実行部5で実行される汎用命令(一般命令)と、VU3で実行される専用命令とを備えたプログラムが格納されており、フェッチされた専用命令あるいは汎用命令はフェッチユニット4のデコード回路13によりデコードされ、専用命令をデコードした制御信号φvあるいは汎用命令をデコードした制御信号φpとしてVU3およびPU2に供給される。また、PU2からは実行状態を示すステータス信号φsが返され、PU2およびVU3の状態がステートレジスタ9に反映されるようになっている。PU2の実行部5は、汎用レジスタ、フラグレジスタおよび演算ユニット(ALU)などから構成される実行ユニット14と、この実行ユニット14で処理を行う際の一時的な記憶領域となるデータRAM15とを備えている。
【0022】
一方、VU3は命令発行部6が供給する制御信号φvによって特定のアプリケーションに特化した処理、例えば、高速ネットワーク関連のデータ処理や動画データの伸張/復号処理等をリアルタイムで行うことが可能な専用回路を備えた専用処理ユニットである。このVU3の内部状態やVU3でのデータ処理結果等はPU2の側で把握できるようになっており、PU2では把握した情報を利用した処理が行える。
【0023】
図2には、本例のLSI1に搭載されたPU2の概略の機能構成をフェッチユニット4を中心に示してある。本例のPU2のフェッチユニット4は、システムLSI1のインターフェース11を介して入力された、例えば、8ビットの割込み要求信号(第1の割込み信号)φ1、およびVU3から出力された割込み要求信号(第2の割込み信号)φ2が入力され、それらの割込み要求信号φ1およびφ2に基づいて遷移先アドレスを選択して出力する出力部20を備えている。本例のフェッチユニット4は、この出力部20により選択される2つの遷移先アドレスを格納した記憶手段であるレジスタ17および18を備えている。第1のレジスタ17は、汎用レジスタであり、たとえば、16ビットの遷移先アドレスA1〜A8が予め格納されており、割込み要求信号φ1に基づき遷移するアドレスが格納されている。第2のレジスタ18は、外部指定用レジスタであり、たとえば、16ビットの遷移先アドレスB1が格納され、割込み要求信号φ2により遷移するアドレスが格納されている。
【0024】
このため、本例の出力部20は、汎用レジスタ17および外部指定用レジスタ18のいずれかを選択して、それらに格納された遷移先アドレスを次の命令フェッチ用のアドレスとして出力可能なセレクタ21と、このセレクタ21を、割込み要求信号φ1が送られてきたときには汎用レジスタ17の遷移先アドレスを出力し、割込み要求信号φ2が送られてきたときには外部指定用レジスタ18の遷移先アドレスが出力される制御する制御信号φ5を出力するプライオリタイズ判定回路22を備えている。このプライオリタイズ判定回路22は、VU3からの割込み要求信号φ2を外部からの割込み要求信号φ1に対し優先するように設定されており、割込み要求信号φ1およびφ2が重なると、セレクタ21からは外部指定用レジスタ18に設定された遷移先アドレスB1が優先的に出力され、その遷移先アドレスの命令に従った処理が優先して行われる。
【0025】
汎用レジスタ17に格納されている遷移先アドレスA1〜A8は、それぞれ、コードRAM7に格納された割込み処理用のマイクロプログラムの開始アドレスを示す遷移先アドレスである。そして、これらの遷移先アドレスA1〜A8は、初期設定などにより予め設定されており、割込み要求信号φ1のレベルによって選択できるようになっている。本例のレベルアサイン型の割込み要求信号φ1は8レイヤであり、各レイヤに応じて遷移先アドレスA1〜A8が選択される。外部指定用レジスタ18に格納されている遷移先アドレスB1もコードRAM7に格納された割込み処理用のマイクロプログラムの開始アドレスを示す遷移先アドレスである。そして、この外部指定用レジスタ18は、バス19によりVU3からダイレクトに遷移先アドレスB1が書き込めるようになっている。このため、VU3は、外部指定用レジスタ18に予め所望の遷移先アドレスB1を設定し、割込み要求信号φ2を出力することにより、汎用のデータ処理ユニットであるPU2を用いて所望の割り込み処理を自由に開始させることができる。
【0026】
本例のコードRAM7には、VU3の処理を進めるための専用命令VおよびPU2で行う処理を規定する汎用命令Pを備えたマイクロプログラムが格納されており、フェッチユニット12から順次出力されるアドレスによってそれらの専用命令Vおよび汎用命令Pがフェッチされる。そして、フェッチされた命令はデコード回路13でデコードされ、それぞれPU2の実行部5およびVU3に供給される。このような専用命令Vおよび汎用命令Pを備えたマイクロプログラムに加えて、本例のコードRAM7には、割込み処理用のマイクロプログラムも格納されており、上述したように、割込み要求信号φ1あるいはφ2に基づき、汎用レジスタ17に格納された遷移先アドレスA1〜A7、あるいは外部指定用レジスタ18に格納された遷移先アドレスB1が出力されると、その遷移先アドレスの命令をフェッチして、指定された処理が実行される。
【0027】
図3には本例のシステムLSI1で行われる割込み処理の一例をフローチャートを用いて示してある。まず、ステップ31において、割込み要求があると、ステップ32でその割込み要求がVU3からの割込み要求信号φ2か判断される。VU3から割込み要求信号φ2であれば、ステップ33で、予めVU3から外部指定用レジスタ18に設定された遷移先アドレスB1が出力される。その結果、遷移先アドレスB1に記憶されているマイクロプログラムが読み出されて実行される。
【0028】
これに対して、VU3からではない外部からの割込み、たとえば、システムLSI1の外部のIO回路、AD/DAコンバータ、他のCPU、DSPプロセッサ、ASIC回路など、さらにはシステムLSIに内蔵されたIO回路などからの通常の従来型のレベル割込みである割込み要求信号φ1に基づく割込み要求である場合には、ステップ32で判断された後に、ステップ34でVU3からの割込み要求φ2に基づく処理が行われているかの判断が行われる。このステップ34において、割込み処理が重ならない場合は、ステップ35で割込み要求信号φ1のレイヤに応じて汎用レジスタ17にセットされている遷移先アドレスA1〜A8のいずれかが選択され、その遷移先アドレスからの処理が実行される。VU3からの割込み要求に基づく処理が実行されていれば、本例のシステムLSIにおいてはVU3からの割込み要求信号φ2を優先するので、ステップ36において、通常の割込み要求信号φ1をマスクし、あるいはその要求信号φ1に対する処理を待機された状態にする。
【0029】
このように、本例のシステムLSI1においては、VU3からの割込み要求信号φ2があると、その割込み要求信号φ2は、従来のレベルアサイン型の割込み要求信号φ1と同様に処理され、通常の割込み要求信号φ1と同じ速度、すなわち、クロック数で割込み要求信号φ2に対応する遷移先アドレスB1を出力することができる。そして、遷移先アドレスB1は、VU3からバス19を介して直に設定されるので、VU3の条件あるいは割込み要求が発生したときの状況などに応じ、VU自身が、PU2の処理を介さずに遷移先を設定できる。したがって、VU3の状況に応じて割込みが発生したときの遷移先を変更できる。このため、VU3の割込み要求に対してPU2は非常にフレキシブルに対応することができ、また、通常の割込みと同じレベルあるいは同じ処理速度でリアルタイム性を喪失せずにVU3の割込み処理を実行することができる。
【0030】
また、VU3の遷移先はVU自身が設定できる構成となっているので、本例のPU2と、他の専用処理機能を備えたVUとを組み合わせたシステムLSIにおいても、PU2の機能あるいは構成を変更あるいは修正しないで、他の専用処理機能を備えたVUに即した割込み処理を行うことができる。そして、そのような割込み処理はマイクロプログラムとしてコードRAM7に格納することができるので、本例のVU3およびPU2に共通のフェッチユニット4を備えたシステムLSI(VUPU)の構成は、VU3の割込み要求による遷移先アドレスがフレキシブルに設定できると共に、その割込み要求による処理内容もマイクロプログラムで設定できる。したがって、専用データ処理に特化した専用データ処理ユニットの専用回路で処理を実行するシステムLSIでありながら、割込み処理を非常に柔軟に、さらに,リアルタイムにクロック単位で実行することができる。
【0031】
また、本例のVUおよびPUを搭載したシステムLSIは、VU3あるいはPU2の基本的なハードウェアおよび機能を変更しないで、様々な機能を備えたVUを集積化してPUでそれらを制御することができるので、システムLSIの開発期間を大幅に短縮することが可能である。そして、プログラムと遷移先アドレスの修正によって、開発途上あるいはその後の変更および修正には非常に柔軟に対処することができるので、アプリケーションと相性が良く開発のリスクの小さな高性能のシステムLSIを提供することができる。
【0032】
VU3は、特殊な加減算や乗除算などを行うデータパス部(専用回路)を備えた専用データ処理ユニットであり、1つのPU2に複数のVU3を装着して並列演算を行わせることも可能である。図4に示すように、複数のVU(n)(nは整数)が搭載されたシステムLSI1の場合、各VU(n)からの割込み要求信号φ2および遷移先アドレスB1を選択的にPU2に入力させるため割込み選択回路25を設けることが望ましい。この選択回路25により、複数のVUから出力される割込み要求信号φ2と遷移先アドレスB1をひとつに集約できるので、PU2に複数の外部指定用レジスタ18を設け、セレクタ21をマルチセレクタにしなくても複数のVUからの割込み要求に対応することができる。複数の外部指定用レジスタを設けることも可能であるが、同一のチップに搭載されるVUの数は決定できず、また、レジスタの数を増やすとそれに対応して書き換え用のバスを増やしたりなどハードウェアコストが増加するので経済的でない。これに対し、割込み選択回路25を設けると、VUの数に影響されずに上記にて説明したPU2を搭載し、VUからの割込み要求信号φ2にリアルタイムで対処することができる。割込み選択回路25では、VU(n)毎に処理の優先順位を設定しておくことも可能であり、また、VU(n)から割込み要求が発生した順に随時PU2に送信するようにしても良い。割込み選択回路25は先に説明したプライオリティ判定回路22と同様にいかようにも設計可能であり、特に詳しくは説明しない。
【0033】
このように、本例のシステムLSI1は、VU3の側においてデータ処理を行った結果、プロセッサであるPU2のプログラム遷移を行わせたい場合に、遷移先アドレスをプロセッサの外部ではあるが同一チップ内のVU3から指定することができる。たとえば、通信・ネットワークの分野においては検出されたデータエラーに対する処理が極めて重要であり、サービスの程度に差がつき、システム商品の優劣が決定されてといっても過言ではない。さらに、通信・ネットワークにおけるエラー処理はリアルタイム処理が要求され、瞬時に対応しなければならない。本例のシステムLSIは、データパス実行ユニットであるVU3の側からエラーの検出とその際の対応先のアドレスが直接指定することができるので、この構成をエラー処理に適用することにより、上記の各条件を満足したシステムLSIを提供することが可能である。動画などの他のリアルタイム性が要求されるアプリケーションを処理するシステムLSIにおいても状況は同じであり、本発明にかかるLSIを採用することにより、短期間で開発ができ、クロック単位の制御が可能で、さらに柔軟性を持ったシステムLSIを提供することができる。
【0034】
なお、上記では、実行部5および命令発行部6を備えたプロセッサをPUとして説明しているが、命令発行部6に対してVU3と並列な環境になる実行部5をPUと捉えてももちろん良い。さらに、本例ではLSI外部からの割込み信号φ1を通常の割込み信号として説明しているが、システムLSI内部のIO回路などからの通常の割込み信号も含まれることは上述した通りである。
【0035】
また、上記では遷移先アドレスが設定される第1および第2の記憶手段としてレジスタを用いた例を説明しているが、データRAMあるいはその他の記憶手段を用いることも可能である。しかしながら、アクセス速度とクロック単位での制御を考慮するとレジスタを遷移先アドレスの格納あるいは記憶手段として用いることが最も望ましい。さらに、レジスタのビット数など、上記にて参考のために数値を入れて説明している部分は参考に過ぎず、上述した値に限定されるものではない。
【0036】
さらに、図3に示した割込み処理に加え、システムLSI内あるいは外で発生した致命的なエラーに対処するためのマスク不能な割込み(最優先)に対する処理を設けることも可能である。すなわち、システムLSI1のPU2に上記のマスク不能な割込みに対する機能を組み込んで、このマスク不能な割込みをPU2で最優先で処理するようにしても良い。
【0037】
【発明の効果】
以上説明したように、本発明のデータ処理装置のデータ処理ユニットは、遷移先アドレスを同一チップ上の処理ユニットから指定できる外部指定用レジスタを第2の記憶手段として設けているので、同一チップ上の他の処理ユニットからの割込み要求に柔軟に対応できると共に、クロック単位で割込み要求に応じた処理を実行することができる。さらに、データ処理ユニットの汎用性を維持しながら、同一チップに搭載された他の処理ユニットに応じた遷移先アドレスからの割込み処理が自由に行える。したがって、遷移先アドレスが外部から指定でき、その処理をクロック単位で制御することができるデータ処理装置を提供できる。
【0038】
このように、本発明によれば、遷移先アドレスを外部から指定できる割込み構造を有する組み込み型のプロセッサをデータ処理ユニットとして提供することができ、従来では、必要であれば、遷移先アドレスをソフトウェアで書き換えながら割込み対応可能としていたものに対し、本発明のデータ処理ユニットにおいては割込み信号と同時に遷移先がダイナミックに変更あるいは指定することが可能となる。したがって、遷移先アドレスを指定できる同一チップ内の他の処理ユニットの要因、すなわち外部要因の状況に応じた遷移が極めて柔軟に行える。この効果は本発明のデータ処理ユニットおよび他の処理ユニットを組み込んだシステムLSI、たとえば上述した組み込み型セミカスタムプロセッサVUPUのようなケースで、同一チップ上にプロセッサとデータパスユニットが存在している場合において特に顕著となる。
【図面の簡単な説明】
【図1】本発明にかかるデータ処理ユニット(PU)を備えたシステムLSIの概略構成を示す図である。
【図2】本例のデータ処理ユニット(PU)の概略構成を示す図である。
【図3】図1に示すシステムLSIで行われる割込み処理の一例を示すフローチャートである。
【図4】専用データ処理ユニットを複数備えたシステムLSIの例を示す図である。
【符号の説明】
1 システムLSI(データ処理装置)
2 データ処理ユニット(PU)
3 専用データ処理ユニット(VU)
4 フェッチユニット
5 実行部
6 命令発行部
7 コードRAM
12 フェッチ部
13 デコード回路
17 汎用レジスタ(第1の記憶手段)
18 外部指定用レジスタ(第2の記憶手段)
20 出力部
21 セレクタ
22 プライオリタイズ判定回路
25 割込み選択回路
A1〜A8 遷移先アドレス(第1の遷移先アドレス)
B1 遷移先アドレス(第2の遷移先アドレス)
φ1 割込み要求信号(第1の割込み信号)
φ2 割込み要求信号(第2の割込み信号)

Claims (4)

  1. コードRAMから命令をフェッチするフェッチユニットであって、割込み信号を受け付けるフェッチユニットと、演算ユニットを含み汎用処理を行う実行ユニットとを含む汎用処理ユニットと、
    前記汎用処理ユニットと同一チップ内に搭載された他の処理ユニットである専用処理ユニットであって、特定のデータ処理に特化した専用回路を備えた専用処理ユニットとを有するデータ処理装置であって、
    前記コードRAMには、前記実行ユニットで実行される汎用命令および前記専用処理ユニットで実行される専用命令を含むプログラムが格納されており、
    前記フェッチユニットは、前記コードRAMの指定された命令フェッチ用のアドレスから順番にフェッチし、フェッチした前記専用命令は前記専用処理ユニットに供給し、さらに、
    前記フェッチユニットは、前記汎用処理ユニットの外部から供給される第1の割込み信号により遷移する前記命令フェッチ用のアドレスである第1の遷移先アドレスが格納された第1のレジスタと、
    前記専用処理ユニットから供給される第2の割込み信号により遷移する前記命令フェッチ用のアドレスである第2の遷移先アドレスが格納された第2のレジスタであって、前記専用処理ユニットと同一チップ内のバスにより接続された第2のレジスタと、
    前記第1の割込み信号および前記第2の割込み信号に基づき前記第1のレジスタに格納された前記第1の遷移先アドレスおよび前記第2のレジスタに格納された前記第2の遷移先アドレスを選択して出力する出力手段とを含み、
    前記専用処理ユニットは、前記第2のレジスタの前記第2の遷移先アドレスを、前記バスを介して、前記第2の割込み信号の出力に対し予め変更しておく機能と、前記第2の割込み信号を出力し前記第2の遷移先アドレスの前記専用命令を取得する機能とを含む、データ処理装置。
  2. 請求項1において、前記出力手段は前記第2の割込み信号を優先することを特徴とするデータ処理装置。
  3. 請求項1または2において、複数の前記専用処理ユニットを有し、それらから供給される前記第2の割込み信号および前記第2のレジスタに設定される前記第2の遷移先アドレスを選択して前記フェッチユニットに供給する割込み選択手段をさらに有するデータ処理装置。
  4. コードRAMから命令をフェッチするフェッチユニットであって、割込み信号を受け付けるフェッチユニットと、演算ユニットを含み汎用処理を行う実行ユニットとを含む汎用処理ユニットと、前記汎用処理ユニットと同一チップ内に搭載された他の処理ユニットである専用処理ユニットであって、特定のデータ処理に特化した専用回路を備えた専用処理ユニットとを有するデータ処理装置の制御方法であって、前記コードRAMには、前記実行ユニットで実行される汎用命令および前記専用処理ユニットで実行される専用命令を含むプログラムが格納されており、前記フェッチユニットは、前記コードRAMの指定された命令フェッチ用のアドレスから順番にフェッチし、フェッチした前記専用命令は前記専用処理ユニットに供給し、さらに、前記フェッチユニットは、前記汎用処理ユニットの外部から供給される第1の割込み信号により遷移する前記命令フェッチ用のアドレスである第1の遷移先アドレスが格納された第1のレジスタと、前記専用処理ユニットから供給される第2の割込み信号により遷移する前記命令フェッチ用のアドレスである第2の遷移先アドレスが格納された第2のレジスタであって、前記専用処理ユニットと同一チップ内のバスにより接続された第2のレジスタとを含み、
    当該制御方法は、
    前記フェッチユニットが外部から前記第1の割込み信号を受信すると前記第1のレジスタに設定された前記第1の遷移先アドレスを出力して第1の割込み処理を実行する工程と、
    前記専用処理ユニットが、前記第2のレジスタの前記第2の遷移先アドレスを、前記バスを介して、前記第2の割込み信号の出力に対し予め変更し、前記フェッチユニットが、前記専用処理ユニットから前記第2の割込み信号を受信すると前記第2のレジスタに設定された前記第2の遷移先アドレスを出力して第2の割込み処理を実行し、前記第2の遷移先アドレスの前記専用命令を前記専用処理ユニットに供給する工程とを有する、制御方法。
JP2000259818A 2000-08-29 2000-08-29 データ処理装置および制御方法 Expired - Fee Related JP4758538B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000259818A JP4758538B2 (ja) 2000-08-29 2000-08-29 データ処理装置および制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000259818A JP4758538B2 (ja) 2000-08-29 2000-08-29 データ処理装置および制御方法

Publications (2)

Publication Number Publication Date
JP2002073351A JP2002073351A (ja) 2002-03-12
JP4758538B2 true JP4758538B2 (ja) 2011-08-31

Family

ID=18747939

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000259818A Expired - Fee Related JP4758538B2 (ja) 2000-08-29 2000-08-29 データ処理装置および制御方法

Country Status (1)

Country Link
JP (1) JP4758538B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5087884B2 (ja) * 2006-08-11 2012-12-05 富士通セミコンダクター株式会社 データ処理ユニット、およびこれを使用したデータ処理装置
JP7000088B2 (ja) 2017-09-15 2022-01-19 株式会社東芝 通知制御装置、通知制御方法及びプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2680827B2 (ja) * 1987-05-29 1997-11-19 株式会社リコー 間接アドレス方式の割込制御回路装置
JPH01311353A (ja) * 1988-06-10 1989-12-15 Toshiba Corp 割込み制御装置
JPH03214238A (ja) * 1990-01-19 1991-09-19 Nec Corp 信号処理プロセッサ
US5473763A (en) * 1993-08-02 1995-12-05 Advanced Micro Devices, Inc. Interrupt vector method and apparatus
JPH10105413A (ja) * 1996-10-02 1998-04-24 Nec Commun Syst Ltd 割込処理システム
JP3699806B2 (ja) * 1997-06-20 2005-09-28 株式会社東芝 割込みコントローラ及び制御システム
JP2001005676A (ja) * 1999-06-18 2001-01-12 Mitsubishi Electric Corp 割り込み処理装置

Also Published As

Publication number Publication date
JP2002073351A (ja) 2002-03-12

Similar Documents

Publication Publication Date Title
JP2987308B2 (ja) 情報処理装置
US7991978B2 (en) Network on chip with low latency, high bandwidth application messaging interconnects that abstract hardware inter-thread data communications into an architected state of a processor
US5752071A (en) Function coprocessor
US20090125703A1 (en) Context Switching on a Network On Chip
JP4098241B2 (ja) プロセッサをコプロセッサに接続する方法及び装置
US9146896B2 (en) Computer system including reconfigurable arithmetic device with network of processor elements
US7765250B2 (en) Data processor with internal memory structure for processing stream data
JP4569934B2 (ja) 情報処理装置、例外制御回路及び例外制御方法
US5734927A (en) System having registers for receiving data, registers for transmitting data, both at a different clock rate, and control circuitry for shifting the different clock rates
JP4758538B2 (ja) データ処理装置および制御方法
US8402260B2 (en) Data processing apparatus having address conversion circuit
JP5096923B2 (ja) 動的再構成論理回路を有するマルチスレッドプロセッサ
JP5372307B2 (ja) データ処理装置およびその制御方法
JP3851008B2 (ja) プロセッサおよびそれを有する半導体集積回路、処理装置ならびに命令処理方法
US7191313B2 (en) Microprocessor
JP2006018411A (ja) プロセッサ
JP2007026184A (ja) 機能処理電子回路およびその制御手法
JP4217452B2 (ja) プロセッサシステム
JP2002073327A (ja) データ処理ユニット、データ処理装置およびデータ処理ユニットの制御方法
JP3102399B2 (ja) データ処理装置及び方法
KR100599539B1 (ko) 태스크 엔진 기반의 재구성가능 디지털 신호 프로세서
US20040177227A1 (en) Microcomputer application system, microcomputer, signal processing system and signal processing LSI
JP2012247907A (ja) 情報処理装置
JP3039489B2 (ja) 半導体装置のテスト方法、及び半導体装置
JP2005346673A (ja) 割り込みコントローラ及びシステムlsi

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070820

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20080228

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080305

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080520

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090417

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090519

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090721

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100809

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101008

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110523

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110603

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4758538

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140610

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees