JP6139727B2 - Eccで保護されたメモリを用いる使用のためのmbistデバイス - Google Patents

Eccで保護されたメモリを用いる使用のためのmbistデバイス Download PDF

Info

Publication number
JP6139727B2
JP6139727B2 JP2016048397A JP2016048397A JP6139727B2 JP 6139727 B2 JP6139727 B2 JP 6139727B2 JP 2016048397 A JP2016048397 A JP 2016048397A JP 2016048397 A JP2016048397 A JP 2016048397A JP 6139727 B2 JP6139727 B2 JP 6139727B2
Authority
JP
Japan
Prior art keywords
memory
access port
path
data
ecc
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016048397A
Other languages
English (en)
Other versions
JP2016170787A (ja
Inventor
シー. ジョーンズ,エリック
シー. ジョーンズ,エリック
ジェイ. アラン,アンドリュー
ジェイ. アラン,アンドリュー
Original Assignee
アナログ・デバイシズ・インコーポレーテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by アナログ・デバイシズ・インコーポレーテッド filed Critical アナログ・デバイシズ・インコーポレーテッド
Publication of JP2016170787A publication Critical patent/JP2016170787A/ja
Application granted granted Critical
Publication of JP6139727B2 publication Critical patent/JP6139727B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/1201Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details comprising I/O circuitry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/36Data generation devices, e.g. data inverters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/26Accessing multiple arrays
    • G11C2029/2602Concurrent test

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Description

本開示は、メモリの分野、特に、誤り訂正符号で保護されたメモリにメモリ組み込み自己テストを行うためのシステムおよび方法に関する。
半導体設計および製造方法における最近の進歩により、電子回路のより一層の小型化が可能になっている。マイクロプロセッサ、通信論理、および、特にメモリを備える完全なシステムを、今では、単一の半導体チップ上に見出すことができる。そのようなシステムオンチップ(SOC)は、回路基板上の別個の構成要素として以前には高空間要件を有していた多様な技術を備える。
従来、半導体チップは、論理機能が大半を占め、別個のメモリが外部に提供されていたが、現代の集積回路は、半導体チップ自体の上にメモリを埋め込むことがますます要求されている。埋め込み型メモリは、様々なサイズおよび形態で様々なメモリブロックとして半導体チップ内に存在し得る。半導体チップ上へのメモリの集積の結果、空間を節約することが可能になる。更に、インターフェースおよび速度妨害因子、例えば回路基板などの排除または削減の結果、メモリアクセス速度を向上することができる。
システムオンチップ内の埋め込み型メモリは、信頼性が高い必要があり、それに応じてテストされる必要がある。したがって、「メモリ組み込み自己テスト」(MBIST)デバイスと称されることがあるメモリ自己テストデバイスが、通常、埋め込み型メモリを有するシステムオンチップ内に提供され、そのデバイスは、システムに提供される埋め込み型メモリに適合される。そのようなデバイスは、次いで、例えば対応する半導体チップの製造の間または後に、メモリ自己テストを実行する。
本開示の一態様は、メモリ、例えば半導体チップに埋め込まれたメモリのメモリ自己テストのためのデバイス(MBISTデバイス)を提供する。MBISTデバイスは、第1のアクセスポートおよび第2のアクセスポートを含む。第1のアクセスポートは、デバイスの第1の動作モードにおいて、第1のアクセスポートとメモリとの間の第1の経路を経由してメモリをテストするように構成される。第2のアクセスポートは、デバイスの第2の動作モードにおいて、第2のアクセスポートとメモリとの間の第2の経路を経由してメモリをテストするように構成される。第1の経路は、メモリと関連付けられた誤り訂正符号(ECC)論理を除外し、一方、第2の経路は、メモリと関連付けられたECC論理を含む。様々な実施形態において、本明細書に記載したMBISTデバイスは、例えば、SOCもしくはICパッケージ内に、部分的または全体的に含まれることによって集積された解決策として提供されてもよいし、あるいは個別デバイスとして実装されることによって別個の部分からなる解決策として提供されてもよい。
本開示の別の態様は、そのようなMBISTデバイスを実装するシステム、例えばSOCまたはICを提供する。システムは、メモリ、例えば半導体チップに埋め込まれたメモリと、1つ以上のECCアルゴリズムを適用することによりメモリに対するデータの読み取りおよび/または書き込みにおける誤りを訂正するか検出するように構成されることによってメモリと関連付けられたECC論理と、を含む。システムは、メモリの自己テストのためのMBISTデバイスを更に含む。デバイスは、第1の経路を経由してメモリに通信可能に接続された第1のアクセスポートであって、第1の経路が、メモリと関連付けられたECC論理を除外する、第1のアクセスポートと、第2の経路を経由してメモリに通信可能に接続された第2のアクセスポートであって、第2の経路が、メモリと関連付けられたECC論理を含む、第2のアクセスポートと、を含む。デバイスは、デバイスの第1の動作モードにおいて、第1の経路を経由してメモリをテストするように構成される。デバイスは、更に、デバイスの第2の動作モードにおいて、第2の経路を経由してメモリをテストするように構成される。
本明細書において使用される際、MBISTデバイスの特定のアクセスポートとMBISTデバイスがテストするように構成されるメモリとの間の経路を記載する文脈において本開示に使用される用語「経路」は、アクセスポートとメモリとの間で、例えば、アドレス、制御、および/またはデータ信号を通信することによって、メモリをテストするための通信経路のことを言う。
本明細書において使用される際、MBISTデバイスの特定のアクセスポートとメモリとの間の経路がECC論理を含むという記載は、アクセスポートとメモリとの間で通信され得るアドレス、制御、および/またはデータ信号がECC論理を横切り、ECC論理がこれらの信号に作用し得る(すなわち、アクセスポートとメモリとの間にECC論理が存在する)ような、経路のことを言う。
同様に、本明細書において使用される際、MBISTデバイスの特定のアクセスポートとメモリとの間の経路がECC論理を除外するという記載は、アクセスポートとメモリとの間で通信され得るアドレス、制御、および/またはデータ信号が、チップ上に存在する可能性があるかチップ上に存在しない可能性があるECC論理を横切らないような経路のことを言う。そのような場合において、メモリがそのようなECC論理を提供される場合でさえも、ECC論理は、アクセスポートとメモリとの間で通信された信号に作用することができない(すなわち、アクセスポートとメモリとの間にECC論理が存在しない)。
本開示の更に別の態様は、本明細書に記載したMBISTデバイスを使用するメモリのメモリ自己テストのための方法に関する。
本開示の更に他の態様は、プロセッサまたは任意の種類のコントローラ上で/によって実行されるときに、本明細書に記載したメモリ自己テストのための方法を実行するために構成されたソフトウェアコード部分(すなわち、コンピュータ可読命令)を含む、好適には非一時的な、コンピュータプログラムおよびコンピュータ可読記憶媒体に関する。
本開示ならびにその特徴および利点のより完全な理解を提供するために、参照が、添付の図面と併せて考慮される以下の記載になされ、同じ参照番号は同じ部分を表わす。
図1は、典型的なICテストフローを例示する図である。
図2は、メモリをテストするためのMBISTデバイスを実装するシステムを例示する図である。
図3は、ECCで保護されたメモリをテストするためのMBISTデバイスを実装するシステムを例示する図である。
図4は、本開示の一実施形態に係るECCで保護されたメモリのためのMBISTデバイスを実装するシステムを例示する図である。
図5は、本開示のある実施形態に係る複数のECCで保護されたメモリのためのMBISTデバイスを実装するシステムを例示する図である。
図6は、本開示の別の実施形態に係るECCで保護されたメモリのためのMBISTデバイスを実装するシステムを例示する図である。
図7は、本開示の一実施形態に係るMBISTデバイスを制御するための方法ステップのフロー図である。
図8は、本開示の一実施形態に係る例となるデータ処理システムを例示するブロック図を描写する。
ICテストフローの基礎
図1は、典型的なICテストフロー100を例示する図である。図1に示されるように、ICは複数の段階でテストされ得る。典型的には第1の段階であるIC製造段階102の間、IC製造業者は、ウェハ形態で(複数の)構成要素をテストすることによってウェハプローブテスト104を行い得、および/または最終パッケージIC形態をテストすることによってパッケージICテスト106を行い得る。
パッケージIC構成要素が一旦システムに組み立てられると、それは、システムテスト112を受けることによってシステム製造段階110においてテストされ得る。段階110では、複数のシステムテスト112が、サブアセンブリがより高いレベルシステムに集積されるように行われ得る。
ICを含むシステムが特定の最終アプリケーションに一旦配置されると、ICは、アプリケーションレベル段階114においてテストされ得る。そのテスト段階で、ICは、自己テストを行う機能を有することが多く、例えば、図1に電源投入時自己テスト(Power on Self−Test:POST)116として示されるシステムの電源投入時に、および/または図1に定期的自己テスト118として示される通常動作の間に定期的に、ICを備える電子システムの合否状況を報告して、電子システムの連続訂正動作を確保する。
例えば、ISO26262「自動車機能安全」規格またはIEC61508「電気/電子/プログラム可能な電子安全関連システムの機能安全」規格などの規格の機能安全要件に合う電子システムの必要性によって動機付けられた、アプリケーションレベル自己テスト機能の要求が増えている。
MBISTの既存の使用
図2は、データを記憶するためのメモリ202、例えば埋め込み型メモリ202と、MBISTデバイス204と、を備える、例えばICとして実装されたシステム200を例示する図である。図2は、デジタルIC論理206であって、例えば、メモリ202、MBIST204、およびIC論理206を備えるSOCの一部分であることによって、典型的にはシステム200内にも含まれるデジタルIC論理206を更に例示するが、IC論理206はまた、代わりに、システム200の外部にあることもできる。
MBISTデバイス204は、以下に記載されるようにメモリ202をテストするように構成される。しかしながら、図2に例示されたメモリ202をテストすることに加えて、類似の手法でMBIST204は、システム200内に存在し得る他のメモリをテストするように構成され得、そのような他のメモリは、図2には示されない。
MBISTデバイス204とIC論理206の両方は、それらがメモリ202内のデータにアクセスする(例えば、データを読み取るか書き込む)ことができるように、メモリ202に通信可能に接続される。しかしながら、MBISTデバイス204は、典型的には上記したIC製造テスト段階102の一部分として、システム200のメモリ202がテストされているときに、メモリ202内のデータにアクセスする一方で、IC論理206は、システム200がいわゆる「ミッションモード」において動作しているときの通常(すなわち、非テスト)動作の間に、メモリ202内のデータにアクセスする。そのためには、IC論理206は、ミッションモードの間にメモリ202内に記憶されたデータにアクセスし得る(データを読み取り得る、書き込み得る等)システムおよびデバイスを備える。
ある実施形態において、スイッチマトリックス208は、MBISTデバイス204およびIC論理206をメモリ202に接続するように使用され得る。そのようなスイッチマトリックスは、任意の方法を含み得、MBIST204およびIC論理206のそれぞれをメモリ202に接続することができる任意のデバイスを備え得、それ故、限定されるものではないが、例えば、1つ以上のラッパー、カラー(collar)、またはマルチプレクサを含む、接続されたデバイスがデータを通信し得る。様々な実施形態において、スイッチマトリックスは、MBIST自体に含まれてもよいし、またはMBISTとは離れたおよび別個の要素として実装されてもよい。
システム200のミッションモード動作の間、IC論理206は、IC論理206とスイッチマトリックス208との間の(図2に経路「A」として示される)通信経路210と、スイッチマトリックス208とメモリ202との間の通信経路212と、を経由して、アドレス、制御、およびデータ信号を通信することによってメモリ202にアクセスし得る。システム200のメモリテストモード動作の間、MBISTデバイス204は、MBISTデバイス204とスイッチマトリックス208との間の(図2に経路「B」として示される)通信経路214を経由してアドレス、制御、およびデータ信号を通信することによってメモリ202にアクセスし得、次いで、再び、スイッチマトリックス208とメモリ202との間の通信経路212が使用される。
メモリ204がECCで保護されたメモリではない場合、通信経路210、212、および214は、nビット幅であるデータワード(すなわち、任意のデータ構造)を運ぶように構成され得る。これは、通信経路210、212、および214上に存在する文字「n」で図2に例示される。換言すれば、メモリ204がECCで保護されたメモリではない場合、通信経路210、212、および214は、典型的には同じ幅(nビット)のものであるように構成される。
IC製品は、典型的には、MBISTデバイス、例えば、MBISTデバイスがテストするように設計されるメモリを埋め込んでいるものと同じ半導体チップ上のデバイス204などを含むが、MBISTがテストされているメモリと同じIC上に含まれることは要求されない。そのようなアプローチは、IC製造業者が、製造されたメモリチップの正確な、効率的な、および経済的なテストを、それらが顧客に出荷される前に(すなわち、上記したIC製造テスト段階の間に)実行することを可能にする。そのようなメモリチップがIC製造業者から顧客に一旦出荷されると、顧客は、その中に含まれるMBISTデバイスを使用し得、例えば、上記したシステム製造および/またはアプリケーションレベルテスト段階の一部分として、埋め込み型メモリの更なるテストを実行する。
ECCで保護されたメモリを用いるMBISTの既存の使用の継続
信頼性の増大を要求するメモリシステムは、メモリに対するデータの読み取りおよび/または書き込みにおける誤りを検出して、場合によっては、訂正するために様々なECCアルゴリズムを適用できるECC論理を利用することが多く、それによって、誤り耐性をシステムに有利に追加する。そのようなECCで保護されたメモリは、多数の設定において非常に有利であり得るが、ECC論理の存在は、特に、システムおよびアプリケーションレベルテスト段階において、それらがメモリチップ上に現在含まれるような形態でMBISTデバイスの有用性を制限する。ECC保護を用いないメモリとECCで保護されたメモリをテストするためのMBISTデバイスの使用と関連付けられた違いは、図2と図3の比較によって説明され得る。
図3は、ECCで保護されたメモリをテストするためのMBISTを実装するシステム300を例示する図である。図3に示されるように、システム300は、メモリ302、MBISTデバイス304、デジタルIC論理306、およびスイッチマトリックス308を含み得、それらは、それぞれ、図2に例示されたメモリ202、MBISTデバイス204、IC論理206、およびスイッチマトリックス208に類似する。したがって、図2に関して要素202、204、206、および208のために提供された記載は、図3に示される要素302、304、306、および308に適用可能であり、したがって、簡潔さのために繰り返されない。
図2に示されるメモリ202とは異なり、システム300は、メモリ302に対してデータを読み取るおよび/もしくは書き込むIC論理306における誤りを検出するならびに/または訂正する(複数の)ECCアルゴリズムを適用するように構成されたECC論理310を含むので、メモリ302は、ECCで保護されたメモリである。ECC論理310の機能が、次に記載される。
ミッションモードでは、IC論理306が、メモリ302に対してnビットデータワードを書き込むおよび読み取るためのコマンドを発行する。IC論理306が、nビットデータワードをメモリ302に書き込むとき、ECC論理310は、IC論理306とECC論理310との間の通信経路312上で、IC論理306からnビットデータワードを受信し、nビットデータワードの上に連結される「p」パリティビットを符号化して、幅「n+p」のデータ値を結果としてもたらす(「p」における下付き文字「n」は、パリティビット幅「p」が、データワード幅「n」の関数であることを表わす)。記載された「p」ビットはまた、非パリティをベースとする誤り訂正方法、例えば、投票(voting)論理、冗長論理等にも適用することができ、追加メモリビットが、誤り訂正のために使用される。次いで、幅「n+p」のデータ値は、スイッチマトリックス308の経路「A」を通してメモリ302に物理的に書き込まれるものとなる(すなわち、幅「n+p」のデータ値は、まず、通信経路314を経由してECC論理310からスイッチマトリックス308に、次いで、通信経路316を経由してスイッチマトリックス308からメモリ302に通信される)。IC論理306が読み取りトランザクションを実行するとき、(n+p)ビットが(経路316および314を経由して)メモリ302からECC論理310に読み取られ、次いで、ECC論理310が、読み取り(n+p)ビットを幅nの論理データに変換し、次いで、その論理データが、経路312上でIC論理306に提供される。ECC論理310によって使用される特定のECCアルゴリズムに応じて、また、それは当分野で周知であるように、パリティビット「p」は、ECC論理310が、メモリ302から読み取られたデータワードにおける1つ以上のビット誤りを訂正すること、ならびに2つ以上のビット誤りを検出することを可能にし得る。
IC製造業者は、IC製造テスト段階の間にメモリ302の全てのビットセルを制御して観察する機能を要求する。ECCの誤り訂正特性のために、ECC論理310は、ECC論理がMBISTテスト経路にあった場合に、メモリ内の全ての物理ビットを制御して観察する機能とインターフェースを取ることになる。結果として、ECCで保護されたメモリを利用する既存のシステムにおいて、MBISTデバイス304が、ECC論理310がMBISTテスト経路に無いように、スイッチマトリックス308によってメモリ302に接続される。そのような構成は図3に示され、MBISTデバイス304が、通信経路318を経由してスイッチマトリックス308に接続されており、次いで、スイッチマトリックス308とメモリ302との間の経路316を経由してメモリ302に更に接続されており、ECC論理310が、MBISTデバイス304とメモリ302との間の経路から除外されている。そのような構成では、MBISTデバイスが、ECC符号化または復号化を用いずに物理データ幅「n+p」上で動作することによって、物理メモリ302の全てのビットセルにテストを実行することができる。
システム300におけるMBIST304は、メモリ302の全てのビットセルをテストすることによって、IC製造テスト段階102の間に要望通りかつ予想通りに動作することになるが、IC製造のこの早期のテスト段階の間に発見され得る誤りは、システムおよびアプリケーションレベルでそのような誤りがECC論理310によって訂正されることができたので、システム製造テスト段階110およびアプリケーションレベルテスト段階114に悪影響を及ぼさない。換言すれば、システム300のシステムおよびアプリケーションレベルテストに使用される場合、MBISTデバイス304は、ECC論理310によって潜在的に訂正される誤りであって、したがって、システムおよびアプリケーションレベルテストおよび通常動作の目的のために「誤り」とみなされない、誤りのための故障メッセージを生成する。
この問題を克服するために、ECCで訂正されるメモリのシステムおよびアプリケーションレベルテストを実行するための1つのアプローチは、埋め込み型メモリのECCで保護されたポート上の完全に独立した追加のMBISTデバイスを実装することを含む。しかしながら、そのようなアプローチは、チップ上に追加のダイ領域を要求するという欠点があり、それによって、製品費用を増大させる。別のアプローチは、顧客に、それらのシステムおよびアプリケーションレベルテスト段階の間にメモリ自己テストルーチンを実行するソフトウェアを実装することを要求する。そのようなアプローチは、MBISTデバイスを使用するハードウェア駆動型メモリ組み込み自己テストに比べて、開発時間のみならず長い実行時間を要求するという欠点がある。更に、ソフトウェア駆動型自己テストは、ソフトウェアによって直接的に制御され観察されることができない深く埋め込まれたメモリに可能ではないことがある。
したがって、ICテストフローの様々な段階におけるECCで保護されたメモリのテストのための改善された方法およびシステムが、当分野において必要とされる。
ECCで保護されたメモリを用いるMBISTの使用の提案
本開示の実施形態は、上記した問題のうちの少なくともいくつかを軽減するか取り除くことを可能にする。特に、本開示の実施形態は、IC製造テスト段階の間のメモリの直接テストのために使用されるMBISTデバイスであって、したがって、テストされるメモリを含有する半導体チップ上に既に存在するMBISTデバイスが、それらのECC保護論理と組み合わせて使用された同じメモリもまたテストすることができるように再構成され得るという洞察に基づく。そのような再構成されたMBISTデバイスは、次いで、ICテストフローのシステム製造およびアプリケーションレベル段階においてもまた使用され得、システム製造およびアプリケーションレベル段階においてテストするための追加の独立したMBISTデバイスを実装する必要性を無くすとともに、顧客が、これらの段階でメモリをテストするためにソフトウェアをベースとするテストルーチンを使用する必要性を減らすか無くす。そのためには、動作中、少なくとも2つのモードにおいて埋め込み型メモリをテストすることができる、少なくとも第1および第2のアクセスポートを備えるMBISTデバイスが提案される。第1のモードでは、デバイスが、第1の通信経路を経由してテストされる埋め込み型メモリに接続された第1のアクセスポートであって、第1の経路が、メモリと関連付けられた(すなわち、メモリのためのECC保護を提供するように構成された)ECC論理を除外する、第1のアクセスポートを使用するように構成される。第2のモードでは、デバイスが、第2の通信経路を経由して埋め込み型メモリに接続された第2のアクセスポートであって、第2の経路が、メモリと関連付けられたECC論理を含む、第2のアクセスポートを使用するように構成される。このように、同じMBISTデバイスが、IC製造段階テストとシステムまたはアプリケーション段階テストとの間で共有され得、製造テストは、(第1の動作モードにおいて)全ビットに直接的にアクセスし得るが、システム/アプリケーションレベルテストは、単一ビット誤りが(第2の動作モードにおいて)アプリケーションにおける故障メッセージをトリガしないように、ECC論理を考慮に入れる。そのようなデバイスの例となる例示が、図4に提供される。
図4は、本開示の一実施形態に係るECCで保護されたメモリ402のためのMBISTデバイス404を実装するシステム400を例示する図である。
メモリ402に対するECC保護が、ECC論理410によって提供される。そのためには、システム400がミッションモードにおいて動作するときに、(図4には示されないが、図6の例に示される)IC論理が、メモリ402に対してnビットデータワードを書き込むおよび読み取るためのコマンドを発行し得る。IC論理がnビットデータワードをメモリ402に書き込むときに、ECC論理410は、nビットデータワードをIC論理から受信し、nビットデータワードの上に連結される「p」パリティビットを符号化して、幅「n+p」のデータ値を結果としてもたらし、幅「n+p」のそのデータ値が、次いで、メモリ402に物理的に書き込まれるものとなる。IC論理が読み取りトランザクションを実行するとき、(n+p)ビットが、メモリ402からECC論理410に読み取られ、次いで、ECC論理410が、読み取り(n+p)ビットを幅nの論理データに変換して、その論理データが、次いで、IC論理に提供される。ECC論理410によって使用される特定のECCアルゴリズムに応じて、そのようなパリティビット「p」は、ECC論理410が、メモリ402からIC論理によって読み取られたデータワードにおける1つ以上のビット誤りを訂正すること、ならびに2つ以上のビット誤りを検出することを可能にし得る。
図4に示されるように、MBISTデバイス404は、少なくとも第1のアクセスポート420−1および第2のアクセスポート420−2を含む。第1および第2のアクセスポートは、データ、特に、メモリ402のテストにおいて使用されるデータを送受信するための任意の種類のポートを備え得、ならびに、例えば、MBISTをメモリに取り付ける任意の種類のラッパー、カラー等を含むことができる。
第1のアクセスポート420−1は、ECC論理410を横切らない第1の通信経路430−1を経由してメモリ402に通信可能に接続される。しかしながら、第2のアクセスポート420−2は、ECC論理410を横切る第2の通信経路430−2を経由してメモリ402に通信可能に接続される。図4に示されるように、第2の通信経路は、第2のアクセスポート420−2とECC論理410との間でデータを通信するための通信経路432と、ECC論理410とメモリ402との間の通信データのための通信経路434と、を備える。テストの間、デバイス404の第1の動作モードにおいて、デバイス404が、第1のアクセスポート420−1を使用することによって、および第1の経路430−1を経由して通信することによってメモリ402をテストするように構成され、一方で、第2の動作モードにおいて、デバイス404が、第2のアクセスポート420−2を使用することによって、および第2の経路430−2を経由して通信することによってメモリ402をテストするように構成される。
デバイス404のあらゆる動作モードにおけるテストは、デバイス404が、メモリ組み込み自己テスト、例えば、チェッカーボード(Checkerboard)およびマーチ(March)アルゴリズム、データ保持テスト、隣接パターン依存故障(Neighborhood Pattern Sensitive Fault)テスト等を実行することを含み得る。あらゆる種類の自己テストを実行するように構成された例えばデバイス404などのデバイスが、本開示の範囲内にある。
ある実施形態において、埋め込み型メモリ402のテストの間に、デバイス404は、第1の経路430−1を経由して第1のアクセスポート420−1と埋め込み型メモリ402との間でアドレス、制御、および/またはデータ信号を通信し、かつ第2の経路430−2を経由して第2のアクセスポート420−2と埋め込み型メモリ402との間でアドレス、制御、および/またはデータ信号を通信するように構成され得る。
システム400がメモリテストモードにおいて動作し、かつMBISTデバイス404が第2のモードにおいて動作するとき、MBISTデバイス404が、データワード上で動作するように構成され、そのデータワードに対してECC論理410が、ミッションモードの間にIC論理を用いて行われるやり方に類似してECC訂正アルゴリズムを適用する。すなわち、テストの一部分として、MBISTデバイス404がnビットデータワードを第2のアクセスポート420−2からメモリ402に書き込むときに、ECC論理410は、nビットデータワードを第2のアクセスポート420−2から受信し、nビットデータワードの上に連結される「p」パリティビットを符号化して、幅「n+p」のデータ値を結果としてもたらし、幅「n+p」のそのデータ値が、次いで、メモリ402に物理的に書き込まれるものとなる。テストの一部分として、MBISTデバイス404が読み取りトランザクションを実行するとき、(n+p)ビットが、メモリ402からECC論理410に読み取られ、次いで、ECC論理410が、読み取り(n+p)ビットを幅nの論理データに変換して、その論理データが、次いで、第2のアクセスポート420−2に提供される。それ故、MBISTデバイス404が第2のモードにおいて動作するとき、第2のアクセスポート420−2が、nビットのデータ構造(例えば、ワード)を通信するように構成される。
対照的に、システム400がメモリテストモードにおいて動作し、かつMBISTデバイス404が第1のモードにおいて動作するとき、MBISTデバイス404、特に第1のアクセスポート420−1が、n+pビットのデータ構造(すなわち、ECCアルゴリズムをそれに適用しないで、物理メモリに書き込まれるデータ)を通信するように構成される。
ある実施形態において、MBISTデバイス404は、デバイス404の動作モードを制御するための(すなわち、少なくとも第1のモードと第2のモードとの間で動作モードを切り換えるように構成される)コントローラ440を更に含み得る。コントローラ440は、様々な要因に基づいてデバイス404の動作モードを切り換えるように構成され得る。例えば、ある実施形態において、コントローラ440は、デバイス404が、第2の動作モードに入り、システムまたはアプリケーションレベルでメモリ402を自動的にテストするために、定期的にまたは所定時間に、あるいはいくつかの他の所定の手法で、メモリ402をテストすることを確保するように構成され得る。ある実施形態において、コントローラ440は、デバイス404が第2の動作モードに入り、テストするよう命令を受信することに応答してメモリ402をテストすることを確保するように構成され得る。そのような命令は、例えばコントローラ440を用いて含まれ得るユーザインターフェースを経由して提供される、例えばユーザ入力の形態でコントローラ440に提供され得るか、あるいはいくつかの更なるシステムまたはデバイスから、例えばセンサデバイスから提供され得、それ故、ECCで保護されたメモリ402のシステム/アプリケーションレベルテストをトリガする。
MBISTコントローラ(すなわち、本明細書に記載したMBISTデバイスのいずれかのコントローラ)、例えば、本明細書に記載したコントローラ440などの機能を実装するように構成され得るデータ処理システムの例が、図8に例示される。しかしながら、当業者は、本明細書に記載したようなMBISTコントローラの特徴のいずれかを実行するまたは備えるように構成されたあらゆるシステムが、本開示の範囲内にあることを認識するであろう。なおその上に、図4は、コントローラ440がMBISTデバイス404内に含まれることを例示するが、他の実施形態では、そのようなMBISTコントローラは、MBISTコントローラが本明細書に記載したようなテスト工程を制御し得る限り、例えば、MBISTデバイスと無線通信することによって、MBISTデバイスの外部に実装され得る。
ある実施形態において、MBISTデバイス404は、複数のECCで保護されたメモリをテストするように構成され得、各メモリが、図4の単一メモリ例について記載したようにテストされる。この状況は、本開示のある実施形態に係る、複数のECCで保護されたメモリについてMBISTデバイス504を実装するシステム500を例示する図を提供する図5に示される。図5は、3つのECCで保護されたメモリ502−X、502−Y、および502−Zを備える例を例示するが、任意の数のそのようなメモリを備えるシステムが、本開示の範囲内にある。メモリ502のそれぞれが、メモリと同じ添え字(X、Y、またはZ)を有する各ECC論理510と関連付けられる。通信経路が、各メモリ502−X、502−Y、および502−Zのそれぞれについて各添え字(X、Y、またはZ)を有する経路530−1、532、および534として示される。5xx要素として、場合によっては図5の異なるメモリを区別するための添え字を用いて図5に示される要素は、対応する4xx要素のような図4に示される要素に類似し、かつ、簡潔さのために、それらの記述はここでは繰り返されない。図5の描写を混乱させないために、各メモリのための第2の通信経路は図5に明示されないが、図4に記載した第2の通信経路に類似して、そのような経路は、各メモリの第2のアクセスポート520−2を各メモリに通信可能に接続して、対応するECC論理510を含むことになる。
デバイス504内で異なる添え字x、y、およびzを用いて図5に示したように、異なるメモリ502−X、502−Y、および502−Zに対応する第2のアクセスポート520−2が、異なる数のビット(すなわち、各メモリ502−X、502−Y、および502−Zとそれぞれ通信するためのx、y、ならびにzビット)のデータ構造を通信するように構成され得る。更に、異なる添え字p、p、およびpを用いて図5に示したように、異なるメモリ502−X、502−Y、および502−Zに対応するECC論理510が、異なる数のパリティビット(すなわち、メモリ502−X、502−Y、および502−Zに関してそれぞれp、p、およびpビット)を実装するように構成され得る。したがって、異なるメモリ502−X、502−Y、および502−Zに対応する第1のアクセスポート520−1が、異なる数のビット(すなわち、各メモリ502−X、502−Y、および502−Zとそれぞれ通信するためのx+p、y+p、およびz+pビット)のデータ構造を通信するように構成され得る。
図6は、本開示の別の実施形態に係るECCで保護されたメモリ602のためのMBISTデバイス604を実装するシステム600を例示する図である。図6に示されるように、システム600は、メモリ602、ECC論理610、ならびに第1のアクセスポート620−1および第2のアクセスポート620−2を備えるMBISTデバイス604を含み得、それらは、それぞれ、図4に例示されたメモリ402、ECC論理410、ならびに第1のアクセスポート420−1および第2のアクセスポート420−2を備えるMBISTデバイス404に類似する。実際には、図4と比較すると、図6は、単に、ECCで保護されたメモリ402を用いるMBISTデバイス404の1つの例となる実施態様の更なる詳細を提供する。したがって、図4に関して要素402、410、404、420−1、および420−1に提供された記載は、図4に示された要素602、610、604、620−1、および620−2に適用可能であり、したがって、簡潔さのためにここでは繰り返されない。
特に、図6は、どのようにデジタルIC論理606がメモリ602に接続され得るかを例示する。デジタルIC論理606の機能は、図3に示されるIC論理306について記載したものに類似し、したがって、その記載は、ここでは繰り返されない。
本明細書に記載した実施形態に係る通信を可能にするために、2つのスイッチマトリックス、すなわち、スイッチマトリックス608およびスイッチマトリックス650が、実装され得る。スイッチマトリックス608ならびに通信経路614、616、および618の機能は、図3に示されたスイッチマトリックス308ならびに通信経路314、316、および318について記載したものに類似し、したがって、その記載もまた、ここでは繰り返されない。
図3の例示とは異なり、図6は、通信経路652、654、614、および616を経由してMBISTデバイス604をメモリ602に接続するように、かつ、通信経路656、654、614、および616を経由してIC論理606をメモリ202に接続するように構成されたスイッチマトリックス650を含む。そのようなスイッチマトリックスは、任意の方法を含み得、接続されたデバイスがデータを通信し得るようにMBIST604およびIC論理606のそれぞれをメモリ602に接続することができる任意のデバイスを備え得、限定されるものではないが、例えば、1つ以上のラッパー、カラー、またはマルチプレクサを含む。様々な実施形態において、スイッチマトリックスが、MBIST自体に含まれてもよいし、またはMBISTとは離れておよび別個の要素として実装されてもよい。
システム600のミッションモード動作の間、IC論理606は、IC論理606とスイッチマトリックス650との間の(図6において経路「A´」として示される)通信経路656、スイッチマトリックス650およびECC論理610との間の通信経路654、ECC論理610とスイッチマトリックス608との間の(図3の経路Aに類似する、図6において経路「A」として示される)通信経路614、ならびにスイッチマトリックス608とメモリ602との間の通信経路616を経由して、アドレス、制御、およびデータ信号を通信することによって、メモリ602にアクセスし得る。
システム600のメモリテストモード動作の間、MBISTデバイス604は、MBISTデバイス602の動作モードに応じて、2つの手法のうちの1つにおいてメモリ602にアクセスし得る。第1のモードにおいて動作しているときに、MBISTデバイス604は、第1のアクセスポート620−1を使用してメモリ602にアクセスし、一方、第2のモードにおいて動作しているときに、MBISTデバイス604は、第2のアクセスポート620−2を使用してメモリ602にアクセスする。
第1のアクセスポート620−1は、ECC論理610を横切らない第1の通信経路を経由してメモリ602に通信可能に接続される。第1の通信経路は、第1のアクセスポート620−1とスイッチマトリックス608との間でデータを通信するための(経路「B」として図6に示される)通信経路618と、スイッチマトリックス608(経路B)とメモリ602との間でデータを通信するための通信経路616と、を備える。
第2のアクセスポート620−2は、ECC論理610を横切る第2の通信経路を経由してメモリ602に通信可能に接続される。図6に示されるように、第2の通信経路は、第2のアクセスポート620−2とスイッチマトリックス650(経路B´)との間でデータを通信するための通信経路652、スイッチマトリックス650(経路B´)とECC論理610との間でデータを通信するための通信経路654、ECC論理610とスイッチマトリックス608(経路A)との間でデータを通信するための通信経路614、およびスイッチマトリックス608(経路A)とメモリ602との間でデータを通信するための通信経路616を備える。
システム600がメモリテストモードにおいて動作し、かつMBISTデバイス604が第2のモードにおいて動作するときに、MBISTデバイス604が、データワード上で動作するように構成され、そのデータワードに対してECC論理610が、ミッションモードの間にIC論理を用いて行われるやり方に類似してECC訂正アルゴリズムを適用する。すなわち、テストの一部分として、MBISTデバイス604が、(経路B´を経由して)第2のアクセスポート620−2からメモリ602にnビットデータワードを書き込むときに、ECC論理610は、スイッチマトリックス650を経由して第2のアクセスポート620−2からnビットデータワードを受信し、nビットデータワードの上に連結される「p」パリティビットを符号化して、幅「n+p」のデータ値を結果としてもたらし、幅「n+p」のそのデータ値が、次いで、スイッチマトリックス608の経路Aを経由してメモリ602に物理的に書き込まれるものとなる。テストの一部分として、MBISTデバイス604が読み取りトランザクションを実行するときに、(n+p)ビットが、スイッチマトリックス608を経由してメモリ602からECC論理610に読み取られ、次いで、ECC論理610が、読み取り(n+p)ビットを幅nの論理データに変換し、次いで、その論理データが、(スイッチマトリックス650の経路B´を経由して)第2のアクセスポート620−2に提供される。それ故、MBISTデバイス604が第2のモードにおいて動作するときに、第2のアクセスポート620−2が、nビットのデータ構造(例えば、ワード)を通信するように構成される。
対照的に、システム600がメモリテストモードにおいて動作し、かつMBISTデバイス604が第1のモードにおいて動作するときに、MBISTデバイス604、特に第1のアクセスポート620−1が、スイッチマトリックス608の経路Bを経由して、n+pビットのデータ構造(すなわち、ECCアルゴリズムをそれに適用しないで、物理メモリに書き込まれるデータ)をメモリ602に通信するように構成される。
図7は、本開示の一実施形態に係るMBISTデバイスを制御するための方法ステップのフロー図700である。図7の方法ステップは、MBISTコントローラ(すなわち、MBISTデバイスのコントローラ)、例えば、MBISTデバイス604のコントローラ440またはMBISTデバイス504もしくは604の類似コントローラ(図5および6に示されないコントローラ)などによって使用され得る。方法は、任意選択的なステップ702で始まり得、そのステップで、MBISTコントローラは、MBISTデバイスのための動作モードの指示を受信し得る。そのような指示は、例えば、所望の動作モードを指示するユーザ入力を含み得る。ステップ704では、MBISTコントローラが、例えば、その動作モードにおいて使用されるMBISTデバイスのアクセスポートを作動させること(および、場合によっては、その動作モードにおいて使用されない(複数の)アクセスポートを非作動にさせること)によって、MBISTデバイスを所望の動作モードに設定し得る。方法は、次いで、ステップ706またはステップ708に進み得、ステップ706は、MBISTデバイスが、本明細書に記載したように第1のアクセスポート、したがって、第1の経路を経由して1つ以上の埋め込み型メモリをテストすることを確保するMBISTコントローラを例示し、ステップ708は、MBISTデバイスが、本明細書に記載したように第2のアクセスポート、したがって、第2の経路を経由して1つ以上の埋め込み型メモリをテストすることを確保するMBISTコントローラを例示する。
本開示の実施形態は、IC製造テスト段階において使用されるMBISTデバイスが、特別なECCアクセスポートをMBISTデバイスに提供することによって、システムおよびアプリケーションレベル自己テストにアクセスできるようにさせることもまた可能にし、それ故、本明細書に記載したようなECC論理の誤り耐性特徴を利用する自己テストを可能にする。本開示の実施形態に係るMBISTデバイスを備えるシステムの1つの利点は、ほとんどダイ領域を追加せずに、顧客によって実行され得るシステムまたはアプリケーションレベルテスト(本明細書に記載した第2の動作モード)のために製品の製造テスト(本明細書に記載した第1の動作モード)に既に必要とされたMBIST論理の再使用を含む。他の利点は、顧客が、機能安全についての産業要求(例えばIEC61508規格など)または立証済みのハードウェア駆動型自己テストを用いる他の自己テスト要求を満たすことを可能にすることを含み、それによって、それらのソフトウェア開発サイクルを削減するか短縮し、かつ、ECC論理が顧客によるメモリ自己テストの間に含まれることを確保することによって、誤ったリターンを防ぐ。
図8は、本開示の一実施形態に係る例となるデータ処理システム800を例示するブロック図を描写する。そのようなデータ処理システムは、本明細書に記載したMBISTコントローラとして機能するように構成され得る。
図8に示されるように、データ処理システム800は、システムバス806を通してメモリ要素804に結合された少なくとも1つのプロセッサ802を含み得る。そのように、データ処理システムは、メモリ要素804内にプログラムコードを記憶し得る。更に、プロセッサ802は、システムバス806を経由してメモリ要素804からアクセスされるプログラムコードを実行し得る。一態様では、データ処理システムは、プログラムコードを記憶するおよび/または実行するのに適したコンピュータとして実装され得る。しかしながら、データ処理システム800は、この明細書内に記載した機能を実行することができるプロセッサおよびメモリを含む任意のシステムの形態で実装され得ることを認識されたい。
メモリ要素804は、1つ以上の物理メモリデバイス、例えば、ローカルメモリ808および1つ以上の大容量記憶装置810などを含み得る。ローカルメモリは、一般に、プログラムコードの実際の実行の間に使用されるランダムアクセスメモリまたは他の(複数の)非永続的メモリデバイスのことを言い得る。大容量記憶装置は、ハードドライブまたは他の永続的データ記憶装置として実装され得る。処理システム800はまた、プログラムコードが実行の間に大容量記憶装置810から取り出される必要がある回数を減らすために、少なくともいくつかのプログラムコードの一時記憶を提供する1つ以上のキャッシュメモリ(図示されない)を含んでもよい。
入力デバイス812および出力デバイス814として描写された入出力(I/O)デバイスは、任意選択的に、データ処理システムに結合され得る。入力デバイスの例は、限定されるものではないが、キーボード、ポインティングデバイス、例えばマウスなど、または同様のものを含み得る。出力デバイスの例は、限定されるものではないが、モニタもしくはディスプレイ、スピーカ、または同様のものを含み得る。入力および/または出力デバイスは、直接的にまたは間にあるI/Oコントローラを通して、データ処理システムに結合され得る。
ある実施形態において、入出力デバイスは、(入力デバイス812および出力デバイス814を取り囲む破線で図8に例示される)組み合わされた入出力デバイスとして実装され得る。そのような組み合わされたデバイスの例は、「タッチスクリーンディスプレイ」または単に「タッチスクリーン」と称されることもある、タッチセンサー式ディスプレイである。そのような実施形態では、デバイスへの入力は、タッチスクリーンディスプレイ上のまたはタッチスクリーンディスプレイの近くの物理的対象、例えばスタイラスまたはユーザの指などの動きによってもたらされ得る。
ネットワークアダプタ816はまた、任意選択的に、データ処理システムに結合され得、それが、間にある私的網または公衆網を通して、他のシステム、コンピュータシステム、遠隔ネットワークデバイス、および/または遠隔記憶装置に結合されることになることを可能にする。ネットワークアダプタは、そのシステム、デバイスおよび/またはネットワークによってデータ処理システム800に送信されるデータを受信するためのデータ受信機と、データ処理システム800からそのシステム、デバイスおよび/またはネットワークにデータを送信するためのデータ送信機と、を備え得る。モデム、ケーブルモデム、およびイーサネット(登録商標)カードが、データ処理システム800で使用され得る異なる種類のネットワークアダプタの例である。
図8に描写されるように、メモリ要素804は、アプリケーション818を記憶し得る。様々な実施形態において、アプリケーション818は、ローカルメモリ808、1つ以上の大容量記憶装置810内に、またはローカルメモリおよび大容量記憶装置から離れて記憶され得る。データ処理システム800は、アプリケーション818の実行を容易にし得るオペレーティングシステム(図8に示されない)を更に実行し得ることを認識されたい。実行可能なプログラムコードの形態で実装されるアプリケーション818が、データ処理システム800によって、例えばプロセッサ802によって実行され得る。アプリケーションの実行に応答して、データ処理システム800は、本明細書に記載した1つ以上の動作または方法ステップを行うように構成され得る。
変形および実施態様
本開示の実施形態は、図4〜8に示されるような例となる実施態様を参照して上記したが、当業者は、上記した様々な教示が多様な他の実施態様に適用可能であることを理解するであろう。特に、本開示に提供されたいくつかの記載は、「埋め込み型メモリ」のことを言うが、これらの記載は、埋め込み型ではないメモリに同様に適用可能である。
一定の文脈において、本明細書に記述した特徴が、自動車システム、安全性が不可欠な産業用途、医療システム、科学計測、無線および有線通信、レーダー、産業プロセス制御、音響および映像機器、電流検出、(高精密であり得る)計測、ならびに他のデジタル処理をベースとするシステムに適用可能であり得る。
その上、上述した一定の実施形態は、医療画像、患者監視、医療計測、および在宅医療のためのデジタル信号処理技術に提供され得る。これは、肺のモニタ、加速度計、心拍数モニタ、ペースメーカー等を含み得る。他の用途は、安全システムのための自動車用技術(例えば、あらゆる種類の安定性制御システム、運転者支援システム、ブレーキングシステム、娯楽報道番組、および内部用途)を含み得る。
更に他のシナリオ例では、本開示の教示が、生産性、エネルギー効率、および信頼性を推進するのに役立つプロセス制御システムを含む産業市場に適用可能であり得る。消費者向け用途では、上述した信号処理回路の教示が、(例えば、デジタルスチルカメラ、カムコーダ等のための)画像処理、自動焦点合わせ、および画像安定化のために使用され得る。他の消費者向け用途は、ホームシアターシステム、DVDレコーダ、ならびに高精細テレビのための音響および映像プロセッサを含み得る。
上記実施形態の記述において、システムの構成要素、例えば、クロック、マルチプレクサ、バッファ、および/または他の構成要素などが、特定の回路の必要性に適応するために容易に取り替えられ得、置換され得、またはその他には修正され得る。その上、補足的な電子デバイス、ハードウェア、ソフトウェア等の使用が、本開示の教示を実装するために同様に実行可能な選択肢をもたらすことを留意されたい。
本明細書に提案したようなMBISTデバイスを使用するECCで保護されたメモリのテストのための様々なシステムの部分は、本明細書に記載した機能を実行する電子回路を含むことができる。いくつかの場合において、システムの1つ以上の部分が、本明細書に記載した機能を実行するために特別に構成されたプロセッサによって提供され得る。例えば、プロセッサは、1つ以上の特定用途向け構成要素を含んでもよいし、または、本明細書に記載した機能を実行するように構成されたプログラム可能な論理ゲートを含んでもよい。回路は、アナログ領域、デジタル領域において、または混成信号領域において動作することができる。いくつかの事例において、プロセッサは、非一時的なコンピュータ可読記憶媒体上に記憶された1つ以上の命令を実行することによって、本明細書に記載した機能を実行するように構成されてもよい。
一実施形態例では、図4〜6および8の任意の数の電気回路が、関連付けられた電子デバイスの基板上に実装され得る。基板は、電子デバイスの内部電子システムの様々な構成要素を保持することができると共に、更に、他の周辺装置用のコネクタを提供することができる汎用回路基板であり得る。より具体的には、基板は、電気接続を提供することができ、その接続によって、システムの他の構成要素が、電気的に通信することができる。(デジタル信号プロセッサ、マイクロプロセッサ、支援チップセット等を含む)任意適切なプロセッサ、コンピュータ可読非一時的メモリ要素等が、特定の構成ニーズ、処理要求、コンピュータ設計等に基づいて基板に適切に結合され得る。他の構成要素、例えば、外部記憶装置、追加センサ、音響/映像表示のためのコントローラ、および周辺デバイスなどが、プラグイン式カードとして、ケーブルを経由して基板に取り付けられてもよいし、または基板自体に集積されてもよい。様々な実施形態において、本明細書に記載した機能が、これらの機能を支援する構造で配置された1つ以上の構成可能な(例えば、プログラム可能な)要素内で動くソフトウェアまたはファームウェアとしてエミュレーション形態で実装され得る。エミュレーションを提供するソフトウェアまたはファームウェアは、プロセッサがそれらの機能を実行することを可能にする命令を備える非一時的なコンピュータ可読記憶媒体上に提供され得る。
別の実施形態例において、図4〜6および8の電気回路は、独立型モジュール(例えば、特定の適用または機能を実行するように構成された関連付けられた構成要素および回路を有するデバイス)として実装され得、あるいは電子デバイスの特定用途向けハードウェアにプラグイン式モジュールとして実装され得る。本開示の特定の実施形態が、部分的または全体的にシステムオンチップ(SOC)パッケージに容易に含まれ得ることに留意する。SOCは、コンピュータまたは他の電子システムの構成要素を単一チップに集積するICを表わす。それは、デジタル、アナログ、混成信号、および多くの場合、無線周波数機能を含み得、それらの全てが、単一チップ基板上に提供され得る。他の実施形態は、マルチチップモジュール(MCM)を含み得、複数の別個のICが、単一電子パッケージ内に位置し、かつ電子パッケージを通して互いと密に相互作用するように構成される。様々な他の実施形態では、本明細書に提案されるようなMBISTデバイスを使用するECCで保護されたメモリをテストする機能が、特定用途向け集積回路(ASIC)、フィールドプログラム可能なゲートアレイ(FPGA)、および他の半導体チップにおいて1つ以上のシリコンコア部(silicon core)に実装され得る。
本明細書に概説された仕様、寸法、および関係(例えば、プロセッサの数、論理動作等)の全てが、単に例示および教示の目的のためのみに提供されていることに留意することもまた不可欠である。そのような情報は、本開示の趣旨、または添付の特許請求の範囲から逸脱すること無く、大幅に変えられ得る。明細書は、1つの非限定例のみに適用し、したがって、それらはそのように解釈されるべきである。上述の記載では、実施形態例が、特定のプロセッサおよび/または構成要素の配置を参照して記載された。様々な修正および変更が、添付の特許請求の範囲から逸脱すること無く、そのような実施形態になされてもよい。したがって、記載および図面は、限定的な意味ではなくて例示的な意味に見なされることになる。
本明細書に提供された多数の例で、相互作用が2つ、3つ、4つ、またはより多くの電気構成要素に関して記載され得ることに留意する。しかしながら、これは、明瞭さおよび例示の目的のみのために行った。システムが任意適切な手法で統合され得ることを認識されたい。類似の設計代替案に従って、図4〜8の例示された構成要素、モジュール、および要素のいずれもが、様々な可能な構成に組み合わされてもよく、それらの全てが、この明細書の広い範囲内に明らかにある。一定の場合では、限定された数の電気要素のみを参照することによって、所与の組の流れの機能のうちの1つ以上を記載することがより容易であろう。図4〜6および8の電気回路ならびにそれらの教示が、容易に拡張可能であり、多数の構成要素、ならびにより複雑で精緻な配置および構成に適合できることを認識されたい。したがって、提供された例が、範囲を限定するべきではないし、または無数の他のアーキテクチャに潜在的に適用されるような電気回路の広範な教示を妨げるべきではない。
この明細書において、「一実施形態」、「実施形態例」、「ある実施形態」、「別の実施形態」、「いくつかの実施形態」、「様々な実施形態」、「他の実施形態」、「代替の実施形態」、および同様のものに含まれる様々な特徴(例えば、要素、構造、モジュール、構成要素、ステップ、動作、特性等)に対する参照は、任意のそのような特徴が、本開示の1つ以上の実施形態に含まれるものの、同じ実施形態に組み合わされる可能性があるまたは同じ実施形態に必ずしも組み合わされない可能性があることを意味するように意図されることに留意する。
本明細書に提案されるようなMBISTデバイスを使用するECCで保護されたメモリをテストすることに関する機能が、図4〜6および8に例示されたシステムによってまたはそのシステム内で実行され得る可能な機能のうちのいくつかのみを例示することに留意するのもまた重要である。これらの動作のうちのいくつかが、適切な場合には取り除かれ得るか除去され得、またはこれらの動作は、本開示の範囲から逸脱すること無く大幅に修正され得るか変更され得る。加えて、これらの動作のタイミングは、大幅に変えられ得る。前述の動作上の流れは、例示および記述の目的のために提供された。十分な柔軟性が、任意適切な配置、順序、構成、およびタイミング機構が本開示の教示から逸脱すること無く提供され得るという点において、本明細書に記載した実施形態によってもたらされる。
多数の他の変更、置換、変形、変化、および修正が、当業者に把握され得、本開示が、添付の特許請求の範囲内にあるような全てのそのような変更、置換、変形、変化、および修正を包含することが意図される。本明細書に添付された特許請求の範囲を解釈する際に、米国特許商標庁(USPTO)および、更に、この出願に関して発行されたあらゆる特許のあらゆる読み手を支援するために、出願人は、出願人が(a)文言「〜ための手段」または「〜ためのステップ」が特定の特許請求の範囲において具体的に使用されない限り、それがその出願日に存在しているとして添付の特許請求の範囲のいずれも35U.S.C.(米国特許法)第112条第6段落を行使することを意図せず、ならびに(b)明細書におけるあらゆる記述によって、さもなければ添付の特許請求の範囲に反映されないこの開示を限定することを決して意図しないことに留意するよう望む。
上記した装置の全ての任意選択的な特徴がまた、本明細書に記載した方法またはプロセスに関して実装され得、例における詳細が、1つ以上の実施形態のどこにでも使用され得ることに留意する。

Claims (20)

  1. メモリと、
    1つ以上の誤り訂正符号(ECC)アルゴリズムを適用することにより前記メモリに対するデータの読み取りおよび/もしくは書き込みにおける誤りを訂正するまたは検出するように構成されることによって前記メモリと関連付けられた誤り訂正符号(ECC)論理と、
    前記メモリのメモリ自己テスト(MBIST)のためのデバイスと、を備えるシステムであって、前記デバイスが、
    第1の経路を経由して前記メモリに通信可能に接続された第1のアクセスポートであって、前記第1の経路が、前記メモリと関連付けられた前記ECC論理を除外する、第1のアクセスポートと、
    第2の経路を経由して前記メモリに通信可能に接続された第2のアクセスポートであって、前記第2の経路が、前記メモリと関連付けられた前記ECC論理を含む、第2のアクセスポートと、を備え、
    前記デバイスが、
    前記デバイスの第1の動作モードにおいて、前記第1の経路を経由して前記メモリをテストし、かつ
    前記デバイスの第2の動作モードにおいて、前記第2の経路を経由して前記メモリをテストするように構成される、システム。
  2. 前記デバイスの前記第1のアクセスポートが、n+pビット幅データのデータ構造を通信するように構成され、
    前記デバイスの前記第2のアクセスポートが、nビット幅データのデータ構造を通信するように構成され、
    nビット幅データが、前記メモリに記憶されるデータ符号化される一部であり、pビット幅データが、前記メモリと関連付けられた前記ECC論理によって、前記nビット幅データに追加される1つ以上のパリティビットである、請求項1に記載のシステム。
  3. 少なくとも前記第1の動作モードと前記第2の動作モードとの間で前記デバイスの動作モードを切り換えるように構成されたコントローラを更に備える、請求項1に記載のシステム。
  4. 前記コントローラが、前記デバイスの所望の動作モードを示すユーザ入力に従って、前記デバイスの前記動作モードを切り換えるように構成される、請求項3に記載のシステム。
  5. 前記デバイスが、
    前記第1の経路を経由して前記第1のアクセスポートと前記メモリとの間で第1のアドレス、制御、および/またはデータ信号を通信し、かつ
    前記第2の経路を経由して前記第2のアクセスポートと前記メモリとの間で第2のアドレス、制御、および/またはデータ信号を通信するように構成される、請求項1に記載のシステム。
  6. 前記システムが、追加メモリと、1つ以上のECCアルゴリズムを適用することにより前記追加メモリに対するデータの読み取りおよび/もしくは書き込みにおける誤りを訂正するまたは検出するように構成されることによって前記追加メモリと関連付けられたECC論理と、を更に備え、
    前記デバイスが、
    第3の経路を経由して前記追加メモリに通信可能に接続された第3のアクセスポートであって、前記第3の経路が、前記追加メモリと関連付けられた前記ECC論理を除外する、第3のアクセスポートと、
    第4の経路を経由して前記追加メモリに通信可能に接続された第4のアクセスポートであって、前記第4の経路が、前記追加メモリと関連付けられた前記ECC論理を含む、第4のアクセスポートと、を更に備え、
    前記デバイスが、
    前記デバイスの第3の動作モードにおいて、前記第3の経路を経由して前記追加メモリをテストし、かつ
    前記デバイスの第4の動作モードにおいて、前記第4の経路を経由して前記追加メモリをテストするように更に構成される、請求項1に記載のシステム。
  7. 前記システムが、特定用途向け集積回路(ASIC)、プログラム可能なゲートアレイ(PGA)、マイクロプロセッサ、マイクロコントローラ、または任意の他の種類のデジタルプロセッサに実装される、請求項1に記載のシステム。
  8. 前記システムの少なくとも一部分が、プログラム可能なハードウェアに実装される、請求項1に記載のシステム。
  9. メモリのメモリ自己テストのためのデバイスであって、
    前記デバイスの第1の動作モードにおいて、第1のアクセスポートと前記メモリとの間の第1の経路を経由して前記メモリをテストするための前記第1のアクセスポートであって、前記第1の経路が、前記メモリと関連付けられた誤り訂正符号(ECC)論理を除外する、第1のアクセスポートと、
    前記デバイスの第2の動作モードにおいて、第2のアクセスポートと前記メモリとの間の第2の経路を経由して前記メモリをテストするための前記第2のアクセスポートであって、前記第2の経路が、前記メモリと関連付けられた前記ECC論理を含む、第2のアクセスポートと、を備える、デバイス。
  10. 前記第1のアクセスポートが、n+pビット幅データのデータ構造を通信するように構成され、
    前記第2のアクセスポートが、nビット幅データのデータ構造を通信するように構成され、
    nビット幅データが、前記メモリに記憶されるデータ符号化される一部であり、pビット幅データが、前記メモリと関連付けられた前記ECC論理によって前記nビット幅データに追加される1つ以上のパリティビットである、請求項9に記載のデバイス。
  11. 少なくとも前記第1の動作モードと前記第2の動作モードとの間で前記デバイスの動作モードを切り換えるように構成されたコントローラを更に備える、請求項9に記載のデバイス。
  12. 前記コントローラが、前記デバイスの所望の動作モードを示すユーザ入力に従って、前記デバイスの前記動作モードを切り換えるように構成される、請求項11に記載のデバイス。
  13. 前記デバイスが、
    前記第1の経路を経由して前記第1のアクセスポートと前記メモリとの間で第1のアドレス、制御、および/またはデータ信号を通信し、かつ
    前記第2の経路を経由して前記第2のアクセスポートと前記メモリとの間で第2のアドレス、制御、および/またはデータ信号を通信するように構成される、請求項9に記載のデバイス。
  14. 前記デバイスの第3の動作モードにおいて、第3のアクセスポートと追加メモリとの間の第3の経路を経由して前記追加メモリをテストするための前記第3のアクセスポートであって、前記第3の経路が、前記追加メモリと関連付けられたECC論理を除外する、第3のアクセスポートと、
    前記デバイスの第4の動作モードにおいて、第4のアクセスポートと前記追加メモリとの間の第4の経路を経由して前記追加メモリをテストするための前記第4のアクセスポートであって、前記第4の経路が、前記追加メモリと関連付けられた前記ECC論理を含む、第4のアクセスポートと、を更に備える、請求項9に記載のデバイス。
  15. 第1のアクセスポートおよび第2のアクセスポートを備えるデバイスを使用するメモリのメモリ自己テストのための方法であって、
    前記デバイスの第1の動作モードにおいて、前記第1のアクセスポートと前記メモリとの間の第1の経路であって、前記メモリと関連付けられた誤り訂正符号(ECC)論理を除外する、第1の経路を経由して前記メモリをテストすることと、
    前記デバイスの第2の動作モードにおいて、前記第2のアクセスポートと前記メモリとの間の第2の経路であって、前記メモリと関連付けられた前記ECC論理を含む、第2の経路を経由して前記メモリをテストすることと、を含む、方法。
  16. 前記デバイスの前記第1の動作モードでの前記テストが、前記デバイスの前記第1のアクセスポートを経由してn+pビット幅データのデータ構造を通信することを含み、
    前記デバイスの前記第2の動作モードでの前記テストが、前記デバイスの前記第2のアクセスポートを経由してnビット幅データのデータ構造を通信することを含み、
    nビット幅データが、前記メモリに記憶されるデータ符号化される一部であり、pビット幅データが、前記メモリと関連付けられた前記ECC論理によって前記nビット幅データに追加される1つ以上のパリティビットである、請求項15に記載の方法。
  17. 少なくとも前記第1の動作モードと前記第2の動作モードとの間で前記デバイスの動作モードを切り換えることを更に含む、請求項15に記載の方法。
  18. 前記切り換えが、前記デバイスの所望の動作モードを示すユーザ入力に従って、前記デバイスの前記動作モードを切り換えることを含む、請求項17に記載の方法。
  19. 前記デバイスの前記第1の動作モードでの前記テストが、前記第1の経路を経由して前記第1のアクセスポートと前記メモリとの間で第1のアドレス、制御、および/またはデータ信号を通信することを含み、
    前記デバイスの前記第2の動作モードでの前記テストが、前記第2の経路を経由して前記第2のアクセスポートと前記メモリとの間で第2のアドレス、制御、および/またはデータ信号を通信することを含む、請求項15に記載の方法。
  20. 記デバイスの第3の動作モードにおいて、前記デバイスの第3のアクセスポートと追加メモリとの間の第3の経路を経由して追加メモリをテストし、前記第3の経路は前記追加メモリと関連付けられたECC論理を除外することと、かつ
    前記デバイスの第4の動作モードにおいて、前記デバイスの第4のアクセスポートと前記追加メモリとの間の第4の経路を経由して前記追加メモリをテストするように更に構成され、前記第4の経路は前記追加メモリと関連付けられたECC論理を含むこととをさらに含む、請求項15に記載の方法。
JP2016048397A 2015-03-13 2016-03-11 Eccで保護されたメモリを用いる使用のためのmbistデバイス Active JP6139727B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/656,966 US9583216B2 (en) 2015-03-13 2015-03-13 MBIST device for use with ECC-protected memories
US14/656,966 2015-03-13

Publications (2)

Publication Number Publication Date
JP2016170787A JP2016170787A (ja) 2016-09-23
JP6139727B2 true JP6139727B2 (ja) 2017-05-31

Family

ID=56800794

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016048397A Active JP6139727B2 (ja) 2015-03-13 2016-03-11 Eccで保護されたメモリを用いる使用のためのmbistデバイス

Country Status (5)

Country Link
US (1) US9583216B2 (ja)
JP (1) JP6139727B2 (ja)
CN (1) CN105976870B (ja)
DE (1) DE102016103867A1 (ja)
TW (1) TWI607451B (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9865362B1 (en) * 2016-02-09 2018-01-09 Cadence Design Systems, Inc. Method and apparatus for testing error correction code (ECC) logic and physical memory onboard a manufactured integrated circuit (IC)
US9984766B1 (en) * 2017-03-23 2018-05-29 Arm Limited Memory protection circuitry testing and memory scrubbing using memory built-in self-test
US11003153B2 (en) * 2017-11-17 2021-05-11 Intel Corporation Safety operation configuration for computer assisted vehicle
US11315654B2 (en) * 2018-10-03 2022-04-26 Arm Limited Memory testing techniques
CN111025132B (zh) * 2018-10-09 2022-02-15 瑞昱半导体股份有限公司 ***芯片、以及其内建自我测试电路与自我测试方法
KR102131230B1 (ko) * 2018-11-26 2020-07-08 현대오트론 주식회사 파워트레인 제어기의 램 에러 감지 로직의 자가진단 방법 및 장치
US10950325B2 (en) 2019-04-04 2021-03-16 Marvell Asia Pte., Ltd. Memory built-in self test error correcting code (MBIST ECC) for low voltage memories
US11557365B2 (en) 2019-08-16 2023-01-17 Nxp B.V. Combined ECC and transparent memory test for memory fault detection
CN113204446B (zh) 2020-02-03 2022-09-23 瑞昱半导体股份有限公司 寄存器资料检查装置与方法
CN115083507B (zh) * 2022-08-18 2022-11-01 中国电子科技集团公司第五十八研究所 一种对存储器ecc校验位存储阵列的测试方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5502732A (en) * 1993-09-20 1996-03-26 International Business Machines Corporation Method for testing ECC logic
US7308621B2 (en) 2002-04-30 2007-12-11 International Business Machines Corporation Testing of ECC memories
JP3930446B2 (ja) * 2003-03-13 2007-06-13 株式会社東芝 半導体装置
DE102004012279B3 (de) 2004-03-12 2005-06-09 Infineon Technologies Ag Verfahren und Vorrichtung zum Speicherselbsttest von eingebetteten Speichern in Halbleiterchips
JP4237109B2 (ja) * 2004-06-18 2009-03-11 エルピーダメモリ株式会社 半導体記憶装置及びリフレッシュ周期制御方法
US7426672B2 (en) * 2005-04-28 2008-09-16 International Business Machines Corporation Method for implementing processor bus speculative data completion
US7571357B2 (en) * 2006-08-22 2009-08-04 International Business Machines Corporation Memory wrap test mode using functional read/write buffers
US7818638B2 (en) 2007-06-15 2010-10-19 Micron Technology, Inc. Systems and devices including memory with built-in self test and methods of making and using the same
US8281219B2 (en) * 2007-08-16 2012-10-02 Invensas Corporation Error correction code (ECC) circuit test mode
JP2010152939A (ja) * 2008-12-23 2010-07-08 Renesas Electronics Corp 半導体装置とテスト方法
US9037928B2 (en) 2012-01-01 2015-05-19 Mosys, Inc. Memory device with background built-in self-testing and background built-in self-repair
US8438344B2 (en) * 2010-03-12 2013-05-07 Texas Instruments Incorporated Low overhead and timing improved architecture for performing error checking and correction for memories and buses in system-on-chips, and other circuits, systems and processes
US8484543B2 (en) * 2011-08-08 2013-07-09 International Business Machines Corporation Fusebay controller structure, system, and method
CN104412327B (zh) * 2013-01-02 2019-02-12 默思股份有限公司 内建自测试以及修复装置及方法

Also Published As

Publication number Publication date
CN105976870A (zh) 2016-09-28
CN105976870B (zh) 2019-07-09
JP2016170787A (ja) 2016-09-23
US9583216B2 (en) 2017-02-28
US20160268007A1 (en) 2016-09-15
TW201635306A (zh) 2016-10-01
DE102016103867A1 (de) 2016-09-15
TWI607451B (zh) 2017-12-01

Similar Documents

Publication Publication Date Title
JP6139727B2 (ja) Eccで保護されたメモリを用いる使用のためのmbistデバイス
KR101714630B1 (ko) 컴퓨터 메모리 테스트 구조
US10606696B2 (en) Internally-generated data storage in spare memory locations
WO2016160275A1 (en) Dynamic application of ecc based on error type
JP7387725B2 (ja) アドレス障害を検出するためのシステム、方法、及び装置
US7607055B2 (en) Semiconductor memory device and method of testing the same
US11507718B1 (en) Chip verification system and verification method therefor
KR20160068369A (ko) 패리티 체크 회로 및 이를 포함하는 메모리 장치
US10790038B2 (en) Semiconductor apparatus and test system including the semiconductor apparatus
KR20160143940A (ko) 저장 장치 및 그것을 내장한 메인 보드 및 그것의 자가 진단 방법
TW201135451A (en) Programmable test engine (PCDTE) for emerging memory technologies
KR20170008546A (ko) 난수 발생 회로 및 이를 이용한 반도체 시스템
US9595350B2 (en) Hardware-based memory initialization
US9299403B2 (en) Semiconductor devices and semiconductor systems including the same
JP6673021B2 (ja) メモリおよび情報処理装置
TWI503827B (zh) 儲存晶片資料及/或保全資料的系統晶片以及處理裝置之晶片資料及/或保全資料的方法
JP6062795B2 (ja) 半導体装置
CN106201336B (zh) 具有回写缓存器的设备及其相关方法
US7259591B1 (en) Multi-bit configuration pins
CN108604460B (zh) 使用多个一次可编程位控制对资源的访问的集成电路设备
US20230298640A1 (en) Systems and methods for resolving data (dq) line swapping configurations in double data rate (ddr) memories
TWI553648B (zh) 具自我驗證功能的積體電路、其驗證方法及產生自我測試特徵值調整碼的方法
CN115966239A (zh) Dram总线故障检测方法、装置、存储介质及程序产品
TWI518522B (zh) 應用於x86系統之訊號讀取之控制與切換模組
US9638754B2 (en) Semiconductor apparatus

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170314

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170404

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170427

R150 Certificate of patent or registration of utility model

Ref document number: 6139727

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250