(57)【要約】【課題】メモリアレイのカスタマイズ可能な誤り訂正を提供するための方法と装置を提供する。【解決手段】装置は、データを格納するためのメモリアレイを有するメモリデバイスと、メモリアレイに連結されているアナログ対デジタルセンスユニットを含んでいる。アナログ対デジタルセンスユニットは、メモリアレイに関連付けられているアナログ信号を感知し、当該アナログ信号をデジタル値の分布に変換する。誤り訂正符号（ＥＣＣ）ユニットが、アナログ対デジタルセンスユニットから、デジタル値の分布を受信する。構成可能なルックアップテーブルが、誤り確率データを含むＥＣＣパラメータを生成し、当該ＥＣＣパラメータを、誤り訂正のためにＥＣＣユニットに提供する。誤り確率データは、デジタル値の分布に関連付けられている誤り確率値を有している。ＥＣＣユニットは、当該誤り確率データを使用して誤り訂正を提供するためにＥＣＣアルゴリズムを実行する。【選択図】図２
2011108354.tif 000002
【特許請求の範囲】
【請求項１】
データを格納するためのメモリアレイと、
前記メモリアレイに連結されているアナログ対デジタルセンスユニットであって、前記メモリアレイに関連付けられているアナログ信号を感知して、当該アナログ信号をデジタル値に分布に変換するものである、アナログ対デジタルセンスユニットと、
前記アナログ対デジタルセンスユニットに連結されている誤り訂正符号（ＥＣＣ）ユニットであって、前記アナログ対デジタルセンスユニットから前記デジタル値の分布を受信し、且つ前記デジタル値の分布に関連付けられている誤り確率値を有する誤り確率データを取得するものである、誤り訂正符号（ＥＣＣ）ユニットと、を備えている装置。
【請求項２】
前記ＥＣＣユニットは、前記誤り確率データを使用して誤り訂正を提供するためにＥＣＣアルゴリズムを実行するものである、請求項１に記載の装置。
【請求項３】
前記ＥＣＣユニットに連結されている構成可能不揮発性ルックアップテーブルであって、前記誤り確率データを含むＥＣＣパラメータを生成し、前記ＥＣＣパラメータを、誤り訂正のために前記ＥＣＣユニットに提供するものである、構成可能不揮発性ルックアップテーブルを更に備えている、請求項１に記載の装置。
【請求項４】
前記構成可能不揮発性ルックアップテーブルは、前記デジタル値の分布に基づく誤り確率データを、前記分布中のデジタル値の基準レベルからの距離に基づいている誤り確率値で更新する、請求項３に記載の装置。
【請求項５】
前記アナログ対デジタルセンスユニットは、前記装置が始動した際に、前記メモリアレイのメモリセルに関連付けられているアナログ信号を感知するものである、請求項１に記載の装置。
【請求項６】
前記アナログ対デジタルセンスユニットは、前記メモリアレイの読み取り状態が与えられた際に、前記メモリアレイのメモリセルに関連付けられているアナログ信号を感知するものである、請求項１に記載の装置。
【請求項７】
前記装置は、１つ又はそれ以上の追加のメモリアレイを更に備えており、前記ＥＣＣユニットは、２つ又はそれ以上のメモリアレイについて誤り訂正を提供するものである、請求項３に記載の装置。
【請求項８】
少なくとも１つのプロセッサコアを有する処理ユニットと、
前記処理ユニットに連結されているシステムメモリであって、集積回路を有するシステムメモリと、を備えているデータ処理ユニットであって、前記集積回路が、
データを格納するためのメモリアレイと、
前記メモリアレイに連結されているアナログ対デジタルセンスユニットであって、前記メモリアレイに関連付けられているアナログ信号を感知して、当該アナログ信号をデジタル値に分布に変換するものである、アナログ対デジタルセンスユニットと、
前記アナログ対デジタルセンスユニットに連結されている誤り訂正符号（ＥＣＣ）ユニットであって、前記アナログ対デジタルセンスユニットから前記デジタル値の分布を受信し、且つ前記デジタル値の分布に関連付けられている誤り確率値を有する誤り確率データを取得するものである、誤り訂正符号（ＥＣＣ）ユニットと、を備えている、データ処理デバイス。
【請求項９】
前記ＥＣＣユニットは、前記誤り確率データを使用して誤り訂正を提供するためにＥＣＣアルゴリズムを実行するものである、請求項８に記載のデータ処理デバイス。
【請求項１０】
前記ＥＣＣユニットに連結されている構成可能不揮発性ルックアップテーブルであって、前記誤り確率データを含むＥＣＣパラメータを生成し、前記ＥＣＣパラメータを、誤り訂正のために前記ＥＣＣユニットに提供するものである、構成可能不揮発性ルックアップテーブルを更に備えている、請求項８に記載のデータ処理デバイス。
【請求項１１】
前記構成可能不揮発性ルックアップテーブルは、前記デジタル値の分布に基づく誤り確率データを、前記分布中のデジタル値の基準レベルからの距離に基づいている誤り確率値で更新する、請求項１０に記載のデータ処理デバイス。
【請求項１２】
前記デジタル値は、前記メモリアレイのメモリセルの電流又は電圧分布を表している、請求項８に記載のデータ処理デバイス。
【請求項１３】
前記不揮発性ルックアップテーブルは、前記セル電流の変動又は前記アレイの抵抗又は閾値電圧の分布の変動に基づく、更新されたデジタル値を受信するように構成されている、請求項１０に記載のデータ処理デバイス。
【請求項１４】
前記不揮発性ルックアップテーブルは、前記ＥＣＣユニットの外部に在るか当該ＵＣＣユニット内に埋め込まれている、請求項１０に記載のデータ処理デバイス。
【請求項１５】
データをメモリアレイに格納する段階と、
アナログ対デジタルセンスユニットを使用して、前記メモリアレイに関連付けられているアナログ信号を感知する段階と、
前記アナログ対デジタルセンスユニットを使用して、前記アナログ信号をデジタル値の分布に変換する段階と、
前記アナログ対デジタルセンスユニットからの前記デジタル値の分布を、誤り訂正符号（ＥＣＣ）ユニットに送る段階と、
それぞれのデジタル値に関連付けられている誤り確率データを生成する段階と、から成る方法。
【請求項１６】
前記誤り確率データを使用して誤り訂正を提供するために、前記ＥＣＣユニットでＥＣＣアルゴリズムを実行する段階を更に含んでいる、請求項１５に記載の方法。
【請求項１７】
不揮発性ルックアップテーブルを使用して、誤り確率データを含むＥＣＣパラメータを前記ＥＣＣユニットに提供する段階を更に含んでいる、請求項１５に記載の方法。
【請求項１８】
前記不揮発性ルックアップテーブルを、メモリデバイスが始動するか又は前記メモリアレイの読み取り状態が与えられた際の、前記メモリアレイに関連付けられている更新された誤り情報で、更新する、請求項１７に記載の方法。
【請求項１９】
前記不揮発性ルックアップテーブルを、適切な電圧センサー又は温度センサーによってそれぞれ検出された作動電圧又は温度の変動の結果としての、前記メモリアレイに関係付けられている更新された誤り情報で、更新する段階を更に含んでいる、請求項１５に記載の方法。
【請求項２０】
前記構成可能不揮発性ルックアップテーブルは、前記デジタル値の分布に基づく誤り確率データを、前記分布中のデジタル値の基準レベルからの距離に基づいている誤り確率値で更新する、請求項１５に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、概括的には、メモリの誤り訂正の分野に関する。より厳密には、本発明の実施形態は、アナログ感知に係るカスタマイズ可能な誤り訂正に関する。
【背景技術】
【０００２】
電子デバイスは、それらのデバイスに収容されているメモリにアクセスするのに誤り訂正を必要とする。誤り訂正符号（ＥＣＣ）又は前方誤り訂正（ＦＥＣ）符号は、送信側でメッセージに付け加えられる冗長データである。誤りの数が、使用されている符号の能力の範囲内であれば、受信側は、追加情報を利用して、誤りの場所を発見し、それらを訂正することができる。誤り訂正符号は、コンピュータのデータ記憶域で使用される。
【０００３】
次世代の高密度メモリ、特に不揮発性メモリは、技術スケーリングのせいで、１０Ｅ−３の範囲の高い生ビット誤り率を示すであろう。典型的なＥＣＣ機械は、これらの要件に対し十分な働きをしない。更に、ＥＣＣ要件の相違や異なった製品の開発により、設計、開発、試験、及び製造費用の問題が発生することに加え、商品化までの時間も増す。
【発明の概要】
【課題を解決するための手段】
【０００４】
ここには、メモリアレイのためのカスタマイズ可能な誤り訂正を提供するための方法と装置が開示されている。１つの実施形態では、装置は、データを格納するためのメモリセルのアレイを有するメモリデバイスを含んでいる。メモリセルは、ｎ行ｍ列に組まれている。装置はまた、これらのセルを選択し正しくバイアスするための復号手段と、メモリアレイに連結されているアナログ対デジタルセンスユニットも含んでいる。アナログ対デジタルセンスユニットは、メモリアレイセルに関連付けられているアナログ信号（例えば電流又は閾値電圧）を感知し、当該アナログ信号をデジタル値の分布に変換する。本装置はまた、アナログ対デジタルセンスユニットに連結されている誤り訂正符号（ＥＣＣ）ユニットも含んでいる。ＥＣＣユニットは、アナログ対デジタルセンスユニットから、デジタル値の分布を受信する。構成可能なルックアップテーブルが、誤り確率データを含むＥＣＣパラメータを生成し、当該ＥＣＣパラメータを、誤り訂正のためにＥＣＣユニットに提供する。誤り確率データは、デジタル値の分布に関連付けられている誤り確率値を含んでいる。ＥＣＣユニットは、当該誤り確率データを使用して誤り訂正を提供するためにＥＣＣアルゴリズムを実行する。
【０００５】
構成可能なルックアップテーブルは、アナログ信号の分布に基づいて、誤り確率データを更新する。メモリアレイに関連付けられている感知されたアナログ信号及び対応するデジタル値は、メモリアレイの製品寿命中に、例えば製作プロセスの拡大や電圧及び／又は温度作動条件の変化により、変わる可能性がある。構成可能なルックアップテーブルは、それぞれのデジタル値に割り当てられている「誤り確率」の更新の対応に多大な柔軟性を提供する。温度又は電圧動作に関連した変動があれば、誤り確率は、電圧及び温度センサーからもたらされる入力を利用して変更され、ルックアップテーブルの値が更新されることになる。
【０００６】
本発明の１つ又はそれ以上の実施形態が、一例として、限定せずに、添付図面の図に示されており、図中、同様の符号は類似要素を表している。
【図面の簡単な説明】
【０００７】
【図１】１つの実施形態によるデータ処理デバイスを示している。
【図２】１つの実施形態による、メモリアクセスにカスタマイズ可能な誤り訂正を提供する装置を示している。
【図３】別の実施形態による、メモリアクセスにカスタマイズ可能な誤り訂正を提供する装置を示している。
【図４】１つの実施形態による、セル電流又は電圧閾値分布、及びアナログ対デジタルセンスユニットにより生成されるデジタル値の考えられるグリッドを示している。
【図５】１つの実施形態による、アナログ対デジタルセンスユニットの例示としての実装を示している。
【図６】別の実施形態による、アナログ対デジタルセンスユニットにより生成されるデジタル値の分布を示している。
【図７】１つの実施形態による、メモリデバイスの誤り訂正のための方法を示している。
【発明を実施するための形態】
【０００８】
図１は、１つの実施形態による、メモリアクセス及び誤り訂正に係るデータ処理デバイスを示している。データ処理デバイス１００は、第１プロセッサコア１１６及び第２プロセッサコア１１８を有する処理ユニット１１０と、ホストコントローラ１１９と、当該処理ユニット１１０に連結されているシステムメモリ１２０を含んでいる。ホストコントローラ１１９は、処理ユニット１１０に内蔵されていてもよいし、処理ユニット１１０に外付けされていてもよい。第１処理コア１１６と第２処理コア１１８は、埋め込み型不揮発性メモリ１３０と１３２をそれぞれ含んでいる。システムメモリ１２０は、集積回路デバイスであってもよい回路デバイス１２２と、様々な種類のメモリ（例えばＤＲＡＭ１２４、ＲＡＭ１２６、ＲＯＭ１２８）を含んでいる。回路デバイス１２２は、不揮発性メモリアクセス（例えばＮＶＭ１２３）に、アナログ対デジタルセンスユニットとルックアップテーブルとＥＣＣユニットを使用したカスタマイズ可能な誤り訂正を提供する。これらの構成要素は、図２、図３、及び図５に関連して、より詳細に論じてゆく。本開示のカスタマイズ可能な誤り訂正は、メモリ１３０及び１３２にアクセスするために実施されてもよく、それらは、ＮＶＭ１２３に内蔵させることもできるし、ホストコントローラ１１９に駆動させることもできる。
【０００９】
データ処理デバイス１００は、随意的に、処理ユニット１１０に連結されている送受信器１１２を含んでいてもよい。送受信器１１２は、空中伝播信号をアンテナ１１４で受信し、送信器１６０と受信器１６２を含んでいる。このワイヤレスの実施形態に示されている様に、データ処理デバイス１００は、他の空中伝播データ処理デバイスと通信するために、ラジオを可能にする１つ又はそれ以上のアンテナ構造１１４を含んでいる。そういうものとして、データ処理デバイス１００は、セルラーデバイスとして、又はワイヤレスネットワーク内で作動するデバイスとして、作動していてもよい。デバイス１００と同じプラットフォームに並置されているラジオサブシステムは、ＲＦ／位置空間の異なった周波数帯域を用いて、ネットワーク内の他のデバイスと通信する能力を提供している。本発明の範囲は、データ処理デバイス１００が使用する通信プロトコルの種類、数、又は周波数によって制限されることはないものと理解されたい。
【００１０】
当該実施形態は、変調／復調に対応するための送受信器１１２へのアンテナ構造１１４の連結を示している。一般的に、アナログのフロントエンド送受信器１１２は、独立型ラジオ周波数（ＲＦ）個別又は集積アナログ回路であってもよいし、又は当該送受信器１１２には１つ又はそれ以上のプロセッサコア１１６及び１１８を有するプロセッサが埋め込まれていてもよい。複数のコアは、それらコアの間で処理の仕事量を分かち合え、ベースバンド機能とアプリケーション機能に対処する。プロセッサとシステムメモリ１２０のメモリ記憶域の間に通信又は情報を提供するのにインターフェースが使用されていてもよい。
【００１１】
システムメモリ１２０は、１つ又はそれ以上の異なった種類のメモリにより提供されていてもよいし、光学的なＤＲＡＭ、ＲＡＭ、及び／又はＲＯＭと不揮発性メモリ（ＮＶＭ）１２３を有する回路デバイス１２２の両方を含んでいてもよい。ＮＶＭ１２３は、相変化材料を含んでいてもよい。ＮＶＭ１２３は、相変化メモリ（ＰＣＭ）、相変化ランダムアクセスメモリ（ＰＲＡＭ又はＰＣＲＡＭ）、オボニック・ユニファイド・メモリ（ＯＵＭ）、又はカルコゲニド・ランダムアクセスメモリ（Ｃ−ＲＡＭ）と称することもできる。ＮＶＭ１２３には、フラッシュメモリ（例えばＮＯＲ、ＮＡＮＤ）、固体ドライブ、及びカード／スティックメモリを含めることができる。
【００１２】
図２は、１つの実施形態による、メモリアクセスにカスタマイズ可能な誤り訂正を提供する装置を示している。装置２００（例えば回路デバイス１２２）は、データを格納するメモリセル（例えばＮＶＭ１２３）の１つ又はそれ以上のアレイ２１０を含んでいる。アレイ２１０にアクセスするのに、行選択ユニット２２０と列選択及びバイアスユニット２３０が使用されている。メモリアクセスを提供するために、読み取り書き込み回路及び論理２４０が、行選択ユニットと列選択ユニットを制御する。メモリアレイ２１０には、アナログ対デジタルセンスユニット２５０が連結されている。アナログ対デジタルセンスユニット２５０は、メモリアレイのメモリセルに関連付けられているアナログ信号を感知し、当該アナログ信号をデジタル値の１つ又はそれ以上の分布に変換するが、これについては図４−図６の説明に関連して、より詳細に説明してゆく。アナログ信号は、メモリセルの論理状態（例えば０、１、００、０１、１０、１１）に関連付けられている電流又は電圧値の分布を含むことができる。アナログ対デジタルセンスユニット２５０には、アレイ２１０から、ユーザーデータ及びパリティ情報も送ることができる。
【００１３】
１つの実施形態では、アナログ対デジタルセンスユニット２５０には、誤り訂正符号（ＥＣＣ）ユニット２６０が連結されている。ＥＣＣユニット２６０は、アナログ対デジタルセンスユニット２５０からデジタル値の分布（例えばＮ０[ｋ：０]、Ｎ１[ｋ:０]、．．．Ｎｉ[ｋ:０]）を受信し、１つ又はそれ以上のアレイ用のルックアップテーブル２７０により提供されている誤り確率データを使用して誤り訂正を提供するためにＥＣＣアルゴリズムを実行する、符号化／復号化機械を含んでいる。ルックアップテーブルは、デジタル値の分布を更新することにより、更新させることができる。ＥＣＣアルゴリズムは、メモリ（例えばＲＯＭ）のＥＣＣユニットに格納し、マイクロコントローラを用いて実施することもできるし、又はアルゴリズムは、有限状態機械又はブール回路として実施することもできる。
【００１４】
ＥＣＣユニット２６０には、構成可能不揮発性ルックアップテーブル２７０が連結されている。構成可能不揮発性ルックアップテーブル２７０は、誤り確率データを含むＥＣＣパラメータ（例えばＥＣＣパラメータ１[ｊ:０]、．．．ＥＣＣパラメータｉ[ｊ:０]）を生成し、当該ＥＣＣパラメータを、誤り訂正のためにＥＣＣユニット２６０に提供する。構成可能不揮発性ルックアップテーブル２７０は、ＥＣＣユニット２６０の外部に在ってもよいし、当該ユニットと一体化されていてもよい。構成可能不揮発性ルックアップテーブルは、セル電流の変動又はアレイの抵抗又は閾値電圧分布の変動に基づき、誤り確率データを更新する。これらの変動は、例えば、ウェーハ試験時に、又は装置が始動するか又は読み取り状態が与えられた際に、検出される。更に、誤り確率データは、適した電圧センサー２８０と温度センサー２９０により検出された作動温度及び／又は電圧の変動の結果として更新されてもよい。誤り確率値は、分布中のデジタル値の基準レベルからの距離に基づくが、これについては図４の説明に関連して、より詳細に説明してゆく。
【００１５】
１つの実施形態では、アナログ対デジタルセンスユニット２５０は、初期デジタル値を提供するために、メモリアレイのメモリセルに関連付けられているアナログ信号を感知する。他の実施形態では、アナログ対デジタルセンスユニットは、セル電流の変動又はアレイの抵抗又は閾値電圧分布の変動に基づき、メモリアレイのメモリセルに関連付けられているアナログ信号を感知して、デジタル値を更新する。アナログ信号及び対応するデジタル値は、メモリアレイの製品寿命中に変わる可能性がある。異なった種類のメモリを有する異なった型式の製品は、アナログ信号も異なる可能性がある。
【００１６】
ルックアップテーブル２７０は、製品寿命中でさえ、それぞれのデジタル値に割り当てられている「誤り確率」の更新にあたり多大な柔軟性を提供する。プロセスのばらつき、異なった製品仕様（例えば、読み取り／書き込みサイクルの多少、異なった温度範囲、プロセスパラメータの微調整など）は、追跡され、ルックアップテーブルに格納される。異なった信頼性判定基準並びに異なった予想されるプログラム済みメモリセル分布が、読み取り状態が与えられる毎に誤り確率と相関付けられ、この情報がＥＣＣユニットに送られることになる。ＥＣＣユニットは、ルックアップテーブルからのこの情報を使用して、特定の要件について、如何なる新たなマスクオーダも無しに、誤り訂正を最適化する。その後に続く製品認定段階も大幅に縮小される。
【００１７】
例えば、アナログ読み取りとデジタル値への変換は、電気的ウェーハ分別時、電気的特徴付け時、又は製品認定時に行われてもよい。プログラミング後のメモリセル分布は、電流又は電圧分布の様に、異なった個別のセル母集団であって、それぞれが、プログラミングパルス又はアルゴリズム後に正しく論理状態に置かれる統計学的確率が異なる母集団に分割される。この方式では、確率を、有用的にルップアップテーブルに収集し、ＥＣＣユニットによる誤り訂正時に利用することができる。
【００１８】
図３は、別の実施形態による、メモリアクセスに誤り訂正を提供する装置を示している。装置３００（例えば回路デバイス１２２）は、データを格納するメモリセルの１つ又はそれ以上のアレイ３１０を含んでいる。アレイ３１０にアクセスするのに、行選択ユニット３２０と列選択及びバイアスユニット３３０が使用されている。メモリアクセスを提供するために、読み取り書き込み回路及び論理３４０が、行選択ユニットと列選択ユニットを制御する。メモリアレイ３１０には、アナログ対デジタルセンスユニット３５０が連結されている。アナログ対デジタルセンスユニット３５０は、メモリアレイのメモリセルに関連付けられているアナログ信号を感知し、当該アナログ信号をデジタル値の分布に変換する。
【００１９】
或る実施形態では、アナログ対デジタルセンスユニット３５０には、誤り訂正符号（ＥＣＣ）ユニット３６０が連結されている。ＥＣＣユニット３６０は、アナログ対デジタルセンスユニット３５０からデジタル値の分布（例えばＮ０[ｋ:０]、Ｎ１[ｋ:０]、．．．Ｎｉ[ｋ:０]）を受信し、ルックアップテーブル３７０から誤り確率を受信する。ＥＣＣユニット３６０は、誤り確率データを使用して誤り訂正を提供するためにＥＣＣアルゴリズムを実行し、当該誤り確率データはデジタル値の分布が更新される都度更新されることになる。
【００２０】
構成可能不揮発性ルックアップテーブル３７０は、ユニット３５０から、デジタル値の分布を受信する。構成可能不揮発性ルックアップテーブル３７０は、誤り確率データを含むＥＣＣパラメータ（例えばＥＣＣパラメータ１[ｊ:０]、．．．ＥＣＣパラメータｉ[ｊ:０]）を生成し、当該ＥＣＣパラメータを、誤り訂正のためにＥＣＣユニット３６０に提供する。構成可能不揮発性ルックアップテーブル３７０は、ＥＣＣユニット３６０の外部に在ってもよいし、ＥＣＣユニット３６０と一体化されていてもよい。構成可能不揮発性ルックアップテーブルは、デジタル値の分布が更新された時に基づき、誤り確率データを更新する。例えば、誤り確率データは、適した電圧センサー３８０と温度センサー３９０により検出された作動温度及び／又は電圧の変動の結果として更新されてもよい。
【００２１】
別の実施形態では、デジタル値の分布は、ルックアップテーブル３７０のみに提供され、ＥＣＣユニット３６０には提供されない。ＥＣＣユニット３６０は、更新された誤り確率を得るためにテーブル３７０にアクセスし、このデータをＥＣＣユニット３６０に設置されているメモリに格納することができる。
【００２２】
次世代の大容量メモリ（例えばＮＡＮＤ、ＮＯＲ、ＰＣＭ）では、技術がその限界まで追い詰められるために、生ビット誤り率（ＲＢＥＲ）と呼ばれる、格納されているデータを正確に抽出する場合の誤り確率が益々高くなるであろう。大抵、この問題は、データの文字列に亘って数多くの誤りを訂正することができるＥＣＣ機械を実施することにより対処される。ＥＣＣの行動の結果として、最終的なビット誤り率は、開始時の誤り率より１桁低くなる。最も広く使用されているＥＣＣ機械は、生ビット誤り率（ＲＢＥＲ）が高すぎないという条件で有効である符号に基づいている（例えばBose Ray-Chaudhuri Hocquenghem)。しかしながら、技術スケーリングのせいで、この条件は、近未来では満たされそうもない。
【００２３】
高ＲＢＥＲでより有効とされるＥＣＣ符号のもう１つの部類である軟復号型符号（例えば、所謂、畳み込み符号）を使用することができるが、機能させるには、入力として、０と１の文字列のみならずデータの「信頼性」、言い換えれば、受信された０（又は１）が「実際に」送信された０（又は１）である確率はいくらか、を有している必要がある。これは、従来のセンス増幅器では成し遂げられず、図４に示されている新しい概念を必要とする。
【００２４】
図４は、１つの実施形態による、アナログ対デジタルセンスユニットにより生成されるデジタル値の分布を示している。典型的なセルのメモリアレイが取り得るアナログ値（例えば電流、抵抗、又は閾値電圧）の空間全体は、二進符号により識別されるＮ個の「スライス」に分割されており、よって、分布中のそれぞれのセルは、センス回路から画定されたスライスへ割り当てられている。それぞれのスライスは、当該特定のスライスの基準レベル４１０からの「距離」に基づく、表現データの異なった「誤り確率」により特徴付けられている。例えば、基準レベル４１０により近接して位置するスライスに関連付けられているデータ（例えば４２０及び４２２）は、それらが、センス精度に限界があること、又は基準レベルを横切って分布の１つに「すそ」が存在していることから、読み取りの誤りの結果である可能性が高いために、より高い誤り確率と、より低い信頼性を有することになる。基準レベル４１０からより遠くに位置するスライス、又は最大母集団スライス付近のスライス、に関連付けられているデータ（例えば４３０、４３２、及び４３４）は、それらが、読み取りの誤りの結果である可能性が低いために、より低い誤り確率と、より高い信頼性を有することになる。中間母集団のスライスの付近に位置するスライスに関連付けられているデータ(例えば４４０と４２２)は、中度の誤り確率と、中度の信頼性を有することになる。
【００２５】
幾つかの実施形態では、ルックアップテーブルは、スライスの誤り確率又は誤り確率に関連のある或る種のパラメータが格納される、再プログラム可能な（ＮＶＭ）レジスタを含んでいる。ルックアップテーブルのデジタル値を使用して、所与の誤り確率又は他の有用な情報（例えばＥＣＣパラメータ[ｋ:０]）が選択される。ＥＣＣパラメータは、メモリアレイから読み取られた符号語全体からもたらされる他の類似情報と組み合わされ、ＥＣＣユニットに送られる。
【００２６】
幾つかの実施形態では、スライスそれ自体は固定ではなく、デバイス毎に、又はデバイスの寿命中に、変化し得る。
【００２７】
ＥＣＣユニットは、特定のセルが置かれているスライスについての情報及び関連する誤り確率や他の情報（例えば、パリティ情報、スライスのＮ数、製品データシート情報など）を、ルックアップテーブルから抽出し、それらを組み合わせ、そしてビット誤り率を有効に下げる畳み込み符号を実施することができる。ルックアップテーブルは、製品寿命中でさえ、メモリセルアレイのモデル、撹乱要因、プロセスのばらつき、書き込み速度要件、耐久性、及び一般的には信頼性仕様などに応じて、それぞれのスライスに割り当てられている「誤り確率」の変更にあたり多大な柔軟性を提供する。こうして、本設計は、ＥＣＣユニット自体の有効性を大きく増進させる。ルックアップテーブル（例えば不揮発性レジスタ）は、様々なやり方（例えば、ダイ単位、ウェーハ単位、ロット単位）でカスタマイズ可能である。
【００２８】
信頼性情報（例えば、確率、尤度値など）を考慮に入れたＥＣＣは、軟判定アルゴリズムと呼ばれる。本ＥＣＣ設計は、軟復号化を使用している。受信されたビット値しか使用しないＥＣＣは、硬判定アルゴリズムと呼ばれる。一般的に、軟復号化では、硬復号化に比べ、信号対ノイズ比の利得が３ｄＢにもなる。換言すると、硬判定ＥＣＣが、ビット誤り率に取り組んだ場合に軟判定ＥＣＣと同じ性能を発揮しようとすれば、ビット誤り率は３桁分大きくなるということである。軟判定技法には、畳み込み符号、トレリス符号化変調、ターボ符号、及び低密度パリティ検査（ＬＤＰＣ）符号が含まれる。有効な信頼性情報生成能力によって、オンチップＥＣＣコントローラの場合でさえ、軟判定ＥＣＣの適用が可能になる。本設計は、連結符号に使用することもできるし、非連結符号に使用することもできる。
【００２９】
誤り訂正に対する先行技術の手法は、ルックアップテーブルを使用していない。誤り確率の見積もりは、数学的な仮定を通して、例えばガウス分布を仮定して、行われている。このやり方では、誤り確率を、アレイ分布の、より精度の高い特徴付けに基づくモデル化に適応させること、又は誤り確率を、外部条件（例えば上述したもの全て）の変化の結果として変更すること、ができる見込みは無い。
【００３０】
図５は、１つの実施形態によるアナログ対デジタルセンスユニットの例示としての実装を示している。アナログ信号がメモリセルから感知され、電流Icell又は電圧Vcellで表されている入力５１０を形成する。電流又は電圧勾配５２０、In(x)、を使用して、メモリセルから感知された電流又は電圧がデジタル値に変換される。デジタル対アナログ生成器及びセンスユニット５３０が、入力５１０と、電流又は電圧段（又は連続勾配）入力信号５１２を受信する。ユニット５３０は、停止信号を出力し、当該信号はＮ生成ユニット５４０への入力として受信される。このユニット５４０は、開始信号入力も受信する。
【００３１】
１つの実施形態では、ユニット５３０は、Ｎの初期値と基準入力信号Istep（Vstep）５１２に応じた電流又は電圧勾配信号５２０のアナログレベルを生成する。生成された勾配信号５２０は、Ｎ掛けるIstep（Vstep）５１２に等しく、比較レベルとして使用され、ここで、Ｎは、開始と停止という２つの論理信号と１つのクロック信号の関数である。開始信号が０なら、Ｎは０である。メモリセルの電流（Icell）５１０が、生成電流Ｎ*Istepより大きい場合には、Ｎはクロックサイクル毎に１増分され（Ｎ＝Ｎ＋１）、（Ｎ＋１）*Istepに等しい新しい電流が生成される。Ｎの増分に係るこの条件は、開始信号が１に等しく、停止信号が０に等しい場合に相当する。上のループは、セルの電流が生成レベルより低くなるまで続く。セル電流が比較電流に等しいか又はそれを超えた時、停止信号がアサートされ、Ｎ*Istepに等しい生成電流が持続されて（ＮはＮのまま）、セルの電流はｎビットのデジタル出力へと量子化され、それにラッチが掛けられると、それがＮを表す。感知電流レベルと生成電流レベルを感知電圧レベルと生成電圧レベルに置き換えても、同じ原理を適用することができる。
【００３２】
図６は、別の実施形態による、アナログ対デジタルセンスユニットにより生成されるデジタル値の分布を示している。或る典型的なマルチレベル（例えば本事例の２ビット／セル、１．５ビット／セル、３ビット／セル、４ビット／セルなど）のセル（例えばＰＣＭ）のメモリアレイについて、００、０１、１０、及び１１の論理状態の空間全体は、Ｎ個の「スライス」に分割されており、よって、当該分布中のそれぞれのセルは、センス回路から画定されているスライスに割り当てられている。それぞれのスライスは、当該特定のスライスの基準レベル又はマージンからの「距離」に基づく、表現データの異なった「誤り確率」により特徴付けられている。例えば、マージン６１０、６２０、及び６３０は、基準レベル６１２、６１４、６２２、６２４、６３２、及び６３４により、それぞれ画定されている。
【００３３】
図６は、或る実施形態で、マルチレベルセル（ＭＬＣ）メモリ（例えばＰＣＭ）について、セル記憶域要素を、４５０ミリボルトに等しいVsafeでバイアスした時の電流勾配を示している。具体的には、４通りの論理状態（例えば００、０１、１０、及び１１）を有する２ビット／セルのデバイスである。ＰＣＭメモリセルは、カルコゲニド材料の相に応じて異なる値を取る可変抵抗器としてモデル化することができる。当該材料が非晶質である場合、これはリセット状態００に相当し、関連抵抗は、数百Ｋオームから１Ｍオーム超までの非常に高い範囲に亘る。材料が結晶質である場合、関連抵抗は、数Ｋオーム（例えば１５Ｋオーム未満）の範囲に収まる。一方の相から他方の層への切り替えには、適した形状、幅、及び振幅の電流(又は電圧)パルスが使用されている。ＭＬＣの動作では、中間状態が使用されており、これらの状態は中間抵抗値により特徴付けられている。例えば、リセット状態００は、２００Ｋオームより大きい抵抗を有する。第１の中間状態０１は、３５Ｋオームと５０Ｋオームの間の抵抗を有する。第２の中間状態１０は、２０Ｋオームと２５Ｋオームの間の抵抗を有する。セット状態１１は、１６Ｋオーム未満の抵抗を有する。
【００３４】
それらマージンのうちの１つに入るか又はそれらマージンのうちの１つに近い抵抗を有するスライスに分類されるデータは、このデータが、論理状態の１つの中間に抵抗を有するスライス（例えば１２）に分類されるデータに比較して、読み取りの誤りの結果である可能性が高いために、より高い誤り確率と、より低い信頼性を有することになる。異なった論理状態の間の遷移もまた、何らのマージンウインドウを特定すること無く、連続したやり方で、相対確率により進められる。
【００３５】
図７は、１つの実施形態による、メモリアレイを有するメモリデバイスの誤り訂正のための方法を示している。本方法は、ブロック７０２で、メモリアレイにデータを格納する段階を含んでいる。本方法は、ブロック７０４で、アナログ対デジタルセンスユニットを使用して、メモリアレイに関連付けられているアナログ信号を感知する段階を含んでいる。次に、本方法は、ブロック７０６で、アナログ対デジタルセンスユニットを使用して、アナログ信号をデジタル値の分布へと変換する段階を含んでいる。例えば、それぞれの分布は、シングル又はマルチレベルのメモリアレイの論理状態（例えば０、１、００、０１、１０、１１）に関連付けられていてもよい。ブロック７０８で、アナログ対デジタルセンスユニットは、デジタル値の分布を、誤り訂正符号（ＥＣＣ）ユニットに送る。ブロック７１０で、ルックアップテーブルは、それぞれのデジタル値に関連付けられている誤り確率データを含むＥＣＣパラメータを、ＥＣＣユニットに提供する。
【００３６】
ブロック７１２で、ＥＣＣユニットは、誤り確率データを使用して誤り訂正を提供するためにＥＣＣアルゴリズムを実行する。１つの実施形態では、ブロック７１４で、不揮発性のルックアップテーブルは、メモリデバイスが始動するか又は読み取り状態が与えられた際に、又は適した電圧センサー又は温度センサーによってそれぞれ検出された作動電圧又は温度の変動の結果として、メモリアレイに関係付けられている誤り情報が更新される。構成可能な不揮発性ルックアップテーブルは、デジタル値の分布に基づく誤り確率を、図４及び図６に示されている様に、分布中のデジタル値の基準レベルからの距離に基づいている誤り確率で更新する。
【００３７】
詳細な説明の幾つかの部分は、コンピュータメモリ内のデータビット又は二進デジタル信号に対するアルゴリズム及び動作の記号表現の観点から提示されている。これらのアルゴリズム的な記述及び表現は、データ処理技術の分野の当業者が、彼らの研究の実体を他の当業者に伝えるのに使用している技法であってもよい。
【００３８】
アルゴリズムは、ここでは、そして一般的には、所望の結果に導く行為又は動作の自己矛盾の無い手順であると考えられる。これらには、物理的量の物理的操作が含まれる。必ずしもというわけではないが、大抵は、これらの量は、格納、転送、組み合わせ、比較、又は他の操作が行える、電気的又は磁気的な信号の形態をしている。場合によっては、主に公共的使用の理由で、これらの信号を、ビット、値、要素、記号、文字、用語、数など、として言及するのが都合がよいことが判っている。しかしながら、これら及び類似の用語の全ては、適切な物理的量に関連付けられるものであって、これらの量に適用される単に便宜上の標示であるものと理解されるべきである。
【００３９】
別途特に指定のない限り、明細書全体を通じて、「処理する」、「演算する」、「計算する」、「判定する」など、の様な用語を用いている考察は、コンピュータ又は演算システム或いは類似の電子演算デバイスの行動及び／又はプロセスであって、演算システムのレジスタ及び／又はメモリ内の、電子的量の様な物理的量として表現されているデータを操作し、及び／又はそれらデータを、演算システムのメモリ、レジスタ、又は他のその様な情報を格納、送信、又は標示するデバイス内の、同様に物理的量として表現されている他のデータに転換する、行動又はプロセスを指すものと理解されたい。
【００４０】
本発明の実施形態は、ここでの動作を行うための装置を含んでいてもよい。装置は、当該の所望の目的のために特別に作られていてもよいし、又は装置は、その中に格納されているプログラムにより選択的に起動又は再構成される汎用演算デバイスを備えていてもよい。その様なプログラムは、限定するわけではないが、フロッピディスク、光ディスク、コンパクトディスク読み取り専用メモリ（ＣＤ−ＲＯＭ）、光磁気ディスク、読み取り専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、電気的にプログラム可能な読み取り専用メモリ（ＥＰＲＯＭ）、電気的に消去可能及びプログラム可能な読み取り専用メモリ（ＥＥＰＲＯＭ）、磁気又は光カード、又は電子的な命令を格納するのに適していて且つ演算デバイス用のシステムバスへ連結することができるその他の種類の媒体を含めた何らかの種類のディスク、の様な記憶媒体上に格納されていてもよい。
【００４１】
「連結されている」及び「接続されている」という用語の使用は、それらの派生語を併せ、使用されることがある。これらの用語は、互いに同義語とする意図はないものと理解されたい。むしろ、具体的な実施形態では、「接続されている」は、２つ又はそれ以上の要素が、直接、互いに物理的又は電気的に接触していることを表すのに使用することができる。「連結されている」は、２つ又はそれ以上の要素が、直接又は間接（それらの間に他の要素が介在している）の何れでもよいが、互いに物理的又は電気的に接触していること、及び／又は２つ又はそれ以上の要素が、互いに協働又は対話している（例えば因果関係にある）ことを表すのに使用することができる。
【００４２】
以上の詳細な説明では、本発明が十分に理解されるように、数多くの特定の詳細事項が述べられている。しかしながら、当業者には理解されるように、本発明はこれらの特定の詳細事項無しに実用されてもよい。本発明が曖昧にならないようにするため、場合によっては、よく知られている方法、手続き、構成要素、及び回路は詳細に説明されていない。以上の説明は、例示を目的とするものであって、限定を課す意図はないものと理解されたい。当業者には、以上の説明が読まれ理解されたなら、多くの他の実施形態が自明になろう。本発明の範囲は、従って、付随の特許請求の範囲の請求項、並びにその様な請求項により権利が与えられる等価物の全範囲、に照らして判断されるべきである。
【符号の説明】
【００４３】
１００  データ処理デバイス
１１０  処理ユニット
１１２  送受信器
１１４  アンテナ
１１６  第１プロセッサコア、第１処理コア
１１８  第２プロセッサコア、第２処理コア
１１９  ホストコントローラ
１２０  システムメモリ
１２２  回路デバイス
１２３  不揮発性メモリアクセス、ＮＶＭ
１２４  ＤＲＡＭ
１２６  ＲＡＭ
１２８  ＲＯＭ
１３０、１３２  埋め込み型不揮発性メモリ
１６０  送信器
１６２  受信器
２００、３００  装置
２１０、３１０  メモリセルアレイ
２２０、３２０  行選択ユニット
２３０、３３０  列選択及びバイアスユニット
２４０、３４０  読み取り書き込み回路及び論理
２５０、３５０  アナログ対デジタルセンスユニット
２６０、３６０  誤り訂正符号（ＥＣＣ）ユニット
２７０、３７０  構成可能不揮発性ルックアップテーブル
２８０、３８０  電圧センサー
２９０、３９０  温度センサー
４１０  基準レベル
４２０、４２２、４３０、４３２、４３４  データ
５１０  入力
５１２  入力信号
５２０  電流又は電圧勾配
５３０  デジタル対アナログ生成器及びセンスユニット
５４０  Ｎ生成ユニット
６１０、６２０、６３０  マージン
６１２、６１４、６２２、６２４、６３２、６３４  基準レベル
【図１】
2011108354.tif 000003
【図２】
2011108354.tif 000004
【図３】
2011108354.tif 000005
【図４】
2011108354.tif 000006
【図５】
2011108354.tif 000007
【図６】
2011108354.tif 000008
【図７】
2011108354.tif 000009
【外国語明細書】
2011108354.tif 000010
2011108354.tif 000011
2011108354.tif 000012
2011108354.tif 000013
2011108354.tif 000014
2011108354.tif 000015
2011108354.tif 000016
2011108354.tif 000017
2011108354.tif 000018
2011108354.tif 000019
2011108354.tif 000020
2011108354.tif 000021
2011108354.tif 000022
2011108354.tif 000023
2011108354.tif 000024
2011108354.tif 000025
2011108354.tif 000026
2011108354.tif 000027
2011108354.tif 000028
2011108354.tif 000029
2011108354.tif 000030
2011108354.tif 000031
2011108354.tif 000032
2011108354.tif 000033
2011108354.tif 000034
2011108354.tif 000035
2011108354.tif 000036
2011108354.tif 000037
2011108354.tif 000038
2011108354.tif 000039
2011108354.tif 000040
2011108354.tif 000041