(57)【特許請求の範囲】
【請求項１】
第1のワンタイムプログラマブル(OTP)素子と、
第2のOTP素子と、
前記第1のOTP素子からのデータの第1の表現を受信し前記第2のOTP素子からの前記データの第2の表現を受信するように結合された、エラー検出回路と、
マルチプレクサを含む出力回路であって、前記エラー検出回路の出力に応答して、前記データの前記第1の表現に基づくか、または前記第2のOTP素子からのデータの前記第2の表現に基づいて、OTP読出し結果を出力する、出力回路と
を備え、
前記エラー検出回路の前記出力が、前記データの前記第1の表現において訂正不可能なエラーが検出されたかどうかを指示する第1のフラグおよび前記データの前記第2の表現において訂正不可能なエラーが検出されたかどうかを指示する第2のフラグを含み、
前記第1のフラグと前記第2のフラグとがデアサートされていることに基づいて、前記出力回路が、第1の値を有する第1の選択信号又は第2の値を有する第2の選択信号を生成するとき、前記マルチプレクサが、前記データの前記第1の表現又は前記データの前記第2の表現に基づいて前記OTP読出し結果を出力し、
前記第1のフラグがデアサートされて、前記第2のフラグがアサートされていることに基づいて、前記出力回路が、前記第1の値を有する前記第1の選択信号を生成するとき、前記マルチプレクサが、前記データの前記第1の表現に基づいて前記OTP読出し結果を出力し、
前記第1のフラグがアサートされて、前記第2のフラグがデアサートされていることに基づいて、前記出力回路が、前記第2の値を有する前記第2の選択信号を生成するとき、前記マルチプレクサが、前記データの前記第2の表現に基づいて前記OTP読出し結果を出力し、かつ、
前記第1のフラグと前記第2のフラグとがアサートされていることに基づいて、前記出力回路が、前記第1の値を有する前記第1の選択信号又は前記第2の値を有する前記第2の選択信号を生成するとき、前記マルチプレクサが、前記OTP読出し結果として、前記訂正不可能なエラーが検出された前記データの前記第1の表現又は前記データの前記第2の表現のいずれも伴わないエラー信号を出力する、回路。
【請求項２】
前記第1のOTP素子が第1の組の磁気トンネル接合(MTJ)OTP素子に含まれる、請求項1に記載の回路。
【請求項３】
前記第2のOTP素子が第2の組の磁気トンネル接合(MTJ)OTP素子に含まれる、請求項1に記載の回路。
【請求項４】
前記エラー検出回路が、エラー訂正コード(ECC)デコーダを備える、請求項1に記載の回路。
【請求項５】
前記ECCデコーダが、シングルエラー訂正(SEC)/ダブルエラー検出(DED)(SEC-DEC)デコーダを備える、請求項4に記載の回路。
【請求項６】
前記エラー検出回路が、巡回冗長検査(CRC)デコーダを備える、請求項1に記載の回路。
【請求項７】
前記マルチプレクサが、前記第1の選択信号又は前記第2の選択信号に応答して、エラー訂正コード(ECC)データを選択するように構成されている、請求項1に記載の回路。
【請求項８】
前記出力回路が、少なくとも1つの半導体ダイ中に一体化されている、請求項1に記載の回路。
【請求項９】
前記出力回路が、セットトップボックス、音楽プレーヤ、ビデオプレーヤ、エンターテインメントユニット、ナビゲーションデバイス、通信デバイス、携帯情報端末(PDA)、固定場所データユニット、コンピュータ、またはそれらの組合せの中に一体化されている、請求項1に記載の回路。
【請求項１０】
第1のワンタイムプログラマブル(OTP)素子に記憶されたデータの第1の表現に基づいて第1のフラグを生成するステップであって、前記第1のフラグが、前記データの前記第1の表現が訂正不可能なエラーを含むかどうかを指示する、ステップと、
第2のOTP素子に記憶されたデータの第2の表現に基づいて第2のフラグを生成するステップであって、前記第2のフラグが、前記データの前記第2の表現が訂正不可能なエラーを含むかどうかを指示する、ステップと、
前記第1のフラグと前記第2のフラグとがデアサートされていることに基づいて、出力回路が、第1の値を有する第1の選択信号又は第2の値を有する第2の選択信号を生成するとき、マルチプレクサによって、前記データの前記第1の表現又は前記データの前記第2の表現に基づいてOTP読出し結果を出力するステップと、
前記第1のフラグがデアサートされて、前記第2のフラグがアサートされていることに基づいて、前記出力回路が、前記第1の値を有する前記第1の選択信号を生成するとき、前記マルチプレクサによって、前記データの前記第1の表現に基づいて前記OTP読出し結果を出力するステップと、
前記第1のフラグがアサートされて、前記第2のフラグがデアサートされていることに基づいて、前記出力回路が、前記第2の値を有する前記第2の選択信号を生成するとき、前記マルチプレクサによって、前記データの前記第2の表現に基づいて前記OTP読出し結果を出力するステップと、
前記第1のフラグと前記第2のフラグとがアサートされていることに基づいて、前記出力回路が、前記第1の値を有する前記第1の選択信号又は前記第2の値を有する前記第2の選択信号を生成するとき、前記マルチプレクサによって、前記OTP読出し結果として、前記訂正不可能なエラーが検出された前記データの前記第1の表現又は前記データの前記第2の表現のいずれも伴わないエラー信号を出力するステップと
を含む、方法。
【請求項１１】
前記データの前記第1の表現に対して第1のエラー検出動作を実施して、前記第1のフラグを生成するステップと、
前記データの前記第2の表現に対して第2のエラー検出動作を実施して、前記第2のフラグを生成するステップと
をさらに含む、請求項10に記載の方法。
【請求項１２】
前記データの特定の表現が訂正可能なエラーを含むという判定に応答して、前記データの前記特定の表現について、エラー訂正動作を実施するステップをさらに含む、請求項10に記載の方法。
【請求項１３】
前記第1のフラグが、前記データの前記第1の表現が訂正不可能なエラーを含まないことを指示し、前記第2のフラグが、前記データの前記第2の表現が少なくとも1つの訂正不可能なエラーを含むことを指示するとき、前記OTP読出し結果が、前記データの前記第1の表現に基づいて生成される、請求項10に記載の方法。
【請求項１４】
前記第2のフラグが、前記データの前記第2の表現が訂正不可能なエラーを含まないことを指示し、前記第1のフラグが、前記データの前記第1の表現が少なくとも1つの訂正不可能なエラーを含むことを指示するとき、前記OTP読出し結果が、前記データの前記第2の表現に基づいて生成される、請求項10に記載の方法。
【請求項１５】
前記第1のフラグおよび前記第2のフラグが、電子デバイスに一体化された回路において生成される、請求項10に記載の方法。
【請求項１６】
第1のワンタイムプログラマブル(OTP)素子と、
第2のOTP素子と、
前記第1のOTP素子からのデータの第1の表現および前記第2のOTP素子からの前記データの第2の表現を受信するための手段と、
前記受信するための手段の出力に応答して、前記データの前記第1の表現に基づくか、または前記第2のOTP素子からのデータの前記第2の表現に基づいて、OTP読出し結果を出力するための手段と、
を備え、
前記出力するための手段が、マルチプレクシングのための手段を備え、前記出力するための手段が、前記データの前記第1の表現において訂正不可能なエラーが検出されたかどうかを指示する第1のフラグおよび前記データの前記第2の表現において訂正不可能なエラーが検出されたかどうかを指示する第2のフラグを含み、
前記第1のフラグと前記第2のフラグとがデアサートされていることに基づいて、前記出力するための手段が、第1の値を有する第1の選択信号又は第2の値を有する第2の選択信号を生成するとき、前記マルチプレクシングのための手段が、前記データの前記第1の表現又は前記データの前記第2の表現に基づいて前記OTP読出し結果を出力し、
前記第1のフラグがデアサートされて、前記第2のフラグがアサートされていることに基づいて、前記出力するための手段が、前記第1の値を有する前記第1の選択信号を生成するとき、前記マルチプレクシングのための手段が、前記データの前記第1の表現に基づいて前記OTP読出し結果を出力し、
前記第1のフラグがアサートされて、前記第2のフラグがデアサートされていることに基づいて、前記出力するための手段が、前記第2の値を有する前記第2の選択信号を生成するとき、前記マルチプレクシングのための手段が、前記データの前記第2の表現に基づいて前記OTP読出し結果を出力し、かつ、
前記第1のフラグと前記第2のフラグとがアサートされていることに基づいて、前記出力するための手段が、前記第1の値を有する前記第1の選択信号又は前記第2の値を有する前記第2の選択信号を生成するとき、前記マルチプレクシングのための手段が、前記OTP読出し結果として、前記訂正不可能なエラーが検出された前記データの前記第1の表現又は前記データの前記第2の表現のいずれも伴わないエラー信号を出力する、装置。
【請求項１７】
前記第1のOTP素子が第1の組の磁気トンネル接合(MTJ)OTP素子に含まれ、前記第2のOTP素子が第2の組のMTJ  OTP素子に含まれる、請求項16に記載の装置。
【請求項１８】
前記受信するための手段が、前記第1のOTP素子と前記第2のOTP素子とに接続されたエラー検出回路を備える、請求項16に記載の装置。
【請求項１９】
前記出力するための手段が、前記データの特定の表現において訂正不可能なエラーが検出されていないことを前記エラー検出回路が指示することに応答して、前記データの前記特定の表現に対応する、エラー訂正コード(ECC)データ出力を選択するように構成された、マルチプレクサを含む、請求項18に記載の装置。
【請求項２０】
前記受信するための手段および前記出力するための手段が、セットトップボックス、音楽プレーヤ、ビデオプレーヤ、エンターテインメントユニット、ナビゲーションデバイス、通信デバイス、携帯情報端末(PDA)、固定場所データユニット、コンピュータ、またはそれらの組合せの中に一体化されている、請求項16に記載の装置。
【請求項２１】
プロセッサによって実行されると、前記プロセッサに、
第1のワンタイムプログラマブル(OTP)素子に記憶されたデータの第1の表現に基づいて、前記データの前記第1の表現が訂正不可能なエラーを含むかどうかを指示する、第1のフラグを生成させ、
第2のOTP素子に記憶されたデータの第2の表現に基づいて、前記データの前記第2の表現が訂正不可能なエラーを含むかどうかを指示する、第2のフラグを生成させ、
前記第1のフラグと前記第2のフラグとがデアサートされていることに基づいて、出力回路によって、第1の値を有する第1の選択信号又は第2の値を有する第2の選択信号を生成させるとき、マルチプレクサによって、前記データの前記第1の表現又は前記データの前記第2の表現に基づいてOTP読出し結果を出力させ、
前記第1のフラグがデアサートされて、前記第2のフラグがアサートされていることに基づいて、前記出力回路によって、前記第1の値を有する前記第1の選択信号を生成させるとき、前記マルチプレクサによって、前記データの前記第1の表現に基づいて前記OTP読出し結果を出力させ、
前記第1のフラグがアサートされて、前記第2のフラグがデアサートされていることに基づいて、前記出力回路によって、前記第2の値を有する前記第2の選択信号を生成させるとき、前記マルチプレクサによって、前記データの前記第2の表現に基づいて前記OTP読出し結果を出力させ、
前記第1のフラグと前記第2のフラグとがアサートされていることに基づいて、前記出力回路によって、前記第1の値を有する前記第1の選択信号又は前記第2の値を有する前記第2の選択信号を生成させるとき、前記マルチプレクサによって、前記OTP読出し結果として、前記訂正不可能なエラーが検出された前記データの前記第1の表現又は前記データの前記第2の表現のいずれも伴わないエラー信号を出力させる
命令を含む、非一時的コンピュータ可読記憶媒体。
【請求項２２】
前記プロセッサが、セットトップボックス、音楽プレーヤ、ビデオプレーヤ、エンターテインメントユニット、ナビゲーションデバイス、通信デバイス、携帯情報端末(PDA)、固定場所データユニット、コンピュータ、またはそれらの組合せ中に一体化されている、請求項21に記載の非一時的コンピュータ可読記憶媒体。
【請求項２３】
半導体デバイスの少なくとも1つの物理的性質を表す設計情報を受信するステップであって、前記半導体デバイスが、
第1のワンタイムプログラマブル(OTP)素子と、
第2のOTP素子と、
前記第1のOTP素子からのデータの第1の表現を受信し前記第2のOTP素子からの前記データの第2の表現を受信するように結合されたエラー検出回路と、
マルチプレクサを含む出力回路であって、前記エラー検出回路の出力に応答して、前記データの前記第1の表現に基づくか、または前記第2のOTP素子からのデータの前記第2の表現に基づいて、OTP読出し結果を出力する、出力回路と、
を含む、ステップと、
ファイルフォーマットに適合するように前記設計情報を変換するステップと、
前記変換された設計情報を含む、データファイルを生成するステップと
を含み、
前記エラー検出回路の前記出力が、前記データの前記第1の表現において訂正不可能なエラーが検出されたかどうかを指示する第1のフラグおよび前記データの前記第2の表現において訂正不可能なエラーが検出されたかどうかを指示する第2のフラグを含み、
前記第1のフラグと前記第2のフラグとがデアサートされていることに基づいて、前記出力回路が、第1の値を有する第1の選択信号又は第2の値を有する第2の選択信号を生成するとき、前記マルチプレクサが、前記データの前記第1の表現又は前記データの前記第2の表現に基づいて前記OTP読出し結果を出力し、
前記第1のフラグがデアサートされて、前記第2のフラグがアサートされていることに基づいて、前記出力回路が、前記第1の値を有する前記第1の選択信号を生成するとき、前記マルチプレクサが、前記データの前記第1の表現に基づいて前記OTP読出し結果を出力し、
前記第1のフラグがアサートされて、前記第2のフラグがデアサートされていることに基づいて、前記出力回路が、前記第2の値を有する前記第2の選択信号を生成するとき、前記マルチプレクサが、前記データの前記第2の表現に基づいて前記OTP読出し結果を出力し、かつ、
前記第1のフラグと前記第2のフラグとがアサートされていることに基づいて、前記出力回路が、前記第1の値を有する前記第1の選択信号又は前記第2の値を有する前記第2の選択信号を生成するとき、前記マルチプレクサが、前記OTP読出し結果として、前記訂正不可能なエラーが検出された前記データの前記第1の表現又は前記データの前記第2の表現のいずれも伴わないエラー信号を出力する、方法。
【請求項２４】
前記データファイルが、GDSIIフォーマットを含む、請求項23に記載の方法。
【請求項２５】
前記データファイルが、GERBERフォーマットを含む、請求項23に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、その内容全体が参照により本明細書に明確に組み込まれている、2013年1月29日に出願した、同一出願人が所有する米国特許非仮出願第13/752,419号の優先権を主張するものである。
【０００２】
本開示は、一般に、ワンタイムプログラマブル素子のエラー検出/訂正に関する。
【背景技術】
【０００３】
技術における進歩により、小型化されて、よりパワーのあるコンピューティングデバイスがもたらされている。たとえば、現在では、携帯型ワイヤレス電話、携帯情報端末(PDA)、および小型で軽量かつユーザが容易に携行できる、ページングデバイスなどの、ワイヤレスコンピューティングデバイスを含む、様々な携帯型のパーソナルコンピューティングデバイスが存在する。より具体的には、セルラー電話やインターネットプロトコル(IP)電話などの携帯型ワイヤレス電話は、ワイヤレスネットワーク上で音声およびデータを通信することができる。さらに、多くのそのようなワイヤレス電話には、その中に組み込まれているその他の種類のデバイスが含まれている。たとえば、ワイヤレス電話は、ディジタルスチルカメラ、ディジタルビデオカメラ、ディジタルレコーダ、およびオーディオファイルプレーヤを含む可能性がある。また、そのようなワイヤレス電話は、インターネットにアクセスするのに使用することのできる、ウェブブラウザアプリケーションなどのソフトウェアアプリケーションを含む、実行可能な命令を処理することができる。したがって、これらのワイヤレス電話は相当な計算能力を備え得る。
【０００４】
ワイヤレス電話などの電子デバイスは、1回だけ書込み(たとえば、プログラム)をすることのできるワンタイムプログラマブル(OTP)素子を含むことがある。たとえば、OTP素子は、集合的に読出し専用メモリを形成することができる。信頼性を向上させるために、OTP素子は、デュアルOTP構成に配設してもよい。デュアルOTP構成においては、全体読出し出力を決定するのに、2つのOTP素子の各々からの読出し出力に対して、論理OR演算が行われる。すなわち、2倍にしたメモリサイズの代償として、信頼性を改善することができる。
【０００５】
OTP素子は、様々なデバイスを使用して実現することができる。たとえば、e-ヒューズまたはアンチヒューズ(anti-fuse)を使用して、OTPメモリを実現してもよい。e-ヒューズまたはアンチヒューズを使用する場合には、溶断されていないヒューズが論理0を表し、溶断されたヒューズが論理1を表す。溶断されていないe-ヒューズ、またはアンチヒューズ用の溶断されていないゲート酸化物(すなわち、誤りの論理0)の場合には、OTP素子に対するプログラミング不具合が起こる可能性がある。しかしながら、デュアル構成の他方のOTP素子が正しくプログラムされている(すなわち、論理1を含む)場合には、読出し出力に対して論理OR演算を行うことで、プログラミング不具合を克服することができる。
【０００６】
OTP素子を実現するのに使用することのできる別の種類のデバイスは、磁気トンネル接合(MTJ)デバイスである。MTJデバイスは、MTJデバイスがe-ヒューズ/アンチヒューズほど高いプログラミング電圧、負の電圧、または大きなプログラミング電流を必要としなくてもよいので、e-ヒューズ/アンチヒューズよりも好ましい場合がある。MTJ  OTP素子をプログラムするのに、MTJの酸化マグネシウム(MgO)トンネルバリア層を破壊してもよい。しかしながら、このトンネルバリア層は、動作中の損耗によって破壊することもあり、この結果としてポストプログラミングエラーが生じる(たとえば、論理0が論理1となることがある)。(たとえば、損耗による)MTJ酸化物破壊の結果として生じる論理1は誤りであるので、デュアルMTJ  OTP構成において読出し出力に対して論理OR演算を行っても、MTJ酸化物破壊の場合には正しい出力が得られない。論理OR演算を行うことによって、結果として、読出し出力に誤りの論理1が含まれることになる。
【発明の概要】
【課題を解決するための手段】
【０００７】
MTJ  OTP素子に使用することのできる、エラー検出/訂正のシステムおよび方法が開示される。たとえば、デュアルMTJ  OTP素子バンク(たとえば、メモリ)の各々は、シングルエラー訂正(SEC)/ダブルエラー検出(DED)(SEC-DED)デコーダなどのような、エラー訂正コード(ECC)デコーダを含むか、またはそれに接続されてもよい。デコーダの各々は、読出し動作中にフラグを生成してもよい。データに1つのエラーだけが検出されたときには、デコーダは、エラーを訂正して、第1の(たとえば、デアサートされた、または0の)値でフラグを出力してもよい。2つ以上のエラーが検出されるときには、デコーダは、エラーのすべてを訂正することはできず、したがって第2の(たとえば、アサートされた、または1の)値でフラグを出力してもよい。デコーダの一方がそのフラグをアサートするが、他方のデコーダはそうしないときには、非アサートデコーダからの出力を、デュアルMTJ  OTP構成の「正しい」読出し出力として供給してもよい。どちらのフラグもアサートされないときには、デコーダのいずれかからのデータを供給してもよい。両方のフラグがアサートされている(すなわち、両方のデコーダが訂正不可能なエラーに遭遇した)場合には、エラー信号を生成してもよい。
【０００８】
様々な種類のECCを、記述した技法と合わせて使用してよい。たとえば、ハミング(Hamming)コードを使用してもよい。別の例として、パリティビットを生成して、OTP素子に記憶させてもよい。別の実現においては、巡回冗長検査(CRC)方式デコーダを、SEC-DEDデコーダの代わりに使用してもよい。さらに、記述の技法は、非MTJタイプOTPにも使用してもよいことに留意すべきである。
【０００９】
特定の実施形態において、回路は、第1のOTP素子と第2のOTP素子とを含む。この回路は、第1のOTP素子からのデータの第1の表現を受信するように結合された、エラー検出回路も含む。この回路は、エラー検出回路の出力に応答して、データの第1の表現に基づくか、または第2のOTP素子からのデータの第2の表現に基づいて、OTP読出し結果を出力する、出力回路をさらに含む。
【００１０】
別の特定の実施形態において、方法は、第1のOTP素子に記憶されたデータの第1の表現に基づいて第1のフラグを生成するステップであって、第1のフラグが、データの第1の表現が訂正不可能なエラーを含むかどうかを指示する、ステップを含む。この方法は、第2のOTP素子に記憶されたデータの第2の表現に基づいて第2のフラグを生成するステップであって、第2のフラグが、データの第2の表現が訂正不可能なエラーを含むかどうかを指示する、ステップも含む。この方法は、第1のフラグおよび第2のフラグに応答して、データの第1の表現、またはデータの第2の表現に基づいて、読出し出力を生成するステップをさらに含む。
【００１１】
別の特定の実施形態においては、装置は、第1のOTP素子および第2のOTP素子を含む。この装置はまた、第1のOTP素子からのデータの第1の表現を受信するための手段も含む。この装置は、前記受信するための手段の出力に応答して、データの第1の表現に基づくか、または第2のOTP素子からのデータの第2の表現に基づいて、OTP読出し結果を出力するための手段をさらに備える。
【００１２】
別の特定の実施形態においては、方法は、第1のOTP素子に記憶されたデータの第1の表現に基づいて第1のフラグを生成するステップであって、第1のフラグが、データの第1の表現が訂正不可能なエラーを含むかどうかを指示する、ステップを含む。この方法は、第2のOTP素子に記憶されたデータの第2の表現に基づいて第2のフラグを生成するステップであって、第2のフラグが、データの第2の表現が訂正不可能なエラーを含むかどうかを指示するステップも含む。この方法は、第1のフラグおよび第2のフラグに応答して、データの第1の表現またはデータの第2の表現に基づいて、読出し出力を生成する、ステップをさらに含む。
【００１３】
別の特定の実施形態において、非一時的コンピュータ可読媒体は、プロセッサによって実行されると、プロセッサに、第1のOTPに記憶されたデータの第1の表現に基づいて第1のフラグを生成させる、命令を含む。第1のフラグは、データの第1の表現が訂正不可能なエラーを含むかどうかを指示する。これらの命令は、第2のOTP素子に記憶されたデータの第2の表現に基づいて第2のフラグを生成させるように、プロセッサによって実行可能でもある。第2のフラグは、データの第2の表現が訂正不可能なエラーを含むかどうかを指示する。前記命令は、第1のフラグおよび第2のフラグに応答して、データの第1の表現またはデータの第2の表現に基づいて、読出し出力を生成させるように、プロセッサによってさらに実行可能である。
【００１４】
別の特定の実施形態においては、方法は、半導体デバイスの少なくとも1つの物理的性質を表す設計情報を受信するステップを含み、半導体デバイスは、第1のOTP素子および第2のOTP素子を含む。半導体デバイスは、第1のOTP素子からのデータの第1の表現を受信するように結合されたエラー検出回路と、エラー検出回路の出力に応答して、データの第1の表現に基づくか、または第2のOTP素子からのデータの第2の表現に基づいて、OTP読出し結果を出力する、出力回路も含む。この方法は、ファイルフォーマットに適合するように設計情報を変換するステップと、変換された設計情報を含む、データファイルを生成するステップとを含む。
【００１５】
開示された実施形態の少なくとも1つによって提供される1つの特有の利点は、デュアルMTJ  OTP構成におけるメモリを含む、OTPメモリのエラー検出/訂正を行う能力である。本開示のその他の観点、利点、および特徴は、次のセクション:図面の簡単な説明、詳細な説明、および特許請求の範囲を含む、出願全体を検討した後に明白になるであろう。
【図面の簡単な説明】
【００１６】
【図１】OTP素子のエラー検出/訂正を行う動作の可能なシステムの特定の実施形態を示す図である。
【図２】図1の出力ロジックの動作の特定の実施形態を示す表である。
【図３】OTP素子のエラー検出/訂正を行う方法の特定の実施形態を示すフローチャートである。
【図４】OTP素子のエラー検出/訂正を行う動作の可能な構成要素を含むワイヤレスデバイスのブロック図である。
【図５】OTP素子のエラー検出/訂正を行う動作の可能な構成要素を含む電子デバイスを製造する、製造方法の特定の例証用実施形態のデータフロー図である。
【発明を実施するための形態】
【００１７】
図1を参照すると、ワンタイムプログラマブル(OTP)素子のエラー検出/訂正を行う動作の可能なシステムの特定の例証用実施形態が示されており、全体が100で表されている。システム100は、第1の組の1つまたは複数の第1のOTP素子102と、第2の組の1つまたは複数のOTP素子112とを含む。便宜上、第1の組のOTP素子102およびそれと関連する回路/動作には、「左」または「L」のラベルを付け、第2の組のOTP素子112およびそれに関連する回路/動作には、「右」または「R」のラベルを付ける。
【００１８】
OTP素子は、1回、書込み(たとえば、プログラム)し、複数回、読み出すことができる。すなわち、OTP素子は、システム100における読出し専用メモリを表すことができる。図1の例において、OTP素子102および112は、デュアルOTP構成に配設されている。OTP素子をデュアル構成に配設することによって、冗長性を介して、OTPプログラミングエラーの影響を低減することができる。デュアルOTP構成においては、OTP読出し動作は、個々のOTPに対するローカル読出しを行い、次いで、グローバル読出し結果としてどちらの読出し出力を選択するかを決定することを含むことができる。
【００１９】
第1の組のOTP素子102は、第1のロウデコーダ(row  decoder)103に結合し、第2の組のOTP素子112を第2のロウデコーダ113に結合してもよい。特定のOTP素子(たとえば、OTP素子106および116)を読み出すのに、対応するワードライン104、114およびビットライン105、115をアサートしてもよい(たとえば、論理ハイ値または論理1値に設定する)。読み出されるビット数は、ワードサイズ、アラインメント、およびアドレス指定能力(addressability)などの要因に依存することがある。第1の組のOTP素子102に対する読出し動作は、第1の組のOTP素子102の第1のローカルデータパス107によって検出される、第1の信号を生成してもよい。たとえば、第1のローカルデータパス107は、(たとえば、読出し動作中に使用される)1つまたは複数のセンス増幅器、および(たとえば、第1の組のOTP素子102のワンタイムプログラミング中に使用される)プログラミング書込みドライバを含んでもよい。第2の組のOTP素子112に対する読出し動作は、第2の組のOTP素子112の第2のローカルデータパス117によって検出される、第2の信号を生成してもよい。たとえば、第2のローカルデータパス117には、(たとえば、読出し動作中に使用される)1つまたは複数のセンス増幅器、および(たとえば、第2の組のOTP素子112のワンタイムプログラミング中に使用される)プログラミング書込みドライバを含めてもよい。
【００２０】
ローカルデータパス107および117は、読出しデータをエラー検出/訂正回路120へ供給してもよい。たとえば、第1のエラー検出/訂正デコーダ122は、第1のOTP素子102と結合してもよく、第2のエラー検出/訂正デコーダ124は、第2のOTP素子112と結合してもよい。特定の実施形態において、第1のデコーダ122と第2のデコーダ124の少なくとも一方が、エラー訂正コード(ECC)デコーダである。たとえば、ECCデコーダは、シングルエラー訂正(SEC)/ダブルエラー検出(DED)(SEC-DED)デコーダである。代替的、また追加的に、第1のデコーダ122と第2のデコーダ124の少なくとも一方を、巡回冗長検査(CRC)デコーダとしてもよい。なお、ECCデコーダおよびCRCデコーダは、例示としてのみ記述されている。その他の種類のエラー検出/訂正回路も、記述の技法と合わせて使用してもよい。
【００２１】
デコーダ122および124の各々は、対応するOTP素子102および112に記憶されたデータが訂正不可能なエラーを含むかどうかを指示するフラグを生成してもよい。たとえば、第1のデコーダ122は、第1のフラグ133を生成して、第2のデコーダ124は、第2のフラグ134を生成してもよい。第1のフラグ133は、第1のOTP素子102に記憶されたデータの第1の表現が、訂正不可能なエラーを含むかどうかを指示してもよく、第2のフラグ134は、第2のOTP素子112に記憶されたデータの第2の表現が訂正不可能なエラーを含むかどうかを指示してもよい。
【００２２】
説明のために、デコーダ122および124がSEC-DEDデコーダであるとき、デコーダ122および124は、単一のエラーを訂正することができるとともに、データが2つのエラー(すなわち、訂正不可能なエラー)を含むかどうかを検出することができてもよい。すなわち、第1のフラグ133は、第1のデコーダ122が、第1のOTP素子102に記憶されたデータの第1の表現が2つ以上のエラーを含むと判定するときに、アサートしてもよい(たとえば、論理1の値に設定してもよい)。同様に、第2のフラグ134は、第2のデコーダ124が、第2のOTP素子112に記憶されているデータの第2の表現が2つ以上のエラーを含むと判定するときに、アサートしてもよい。別の例として、デコーダ122および124がCRCデコーダであるとき、フラグ133および134は、エラーが検出されるときにアサートされて、エラーが検出されないときにデアサートされてもよい。
【００２３】
デコーダ122および124の各々は、中間(たとえば、ローカル)読出し出力を生成してもよい。特定のOTP素子に記憶されたデータが訂正可能なエラーを含むときには、対応する中間読出し出力は、データのエラー訂正版としてもよい。しかしながら、データが訂正不可能なエラーを含むときには、対応する中間読出し出力は、そのエラーを含んでもよい。図1の例においては、第1のデコーダ122が、第1の中間読出し出力131を生成し、第2のデコーダ124が、第2の中間読出し出力132を生成する。図1のデュアルOTP構成から単一ビットが読み出されているときには、中間読出し出力131および132は、各々単一ビットを含んでもよい。多ビット(たとえば、8ビットワード、32ビットワード、その他)がデュアルOTP構成から読み出されているときには、中間読出し出力131および132は、多(たとえば、8、32、その他の)ビットを各々含んでもよい。
【００２４】
エラー検出/訂正回路120は、中間読出し出力131、132およびフラグ133および134を、出力回路140に供給してもよい。特定の実施形態において、出力回路140は、マルチプレクサ(MUX)144に選択信号を供給するように構成された出力ロジック142を含む。フラグ133および134の値に基づいて、出力ロジック142は、MUX144に、第1の中間読出し出力131または第2の中間読出し出力132を、システム100のグローバルデータパスに供給される、OTP読出し結果150として選択させてもよい。出力ロジック142の動作の特定の例を示す表について、図2を参照してさらに説明する。
【００２５】
なお、OTP素子102および112は、ヒューズ方式またはアンチヒューズ方式のOTP素子、磁気トンネル接合(MTJ)OTP素子、またはその他の種類のOTP素子としてもよいことに留意すべきである。OTP素子102および112がMTJ  OTP素子であるときには、各MTJ  OTP素子は層のスタックを含んでもよい。たとえば、下端から上端まで、(MTJ  OTP素子内の)MTJスタックは、バッファ層、反強磁性(AF:anti-ferromagnetic)ピニング層(たとえば、プラチナマンガン(PtMn)製)、合成AFピンド層(たとえば、コバルト鉄(CoFe)、ルテニウム(Ru)、およびコバルト鉄ボロン(CoFeB)の副層を含む)、トンネルバリア層(たとえば、酸化マグネシウム(MgO)製)、自由層(たとえば、CoFeB製)、およびキャッピング層を含んでもよい。
【００２６】
OTPメモリ用に使用されるときには、MTJ素子は、プログラミング電圧を使用してトンネルバリア層を破壊(たとえば、溶断)することによってプログラムしてもよい。トンネルバリア層が手つかずの場合には、MTJ  OTP素子は、論理0を表すとともに、MTJ素子が平行状態にあるか、反平行状態にあるかに応じて、約2〜4キロオームの電気抵抗を与えてもよい。トンネルバリア層が破壊されると、MTJ  OTP素子は、論理1を表して、1桁小さい(たとえば、約250オームの)電気抵抗をもたらしてもよい。すなわち、MTJ  OTP素子の抵抗の、基準抵抗(たとえば、1.5キロオーム)に対する比較を、MTJ  OTP素子が論理1を表すか、論理0を表すかを判定するのに使用してもよい。しかしながら、MTJ  OTP素子のトンネルバリア層は比較的薄い(たとえば、10オングストローム未満である)ので、トンネルバリア層は、寿命動作(たとえば、損耗)中に、かつ/またはプロセス変動により破壊することがある。この結果として、論理0は、誤った論理1によって置き換えられることがある。エラー検出/訂正回路120および出力回路140を使用することによって、そのようなエラーを訂正することができる。
【００２７】
動作中に、OTP素子102および112をプログラムしてもよい。たとえば、OTP素子102および112がMTJ方式であるときには、8ビットワード「11110000」を、次の4つのOTP素子のバリア酸化物層を手つかずのまま残しながら、4つのOTP素子のバリア酸化物層を破壊することによってプログラムしてもよい。回路120によって実現される、エラー検出/訂正のタイプに応じて、パリティビットのような、追加のビットもプログラムしてもよい。特定の実施形態において、32データビットごとに7つのパリティビットを生成してもよい。たとえば、OTP素子106は、正しくプログラムされるが、2つのプログラミングエラーが、OTP素子116において発生することがあり、その結果、第3および第4のビットにおける破壊しない酸化物によって、「11000000」が得られる。
【００２８】
プログラミングが完了した後に、8ビットワードに対して読出し動作を行ってもよい。説明の目的で、デコーダ122および124の各々はSEC-DEDデコーダであると仮定する。すなわち、第1のデコーダ122は、左OTP素子102に記憶された8ビットワードの表現内に訂正不可能なエラーが存在しないので、デアサートされた(たとえば、ゼロ)値を有する第1のフラグ133を出力してもよく、第1の中間読出し出力131は「11110000」としてもよい。しかしながら、第2のデコーダ124は、右OTP素子112に記憶された8ビットワードの表現内に訂正不可能なエラーが存在するので(たとえば、SEC-DEDデコーダは、プログラミングエラーの両方を訂正することはできないので)、アサートされた(たとえば、1の)値を有する第2のフラグ134を出力してもよい。すなわち、第2の中間読出し出力132は正しくないことがある。
【００２９】
出力ロジック142は、フラグ133および134を受信してもよい。図2の表に示されるように、第1のフラグ133がデアサートされ、かつ第2のフラグ134がアサートされているとき、出力ロジック142は、選択信号(SEL)を、MUX144が第1の中間読出し出力131をOTP読出し結果150として選択するように、設定してもよい。すなわち、エラーを含まない、左OTP素子102における8ビットワードの表現を、OTP読出し結果150として選択してもよい。
【００３０】
OTP素子102および112に対する寿命動作(たとえば、定常的な損耗)中に、酸化物破壊が起こることがある。たとえば、酸化物破壊が、左OTP素子102内の8ビットワードの最後ビットにおいて発生して、結果として「11110001」となることがある。しかしながら、シングルビットエラーだけが、ワード内で形成されたので、第1のSEC-DECデコーダ122は、読出し動作中にエラーを正しく訂正することが可能であり、第1の中間読出し出力131は「11110000」のままとすることができる。すなわち、第1のフラグ133が読出し動作中にデアサートされて、エラー訂正された中間読出し出力131が、OTP読出し結果150として選択されてもよい。
【００３１】
なお、図1のシステム100において、様々な種類のECCを使用してもよいことに留意すべきである。たとえば、ハミングコードを使用してもよい。別の例として、パリティビットを生成して、OTP素子102および112内に記憶させてもよい。別の実現形態においては、巡回冗長検査(CRC)式デコーダを、SEC-DEDデコーダの代わりに使用してもよい。
【００３２】
すなわち、図1のシステム100は、デュアルOTP構成において、MTJ素子を含むOTP素子のエラー検出/訂正を可能にすることができる。読出し出力に対して論理OR動作を行い、したがって誤った論理1値を伝播するシステムとは異なり、図1のシステム100は、誤った論理1値を検出、訂正するために、エラー訂正技法を使用してもよい。たとえば、MTJ酸化物破壊により生じる誤った論理1値は、エラー検出/訂正回路120を使用して検出、訂正してもよい。
【００３３】
図2を参照すると、図1の出力ロジック142の動作の特定の実施形態を示す、表200が示されている。表200に示されているように、第1のフラグ133(「FLG_DED_L」と表す)と、第2のフラグ134(「FLG_DED_R」と表す)のいずれもアサートされていないときには、第1の読出し出力131(「DOUT_L」と表す)および第2の読出し出力132(「DOUT_R」と表す)の両方が正しいので、選択信号(SEL)のどちらかの値をMUX144に供給してもよい。しかしながら、フラグ133、134の一方がアサートされて、他方のフラグがデアサートされているときには、選択信号(SEL)を、デアサートされたフラグに対応する読出し出力が、OTP読出し結果150(「DOUT」と表す)として選択されるように、生成してもよい。両方のフラグ133、134がアサートされているときには、両方の読出し出力131、132が誤りであるので、選択信号(SEL)のいずれの値を使用してもよい。この場合には、エラー信号を生成してもよい。
【００３４】
図3を参照すると、OTP素子のエラー検出/訂正を行う方法の特定の実施形態のフローチャートが示されており、全体が300で表されている。例証用の実施形態において、方法300は、図1のシステム100において実施してもよい。
【００３５】
方法300は、302において、第1のOTPに記憶されたデータの第1の表現に対して、第1のエラー検出動作を実施して第1のフラグを生成することを含んでもよい。第1のフラグは、データの第1の表現が、訂正不可能なエラーを含むかどうかを指示してもよい。たとえば、図1において、第1のデコーダ122は、OTP素子106に記憶されたデータの第1の表現に対する第1のエラー検出動作を実施して、第1のフラグ133を生成してもよい。特定の実施形態において、第1のデコーダ122は、データの第1の表現が訂正可能なエラーを含むという判定に応答して、エラー訂正動作を実施してもよい。たとえば、第1のデコーダ122がSEC-DEDデコーダであり、データの第1の表現内に単一のエラーが存在するときには、第1のデコーダ122はエラーを訂正してもよい。
【００３６】
方法300は、304において、第2のOTP素子に記憶されたデータの第2の表現に対して、第2のエラー検出動作を実施して、第2のフラグを生成してもよい。第2のフラグは、データの第2の表現が訂正不可能なエラーを含むかどうかを指示してもよい。たとえば、図1において、第2のデコーダ124は、OTP素子116に記憶されたデータの第2の表現に対する第2のエラー検出動作を実施して、第2のフラグ134を生成してもよい。特定の実施形態において、第2のデコーダ124は、データの第2の表現が訂正可能なエラーを含むという判定に応答して、エラー訂正動作を実施してもよい。たとえば、第2のデコーダ124が、SEC-DEDデコーダであるとともに、単一のエラーがデータの第2の表現内に存在するときには、第2のデコーダ124は、エラーを訂正してもよい。
【００３７】
方法300は、306において、第1のフラグおよび第2のフラグに応答して、データの第1の表現またはデータの第2の表現に基づいて、読出し出力を生成することをさらに含んでもよい。たとえば、図1において、MUX144は、出力ロジック142から受信された選択信号に基づいて、OTP読出し結果150を生成してもよく、選択信号は、図2の表200を参照して記述したように、第1のフラグ133と第2のフラグ134とに応答性を有する。
【００３８】
図3の方法300は、このように、デュアルOTP構成における、MTJ素子を含む、OTP素子のエラー検出/訂正を可能にすることができる。さらに、読出し出力に対して論理OR演算を実施し、そのために誤った論理1値を伝播するシステムとは異なり、図3の方法300は、エラー訂正技法を使用して、(たとえば、MTJ酸化物破壊により作成される)誤りのある論理1値を検出して訂正してもよい。
【００３９】
図4を参照すると、OTP素子のエラー検出/訂正を行う動作の可能な構成要素を含む、ワイヤレスデバイス400のブロック図が示されている。ワイヤレスデバイス400は、メモリ432に結合された、ディジタルシグナルプロセッサ(DSP)のような、プロセッサ410を含む。
【００４０】
図4は、プロセッサ410とディスプレイ428とに結合された、ディスプレイコントローラ426も示す。コーダ/デコーダ(CODEC)434は、プロセッサ410に結合することもできる。スピーカ436およびマイクロフォン438をCODEC434に結合することができる。図4は、ワイヤレスコントローラ440が、プロセッサ410に結合するとともに、ワイヤレスコントローラ440とアンテナ442との間に配置された無線周波数(RF)インターフェース480を介して、アンテナ442に結合することができることも示している。ワンタイムプログラマブル(OTP)素子491および492は、図示されているようにプロセッサ410へと結合されてもよい。OTP素子491および492は、図1のOTP素子102および112に一致してもよい。OTP素子491および492は、エラー検出/訂正回路493と出力回路494とに結合してもよい。エラー検出/訂正回路493は、図1のエラー検出/訂正回路120と一致してもよく、出力回路494は、図1の出力回路140に対応してもよい。
【００４１】
メモリ432は、実行可能命令456を含む、有形の非一時的プロセッサ可読記憶媒体としてもよい。命令456は、プロセッサ410のようなプロセッサによって実行されて、本明細書に記述した動作、機能、および/または方法、たとえば図3の方法300、の1つまたは複数を実施するか、または実施を開始してもよい。命令456は、プロセッサ410に結合された、ワイヤレスデバイス400の代替的なプロセッサ(図示せず)によって実行可能としてもよい。たとえば、プロセッサ410は、命令456を実行する間に、OTP素子491および492に対する読出し動作を実施(または開始)してもよい。すなわち、プロセッサ410による命令456の実行は、第1のフラグ(たとえば、図1の第1のフラグ133)の生成、第2のフラグ(たとえば、図1の第2のフラグ134)の生成、および読出し出力(たとえば、図1のOTP読出し結果150)の生成を引き起こす(または開始する)ことができる。
【００４２】
特定の実施形態において、プロセッサ410、ディスプレイコントローラ426、メモリ432、CODEC434、およびワイヤレスコントローラ440が、システムインパッケージデバイスまたはシステムオンチップデバイス422内に含まれる。特定の実施形態において、入力デバイス430および電源444が、システムオンチップデバイス422に結合される。さらに、特定の実施形態において、図4に示されているように、ディスプレイ428、入力デバイス430、スピーカ436、マイクロフォン438、アンテナ442、および電源444が、システムオンチップデバイス422の外部にある。しかしながら、ディスプレイ428、入力デバイス430、スピーカ436、マイクロフォン438、アンテナ442、および電源444は、インターフェースまたはコントローラなどの、システムオンチップデバイス422の構成要素に結合することができる。
【００４３】
記述した実施形態と関係して、装置は、第1のOTP素子、第2のOTP素子、および第1のOTP素子からのデータの第1の表現を受信するための手段を含む。たとえば、受信するための手段は、ローカルデータパス107、ローカルデータパス117、エラー検出/訂正回路120、第1のデコーダ122、第2のデコーダ124、エラー検出/訂正回路493、1つもしくは複数のその他のデバイス、回路、モジュール、またはOTP素子からのデータを受信する命令、またはそれらの任意の組合せを含むことができる。
【００４４】
装置は、受信のための手段の出力に応答して、第1のOTP素子からのデータの第1の表現に基づいて、または第2のOTP素子からのデータの第2の表現に基づいて、OTP読出し結果を出力するための手段も含む。たとえば、出力するための手段は、出力回路140、出力ロジック142、MUX144、出力回路494、1つもしくは複数のその他のデバイス、回路、モジュール、またはデータを出力するための命令、またはそれらの任意の組合せを含んでもよい。
【００４５】
前述の開示のデバイスおよび機能は、コンピュータ可読媒体に記憶されたコンピュータファイル(たとえば、RTL、GDSII、GERBER、など)中に設計および構成してもよい。そのようなファイルの一部または全部を、そのようなファイルに基づいてデバイスを製作する、製作取扱者に供給してもよい。結果として得られる製品としては、次いで、半導体ダイに切断されて、半導体チップ中にパッケージされる、半導体ウェーハがある。チップは、次いで、上記のデバイスにおいて利用される。図5は、電子デバイス製造プロセス500の特定の例証用実施形態を示す。
【００４６】
物理デバイス情報502が、リサーチコンピュータ506におけるなど、製造プロセス500において受け取られる。物理デバイス情報502は、図1のシステム100および/またはその構成要素(たとえば、OTP素子102、OTP素子112、エラー検出/訂正回路120、出力回路140、など)を含むデバイスなどの、半導体デバイスの少なくとも1つの物理的性質を表す情報を含んでもよい。たとえば、物理デバイス情報502は、物理パラメータ、材料特性、およびリサーチコンピュータ506に結合されたユーザインターフェース504を介して入力される構造情報を含めてもよい。リサーチコンピュータ506は、メモリ510などのコンピュータ可読媒体に結合された、1つまたは複数の処理コアなどの、プロセッサ508を含む。メモリ510は、コンピュータ可読命令を記憶してもよく、これらの命令は、実行可能であって、プロセッサ508に、物理デバイス情報502をファイルフォーマットに適合するように変換させるとともに、ライブラリファイル512を生成させる。
【００４７】
特定の実施形態において、ライブラリファイル512は、変換された設計情報を含む、少なくとも1つのデータファイルを含む。たとえば、ライブラリファイル512には、電子設計自動化(EDA)ツール520に使用するために提供される、図1のシステム100および/またはその構成要素を含む、半導体デバイスのライブラリを含めてもよい。
【００４８】
ライブラリファイル512は、メモリ518と結合された、1つまたは複数の処理コアなどの、プロセッサ516を含む、設計コンピュータ514において、EDAツール520と合わせて使用してもよい。EDAツール520は、設計コンピュータ514のユーザが、ライブラリファイル512の、図1のシステム100および/またはその構成要素を含む、デバイスを設計することを可能にするために、メモリ518において、プロセッサ実行可能命令として記憶させてもよい。たとえば、設計コンピュータ514のユーザは、設計コンピュータ514に結合された、ユーザインターフェース524を介して回路設計情報522を入力してもよい。
【００４９】
回路設計情報522には、図1のシステム100および/またはその構成要素を含む半導体デバイスの少なくとも1つの物理的性質を表す設計情報を含めてもよい。例証のために、回路設計特性には、特定の回路の識別、および回路設計におけるその他の要素への関係、位置決め情報、フィーチャサイズ情報、相互接続情報、または半導体デバイスの物理的性質を表す、その他の情報を含めてもよい。
【００５０】
設計コンピュータ514は、回路設計情報522を含む、設計情報を、ファイルフォーマットに適合するように変換するように構成してもよい。例証のために、ファイルフォーマットには、グラフィックデータシステム(GDSII)ファイルフォーマットなどの、平面幾何学形状、テキストラベル、および階層フォーマットにレイアウトされた回路についての、その他の情報を表す、データベースバイナリファイルフォーマットを含めてもよい。設計コンピュータ514は、図1のシステム100および/またはその構成要素を含むとともに、SOC内の追加の電子回路および構成要素も含む、デバイスを記述する情報を含む、GDSIIファイル526などの、変換された設計情報を含むデータファイルを生成するように構成されてもよい。
【００５１】
GDSIIファイル526は、製作プロセス528において受け取り、GDSIIファイル526内の変換された情報に従って、図1のシステム100および/またはその構成要素を含む、半導体デバイスを製造してもよい。たとえば、デバイス製造プロセスには、GDSIIファイル526をマスク製造業者530に供給して、フォトリソグラフィ処理に使用する、代表的なマスク532として図示されている、1つまたは複数のマスクを作成することを含んでもよい。マスク532を、製作プロセス中に使用して、1つまたは複数のウェーハ534を生成して、このウェーハを試験して、代表的なダイ536のようなダイに切り離してもよい。ダイ536は、図1のシステム100および/またはその構成要素を含む、回路を含む。
【００５２】
ダイ536は、ダイ536が代表的なパッケージ540中に組み込まれる、パッケージングプロセス538へと供給してもよい。たとえば、パッケージ540は、単一のダイ536または、システムインパッケージ(SiP)配設のような、複数のダイを含んでもよい。パッケージ540は、合同電子デバイス技術協議会(JEDEC:  Joint  Electron  Device  Engineering  Council)などの、1つまたは複数の標準または規格に適応するように構成してもよい。
【００５３】
パッケージ540に関する情報は、コンピュータ546に記憶されたコンポーネントライブラリを介するなどして、様々な製品設計者に配布してもよい。コンピュータ546は、メモリ550に結合された1つまたは複数の処理コアのような、プロセッサ548を含んでもよい。プリント回路基板(PCB)ツールは、プロセッサ実行可能命令としてメモリ550に記憶して、ユーザインターフェース544を介してコンピュータ546のユーザから受け取ったPCB設計情報542を処理してもよい。PCB設計情報542には、回路基板上にパッケージングされた半導体デバイスの物理的位置決め情報を含めてもよく、パッケージングされた半導体デバイスは、図1のシステム100および/またはその構成要素を含む、パッケージ540に対応する。
【００５４】
コンピュータ546は、PCB設計情報542を変換して、回路基板上のパッケージングされた半導体デバイスの物理的位置決め情報、ならびにトレースおよびビアなどの電気的接続のレイアウトを含む、データを備えるGERBERファイル552などの、データファイルを生成するように構成してもよく、この場合にパッケージングされた半導体デバイスは、図1のシステム100および/またはその構成要素を含む、パッケージ540に対応する。その他の実施形態において、変換されたPCB設計情報によって生成されたデータファイルは、GERBERフォーマット以外のフォーマットを有してもよい。
【００５５】
GERBERファイル552は、基板アセンブリプロセス554において受け取られて、GERBERファイル552内に記憶された設計情報に従って製造された、代表的なPCB556のような、PCBを作成するのに使用してもよい。たとえば、GERBERファイル552は、1つまたは複数のマシンにアップロードされて、PCB生成プロセスの様々なステップを実施してもよい。PCB556は、パッケージ540を含む電子構成要素が配置されて、代表的なプリント回路アセンブリ(PCA)558を形成してもよい。
【００５６】
PCA558は、製品製造プロセス560において受け取られて、第1の代表的な電子デバイス562および第2の代表的な電子デバイス564などの、1つまたは複数の電子デバイスに一体化されてもよい。例証のための非限定の例として、第1の代表的な電子デバイス562、第2の代表的な電子デバイス564、または両方を、図1のシステム100および/またはその構成要素がその中に一体化されている、セットトップボックス、音楽プレーヤ、ビデオプレーヤ、エンターテインメントユニット、ナビゲーションデバイス、通信デバイス、携帯情報端末(PDA)、固定場所データユニット、およびコンピュータからなる群から選択してもよい。別の例証のための非限定の例として、電子デバイス562および564の1つまたは複数は、モバイル電話のようなリモートユニット、携帯情報端末のようなハンドヘルドパーソナル通信システム(PCS)ユニット、携帯用データユニット、全地球測位システム(GPS)利用可能デバイス、ナビゲーションデバイス、固定場所データユニット、検針機器などの固定場所データユニット、またはデータまたはコンピュータ命令を記憶するまたは取り出すその他任意のデバイス、またはそれらの任意の組合せとしてもよい。本開示の教示によるリモートユニットに加えて、本開示の実施形態は、メモリおよびオンチップ回路を含む、アクティブ集積回路を含む、任意のデバイスに好適に使用することができる。
【００５７】
図1のシステム100および/またはその構成要素を含むデバイスは、例証のためのプロセス500に記述されるように、製作、処理されるとともに、電子デバイス中に組み入れられてもよい。図1〜図4について開示された実施形態の1つまたは複数の観点は、ライブラリファイル512、GDSIIファイル526、およびGERBERファイル552内などの、様々なステージにおいて含まれてもよく、それに加えて、リサーチコンピュータ506のメモリ510、設計コンピュータ514のメモリ518、コンピュータ546のメモリ550、基板アセンブリプロセス554などの、様々なステージにおいて使用される、1つまたは複数のその他のコンピュータまたはプロセッサ(図示せず)のメモリに記憶されてもよく、またマスク532、ダイ536、パッケージ540、PCA558、プロトタイプ回路またはデバイス(図示せず)などのその他の製品、またはそれらの任意の組合せなどの、1つまたは複数のその他物理的実施形態に組み込まれてもよい。物理デバイス設計から最終製品までの、様々な代表的な生産のステージについて述べたが、その他の実施形態においては、より少ないステージを使用するか、または追加のステージを含めてもよい。同様に、プロセス500は、単一のエンティティによるか、またはプロセス500の様々なステージを実施する、1つまたは複数のエンティティによって実施してもよい。
【００５８】
当業者は、本明細書において開示された実施形態と関係して記述した、様々な例証のための論理ブロック、構成、モジュール、回路および、アルゴリズムステップは、電子ハードウェア、プロセッサによって実行されるコンピュータソフトウェア、または両者の組合せによって実現してもよいことにさらに気付くであろう。様々な例証のための構成要素、ブロック、構成、モジュール、回路、およびステップを、概してその機能について上記した。そのような機能が、ハードウェアとして実現されるか、またはプロセッサ実行可能な命令として実現されるかは、特定の応用および、システム全体に課せられる設計制約に依存する。当業者は、各々の特定の応用に対して、様々な方法で記述された機能を実現するかもしれないが、そのような実現の決定は、本開示の範囲からの逸脱を起こすものと解釈されるべきではない。
【００５９】
本明細書において開示された実施形態と関係して記述された方法またはアルゴリズムのステップは、ハードウェアとして、プロセッサによって実行可能なソフトウェアモジュールとして、または両者の組合せとして、直接的に具現化してもよい。ソフトウェアモジュールは、ランダムアクセスメモリ(RAM)、フラッシュメモリ、読出し専用メモリ(ROM)、プログラマブル読出し専用メモリ(PROM)、消去可能プログラマブル読出し専用メモリ(EPROM)、電気的消去可能プログラマブル読出し専用メモリ(EEPROM)、レジスタ、ハードディスク、リムーバブルディスク、コンパクトディスク読出し専用メモリ(CD-ROM)、または当該技術分野において知られている、その他任意の形態の非一時的記憶媒体内に存在してもよい。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み出すとともに、それに書き込むことができるように、プロセッサに結合される。代替的形態においては、記憶媒体は、プロセッサと一体化してもよい。プロセッサおよび記憶媒体は、特定用途向け集積回路(ASIC)内に存在してもよい。ASICは、コンピュータデバイスまたはユーザ端末内に存在してもよい。代替形態においては、プロセッサおよび記憶媒体は、コンピュータデバイスまたはユーザ端末内の別個の構成要素として存在してもよい。
【００６０】
開示された実施形態についての先述の説明は、当業者が、開示された実施形態を製作または使用することを可能にするために提示されたものである。これらの実施形態に対する様々な修正が、当業者にはすぐに明白となり、本明細書において定義される原理は、本開示の範囲から逸脱することなく、その他の実施形態に応用することができるであろう。すなわち、本開示は、本明細書において示された実施形態に限定されることを意図するものではなく、以下の特許請求の範囲によって定義される原理および新規な特徴に見合った可能な限り広い範囲が認容されるべきである。
【符号の説明】
【００６１】
100  システム
102  第1の組のOTP素子
103  ロウデコーダ
104  ワードライン
105  ビットライン
107  第1のローカルデータパス
112  第2の組のOTP素子
113  ロウデコーダ
114  ワードライン
115  ビットライン
117  ローカルデータパス
120  エラー検出/訂正回路
122  第1のエラー検出/訂正デコーダ
124  第2のエラー検出/訂正デコーダ
131  第1の中間読出し出力
132  第2の中間読出し出力
133  第1のフラグ
134  第2のフラグ
140  出力回路
142  出力ロジック
144  マルチプレクサ(MUX)
150  OTP読出し結果
400  ワイヤレスデバイス
410  プロセッサ
422  システムインパッケージデバイスまたはシステムオンチップデバイス
426  ディスプレイコントローラ
428  ディスプレイ
430  入力デバイス
432  メモリ
434  CODEC
436  スピーカ
438  マイクロフォン
440  ワイヤレスコントローラ
442  アンテナ
444  電源
456  命令
480  無線周波数RFインターフェース
491  OTP素子
492  OTP素子
493  エラー検出/訂正回路
494  出力回路
500  製造プロセス
502  物理デバイス情報
504  ユーザインターフェース
506  リサーチコンピュータ
508  プロセッサ
510  メモリ
512  ライブラリファイル
514  設計コンピュータ
516  プロセッサ
518  メモリ
520  EDAツール
522  回路設計情報
524  ユーザインターフェース
526  GDSIIファイル
528  製作プロセス
530  マスク製造業者
532  マスク
534  ウェーハ
536  ダイ
538  パッケージングプロセス
540  パッケージ
542  PCB設計情報
544  ユーザインターフェース
546  コンピュータ
548  プロセッサ
550  メモリ
552  GERBERファイル
554  基板アセンブリプロセス
556  PCB
558  プリント回路アセンブリ(PCA)
560  製品製造プロセス
562  第1の代表的電子デバイス
564  第2の代表的電子デバイス
【図１】
0006306611.tif 000002
【図２】
0006306611.tif 000003
【図３】
0006306611.tif 000004
【図４】
0006306611.tif 000005
【図５】
0006306611.tif 000006