JP5431823B2 - 半導体装置 - Google Patents

半導体装置 Download PDF

Info

Publication number
JP5431823B2
JP5431823B2 JP2009180470A JP2009180470A JP5431823B2 JP 5431823 B2 JP5431823 B2 JP 5431823B2 JP 2009180470 A JP2009180470 A JP 2009180470A JP 2009180470 A JP2009180470 A JP 2009180470A JP 5431823 B2 JP5431823 B2 JP 5431823B2
Authority
JP
Japan
Prior art keywords
register
unit
central processing
processing unit
interrupt
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
JP2009180470A
Other languages
English (en)
Other versions
JP2011034385A (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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics 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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2009180470A priority Critical patent/JP5431823B2/ja
Publication of JP2011034385A publication Critical patent/JP2011034385A/ja
Application granted granted Critical
Publication of JP5431823B2 publication Critical patent/JP5431823B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Bus Control (AREA)

Description

本発明は、割込み機能を備えた半導体装置に関し、特に、割込み要求機能を持たない一部の内部回路モジュールの状態をCPUの動作に反映させるデータ処理技術に関し、マイクロコンピュータやシステム・オン・チップの半導体デバイスに適用して有効な技術に関する。
マイクロコンピュータなどの半導体装置が備える内部回路モジュールの中には、必要な数の割込み要求信号が割当てられていなかったり、全く割込み要求信号が割当てられていなかったりするものがある。例えば、マイクロコンピュータやSOCのオンチップモジュールとして広く利用されているIP(知的財産)モジュールの中には、その使用許諾の条件として回路構成若しくは機能の改変や改良が禁止されているものがあり、全く割込み要求信号の出力機能がなければ、当該IPモジュールはCPUに対する割り込みを要求することができない。
このような事情の下では、特定の回路モジュールの状態に応じてCPUのプログラム処理を変えようとする場合に、例えばCPUが上記特定の回路モジュール内のステータスレジスタの値をリードして、そのリード値と分岐条件とを比較してCPUのプログラムシーケンスを選択的に分岐させることが可能である。
特許文献1には、メモリの特定アドレスに対するアクセスをアクセスアドレスに基づいて観測し、DMACによる特定アドレスへの書き込みを検出したときCPUへの割込みを発生させるメモリアービタについて記載がある。
特開2006−11645号公報
上述のCPUによるポーリングとCPUによる比較動作によって割り込み機能を代替させる場合にはCPUの負荷が増し、更に、CPUが接続するバスを基点にバストラフィックも増大し、CPUによる本来のデータ処理効率が低下し、回路モジュール内で発生した事象に対する応答性もよくない。特許文献1に記載される技術は一つの内部回路モジュールであるメモリアービタが特定の割込み要求機能を持つというものであり、必要な数の割込み要求信号の出力機能がなかったり、割込み要求信号の出力機能が全くなかったりする内部回路モジュールへの対応には不十分である。
本発明の目的は、必要な割込み要求信号の出力機能を備えていない内部回路モジュールに対して必要な割込み要求機能を容易に追加することができる半導体装置を提供することにある。
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
すなわち、中央処理装置、割込みコントローラ及び必要な割込み要求機能を持たない内部回路モジュールを備えた半導体装置に、初期設定された内容に従って前記回路モジュールの内部状態を観測し、内部状態が前記初期設定された状態に一致したとき、当該一致に応ずる割込み要求信号を前記割り込みコントローラに出力するポーリング部を採用する。
これにより、ポーリング部に対する初期設定に従って内部回路モジュールに備わっていない必要な割込み要求機能を実現することができる。
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
すなわち、必要な割込み要求信号の出力機能を備えていない内部回路モジュールに対して必要な割込み要求機能を容易に追加することができる。
図1は本発明の半導体装置の一例に係るマイクロコンピュータ1を示すブロック図である。 図2はフラグポーリングモジュールを備えないとき回路モジュールの状態に従ってCPUに図1と同様の処理を実行させようとしたときの比較例を示すブロック図である。 図3はフラグポーリングモジュールの詳細を例示するブロック図である。 図4はレジスタ部のレジスタの機能についてその詳細を例示する説明図である。 図5はフラグポーリングモジュールの動作タイミングを例示するタイミングチャートである。 図6は第2の実施の形態に係るマイクロコンピュータ1Aを例示するブロック図である。 図7は第3の実施の形態に係るマイクロコンピュータ1Bを例示するブロック図である。 図8は第4の実施の形態に係るマイクロコンピュータ1Cを例示するブロック図である。 図9は第5の実施の形態に係るマイクロコンピュータ1Dを例示するブロック図である。
1.実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
〔1〕本発明の代表的な実施の形態に係る半導体装置(1,1A,1B,1C,1D)は、中央処理装置(2)と、割込み要求信号を受けて前記中央処理装置に割り込み信号(INT)を出力する割込みコントローラ(7)と、前記中央処理装置の制御を受けて動作する回路モジュール(6,6A,12)と、初期設定された内容に従って前記回路モジュールの内部状態を観測し、内部状態が前記初期設定された状態に一致したとき、当該一致に応ずる割込み要求信号(IRQ3,IRQ3_1〜IRQ3_m)を前記割り込みコントローラに出力するポーリング部(8,8A)と、を1個の半導体基板に有する。
上記によれば、ポーリング部に対する初期設定に従って、回路モジュールが備えていない、割り込みコントローラへの必要な割込み要求信号の出力機能を実現することができる。このとき、中央処理装置が回路モジュール内部を直接観測する場合に比べて中央処理装置の負荷が低減され、中央処理装置による本来のデータ処理効率の低下を抑制でき、回路モジュール内で発生した事象に対して良好な応答性を得ることができる。
〔2〕項1の半導体装置において、前記ポーリング部は、前記観測の対象を特定する情報が設定される対象指定レジスタ部(ASREG,MSKREG1〜MSKREGn)と、前記観測の対象の期待値が設定される期待値レジスタ部(CMPREG1〜CMPREGn)と、前記観測のタイミングを指定する情報が設定されるタイミング指定レジスタ部(PIREG)と、のレジスタセットを有する。レジスタセットの規模に従って複数の割込み要求信号の出力機能に容易に対応することができる。
〔3〕項2の半導体装置において、前記ポーリング部は、前記タイミング指定レジスタ部に設定されたタイミングに従って、前記対象指定レジスタ部に設定された観測対象をリードアクセスするためのアクセス部(21)と、前記アクセス部で得られたリードデータと前記期待値レジスタ部に設定された当該観測の対象の期待値とを比較する比較部(22)と、前記比較部による比較結果の一致に基づいて対応する割込み要求信号を出力する割込み要求生成部(23)と、を有する。
〔4〕項3の半導体装置において、前記割り込み要求生成部は、割込み要求信号の出力端子を複数個有し、前記期待値毎にどの出力端子を用いて割込み要求信号を出力するかを選択するデマルチプレクサ(45_1〜45_n)を有する。前記各レジスタセットは割り込み要求信号の出力端子を指定するための情報が設定される出力選択レジスタ部(INTREG1〜INTREGn)を更に有する。割込み要求信号の種類に対して割込み要求信号の出力端子の数を少なくすることができる。
〔5〕項4の半導体装置において、前記レジスタセットは中央処理装置のアドレス空間に配置されている。レジスタセットの各レジスタ部に対する初期設定を中央処理装置の動作プログラムによって自由に行うことが可能になる。
〔6〕項1乃至5の何れかの半導体装置において、前記回路モジュールは前記半導体基板の外部から与えられる信号の状態に応じて値が変化されるフラグレジスタ(STREG)を有する。前記ポーリング部は、前記レジスタセットに設定された情報に従って前記フラグレジスタを前記観測の対象とすることが可能にされる。これにより、フラグレジスタの状態に応じて割込み要求信号を生成することができる。
〔7〕項1乃至5の何れかの半導体装置において、前記回路モジュールは前記中央処理装置とそれ以外のバスアクセス要求モジュールとによってアクセス可能にされる共有メモリ(12)である。前記ポーリング部は、前記レジスタセットに設定された情報に従って前記共有メモリの特定記憶領域を前記観測の対象とすることが可能にされる。これにより、前記共有メモリの特定記憶領域の状態に応じて割込み要求信号を生成することができる。
〔8〕項7の半導体装置において、前記バスアクセス要求モジュールは前記中央処理装置と一緒にマルチプロセッサシステムを構成する別の中央処理装置(13)である。例えば、マルチプロセッサシステムにおいて一つの中央処理装置により共有メモリの書き換えを別の中央処理装置が割り込みを用いて認識できるようになる。
〔9〕項7の半導体装置において、前記バスアクセス要求モジュールは、前記半導体基板の外部から与えられるメッセージを前記共有メモリに書き込む外部インタフェース回路(11)である。外部イベントにも対応可能になる。
〔10〕項1乃至5の何れかの半導体装置において、前記回路モジュールは外部端子にインタフェースされるポートレジスタ(DREG)を有する外部入出力ポート(6A)である。このとき、前記ポーリング部は、前記レジスタセットに設定された情報に従って前記ポートレジスタの特定記憶領域を前記観測の対象とすることが可能にされる。汎用の外部入出力ポートの状態に対して割込み要求を生成することが可能になる。
〔11〕項1乃至10の半導体装置において、前記回路モジュール及び前記ポーリング部が接続されるバス(BUS3)と、前記中央処理装置が接続されるバスとの間には、バスブリッジ(BRDGA,BRDGB)が介在される。これにより、中央処理装置が接続するバス上のバストラフィックの増加を抑えることが可能になり、この点においても、中央処理装置による本来のデータ処理効率の低下を抑制でき、回路モジュール内で発生した事象に対して良好な応答性を得ることができる。
〔12〕項1乃至3の何れかの半導体装置において、前記アクセス部は、バスアクセス制御機能を有するアクセラレータ(14)に接続され、前記リードアクセスに前記アクセラレータのバスアクセス制御機能を用いる。アクセス部の物理的な回路規模の縮小に寄与する。
〔13〕本発明の別の実施の形態に係る半導体装置は、中央処理装置と、割込み要求信号を受けて前記中央処理装置に割り込み信号を出力する割込みコントローラと、前記中央処理装置の制御を受けて動作する回路モジュールと、前記中央処理装置によってアクセス可能なレジスタセットを有し、初期設定されたレジスタセットの内容に従って前記回路モジュールの内部状態を観測し、内部状態が前記初期設定された状態に一致したとき、当該一致に応ずる割込み要求信号を前記割り込みコントローラに出力するポーリング部と、を1個の半導体基板に有する。前記回路モジュールは前記半導体基板の外部から与えられる信号の状態に応じて値が変化されるフラグレジスタを有する。前記ポーリング部は、前記レジスタセットに設定された情報に従って前記フラグレジスタを前記観測の対象とすることが可能にされる。
〔14〕本発明の更に別の実施の形態に係る半導体装置は、中央処理装置と、割込み要求信号を受けて前記中央処理装置に割り込み信号を出力する割込みコントローラと、前記中央処理装置の制御を受けて動作する回路モジュールと、前記中央処理装置によってアクセス可能なレジスタセットを有し、初期設定されたレジスタセットの内容に従って前記回路モジュールの内部状態を観測し、内部状態が前記初期設定された状態に一致したとき、当該一致に応ずる割込み要求信号を前記割り込みコントローラに出力するポーリング部と、を1個の半導体基板に有する。前記回路モジュールは前記中央処理装置とそれ以外のバスアクセス要求モジュールとによってアクセス可能にされる共有メモリである。前記ポーリング部は、前記レジスタセットに設定された情報に従って前記共有メモリの特定記憶領域を前記観測の対象とすることが可能にされる。
〔15〕項14の半導体装置において、前記バスアクセス要求モジュールは前記中央処理装置と一緒にマルチプロセッサシステムを構成する別の中央処理装置である。
〔16〕項14の半導体装置において、前記バスアクセス要求モジュールは、前記半導体基板の外部から与えられるメッセージを前記共有メモリに書き込む外部インタフェース回路である。
〔17〕本発明の更に別の実施の形態に係る半導体装置は、中央処理装置と、割込み要求信号を受けて前記中央処理装置に割り込み信号を出力する割込みコントローラと、前記中央処理装置の制御を受けて動作する回路モジュールと、前記中央処理装置によってアクセス可能なレジスタセットを有し、初期設定されたレジスタセットの内容に従って前記回路モジュールの内部状態を観測し、内部状態が前記初期設定された状態に一致したとき、当該一致に応ずる割込み要求信号を前記割り込みコントローラに出力するポーリング部と、を1個の半導体基板に有する。前記回路モジュールは外部端子にインタフェースされるポートレジスタを有する外部入出力ポートである。前記ポーリング部は、前記レジスタセットに設定された情報に従って前記ポートレジスタの特定記憶領域を前記観測の対象とすることが可能にされる。
2.実施の形態の詳細
実施の形態について更に詳述する。
《内部レジスタの観測》
図1には本発明の半導体装置の一例に係るマイクロコンピュータ(MCU)1が示される。マイクロコンピュータ1は、特に制限されないが、公知の相補型MOS集積回路製造技術によって単結晶シリコン等の1個の半導体基板に形成される。マイクロコンピュータ1は、命令を実行する中央処理装置(CPU)2を備え、この中央処理装置2の制御を受けて動作する回路モジュールとして代表的に示された回路モジュール(MDLA〜MDLD)3〜6を有する。中央処理装置2はプログラムメモリ(PGMMRY)9に格納されたプログラムに従って命令をフェッチして実行する。
回路モジュール3は例えば中央処理装置2のワーク領域若しくはデータの一時記憶領域として利用されるRAMで構成され、本来割込み要求信号の出力機能を必要としない。
回路モジュール4,5は必要な割込み要求信号の出力機能を備え、回路モジュール4は割込み要求信号IRQ1を、回路モジュール5は割込み要求信号IRQ2を、割込みコントローラ(INTC)7に出力する。
回路モジュール6は外部デバイス(EXTDEV)10とインタフェースされ、外部デバイス10からイベント信号などを受けて動作される。例えば暗号処理や画像処理、外部との通信等を行う回路モジュールである。外部デバイス10は動画や画像を保存するフラッシュメモリーカードやIEEE 802.11諸規格に準拠した無線通信デバイスなどである。回路モジュール6はCPU2の指示に従って処理を行なうが、その処理の正常終了や異常終了をCPU2に伝達しなければならない場合があるが、ここでは回路モジュール6は、必要な割込み要求信号の出力機能を備えていない。例えば、この回路モジュール6は、その使用許諾の条件として回路構成若しくは機能の改変や改良が禁止されているIPモジュールであり、割込み要求信号の出力機能が必要であっても、当該回路モジュール自体の改変は許されない。この回路モジュール6に必要な割込み要求機能を補完するためにポーリング部としてフラグポーリングモジュール(FPLNG)8が設けられ、回路モジュール6に代わって割込みコントローラ7に割込み要求信号IRQ3を出力する。
割込みコントローラ7は中央処理装置2により割り込み優先レベル及び割り込みマスクレベルなどが初期設定され、代表的に示された割り込み要求信号IRQ1,IRQ2,IRQ3によって割込みが要求されると、割り込み優先レベル及び割り込みマスクレベルに従って、割込み要求の競合を調停し、割込み要求のマスク制御を行って、一つの割込み要求を受け付けて、中央処理装置2に割込み信号INTをアサートする。中央処理装置2は割込み信号INTがアサートされると、命令実行を完了してから、プログラムカウンタや汎用レジスタなどのデータを退避し、その後、割込み要因に応ずる割込み処理プログラムの実行に遷移する。
フラグポーリングモジュール8は、例えば中央処理装置2によって初期設定された内容に従って前記回路モジュール6の内部状態、例えばフラグレジスタとして機能されるようなステータスレジスタSTREGを観測し、内部状態が前記初期設定された状態に一致したとき、当該一致に応ずる割込み要求信号IRQ3を前記割り込みコントローラ7に出力する。フラグポーリングモジュール8は回路モジュール5,6と一緒にバスBUS3に接続される。割込みコントローラ7及び回路モジュール4はバスBUS2に接続され、中央処理装置2と回路モジュール3はバスBUS1に接続される。バスBUS1とバスBUS2はバスブリッジBRDGAを介してインタフェースされ、バスBUS2とバスBUS3はバスブリッジBRDGBを介してインタフェースされる。バスブリッジBRDGA、BRDGBは、バスを跨ぐ転送に対してバスの間の転送速度やバスのビット数の相違などを調整する回路である。
マイクロコンピュータ1のパワーオンリセットの処理で割込みコントローラ7及びフラグポーリングモジュール8などが初期設定されると、フラグポーリングモジュール8はその初期設定された内容に従って前記回路モジュール6の内部のステータスレジスタSTREG等を定期的にリードして観測する。このリード動作にはCPU2のアクセスを要しないからCPU2はその他のデータ処理を行なうことができ、また、そのリード動作はバスBUS3を介して行われ、他のバスBUS2,BUS1のバストラフィックを増加させる要因にはならない。フラグポーリングモジュール8は、前記観測結果が前記初期設定された所定の期待される状態に一致したとき、当該一致に応ずる割込み要求信号IRQ3を前記割り込みコントローラ7に出力する。割込みコントローラ7はそれに応答して割込み信号INTを中央処理装置2にアサートし、中央処理装置2は当該割り込み要求に対応する所定の割込み処理プログラムの実行に遷移する。
図2にはフラグポーリングモジュール8を備えないとき回路モジュール6の状態に従ってCPU1に図1と同様の処理を実行させようとしたときの比較例が示される。図2の場合にはCPU2は回路モジュール6の内部状態を定期的にポーリングすることが考えられる。この場合、CPU2がバスBUS1、BUS2及びBUS3を通して回路モジュール6の内部をリードアクセスしなければならず、CPUの負担が増え、バスBUS1,BUS2及びBUS3のバストラフィックが増加する。
《フラグポーリングモジュールの詳細》
図3にはフラグポーリングモジュール8の詳細が例示される。フラグポーリングモジュール8は、レジスタ部20、アクセス部21、比較部22、割込み要求生成部23、およびバスインタフェース部24を備える。
レジスタ部2は、アドレスセッティングレジスタASREG、観測のタイミングなどを指定する情報が設定されるタイミング指定レジスタ部としてのポーリングインターバルレジスタPIREG、マスクレジスタMSKREG1〜MSKREGn、コンペアレジスタCMPREG1〜CMPREGn、及び割込みディレクションレジスタINTDREG1〜INTDREGnを有する。
前記レジスタ部2のレジスタの機能についてその詳細が図4に例示される。アドレスセッティングレジスタASREGは観測対象とするレジスタのアドレス(tgtaddr)が設定される。ここでは観測対象レジスタは回路モジュール6の内部に配置された32ビットのステータスレジスタSTREGである。
ポーリングインターバルレジスタPIREGのビット0〜15には観測間隔i(interval)が設定される。観測間隔は、特に制限されないが、2−1バスクロック分の間隔とされる。バスクロックはバスBUS3のバスサイクルを規定する。ポーリングインターバルレジスタPIREGのビット31(観測イネーブルビット)には観測中/停止が設定される、その値(compen)0は観測停止、値1は観測中を意味する。
マスクレジスタMSKREG1〜MSKREGnの夫々は、ビット0〜31により観観測対象とする観測領域1〜観測領域nを設定する。各ビットにおいて、その値(mask[31:0])0は当該ビットを観測対象から除外する(マスクする)ことを意味し、その値1は当該ビットを観測領域とすることを意味する。マスクレジスタMSKREG1〜MSKREGn及びアドレスセッティングレジスタASREGは観測の対象を特定する情報が設定される対象指定レジスタ部の一例である。
コンペアレジスタCMPREG1〜CMPREGnは、マスクレジスタMSKREG1〜MSKREGnに設定された観測領域1〜観測領域nの期待値(comp[31:0])が設定される。
割込みディレクションレジスタINTDREG1(〜INTDREGn)において、ビット0〜15の値(intdir[15:0])は領域1(〜領域n)の割り込み出力先として対応させるべき割込み要求信号IRQ3_1〜IRQ3_mを指定する。そのビット30の値(inten)は領域1(〜領域n)の割り込み出力許可/不可を指示し、値0は割込み要求の出力不可、値1は割込み要求の出力許可を意味する。そのビット31の値(match)は領域1(〜領域n)の一致/不一致を示し、値0は期待値と不一致、値1は期待値と一致を意味する。
バスインタフェース部24は、レジスタ部20をアクセスするアクセス要求をバスBUS3から入力するバススレーブインタフェース(BSLVIF)30と、アクセス部21が回路モジュール6をアクセスするためのアクセス要求をバスBUS3に出力するバスマスタインタフェース31とを有する。バススレーブインタフェース30はバスBUS3からリードリクエストRDREQを入力してリードデータRDDATをバスBUS3に出力し、また、バスBUS3からライトリクエストWRREQを入力してライトレレスポンスWRRSPをバスBUS3に出力する。バスマスタインタフェース31はアクセス部21からリードリクエストRDREQを出力してリードデータRDDATをバスBUS3から入力する。リードリクエストRDREQ及びライトリクエストWRREQはアクセス対象アドレス及びアクセス指示(リード又はライト動作)コマンドなどを含んでいる。
アクセス部21はリードリクエスト生成部(RDREQGEN)40とカウンタ(COUNT)41を有する。リードリクエスト生成部40は観測対象とするレジスタのアドレス(tgtaddr)がセットされ、カウンタ(COUNT)41には観測間隔i(interval)がセットされ、観測イネーブルビットの値(compen)が1のときバスクロックを計数し、計数値が、観測間隔iで規定される間隔になる毎に、リードトリガRDTRGをリードリクエスト生成部40に出力する。リードリクエスト生成部40はリードトリガRDTRGが与えられるのに同期してリードリクエストRDREQを発行する。発行されたリードリクエストRDREQはバスマスタインタフェース31を介してバスBUS3に出力される。観測対象は例えば回路モジュール6が備えるステータスレジスタSTREGであり、ステータスレジスタSTREGには回路モジュール6によるデータ処理状態や外部デバイス10からの要求などが対応するフラグとして反映される。
比較部22はマスクレジスタMSKREG1、コンペアレジスタCMPREG1及び割込みディレクションレジスタINTDREG1(〜MSKREGn、CMPREGn、及びINTDREGn)のグループ毎にコンペアモジュールCMPMDL1〜CMPMDLnを有し、夫々のコンペアモジュールCMPMDL1(〜CMPMDLn)は、リードリクエストRSREQに応答して回路モジュール6から返されたリードデータRDDATとマスクレジスタMSKREG1(〜MSAKREGn)のマスクデータmaskとの論理積を採るアンドゲート42、及びアンドゲート42の出力とコンペアレジスタCMPREG1(〜CMPREGn)の期待値comp1(〜compn)とを比較する比較器43を有する。比較器の比較結果match1(〜matchn)は対応する割り込みディレクショインレジスタINTDREG1(〜INTDREGn)のビット31に反映される。
割込み要求生成部23は比較器43による比較結果match1(〜matchn)と割り込みディレクショインレジスタINTDREG1(〜INTDREGn)のビット30の値である割り込みイネーブルinten1(〜intenn)との論理積を採るアンドゲート44_1(〜44_n)と、アンドゲート44_1(〜44_n)の出力を割込みディレクションレジスタINTDREG1(〜INTDREGn)の値intdir1(〜intdrin)に従って分配するデマルチプレクサ45_1(〜45_n)と、夫々のデマルチプレクサ45_1〜45_nの出力を受けて論理和をとり、夫々の論理和信号を割込み要求信号IRQ1〜IRQmとして割込みコントローラ7に出力するオアゲート46_1〜46_mとを有する。
フラグポーリングモジュール8が図3に例示したように、アドレスセッティングレジスタASREGにより回路モジュール6における観測対象のステータスレジスタを任意に指定できるから、回路モジュール6の内部レジスタに対してどのようなアドレスマッピングであっても容易に対応することができる。その観測タイミングもポーリングインターバルレジスタPIREGで任意に指定できるから、MCU1を用いたシステムに要求される割込み応答性に則したタイミングで割込み要求を生成することができる。マスクレジスタMSKREG1〜MSKREGn、コンペアレジスタCMPREG1〜CMPREGn及び割込みディレクションレジスタINTDREG1〜INTDREGnを複数セット有するから、複数の割込み要求ポイント若しくは割込み要求条件を任意に設定でき、回路モジュール6を用いるシステムの要求に則した条件で割り込みを要求することができる。さらに、その割込み要求の発生条件と割込み要求信号との対応もデマルチプレクサを介して任意であり、割込み要求信号とこれに対応される割込み要因との組合せも任意であるから、割り込み要求信号に対する割込み要求機能の設定に大幅な柔軟性を獲得でき、その作用効果を割込み要求信号の数を大幅に増大させることなく実現することができる。
図5にはフラグポーリングモジュール8の動作タイミングが例示される。図において、「CPU:W」はCPU2からフラグポーリングモジュール8へのライト要求、FPM:Rはフラグポーリングモジュール8から回路モジュール6へのリード要求を意味する。ここではフラグポーリングモジュール8に対する初期設定の対象をASREG,PIREG,MSKREG1,CMPREG1,INTDREG1とする場合を一例とする。
時刻t1に同期してCPU2がASREGに観測対象のアドレス値tgtaddrを設定し、時刻t2に同期してCPU2が観測対象のアドレス領域のうち、実際に観測しないビットはMSKREG1のマスクデータmask[31:0]に0を設定して、マスクする。ここではマスクデータmask[31:0]として32’h0000_FFFFが設定され、上位16ビットがマスクされている。時刻t3に同期してCPU2はCMPREG1に期待値comp[31:0]を設定する。ここでは、32’h0000_5555が設定される。設定された期待値はMSKREG1でマスクされていないビットのみ有効とされる。時刻t4に同期してCPU2はINTDREG1の割込みイネーブルビットintenに値1をセットし、出力方向指示データintdir[15:0]に値16’h0007をセットする。この値は割込み要求信号IRQ3_7の選択を指示する。その後、CPU2はPIREGREG1に観測する間隔interval[15:0]として値16’h0001を設定すると共に、比較イネーブルビットcompenに値1をする。
比較イネーブルビットcompenに値1が設定されると、フラグポーリングモジュール8はその初期設定に従って、観測インターバル毎に、観測対象アドレスで指定された回路モジュール6内のステータスレジスタSTREGをリードする。図5では時刻t6、t8、t10でステータスレジスタSTREGのリードが行われている。このとき、外部デバイス10は時刻t7に同期して回路モジュール6内のステータスレジスタSTREGを操作する処理を開始し、操作の結果が時刻t9にステータスレジスタSTREGに反映される。反映された値は例えば32’hAAAA_5555とされ、時刻t10でこれがフラグポーリングモジュール8にリードされる。リードデータの下位16ビットはcomp[31:0]の下位16ビットに一致することから、一致信号match1がアサートされ、intdir[15:0]に従って割り込み要求信号IRQ3_7がアサートされ、割込みコントローラ7に割込みが要求される。この割り込み要求に基づいてCPU2に割り込み信号INTが供給されると、CPU2はその割込みに応答する割り込み処理の一環として、時刻t11に同期してcompenをネゲートし、時刻t12に同期してmatch1をネゲートし、これによって割込み要求信号IRQ3_7がネゲートされる。
《ポートレジスタの観測》
図6は第2の実施の形態に係るマイクロコンピュータ1Aが例示される。ここでは、フラグポーリングモジュール8による監視対象を外部入出力ポート(IOPRT)6Aとした点が図1と相違される。図1等で説明した構成と同一の機能を有するものにはそれと同一参照符号を附してその詳細な説明を省略する。
外部入出力ポート6AはバスBUS3に接続され、例えばCPU2の初期設定に従ってその入出力機能が決定され、例えば外部バスとの間の入出力、外部のディジタルデバイスとの間の入出力、外部のアナログデバイスとの間の入出力などに割当てられる。外部入出力ポート6Aは入出力すべきデータやアドレスなどの情報を一時的に保持するデータレジスタや入出力機能の設定レジスタをポートレジスタとして有し、ここではデータレジスタDREGを図示してある。データレジスタDREGはCPU2のアドレス空間に配置される。例えば、システム上、データレジスタDREGに所定のデータが書き込まれるのを待ってCPU2が所定の処理に遷移することを必要とする場合などに、フラグポーリングモジュール8を利用することができる。前述のように、ASREGにデータレジスタDREGのアドレスをセットし、CMPREG1などに期待値をセットしたりして、定期的にデータレジスタDREGをリードアクセスすることにより、期待値に一致するデータを得ることによって割込み要求信号IRQ3を割込みコントローラ7にアサートすることができる。CPU2はその割込みに応答して所定の処理に遷移することができる。
このように、外部入出力ポート6AのデータレジスタDREGの状態に応じてCPU2の処理を所要の処理へ遷移させる制御を容易に且つ柔軟性を持って実現することができる。その他、図1等で説明したのと同様の作用効果を奏する。尚、データレジスタDREGによる出力データをフラグポーリングモジュール8による監視対象とすることも可能である。
《メモリの観測》
図7には第3の実施の形態に係るマイクロコンピュータ1Bが例示される。フラグポーリングモジュール8による観測対象をメモリとした点が図1と相違される。図1で説明した構成と同一の機能を有するものにはそれと同一参照符号を附してその詳細な説明を省略する。
メモリ12はCPU2のアドレス空間に配置されたSRAM或いはSDRAMなどで構成される。回路モジュール(MDLE)11は外部デバイス(EXTDEV)10とインタフェースされ、例えば外部デバイス10にメモリ12をアクセス可能にするメモリインタフェースとして機能され、メモリ12はCPU2と外部デバイス10の共有メモリとして機能される。メモリ12の共有領域CDMINは例えばメモリアドレスH‘10である。MCU1Bの外部からメモリ12に対するアクセスは外部デバイス10が直接行う場合に限定されず、外部デバイス10から送信された送信パケットを回路モジュール11が受取り、それに含まれるコマンドを実行することによってメモリ12の共有領域CDMINをアクセスしても良い。
前記共有領域CDMINの状態に応じてCPU2に所定の処理を実行させたいときフラグポーリングモジュール8を利用することができる。前述のように、ASREGに共有領域CDMINのアドレスをセットし、CMPREG1などに期待値をセットしたりして、定期的に共有領域CDMINをリードアクセスすることにより、期待値に一致するリードデータを得ることによって割込み要求信号を割込みコントローラ7にアサートすることができる。
このように、メモリなど本来割り込み機能を持たない回路モジュールの状態を観測して割り込みを発生させることができる。その他、図1で説明したのと同様の作用効果を奏する。この実施の形態の割り込み手法は、例えば高速通信プロトコル等に用いるMSI(Message Signal Interrupt)などに適用可能である。
《マルチCPUにおける共有メモリの観測》
図8には第4の実施の形態に係るマイクロコンピュータ1Cが例示される。これは、マルチCPUに適用した点が図7とは異なる。図1及び図7で説明した構成と同一の機能を有するものにはそれと同一参照符号を附してその詳細な説明を省略する。
同図に示されるマイクロコンピュータ1CはCPU2と共にCPU13を備えたマルチCPU若しくはマルチプロセッサシステムを構成する。メモリ12はCPU2とCPU13の双方のアドレス空間に配置される。例えば、システム上、CPU13がメモリ12の特定領域SDMINに所定のデータを書き込むのを待ってCPU2は所定の処理に遷移することが必要な場合に、フラグポーリングモジュール8を利用することができる。前述のように、ASREGに特定領域CDMINのアドレスをセットし、CMPREG1などに期待値をセットしたりして、定期的に特定領域SDMINをリードアクセスすることにより、期待値に一致するリードデータを得ることによって割込み要求信号を割込みコントローラ7にアサートすることができる。CPU2はその割込みに応答して所定の処理に遷移することができる。
このように、マルチCPU若しくはマルチプロセッサシステムにおける共有メモリの状態に応じて特定のCPUの処理を所要の処理へ遷移させる制御を容易に且つ柔軟性を持って実現することができる。その他、図1及び図7等で説明したのと同様の作用効果を奏する。
《アクセス部の流用》
図9には第5の実施の形態に係るマイクロコンピュータ1Dが例示される。ここではフラグポーリングモジュールの前記アクセス部として既存の内部回路のバスアクセス機能を流用する例を示す。図1及び図7で説明した構成と同一の機能を有するものにはそれと同一参照符号を附してその詳細な説明を省略する。
図9に示されるフラグポーリングモジュール(FPLNG)8Aは図3で説明したフラグポーリングモジュール(FPLNG)8Aに対してアクセス部21が省略され、ASREG及びPIREGの設定値は、バスアクセス機能を有する既存の内部回路、例えばディジタル信号処理プロセッサ(DSP)14のバスアクセス部(図示せず)に供給される。DSP14のバスアクセス部はcompenが値1のとき、intervalで指示される間隔でターゲットアドレスtgtaddrに対するリードアクセスを実行する。リードデータは前述と同様にバスマスタインタフェース31を介してフラグポーリングモジュール8Aの内部に取り込まれ、前述と同様に処理されて、割込み要求信号の生成に利用される。
これによりアクセス部の分だけフラグポーリングモジュールの物理的規模を縮小することが可能になる。その他、図1及び図7等で説明したのと同様の作用効果を奏する。
以上説明した各種実施の形態によれば以下の作用効果を奏する。
割り込み要求出力機能を持たない回路モジュールに対して割り込み機能を容易に追加することができ、その割込み要求機能に高い汎用性を得ることができる。
半導体装置のハードウェアが確定した後、ソフトウェア開発者の要求により、フラグポーリングモジュールでアクセス可能なアドレス空間内であれば、自由に割り込み機能を追加することができる。
CPU2の負荷を低減することができる。CPUの負荷低減により、他のアプリケーションプログラムをより高速に動作させることができる。
内部バスのバストラフィックを低減することができる。バストラフィック低減により、他のモジュールへのデータ転送をより高速に行うことができる。
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
例えば、上記実施の形態ではCPUとプログラムメモリ(PGMMRY)とを専用バスで接続してある如く図示しているが本発明はそれに限定されず、共有バスを介して接続されてよい。プリグラムメモリは半導体装置とは別チップで外付けされていてもよい。半導体装置は1チップに限定されず、マルチチップであってもよく、また、そのマルチチップをモジュール基板に搭載して1個のパッケージに封止したモジュールデバイスとして構成されてもよい。半導体装置が備える回路モジュールは上記実施の形態に限定されず適宜変更可能であり、SOC(System On Chip)として構成される半導体装置の場合には必要なシステム構成に応じて構成されればよい。レジスタ構成やバスの構成も適宜変更可能であり、例えば上記では32ビット幅のバスを観測する場合を想定したが、64ビット幅のバスを観測する場合は、MSKREG,CMPREG,INTDREGを64ビットに拡張すればよい。バスのプロトコルも適宜選択可能であり、スプリット・トランザクション・バスだけでなく、バスマスタ間で排他的なバス権の調停を行う共通バス方式を採用してもよく、異なるバスプロトコルが混在していてもよい。
1,1A,1B,1C,1D マイクロコンピュータ(MCU)
2 中央処理装置(CPU)
3〜6、11 回路モジュール(MDLA〜MDLE)
6A 入出力ポート
7 コントローラ(INTC)
8 フラグポーリングモジュール(FPLNG)
9 プログラムメモリ(PGMMRY)
10 外部デバイス(EXTDEV)
12 メモリ
14 ディジタル信号処理プロセッサ(DSP)
CDMIN 共有領域
SDMIN 特定領域
DREG データレジスタ
IRQ1〜IRQ3 割り込み要求信号
IRQ3_1〜IRQ3_m 割り込み要求信号
INT 割込み信号
BUS1〜BUS3 バス
BRDGA,BRDGB バスブリッジ
STREG ステータスレジスタ
20 レジスタ部
21 アクセス部
22 比較部
23 割込み要求生成部
24 バスインタフェース部
ASREG アドレスセッティングレジスタ
PIREG ポーリングインターバルレジスタ
MSKREG1〜MSKREGn マスクレジスタ
CMPREG1〜CMPREGn コンペアレジスタ
INTDREG1〜INTDREGn 割込みディレクションレジスタ
30 バススレーブインタフェース(BSLVIF)
31 バスマスタインタフェース(BMSTIF)
RDREQ リードリクエスト
RDDAT リードデータ
WRREQ ライトリクエスト
WRRSP ライトレレスポンス
40 リードリクエスト生成部(RDREQGEN)
41 カウンタ(COUNT)

Claims (17)

  1. 中央処理装置と、
    割込み要求信号を受けて前記中央処理装置に割り込み信号を出力する割込みコントローラと、
    前記中央処理装置の制御を受けて動作する回路モジュールと、
    初期設定された内容に従って前記回路モジュールの内部状態を観測し、内部状態が前記初期設定された状態に一致したとき、当該一致に応ずる割込み要求信号を前記割り込みコントローラに出力するポーリング部と、を1個の半導体基板に有する半導体装置。
  2. 前記ポーリング部は、前記観測の対象を特定する情報が設定される対象指定レジスタ部と、前記観測の対象の期待値が設定される期待値レジスタ部と、前記観測のタイミングを指定する情報が設定されるタイミング指定レジスタ部と、のレジスタセットを有する請求項1記載の半導体装置。
  3. 前記ポーリング部は、前記タイミング指定レジスタ部に設定されたタイミングに従って、前記対象指定レジスタ部に設定された観測対象をリードアクセスするためのアクセス部と、
    前記アクセス部で得られたリードデータと前記期待値レジスタ部に設定された当該観測の対象の期待値とを比較する比較部と、
    前記比較部による比較結果の一致に基づいて対応する割込み要求信号を出力する割込み要求生成部と、を有する請求項2記載の半導体装置。
  4. 前記割り込み要求生成部は、割込み要求信号の出力端子を複数個有し、前記期待値毎にどの出力端子を用いて割込み要求信号を出力するかを選択するデマルチプレクサを有し、
    前記各レジスタセットは割り込み要求信号の出力端子を指定するための情報が設定される出力選択レジスタ部を更に有する、請求項3記載の半導体装置。
  5. 前記レジスタセットは中央処理装置のアドレス空間に配置されている、請求項4記載の半導体装置。
  6. 前記回路モジュールは前記半導体基板の外部から与えられる信号の状態に応じて値が変化されるフラグレジスタを有し、
    前記ポーリング部は、前記レジスタセットに設定された情報に従って前記フラグレジスタを前記観測の対象とすることが可能にされる、請求項5記載の半導体装置。
  7. 前記回路モジュールは前記中央処理装置とそれ以外のバスアクセス要求モジュールとによってアクセス可能にされる共有メモリであり、
    前記ポーリング部は、前記レジスタセットに設定された情報に従って前記共有メモリの特定記憶領域を前記観測の対象とすることが可能にされる、請求項5記載の半導体装置。
  8. 前記バスアクセス要求モジュールは前記中央処理装置と一緒にマルチプロセッサシステムを構成する別の中央処理装置である、請求項7記載の半導体装置。
  9. 前記バスアクセス要求モジュールは、前記半導体基板の外部から与えられるメッセージを前記共有メモリに書き込む外部インタフェース回路である、請求項7記載の半導体装置。
  10. 記回路モジュールは外部端子にインタフェースされるポートレジスタを有する外部入出力ポートであり、
    前記ポーリング部は、前記レジスタセットに設定された情報に従って前記ポートレジスタの特定記憶領域を前記観測の対象とすることが可能にされる、請求項5記載の半導体装置。
  11. 前記回路モジュール及び前記ポーリング部が接続されるバスと、前記中央処理装置が接続されるバスとの間には、バスブリッジが介在される、請求項1記載の半導体装置。
  12. 前記アクセス部は、バスアクセス制御機能を有するアクセラレータに接続され、前記リードアクセスに前記アクセラレータのバスアクセス制御機能を用いる、請求項3記載の半導体装置。
  13. 中央処理装置と、
    割込み要求信号を受けて前記中央処理装置に割り込み信号を出力する割込みコントローラと、
    前記中央処理装置の制御を受けて動作する回路モジュールと、
    前記中央処理装置によってアクセス可能なレジスタセットを有し、初期設定されたレジスタセットの内容に従って前記回路モジュールの内部状態を観測し、内部状態が前記初期設定された状態に一致したとき、当該一致に応ずる割込み要求信号を前記割り込みコントローラに出力するポーリング部と、を1個の半導体基板に有し、
    前記回路モジュールは前記半導体基板の外部から与えられる信号の状態に応じて値が変化されるフラグレジスタを有し、
    前記ポーリング部は、前記レジスタセットに設定された情報に従って前記フラグレジスタを前記観測の対象とすることが可能にされる、半導体装置。
  14. 中央処理装置と、
    割込み要求信号を受けて前記中央処理装置に割り込み信号を出力する割込みコントローラと、
    前記中央処理装置の制御を受けて動作する回路モジュールと、
    前記中央処理装置によってアクセス可能なレジスタセットを有し、初期設定されたレジスタセットの内容に従って前記回路モジュールの内部状態を観測し、内部状態が前記初期設定された状態に一致したとき、当該一致に応ずる割込み要求信号を前記割り込みコントローラに出力するポーリング部と、を1個の半導体基板に有し、
    前記回路モジュールは前記中央処理装置とそれ以外のバスアクセス要求モジュールとによってアクセス可能にされる共有メモリであり、
    前記ポーリング部は、前記レジスタセットに設定された情報に従って前記共有メモリの特定記憶領域を前記観測の対象とすることが可能にされる、半導体装置。
  15. 前記バスアクセス要求モジュールは前記中央処理装置と一緒にマルチプロセッサシステムを構成する別の中央処理装置である、請求項14記載の半導体装置。
  16. 前記バスアクセス要求モジュールは、前記半導体基板の外部から与えられるメッセージを前記共有メモリに書き込む外部インタフェース回路である、請求項14記載の半導体装置。
  17. 中央処理装置と、
    割込み要求信号を受けて前記中央処理装置に割り込み信号を出力する割込みコントローラと、
    前記中央処理装置の制御を受けて動作する回路モジュールと、
    前記中央処理装置によってアクセス可能なレジスタセットを有し、初期設定されたレジスタセットの内容に従って前記回路モジュールの内部状態を観測し、内部状態が前記初期設定された状態に一致したとき、当該一致に応ずる割込み要求信号を前記割り込みコントローラに出力するポーリング部と、を1個の半導体基板に有し、
    前記回路モジュールは外部端子にインタフェースされるポートレジスタを有する外部入出力ポートであり、
    前記ポーリング部は、前記レジスタセットに設定された情報に従って前記ポートレジスタの特定記憶領域を前記観測の対象とすることが可能にされる、半導体装置。
JP2009180470A 2009-08-03 2009-08-03 半導体装置 Expired - Fee Related JP5431823B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009180470A JP5431823B2 (ja) 2009-08-03 2009-08-03 半導体装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009180470A JP5431823B2 (ja) 2009-08-03 2009-08-03 半導体装置

Publications (2)

Publication Number Publication Date
JP2011034385A JP2011034385A (ja) 2011-02-17
JP5431823B2 true JP5431823B2 (ja) 2014-03-05

Family

ID=43763386

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009180470A Expired - Fee Related JP5431823B2 (ja) 2009-08-03 2009-08-03 半導体装置

Country Status (1)

Country Link
JP (1) JP5431823B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6260394B2 (ja) * 2014-03-27 2018-01-17 富士通株式会社 処理システム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2652998B2 (ja) * 1991-04-15 1997-09-10 日本電気株式会社 割込回路
JP4853951B2 (ja) * 2006-03-31 2012-01-11 ルネサスエレクトロニクス株式会社 データ処理装置

Also Published As

Publication number Publication date
JP2011034385A (ja) 2011-02-17

Similar Documents

Publication Publication Date Title
US7581054B2 (en) Data processing system
US9164951B2 (en) Multiprocessor system, execution control method and execution control program
US20120311266A1 (en) Multiprocessor and image processing system using the same
JP5829890B2 (ja) 半導体データ処理装置、タイムトリガ通信システム及び通信システム
JP4874165B2 (ja) マルチプロセッサシステム及びマルチプロセッサシステムにおけるアクセス権設定方法
US20110125948A1 (en) Multi-processor system and controlling method thereof
US10467007B1 (en) Core for controlling multiple serial peripheral interfaces (SPI's)
JP2007058716A (ja) データ転送バスシステム
GB2412767A (en) Processor with at least two buses between a read/write port and an associated memory with at least two portions
JP5431823B2 (ja) 半導体装置
US7310717B2 (en) Data transfer control unit with selectable transfer unit size
US5627968A (en) Data transfer apparatus which allows data to be transferred between data devices without accessing a shared memory
JPS63116236A (ja) 情報処理装置
US7254667B2 (en) Data transfer between an external data source and a memory associated with a data processor
JP2016015158A (ja) 半導体装置
JP2831083B2 (ja) マルチプロセッサシステムおよび割り込み制御装置
US7698494B2 (en) Access control device and access control method
JP2004199187A (ja) Cpu内蔵lsi
US20070150670A1 (en) Semiconductor integrated circuit
JP5805546B2 (ja) 半導体装置
US20100153610A1 (en) Bus arbiter and bus system
JP5630886B2 (ja) 半導体装置
JP5464676B2 (ja) 半導体装置
JPH11203253A (ja) 共有資源排他アクセス制御方式
JP2010049718A (ja) 半導体装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120521

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130812

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130822

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131017

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: 20131114

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131205

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

LAPS Cancellation because of no payment of annual fees