(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】特表2020-507176(P2020-507176A)
(43)【公表日】2020年3月5日
(54)【発明の名称】低速周辺機器のための中断処理方法及び装置
(51)【国際特許分類】
G06F 13/42 20060101AFI20200207BHJP
H03K 5/00 20060101ALI20200207BHJP
G06F 1/12 20060101ALI20200207BHJP
【FI】
G06F13/42 350B
H03K5/00 P
G06F1/12 510
【審査請求】未請求
【予備審査請求】未請求
【全頁数】15
(21)【出願番号】特願2019-562234(P2019-562234)
(86)(22)【出願日】2018年1月31日
(85)【翻訳文提出日】2019年9月30日
(86)【国際出願番号】US2018016206
(87)【国際公開番号】WO2018144583
(87)【国際公開日】20180809
(31)【優先権主張番号】15/420,267
(32)【優先日】2017年1月31日
(33)【優先権主張国】US
(81)【指定国】
AP(BW,GH,GM,KE,LR,LS,MW,MZ,NA,RW,SD,SL,ST,SZ,TZ,UG,ZM,ZW),EA(AM,AZ,BY,KG,KZ,RU,TJ,TM),EP(AL,AT,BE,BG,CH,CY,CZ,DE,DK,EE,ES,FI,FR,GB,GR,HR,HU,IE,IS,IT,LT,LU,LV,MC,MK,MT,NL,NO,PL,PT,RO,RS,SE,SI,SK,SM,TR),OA(BF,BJ,CF,CG,CI,CM,GA,GN,GQ,GW,KM,ML,MR,NE,SN,TD,TG),AE,AG,AL,AM,AO,AT,AU,AZ,BA,BB,BG,BH,BN,BR,BW,BY,BZ,CA,CH,CL,CN,CO,CR,CU,CZ,DE,DJ,DK,DM,DO,DZ,EC,EE,EG,ES,FI,GB,GD,GE,GH,GM,GT,HN,HR,HU,ID,IL,IN,IR,IS,JO,JP,KE,KG,KH,KN,KP,KR,KW,KZ,LA,LC,LK,LR,LS,LU,LY,MA,MD,ME,MG,MK,MN,MW,MX,MY,MZ,NA,NG,NI,NO,NZ,OM,PA,PE,PG,PH,PL,PT,QA,RO,RS,RU,RW,SA,SC,SD,SE,SG,SK,SL,SM,ST,SV,SY,TH,TJ,TM,TN,TR,TT
(71)【出願人】
【識別番号】390020248
【氏名又は名称】日本テキサス・インスツルメンツ合同会社
(71)【出願人】
【識別番号】507107291
【氏名又は名称】テキサス インスツルメンツ インコーポレイテッド
(74)【1名の代理人】
【識別番号】100098497
【弁理士】
【氏名又は名称】片寄 恭三
(72)【発明者】
【氏名】マネーシュ ソニ
(72)【発明者】
【氏名】ラジェーヴ スヴァルナ
(72)【発明者】
【氏名】ニクンジ カレ
【テーマコード(参考)】
5B077
【Fターム(参考)】
5B077GG13
5B077MM01
5B077MM02
(57)【要約】
記載される例は、中断処理回路要素(100)と、第2のクロック信号(SCLK)に従って動作される低速クロックドメイン回路(102)によって第1のクロック信号(FCLK)に従って動作される高速クロックドメイン回路(101)の中断を処理する方法を含み、中断生成器回路(110)が、第2のクロック信号(SCLK)に同期される中断入力信号(INT_IN)を生成し、中断クリア回路(114、116)が、第2のクロック信号(SCLK)に対して非同期に第1の回路(101)からの確認信号(ACK)に応答して中断生成器回路(110)を選択的にリセットする。
【特許請求の範囲】
【請求項1】
第1のクロック信号より遅い第2のクロック信号に従って動作される第2の回路によって前記第1のクロック信号に従って動作される前記第1の回路の中断を管理する中断処理回路であって、
中断処理回路であって、中断要求信号を受信するための第1の中断生成器入力と、中断クリア信号を受信するための第2の中断生成器入力と、前記第1の回路を選択的に中断するために前記中断要求信号に同期される中断入力信号を提供するための中断生成器出力とを含む、前記中断生成器回路、及び
前記第1の回路からの確認信号に応答して前記中断生成器回路をリセットするため前記中断クリア信号を選択的に提供するために前記第1のクロック信号に同期される出力を含む中断クリア回路、
を含む、中断処理回路。
【請求項2】
請求項1に記載の中断処理回路であって、
前記中断要求信号が、前記第2の回路によって中断が要求されていないことを示す第1の状態と、前記第2の回路によって中断が要求されていることを示す異なる第2の状態とを有し、
前記中断クリア信号が、第1の状態と、異なる第2の状態とを有し、
前記中断生成器出力が、第1の状態の前記中断クリア信号を受信する前記第2の中断生成器入力に応答して前記第1の状態の前記中断入力信号を提供するように、及び、前記中断クリア信号が第2の状態にあるとき前記第1の状態から前記第2の状態に遷移する前記中断要求信号に応答して異なる第2の状態の中断入力信号を提供するように構成され、
前記中断クリア回路が、前記第1の回路からの前記確認信号に応答して前記中断入力信号を前記第1の状態に設定するために前記中断生成器回路をリセットするために、前記第1の状態の前記中断クリア信号を選択的に提供するように構成される、
中断処理回路。
【請求項3】
請求項2に記載の中断処理回路であって、同期化回路を更に含み、
前記同期化回路が、前記中断入力信号を受信するために前記中断生成器出力に結合される入力と、前記第1の回路に中断出力信号を提供するために前記第1のクロック信号に同期される出力とを含む、
中断処理回路。
【請求項4】
請求項3に記載の中断処理回路であって、前記同期化回路が、
前記中断生成器出力に接続されるデータ入力と、前記第1のクロック信号を受信するために前記第1の回路に接続されるクロック入力と、出力とを含む第1のフリップフロップ、及び
第2のフリップフロップであって、前記第1のフリップフロップの前記出力に接続されるデータ入力と、前記第1のクロック信号を受信するため前記第1の回路に接続されるクロック入力と、前記第1の回路に同期される前記中断出力信号を提供するため前記第1の回路に接続される出力とを含む、前記第2のフリップフロップ、
を含む、中断処理回路。
【請求項5】
請求項4に記載の中断処理回路であって、
前記中断生成器回路が第3のフリップフロップを含み、前記第3のフリップフロップが、基準電圧に接続されるデータ入力と、前記中断要求信号を受信するために接続されるクロック入力と、前記中断クリア信号を受信するため前記中断クリア回路の前記出力に接続されるクリア入力と、前記中断入力信号を前記第1のフリップフロップの前記データ入力に提供するため前記中断生成器出力に接続される出力とを含む、
中断処理回路。
【請求項6】
請求項3に記載の中断処理回路であって、
前記中断生成器回路がフリップフロップを含み、前記フリップフロップが、基準電圧に接続されるデータ入力と、前記中断要求信号を受信するために接続されるクロック入力と、前記中断クリア信号を受信するため前記中断クリア回路の前記出力に接続されるクリア入力と、前記中断入力信号を前記同期化回路の前記入力に提供するため前記中断生成器出力に接続される出力とを含む、
中断処理回路。
【請求項7】
請求項2に記載の中断処理回路であって、
前記中断生成器回路がフリップフロップを含み、前記フリップフロップが、基準電圧に接続されるデータ入力と、前記中断要求信号を受信するために接続されるクロック入力と、前記中断クリア信号を受信するために前記中断クリア回路の前記出力に接続されるクリア入力と、前記中断入力信号を提供するため前記中断生成器出力に接続される出力とを含む、
中断処理回路。
【請求項8】
請求項7に記載の中断処理回路であって、
第2のフリップフロップを更に含み、前記第2のフリップフロップが、前記中断要求信号を受信するために前記第2の回路に接続されるデータ入力と、前記第2のクロック信号を受信するために接続されるクロック入力と、前記第2のクロック信号に同期される同期された中断要求信号を提供するための出力とを含む、
中断処理回路。
【請求項9】
請求項1に記載の中断処理回路であって、前記第1の回路、前記第2の回路、前記中断生成器回路、及び前記中断クリア回路が単一の集積回路において形成される、中断処理回路。
【請求項10】
第1のクロック信号より遅い第2のクロック信号に従って動作される第2の回路によって前記第1のクロック信号に従って動作される前記第1の回路の中断を管理する中断処理回路であって、前記中断処理回路が、
前記第1のクロック信号に対して同期して前記第1の回路を選択的に中断するための中断生成器回路、及び
前記第2のクロック信号に対して非同期に前記第1の回路からの確認信号に応答して前記生成器回路を選択的にリセットするための出力を含む中断クリア回路、
を含む、中断処理回路。
【請求項11】
請求項10に記載の中断処理回路であって、前記中断生成器回路の出力に結合される入力と、前記第1の回路に中断出力信号を提供するために前記第1のクロック信号に同期される出力とを含む同期化回路を更に含む、中断処理回路。
【請求項12】
請求項11に記載の中断処理回路であって、前記同期化回路が、
前記中断生成器回路の出力に接続されるデータ入力と、前記第1のクロック信号を受信するために前記第1の回路に接続されるクロック入力と、出力とを含む第1のフリップフロップ、及び
前記第1のフリップフロップの前記出力に接続されるデータ入力と、前記第1のクロック信号を受信するために前記第1の回路に接続されるクロック入力と、前記第1のクロック信号に同期される前記中断出力信号を提供するために前記第1の回路に接続される出力とを含む第2のフリップフロップ、
を含む、中断処理回路。
【請求項13】
請求項12に記載の中断処理回路であって、前記中断生成器回路が第3のフリップフロップを含み、
前記第3のフリップフロップが、基準電圧に接続されるデータ入力と、中断要求信号を受信するために前記第1の回路に接続されるクロック入力と、前記中断クリア回路から中断クリア信号を受信するために接続されるクリア入力と、前記中断生成器回路をリセットするための中断入力信号を選択的に提供するための出力とを含む、
中断処理信号。
【請求項14】
請求項10に記載の中断処理回路であって、フリップフロップを更に含み、
前記フリップフロップが、前記第2の回路から中断要求信号を受信するためのデータ入力と、前記第2のクロック信号を受信するために接続されるクロック入力と、前記第1の回路を選択的に中断するため、前記第2のクロック信号に同期される同期された中断要求信号を前記中断生成器回路に提供するための出力とを含む、
中断処理生成器回路。
【請求項15】
請求項10に記載の中断処理回路であって、前記第1の回路、前記第2の回路、前記中断生成器回路、及び前記中断クリア回路が、単一の集積回路に形成される、中断処理回路。
【請求項16】
第1のクロック信号より遅い第2のクロック信号に従って動作される第2の回路によって前記第1のクロック信号に従って動作される第1の回路の中断を管理する方法であって、前記方法が、
前記第2のクロック信号に同期される中断入力信号を生成すること、
前記中断入力信号に応答して前記第1の回路に中断出力信号を提供すること、及び
前記第1の回路からの確認信号に応答して前記第2のクロック信号に対して非同期に前記中断入力及び出力信号をクリアすること、
を含む、方法。
【請求項17】
請求項16に記載の方法であって、前記中断出力信号を前記第1のクロック信号に同期させることを更に含む、方法。
【請求項18】
請求項17に記載の方法であって、前記確認信号の前記第1のクロック信号の2サイクル以内に前記中断入力及び出力信号をクリアすることを更に含む、方法。
【請求項19】
請求項16に記載の方法であって、前記確認信号の前記第1のクロック信号の2サイクル以内に前記中断入力及び出力信号をクリアすることを更に含む、方法。
【請求項20】
請求項16に記載の方法であって、
前記第2の回路から中断要求信号を受信すること、
前記中断要求信号に応答して前記中断入力信号を生成すること、及び
前記第2のクロック信号に対して非同期に前記中断入力信号に応答して前記第1の回路に前記中断出力信号を提供すること、
を更に含む、方法。
【発明の詳細な説明】
【技術分野】
【0001】
電子回路及びシステムは、しばしば、様々なクロック速度で動作する複数の回路セグメント又はクロックドメインを含む。例えば、プロセッサ回路は、大抵、高クロック速度で動作し、ずっと低いクロック速度で動作する一つ又は複数の周辺機器回路と相互作用する。低速クロックドメイン回路は、高速クロックドメイン回路によるサービスのための中断(interrupt)サービス要求を生成することが多い。低速クロックドメイン回路からの中断をサービス及びクリアすることは、多くの高速クロックサイクルを要し得、高速クロックドメイン回路が他の中断をサービスすることができないことにつながる可能性がある。一例では、非常に遅い周波数(例えば、10〜100kHz)で動作する周辺機器回路からの中断が、1〜100MHz又はそれ以上の高クロックの周波数で動作するCPUによってサービスされる。高速クロックドメインプロセッサ回路又はCPUによって実行されるアプリケーションソフトウェアが、カウンタ値が所定の値に達することによってトリガされた中断に応答して、低クロック速度パルス幅変調(PWM)制御回路のレジスタに新しいカウンタ値を更新又は書き込む必要がある場合がある。以前の中断処理手法及び回路は、サービスしているCPUからのクリア要求を低速クロック信号に同期させ、及び/又は、中断要求をクリアするためにハンドシェークアプローチを用いる。この結果、周辺機器回路がクリア要求を受信し、中断要求信号を除去するまでに、二つ又はそれ以上の遅いクロックサイクルの遅延となる。この中断クリア遅延は、特に高速及び低速クロック速度の大きな差に対して著しい。10KHzの機能クロックで動作する周辺機器の場合、遅延は少なくとも200マイクロ秒であり、これは100MHzで動作するCPUにとって著しい。この時間の間、高速クロックドメインCPUは、同じサービスルーティングへの再エントリを回避するために待機しなければならない。また、初期の中断がクリアされる前に周辺機器回路内に別の中断事象が生じた場合、同じ周辺機器からの新しい中断事象が失われることになる。また、従来の中断処理回路及び手法は、ある程度のレイテンシを伴う中断要求を生成する。例えば、低速クロックドメイン中断生成条件は、立ち上がり低速クロックエッジに基づき得、中断要求信号は立ち上がり低速クロックエッジに従って生成されるか、又はその逆であり、低速クロック信号への同期化が、中断事象をサービスする際に更なる遅延をもたらす。
【発明の概要】
【0002】
記載される例は、低速クロックドメイン第2の回路による高速クロックドメイン第1の回路の中断を処理するための中断処理回路要素及び方法を含み、第1の回路は第1のクロック信号に従って動作し、第2の回路は第1のクロック信号より低速の第2のクロック信号に従って動作する。説明される中断処理回路が、中断入力信号を生成する中断生成器回路と、第2のクロック信号に対して非同期に第1の回路からの確認信号に応答して中断生成器回路をリセットする中断クリア回路とを含む。
【0003】
特定の例において、中断生成器回路は、中断要求信号を受信するための第1の入力と、中断クリア信号を受信するための第2の入力と、第1の回路を選択的に中断するために中断要求信号に同期される中断入力信号を提供するための出力とを含む。一例における中断クリア回路は、第1の回路からの確認信号に応答して中断生成器回路をリセットするための中断クリア信号を提供するために、第1のクロック信号に同期される出力を含む。
【0004】
より低速の第2のクロック信号に従って動作される第2の回路によって第1のクロック信号に従って動作される第1の回路の中断を管理する方法を説明する。この方法は、第2のクロック信号に同期される中断入力信号を生成すること、中断入力信号に応答して第1の回路に中断出力信号を提供すること、第1の回路からの確認信号に応答して第2のクロック信号に対して非同期に中断入力及び出力信号をクリアすることを含む。
【図面の簡単な説明】
【0005】
【図1】低速クロックドメイン第2の回路による高速クロックドメイン第1の回路の中断を管理するように構成される中断処理回路を示す概略図である。
【0006】
【図2】高速及び低速クロック速度の任意の比に対する図1の回路における動作信号を示す信号図である。
【0007】
【図3】高速及び低速クロック速度の1つの例示的な比に対する図1の回路における動作信号を示す信号図である。
【0008】
【図4】ミスした中断事象を有するハンドシェーキング確認中断処理手法を示す信号図である。
【0009】
【図5】同期化遅延を有する中断生成を示す信号図である。
【0010】
【図6】低速ドメイン回路による高速ドメイン回路の中断を管理するためのプロセス又は方法を図示するフローチャートである。
【発明を実施するための形態】
【0011】
図面において、全体を通して同様の参照番号は同様の要素を示し、種々の特徴は必ずしも一定の縮尺で描いてはいない。本説明において、「結合する」という用語は、間接的又は直接的な電気的又は機械的接続又はそれらの組み合わせを含む。例えば、第1のデバイスが第2のデバイスに結合するか、又は第2のデバイスと結合される場合、その接続は、直接電気的接続を介し得、又は一つ又は複数の介在デバイス及び接続を介した間接的電気的接続を介し得る。
【0012】
記載される例は、集積回路と、より遅い第2のクロック信号に従って動作される第2の回路によって第1のクロック信号に従って動作される第1の回路の中断を管理するための中断処理回路要素及びプロセスとを含む。記載された手法は、第1及び第2のクロックドメイン又は回路が、互いに非同期又は同期であり得る異なるクロック速度に従って動作される、種々の異なる応用例において用いられ得る。また、本記載される例は、単一の集積回路の第1及び第2のクロックドメイン回路に関連して、又は個別のIC上の高速及び低速クロックドメイン回路又はその組み合わせに対して用いられ得る中断処理回路要素及び方法を提供する。
【0013】
図1は、中断処理回路100と、第1の回路101(図ではF‐D CKTと記される「高速ドメイン回路」)と、第2の回路102(図1ではS‐D CKTと記される「低速ドメイン回路」)とを含むシステムを示す。第1及び第2の回路101及び102は、それぞれ、異なった第1及び第2のクロック信号のFCLK及びSCLKに従って動作する。回路101及び102は個別の集積回路(IC)において形成することもでき、又は、単一の集積回路上の複数の回路ともし得る。回路101、102は、対応するクロック信号FCLK、SCLKに従ったオペレーションを介する2つの個別のクロックドメインの一部である。クロック信号FCLK及びSCLKはすべての実施例の厳密な要件ではないが、クロック位相及び/又はクロック周波数に関して互いに独立して動作し得る。第1のクロック信号FCLKは、回路ノード103上の第1の回路101のクロックソース(図示せず)によって提供され、クロック信号SCLKは、ノード105上の第2の回路102のクロックソース(図示せず)によって提供される。第2のクロック信号SCLKは、この例において第1のクロック信号FCLKよりも遅い。
【0014】
中断処理回路100は、中断生成器回路110と、同期化回路120と、第1の回路101によってサービスされる第2の回路102に関連する中断事象のシグナリング及びクリアを管理する中断クリア回路114、116とを含む。この例において、中断生成器回路110は、入力104及び105並びに出力118を含み、第1のクロック信号のFCLKに対して同期して第1の回路101を選択的に中断する。中断クリア回路114、116は、フリップフロップ116と、ANDゲート114と、第1の回路101からの確認信号ACKに応答して中断生成器回路110をリセットする中断クリア信号CLEARを選択的に提供するために第1のクロック信号FCLKに同期される出力115とを含む。また、中断クリア回路114、116は、第2のクロック信号のSCLKに対して非同期に中断生成器回路110をクリア又はリセットする。このようにして、中断処理回路100は、従来の中断クリア回路に関連する同期化遅延を軽減又は回避し、中断生成器回路110による第2の回路102からの更なる中断への応答を容易にする。
【0015】
オペレーションにおいて、第2の回路102は、中断生成器回路110への入力としてノード104上に中断要求信号IRを提供する。第2の回路102はまた、中断生成器回路をリセットするためリセット信号NRESET_SCLKを提供する出力ノード108を含む。中断生成器回路110は、同期化回路120への入力としてノード118において中断入力信号入力INT_INを提供する。同期化回路120は、第1の回路101に接続されるノード128において中断出力信号IN_OUTを提供する。次に、第1の回路101は、中断をサービスし、中断クリア回路114、116への入力として提供される、回路ノード130上の確認信号ACKを生成する。中断クリア回路114、116は、中断入力信号INT_INをクリアするため、ノード115において中断クリア信号CLEARを生成する。
【0016】
従来の高速/低速クロックドメイン中断処理回路及び手法は、典型的に、中断要求シグナリングにレイテンシ又は遅延を導入し、低速クロックドメインクリア信号同期化に起因する著しい遅延を受け、これは、中断のサービス及びクリアにおける遅延、及び潜在的に中断事象が失われるか又はミスされることにつながる恐れがある。
【0017】
第1の問題に対処するため、著しいレイテンシなしに中断を生成し得る解決策を提供する。この例では、中断生成器回路110は、このケースではデータ又は「D」フリップフロップである中断フラグ又は中断生成器フリップフロップ112を含み、これは、フリップフロップ106から受信した回路ノード111上の同期された中断要求信号SET_FLAGに従って中断入力信号INT_INを生成する。フリップフロップ106は、ノード104からの中断要求信号IRをデータ入力として受信し、低速クロックノード105に接続されるクロック入力を含む。オペレーションにおいて、第2の回路102は、アクティブハイ状態の中断要求信号IRを活性化し、フリップフロップ106は、低速クロック信号SCLKの次の立ち上がりエッジで、ハイ状態のノード111上の信号SET_FLAGを生成する。中断生成器フリップフロップ112のデータ(D)入力は、論理ハイ信号(図1における「1」)に接続され、フリップフロップ112のクロック入力は、同期された中断要求信号SET_FLAGをノード111から受信するように接続される。ANDゲート114は、フリップフロップ112のクリア入力CLRZにCLEAR信号を提供して、第1の回路101からの確認信号ACKに応答して中断生成器回路110を選択的にリセットする。
【0018】
中断生成器出力118は、ローの第1の状態の中断クリア信号CLEARを受信する第2の中断生成器入力115に応答して、ローの第1の状態の中断入力信号INT_INを提供する。出力118は、中断クリア信号CLEARがハイの第2の状態にあるとき、ローハイ遷移及び同期された中断要求信号SET_FLAGに応答して、ハイの第2の状態の中断入力信号INT_INを提供する。CLEAR信号がハイであるとき、フリップフロップ112は、中断要求信号IRがハイ状態でアサートされたとき、低速クロック信号SCLKの立ち上がりエッジ時又はその直後に、アクティブハイ状態の中断入力信号INT_INを生成する。このようにして、中断要求信号SET_FLAGは、準安定性の問題を回避又は緩和するために、フリップフロップ106によって第2のクロック信号のSCLKに同期される。中断生成回路要素110は、図5に関連して以下に説明するようにハーフサイクル又はフルサイクル同期化遅延を被ることが多い、その他の中断生成回路要素と比較して著しい利点を提供する。回路110は、有利にも、第2の回路102から受信した中断要求信号IRの立ち上がりエッジに対してタイムリーに中断入力信号INT_INをアサートする。
【0019】
中断クリア回路114、116は、第1の回路101からの確認信号ACKに応答して、中断クリア信号CLEARを低レベルの第1の状態で提供して、中断生成器回路110をリセットして、中断入力信号INT_INを低レベルの第1の状態に設定する。この例において、フリップフロップ116はDフリップフロップであり、データ入力「D」は、確認信号ACKを受信するためにノード130に接続され、クロック入力が、第1のクロック信号FCLKを受信するためにノード103に接続される。フリップフロップ116の出力「Q」は、図1に示すように、ノード113上にクリアフラグ信号CLR_FLAGを提供するように接続される。ANDゲート114は、反転入力を介してCLR_FLAG信号を受信し、ノード108を介して第2の回路102からリセット信号NRESET_SCLKを受信する。ANDゲート114へのこの第2の入力は、第2の回路102がANDゲート114をリセットすることを可能にする。他のあり得る実装において、ANDゲート114を省くことができ、CLR_FLAG信号が中断生成器フリップフロップ112のCLRZ入力に直接的に提供され得る。オペレーションにおいて、クリア回路要素114、116は、第2のクロック信号SCLKに関連する遅延を同期させることなくハイに向かうACK信号に応答してフリップフロップ112を迅速にクリアし、中断入力信号INT_IN及び中断出力信号INT_OUTを低速クロック信号SCLKに対して非同期的にローにする。このようにして、第1の回路101が保留中の中断をサービスすると、保留中の中断信号INT_OUTは迅速にクリアされ、したがって、第1の回路101は、第2の回路102からの更なる後続の中断を受信し、適切にサービスし得る。
【0020】
この例において、中断処理回路100は同期化回路120も含む。オペレーションにおいて、回路120は、中断生成器回路110によって生成されたINT_IN信号に関する準安定性の問題を回避するために、高速の第1のクロック信号FCLKに対して中断入力信号INT_INを迅速に同期させる。同期化回路120は、中断入力信号INT_INを受信するために中断生成器出力118に結合される入力と、中断出力信号INT_OUTを第1の回路101に提供するために第1のクロック信号FCLKに同期される出力128とを含む。この例において回路120は、中断生成器出力118に接続されるデータ入力Dを有する第1のフリップフロップ122と、第1のクロック信号FCLKを受信するように接続されるクロック入力とを含む。第1の同期フリップフロップ122の出力124(Q)は、ノード103において第1のクロック信号FCLKに接続されるクロック入力も有する第2の同期フリップフロップ126のデータ入力Dに接続される。第2の同期フリップフロップ126の出力Qは、第1の回路101に接続されて、第1のクロック信号FCLKに同期される中断出力信号INT_OUTを提供する。同期化フリップフロップ122及び126は、各々、第1の回路101によって回路ノード132上に提供されるリセット信号NRESET_FCLKを受け取るように接続されるアクティブローのクリア入力CLRZを含む。
【0021】
図2は、高速及び低速クロック速度の任意の比のための図1の中断処理回路100における動作信号を図示する信号図200を示す。この例において、第2のクロック信号SCLKの2つの例示的なサイクルがカーブ(curve)202として示され、FCLKカーブ204が、任意の数の高速クロック信号遷移を有し得、第1及び第2のクロック信号FCLK及びSCLKは、クロック速度及び位相関係に関して互いに対して完全に非同期とし得る。図2において分かるように、中断生成器回路110のフリップフロップ106は、第2のクロック信号SCLK(カーブ202)の立ち上がりエッジで第2の回路102からの中断要求信号IRの立ち上がりエッジに応答して、SET_FLAG信号(カーブ206)アクティブハイをアサートする。中断生成器回路110は、中断入力信号INT_INを生成し、同期化回路120はこの信号を同期化し、第2のクロック信号SCLKに対して非同期に2つのFCLKサイクル内で中断出力信号INT_OUT(カーブ210)において立ち上がりエッジを生成する。高速ドメインの第1の回路101が、関連する中断サービスルーチンを完了すると、第1の回路101はノード130において確認信号ACKをアサートし、これにより、中断クリアフリップフロップ116にアクティブハイデータ入力が提供される。第1のクロック信号FCLKの次の立ち上がりエッジで、フリップフロップ116は、クリアフラグ信号CLR_FLAG(アクティブハイ、図2のカーブ208)をアサートする。この信号遷移は、信号生成器フリップフロップ112をクリアし、中断入力信号INTをローに向かわせる。同期化回路120は、この立ち下がりエッジ遷移を2つの高速クロックサイクル内に同期化して、中断出力信号INT_OUTの立ち下がりエッジを引き起こす。このようにして、中断処理回路要素100は、確認信号ACKの2つのFCLKサイクル内に第1のクロック101に提供される中断信号INT_OUTを効果的にクリアする。
【0022】
図3は、高速及び低速クロック速度の1つの例示的な比(例えば、約8)について、図1の回路における動作信号を示す。この例において、低速ドメイン(第2の)回路102は、高速ドメインCPU又はプロセッサ第1回路101によるPWMタイマー周辺機器サービスである。この例において、高速ドメインCPUは、電力コンバータ信号(図示せず)のパルス幅を制御するため閉ループ制御応用例において、PWM制御周辺機器第2回路102にカウンタ値を提供する。周辺機器第2回路102は、カウント値をデクリメントし、カウント値が所定の値(例えば、本実装において「1」)に達すると、中断要求信号IRを発行する。図3におけるカーブ302は低速クロック信号SCLKを図示し、カーブ304は、PWMタイマー/カウンタデータ値を概略的に図示し、このケースでは、初期的に値3、2、1、0とデクリメントし、その後、高速クロックドメインCPUによって別の値2に再プログラムされる。その後、周辺機器パルス幅変調タイマー第2回路102は、この値2から1にデクリメントし、その後、再び0にデクリメントする。この例において、カーブ306は、フリップフロップ106からのSET_FLAG信号出力を図示し、カーブ308が、高速ドメインクロック信号FCLKを図示し、カーブ310が、同期化回路120からの中断出力信号INT_OUTを図示し、カーブ312が、フリップフロップ116からのCLEAR_FLAG信号を示す。この例において第2の回路102は、カウンタ値が「1」に達することに応答して中断要求信号をアサートする。図3において分かるように、中断出力信号INT_OUTは、SET_FLAG信号の立ち上がりエッジの2つの高速クロックサイクル内で立ち上がりエッジ遷移を受ける。中断出力信号に応答して、第1の回路101は、中断サービスルーチン又はプロセスを開始する。第1の回路101が中断サービスを完了すると、第1の回路101は確認信号ACKをアサートし、フリップフロップ116は、カーブ312として示されるCLEAR_FLAG信号において立ち上がりエッジを生成する。CLEAR_FLAG信号遷移は、中断生成器フリップフロップ112をクリアし、同期化回路120は、2つの高速クロックサイクル内で中断出力信号INT_OUT(カーブ310)において、結果として生じる立ち下がりエッジを生じさせる。
【0023】
図2及び図3の例は、第2の回路102に関連する(例えば、2つの高速クロックサイクルにおける)中断事象の出現の第1の回路101の迅速な通知に関する中断処理回路100の有利なオペレーションを図示する。また、回路100は、第1の回路101による確認信号ACKのアサートに応答して、(例えば、2つの高速クロックサイクル内で)中断信号の高速非同期クリアを提供する。上述した中断処理回路要素101のこれらの迅速な応答利点は、図2及び図3に示すような著しい利点を提供する。また、これらの利点は、速いクロック速度と遅いクロック速度との間の比が増大される場合により顕著である。したがって、記載された回路及び手法の利点は、比較的遅いクロック速度の第2の回路102と相互作用する、高速CPU又は他の高速クロックドメイン回路要素に関連して特定の有用性を見出す。
【0024】
図4は、ミスした中断事象を備える、ハンドシェーキング確認中断処理手法を示す信号図400を提供する。図4におけるカーブ402は、例示的な低速クロック信号(図4においてLOW CLOCKと記される)を図示し、カーブ404が、PWMタイマー周辺機器におけるカウンタ又はタイマー値(PWM DATA)の別の例を図示し、カーブ406が、PWMタイマー周辺機器から高速クロックドメインプロセッサ回路への中断信号(INTERRUPT)を図示し、カーブ408が、例示的な高速クロック信号(FAST CLOCK)を示す。図4のカーブ410は、高速クロック信号に同期される中断信号を示し、カーブ412が、高速クロックドメイン回路からの例示的な中断クリア事象を示す。更なるカーブ414が、低速クロック信号に同期される中断クリア事象信号を図示し、カーブ416が、周辺機器回路から高速クロックドメイン回路への中断クリア事象確認ハンドシェーキング信号を図示する。図4の信号は、高速及び低速クロックドメイン回路要素間の従来のハンドシェーキング/確認ベースの中断処理の不利な結果を図示する。カーブ404及び406に見られるように、例えば、遅いドメイン回路102は、カウンタ値が「1」に達することに応答して中断信号IRを生成し、後続の高速ドメイン回路中断サービスルーチンは、遅いドメインPWMカウンタ値を「2」に再プログラムする。しかしながら、(カーブ412、414、及び416に示される)低速の第2のクロック信号への中断クリア事象の同期化は、中断シグナリング(カーブ414の立ち下がりエッジ)を実際に終了させるために信号(カーブ406の立ち下がりエッジ)を提供する際に著しい同期化遅延をもたらす。暫定遅延において、この例では、PWMカウンタ値は再度1に遷移しているが、高速クロックドメイン回路は、この第2の中断事象に応答して適切にサービスすることができない。図1〜図3に関連して上述したように、上述の中断処理回路要素100は、中断要求シグナリングの迅速な非同期クリアを有利に提供し、それによって、図4に図示された欠点を回避又は緩和するために高速クロックドメイン回路101による適切な中断サービス処理を助ける。
【0025】
図5は、高速中断要求信号生成に関する中断処理回路要素100の利点を図示する信号図500を提供する。図5は、低速クロック信号SCLKを図示するカーブ502と、PWMのタイマー周辺機器カウンタ値を図示するカーブ504と、異なるレイテンシの生成された中断信号を図示するカーブ506、508、510とを含む。特に、カーブ506は、低速クロック信号サイクルの半分に対応するハーフサイクルレイテンシを有する中断信号(例えば、高速クロックドメインサービス回路に提供されるINTHL)を図示し、カーブ508は、フルの低速クロックサイクルレイテンシを有する中断信号のINTFLを図示する。対照的に、カーブ510は、上述した図1(INT_OUT)において中断生成器110及び同期化器120によって提供される高速中断生成を示す。前述のように、以前の解決策は同期化回路要素(図示せず)を用いて、ハーフサイクル遅延(たとえば、カーブ506)又はフル低速クロックサイクル遅延(カーブ508)を導入する、低速クロック回路要素における中断事象に関連するシグナリングを同期させる。対照的に、上述の回路100は、低速クロックドメイン同期化器を用いず、中断要求信号SET_FLAGを、非同期ロジックが完全に含まれるように信号INT_OUTとして高速クロックドメインに同期された後、中断要求ラインとして搬送する。この点に関し、ノード111上のSET_FLAG信号は、中断入力信号INT_INを生成するフリップフロップ112へのクロックとして用いられ、回路要素110、120は、低速クロックドメインにおいていかなる不利益もなしに中断出力信号INT_OUTを生成する。
【0026】
図6は、第1のクロック信号より遅い第2のクロック信号に従って動作される第2の回路(例えば、回路102)によって第1のクロック信号に従って動作される第1の回路(例えば、上述の回路101)の中断を管理する方法600を示す。方法600は、上述の回路100など、又は他の回路要素(図示せず)における、任意の好適な中断処理回路要素を用いて実装され得る。602において、第2のクロック信号に同期される中断信号が生成される。一例において、上述の低速クロックドメイン回路102は、フリップフロップ106を介してSCLK信号に同期されるSET_FLAG信号を中断生成器フリップフロップ112に提供する。これは、遅いクロックドメインレイテンシを伴わずに、602において中断入力信号INT_INを生成する(例えば、上述の図5のカーブ506及び508に示される遅延を回避する)。
【0027】
604及び606において、中断出力信号が、中断入力信号に応答して第1の回路101に提供される。上述した例では、図6における604において、中断生成器フリップフロップ112が中断入力信号INT_INを同期化回路120に提供し、同期化回路120は、高速クロック信号FCLKに同期して、606において中断出力信号INT_OUTを第1の回路101に提供する。608において、第1の回路は、高速クロック信号FCLKに同期される確認信号(例えば、上述のACK)を提供する。方法600は、610において中断入力及び出力信号をクリアすることを更に含む。いくつかの例において、INT_IN及びINT_OUT信号は、確認信号ACKに応答して、クリア回路要素114、116によって第2のクロック信号SCLKに対して非同期にクリアされる。回路100において、中断入力及び出力信号INT_IN及びINT_OUTは、クリアフリップフロップ116が確認信号ACKを受信した後、第1のクロック信号FCLKの2サイクル内に迅速にクリアされる。
【0028】
記載される例は、高速クロックドメインにおいて生成されるクリア事象信号の低速クロックドメイン同期化を用いる他の解決策に比して著しい応答時間利点を提供する。図4に示すように、そのような代替解決策は、高速クロックドメイン回路要素に提供される中断信号を実際にクリアする前に、同期化のために2つの追加の低速クロックサイクルを消費する。これに対し、記載された回路要素100及び方法600は、低速クロック信号SCLKに非同期的に低速クロックドメインにおいて生成された中断をクリアすることによって、そのような追加の中断クリアレイテンシ又は遅延を回避する。例えば、回路100において、高速クロックドメイン回路101からのクリア事象信号ACKを非同期的に用いて、中断入力信号INT_INを生成する同じフリップフロップ112をクリアして、低速クロックドメインにおける何の不利益もなく、中断出力信号INT_OUTを確実にクリアする。中断生成のため、説明された回路及び方法は、同期化回路120を用いて高速クロック信号FCLKに対して同期して中断出力信号INT_OUTを搬送して、クリアなシグナリングを保証し、如何なる非同期経路(例えば、準安定性)も回避する。この同期化は実際には、特に第1のクロック速度が低速クロック速度より著しく高い場合に、小さな遅延である。また、記載された回路100は、高速クロックドメインに完全に同期されるように最終的な中断ラインを依然として維持しながら、高速非同期クリア経路を実装する。
【0029】
本発明の特許請求の範囲内で、説明した例示の実施例に改変が成され得、他の実施例が可能である。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【国際調査報告】