(57)【要約】【課題】適切なアクセスを保証する不揮発性メモリを提供する。【解決手段】少なくとも１つの実施形態に応じて、システム・オン・チップ（ＳＯＣ）上のオンボードアナログ−デジタル変換器（ＡＤＣ）が、不揮発性メモリ（ＮＶＭ）のチャージポンプ出力が正確であるか否かを判定するのに利用される。ＳＯＣは、起動手順の次のステップに移行する前に出力が予想される範囲内に入るまで待機するように指示される。最大許容起動時間を超過した場合、アプリケーションが反応することができるように、エラー信号がＳＯＣに送信される。【選択図】図１
2014102831.tif 000002
【特許請求の範囲】
【請求項１】
方法であって、
不揮発性メモリ（ＮＶＭ）に対するチャージポンプを始動すること、
アナログ−デジタル変換器を用いて前記チャージポンプの出力を監視すること、
前記アナログ−デジタル変換器を用いて前記出力が所定の範囲内にあることを検出したことに応答して前記ＮＶＭがアクセスされることを可能にすることを備える、方法。
【請求項２】
前記チャージポンプの前記出力を監視することは、
前記出力が前記所定の範囲内に入るためにさらなる時間を許容することをさらに含む、請求項１に記載の方法。
【請求項３】
前記アナログ−デジタル変換器は、前記出力を測定するために前記チャージポンプと共通のダイ上に集積される、請求項１に記載の方法。
【請求項４】
前記チャージポンプの前記出力を監視することは、
前記ＮＶＭのソフトリセットを実行することをさらに含む、請求項１に記載の方法。
【請求項５】
前記チャージポンプの前記出力を監視することは、
前記チャージポンプの動作パラメータを変更するステップをさらに含む、請求項１に記載の方法。
【請求項６】
前記アナログ−デジタル変換器を用いて前記出力が前記所定の範囲内にないことを検出したことに応答して、エラー・ステータス・メッセージを発行することをさらに備える、請求項１に記載の方法。
【請求項７】
前記エラー・ステータス・メッセージを発行することは、
前記エラー・ステータス・メッセージをコントローラに発行することをさらに含む、請求項６に記載の方法。
【請求項８】
方法であって、
不揮発性メモリ（ＮＶＭ）クロックを始動することであって、該ＮＶＭクロックはＮＶＭのチャージポンプの動作に影響を与える、前記始動すること、
前記ＮＶＭのチャージポンプを始動すること、
アナログ−デジタル変換器（ＡＤＣ）を使用して前記ＮＶＭのチャージポンプの適切なチャージポンプ出力を検証すること、
前記適切なチャージポンプ出力が検証された後に前記ＮＶＭの設定を進めることを備える、方法。
【請求項９】
前記適切なチャージポンプ出力は、前記ＮＶＭのビット・セル・アレイのビットセルに対してメモリ動作を実行するために該ビットセルに適用される、請求項８に記載の方法。
【請求項１０】
前記ＡＤＣを使用して前記適切なチャージポンプ出力を検証することは、
反復して前記ＮＶＭのチャージポンプのチャージポンプ出力を測定し、測定値を所定の範囲と比較することを含む、請求項８に記載の方法。
【請求項１１】
反復して前記ＮＶＭのチャージポンプの前記チャージポンプ出力を測定し、前記測定値を前記所定の範囲と比較することは、
最大起動時間を超過したことに応答して、前記チャージポンプ出力の反復測定を中断してエラー・ステータス・メッセージを発行することを含む、請求項１０に記載の方法。
【請求項１２】
反復して前記ＮＶＭのチャージポンプの前記チャージポンプ出力を測定し、前記測定値を前記所定の範囲と比較することは、
最大起動時間を超過したことに応答して、前記チャージポンプ出力の反復測定を中断して代わりにエラー・ステータス・メッセージをコントローラに発行することを含む、請求項１０に記載の方法。
【請求項１３】
前記チャージポンプ出力が所定の範囲内の値に達するためにさらなる時間を許容することをさらに備える、請求項８に記載の方法。
【請求項１４】
前記チャージポンプの動作パラメータを反復して調整するステップをさらに備える、請求項１０に記載の方法。
【請求項１５】
装置であって、
不揮発性メモリ（ＮＶＭ）ビット・セル・アレイと、
チャージポンプであって、該チャージポンプの出力は前記ＮＶＭビット・セル・アレイに結合されて出力電圧を前記ＮＶＭビット・セル・アレイに供給する、前記チャージポンプと、
アナログ−デジタル変換器（ＡＤＣ）モジュールであって、該ＡＤＣモジュールは前記出力に結合されている、前記ＡＤＣモジュールと、
コントローラであって、該コントローラは前記ＡＤＣモジュールに接続され、該コントローラは、該コントローラに前記チャージポンプの動作を開始させ、前記ＡＤＣモジュールから前記チャージポンプの前記出力の測定値を取得させ、該測定値を許容可能範囲と比較させ、該測定値が前記許容可能範囲内にあることに応答して、前記ＮＶＭビット・セル・アレイへのアクセスの開始を許可させるように構成されるロジックを含む、前記コントローラとを備える、装置。
【請求項１６】
前記コントローラは、前記測定値が前記許容可能範囲内にないことに応答して、前記ＡＤＣモジュールを使用して前記チャージポンプの前記出力の前記測定値の取得を反復する、請求項１５に記載の装置。
【請求項１７】
前記コントローラは、前記測定値が前記許容可能範囲内にないことに応答して、前記チャージポンプに、前記チャージポンプの出力の前記測定値が前記許容可能範囲内に入るためにさらなる時間を許容する、請求項１６に記載の装置。
【請求項１８】
前記コントローラは、前記測定値が前記許容可能範囲内にないことに応答して、前記チャージポンプのソフトリセットを実行する、請求項１６に記載の装置。
【請求項１９】
前記コントローラは、前記測定値が前記許容可能範囲内にないことに応答して、前記チャージポンプの動作パラメータを調整する、請求項１６に記載の装置。
【請求項２０】
前記チャージポンプの動作パラメータは、前記チャージポンプが動作するクロック周波数、および前記チャージポンプの出力レベルから成る群から選択される、請求項１９に記載の装置。
【請求項２１】
前記コントローラは、最大起動時間を超過したことに応答して、エラー・ステータス・メッセージを発行する、請求項１６に記載の装置。
【請求項２２】
前記チャージポンプに結合されているクロック出力を有するクロックをさらに備え、
前記コントローラが該クロックの動作を開始し、該クロックのクロックレートが許容可能なクロックレートでない場合には、前記チャージポンプの前記出力の前記測定値は前記許容可能範囲内にないことになる、請求項１５に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、概して電子デバイスに関し、より具体的には、メモリを有する電子デバイスに関する。
【背景技術】
【０００２】
システムの動作を制御するのに使用されるファームウェアまたは動作パラメータは、不揮発性メモリ（ＮＶＭ）内に記憶され、システムが動作する準備のためにＮＶＭからロードされ得る。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許第６４２４５７０号明細書
【特許文献２】米国特許第６６４２７５７号明細書
【特許文献３】米国特許第６７７４７１０号明細書
【特許文献４】米国特許第７４１８６０４号明細書
【特許文献５】米国特許第６９３７５１７号明細書
【特許文献６】米国特許第７７７２９１０号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００４】
起動プロセスにおける過渡故障状態または他のエラーに起因してＮＶＭが予期される時間に誤情報を提供する場合のように、システム起動プロセスの間にＮＶＭ内に記憶されている設定情報が適切に取り出されない場合、システムは適切に動作しない場合がある。そのように、メモリ動作とシステムの残りの部分の動作とが協調できていないことによって、システムが誤った設定情報による動作を試み、故障する可能性がある。
【課題を解決するための手段】
【０００５】
本発明の一側面は、方法であって、不揮発性メモリ（ＮＶＭ）に対するチャージポンプを始動すること、アナログ−デジタル変換器を用いて前記チャージポンプの出力を監視すること、前記アナログ−デジタル変換器を用いて前記出力が所定の範囲内にあることを検出したことに応答して前記ＮＶＭがアクセスされることを可能にすることを備える。
【０００６】
本発明の一側面は、方法であって、不揮発性メモリ（ＮＶＭ）クロックを始動することであって、該ＮＶＭクロックはＮＶＭチャージポンプの動作に影響を与える、前記始動すること、前記ＮＶＭチャージポンプを始動すること、アナログ−デジタル変換器（ＡＤＣ）を使用して前記ＮＶＭチャージポンプの適切なチャージポンプ出力を検証すること、前記適切なチャージポンプ出力が検証された後に前記ＮＶＭの設定を進めることを備える。
【０００７】
本発明の一側面は、装置であって、不揮発性メモリ（ＮＶＭ）ビット・セル・アレイと、チャージポンプであって、該チャージポンプの出力は前記ＮＶＭビット・セル・アレイに結合されて出力電圧を前記アレイに供給する、前記チャージポンプと、アナログ−デジタル変換器（ＡＤＣ）モジュールであって、該ＡＤＣモジュールは前記出力に結合されている、前記ＡＤＣモジュールと、コントローラであって、該コントローラは前記ＡＤＣモジュールに接続され、該コントローラは、該コントローラに前記チャージポンプの動作を開始させ、前記ＡＤＣモジュールから前記チャージポンプの前記出力の測定値を取得させ、該測定値を許容可能範囲と比較させ、該測定値が前記許容可能範囲内にあることに応答して、前記ＮＶＭビット・セル・アレイへのアクセスの開始を許可させるように構成されるロジックを含む、前記コントローラとを備える。
【図面の簡単な説明】
【０００８】
【図１】少なくとも１つの実施形態に応じた、ＮＶＭ装置を示すブロック図。
【図２】少なくとも１つの実施形態に応じた、アナログ−デジタル変換器（ＡＤＣ）モジュールを使用したＮＶＭの起動のための方法を示すフローチャート。
【図３】少なくとも１つの実施形態に応じた、アナログ−デジタル変換器（ＡＤＣ）モジュールを使用したＮＶＭの起動のための方法を示すフローチャート。
【図４】少なくとも１つの実施形態に応じた、アナログ−デジタル変換器（ＡＤＣ）モジュールを使用したＮＶＭの起動のための方法を示すフローチャート。
【図５】少なくとも１つの実施形態に応じた、ＮＶＭ装置内に実装されるアナログ−デジタル変換器（ＡＤＣ）モジュールを使用したＮＶＭの起動のための方法を示すフローチャート。
【発明を実施するための形態】
【０００９】
本発明は、添付の図面を参照することによってよりよく理解されることができ、その特徴が当業者に明らかとなる。
異なる図面において同じ参照符号が使用されている場合、これは類似または同一の項目であることを示す。
【００１０】
少なくとも１つの実施形態に応じて、システム・オン・チップ（ＳＯＣ）のような集積回路のオンボードアナログ−デジタル変換器（ＡＤＣ）モジュールが、不揮発性メモリ（ＮＶＭ）のチャージポンプ出力が、所望の電圧のような指定パラメータ内にあるか否かを判定するのに利用される。集積回路は、ＮＶＭに関わる起動手順の次のステップに移行する前にチャージポンプ出力が予想される範囲内に入るまで待機するように指示される。チャージポンプ出力が予想される範囲に達することなく最大許容起動時間を超過した場合、アプリケーションが反応することができるように、エラー信号がＳＯＣに送信される。
【００１１】
チャージポンプ出力は、メモリ読み出し、消去、およびプログラム動作のようなメモリ動作を実行するのに適切な電圧関係を提供するためにメモリアレイによって使用される。チャージポンプを正しく上昇させることが、ＮＶＭの起動、読み出し、消去、およびプログラム動作の適切な実行を保証する助けとなる。起動中の適切なチャージポンプの動作が、ＮＶＭを通常動作のためにさらに構成するのに使用されるパラメータ値を記憶するＮＶＭメモリセルの適切なアクセスを保証する。そのようなＮＶＭメモリセルの適切なアクセスは、パラメータ値のような設定情報が、たとえ起動プロセス中に発生する過渡故障状態または他のエラーに起因して、ＮＶＭが予期される時間に誤情報を提供する場合であっても、システム起動プロセス中に適切に取り出されることを可能にして、システム動作に対する悪影響が回避される。メモリ動作とシステムの残りの部分の動作との協調を保証することによって、システムは、有効な設定情報によって動作し、故障を回避することが保証され得る。従って、少なくとも１つの実施形態に応じて、起動中にチャージポンプが適切に動作することを保証することによって、システム信頼性が強化されることができる。
【００１２】
図１は、少なくとも１つの実施形態に応じた、ＮＶＭ装置を示すブロック図である。ＮＶＭ装置１００は、チャージポンプ１０１と、比較器１０２と、Ｄフリップフロップ１０３と、アナログ−デジタル変換器（ＡＤＣ）モジュール１０４と、抵抗器１０５および１０６から成る分圧器と、コントローラ１１６と、アプリケーション１１９と、ビット・セル・アレイ１２１と、ＮＶＭクロック１２７と、ＮＶＭコントローラ１２４とを備える。チャージポンプ１０１は接続１２０を介してビット・セル・アレイ１２１に接続されている。チャージポンプ１０１は接続１２２を介してＮＶＭコントローラ１２４に接続されている。チャージポンプ１０１は接続１２８を介してＮＶＭクロック１２７に接続されている。ＮＶＭクロック１２７は接続１２９を介してＮＶＭコントローラ１２４に接続されている。ＮＶＭクロック１２７はＮＶＭ構成要素の動作を制御するためのクロック信号を供給する。一例として、ＮＶＭクロック１２７は、ＮＶＭチャージポンプ１０１の制御電圧を制御するためにクロック信号を供給することができる。別の例として、ＮＶＭクロック１２７は、ＮＶＭビット・セル・アレイ１２１へのアクセスを制御するためのクロック信号を供給することができる。さらに別の例として、ＮＶＭクロック１２７は、ＮＶＭコントローラ１２４を動作させるためのクロック信号を供給することができる。ビット・セル・アレイ１２１は接続１２３を介してＮＶＭコントローラ１２４に接続されている。ＮＶＭコントローラ１２４は接続１２５を介してＡＤＣモジュール１０４にも接続されてもよい。チャージポンプ１０１は、本明細書においてはＶＯＵＴとも称される出力電圧を、ノード１０７においてビット・セル・アレイ１２１および抵抗器１０５の第１の端子に供給する、ＶＯＵＴとラベリングされている出力を含み、ＡＤＣモジュール１０４のアナログ入力にも接続されてもよい。ビット・セル・アレイ１２１は、メモリ動作、たとえば、メモリ読み出し動作、メモリ消去動作、メモリ書き込み動作などのうちの少なくとも１つを実行するためのビットセルのノード間の電圧差を制御するためにノード１０７における出力電圧ＶＯＵＴを使用してもよい。抵抗器１０５の第２の端子はノード１０８において抵抗器１０６の第１の端子および比較器１０２の第１の入力に接続され、ＡＤＣモジュール１０４の入力にも接続されてもよい。抵抗器１０６の第２の端子は、ノード１０９においてグランドに接続されている。従って、ＡＤＣモジュール１０４は、少なくとも１つの実施形態に応じて、ノード１０７を介してチャージポンプ１０１の出力電圧Ｖｏｕｔからの入力を受信してもよく、または、少なくとも１つの実施形態に応じて、抵抗器１０５および１０６によって形成されている分圧器の中央からの入力を受信してもよい。
【００１３】
比較器１０２の第２の入力１１０は基準電圧Ｖｒｅｆに接続されている。比較器１０２の正供給電圧入力１１１は正供給電圧Ｖｄｄに接続されている。負供給電圧入力１１２は負供給電圧Ｖｓｓに接続されている。比較器１０２の出力１１３はチャージポンプ１０１のポンプイネーブル入力ＰＭＰＥＮおよびＤフリップフロップ１０３のクロック入力に接続されている。正供給電圧ＶｄｄはＤフリップフロップ１０３のデータ入力１１１に接続されている。Ｄフリップフロップ１０３の非反転出力Ｑは、ＲＥＧＵＬＡＴＩＯＮ  ＯＫ出力信号をコントローラ１１６に供給するために、ノード１１４を介してコントローラ１１６に接続されている。コントローラ１１６はノード１３０を介してＤフリップフロップ１０３のクリア入力に接続され、コントローラ１１６がＤフリップフロップ１０３をクリア状態にリセットすることが可能である。
【００１４】
バス１１５は、ＡＤＣモジュール１０４をコントローラ１１６に接続する。コントローラ１１６はロジック１２６を備える。ロジック１２６は、たとえば、有限状態機械（finite state machine）として、または別の例として、論理動作を備えるファームウェアとして実装されてもよく、ファームウェアは、少なくとも１つの方法を実行するために、プロセッサ、たとえば、コントローラ１１６上で実行されてもよい。他の実施形態において、コントローラ１１６は、配線接続回路（hard-wired circuit）であってもよい。少なくとも１つの実施形態に応じて、ＡＤＣモジュール１０４は制御サブシステム１１７内でコントローラ１１６と一体化される。コントローラ１１６は、接続１１８を介してアプリケーション１１９に接続されている。アプリケーション１１９は、ＮＶＭを備える製品のエンドユーザに機能を提供するためにプロセッサ上で実行される命令ベースのプログラムコードである。プロセッサは、たとえば、汎用プロセッサまたは専用プロセッサであってもよい。プロセッサは、ＮＶＭと同じ半導体ダイ上に（たとえば、システム・オン・チップ（ＳＯＣ）内に）集積されてもよく、または別個のデバイスとして実装されてもよい。図１に示す実施形態において、プロセッサ１３１はプロセッサであり、プロセッサはアプリケーション１１９を実行する。少なくとも１つの実施形態に応じて、アプリケーション１１９によるＮＶＭビット・セル・アレイ１２１へのアクセスは、たとえば、プロセッサ１３１に信号を供給することによって、チャージポンプ出力の測定値が、ＮＶＭがアクセスされる準備ができたことを示すまで、アプリケーション１１９の実行を抑制するロジック１２６によって制御されてもよい。一例として、信号は、プロセッサ１３１にアプリケーション１１９の実行を抑制させてもよく、または、別の例として、アプリケーション１１９は、信号の状態をチェックして、ＮＶＭがアクセスされる準備ができるまで自身の実行を遅延させることが可能であってもよい。
【００１５】
ＮＶＭビット・セル・アレイ１２１は、ユーザ情報および設定情報を含むデータを不揮発的に（たとえば、電力がＮＶＭから除去されてもデータが失われないように）記憶する。ＮＶＭコントローラ１２４は、たとえば、ＮＶＭビット・セル・アレイ１２１へのアクセスを制御し、ＮＶＭチャージポンプ１０１の動作を制御して、ＮＶＭの動作を制御する。
【００１６】
ＮＶＭチャージポンプ１０１は少なくとも１つの制御電圧をＮＶＭビット・セル・アレイ１２１に提供し、少なくとも１つの制御電圧はＮＶＭビット・セル・アレイ１２１によって指定されることができる。少なくとも１つの制御電圧は、たとえば、メモリ読み出し動作、メモリ書き込み動作、メモリ消去動作などのようなＮＶＭに対するメモリ動作を実行するために使用されてもよい。制御サブシステム１１７は、ＮＶＭチャージポンプ１０１の動作の監視、ならびに、ＮＶＭチャージポンプ１０１のステータスのＮＶＭコントローラ１２４およびアプリケーション１１９への信号伝達を提供する。制御サブシステム１１７において、ＡＤＣモジュール１０４はＮＶＭチャージポンプ１０１の出力の測定値を提供し、コントローラ１１６はＡＤＣモジュール１０４によって提供された測定値に基づいてＮＶＭの制御機能を提供する。コントローラ１１６内で、ロジック１２６はコントローラ１１６の動作を指示する。
【００１７】
抵抗器１０５および１０６から成る分圧器は、ＮＶＭチャージポンプ１０１の出力に存在する電圧の、ＡＤＣモジュール１０４の入力に適合するレベルへのスケーリングを提供して、ＡＤＣモジュール１０４がＮＶＭチャージポンプ１０１の出力を直接測定するのに十分な範囲を有しない事象を補償する。比較器１０２は、抵抗器１０５および１０６から成る分圧器によって提供されるスケーリングされた電圧を基準電圧１１０と比較し、ＮＶＭチャージポンプ１０１をイネーブルおよびディセーブルし、ノード１１１における供給電圧をＤフリップフロップ１０３を通じてクロック制御してノード１１４において調整ＯＫ信号を提供するのに使用されるノード１１３における出力を供給する。Ｄフリップフロップ１０３は、比較器１０２のノード１１３における出力の状態の遷移に応答してノード１１４において調整ＯＫ信号を供給する。少なくとも１つの実施形態に応じて、比較器１０２は、抵抗器１０５および１０６から成る分圧器のような抵抗性分割器の代わりに、またはそれと組み合わせて、容量性分割器、トランジスタ分割器、または別のタイプの受動もしくは能動分割器または線形もしくは非線形分割器によって供給されるスケーリングされた電圧を比較してもよい。比較器１０２が基準電圧１１０と比較するためのスケーリングされた電圧を得るために、実数、虚数、または複素インピーダンスを有する線形または非線形インピーダンス素子が、抵抗器１０５および１０６の代わりに使用されてもよい。
【００１８】
少なくとも１つの実施形態に応じて、ＡＤＣモジュール１０４は、たとえば、初期起動プロセス中にＮＶＭチャージポンプ１０１のチャージポンプ出力を監視するのに使用されてもよく、ＮＶＭチャージポンプ１０１のチャージポンプ出力が許容可能範囲内に入るまでＮＶＭビット・セル・アレイ１２１に対するアクセスを妨げる。たとえば、ＮＶＭチャージポンプ１０１のチャージポンプ出力が許容可能範囲内に入るまで、ＮＶＭビット・セル・アレイ１２１に対するいかなる読み出し、消去、またはプログラム動作も妨げられてもよい。許容可能範囲は、一例として固定許容可能範囲であってもよく、または別の例として、可変許容可能範囲であってもよい。可変許容可能範囲の例は、ＮＶＭの動作モード（たとえば、読み出し、消去、プログラミング、節電など）に関連して変化する許容可能範囲、初期起動プロセスと後続の動作との間で変化する許容可能範囲、ＮＶＭセルの損耗に応じて変化する許容可能範囲、およびＮＶＭセルのタイプに応じて変化する許容可能範囲を含む。起動後、ＡＤＣモジュール１０４は、初期起動プロセス後に長時間経過しても、ＮＶＭを備えるシステムの動作の間、継続的にＮＶＭチャージポンプ１０１のチャージポンプ出力を監視するのに使用される。たとえば、ＡＤＣモジュール１０４は、任意の初期起動プロセス後に長時間経過した動作中に発生する、提案されている消去動作の前に、または、提案されているプログラム動作の前に、ＮＶＭチャージポンプ１０１のチャージポンプ出力を監視するのに使用されてもよい。
【００１９】
さらに別の実施形態において、ＡＤＣモジュール１０４が、初期起動プロセス中にＮＶＭチャージポンプ１０１のチャージポンプ出力を監視するのに使用されてもよく、Ｄフリップフロップ１０３が、初期起動プロセスの完結後の動作中に継続的にＮＶＭチャージポンプ１０１のチャージポンプ出力を監視するのに使用されてもよい。たとえば、ＡＤＣモジュール１０４は、ＮＶＭチャージポンプ１０１のチャージポンプ出力が許容可能範囲内に入るまでＮＶＭビット・セル・アレイ１２１のいかなる読み出し、消去またはプログラミングも妨げるのに使用されてもよく、ノード１１４におけるＤフリップフロップ１０３のＱ出力におけるＲＥＧＵＬＡＴＩＯＮ  ＯＫ出力信号は、コントローラ１１６が、初期起動プロセスの完結後の動作中に継続的にＮＶＭチャージポンプ１０１のチャージポンプ出力を監視することを可能にするのに使用されてもよい。チャージポンプ出力を継続的に監視することを容易にするために、コントローラ１１６は、Ｄフリップフロップ１０３のクリア入力に接続されている１３０を介してＤフリップフロップ１０３を時折リセットすることが可能である。
【００２０】
図２は、少なくとも１つの実施形態に応じた、アナログ−デジタル変換器（ＡＤＣ）を使用したＮＶＭの起動のための方法を示すフローチャートである。方法２００はブロック２０１において開始する。ブロック２０１において、不揮発性メモリ（ＮＶＭ）が始動される。２０１におけるＮＶＭの起動は、ブロック２０４において示されているものを含む様々な様式で達成されることができる。一例として、図１を参照すると、ＮＶＭの始動はＮＶＭクロック１２７の始動を含むことができる。別の例として、図１を参照すると、ＮＶＭの始動はＮＶＭチャージポンプ１０１の始動を含むことができる。ブロック２０１から、方法はブロック２０２へと継続する。
【００２１】
ブロック２０２において、アナログ−デジタル変換器（ＡＤＣ）を使用して適切なチャージポンプ出力が検証される。一例として、図１を参照すると、ＡＤＣモジュール１０４を使用してノード１０７においてＮＶＭチャージポンプ１０１の適切なチャージポンプ出力が検証される。ブロック２０２の検証は、ブロック２０５において示されているものを含む様々な様式で達成されることができる。たとえば、適切な動作の検証は、ＮＶＭチャージポンプのチャージポンプ出力の測定、および、測定値の所定の範囲との比較が実行される反復プロセスを含んでもよい。一例として、最大起動時間を超過したことに応答して、チャージポンプ出力の反復測定が中断され、代わりにエラー・ステータス・メッセージが発行される。一例として、エラーメッセージはＳＯＣコントローラに発行されることができる。別の例として、チャージポンプが所定の範囲内の値に達するのにさらなる時間が許容されることができる。一例として、図１を参照すると、コントローラ１１６は、ＮＶＭチャージポンプ１０１が所定の範囲内の値に達するためにさらなる時間を許容する。ブロック２０５にさらに示されているように、適切なチャージポンプ出力を検証するプロセスにおいて様々な救済措置が使用されることができる。たとえば、リセット動作が実行されることができ、または、チャージポンプの動作パラメータが調整されることができる。
【００２２】
一例として、コントローラ１１６はＮＶＭクロックのリセット、ＮＶＭチャージポンプのリセット、ＮＶＭ全体（たとえば、製品全体、たとえば、車両全体、消費者製品全体、工業製品全体など）のリセット、またはＮＶＭを備えるＳＯＣのリセットのような、様々なリセット動作を実行することができる。一例として、図１を参照すると、リセット動作はＮＶＭクロック１２７に対して実行されてもよい。
【００２３】
少なくとも１つの実施形態に応じて、実行されるリセット動作のレベルは、反復するごとに増大してもよい。たとえば、第１のリセット動作は低いレベルにおいて（たとえば、ＮＶＭクロック、ＮＶＭチャージポンプなど、またはそれらの任意の組合せをリセットすることによって）実行されてもよく、第２のリセット動作は、必要な場合、より高いレベルにおいて実行されてもよく、後続のリセット動作は、必要な場合、さらにより高いレベルにおいて（たとえば、システム全体をリセットすることによって）実行されてもよい。少なくとも１つの実施形態に応じて、そのようなリセット動作の反復的増大は、エラー・ステータス・メッセージを発行することなく実行されてもよい。少なくとも１つの実施形態に応じて、そのようなリセット動作の反復的増大は、エラー・ステータス・メッセージの発行を伴ってもよく、このことは、たとえば、リセット動作のレベルを増大させる結果として生じる混乱を最小限に抑える助けとなり得る。
【００２４】
代替的に、またはリセットと組み合わせて、チャージポンプの動作パラメータが反復して調整されることができる。一例として、図１を参照すると、ＮＶＭチャージポンプ１０１の動作パラメータが反復して調整される。ブロック２０２から、方法はブロック２０３へと継続する。ブロック２０３において、方法は、適切なチャージポンプ出力が検証された後、ＮＶＭの構成を進める。一例として、図１を参照すると、適切なチャージポンプ出力が検証された後、コントローラ１１６がＮＶＭの設定（configuration）を進める。一例として、図１を参照すると、適切なチャージポンプ出力が検証された後、ＮＶＭコントローラ１２４がＮＶＭの設定を進める。一例として、図１を参照すると、適切なチャージポンプ出力が検証された後、アプリケーション１１９がＮＶＭの設定を進める。
【００２５】
図３は、少なくとも１つの実施形態に応じた、アナログ−デジタル変換器（ＡＤＣ）を使用したＮＶＭの起動のためのより詳細な方法を示すフローチャートである。一例として、図１を参照すると、方法３００はＡＤＣ１０４を使用する。方法３００はブロック３０１において開始する。ブロック３０１において、不揮発性メモリ（ＮＶＭ）のチャージポンプが始動される。一例として、図１を参照すると、ＮＶＭチャージポンプ１０１が始動される。ブロック３０１は図２のブロック２０１の一実施形態であるとみなされてもよい。ブロック３０１から、方法はブロック３０２へと継続する。ブロック３０１からブロック３０２への進行は、遅延を伴ってまたは遅延なしに発生し得、そのような遅延は、ＮＶＭを備えるシステムの動作がそのような遅延の期間中継続することができる無期限の遅延であることができる。一例として、そのような遅延は、ブロック３０１において初期化されたチャージポンプが、ステップ３０２においてチャージポンプの適切な動作が検証される時まで適切に動作していることを可能にすると予想される時間量のものであってもよい。
【００２６】
ブロック３０２において、チャージポンプのチャージポンプ出力が検証される。一例として、チャージポンプ出力を測定するのにアナログ−デジタル変換器（ＡＤＣ）が利用される。一例として、図１を参照すると、ＡＤＣモジュール１０４はＮＶＭチャージポンプ１０１のノード１０７におけるチャージポンプ出力を測定する。少なくとも１つの実施形態に応じて、ＡＤＣは、ＮＶＭが使用可能な状態であると判定されるまで専用にされてもよい（すなわち、他の目的には使用されない）。少なくとも１つの実施形態に応じて、ＡＤＣは専用にされる必要はない。別の例として、チャージポンプ出力を測定するのにオンボードのＡＤＣ（on-board ADC）が利用される。別の例として、チャージポンプ出力を測定するのに専用ＡＤＣが利用される。そのようなオンボードのＡＤＣは、ＮＶＭデバイス内、システム・オン・チップ（ＳＯＣ）内、たとえば単一の集積回路（ＩＣ）パッケージ内に積層された複数の半導体チップを備えてもよいシステム・イン・パッケージ（ＳＩＰ）内のような、様々なロケーションに位置してもよいことが諒解されよう。チャージポンプ出力が、ＮＶＭチャージポンプを収容している集積回路（ＩＣ）パッケージのピンにおいてアクセス可能でない内部電圧である一例において、オンボードのＡＤＣを使用することによってそのような内部電圧にアクセスして測定することができるようになる。ＡＤＣは専用であってもよく、ＡＤＣの専用機能は、ＮＶＭチャージポンプの出力を測定することである。少なくとも１つの実施形態に応じて、ＡＤＣは共有されてもよい。ブロック３０２は、判断ブロック３０３、判断ブロック３０４、およびブロック３０５とともに、図２のブロック２０２の一実施形態であるとみなされてもよい。他の実施形態において、チャージポンプ出力は、たとえば、基準値に対する１ビットＡＤＣとしての役割を果たしてもよいアナログ比較器を使用して基準電圧と比較されてもよい。チャージポンプ出力が所定の範囲内の電圧を有するか否かを判定するのを容易にするために２つ以上の比較が使用されて電圧の範囲を画定してもよい。従って、ＡＤＣは１ビットＡＤＣまたはマルチビットＡＤＣであってもよく、ＡＤＣが、所定の範囲内に直接関連する基準値に対する出力を供給するか否かに応じた比較機能を提供してもよいし、もしくは提供しなくてもよく、または、ＡＤＣは所定の範囲の制限とは無関係な出力を提供し、出力と所定の範囲との間の比較は異なる要素によって別個に行われる。ブロック３０２から、方法はブロック３０３へと継続する。
【００２７】
ブロック３０３において、チャージポンプ出力が所定の範囲内にあるか否かについて判断が為される。チャージポンプ出力が所定の範囲内にある場合、方法はブロック３１０へと継続する。ブロック３１０において、ＮＶＭは使用可能な状態である。ブロック３１０は、ブロック３２２の少なくとも１つの特徴を備えてもよい。たとえば、ＮＶＭが使用のために構成されてもよい。一例として、設定データ（configuration data）が、ＮＶＭから、たとえば、ＮＶＭのテスト行から読み出されてもよい。一例として、設定データは、ＮＶＭを設定して使用するために、システム・オン・チップ（ＳＯＣ）コントローラおよびＮＶＭラッチに渡されてもよい。ブロック３１０において、チャージポンプ出力が所定の範囲内に入っていることに応答して、ＮＶＭはアクセス可能にされる。一例として、図１を参照すると、ＮＶＭはアプリケーション１１９にとってアクセス可能にされる。一例として、アプリケーション１１９は、ＮＶＭがチャージポンプ出力の適格性に応答してアクセス可能にされるまで、始動されなくてもよく、または一時停止されていてもよい。ブロック３１０は図２のブロック２０３の一実施形態であるとみなされてもよい。
【００２８】
ブロック３０３において、チャージポンプ出力が所定の範囲内にないという判断が為された場合、方法は判断ブロック３０４へと継続する。判断ブロック３０４において、最大起動時間を超過しているか否かについて判断が為される。そうである場合、方法はブロック３０８へと継続し、エラーが示される。ブロック３０８は、ブロック３２１の少なくとも１つの特徴を備えてもよい。一例として、エラーが報告されてもよい。一例として、エラーがシステム・オン・チップ（ＳＯＣ）コントローラに報告されてもよい。別の例として、エラーはエラーを示す値を記憶することによって報告されてもよい。別の例として、エラーはエラーを示すフラグをセットすることによって報告されてもよい。
【００２９】
判断ブロック３０４において、最大起動時間を超過していないという判断が為された場合、方法はブロック３０５へと継続する。ブロック３０５において、チャージポンプ出力が所定の範囲内にないことに応答して、チャージポンプ出力が所定の範囲内で動作するために、最大起動時間に制限されたさらなる時間が許容される。一例として、図１を参照すると、コントローラ１１６がブロック３０５を実行する。少なくとも１つの実施形態に応じて、ブロック３０５は反復して実行されてもよい。たとえば、チャージポンプ動作に影響を与えるパラメータの変更が行われた後に、チャージポンプ出力が所定の範囲内で動作するためにさらなる時間が許容されてもよい。少なくとも１つの実施形態に応じて、ブロック３０５は連続して実行されてもよく、ブロック３０５の複数回の反復によって許容されるさらなる時間は、時間的に連続し、累積してもよい。ブロック３０５はブロック３２５によって指示されるように実施されてもよい。たとえば、ＮＶＭのソフトリセットが実行されてもよい。別の例として、チャージポンプの動作パラメータが変更される。一例として、ＮＶＭのクロック周波数が変更されてもよい。別の例として、チャージポンプの出力レベルが変更されてもよい。ブロック３０５から、方法はブロック３０２へと戻る。
【００３０】
図４は、少なくとも１つの実施形態に応じた、アナログ−デジタル変換器（ＡＤＣ）を使用したＮＶＭの起動のための方法を示すフローチャートである。方法４００はブロック４０１において開始する。ブロック４０１から、方法は、ブロック４０２、４０３、および４０４を含む図２のブロック２０１の一実施形態へと継続する。ブロック４０２において、ＳＯＣは、ＳＯＣクロックを作動させることによって不揮発性メモリ（ＮＶＭ）の起動（たとえば、パワー・オン・リセット、スリープからの覚醒など）を開始する。一例として、図１を参照すると、ＮＶＭコントローラ１２４がブロック４０２においてＮＶＭ起動を開始してもよい。別の例として、図１を参照すると、コントローラ１１６がブロック４０２においてＮＶＭ起動を開始してもよい。ブロック４０２から、方法はブロック４０３へと継続する。
【００３１】
ブロック４０３において、ＮＶＭクロックの動作が開始する。一例として、図１を参照すると、コントローラ１１６（またはコントローラ１２４）が、ＮＶＭクロック１２７の動作を開始させる。ブロック４０３から、方法はブロック４０４へと継続する。ブロック４０４において、ＮＶＭチャージポンプの動作が開始する。一例として、図１を参照すると、ＮＶＭチャージポンプ１０１の動作は、ＮＶＭコントローラ１２４に応答して開始する。代替的に、図１を参照すると、たとえば、コントローラ１１６を介して、コントローラサブシステム１１７が、ＮＶＭチャージポンプ１０１の動作を開始させることができる。ブロック４０４から、方法は、ブロック４０９、判断ブロック４１０、ブロック４１１、および判断ブロック４１２を含む図２のブロック２０２の一実施形態へと継続する。
【００３２】
ブロック４０９において、アナログ−デジタル変換器（ＡＤＣ）はチャージポンプ出力を測定する。一例として、図１を参照すると、ＡＤＣモジュール１０４はＮＶＭチャージポンプ１０１のノード１０７におけるチャージポンプ出力を測定する。ブロック４０９から、方法は判断ブロック４１０へと継続する。判断ブロック４１０において、チャージポンプ出力が予想される所定の範囲内にあるか否かについて判断が為される。一例として、図１を参照すると、コントローラ１１６がブロック４０９からの測定値が予想される所定の範囲内にあるか否かを判定する。
【００３３】
メモリ・ビット・セルのノード間の所望の電圧差を提供するのに使用されてもよい複数の異なる電圧レベルを得るために複数のチャージポンプが使用されてもよい。異なる複数の電圧レベルが種々のメモリ動作に使用されてもよい。システム起動中、任意のメモリ書き込み動作またはメモリ消去動作が発生する前にメモリ読み出し動作が実行される可能性がある。従って、読み出しチャージポンプに関係する一例を説明するが、実施形態は他のチャージポンプのために実装されてもよいことを理解されたい。読み出しチャージポンプが＋４．４ボルトの公称出力を有することになる一例について、予想される所定の範囲は、たとえば、＋４．０〜＋４．７ボルトであってもよい。予想される所定の範囲は、他のチャージポンプ電圧レベル、たとえば、＋８．５ボルトの正高電圧（ＨＶ）チャージポンプ電圧レベル、−８．５ボルトの負ＨＶチャージポンプ電圧レベル、＋４．８ボルトのドレインチャージポンプ電圧レベルなどについて同様に画定されてもよい。ＡＤＣの入力範囲外の電圧レベルを測定するためにレベルシフタ回路が使用されてもよい。たとえば、ＡＤＣが正電圧を測定する場合、−８．５ボルトレベルの負ＨＶチャージポンプ電圧レベルを、ＡＤＣによって測定されることができる正電圧レベルにシフトするのにレベルシフタ回路が使用されてもよい。
【００３４】
チャージポンプ出力が予想される所定の範囲内にない場合、方法はブロック４１１へと継続し、チャージポンプが利用可能ではないことの救済が提供される。ブロック４２３は、ブロック４１１において実行されてもよい救済措置の例を提供する。チャージポンプが利用可能ではないことの救済は、チャージポンプに準備を達成するための（たとえば、チャージポンプ出力が予想される所定の範囲に入るためのさらなる時間を許容することによって対応されてもよい。そのような時間は、提供される場合、上述したようなブロック２０４と２０９との間のような先行するブロック間に遅延が発生することを許容することに加わるか、またはその代わりになるものであってもよい。代替的に、救済は、チャージポンプを再始動するソフトリセット動作を含むことができ、これは、チャージポンプ出力を予想される所定の範囲に準拠するようにするものであってもよい。さらに別の例の救済として、チャージポンプの動作パラメータが、チャージポンプ出力が予想される所定の範囲内に入るような動作をチャージポンプが達成する可能性を増大させるように調整されてもよい。調整されることができるチャージポンプの様々な動作パラメータは、ＮＶＭクロックのクロック周波数、およびチャージポンプの出力レベルを含む。ＮＶＭクロックはまた、チャージポンプが利用可能ではないことに対処するためにブロック４１１において再始動してもよい。ブロック４１１から、方法は判断ブロック４１２へと継続し、最大許容起動時間を超過しているか否かについて判断が為される。最大許容起動時間を超過していない場合、方法はブロック４０９に戻り、チャージポンプ出力が再び測定される。最大許容起動時間を超過している場合、方法はブロック４１３へと継続し、コントローラがエラーを報告する。ブロック４２４は実行されてもよいエラー報告の例を提供する。一例として、コントローラがエラー・ステータス・メッセージをシステム・オン・チップ（ＳＯＣ）コントローラに送信してもよい。別の例として、コントローラはエラーを示す値を記憶してもよい。さらに別の例として、コントローラはエラーを示すフラグをセットしてもよい。
【００３５】
判断ブロック４１０において、チャージポンプ出力が予想される所定の範囲内にあるという判断が為された場合、方法は、ブロック４０５、４０６、および４０７を含む図２のブロック２０３の一実施形態へと継続する。ブロック４０５において、ＮＶＭのテスト行からコンフィギュレーションが読み出される。ブロック４０５から、方法はブロック４０６へと継続する。ブロック４０６において、ブロック４０５において読み出された設定情報（configuration information）がＳＯＣおよびＮＶＭラッチに渡される。ブロック４０６から、方法はブロック４０７へと継続する。ブロック４０７において、ＮＶＭは利用可能な状態であると判定される。ブロック４０７から、方法はブロック４０８へと継続する。ブロック４０８において、方法は、アプリケーションがＮＶＭにアクセスし始めることを許可して継続する。一例として、図１を参照すると、アプリケーション１１９はＮＶＭにアクセスすることを許可される。
【００３６】
図４のフローは特定の方法を代表するものであり、示されているブロックの間に追加のブロックが発生することができることが諒解されよう。たとえば、方法は、ブロック４０４からブロック４０９へと直接継続してもよく、または、ブロック４０４とブロック４０９との間に遅延が発生してもよい。そのような遅延は、ブロック４０４において始動されたチャージポンプが、ブロック４０９においてチャージポンプ出力の測定が行われる時までに、予想される所定の範囲内の出力を生成することが可能であると予期される時間量に基づいてもよい。
【００３７】
図５は、少なくとも１つの実施形態に応じた、ＮＶＭ装置内に実装されるアナログ−デジタル変換器（ＡＤＣ）を使用したＮＶＭの起動のための方法を示すフローチャートである。方法５００はブロック５０１において開始する。ブロック５０１において、ＮＶＭクロックの動作が開始され、ＮＶＭクロックのクロックレートが許容可能なクロックレートでない場合には、ＮＶＭチャージポンプのチャージポンプ出力の測定値は、許容可能範囲内にないことになる。ＮＶＭクロックとはＮＶＭによって使用されるクロックを指し、これはＮＶＭ自体の中に（すなわち、その一部で）あってもよいし、なくてもよい。一例として、図１を参照すると、ＮＶＭクロック１２７の動作が開始される。ブロック５０１から、方法はブロック５０２へと継続する。ブロック５０２において、ＮＶＭチャージポンプの動作が開始される。一例として、図１を参照すると、ＮＶＭチャージポンプ１０１の動作が開始される。ブロック５０１および５０２は図２のブロック２０１の一実施形態であるとみなされてもよい。ブロック５０２から、方法はブロック５０３へと継続する。ブロック５０３において、ＮＶＭチャージポンプのチャージポンプ出力の測定値がＡＤＣを使用して取得される。一例として、図１を参照すると、ＮＶＭチャージポンプ１０１のノード１０７におけるチャージポンプ出力の測定値はＡＤＣモジュール１０４を使用して取得される。ブロック５０３から、方法はブロック５０４へと継続する。ブロック５０４において、測定値が許容可能範囲と比較される。一例として、図１を参照すると、コントローラ１１６が測定値を許容可能範囲と比較する。
【００３８】
ブロック５０４から、方法は判断ブロック５１１へと継続し、測定値が許容可能範囲内にあるか否かについて判断が為される。ブロック５０３、ブロック５０４、および判断ブロック５１１は図２のブロック２０２の一実施形態であるとみなされてもよい。判断ブロック５１１から、方法は、測定値が許容可能範囲内にあることに応答してブロック５０５へと、または、測定値が許容可能範囲内にないことに応答してブロック５０６、ブロック５０７、ブロック５０８などのうちの少なくとも１つ、もしくはそれらの任意の組合せへと継続する。ブロック５０５において、測定値が許容可能範囲内にあることに応答して、ＮＶＭビット・セル・アレイに対するアクセスが進行を許可される。一例として、図１を参照すると、測定値が許容可能範囲内にあることに応答して、アプリケーション１１９による、介在する要素、たとえば、ＮＶＭコントローラ１２４を介したＮＶＭビット・セル・アレイ１２１へのアクセスの開始が許可される。ブロック５０５は図２のブロック２０３の一実施形態であるとみなされてもよい。ブロック５０６において、測定値が許容可能範囲内にないことに応答して、ＮＶＭチャージポンプは、ＮＶＭチャージポンプのチャージポンプ出力の測定値が許容可能範囲内に入るためにさらなる時間を許容される。ブロック５０７において、測定値が許容可能範囲内にないことに応答して、ＮＶＭチャージポンプのソフトリセットが実行される。一例として、図１を参照すると、コントローラ１１６がＮＶＭチャージポンプ１０１のソフトリセットを実行することができるか、またはＮＶＭコントローラ１２４がＮＶＭチャージポンプ１０１のソフトリセットを実行することができる。ブロック５０８において、測定値が許容可能範囲内にないことに応答して、ＮＶＭチャージポンプの動作パラメータが調整される。一例として、図１を参照すると、コントローラ１１６がＮＶＭチャージポンプ１０１の動作パラメータを調整することができ、または、ＮＶＭコントローラ１２４がＮＶＭチャージポンプ１０１の動作パラメータを調整する。ブロック５０６、５０７、または５０８のいずれかから、方法はブロック５０９へと継続する。ブロック５０９において、測定値が許容可能範囲内にないことに応答して、ＡＤＣを使用したＮＶＭチャージポンプのチャージポンプ出力の測定値の取得が反復される。一例として、図１を参照すると、測定値が許容可能範囲内にないことに応答して、コントローラ１１６が、ＡＤＣを使用したＮＶＭチャージポンプのチャージポンプ出力の測定値の取得を反復する。一例として、図１を参照すると、測定値が許容可能範囲内にないことに応答して、ＮＶＭコントローラ１２４が、ＡＤＣを使用したＮＶＭチャージポンプのチャージポンプ出力の測定値の取得を反復する。ブロック５０９はブロック５１０を含んでもよい。ブロック５１０において、最大起動時間を超過したことに応答して、エラー・ステータス・メッセージが発行される。ブロック５０６、５０７、５０８、および５０９（ブロック５１０を含んでもよいし、含まなくてもよい）は、測定値が許容可能範囲内にない場合の救済を試みるためのより大きなブロック５１２の一実施形態であるとみなされてもよい。
【００３９】
少なくとも１つの実施形態に応じて、装置は、コントローラを少なくとも１つの方法を実行するように制御するためのロジックを備えるコントローラを備える。そのようなロジックは、たとえば、論理動作を含む動作を実施するために実行可能な状態機械またはファームウェアを含んでもよく、それによって、少なくとも１つの方法の実行が可能になる。ロジックは、たとえば、起動シーケンスの実行を含む、ＮＶＭモジュールの動作を制御することができる。そのような装置は、アナログ−デジタル変換器（ＡＤＣ）モジュールをも備える。ＡＤＣモジュールはコントローラに接続されており、ＡＤＣモジュールがチャージポンプ出力の測定値をコントローラに提供することが可能である。少なくとも１つの実施形態に応じて、コントローラはＡＤＣモジュールに、起動シーケンス中にチャージポンプ出力の測定を実行するように命令する。ＡＤＣモジュールからコントローラによって受信される測定値に基づいて、コントローラは、起動シーケンスの継続を許可してもよく、チャージポンプ出力が許容可能範囲内の値に達するためにさらなる時間を提供してもよく、チャージポンプ出力が許容可能範囲内に入るようにするためにチャージポンプのチャージポンプ動作パラメータを調整してもよく、チャージポンプが許可可能な時間内に許容可能範囲内のチャージポンプ出力を提供することが不可能であることを示すエラー・ステータス・メッセージを発行してもよく、同様のことを実行してもよく、またはそれらの任意の組合せを実行してもよい。
【００４０】
少なくとも１つの実施形態に応じて、様々な誤りのあるモードが検出および訂正されてもよい。たとえば、ＮＶＭクロックが適切に起動することができない（たとえば、その意図する動作周波数の第３高調波のような高調波において起動する）場合、それによってＮＶＭチャージポンプの動作が不適切なものになり、これは、アナログ−デジタル変換器（ＡＤＣ）を使用してチャージポンプ出力を測定することによって検出されることができる。ＮＶＭクロック発振器は、その基本周波数の高調波ではなくその基本周波数において動作するように設計されているため、高調波動作は持続されず、そのため、いくらかの時間の後、高調波状態は終了し、ＮＶＭクロック発振器は基本状態に戻る。従って、チャージポンプ出力を測定し、チャージポンプ出力が許容可能範囲内の値を有するのを待ち、再びチャージポンプ出力を測定して値が許容可能範囲内にあると判定することによって、ＮＶＭクロック発振器が高調波状態において動作を開始した後であっても、ＮＶＭクロック発振器の適切な動作が保証されることができる。従って、起動／覚醒シーケンスを完了する前にチャージポンプが正常であり適切に動作していることを保証することが可能であり、そうすることによって、ＮＶＭを備えるシステム内の顧客アプリケーションの故障を防止することができる。ＮＶＭサブシステムの適切な動作を保証することは、自動車アプリケーションのような、非常に重要なアプリケーションにとって特に重要である。ほぼすべての自動車マイクロコントローラが、少なくとも１つの実施形態に応じた、チャージポンプ出力を監視するのに使用され得る内蔵ＡＤＣモジュールを有する。さらに、ほとんどの最新のマイクロコントローラはＡＤＣ機能を含み、少なくとも１つの実施形態を広範なアプリケーションにとって容易に実施することを可能にしている。
【００４１】
少なくとも１つの実施形態に応じて、適切なチャージポンプ出力を達成しようとするためにチャージポンプ動作パラメータを変更しようとする代わりに、チャージポンプ出力の値を測定することによって検証されるように、チャージポンプが適切に動作するのを待つプロセスが、適切なチャージポンプ動作が単純かつ効率的に達成されることを可能にする。さらに、そのような手法は、ＮＶＭのそれ自体が介在されずに適切な動作に戻る傾向を妨げるおそれがある、ＮＶＭ動作パラメータの不要な調整を回避する。たとえば、ＮＶＭクロックが過渡的な望ましくない高調波状態において起動することになり、結果として不適切なチャージポンプ出力がもたらされた場合、適切なチャージポンプ出力を得るためにチャージポンプ動作パラメータを調整しようとする試みは、ＮＶＭクロックがその所望の基本状態における動作に戻る場合には効果が無い場合があり、それによって、チャージポンプ出力を、ＮＶＭクロック過渡的な望ましくない高調波状態がなければ有していたであろう値に戻すためにチャージポンプ動作パラメータをさらに調整する必要がある。また、ＮＶＭクロックのクロック周波数のような別のＮＶＭ動作パラメータを調整しようとする試みは、ＮＶＭクロックがそれ自体で介在されずに問題を訂正する傾向にあることを前提とすると、試みられる調整は問題を必要以上に訂正するおそれがあるため、ＮＶＭクロックがその所望の基本状態における動作に戻る場合には効果が無い場合がある。それゆえ、待機−測定の反復は、一実施形態に応じて、動作パラメータを調整しようとするよりも良好なシステム性能を提供することができる。
【００４２】
少なくとも１つの実施形態に応じて、規制（regulation）のためのチャージポンプ出力を調整して所望の性能を改善するのとは反対に、ＮＶＭを使用する前に（すなわち、ＮＶＭへのメモリ動作アクセス（たとえば、読み出し、書き込み、または消去）を実行する前に）ＡＤＣモジュールを利用することによってチャージポンプが安定かつ正確であることを保証することによって、ＮＶＭの適切な動作を確実に検証することができる。そのようなＮＶＭ動作の確かな検証は、要求の多いアプリケーション（たとえば、自動車アプリケーション）のための製品の欠陥をなくすことができるようにすることが可能である。そのような確かな検証は、任意の動作の前にＮＶＭチャージポンプがロバストであることを保証するための予防方法を提供し、それによって、故障を回避して信頼性を向上させる。
【００４３】
少なくとも１つの実施形態は、不揮発性メモリ（ＮＶＭ）デバイスに実装されてもよい。たとえば、少なくとも１つの実施形態は、フラッシュ・メモリ・デバイスに実装されてもよい。少なくとも１つの実施形態は、フローティング・ゲート・メモリ・デバイスのために実装されてもよい。一例として、少なくとも１つの実施形態は、不揮発性フローティング・ゲート・メモリ・デバイスに実装されてもよい。少なくとも１つの実施形態がそのために実装されてもよいメモリデバイスのタイプの例は、フラッシュ・メモリ・デバイス、従来の電気的消去可能プログラマブル読み出し専用メモリ（ＥＥＰＲＯＭ）デバイス、強誘電体ランダム・アクセス・メモリ（ＦｅＲＡＭ）、磁気抵抗性ランダム・アクセス・メモリ（ＭＲＡＭ）、プログラマブル金属化セル（ＰＭＣ）メモリ、および相変化メモリ（ＰＣＭ）を含む。潜在的な消去に時間のかかるビットを検出するために低減された電圧がいくつかのメモリ技術とともに使用されてもよいが、低減された電流、低減されたパルス幅、低減されたパルス数など、またはそれらの任意の組合せが潜在的な消去に時間のかかるビットを検出するために同じかまたは他のメモリ技術とともに使用されてもよい。
【００４４】
実施形態は、様々なメモリ技術を用いて実施されてもよい。たとえば、実施形態は、ＮＯＲフラッシュメモリを用いて、またはＮＡＮＤフラッシュメモリを用いて実施されてもよい。実施形態は、１ビット・パー・セル（すなわち、シングルレベルセル（single-level cell:ＳＬＣ））およびマルチ・ビット・パー・セル（マルチレベルセル（multiple-level cell:ＭＬＣ））メモリ技術を用いて実施されてもよい。実施形態は、導電性（たとえば、多結晶シリコン）または非導電性（たとえば、窒化ケイ素（Ｓｉ３Ｎ４）または金属ナノ結晶）フローティングゲート技術を用いて実施されてもよい。実施形態は、ホットキャリア注入または量子トンネル消去メカニズムを使用するメモリデバイスを用いて実施されてもよい。
【００４５】
少なくとも１つの実施形態に応じて、方法は、不揮発性メモリ（ＮＶＭ）のチャージポンプを始動するステップと、チャージポンプのチャージポンプ出力を測定するステップと、その後、チャージポンプ出力が所定の範囲内にないことに応答して、チャージポンプ出力が所定の範囲内で動作するために、最大起動時間に制限されたさらなる時間を許容するステップと、チャージポンプ出力が所定の範囲内にあることに応答して、ＮＶＭを使用可能な状態であると判定するステップとを含む。少なくとも１つの実施形態に応じて、方法は、アナログ−デジタル変換器を利用してチャージポンプ出力を測定するステップをさらに含む。少なくとも１つの実施形態に応じて、アナログ−デジタル変換器を利用してチャージポンプ出力を測定するステップは、オンボードのアナログ−デジタル変換器を利用してチャージポンプ出力を測定するステップをさらに含む。少なくとも１つの実施形態に応じて、チャージポンプ出力が所定の範囲内にないことに応答して、チャージポンプ出力が所定の範囲内で動作するために、最大起動時間に制限されたさらなる時間を許容するステップは、ＮＶＭのソフトリセットを実行するステップをさらに含む。少なくとも１つの実施形態に応じて、チャージポンプ出力が所定の範囲内にないことに応答して、チャージポンプ出力が所定の範囲内で動作するために、最大起動時間に制限されたさらなる時間を許容するステップは、チャージポンプの動作パラメータを変更するステップをさらに含む。少なくとも１つの実施形態に応じて、チャージポンプ出力が所定の範囲内にないことに応答して、チャージポンプ出力が所定の範囲内で動作するために、最大起動時間に制限されたさらなる時間を許容するステップは、最大起動時間を超過したことに応答してエラー・ステータス・メッセージを発行するステップをさらに含む。少なくとも１つの実施形態に応じて、最大起動時間を超過したことに応答してエラー・ステータス・メッセージを発行するステップは、エラー・ステータス・メッセージをシステム・オン・チップ（ＳＯＣ）コントローラに発行するステップをさらに含む。
【００４６】
少なくとも１つの実施形態に応じて、方法は、不揮発性メモリ（ＮＶＭ）クロックを始動するステップと、ＮＶＭチャージポンプを始動するステップと、アナログ−デジタル変換器（ＡＤＣ）を使用して適切なチャージポンプ出力を検証するステップと、適切なチャージポンプ出力が検証された後にＮＶＭの設定を開始するステップとを含む。少なくとも１つの実施形態に応じて、ＡＤＣを使用して適切なチャージポンプ出力を検証するステップは、反復してＮＶＭチャージポンプのチャージポンプ出力を測定し、測定値を所定の範囲と比較するステップを含む。少なくとも１つの実施形態に応じて、反復してＮＶＭチャージポンプのチャージポンプ出力を測定し、測定値を所定の範囲と比較するステップは、最大起動時間を超過したことに応答して、チャージポンプ出力の反復測定を中断して代わりにエラー・ステータス・メッセージを発行するステップをさらに含む。少なくとも１つの実施形態に応じて、最大起動時間を超過したことに応答して、チャージポンプ出力の反復測定を中断して代わりにエラー・ステータス・メッセージを発行するステップは、最大起動時間を超過したことに応答して、チャージポンプ出力の反復測定を中断して代わりにエラー・ステータス・メッセージをシステム・オン・チップ（ＳＯＣ）コントローラに発行するステップをさらに含む。少なくとも１つの実施形態に応じて、反復してＮＶＭチャージポンプのチャージポンプ出力を測定し、測定値を所定の範囲と比較するステップは、チャージポンプ出力が所定の範囲内の値に達するのにさらなる時間を許容するステップを含む。少なくとも１つの実施形態に応じて、反復してＮＶＭチャージポンプのチャージポンプ出力を測定し、測定値を所定の範囲と比較するステップは、チャージポンプの動作パラメータを反復して調整するステップをさらに含む。
【００４７】
少なくとも１つの実施形態に応じて、装置は、不揮発性メモリ（ＮＶＭ）ビット・セル・アレイと、ＮＶＭチャージポンプであって、当該ＮＶＭチャージポンプはＮＶＭビット・セル・アレイに接続されている、ＮＶＭチャージポンプと、アナログ−デジタル変換器（ＡＤＣ）であって、当該ＡＤＣはＮＶＭチャージポンプに接続されている、ＡＤＣと、コントローラであって、当該コントローラはＡＤＣに接続されている、コントローラとを備える。コントローラは、当該コントローラに方法を実行させるように構成されているロジックを備える。方法は、ＮＶＭチャージポンプの動作を開始するステップと、ＡＤＣを使用してＮＶＭチャージポンプのチャージポンプ出力の測定値を取得するステップと、測定値を許容可能範囲と比較するステップと、測定値が許容可能範囲内にあることに応答して、ＮＶＭビット・セル・アレイへのアクセスの開始を許可するステップとを含む。
【００４８】
少なくとも１つの実施形態に応じて、方法は、測定値が許容可能範囲内にないことに応答して、ＡＤＣを使用してＮＶＭチャージポンプのチャージポンプ出力の測定値を取得するステップを反復するステップをさらに含む。少なくとも１つの実施形態に応じて、方法は、測定値が許容可能範囲内にないことに応答して、ＮＶＭチャージポンプに、ＮＶＭチャージポンプのチャージポンプ出力の測定値が許容可能範囲内に入るためにさらなる時間を許容するステップをさらに含む。少なくとも１つの実施形態に応じて、方法は、測定値が許容可能範囲内にないことに応答して、ＮＶＭチャージポンプのソフトリセットを実行するステップをさらに含む。少なくとも１つの実施形態に応じて、方法は、測定値が許容可能範囲内にないことに応答して、ＮＶＭチャージポンプの動作パラメータを調整するステップをさらに含む。少なくとも１つの実施形態に応じて、方法は、ＮＶＭクロックの動作を開始するステップをさらに含み、ＮＶＭクロックのクロックレートが許容可能なクロックレートでない場合には、ＮＶＭチャージポンプのチャージポンプ出力の測定値は、許容可能範囲内にないことになる。少なくとも１つの実施形態に応じて、測定値が許容可能範囲内にないことに応答して、ＡＤＣを使用してＮＶＭチャージポンプのチャージポンプ出力の測定値を取得するステップを反復するステップは、最大起動時間を超過したことに応答して、エラー・ステータス・メッセージを発行するステップをさらに含む。
【符号の説明】
【００４９】
１０１…チャージポンプ、１０４…アナログ−デジタル変換器、１２１…不揮発性メモリ。
【図１】
2014102831.tif 000003
【図２】
2014102831.tif 000004
【図３】
2014102831.tif 000005
【図４】
2014102831.tif 000006
【図５】
2014102831.tif 000007