(58)【調査した分野】(Int.Cl.,DB名)
前記アドレス完全性特性が有効かどうかを判定することは、前記外部コントローラで、前記メモリデバイス内の前記モードレジスタを読み取ることを含む、請求項3に記載の方法。
前記メモリデバイスが、アドレスに対するエラー訂正データを受け入れることになっているということを示すように、前記メモリデバイスの前記外部コントローラで、前記モードレジスタ内のビットを設定することをさらに含む、請求項3に記載の方法。
前記エラー訂正データを伝送することは、前記アドレスバスにわたって前記対応するアドレスを伝送した後に、前記アドレスバスにわたって前記エラー訂正データを伝送することを含む、請求項1に記載の方法。
前記メモリデバイスは、モードレジスタをさらに備え、前記外部コントローラは、前記モードレジスタに制御語を伝送するようにさらに構成され、前記制御語は、アドレス完全性ビットを含む、請求項10に記載のシステム。
前記メモリデバイスは、前記モードレジスタを読み取るように、および前記アドレス完全性ビットに応答して、前記アドレスバス上の前記エラー訂正データを無視するように構成される、内部コントローラをさらに備える、請求項11に記載のシステム。
【背景技術】
【0002】
メモリは、典型的に、単独でか、または別の集積回路(複数を含む)と組み合わせてかにかかわらず、半導体ダイ(複数を含む)内および/または上に形成される集積回路(複数を含む)として提供され、一般的に、コンピュータまたは他の電子デバイスにおいて見出される。ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、動的ランダムアクセスメモリ(DRAM)、同期型動的ランダムアクセスメモリ(SDRAM)、およびフラッシュメモリを含む、多くの異なるタイプのメモリがある。
【0003】
フラッシュメモリは、広範な電子用途のための不揮発性メモリの人気のある源へと発展している。フラッシュメモリは、典型的に、高いメモリ密度、高い信頼性、および低い電力消費を可能にする、1トランジスタメモリセルを使用する。フローティングゲートもしくはトラッピング層といった電荷蓄積構造のプログラミング、または他の物理的現象を通じた、セルの閾値電圧の変化は、各セルのデータ状態を判定する。フラッシュメモリのための一般的な使用としては、パーソナルコンピュータ、デジタルカメラ、デジタルメディアプレーヤ、デジタルレコーダ、ゲーム、電化製品、車両、ワイヤレスデバイス、携帯電話、および取り外し可能なメモリモジュールが挙げられる。
【0004】
図1は、フラッシュメモリ100を組み込む典型的な先行技術のシステムの一実施例を例解する。システムはまた、メモリデバイス100に連結されるコントローラ101を含む。
【0005】
コントローラ101は、データバス105、制御バス106、およびアドレスバス107にわたって、メモリデバイス100に連結されて示される。一実施形態において、データバスは、32ビットおよび/または16ビット幅のダブルデータレート(DDR)バスであり得る。
【0006】
図1のシステムが、自動車または航空機といった、電気的ノイズの多い環境に組み込まれた場合、それは、点火システムおよび/または通信システムによる著しい量のノイズに供され得る。このため、種々のバス105〜107の完全性は、損なわれ得る。提唱された完全性基準に関するガイドラインを提供することによって、バスにわたって情報の完全性を確実にするように、種々の規格(例えば、ISO26262)が実装されている。
【0007】
上で記載される理由により、ならびに本明細書を一読および理解すれば、当業者には明らかとなるであろう他の理由により、システム内のバスのうちの1つ以上の完全性を増加させるための当該技術分野における必要性が存在する。
【発明を実施するための形態】
【0009】
以下の発明を実施するための形態において、本明細書の一部を形成し、例解として、具体的な実施形態が示される添付の図面を参照する。図面において、同様の数字は、いくつかの図を通じて、実質的に同様の構成要素を説明する。他の実施形態が利用され得、かつ本開示の範囲から逸脱することなく、構造的、論理的、および電気的変更がなされ得る。従って、以下の発明を実施するための形態は、制限的意味で捉えられないものとする。
【0010】
図2は、不揮発性メモリデバイスにおける読み取り動作の典型的な先行技術のJoint Electron Devices Engineering Council(JEDEC)実装のブロック図を例解する。当該技術分野において既知であるように、JEDEC規格は、1つの製造元からの1つのJEDEC準拠のメモリデバイスまたはコントローラを、別の製造元からの同様のJEDEC準拠のメモリデバイスまたはコントローラと置き換えることができるように、電子構成要素(例えば、不揮発性メモリ、コントローラ)の標準化を提供する。アドレスバスの完全性を改善するための実施形態の以降の論述は、コマンド、アドレス、およびデータ形式のJEDEC実装に言及するが、本実施形態は、いずれの1つの規格または形式にも限定されない。
【0011】
JEDEC実装において、アドレスA[n:0]は、2つの部分に分割される。これらの2つの部分は、以降、第1の部分に対する行アドレス1(RA1)、および第2の部分に対する行アドレス2(RA2)と称される。RA1は、RAB0〜RAB3と標識される1組の行アドレスバッファ201のうちの1つに記憶される。JEDEC制御信号BA[1:0]は、マルチプレクサ203のどの出力を入力アドレスA[n:0]に接続するかを制御することによって、RA1を記憶するために、行アドレスバッファ201のどれが選択されるかを選択する、バッファ選択信号である。
【0012】
制御信号BA[1:0]は、どの特定のページが、メモリアレイ200から読み取られる必要があるかを選択するために、プレアクティブおよびアクティブ期間(
図3を参照して以降で述べられるように)の間はアクティブである。この信号は、4つのアドレスバッファ201のうちの1つを選択するために、4つの異なる状態(例えば、00、01、10、11)のうちの1つを有することができる。制御信号BA[1:0]はまた、行アドレスバッファ201の出力のうちの1つに連結され、かつそれを選択する、出力マルチプレクサ204を制御するために使用される。
【0013】
アドレスの第1および第2の部分の両方(RA1およびRA2)は、読み取り動作の間に別のマルチプレクサ205を通じてメモリアレイ200に入力される。メモリアレイ200はまた、2つの行アドレス部分に応答して選択される、特定のメモリセルの状態を感知する、行感知回路211に連結される。
【0014】
行感知回路211の出力は、BA[1:0]によって制御されるマルチプレクサ206を通じて、1組の行データバッファ202であるRDB0〜RDB3に連結される。このため、BA[1:0]信号は、どの行データバッファ202に、感知されたデータが入力されるかを選択する。同様に、BA[1:0]信号は、バッファ出力のうちのどれがデータ出力マルチプレクサ221に連結されるかを選択するように、行データバッファ202の出力に連結される、出力マルチプレクサ207への制御入力として使用される。
【0015】
ダブルデータレート(DDR)バーストエンジン220は、データ出力マルチプレクサ221の制御入力に連結される。DDRバーストエンジン220は、クロック、行アドレス(A[n:0])、およびモードレジスタセット(MRS)内の構成ビットのうちのいくつかを使用して、DQマルチプレクサ221からのデータ(DQ)のバースト出力を制御する。
【0016】
図3は、
図2の実施形態に従う、典型的な先行技術のコマンドおよびアドレスシーケンスのタイミング図を例解する。この図は、メモリデバイスと外部コントローラとの間で、コマンド、アドレス、およびデータバスの各々に何が起こっているかを示す。
【0017】
図2および3の両方を参照すると、コマンドバスは、最初に、JEDECプレアクティブ命令(P−ACT)を有する。この命令は、メモリデバイスに、アドレスバス上にある行アドレスRA1の第1の部分を受け入れるように命令する。行アドレスの第1の部分は、BAバス上にある、選択されたバンクアクセスBA[1:0]信号に基づいて、行アドレスバッファ201であるRAB0〜RAB3に入力される。
【0018】
P−ACT命令の後、コマンドバスは、メモリデバイスに、アドレスバス上にある行アドレスRA2の第2の部分を受け入れるように命令する、JEDECアクティブ(ACT)命令を有する。加えて、ACT命令の間、RA2が、行アドレスRA1の第1の部分を伴うメモリアレイに適用される。アレイ感知もまた、ACT命令によって開始される。
【0019】
ACT命令の後、コマンドバス上に1つ以上のNOP命令を有することができる。NOP命令がコマンドバス上にある場合、アドレスバスは、この時間の間、非対応状態にある。次いで、コマンドバスは、メモリデバイスに、BAバス上にある選択されたバンクアクセスBA[1:0]信号に基づいて、選択された行データバッファ202であるRDB0〜RDB3の第1のページ(複数を含む)を選択するように命令する、読み取り命令(RD)を有する。選択されたデータは、DQ出力に出力される。
【0020】
コマンドバスはまた、読み取り命令RDの後に、複数の無演算(NOP)命令を含む。NOP命令は、選択された読み取りデータが、コントローラに対するデータバス上で利用可能になる前に、RA2がアドレスバスにわたって伝送された後のレイテンシを増加させるように、特定のJEDEC規格の一部として含まれる。例解される実施形態において、2つのNOP命令は、3つの列アドレスストローブレイテンシを生成するように、コマンドバス上で使用される。しかしながら、他の規格を使用する代替的な実施形態は、レイテンシを調節するために、より多いまたはより少ないNOP命令を使用することができる。
【0021】
ここで、選択された読み取りデータ(RD)は、データバス上で利用可能である。
図3は、バースト長によって判定される際の複数の読み取りデータ(RD)を示す。バースト長は、読み取られることがコントローラによって要求されるデータ語の数である。
【0022】
図3はまた、ACT命令とRD命令との間の時間を表す時間tRCDを示す。これは、いずれの準拠するデバイスも、適切な動作のために尊重するべきである、特定のJEDEC規格(例えば、不揮発性低電力ダブルデータレート(NVM−LPDDR))によって設定される既定の時間である。特定のJEDEC規格は、NOP命令が、この時間仕様を満たすためにACT命令とRD命令との間の時間を調節するコマンドバス上の命令間に挿入されることを可能にする。
【0023】
メモリシステムにおけるアドレスバスの完全性を改善するために、対応するアドレスに対して、コントローラ(任意の数の異なる伝送デバイスであり得る)によって、エラー訂正コード(ECC)データを生成することができる。ECCデータは、アドレスバスにわたって、例えば、対応するアドレスを伝送した後に、メモリデバイスに伝送される。次いで、メモリデバイスは、ECCデータを使用して、受信されたアドレスを訂正することができる。
【0024】
図4は、NOPがACT命令とRD命令との間で使用され、このため、ECCデータが、NOP命令と同時に、アドレスバスにわたって伝送されることを可能にする(例えば、NOP命令が動作的命令であった場合、NOP命令の少なくとも一部分、およびいくつかの実施形態においては、全てに関して動作的であろう時間に、ECCデータの少なくとも一部分、およびいくつかの実施形態においては、全てを伝送する;これは、例えば、ECCデータおよびNOP命令を同時に伝送することを含むことができるが、これに限定されない)、タイミング図を例解する。次いで、ECCデータを使用して、以降で説明されるように、アドレスバス完全性を改善することができる。アドレスパターンにおいてエラーを検出および訂正するいずれの方法も、本実施形態において使用することができる。例えば、2ビット検出および1ビット訂正アルゴリズムを使用して、ECCデータを生成し得る。メモリデバイスにおけるECCデータの使用は、
図5を参照して以降で述べられる。
【0025】
図4は、コマンドバスが、P−ACT命令を有する一方で、アドレスバスが、行アドレスの第1の部分(RA1)を有し、バンクアクセスバス(BA)が、バンク選択信号BA[1:0]を有することを示す。P−ACT命令は、メモリデバイスに、アドレスバス上にある行アドレスRA1の第1の部分を受け入れるように命令する。
【0026】
P−ACT命令の後、コマンドバスは、メモリデバイスに、アドレスバス上にあるRA2を受け入れるように命令する、アクティブなACT命令を有する。バンクアクセス信号BA[1:0]は、BAバス上にある。アレイ感知もまた、ACT命令によって開始される。
【0027】
NOP命令は、コマンドバス上のACT命令の後に続く。コマンドバス上のNOP命令は、ECCデータが同時にアドレスバスにわたって伝送されることを可能にする。ECCデータは、以前に伝送されたアドレスに対するエラー訂正データを含む。アドレス完全性特性が有効である場合、メモリデバイスの内部コントローラ551(
図5)は、以降で述べられるように、ECCデータを受け入れ、かつそれをレジスタ内に記憶することができる。アドレス完全性特性が無効である場合、ECCデータを、内部コントローラ551によって無視することができる。
【0028】
ECCデータのサイズは、構成されたバーストページ長に依存し得る。一実施形態において、ECCデータのサイズは、少なくとも、アドレスラインの数に等しい。例えば、128ビットのアドレスに対して、ECCは、少なくとも7ビットであり、256ビットのアドレスは、ECCデータに対して少なくとも8ビットを使用するであろう。他のエラー検出および訂正アルゴリズムを使用する代替的な実施形態は、エラー訂正ビットに対して異なるサイズを使用し得る。
【0029】
アドレス完全性特性は、レジスタ内のビットを設定することによってオンまたはオフにすることができる。例えば、外部コントローラは、メモリデバイスがアドレスに対するエラー訂正データを受け入れることになっているということを示すビットを設定する制御語を、メモリデバイス内のモードレジスタに、伝送することができる。代替的な実施形態において、メモリデバイス内の内部コントローラは、この特性をオンにするように、モードレジスタ内でアドレス完全性ビットを設定することができる。次いで、外部コントローラは、
図4に示されるように、外部コントローラが、アドレスバスにわたって、アドレスエラー訂正データを生成および/または伝送するべきであることを示す、このビットを読み取ることができる。
【0030】
再度
図4を参照すると、第1のNOP命令の後、コマンドバスは、tRCDを満たすために、1つ以上の追加のNOP命令を有することができる。この時間の間、アドレスバスは、非対応状態にある。以降で、コマンドバスは、メモリデバイスに、BA[1:0]信号に基づいて、選択された行データバッファRDB0〜RDB3の第1のページ(複数を含む)を選択するように命令する、読み取り命令RDを有する。選択されたデータは、DQ出力に出力される。
【0031】
コマンドバスはまた、読み取り命令RDの後、複数の無演算(NOP)命令を含む。NOP命令は、選択された読み取りデータが、コントローラに対するデータバス上で利用可能になる前に、RA2がアドレスバスにわたって伝送された後のレイテンシを増加させるように、実装されたJEDEC規格の一部として含まれる。例解される実施形態において、2つのNOP命令は、3つの列アドレスストローブレイテンシを生成するように、コマンドバス上で使用される。しかしながら、他の規格を使用する代替的な実施形態は、レイテンシを調節するために、より多いまたはより少ないNOP命令を使用することができる。
【0032】
ここで、選択された読み取りデータ(データ0〜データx)は、データバスで利用可能である。
図4は、バースト長によって判定される際の複数の読み取りデータを示す。バースト長は、コントローラによって読み取られることがコントローラによって要求されるデータ語の数である。一実施形態において、コントローラは、バースト長を設定するメモリデバイスに、コマンドを伝送することができる。
【0033】
図5は、
図4に例解されるようなアドレス完全性特性とともに実装される読み取り動作のJEDEC実装の一実施形態のブロック図を例解する。代替的な実施形態は、例解されるJEDEC規格とは異なる規格を使用して、アドレス完全性特性を実装することができる。
【0034】
図4および5の両方を参照すると、P−ACT命令の間に、行アドレスの第1の部分(RA1)は、行アドレスバッファ501であるRAB0〜RAB3のうちの1つに記憶される。アドレスA[n:0]は、JEDEC制御信号BA[1:0]によって制御される、アドレスマルチプレクサ503に適用される。次いで、アドレスマルチプレクサ503は、BA[1:0]によって制御されるように、選択された行アドレスバッファ501であるRAB0〜RAB3内の記憶のためにRA1のみを受け入れる。マルチプレクサ503の出力は、行アドレスバッファRA0〜RA3の異なる1つに各々連結される。
【0035】
ACT命令の間に、アドレスの第2の部分(RA2)は、アドレスレジスタ550のフィールド522に記憶される。出力マルチプレクサ504を通じて、行アドレスバッファRA0〜RA3のうちの1つからBA[1:0]によって選択されるような、RA1アドレスの選択された1つもまた、この時にアドレスレジスタ550のフィールド521に記憶される。感知回路511を通じて感知するメモリアレイ500は、ACT命令によって開始される。
【0036】
NOP命令の間に(アドレス完全性特性が有効であると仮定する)、ECCデータは、アドレスレジスタ550のkビットフィールド523に記憶される。
図4のタイミング図に見られるように、ECCデータは、アドレスバスA[n:0]によって、アドレスレジスタ550に入力される。アドレス完全性特性が有効でない場合、ECCフィールド523は、空のままとすることができるか、または非対応データでプログラムすることができるかのいずれかである。
【0037】
一実施形態において、アドレスレジスタ550は、RA1、RA2、およびECCデータのみを含む、複数のフィールド521〜523を含む。別の実施形態において、別のフィールド520は、いずれかの特定のJEDEC規格によって必要な際、nビットフィールドに対するRA1およびRA2アドレスフィールド521、522の長さを増加させるために、アドレスレジスタ550において使用することができる。追加フィールド520内のデータは、非対応データであり得る。
【0038】
アドレスレジスタ550は、アドレスレジスタ550内のデータを読み取り、ECCデータによって示されるようにアドレスRA1およびRA2を訂正する、ECCエンジン510に連結される。ECCデータが、アドレスRA1およびRA2が1つ以上のエラーを含まないことを示す場合、ECCエンジン510は、マルチプレクサ505を通じて、メモリアレイ500にそのアドレスを適用する。このアドレスは、行感知回路511によって感知するための特定のメモリセルを選択するために使用される。ECCデータが、アドレスRA1およびRA2が1つ以上のエラーを含むことを示す場合、ECCエンジン510は、メモリアレイ500にアドレスを適用する前に、アドレスを訂正することを試みる。
【0039】
メモリアレイ500は、複数の技術のうちの1つを含むことができる。例えば、メモリアレイは、NOR、NAND、またはPCM不揮発性メモリアレイであり得る。メモリアレイ500はまた、動的ランダムアクセスメモリといった、揮発性メモリアレイであり得る。他のメモリ技術もまた、アドレス完全性を改善するための方法を使用することができる。
【0040】
行感知回路511の出力は、1組の行データバッファ502であるRDB0〜RDB3に入力される。BA[1:0]制御信号によって制御されるマルチプレクサ506は、どの行データバッファRDB0〜RDB3にデータが記憶されるかを判定する。同様に、BA[1:0]信号は、バッファ出力のうちのどれが、データ出力マルチプレクサ531に連結されるかを選択するように、行データバッファ502の出力に連結される出力マルチプレクサ507への制御入力として使用される。
【0041】
ダブルデータレート(DDR)バーストエンジン530は、データ出力マルチプレクサ531の制御入力に連結される。DDRバーストエンジン530は、データ出力マルチプレクサ531からのデータ(DQ)のバースト出力を制御するように、クロック、行アドレス(A[n:0])、およびモードレジスタセット(MRS)内のいくつかの構成ビットを使用する。一実施形態において、外部コントローラは、MRSレジスタといったレジスタ内の特定のビットを設定することによって、バースト長およびレートを設定することができる。
【0042】
図6は、メモリシステムにおけるアドレス完全性を改善するための方法の一実施形態のフローチャートを例解する。外部コントローラは、アドレス完全性特性が有効であるかどうかを判定する601。これは、アドレス完全性ビットを有するメモリデバイス内のモードレジスタを読み取ることによって、達成することができる。一実施形態において、このビットが論理1に設定される時、アドレス完全性特性は有効であり、ビットが論理0に設定される時、アドレス完全性特性は無効である。
【0043】
アドレス完全性特性が有効である場合、外部コントローラは、伝送されたアドレスに対するエラー訂正コード(例えば、エラー訂正データ、ECCデータ)を生成する606。読み取り動作のコマンドシーケンスの間に、次いで、外部コントローラは、アドレスバスにわたって行アドレスを伝送することと同時に、コマンドバスにわたってP−ACTコマンドを伝送する607。次いで、ACTコマンドが、アドレスバスにわたってRA2を伝送することと同時に、コマンドバスにわたって伝送される609。次いで、NOP命令が、アドレスバスにわたって以前に伝送されたアドレスに対して生成されるECCデータと同時に、コマンドバスにわたって伝送される611。
【0044】
アドレス完全性を改善するための方法が、読み取り動作の一部である場合、その方法は、tRCDが満たされているかどうかを判定すること613によって継続し得る。いいえである場合、NOP命令は、「非対応」データとともに伝送される620。t
RCDが満たされている場合613、外部コントローラは、コマンドバスにわたってメモリデバイスに読み取り命令を伝送する614。読み取り命令の後は、実装される規格によって必要とされるCASレイテンシに依存して、1つ以上のNOP命令であり得る。次いで、メモリデバイスは、データバスにわたって外部コントローラにデータのバーストを伝送することができ、外部コントローラが、データを受信する615。
【0045】
アドレス完全性特性が有効でない(例えば、無効である)場合、アドレスを、ECCデータ無しで伝送することができる603。一実施形態において、NOP命令もまた、コマンドバスにわたって伝送されない。別の実施形態において、NOP命令は、コマンドバスにわたって伝送され、ECCデータは、アドレスバスにわたって伝送されるが、メモリデバイスは、ECCデータを無視する。
【0046】
P−ACTおよびACTコマンドは、規格の特定のJEDEC実装と関連付けられるコマンドである。代替的な実施形態は、実装されている規格に依存して、かかるコマンドを使用しない場合があるが、依然として、アドレスバスにわたってECCデータと同時に、コマンドバスにわたってNOP命令を伝送することができる。
結論
【0047】
要約すると、1つ以上の実施形態は、メモリシステムにおけるアドレスバスの完全性を改善することができる、選択可能なアドレス完全性特性を含む。コントローラは、アドレスに対応するエラー訂正データを生成する。エラー訂正データは、コマンドバスにわたってNOP命令を伝送することと同時に、アドレスバスにわたってメモリデバイスに伝送することができる。
【0048】
本明細書において、具体的な実施形態を例解および説明してきたが、同じ目的を達成すると算定されるいずれの配設も、示される具体的な実施形態に代用され得ることが、当業者によって理解されよう。本発明の多くの適応が、当業者には明らかであろう。従って、本出願は、本発明のいずれの適応または改変も網羅することが意図される。