(57)【特許請求の範囲】
【請求項１】
半導体デバイスであって、該半導体デバイスは、
複数の物理セクタを含むメモリバンクを備える埋め込みフラッシュメモリを備え、
各物理セクタは複数の消去セクタを備え、
追加の消去セクタの複数の部分は、前記複数の物理セクタの間にそれぞれ分散され、
前記追加の消去セクタの前記複数の部分は、前記メモリバンクのための行冗長性セクタとして構成される、半導体デバイス。
【請求項２】
前記メモリバンクは欠陥消去セクタを含み、
前記追加の消去セクタの前記複数の部分は、前記メモリバンク内の前記欠陥消去セクタを置き換えるように構成される、請求項１に記載の半導体装置。
【請求項３】
前記埋め込みフラッシュメモリは、前記メモリバンク上のメモリ動作中に、前記欠陥消去セクタの代わりに、前記追加の消去セクタの前記複数の部分にアクセスするように構成される、請求項２に記載の半導体装置。
【請求項４】
前記メモリ動作は、読み出し動作またはプログラム動作である、請求項３に記載の半導体装置。
【請求項５】
前記メモリ動作は、前記追加の消去セクタの前記複数の部分のそれぞれを消去するために、前記複数の物理セクタに対して直列に実行される消去動作である、請求項３に記載の半導体装置。
【請求項６】
前記メモリ動作は、前記追加の消去セクタの前記複数の部分のそれぞれを消去するために、前記複数の物理セクタに対して並列に実行される消去動作である、請求項３に記載の半導体装置。
【請求項７】
前記欠陥消去セクタは、前記埋め込みフラッシュメモリ上のソートフロー動作中に決定される、請求項２に記載の半導体装置。
【請求項８】
前記半導体装置は、
前記複数の物理セクタ内の第１のメモリセルに結合される第１のワード線（WL）と、
前記第１のWLに加えて、前記複数の物理セクタ間に分散される第２のWLと、を備え、
前記第２のWLは、前記追加の消去セクタの前記複数の部分内の第２のメモリセルに結合される、請求項１に記載の半導体装置。
【請求項９】
前記複数の物理セクタに加えて、前記メモリバンクは、前記追加の消去セクタの一部を含まない１つまたは複数の物理セクタを備える、請求項１に記載の半導体装置。
【請求項１０】
システムであって、該システムは、
マイクロコントローラユニットと、
前記マイクロコントローラユニット内に埋め込まれたフラッシュメモリと、を備え、
前記フラッシュメモリは複数の物理セクタを含むメモリバンクを備え、
各物理セクタは複数の消去セクタを備え、
追加の消去セクタの複数の部分は、前記複数の物理セクタの間にそれぞれ分散され、
前記追加の消去セクタの前記複数の部分は、前記メモリバンクのための行冗長性セクタとして構成される、システム。
【請求項１１】
前記メモリバンクは欠陥消去セクタを含み、
前記追加の消去セクタの前記複数の部分は、前記メモリバンク内の前記欠陥消去セクタを置き換えるように構成される、請求項１０に記載のシステム。
【請求項１２】
前記フラッシュメモリは、前記メモリバンク上のメモリ動作中に、前記欠陥消去セクタの代わりに、前記追加の消去セクタの前記複数の部分にアクセスするように構成される、請求項１１に記載のシステム。
【請求項１３】
前記メモリ動作は、読み出し動作またはプログラム動作である、請求項１２に記載のシステム。
【請求項１４】
前記メモリ動作は、前記追加の消去セクタの前記複数の部分のそれぞれを消去するために、前記複数の物理セクタに対して直列に実行される消去動作である、請求項１２に記載のシステム。
【請求項１５】
前記メモリ動作は、前記追加の消去セクタの前記複数の部分のそれぞれを消去するために、前記複数の物理セクタに対して並列に実行される消去動作である、請求項１２に記載のシステム。
【請求項１６】
行冗長性を有する埋め込みフラッシュメモリを構成する方法であって、該方法は、
前記埋め込みフラッシュメモリ内のメモリバンクの複数の物理セクタ内に配置された第１のワード線（WL）を提供するステップであって、各物理セクタは複数の消去セクタを備える、ステップと、
前記第１のWLに加えて、前記複数の物理セクタ内に配置された第２のWLを提供するステップであって、前記第２のWLは追加の消去セクタの複数の部分に結合され、前記第２のWLは前記複数の物理セクタ間にそれぞれ分散され、前記追加の消去セクタは前記メモリバンクの行冗長性セクタとして構成される、ステップと、を有する方法。
【請求項１７】
前記メモリバンクが欠陥消去セクタを含むことを決定するステップと、
前記欠陥消去セクタを前記メモリバンク内の前記追加の消去セクタの前記複数の部分で置き換えるように、前記埋め込みフラッシュメモリを構成するステップと、をさらに有する、請求項１６記載の方法。
【請求項１８】
前記欠陥消去セクタの代わりに、前記追加の消去セクタの前記複数の部分にアクセスするメモリ動作のために、前記埋め込みフラッシュメモリを構成するステップをさらに有する、請求項１７記載の方法。
【請求項１９】
前記メモリ動作は、読み出し動作またはプログラム動作である、請求項１８に記載の方法。
【請求項２０】
前記追加の消去セクタの前記複数の部分のそれぞれを消去するために、前記複数の物理セクタ上で直列に実行されることになる消去動作のために、前記埋め込みフラッシュメモリを構成するステップをさらに有する、請求項１７に記載の方法。
【発明の詳細な説明】
【優先権主張】
【０００１】
本出願は、２０１７年１２月２１日に出願された米国非仮出願第15／850，779号の国際出願であり、２０１７年８月２９日に出願された米国仮出願第62／551，314号の優先権を主張し、その全ては、参照により本明細書に組み込まれる。
【技術分野】
【０００２】
本発明は、一般に、不揮発性メモリデバイスに関し、特に、フラッシュメモリにおけるハードウェア行冗長性の提供に関する。
【背景技術】
【０００３】
フラッシュメモリなどの不揮発性メモリは、コンピューティング装置内にデータおよび命令を記憶するために広く使用されている。フラッシュメモリは、一般に、行および列に配置されたメモリセルを有する物理セクタの1つまたは複数のメモリバンクを含む。マイクロコントローラなどのいくつかの半導体装置は、同じ半導体チップ上に埋め込まれたフラッシュメモリを含むことができる。
【発明の概要】
【０００４】
製造欠陥の製造後修正のために、埋め込みフラッシュメモリに行冗長性を与えることが望ましいが、そのような行冗長性を効率的な方法で実施することは、簡単ではない。例えば、用途によっては、必要な行冗長度の量は、物理セクタの４分の１のサイズである。しかし、このような少量のフラッシュメモリを各メモリバンクに追加するには、小さな非標準サイズを有する分離された物理セクタを使用する必要があるが、これは、ダイ領域に関して大きなオーバーヘッドを招く。これは、通常サイズのXデコーダおよびYデコーダは、小さい非標準物理セクタ上でメモリ動作を実行するために必要であり、そのような通常のXデコーダおよびYデコーダは、通常の物理セクタを動作させるために必要とされるデコーダと同じサイズのダイ領域を占有するからである。
【図面の簡単な説明】
【０００５】
【図１】いくつかの実施形態による、x２物理セクタ構造の例示的なダイレイアウトを示すブロック図である。
【図２】行冗長性のないフラッシュメモリの例示的なメモリバンクを示すブロック図である。
【図３】いくつかの実施形態による、分散行冗長性を有するフラッシュメモリの例示的なメモリバンクを示すブロック図である。
【図４】いくつかの実施形態による、分散行冗長性を有する例示的な物理セクタの構造を示すブロック図である。
【図５】いくつかの実施形態による、埋め込みフラッシュメモリを有する例示的なマイクロコントローラを示すブロック図である。
【発明を実施するための形態】
【０００６】
以下の説明は、フラッシュメモリにおける分散行冗長性のために本明細書で説明される技術の様々な実施形態の良好な理解を提供するために、特定のシステム、構成要素、方法などの例などの多数の特定の詳細を説明する。しかしながら、少なくともいくつかの実施形態は、これらの特定の詳細なしに実施されてもよいことは、当業者には明らかであろう。他の例では、周知の構成要素または方法は、本明細書で説明される技術を不必要に曖昧にすることを回避するために、詳細に説明されず、または単純なブロック図形式で提示される。したがって、以下に記載される特定の詳細は、単なる例示である。特定の実施態様は、これらの例示的な詳細とは異なってもよく、依然として本発明の精神および範囲内にあると考えられる。
【０００７】
説明における「実施形態」、「一実施形態」、「実施形態例」、「いくつかの実施形態」、および「様々な実施形態」への言及は、実施形態に関連して説明された特定の特徴、構造、または特性が本発明の少なくとも1つの実施形態に含まれることを意味する。さらに、説明の様々な箇所における「実施形態」、「一実施形態」、「実施形態例」、「いくつかの実施形態」、および「様々な実施形態」という語句の出現は、必ずしもすべて同じ実施形態を指すわけではない。
【０００８】
説明は、詳細な説明の一部を形成し、同様の参照番号が同様の構成要素または動作を指し得る、添付の図面への参照を含む。図面は、例示的な実施形態による例示を示す。本明細書で「例」とも呼ぶことができるこれらの実施形態は、当業者が本明細書で説明される特許請求の範囲の主題の実施形態を実施することを可能にするのに十分詳細に説明される。実施形態は、組み合わせることができ、他の実施形態を利用することができ、または構造的、論理的、および電気的変更を、特許請求の範囲の主題の範囲および精神から逸脱することなく行うことができる。本明細書で説明される実施形態は、説明される主題の範囲を限定することを意図するものではなく、むしろ、当業者がそのような主題を実施し、作り、および／または使用することを可能にすることを意図することを理解されたい。
【０００９】
埋め込みフラッシュなどのフラッシュメモリは、一般に、行に関連する製造欠陥（例えば、メモリセルアレイ内のX方向に沿った欠陥など）を有するメモリセルを置き換えることができる、ある量の行冗長性メモリセルを有することが必要とされる。必要な行冗長性の量は、歩留まり解析、物理セクタサイズなどの各種製造パラメータに基づいて決定することができる。いくつかの用途では、標準要件は、欠陥があるように製造された消去セクタの製造後の交換のために、少なくとも１つの消去セクタ（例えば、〜１MBメモリバンク当たり）を有することであり、４つの消去セクタは、メモリバンク内の１つの物理セクタを含むことができる。ソートフロー動作中に消去セクタ内の製造後に行関連欠陥が発見された場合、欠陥消去セクタは、すべてのフラッシュ動作（たとえば、プログラム、消去、検証、および読出し）のために、冗長性セクタ選択ゲート（SG）線（ワード線、またはWLとも呼ばれる）、メモリゲート（MG）線、およびソース線（SL）で置き換えられなければならない。ソートフロー動作は、ダイがまだウェハ上にある間、ダイがパッケージ内に配置されているとき、またはパッケージが顧客に出荷される前の任意の他の時間で、ダイ上のテストプローブおよび他の製造機器によって実行することができる製造後動作である。ソートフロー動作によって検出され得る欠陥は、製造技術に依存し得、行関連欠陥は、とりわけ、MGからMGへの短絡、SGからSGへの短絡、MGからSLへの短絡、MGからBL (ビット線）への短絡、MG開路、SG開路、およびSL開路を含み得る。
【００１０】
行冗長性を追加する際の課題は、ダイ領域ペナルティを最小限に抑えることである。例えば、いくつかのアプリケーションは、物理セクタのx２構造を使用することができ、これは、物理セクタをそれ自体で追加することはできないが、その隣接セクタも追加しなければならないことを意味する。その理由は、メモリ読み出し動作は、隣接する物理セクタ上に位置する基準セルから供給される基準電流を使用する局部差動センスアンプ（SA）を使用して実行されるからである。例えば、このようなx２構造は、２つの物理セクタのために同じSAのセットを使用することができ、それによって、各物理セクタがそれ自体のSAを有する場合に、そうでなければ必要となるダイ面積を節約することができるので、一度に１つの物理セクタへのメモリアクセスを必要とするアプリケーションにおいて好ましいことがある。図１は、いくつかの実施形態による、そのようなx2物理セクタ構造のダイレイアウトを例示するブロック図である。
【００１１】
図１において、x２構造１００は、フラッシュメモリセルを有するコア領域と、本質的に「周辺」ダイ領域オーバーヘッドであるダイ領域１０１、１０３、１０５とを含む。ダイ領域１０１は、２つの隣接する物理セクタ１０２ａおよび１０２bの間に配置され、その各々は、行および列に配置されたフラッシュメモリセルを有するコア領域を含む。フラッシュメモリセルは、通常、選択ゲートと、メモリゲートと、基板上のソース領域とドレイン領域との間の集積回路（IC）基板内に形成されたチャネル上に配置された1つまたは複数のメモリトランジスタとを含む。ダイ領域１０１は、局部SA（物理セクタ１０２aおよび１０２bの両方で動作する）と、上部（奇数および偶数の両方) SGラインを選択するように構成された回路とを収容する。ダイ領域１０３は、底部／偶数SG線を選択するための回路を収容し、ダイ領域１０５は、底部／奇数SG線を選択するための回路を収容する。X２ 構造１００はまた、SGドライバ１０６、SLドライバ１０８、およびMGドライバ１１０を含む。ドライバは、それに結合された他の電子素子または構成要素（例えば、導電線、メモリセルなど）に一定の電圧および／または電流を印加するように構成された電子素子（例えば、トランジスタ、ダイオード、論理ゲートなど）の回路である。図１において、SGドライバ１０６は、物理セクタ１０２aおよび１０２b内のメモリセルの選択ゲートに結合されるSG線（ワード線とも呼ばれる）を駆動するように構成される。SLドライバ１０８は、物理セクタ１０２aおよび１０２b内のメモリセルのソース領域に結合されたソース線を駆動するように構成される。MGドライバ１１０は、物理セクタ１０２aおよび１０２b内のメモリセルのメモリゲートに結合されたMG線を駆動するように構成される。ダイ上では、様々なドライバ内の半導体素子のピッチは、フラッシュメモリセルが物理セクタ１０２aおよび１０２bのコア領域内に配置されるピッチよりも大きいことを理解されたい。
【００１２】
行冗長性を実現するための1つの従来のアプローチは、メモリアレイに専用の物理セクタを追加することである。例えば、x２物理セクタ構造（例えば、図１に示すようである）を使用するアプリケーションでは、１つの消去セクタを置き換えるのに必要なWLの適正量を、（小さいにもかかわらず）別個の物理セクタとして追加する必要がある。この方法には二つの問題がある。第１に、x２物理セクタ構造に必要な周辺回路（例えば、SAおよび選択素子）は、コアフラッシュメモリセルを動作させるために使用される周辺回路とは別に追加される必要がある。第２に、専用の列冗長性セクタ内のWLの数は、通常の物理セクタの１／４に過ぎない。これらの問題の両方は、専用セクタのセクタ高さが通常のセクタの1／4に過ぎず、図1に示すMGおよびSLドライバに適合するのに十分な幅がないので、Xデコーダ（例えば、SG、SL、およびMGドライバを含む）に大きなレイアウト問題を課す。この結果、デコーダの幅が増大し、アレイ全体の幅に影響を与える。通常の物理セクタの場合、MGおよびSLドライバの共有は広範囲にわたることがあるが（それによってXデコーダの合計幅が減少する）、専用の行冗長性セクタの共有オプションは制限され、その結果、Xデコーダがより広くなる。
【００１３】
これらの問題および他の問題に対処するために、本明細書では、フラッシュメモリにおける分散行冗長性のための技術の様々な実施形態を説明する。これらの実施形態では、上記の問題に対する解決策は、RR WLに結合されたメモリセルの合計サイズが、行冗長性セクタとして使用される少なくとも1つの消去セクタのサイズに等しくなるように、複数の通常の物理セクタ内に行冗長性(RR) WLを分散させることである。行冗長性セクタが実際に欠陥消去セクタを置き換えるように構成されている場合、メモリ動作は、同じ通常の物理セクタにアクセスするが、分散行冗長性セクタ内のRR WLに結合されたメモリセルを指し示す異なるデコードされたアドレスターゲットを有する。このようにして、本明細書で説明する分散行冗長技術は、通常の物理セクタに使用されるのと同じ組の復号および補助回路を使用することになる。例えば、Xデコーダ（例えば、それらのSG、MG、及びSLドライバを有する）、選択Y復号トランジスタ、及び通常の物理セクタに使用されるSAは、分散行冗長性セクタ内のRR WLを選択するために使用されるXデコーダと同じダイ領域を共有する。この結果、ダイ面積が大幅に節約され、ロバストな冗長スキームが得られる。
【００１４】
1つの例示的な実施形態では、半導体デバイスは、複数の物理セクタを有するメモリバンクを含む埋め込みフラッシュメモリを備える。各物理セクタは、複数の消去セクタを含み、追加の消去セクタの複数の部分は、それぞれ、複数の物理セクタの間に分散され、追加の消去セクタの複数の部分は、メモリバンクのための行冗長性セクタとして構成される。この実施形態の一態様では、メモリバンクは、欠陥消去セクタ（例えば、埋め込みフラッシュメモリ上のソートフロー動作中に決定され得る）を含み、追加の消去セクタの複数の部分は、メモリバンク内の欠陥消去セクタを置き換えるように構成される。例示的な態様では、埋め込みフラッシュメモリは、メモリバンク上でのメモリ動作中に、欠陥のある消去セクタの代わりに、追加の消去セクタの複数の部分にアクセスするように構成される。メモリ動作は、例えば、読み出し動作又はプログラム動作である。メモリ動作は、また、追加の消去セクタの複数の部分の各々を消去するために、複数の物理セクタ上で直列に、または並列に実行される消去動作であってもよい。一態様では、半導体デバイスは、複数の物理セクタ内の第１のメモリセルに結合された第１のWLと、第１のWLに加えて複数の物理セクタ間に分散された第２のWLとを備え、第２のWLは、追加の消去セクタの複数の部分内の第２のメモリセルに結合される。別の態様では、複数の物理セクタに加えて、メモリバンクは、追加の消去セクタの一部を含まない１つまたは複数の物理セクタを備える。
【００１５】
別の例示的な実施形態では、システムは、マイクロコントローラと、マイクロコントローラ内に埋め込まれたフラッシュメモリとを備える。フラッシュメモリは、複数の物理セクタを含むメモリバンクを備える。各物理セクタは、複数の消去セクタを含み、追加の消去セクタの複数の部分は、それぞれ、複数の物理セクタの間に分散され、追加の消去セクタの複数の部分は、メモリバンクのための行冗長性セクタとして構成される。この実施形態の一態様では、メモリバンクは、欠陥消去セクタ（例えば、埋め込みフラッシュメモリ上のソートフロー動作中に決定され得る）を含み、追加の消去セクタの複数の部分は、メモリバンク内の欠陥消去セクタを置き換えるように構成される。例示的な態様では、フラッシュメモリは、メモリバンク上のメモリ動作中に、欠陥消去セクタの代わりに、追加の消去セクタの複数の部分にアクセスするように構成される。メモリ動作は、例えば、読み出し動作又はプログラム動作である。メモリ動作はまた、追加の消去セクタの複数の部分の各々を消去するために、複数の物理セクタ上で直列に、または並列に実行される消去動作であってもよい。
【００１６】
別の例示的な実施形態では、行冗長性を有する埋め込みフラッシュメモリを構成する方法は、各物理セクタが複数の消去セクタを含む、埋め込みフラッシュメモリ内のメモリバンクの複数の物理セクタ内に配置された第１のWLを提供することと、第１のWLに加えて複数の物理セクタ内に配置された第２のWLを提供することとを含み、第２のWLは、複数の物理セクタ間にそれぞれ分散される追加の消去セクタの複数の部分を形成するように構成され、追加の消去セクタは、メモリバンクのための行冗長性セクタとして構成される。この実施形態の一態様では、この方法は、（例えば、埋め込みフラッシュメモリ上のソートフロー動作中に）メモリバンクが欠陥消去セクタを含むと判定するステップと、欠陥消去セクタをメモリバンク内の追加の消去セクタの複数の部分で置き換えるように埋め込みフラッシュメモリを構成するステップとをさらに含む。例示的な態様では、方法は、欠陥のある消去セクタの代わりに追加の消去セクタの複数の部分にアクセスすることになるメモリ動作（例えば、読み出し動作またはプログラム動作）のために、埋め込みフラッシュメモリを構成することをさらに含むことができる。別の例示的な態様では、方法は、追加の消去セクタの複数の部分のそれぞれを消去するために、複数の物理セクタ上で直列に、または並列に実行される消去動作のために埋め込みフラッシュメモリを構成することをさらに含むことができる。
【００１７】
本明細書で説明する技術によれば、従来の解決策の代替案は、ユーザ・データに使用される通常の物理セクタの間で必要な行冗長性セクタ（複数可）を分散させることである。例えば、図２は、列冗長性のないフラッシュメモリの１MBメモリバンクを例示する。図２において、メモリバンク２００は、各々が１２８KBのフラッシュメモリセルを有する８つの物理セクタ２０２に結合されたセンスアンプ２０１を含む。センスアンプ２０１は、メモリバンク２００の底部に配置されるように図示されているが、様々なアーキテクチャでは、センスアンプ２０１は、異なるダイ領域を占有してもよいことを理解されたい。例えば、x２物理セクタ構造を使用するメモリバンクでは、センスアンプ２０１は、四対の物理セクタ２０２のそれぞれの間に分散配置されてもよい。図２に例示するように、各物理セクタ２０２は、各々が３２KBのフラッシュメモリセルを有する４つの消去セクタ２０２＿０、２０２＿１、２０２＿２、及び２０２＿３を含む。
【００１８】
図２のメモリバンクに行冗長性を加えるために、いくつかの実施形態では、フラッシュメモリセルの３２KBの１消去セクタに合計で等しい物理セクタの複数の部分が、各物理セクタ内に分散される。このような分散行冗長性の例を図３に示す。
【００１９】
図３において、メモリバンク３００は、８つの物理セクタ３０２に結合されたセンスアンプ３０１を含み、各物理セクタ３０２は、１２８KBのフラッシュメモリセルと、メモリバンクの行冗長性消去セクタの４KB部分とを有する。様々なアーキテクチャにおいて、センスアンプ３０１は、異なるダイ面積を占有してもよいことを理解されたい。例えば、x２物理セクタ構造を使用するメモリバンクでは、センスアンプ３０１は、四対の物理セクタ３０２のそれぞれの間に分散配置されてもよい。各物理セクタ３０２は、それぞれが３２KBのフラッシュメモリセルを有する４つの消去セクタ３０２＿０、３０２＿１、３０２＿２、及び３０２＿３と、４KBのフラッシュメモリセルを有する行冗長性セクタの一部３０４とを含む。
【００２０】
本明細書で説明する技術によれば、フラッシュメモリのバンクには、欠陥のある消去セクタを、メモリバンク内の通常の物理セクタの間に分散された行冗長性セクタの部分と置き換えるための構成情報が提供される。例えば、ソートフロー動作がメモリバンク内の欠陥消去セクタを識別する場合、欠陥セクタの位置は、メモリバンク内の構成フリップフロップ、レジスタ、および／または合成ロジックに記録される。構成フリップフロップ、レジスタ、および／または合成ロジックは、そのような位置情報を記憶するように永久的にプログラムされてもよく、または起動時にそのような情報でリフレッシュされてもよい。そして、この位置情報に基づいて、代わりに、行冗長性セクタに対して、不良セクタへのアクセス対象となるメモリ動作が行われる。例えば、Xデコーダの内部ロジックは、この位置情報を使用して、ターゲットアドレスが欠陥消去セクタ内のメモリセルに向けられていることを決定し、ターゲットアドレスをデコードして、通常の物理セクタ内に配置されている分散行冗長性セクタの対応する部分を示すことができる。このように、行冗長性が複数の通常の物理セクタ間に分散されるという事実は、アドレス復号の問題に過ぎない。（単一のWLベースで実行される）読み出しおよびプログラムメモリ動作は影響を受けず、（行冗長性セクタ全体で実行される）消去動作は、いかなる重大な性能ペナルティも課すことなく、一度に通常の物理セクタ内の1つの位置で、直列に実行することができる。
【００２１】
図４は、本明細書で説明する技術のいくつかの実施形態による、分散行冗長性を有する例示的な物理セクタ４０２の構造を示すブロック図である。物理セクタ４０２は、４つの消去セクタ４０２＿０〜４０２＿３と、行冗長性セクタの部分４０４とを含む。消去セクタ４０２＿０には、SG線４０６＿０、SL４０８＿０、およびMG線４１０＿０が配置されている。消去セクタ４０２＿３には、SG線４０６＿３、SL４０８＿３、MG線４１０＿３が配置されている。行冗長性セクタの部分４０４には、SG線４１６、SL４１８、およびMG線４２０が配置されている。消去セクタ４０２＿０〜４０３＿３および行冗長性セクタの部分４０４の各々において、それぞれのSG線（例えば、４０６＿０〜４０６＿３、４１６）は、コアメモリセルの選択ゲートに結合され、それぞれのSL（４０８＿０〜４０８＿３、４１８）は、コアメモリセルのソース領域に結合され、それぞれのMG線（４１０＿０〜４１０＿３、４２０）は、コアメモリセルのメモリゲートに結合される。物理セクタ４０２内のコアメモリセル（例えば、消去セクタ４０２＿０〜４０２＿３内、および行冗長性セクタの部分４０４内）は、スプリットゲートメモリセル、２トランジスタ（２T）メモリセル、NANDメモリセル、NORメモリセルなどを含むが、これらに限定されない、任意のタイプのフラッシュメモリセルとすることができる。
【００２２】
図４の分散行冗長線（例えば、SG線、SL線、およびMG線）は、物理セクタ４０２内の線の均質な延長であり、したがって、物理セクタ内の面積最適化が最大化され、その中のメモリアレイの均一性が維持されることを理解されたい。また、行冗長性WLの総量を分配することにより、各通常の物理セクタに、そのような少量の余分なWLが追加されることになり、物理セクタに対するアナログの影響（例えば、余分なキャパシタンス、抵抗など）がほとんどないことも理解されたい。これは、ダイ面積に関して非常に効率的であり、専用冗長性セクタに関連するオーバーヘッドを節約する。したがって、専用の物理セクタを使用する従来の行冗長性方式とは異なり、本明細書で説明される技法は、完全な機能性および信頼性を有し、他のペナルティを全く伴わない効率的な行冗長性方式（ダイ面積に関して）を提供する。
【００２３】
図５は、例示的な実施形態による、埋め込みフラッシュメモリを有する例示的なマイクロコントローラユニット（MCU）を示すブロック図である。図５において、MCU５００は、例示の目的のために簡略化されており、したがって、完全な説明であることを意図していないことを理解されたい。また、MCUは、図５の実施形態とは、いくつか、全部、または異なる／追加の構成要素を含むことができることを理解されたい。さらに、様々な実施形態では、MCU以外の半導体装置（例えば、コントローラ、専用プロセッサ、デジタル信号プロセッサ（「DSP」）、特定用途向け集積回路（「ASIC」）、フィールドプログラマブルゲートアレイ（「FPGA」）など）が、本明細書で説明される分散行冗長性のための技術を実施することができることを理解されたい。したがって、図５のMCU５００は、限定的な意味ではなく、例示的なものとみなされるべきである。
【００２４】
MCU５００は、半導体基板の単一のダイ上の集積回路（IC）として具現化される。他の要素の中でも、MCU５００は、中央演算処理装置（CPU）コア502（1つまたは複数のプロセッサを含むことができる）、読み出し専用メモリ（ROM）５０４、スタティックランダムアクセスメモリ（SRAM）５０６、およびフラッシュメモリ５１０を含み、これらは相互接続５０８を介して互いに結合される。様々な実施形態では、異なるおよび／または追加の要素が、各選択またはタイプのCPUコアを有するMCUに含まれてもよく、そのような要素は、直接、または、バス、ブリッジ、および／もしくは相互接続とは異なる他の回路を介して、CPUコアおよび／または互いに結合されてもよいことに留意されたい。
【００２５】
CPUコア５０２は、ROM５０４、SRAM５０６、フラッシュメモリ５１０、および／または他の記憶モジュール（構成されている場合）からフェッチすることができる命令を実行するように構成される。ROM５０４は、CPUコア５０２およびMCU５００の他の要素によってアクセスすることができる命令および／またはデータ（たとえば、構成データなど）を記憶するためのファームウエアとしてプログラムされる。SRAM５０６は、（電源が印加されている限り）リフレッシュされる必要なくデータおよび／または命令を記憶するように構成された揮発性メモリデバイスであり、アクセスされた最後のメモリロケーションにかかわらず、任意の順序で書込みまたは読出しを行うことができる。相互接続５０８は、CPU５０２と他のMCU要素との間のアドレス、データ、および制御インターフェースを提供するように構成される。
【００２６】
フラッシュメモリ５１０は、データ、構成情報、および／または実行可能命令を記憶することができる埋め込み不揮発性メモリ（NVM）メモリデバイスである。フラッシュメモリ５１０は、（例えば、アドレス、データ、および制御バスを介して）相互接続５０８に結合され、そこから情報を受信し、そこに情報を送信するように構成される。数ある要素の中でも、フラッシュメモリ５１０は、フラッシュコントローラ５１２、Xデコーダ５１４、Yデコーダ５１６、およびメモリアレイ５２０を含む。フラッシュコントローラ５１２は、フラッシュメモリ５１０の状態およびコマンド制御を提供するために、各種ハードウェア構成要素（例えば、トランジスタ、論理ゲート、ならびに各種他のアナログおよび／またはデジタル回路）で構成される。例えば、フラッシュコントローラ５１２は、様々な制御ラインおよびバスから信号を受信し、制御およびコマンド信号を（例えば、Xデコーダ５１４、Yデコーダ５１６などに）送信し、様々なメモリ動作中にメモリアレイ５２０に印加される信号を制御するように結合される。
【００２７】
メモリアレイ５２０は、各メモリセルが行および列ドライバ回路を介して行および列アドレスによってアクセスされ得るように、行および列として配置されたフラッシュメモリセルのアレイである。メモリセルは、読み出し動作、プログラム動作、および消去動作においてアクセス可能な１つまたは複数のビットの情報をそのメモリトランジスタに記憶することができる。図５の実施形態では、メモリアレイ５２０内のメモリセルは、１つまたは複数のメモリバンクとして配置することができる複数の物理セクタ内に配置され、各物理セクタは、メモリセルのいくつかの行および列を含むことができる。
【００２８】
メモリアレイ５２０は、他のMCU要素の中でもとりわけ、選択ゲート線、ソース線、およびメモリゲート線を介してXデコーダ５１４に結合される。メモリアレイ５２０はまた、他のMCU要素の中でもとりわけ、複数のビット線を介してYデコーダ５１６に結合される。Xデコーダ５１４およびYデコーダ５１６は、メモリ動作中にフラッシュコントローラ５１２からアドレス情報を受信し、対応するメモリセルを決定するためにアドレス情報をデコードするように構成された回路を含む。例えば、他の回路の中でもとりわけ、Xデコーダ５１４は、SGドライバ、SLドライバ、MGドライバ、およびメモリ動作中にメモリセルのアドレス指定された行を識別するように動作可能な各種周辺回路（例えば、チャージポンプ、デジタル?アナログ変換器、アンプなど）を含む。Yデコーダ５１６は、他の回路の中でもとりわけ、メモリ動作中にメモリー細胞のアドレス指定された列を識別するように動作するビット線ドライバおよび各種周辺回路を含む。
【００２９】
メモリアレイ５２０は、センスアンプ５２０ａを含む。様々なアーキテクチャにおいて、センスアンプ５２０ａは、メモリアレイ５２０の異なるダイ領域を占有し得ることに留意されたい。例えば、x２物理セクタ構造を使用する実施形態では、センスアンプは、メモリアレイ内の物理セクタの各対の間に配置することができる。メモリ動作中、センスアンプ５２０ａは、メモリアレイ内のメモリセルからマルチビットワードを読み出し、フラッシュコントローラ５１２によって制御される回路（例えば、ラッチ、データバッファなど）にマルチビットワードを転送するように構成される。
【００３０】
読み出しメモリ動作では、読み出し動作で指定されたアドレスから、メモリアレイ５２０に記憶されたビットが読み出される。アドレス情報は、フラッシュコントローラ５１２から渡され、Xデコーダ５１４およびYデコーダ５１６によってデコードされて、対応するメモリセルを決定する。電流ベースのセンシングの一例として、デコードされたアドレスに記憶されたビットを読み出すために、対応するメモリセルのメモリゲートに電圧が印加される。２つの状態を明確に区別するために、「ハイ」ビットを記憶するときにメモリトランジスタをオンにするのに必要な目標電圧と、「ロー」ビットを記憶するときにトランジスタをオンにするのに必要な目標電圧との間に、電圧が実質的に等距離にあるように、電圧が正確に生成される。読み出し動作中の電圧が印加されたときに、センスアンプ５２０ａが目標電流範囲に相当するメモリセルのソースとドレインとの間の実質的な電流の流れを検出する場合、メモリセルは「高」ビットを保持する。あるいは、読み出し動作中の電圧が印加されたときに、センスアンプ５２０ａが目標電流範囲に相当するメモリセルのソースとドレインとの間の実質的な電流の流れを検出しない場合、メモリセルは「低」ビットを保持する。
【００３１】
プログラムメモリ動作では、メモリアレイ５２０に記憶されたビットが、プログラム動作で指定されたアドレスに書き込まれる。アドレス情報は、対応するメモリセルを決定するために、Xデコーダ５１４およびYデコーダ５１６に渡され、デコードされる。正の電圧がメモリセルの選択ゲートに印加され、より高い正の電圧がそのメモリゲートに印加される。メモリゲートとメモリセルのソースとの間のバイアス条件は、メモリセルのメモリトランジスタ内に「低」ビットを効果的にプログラムし、このビットは、様々な電圧が除去された後でも記憶され続ける。
【００３２】
消去メモリ動作では、メモリアレイ５２０の所定の消去セクタのメモリセルに記憶されたビットが、消去動作で指定されたアドレス情報に基づいて消去される。アドレス情報は、Xデコーダ５１４およびYデコーダ５１６に渡され、デコードされて、目標消去セクタの位置が決定される。メモリセルのメモリトランジスタ内に蓄積された電荷を「消去」し、その状態を「高」ビットに戻すために、正確な電圧がメモリセルのソースに印加される。メモリセルのドレインがフローティングされ（または、あるバイアスに保持され）、正確に生成された高負電圧がそのメモリゲートに印加され、その選択ゲートが接地される。メモリセルのメモリゲートとソースとの間のバイアス条件が、メモリトランジスタを「高」ビット状態に効果的に消去する。
【００３３】
本明細書で説明される行冗長性のための技術によれば、欠陥消去セクタは、ソートフロー動作中に識別される。次いで、欠陥消去セクタは、フラッシュメモリ５２０内で、例えば、構成フリップフロップ、レジスタ、および／または他のロジック内の欠陥セクタの位置情報をプログラム／記憶することによって、分散行冗長性セクタと置き換えられる。使用時に、欠陥消去セクタ内のアドレスに対して読取りまたはプログラムメモリ動作が開始されると、Xデコーダ５１４は、アドレスをデコードして、分散行冗長性セクタの対応する部分内のメモリセルの行を識別する。識別された行に対応する通常の物理セクタが決定され、要求されたデータが、物理セクタ内に配置され行冗長性セクタの部分から読み出されるか、またはその部分にプログラムされる。欠陥消去セクタに対して消去動作が開始されると、Xデコーダ５１４は、消去動作においてアドレスをデコードし、分散行冗長性セクタ内のメモリセルを消去する必要があると判断する。制御ロジック（例えば、フラッシュコントローラ512内の）は、次に、物理セクタの各々に配置された行冗長性セクタの各部分に、必然的に直列に、または並列に、電圧を印加し、それによって、分散行冗長性セクタ内のメモリセルを消去する。
【００３４】
様々な実施形態では、本明細書で説明される分散行冗長性方式の使用は、フラッシュメモリ製品に使用されるダイ面積の全体的な低減をもたらす。分散冗長性方式は、製造歩留まりを改善し、行に関連する製造欠陥の影響を克服する。例えば、本明細書で説明される行冗長性方式は、行冗長ワード線、ソース線、およびメモリゲート線をメモリバンクの複数の物理セクタに追加することを可能にし、それによって、別個の冗長性セクタを使用する代わりに、通常の物理セクタ間で必要な冗長性を分配する。これにより、通常の物理セクタを動作させるために使用される同様のロジックの一部として、またはそれと共に、行冗長線を動作させるために必要なロジック（例えば、構成フリップフロップ、レジスタ、合成ロジック、ドライバ回路など）を配置することが可能になる。本明細書で説明する行冗長性方式は、高速アクセスを必要とするが、大きなダイ面積ペナルティを回避する必要がある不揮発性メモリアーキテクチャ（例えば、埋め込みフラッシュメモリなど）に特に有用であることを理解されたい。このようなアーキテクチャの一例は、自動車用半導体製品に使用されるフラッシュメモリアーキテクチャであり、これは、一般に、不良率が低く、ダイ面積の影響が小さい、高い製造歩留まりを必要とする。
【００３５】
フラッシュメモリにおける分散行冗長性のための本明細書で説明される技術の様々な実施形態は、様々な動作を含むことができる。これらの動作は、ハードウェア構成要素、ファームウェア、またはそれらの組み合わせによって実行され得る。本明細書で使用されるように、用語「結合される（coupled to）」および「結合される（coupled with）」は、１つまたは複数の介在する成分を介して直接的に結合されるか、または間接的に結合されることを意味する。本明細書で説明される様々なバスを介して提供される信号のいずれも、他の信号と時間多重化され、１つまたは複数の共通バスを介して提供され得る。さらに、回路構成要素またはブロック間の相互接続は、バスとして、または単一の信号線として示されてもよい。バスの各々は、代替的に、１つ以上の単一の信号線であってもよく、単一の信号線の各々は、代替的に、バスであってもよい。
【００３６】
本明細書の任意の方法の動作は、特定の順序で示され、説明され得るが、各方法の動作の順序は、特定の動作が逆の順序で実行され得るように、または特定の動作が、少なくとも部分的に、他の動作と同時に実行され得るように、変更され得る。他の実施形態では、別個の動作の命令またはサブ動作は、断続的および／または交互の方法であってもよい。
【００３７】
上記の明細書において、本発明は、その特定の例示的な実施形態を参照して説明してきた。しかし、添付の特許請求の範囲に記載されている本発明のより広い精神および範囲から逸脱することなく、様々な修正および変更を行うことができることは明らかであろう。したがって、明細書および図面は、限定的な意味ではなく、例示的な意味において見なされるべきである。
【要約】行冗長性を有するフラッシュメモリのための技術が本明細書で説明される。例示的な実施形態では、半導体デバイスは埋め込みフラッシュメモリを備える。該埋め込みフラッシュメモリは、複数の物理セクタを含むメモリバンクを備え、各物理セクタは複数の消去セクタを備える。前記メモリバンクにおいて、追加の消去セクタの複数の部分は、前記複数の物理セクタの間にそれぞれ分散される。前記追加の消去セクタの前記複数の部分は、前記メモリバンクのための行冗長性セクタとして構成される。【図１】
0006768173.tif 000002
【図２】
0006768173.tif 000003
【図３】
0006768173.tif 000004
【図４】
0006768173.tif 000005
【図５】
0006768173.tif 000006