(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-08-07
(54)【発明の名称】セキュアメモリデバイスのためのグリッチ保護システムおよびリセットスキーム
(51)【国際特許分類】
G06F 21/55 20130101AFI20230731BHJP
H03K 17/22 20060101ALI20230731BHJP
【FI】
G06F21/55 380
H03K17/22 C
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023501099
(86)(22)【出願日】2021-07-02
(85)【翻訳文提出日】2023-03-06
(86)【国際出願番号】 US2021040222
(87)【国際公開番号】W WO2022010754
(87)【国際公開日】2022-01-13
(32)【優先日】2020-07-07
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2021-04-27
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】522029730
【氏名又は名称】インフィニオン テクノロジーズ エルエルシー
【氏名又は名称原語表記】Infineon Technologies LLC
【住所又は居所原語表記】198 Champion Court, San Jose, CA 95134, United States of America
(74)【代理人】
【識別番号】100114890
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100162880
【氏名又は名称】上島 類
(72)【発明者】
【氏名】エラン ゲヤリ
(72)【発明者】
【氏名】オレン シュロモ
(72)【発明者】
【氏名】ヤイール ソーファー
(72)【発明者】
【氏名】アブリ ハルシュ
【テーマコード(参考)】
5J055
【Fターム(参考)】
5J055AX00
5J055BX42
5J055CX27
5J055EY01
5J055EY21
5J055EZ50
5J055GX01
5J055GX02
5J055GX04
(57)【要約】
電圧グリッチから保護するためのシステムおよび方法が提供される。概して、システムは、供給電圧(VCC)およびパワーオンリセット(POR)ブロックに結合されたリセット検出器と、VCCおよびリセット検出器に結合されたグリッチ検出器と、を含む。VCCが最小未満に減少し、少なくとも第1の時間の間ローのままであるとき、リセット検出器は、信号をPORブロックに提供して、グローバルリセット信号を生成するように動作可能である。VCCが最小未満に減少し、少なくとも第2の時間の間ローのままであるとき、グリッチ検出器は、グリッチ信号をリセット検出器に提供し、リセット検出器が、信号をPORブロックに提供するように動作可能であり、第2の時間は、第1の時間より小さい。リセット検出器は、VCCが復旧するとき、グリッチ信号が受信されたことを取り消し、PORブロックに信号送信するように動作可能な保持回路をさらに含むことができる。他の実施形態も開示される。
【特許請求の範囲】
【請求項1】
供給電圧(VCC)およびパワーオンリセット(POR)ブロックに結合された第1のリセット検出器と、
前記供給電圧および前記第1のリセット検出器に結合されたグリッチ検出器と、
を備えるグリッチ保護システムであって、
前記供給電圧が、少なくとも第1の傾きの大きさ(第1のT
f)で最小供給電圧(VCC
MIN)未満に減少し、少なくとも第1の時間(第1のtpD)の間ローのままであるとき、前記第1のリセット検出器は、リセット(VRST_DET)信号を前記PORブロックに提供して、グローバルリセット信号を生成するように動作可能であり、
前記供給電圧が、少なくとも第2の傾きの大きさ(第2のT
f)でグリッチ電圧(VCC
GLITCH)未満に減少し、少なくとも第2の時間(第2のtpD)の間ローのままであるとき、前記グリッチ検出器は、グリッチ検出(GLTH_DET)信号を前記第1のリセット検出器に提供し、前記第1のリセット検出器が、前記VRST_DET信号を前記PORブロックに提供するように動作可能であり、
前記第2の時間は、前記第1の時間より小さく、VCC
GLITCHは、少なくとも前記第2の時間(第2のtpD)の間、VCC
MINより小さい、
グリッチ保護システム。
【請求項2】
前記第1のリセット検出器は、保持回路を備え、前記保持回路を通して、前記グリッチ検出器は、前記第1のリセット検出器に結合され、
前記供給電圧が前記第1のリセット検出器に復旧するとき、前記保持回路は、前記GLTH_DET信号が受信されたことを取り消し、前記第1のリセット検出器が、前記VRST_DET信号を前記PORブロックに提供するように動作可能である、
請求項1に記載のグリッチ保護システム。
【請求項3】
前記保持回路は、前記グリッチ検出器に結合されたゲートを有する複数のNMOSトランジスタを備え、前記複数のNMOSトランジスタは、並列に接続され、前記GLTH_DET信号が受信されるとき、前記第1のリセット検出器内の内部トリップ点ノードを放電する、
請求項2に記載のグリッチ保護システム。
【請求項4】
前記GLTH_DET信号は、十分な期間のパルス幅を有するパルスを備え、前記内部トリップ点ノードを0Vまで放電する、
請求項3に記載のグリッチ保護システム。
【請求項5】
前記第2の傾きの大きさ(第2のT
f)は、前記第1の傾きの大きさ(第1のT
f)より大きい、
請求項1に記載のグリッチ保護システム。
【請求項6】
前記第2の時間(第2のtpD)は、少なくとも20nsである、
請求項1に記載のグリッチ保護システム。
【請求項7】
前記グリッチ保護システムは、前記供給電圧および前記PORブロックに結合された電圧低下検出器(BOD)をさらに備え、
前記供給電圧が第3の傾きの大きさ(第3のT
f)でVCC
MIN未満に減少し、少なくとも第3の時間(第3のtpD)の間、BOD電圧(VCC
BOD)以下のままであるとき、前記BODは、前記PORブロックに信号送信し、前記グローバルリセット信号を生成するように動作可能であり、
前記第3の傾きの大きさは、前記第1の傾きの大きさより小さく、VCC
BODは、VCC
GLITCHより大きい、
請求項1に記載のグリッチ保護システム。
【請求項8】
前記グリッチ保護システムは、前記供給電圧に結合された第2のリセット検出器をさらに備え、
前記第1のリセット検出器および前記第2のリセット検出器は、ORゲートを通して前記PORブロックに結合され、前記第1のリセット検出器または前記第2のリセット検出器からの前記VRST_DET信号が、前記PORブロックに前記グローバルリセット信号を生成させるように動作可能である、
請求項1に記載のグリッチ保護システム。
【請求項9】
前記グリッチ検出器は、0V未満の負の供給電圧を含む、前記VCC
GLITCH未満の任意の供給電圧に対して前記GLTH_DET信号を提供するように動作可能である、
請求項1に記載のグリッチ保護システム。
【請求項10】
メモリと、
グリッチ保護システムと、
を備えるシステムであって、
前記グリッチ保護システムは、
供給電圧(VCC)およびパワーオンリセット(POR)ブロックに結合されたリセット検出器と、
前記供給電圧および前記リセット検出器に結合されたグリッチ検出器と、
を備え、
前記供給電圧が、少なくとも第1の傾きで最小供給電圧(VCC
MIN)未満に減少し、少なくとも第1の時間の間ローのままであるとき、前記リセット検出器は、リセット検出(RST_DET)信号を前記PORブロックに提供し、前記メモリに対してグローバルリセット信号を生成するように動作可能であり、
前記供給電圧が、少なくとも第2の傾きで前記VCC
MIN未満に減少し、少なくとも第2の時間の間ローのままであるとき、前記グリッチ検出器は、グリッチ検出(GLTH_DET)信号を前記リセット検出器に提供し、前記リセット検出器が、前記RST_DET信号を前記PORブロックに提供するように動作可能であり、
前記第2の時間は、前記第1の時間より小さい、
システム。
【請求項11】
前記リセット検出器は、保持回路を備え、前記保持回路を通して、前記グリッチ検出器は、前記リセット検出器に結合され、
前記供給電圧が前記リセット検出器に復旧するとき、前記保持回路は、前記GLTH_DET信号が受信されたことを取り消し、前記リセット検出器が、前記RST_DET信号を前記PORブロックに提供するように動作可能である、
請求項10に記載のシステム。
【請求項12】
前記保持回路は、前記グリッチ検出器に結合されたゲートを有する複数のNMOSトランジスタを備え、前記複数のNMOSトランジスタは、並列に接続され、前記GLTH_DET信号が受信されるとき、前記リセット検出器内の内部トリップ点ノードを放電する、
請求項11に記載のシステム。
【請求項13】
前記GLTH_DET信号は、十分な期間のパルス幅を有するパルスを備え、前記内部トリップ点ノードを0Vまで放電する、
請求項12に記載のシステム。
【請求項14】
前記グリッチ保護システムは、前記供給電圧および前記PORブロックに結合された電圧低下検出器(BOD)をさらに備え、
前記供給電圧が、第3の傾きでVCC
MIN未満に減少し、少なくとも第3の時間の間、BOD電圧(VCC
BOD)以下のままであるとき、前記BODは、前記PORブロックに信号送信し、前記グローバルリセット信号を生成するように動作可能であり、
前記第3の傾きは、前記第1の傾きより小さい、
請求項10に記載のシステム。
【請求項15】
前記メモリは、埋め込み不揮発性メモリ(eNVM)である、
請求項10に記載のシステム。
【請求項16】
セキュアメモリシステムにおいてサイドチャネル電圧グリッチ攻撃(SCA)から保護するための方法であって、前記方法は、
供給電圧(VCC)およびパワーオンリセット(POR)に結合された第1のリセット検出器を用いて、前記供給電圧をモニタするステップと、
前記供給電圧および第2のリセット検出器に結合されたグリッチ検出器を用いて、前記供給電圧を並行してモニタするステップと、
を含み、
前記供給電圧が所定の最小供給電圧(VCC
MIN)未満に減少し、少なくとも第1の時間の間ローのままであるとき、第1のリセット検出(RST_DET)信号を前記第1のリセット検出器から前記PORブロックに提供し、前記PORブロックに、グローバルリセット信号を生成させ、
前記供給電圧が所定のグリッチ電圧(VCC
GLITCH)未満に減少し、少なくとも第2の時間の間ローのままであるとき、グリッチ検出(GLTH_DET)信号を前記第2のリセット検出器に提供し、第2のRST_DET信号を前記第2のリセット検出器から前記PORブロックに提供し、前記PORブロックに、前記グローバルリセット信号を生成させ、
VCC
GLITCHは、VCC
MINより小さく、前記第2の時間は、前記第1の時間より小さい、
方法。
【請求項17】
前記GLTH_DET信号を前記第2のリセット検出器に提供することは、前記第2のリセット検出器内に前記GLTH_DET信号を保持することを含み、
前記第2のRST_DET信号を前記PORブロックに提供することは、前記供給電圧が前記第2のリセット検出器に復旧するとき、前記GLTH_DET信号が受信されたことを取り消すことを含む、
請求項16に記載の方法。
【請求項18】
前記GLTH_DET信号を保持するステップは、前記第2のリセット検出器内の内部トリップ点ノードを0Vまで放電するステップを含む、
請求項17に記載の方法。
【請求項19】
VCC
GLITCHは、0V以下である、
請求項16に記載の方法。
【請求項20】
前記第2の時間は、20nsである、
請求項16に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
この出願は、2021年4月27日に出願された米国仮特許出願第17/241,449号の国際出願であり、これは、2020年7月7日に出願された米国仮特許出願第63/048975号の特許法119(e)に従う優先権の利益を主張し、その両方は、参照によって本願明細書に完全に組み込まれる。
【0002】
技術分野
この開示は、セキュアメモリデバイスに関するものであり、特に、セキュアメモリデバイスにおいてサイドチャネル電圧グリッチ攻撃を検出し、当該攻撃から保護するためのシステムおよび方法に関するものである。
【背景技術】
【0003】
図1は、セキュアチップ100上のサイドチャネル電圧グリッチ攻撃(SCA)を示す概略ブロック図である。
図1を参照すると、SCAにおいて、ハッカーは外部ハードウェア102を用いて、チップの主供給電圧(VCC106)にグリッチ104を生じさせ、アナログおよび/またはデジタル回路および要素チップを、不安定にまたは異常な状況で動作させ、これにより、攻撃者は、セキュアチップのメモリ108内に記憶された機密データ、例えば、暗号化キーなどにアクセスすることができる。グリッチとは、VCCを、標準的な相補型金属酸化膜シリコン(CMOS)電圧レベルから0Vまでまたは負電圧までにさえ、非常に高速かつ非常に短く低下させ、その後再び、供給まで同様に急激に上昇させることを意味する。
図1に示すように、グリッチ104は、出力電圧をVCC106から、例えば、標準的なCMOS電圧から任意のレベル、負電圧にさえ、約20nsと同程度短い期間に降下させうる。SCAは、多くのセキュアシステムにとって、特に、セキュアな不揮発性またはフラッシュメモリシステムにとって、深刻な問題になっている。
【0004】
既存のセキュアチップは、典型的には、1つまたは複数の従来のパワーリセット回路、例えば、緩やかな速度または傾きで発生するVCCのより大きい減少を検出するように設計されたCMOS電圧レベルリセット検出器と、仕様によって制限される速度で発生するVCCのより小さい降下を検出するように設計された電圧低下検出器(BOD)と、を含む。両方の検出器は、概して、比較器レベルセンサを用いる。両方のタイプの検出器は、時間に基づき、リセットを開始する前に、トリップ点以下での長い電源切断時間(tpD)を必要とするので、上述したようにSCAの電圧グリッチを検出するには非常に遅くかつあまりに長い応答を有する。加えて、CMOS電圧レベルリセット検出器およびBODの両方は、セキュアチップと同じ回路において集積して形成され、供給電圧またはVCCの同じ降下を経験する。検出器は、グリッチイベントの間強制される極度の電圧条件の下で動作することができないので、この種のグリッチ攻撃を検出するのに失敗しうる。これは、CMOSデバイスを用いて作られる検出器(CMOS以下および/または負電圧で動作することができない)にとって、特に問題である。
【0005】
図2は、CMOS電圧レベルリセット検出器およびBODを用いた従来のパワーリセットスキームにおける典型的な電圧および信号のタイミング図を示す。特に、一番上の図のライン200は、従来のCMOS電圧レベルリセット検出器によって検出されるVCCの降下を表現し、次に、この降下は、RESET_PULSE204(一番下の図に示される)をトリガし、結果として、チップ上のすべての回路および素子の安全なリセットを生ずる。中央の図のライン202は、従来の電圧低下検出器(BOD)(図示せず)によって検出可能なVCCのより小さい降下を表現し、次に、この降下は、RESET_PULSE204をトリガする。
【0006】
図2を参照すると、従来のCMOS電圧レベルリセット検出器は、約1.7Vの所定の最小のCMOS VCC(VCC
MIN)から約0.7VのリセットVCC(VCC
rst)まで約40μs/1Vの負の傾きの大きさ(Tf
VCC)で、VCCの降下を検出することができ、少なくとも約25μsの比較的長いtpDの後、RESET_PULSE204をトリガすることに留意されたい。VCCが、約1.52Vのパワーオンリセット電圧(VCC
por)に回復するのに必要なさらなる時間の後まで、RESET_PULSE204がデアサートされないことにさらに留意されたい。
【0007】
同様に、
図2の中央の図に示すように、従来のBODは、約1.7VのVCC
MINからより穏やかまたはより低く落下する傾きの大きさ(Tf
BOD)で約1.45Vの電圧低下VCCトリップレベル(VCC
bod)までのVCCのより小さい降下を検出することができる。BODに必要な電源切断時間(tpD)は、概して、BOD内の抵抗キャパシタ(RC)フィルタ回路によってセットされ、例えば、典型的には、約300nsのオーダにある。
【0008】
したがって、セキュアメモリデバイスにおいてサイドチャネル電圧グリッチ攻撃を検出し、当該攻撃から保護するためのシステムおよび方法またはスキームの要求が存在する。グリッチ検出および保護システムならびに方法が既存のCMOS電圧レベルリセット検出器または電圧低下検出器に干渉しないことがさらに望ましく、さもないと、それが含まれるかまたは用いられるセキュアチップまたはメモリデバイスの動作に悪影響を与える。
【発明の概要】
【課題を解決するための手段】
【0009】
サイドチャネル電圧グリッチ攻撃を検出し、当該攻撃から保護するためのグリッチ保護システムおよび方法が提供される。概して、システムは、少なくとも、供給電圧(VCC)およびパワーオンリセット(POR)ブロックに結合された第1のリセット検出器と、供給電圧およびリセット検出器に結合されたグリッチ検出器と、を含む。供給電圧が、少なくとも第1の傾きの大きさ(第1のTf)で最小供給電圧(VCCMIN)未満に減少し、少なくとも第1の時間(第1のtpD)の間ローのままであるとき、リセット検出器は、VCCの降下を検出し、リセット検出(RES_DET)信号を提供し、PORブロックに、グローバルリセット信号を生成させるように構成されるかまたは動作可能であり、供給電圧が、少なくとも第2の傾きの大きさ(第2のTf)でVCCMIN未満に減少し、少なくとも第2の時間(第2のtpD)の間ローのままであるとき、グリッチ検出器は、グリッチ、すなわち、0Vまでまたは負電圧までさえの、VCCの非常に高速かつ短い降下を検出し、グリッチ検出(GLTH_DET)信号をリセット検出器に提供し、PORブロックに、グローバルリセット信号を生成させるように構成されるかまたは動作可能であり、第2の時間は、第1の時間より小さい。システムは、リセット検出器内の保持回路をさらに含むことができ、保持回路は、VCCがリセット検出器に復旧するとき、グリッチが検出されたことを取り消し、PORブロックにRES_DET信号を送信するように構成されるかまたは動作可能である。このようにして、グリッチ検出に応じて、グリッチ保護システムは、供給ランプおよびレベルのすべての条件の下で安全なリセットを実行し、チップ性能に影響を与えることなく、すべてのサイドチャネル電圧グリッチ攻撃に対して、用いられるチップを防御する。
【0010】
他の態様において、セキュアメモリシステムにおいてサイドチャネル電圧グリッチ攻撃(SCA)から保護するための方法が提供される。概して、方法は、供給電圧およびパワーオンリセット(POR)ブロックに結合されたリセット検出器を用いて、供給電圧(VCC)をモニタするステップを含み、供給電圧が、最小供給電圧(VCCMIN)未満に減少し、少なくとも第1の時間の間ローのままであるとき、リセット検出(RST_DET)信号をリセット検出器からPORブロックに提供し、グローバルリセット信号を生成する。同時に、または、並行して、供給電圧は、供給電圧およびリセット検出器に結合されたグリッチ検出器を用いてモニタされ、供給電圧がVCCMIN未満に減少し、少なくとも第2の時間の間ローのままであるとき、グリッチ検出(GLTH_DET)信号をリセット検出器に提供し、PORブロックに、グローバルリセット信号を生成させ、第2の時間は、第1の時間より小さい。最後に、セキュアメモリシステム内の回路は、PORブロックからのグローバルリセット信号に応答してリセットされ、このことにより、セキュアメモリシステムにおいてサイドチャネル電圧グリッチ攻撃(SCA)から保護する。
【0011】
いくつかの実施形態において、リセット検出器にGLTH_DETに信号を提供することは、GLTH_DET信号がリセット検出器において受信されたという「記憶」を保持することを含み、供給電圧がリセット検出器に復旧するとき、GLTH_DET信号が受信されたことを取り消し、リセット検出器が、RST_DET信号をPORブロックに提供するようにして、安全なPORを実行させる。GLTH_DET信号が受信されたことを保持および取り消すことは、リセット検出器に対する供給電圧を失う前に、リセット検出器内の内部トリップ点ノードを放電することを含むことができる。
【0012】
本発明の実施形態のさらなる特徴および利点、ならびに、本発明の種々の実施形態の構造および動作は、添付の図面を参照して以下に詳細に記載される。本発明が本願明細書において記載されている特定の実施形態に限定されるものではないことに留意されたい。この種の実施形態は、例示の目的のみのために本願明細書において提示される。追加の実施形態は、本願明細書に含まれる教示に基づいて、当業者に明らかであろう。
【0013】
以下、本発明の実施形態は、単なる例として、対応する参照符号が対応する部分を示す添付の概略図面を参照して記載される。さらに、本願明細書に組み込まれ、明細書の一部を形成する添付の図面は、本発明の実施形態を示し、説明とともに、本発明の原理を説明し、当業者が本発明を作成し使用することができるようにさらに機能する。
【図面の簡単な説明】
【0014】
【
図1】セキュアチップ上のサイドチャネル電圧グリッチ攻撃(SCA)を示す概略ブロック図である。
【
図2】従来のパワーリセットスキームにおける典型的な電圧および信号を示すタイミング図である。
【
図3】第1および第2のリセット検出器、ORゲート、電圧低下検出器およびグリッチ検出器を含むグリッチ保護システムの他の実施形態を示す概略ブロック図である。
【
図4】電力がリセット検出器に復旧するとき、グリッチが検出されたことを取り消すための保持回路を含むリセット検出器の一実施形態を示す概略図である。
【
図5】グリッチ検出および保護パワーリセットスキームの一実施形態の信号を示すタイミング図である。
【
図6】サイドチャネル電圧グリッチ攻撃(SCA)を検出し、当該攻撃から保護するためのグリッチ検出器を備えるグリッチ保護システムを含むシステムを動作する方法を示すフローチャートである。
【
図7】システムリセットサブシステムアナログ(SRSSA)ブロックを含む埋め込み不揮発性メモリ(eNVM)システムのブロック図であり、SRSSAブロックは、SCAからの保護のためのグリッチ検出器を含むグリッチ保護システムを有する。
【発明を実施するための形態】
【0015】
サイドチャネル電圧グリッチ攻撃またはサイドチャネル攻撃(SCA)を検出し、当該攻撃から保護するためのグリッチ保護システムおよび方法が開示される。
【0016】
以下の記載において、説明のために、多数の具体的な詳細は、本発明の完全な理解を提供するために記載される。しかしながら、本発明がこれらの具体的な詳細なしで実施されうることは、当業者に明らかである。他の例において、この説明の理解を不必要に不明瞭にすることを回避するために、周知の構造および技術は、詳細に示されないかまたはブロック図形式で示されない。
【0017】
明細書において、「一実施形態」に対する参照は、その実施形態に関連して記載されている特定の特徴、構造または特性が少なくとも本発明の一実施形態に含まれることを意味する。明細書の種々の場所に現れる「一実施形態において」というフレーズは、必ずしもすべて同一の実施形態を参照するというわけではない。本願明細書で用いられる結合に対する用語は、2つ以上の構成要素または要素を直接電気的に接続すること、および、1つまたは複数の介在する構成要素を通して間接的に接続することの両方を含みうる。
【0018】
図3を参照して、パワーリセット回路またはグリッチ検出器を含むグリッチ保護システムの実施形態が記載されている。
図3を参照すると、一実施形態において、グリッチ保護システム300は、安全なリセットおよびパワーオンリセット(POR)ブロック302または回路と、第1のリセット検出器304、例えば、相補型金属酸化膜シリコン(CMOS)電圧レベル(VCS)のリセット検出器と、第2のリセット検出器306と、ORゲート308と、電圧低下検出器(BOD310)と、グリッチ検出器312と、を含み、ORゲート308を通して、第1および第2のリセット検出器304、306は、PORブロック302に結合されている。
【0019】
安全なリセットおよびPORブロック302は、ORゲート308を通して、リセット検出器304、306の一方から、または、BOD310からシステムリセット信号を受信し、セキュアチップ(図示せず)上のアナログおよびデジタルまたは論理デバイスおよび回路に対して1つまたは複数のグローバルリセット信号を生成し、所定のPORシーケンスでデバイスおよび回路の電源を入れる。グリッチ保護システム300の重要な利点は、リセットを生じさせるイベントに関係なく、リセット信号が、第2のリセット検出器306を通してグリッチ検出器312から生じるか、第1のリセット検出器304から生じるか、ORゲート308を通るか、または、BOD310からかにかかわらず、PORシーケンスが同一であるということである。グリッチ保護システム300が実施されるかまたは含まれるデバイスまたはセキュアチップが、トリップ設定点を上回るグリッチイベントを含む任意のリセットイベントに対して実質的に同じ方法で電源が入ることを確実にするために、同じリセットPORシーケンスを用いることが望ましい。概して、PORシーケンスは、安全に電源を入れるシーケンスの間、アナログ回路および素子に対して所定の順序で電源供給をランプすることを含むアナログ部分またはシーケンスと、デバイス内のフラッシュアレイのようなメモリからデータをダウンロードすることから成るデジタル部分と、を含む。
【0020】
第1のリセット検出器304は、主電圧源(VCC)に結合され、ORゲート308を通してPORブロック302に結合される。第1のリセット検出器304は、少なくとも所定の第1の電源切断時間(第1のtpD)の間、所定の最小VCCトリップ設定点(VCCMIN)未満のレベルまでの少なくとも第1の傾きの大きさ(第1のTf)を有するVCCの比較的遅い降下を検出し、第1のリセット信号(VRST_DET)をORゲート308に提供するように構成されるかまたは動作可能である、次に、第1のリセット信号(VRST_DET)は、組み合わせたVRST_DET(COMB VRST_DET)をPORブロック302に提供し、PORシーケンスをトリガする。VCCの遅い降下とは、第1の傾きの大きさ(第1のTf)がグリッチイベントに起因して生ずると予想される傾きより小さいVCCの降下を意味し、VCCMINは、所定のグリッチ電圧(VCCGLITCH)またはトリップ設定点よりはるかに大きく、第1の電源切断時間(第1のtpD)は、グリッチ電圧の最小の予想される期間よりはるかに長い、または、約20nsより大きい。ORゲート308は、ゲートへの入力の一方または両方がハイである場合、ハイ出力(1)を提供するように構成されるかまたは動作可能である。ORゲート308の使用は、従来のリセット回路(図示せず)の既存のブロックまたは要素に、第2のリセット検出器306、グリッチ検出器312およびORゲート308を追加することにより、グリッチ保護システム300を実施可能にするという点で有利である。
【0021】
図3に示すように、グリッチ検出器312はまた、主電圧源(VCC)および第2のリセット検出器306に結合され、第2のリセット検出器を通してPORブロック302に結合される。グリッチ検出器312は、少なくとも所定の第2の電源切断時間(第2のtpD)の間、VCC
GLITCH以下のレベルまで降下する少なくとも第2の傾きの大きさ(第2のT
f)を有するVCCのグリッチを検出し、グリッチ検出信号(GLTH_DET)、例えば、パルス314を第2のリセット検出器306に提供することにより、第2のリセット検出器に、第2のVRST_DET信号をORゲート308に対して提供させるように構成されるかまたは動作可能であり、次に、第2のVRST_DET信号は、COMB VRST_DET信号をPORブロック302に提供し、PORシーケンスをトリガする。上述したように、VCC
GLITCHは、VCC
MINよりはるかに小さく、第2の電源切断時間(第2のtpD)は、第1の電源切断時間(第1のtpD)より小さく、第2の傾きの大きさ(第2のT
f)は、第1の傾きの大きさ(第1のT
f)より大きい。グリッチイベントの間、生ずる最小グリッチ電圧(VCC
GLITCH-MIN)は、0V未満となりうるので、VCC
GLITCH-MINは、0Vまたは負電圧を含むVCC
MIN未満の任意の電圧であるようにあらかじめ定義可能であることに留意されたい。
【0022】
グリッチ検出器312は、任意数のトランジスタ、スイッチング素子、増幅器および/または比較器を含むことができ、比較器は、少なくとも第2の電源切断時間(第2のtpD)の間、グリッチ電圧(VCCGLITCH)以下までの主電源電圧(VCC)の急激な降下を検出し、グリッチ検出信号(GLTH_DET)、例えば、パルス314を第2のリセット検出器306に提供するように構成されるかまたは動作可能である。概して、グリッチ検出器312は、1V/μs以上の速度で発生し、25μsから約20ns未満までの電源切断時間(第2のtpD)を有するVCCの降下を検出することができる。加えて、グリッチ検出器312は、最大CMOS電圧(VCCMAX)から最小グリッチ電圧(VCCGLITCH-MIN)までのVCCの降下を検出することができなければならず、最小グリッチ電圧は、0Vおよび0V未満の負の供給電圧を含むことができる。
【0023】
加えて、グリッチ保護システム300の検出器およびブロックは、概して、主電圧源によって電力供給され、同様にVCCのグリッチおよび降下を被るので、第2のリセット検出器306は、保持回路(以下に示されて、詳述される)をさらに含み、保持回路を通して、グリッチ検出器312は、第2のリセット検出器に結合され、保持回路は、供給電圧がパワーオンリセット電圧(VCCpor)超のレベルに復旧するとき、グリッチ検出信号が受信されたことを取り消し、第2のリセット検出器に、リセット信号(VRST_DET)をPORブロック302に提供させるように構成されるかまたは動作可能である。
【0024】
最後に、グリッチ検出器312は、グリッチ検出信号(GLTH_DET)、すなわち、わずか数ナノ秒(ns)から約10ns超までの十分な期間またはパルス幅を有するパルス314を提供できることが望ましく、これにより、信号は、第2のリセット検出器306において受信され、保持されることが確実になり、グリッチ検出器312、第2のリセット検出器306またはPORブロック302に対する電力損失が生じた場合、供給電圧がパワーオンリセット電圧(VCCpor)超のレベルに復旧するとき、COMB VRST_DET信号は、PORブロックに送信され、セキュアチップの安全なフルリセットが実行されることが確実になる。
【0025】
適切なグリッチ検出器は、例えば、2021年4月27日に出願された共通にアサインされた同時係属中の米国特許出願第17/241,447号(その全体が本願明細書において参照によって組み込まれる)に記載されているグリッチ検出器を含むことができる。
【0026】
BOD310は、主電圧源(VCC)と、ORゲート308の出力と、PORブロック302と、に結合される。BOD310は、電圧レベル比較器センサを含み、所定の時間にわたり発生するVCCのより小さい降下または基準電圧に対するVCCの降下を検出するように構成されるかまたは動作可能である。概して、BOD310は、第1のリセット検出器304またはグリッチ検出器312によって検出されるものより低い速度または傾きで発生する、VCCMINおよびVCCGLITCHより高い所定の最小電圧低下検出器(BOD)電圧(VCCBOD)までのVCCの降下を検出する。電圧低下イベント、すなわち、VCCBOD未満のレベルまでのVCCの降下が発生し、PORをトリガする所定の時間(電圧低下tpD)の間継続するとき、BOD310は、BODリセット信号(BOD_DET)をPORブロック302に提供するように構成されるかまたは動作可能である。BODが、スタンバイ中オフである間、すなわち、電圧低下が検出されないとき、ORゲート308の出力からのCOMB VRST_DET信号は、COMB VRST_DETとして、常にオン信号すなわち論理ハイ信号であり、したがって、BOD310の出力は、通常ラッチされる。BOD310がスタンバイモードである間、電源切断された場合、COMB VRST_DETは、BOD検出器のラッチの出力をリセットする。
【0027】
図4は、グリッチ検出信号(GLTH_DET)を受信する入力を有するリセット検出器400の一実施形態を示す概略図である。
図4を参照して、リセット検出器400は、インバータを含み、インバータは、主電圧源VCCとグラウンドとの間に直列に接続される、強いp型金属酸化膜シリコン(pMOS)トランジスタ402および弱いn型金属酸化膜シリコン(nMOS)トランジスタ404と、pMOSおよびnMOSトランジスタのゲートの間に形成されるトリップノード406と、から構成される。通常動作において、すなわち、VCC
MIN超の安定した主電圧源を有する動作において、トリップノード406は、VCCとグラウンドとの間に直列に接続される複数の弱いpMOSトランジスタ(集合的に408)および抵抗410によって形成される抵抗キャパシタ(RC)分圧器よってバイアスされる。抵抗410の抵抗は、比較的大きく、約5メガオームのオーダに選択され、通常動作の間、すなわち、リセットイベント、グリッチまたはVCCの遅い降下の前に、リセット検出器400による過剰な電流フローおよび電力消費を回避する。
【0028】
通常動作の間、トリップノード406は、高電圧または論理1であり、論理補数(コンプリメント)(Trip_B)は、遅延回路412およびインバータ414を通して結合され、論理ハイまたは1をリセット検出器400のVRST_DET出力に提供する。低レベルリセットイベントの間、すなわち、主供給電圧の遅く比較的長い降下によって生じるリセットの間、トリップノード406は、抵抗410を通してグラウンド(論理0)の方にゆっくり放電される。トリップノード406が十分に放電されるとき、強いpMOSトランジスタ402はオフにされ、弱いnMOSトランジスタ404はオンにされ、論理補数(Trip_B)を論理1に反転させ、遅延回路412による遅延の後、リセット検出器400は、VRST_DET信号(論理0)を出力し、これにより、供給電圧が、パワーオンリセット電圧(VCCpor)超のレベルに復旧するとき、PORブロック(図示せず)は、PORシーケンスを開始する。
【0029】
グリッチイベントの間、グリッチ検出(GLTH_DET)信号は、リセット検出器400において受信され、これにより、トリップノード406は、トリップセットポイント(論理0)まで急速に放電され、論理補数(Trip_B)を論理1に反転させ、遅延回路412による遅延の後、リセット検出器400は、論理0のVRST_DET信号を出力し、PORブロックにPORシーケンスを開始させる。
【0030】
いくつかの実施形態では、リセット検出器400は、リセット検出器400に対する電力の喪失後のリセット検出器400に対する電力の復旧時にグリッチイベントの記憶および取消を可能にする保持回路416をさらに含む。
図4に示す実施形態では、保持回路416は、弱いpMOSトランジスタ(集合的に408)のソース/ドレイン(S/D)接合とグラウンドとの間に並列に結合された複数のnMOSトランジスタ(集合的に418)を含むプルダウン回路であり、nMOSトランジスタ418のゲートに結合されたグリッチ検出(GLTH_DET)信号によって、トランジスタはオンにされ、トリップノード406を急速に放電し、リセット検出器400にVRST_DET信号を出力させ、結果として、PORブロックにPORシーケンスを開始させる。プルダウン回路のトランジスタは、nMOSであり、一旦グリッチ検出(GLTH_DET)信号によってオンにされると、複数のnMOSトランジスタ418はオンのままであり、電力がリセット検出器400に復旧するとき、トリップノード406に放電させ、このことにより、グリッチイベントが検出されたことを記憶するかまたは取り消し、PORブロックに信号送信し、フルPORシーケンスを実行し、セキュアチップまたはデバイスが、サイドチャネル電圧グリッチ攻撃またはサイドチャネル攻撃(SCA)から保護されることを確実にすることに留意されたい。VCCの復活時に、安全なリセットパルスは、リセット検出器400のグリッチ検出器入力に適用され、トリップノード406で、リセット検出器を以前の公称の設定点に復旧することができる。
【0031】
図5は、グリッチイベントの検出から生じるグリッチ保護システムにおける信号を示すタイミング図であり、
図5および
図6を参照して説明する。特に、
図5は、20nsのグリッチイベントの検出から生ずる信号を示す。
【0032】
図5を参照すると、初期時間(t0)において、一番上の図のライン502によって示されるVCCは、初期電圧レベル(VCC
MAX)から急激に降下を開始し、CMOSのための最小VCCレベル(VCC
MIN)を過ぎ、第1の時間(t1)に、グリッチ電圧(VCC
GLITCH)を通過し、グリッチイベントの電源切断時間が開始する。この時間に、かつ、所定の第2の電源切断時間(第2のtpD)またはグリッチイベントの幅が経過するまで、BODの出力(BOD OUT504)、グリッチ検出器に結合された第1のリセット検出器の出力(GLITCH VRST DET OUT506)、グリッチ検出器に結合されていない第2のリセット検出器の出力(VRST DET OUT508)、および、第1および第2のリセット検出器に結合されたORゲートの出力(COMBINED VRST DET OUT510)のすべては、通常状態において、すなわち、イベントが検出されていない状態において、不変のままである。グリッチ検出器の出力(GLTH DET OUT512)もまた、論理0でローのままである。
【0033】
約20nsに等しいものとしてここでは示される、所定の第2の電源切断時間(第2のtpD)およびグリッチイベントの幅に対応する第2の時間(t2)において、グリッチ検出器は、破線矢印514によって表現されるように、ハイまたは論理1のグリッチ検出信号(GLTH DET OUT512)を、グリッチ検出器に結合された第2のリセット検出器に出力する。概して、本実施形態で示されるように、グリッチ検出信号は、わずか数ナノ秒(ns)から約10ns超までのパルス幅を有するパルスである。グリッチ検出信号によって、第2のリセット検出器の出力(GLITCH VRST DET OUT506)は、第3の時間(t3)にローになり、フルPORリセットシーケンス516を開始または実行するために、PORブロックに信号送信する。実質的に同時に、GLITCH VRST DET OUT506は、破線矢印518によって表現されるように、ORゲートに結合され、それによって、ORゲートのCOMBINED VRST DET OUT510はローになる。COMBINED VRST DET OUT510は、破線矢印520によって表現されるように、BODに結合され、すぐその後、時間(t4)において、BODの出力(BOD OUT504)もローになる。最後に、時間(t3)において、GLITCH VRST DET OUT506およびCOMBINED VRST DET OUT510がローになってから所定の遅延(約300nsとしてここでは示される)の後、第5の時間(t5)において、PORリセットシーケンス516が完了し、GLITCH VRST DET OUT506およびCOMBINED VRST DET OUT510は、ハイの値に戻る。GLITCH VRST DET OUT506およびCOMBINED VRST DET OUT510がハイレベルに復旧すると、かつ、VCCが十分長い間BODトリップ点超のハイレベルに戻る場合、BOD OUTは、通常の出力に戻る。
【0034】
時間t0から時間t5までの全体にわたって、グリッチ検出器に結合されていない第2のリセット検出器の出力(VRST DET OUT508)がハイレベルのままであるのは、第2のリセット検出器が、グリッチ検出信号(GLTH DET OUT512)を受信せず、VCCの遅く長い降下が検出されなかったからであるということに留意されたい。
【0035】
VCC(ライン502)は、VCCGLITCH-MINの低レベルに到達した後、時間(t2)の前に、VCCMINより大きい通常レベルに戻ることを開始し、時間(t2)において、VCCGLITCHレベルに戻り、PORリセットシーケンス516が、GLITCH VRST DET OUT506およびCOMBINED VRST DET OUT510によって開始される前に、VCCMIN超になるということにさらに留意されたい。したがって、グリッチイベントの短い幅または期間のため、グリッチ検出器、BOD、リセット検出器、PORブロックまたはセキュアチップ上の他の回路のいずれも、完全に電源が切断されることはなく、それにもかかわらず、フルPORリセットシーケンス516が開始され、このことにより、セキュアチップをサイドチャネル電圧グリッチ攻撃(SCA)から保護する。
【0036】
図6のフローチャートを参照して、以下、セキュアシステムにおいてサイドチャネル電圧グリッチ攻撃(SCA)を検出し、当該攻撃から保護するためのグリッチ検出器を備えるグリッチ保護システムを含むシステムを動作する方法を説明する。
図6を参照すると、方法は、供給電圧およびパワーオンリセット(POR)ブロックに結合された第1のリセット検出器を用いて、供給電圧(VCC)をモニタするステップから開始する(ステップ602)。実質的に同時に、または、並行して、供給電圧は、VCCおよび第1のリセット検出器に結合されたグリッチ検出器を用いてモニタされる(ステップ604)。次に、供給電圧VCCが、所定の最小供給電圧(VCC
MIN)未満であり、少なくとも第1の時間(第1のtpD)の間ローのままであると決定される(ステップ606)。VCCが、第1のtpDより長い時間の間、VCC
MIN未満の場合、第1のリセット検出信号(RST_DET)は、PORブロックに提供され(ステップ608)、PORブロックを用いてグローバルリセット信号を生成し(ステップ610)、PORリセットスキームを実行する(ステップ612)。一旦VCCが回復し、戻った後、十分な所定期間の間ハイのままであると、リセットパルスは終了し、第1のリセット検出器およびグリッチ検出器を用いてVCCをモニタするプロセスが継続する(ステップ614)。
【0037】
第1のグリッチ検出器を用いてVCCを並行してモニタする間(ステップ602)、グリッチが検出される場合(ステップ616)、グリッチ検出信号は、生成され、第2のリセット検出器のグリッチ検出入力に提供され(ステップ618)、さもなければ、グリッチ検出器を用いてVCCをモニタするステップが継続する(ステップ604)。上述したように、供給電圧VCCがVCC
GLITCH未満に減少し、少なくとも第2の時間(第2のtpD)の間ローのままであるとき、グリッチは検出され、第2の時間は、第1の時間(第1のtpD)より小さく、概して、25μsから約20ns未満までである。加えて、VCCがグリッチイベントの間降下する速度または傾きは、概して、ステップ602および606において第1のリセット検出器によって検出される低いCMOSレベルイベントのためにVCCが降下する速度または傾きよりはるかに大きい。オプションで、または、好ましくは、第2のリセット検出器は、
図4に記載したような保持回路を含み、グリッチ検出信号は、第2のリセット検出器内に保持または記憶される(ステップ620)。上述したように、グリッチ検出信号は、トリップノード406をGNDに引くかまたは放電するために、保持回路416内の複数のシャントnMOSトランジスタ418を用いて、第2のリセット検出器内に保持または記憶可能である。VCCが復旧するとき(ステップ622)、第2のリセット検出器は、内部のトリップ点、例えば、
図4のトリップノード406は接地され、第2のRST_DET信号を生成し、第2のRST_DET信号は、次にPORブロックに提供され(ステップ608)、グローバルリセット信号は、PORブロックを用いて生成され(ステップ610)、PORリセットスキームが実行される(ステップ612)。一旦VCCが回復し、戻った後、十分な所定期間の間ハイのままであると、リセットパルスは終了し、第1のリセット検出器およびグリッチ検出器を用いてVCCをモニタするプロセスが継続する(ステップ614)。
【0038】
次に、VCCが回復したかが決定され(ステップ618)、VCCが回復した場合、リセット信号が生成され、第1のリセット検出器に結合され、保持回路をリセットし(ステップ620)、プロセスは、第1のリセット検出器を用いてVCCをモニタするステップ(ステップ602)、および、グリッチ検出器を用いてVCCをモニタするステップ(ステップ604)を継続する。
【0039】
図7は、埋め込みメモリ702、例えば、不揮発性メモリ(eNVM)またはフラッシュメモリ、システムリセットサブシステムアナログ(SRSSA)ブロック704を含むセキュアシステムまたはセキュアチップ700のブロック図であり、SRSSAブロック704は、サイドチャネル電圧グリッチ攻撃(SCA)に対する保護のためのグリッチ保護システム706を含む。
図7を参照すると、メモリ702は、複数のメモリアレイ、例えば、第1のメモリアレイ708および第2のメモリアレイ710を含み、各々は、不揮発性メモリセルのアレイを含み、各々は、セキュアチップ700上に集積して形成される処理回路712によって制御される。概して、メモリ702は、第1および第2のコントローラ714、716および電圧/電流供給ブロック718をさらに含み、第1および第2のコントローラ714、716は、各々、第1および第2のメモリアレイ708、710それぞれのための読取動作およびプログラムならびに消去動作のためのサポートを提供するように構成されるかまたは動作可能である。電圧/電流供給ブロック718は、電圧、電流および上記の異なる動作モードに利用されるデジタル信号/インジケータの範囲をメモリ702に提供するように構成されるかまたは動作可能である多目的混合信号ブロックである。
【0040】
SRSSAブロック704は、上述したものの1つのようなグリッチ保護システム706の一実施形態を含み、処理回路712に、および、メモリ702の各ブロックまたは回路に結合され、グローバルリセット信号を各ブロックまたは回路に提供し、イベントがリセットを生ずるかに関係なく、実質的に同一のPORリセットスキームを実行するように構成されるかまたは動作可能である。グリッチ保護システム706は、安全なリセットが供給ランプおよびレベルのすべての条件の下で実行されることを確実にし、セキュアチップ700を、セキュアチップまたはメモリ702の性能に影響を与えることなく、すべてのサイドチャネル電圧グリッチ攻撃から防御する。
【0041】
グリッチ保護システム706を含むSRSSAブロック704の構成要素は、メモリ702および処理回路712を有する同じセキュアチップ700上で、または、セキュアチップに結合された別々のチップ上で実施されてもよく、メモリおよび処理回路に対する主電圧源(VCC)をモニタするように構成されるかまたは動作可能であり、それらに対するグローバルリセット信号を提供するように構成されるかまたは動作可能である。
【0042】
したがって、主供給電圧(VCC)を0Vまでまたは負電圧まで低下させ、25μsから約20ns未満まで持続する急激かつ短い期間のサイドチャネル電圧グリッチ攻撃を検出し、当該攻撃から保護することができるグリッチ保護システム、および、これを動作する方法が開示されている。本発明の実施形態は、特定された機能およびその関係の実施を示す機能的かつ概略的なブロック図を用いて上述されている。これらの機能的な基礎的要素の境界は、説明の便宜のために本願明細書において任意に定義されている。特定された機能およびその関係が適切に実行される限り、代替の境界を定義することができる。
【0043】
特定の実施形態の上述した記載は、本発明の一般的な性質を十分に明らかにするので、他者は、当該技術分野の知識を適用することによって、本発明の一般的な概念から逸脱することなく、過度の実験を行うことなく、この種の特定の実施形態を種々の用途に容易に修正および/または適応させることができる。したがって、この種の適応および修正は、本願明細書において提示される教示および指針に基づいて、開示された実施形態の均等の意味および範囲内にあることが意図される。本願明細書における語法または用語は、説明のためであり、限定のためではなく、本願明細書の用語または語法は、教示および指針を考慮して当業者によって解釈されることを理解されたい。
【0044】
概要および要約の章ではなく、発明を実施するための形態の章が、請求項を解釈するために用いられることを意図することを理解されたい。概要および要約の章は、発明者によって意図される本発明のすべての例示的な実施形態ではなく、1つまたは複数を記載することができ、したがって、いかなる形であれ本発明および添付の請求項を限定することを意図するものではない。
【0045】
本発明の幅および範囲は、上述の例示的な実施形態のいずれによっても限定されるべきではなく、以下の請求項およびそれらの均等物に従ってのみ定義されるべきである。
【国際調査報告】