(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022123052
(43)【公開日】2022-08-23
(54)【発明の名称】欠陥検出を備えるエラー補正ハードウェア
(51)【国際特許分類】
G06F 11/10 20060101AFI20220816BHJP
【FI】
G06F11/10 648
【審査請求】有
【請求項の数】14
【出願形態】OL
(21)【出願番号】P 2022096954
(22)【出願日】2022-06-16
(62)【分割の表示】P 2019511460の分割
【原出願日】2017-08-22
(31)【優先権主張番号】15/244,739
(32)【優先日】2016-08-23
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】507107291
【氏名又は名称】テキサス インスツルメンツ インコーポレイテッド
(74)【代理人】
【識別番号】230129078
【弁護士】
【氏名又は名称】佐藤 仁
(72)【発明者】
【氏名】サケット ジャラン
(72)【発明者】
【氏名】インドゥ プラサパン
(72)【発明者】
【氏名】アブヒシェック ガナパティ カルキサヴァル
(57)【要約】 (修正有)
【課題】ロックステップECC回路ハードウェアのECCロジック要件の低減と半導体チップ面積の節約。
【解決手段】ECCメモリ回路400は、書き込みGEN ECCロジック115b及びメモリ回路130のECC出力に結合されるチェックECCブロック120bを含む。第1のMUX115aが、書き込みデータを受け取り、書き込みGEN ECCロジックへの入力と直列であり、第2のMUX120eが読み出しGEN ECCロジックの入力と直列にメモリ回路130から読み出しデータを受け取る。クロスカップリングコネクタ150、150’が、メモリ回路からの読み出しデータを、第1のMUXの第2の入力に結合するか又は書き込みデータを第2のMUXの第2の入力に結合する。ECCビットコンパレータ135が書き込みGEN ECCロジック120b
1の出力を読み出しGEN ECCロジック出力と比較する。
【選択図】
図4
【特許請求の範囲】
【請求項1】
単一ポートメモリ回路のためのエラー補正コード(ECC)ハードウェアであって、
書き込みデータから第1のECCビットを生成するための及び前記第1のECCビット及び前記書き込みデータを前記メモリ回路に書き込むための、書き込み生成(Gen)ECCロジックを含む書き込み経路回路要素、
前記メモリ回路のECC出力に結合するための入力を有するXOR回路に結合される読み出しGen ECCロジックを含む前記メモリ回路からの読み出しデータを結合するためのチェックECCブロックを含む読み出し経路回路要素であって、前記XOR回路の出力が、単一ビットエラー補正(SEC)ブロックに結合されるシンドロームデコードブロックにマルチビットエラー検出(MED)割り込み信号を生成するためのシンドローム信号を提供する、前記読み出し経路回路要素、
前記書き込みECC生成ロジックへの入力と直列に前記書き込みデータを受信するための第1の入力を有する第1のマルチプレクサ(MUX)、又は前記読み出しGen ECCロジックの入力と直列に前記メモリ回路から前記読み出しデータを受信するための第1の入力を有する第2のMUX、
前記メモリ回路から前記第1のMUXの第2の入力に前記読み出しデータを結合するためのクロスカップリングコネクタ、又は前記書き込みデータを前記第2のMUXの第2の入力に結合するためのクロスカップリングコネクタ、及び
前記書き込みGen ECCロジックの出力を前記読み出しGen ECCロジックの出力と比較するためのECCビットコンパレータ、
を含む、ECCハードウェア。
【請求項2】
請求項1に記載のECCハードウェアであって、
前記コンパレータの出力が、前記シンドロームデコードブロックへのイネーブル入力として及び前記SECブロックへのイネーブル入力として結合される、ECCハードウェア。
【請求項3】
請求項1に記載のECCハードウェアであって、
前記ECCハードウェア及び前記単一ポートメモリ回路が、少なくとも半導体表面を有する共通基板上に形成される、ECCハードウェア。
【請求項4】
請求項1に記載のECCハードウェアであって、
前記ECCハードウェアが、前記第1のMUX及び前記第2のMUXを含む、ECCハードウェア。
【請求項5】
単一ポートメモリ回路のためのエラー補正コード(ECC)ハードウェアであって、
書き込みデータから第1のECCビットを生成するための、及び、前記第1のECCビット及び前記書き込みデータを前記メモリ回路に書き込むための、書き込み生成(Gen)ECCロジックを含む書き込み経路回路要素、
前記メモリ回路のECC出力に結合するための入力を有するXOR回路に結合される読み出しGen ECCロジックを含む前記メモリ回路からの読み出しデータを結合するためのチェックECCブロックを含む読み出し経路回路要素であって、前記XOR回路の出力が、単一ビットエラー補正(SEC)ブロックに結合されるシンドロームデコードブロックにマルチビットエラー検出(MED)割り込み信号を生成するためのシンドローム信号を提供する、
前記書き込みECC生成ロジックへの入力と直列に前記書き込みデータを受信するための第1の入力を有する第1のマルチプレクサ(MUX)、及び、前記読み出しGen ECCロジックの入力と直列に前記メモリ回路から前記読み出しデータを受信するための第1の入力を有する第2のMUX、
前記メモリ回路からの前記読み出しデータを前記第1のMUXの第2の入力に結合し、前記書き込みデータを前記第2のMUXの第2の入力に結合するためのクロスカップリン
グコネクタ、
受信した前記書き込みGen ECCロジックの出力を、前記読み出しGen ECCロジックの出力と比較するためのECCビットコンパレータ、
を含む、ECCハードウェア。
【請求項6】
請求項5に記載のECCハードウェアであって、
前記コンパレータの出力が、前記シンドロームデコードブロックへのイネーブル入力として、及び前記SECブロックへのイネーブル入力として結合される、ECCハードウェア。
【請求項7】
請求項5に記載のECCハードウェアであって、
前記ECCハードウェア及び前記単一ポートメモリ回路が、少なくとも半導体表面を有する共通基板上に形成される、ECCハードウェア。
【請求項8】
書き込み経路回路要素における書き込み生成(Gen)ECCロジックと読み出し経路回路要素における読み出しGen ECCロジックを含むチェックECCロジックとを有する単一ポートメモリ回路のためのエラー補正コード(ECC)ハードウェアのための欠陥検出の方法であって、
前記読み出しGen ECCロジックの出力を前記書き込みGen ECCロジックの出力と比較すること、
前記比較からの比較出力が、前記書き込みGen ECCロジックの前記出力の値が前記読み出しGen ECCロジックの前記出力の値と等しくないと判定する場合、前記書き込みGen ECCロジックにおける又は前記読み出しGen ECCロジックにおける欠陥を検出すること、及び
前記欠陥が単一ビットエラーである場合前記単一ビットエラーを補正すること、及び前記欠陥がマルチビットエラーである場合マルチビットエラー割込み信号を送ること、
を含む、方法。
【請求項9】
請求項8に記載の方法であって、
前記読み出し経路回路要素が、前記メモリ回路のECC出力に結合される別の入力を有する前記読み出しGen ECCロジックの出力に結合されるXOR回路を更に含み、前記XOR回路の出力が、単一ビットエラー補正(SEC)ブロック及びマルチビットエラー生成回路要素に結合されるシンドロームデコードブロックにシンドローム出力を提供し、
前記方法が更に、前記比較出力を、マルチビットエラー検出(MED)回路要素のイネーブル入力として及びSECブロックのイネーブル入力として結合すること、
を含む、方法。
【請求項10】
請求項8に記載の方法であって、
前記比較及び前記検出が、クロックサイクル毎に連続的に実施される、方法。
【請求項11】
請求項8に記載の方法であって、
前記シングルポートメモリ回路が、スタティックランダムアクセスメモリ(SRAM)、読み出し専用メモリ(ROM)、又はフラッシュメモリを含む、方法。
【請求項12】
請求項8に記載の方法であって、
前記単一ポートメモリ回路が、先進運転支援システム(ADAS)のプロセッサのためのメモリである、方法。
【請求項13】
先進運転支援システム(ADAS)システムであって、
シーンから画像データを生成するための画像センサと、
ビデオ認識プロセッサ及びトランシーバを含む、前記画像センサから前記画像データを受信するように結合される画像認識システムと、
前記画像認識システムに結合されるプロセッサコアを含むプロセッサブロックであって、前記プロセッサコアが、ECCメモリハードウェア及びシングルポートプロセッサメモリを含む少なくとも一つのECCメモリ回路を用いるように結合される、前記プロセッサブロックと、
を含み、
前記ECCメモリハードウェアが、
書き込みデータから第1のECCビットを生成するための、及び前記第1のECCビット及び前記書き込みデータを前記プロセッサメモリに書き込むための、書き込み生成(Gen)ECCロジックを含む書き込み経路回路要素、
前記プロセッサメモリのECC出力に結合するための入力を有するXOR回路に結合される読み出しGen ECCロジックを含む前記プロセッサメモリからの読み出しデータを結合するためのチェックECCブロックを含む読み出し経路回路要素であって、前記XOR回路の出力が、単一ビットエラー補正(SEC)ブロックに結合されるシンドロームデコードブロックにマルチビットエラー検出(MED)割り込み信号を生成するためのシンドローム信号を提供する、前記読み出し経路回路要素、
前記書き込みECC生成ロジックへの入力と直列に前記書き込みデータを受信するための第1の入力を有する第1のマルチプレクサ(MUX)、又は、前記読み出しGen ECCロジックの入力と直列に前記プロセッサメモリから前記読み出しデータを受信するための第1の入力を有する第2のMUX、
前記メモリ回路からの前記読み出しデータを前記第1のMUXの第2の入力に結合、又は、前記書き込みデータを前記第2のMUXの第2の入力に結合するためのクロスカップリングコネクタ、及び
前記書き込みGen ECCロジックの出力を、前記読み出しGen ECCロジックの出力と比較するためのECCビットコンパレータ、
を含む、ADASシステム。
【請求項14】
請求項13に記載のADASシステムであって、
前記コンパレータの出力が、前記シンドロームデコードブロックへのイネーブル入力として及び前記SECブロックへのイネーブル入力として結合される、ADASシステム。
【請求項15】
請求項13に記載のADASシステムであって、
前記ECCメモリハードウェア及び前記プロセッサメモリが、少なくとも半導体表面を有する共通基板上に形成される、ADASシステム。
【請求項16】
請求項13に記載のADASシステムであって、
前記ECCメモリハードウェアが、前記第1のMUX及び前記第2のMUXを含む、ADASシステム。
【請求項17】
請求項13に記載のADASシステムであって、
前記プロセッサメモリが、スタティックランダムアクセスメモリ(SRAM)、読み出し専用メモリ(ROM)、又はフラッシュメモリを含む、ADASシステム。
【請求項18】
請求項13に記載のADASシステムであって、
前記ECCメモリハードウェア及び前記プロセッサメモリが、少なくとも半導体表面を有する共通基板上に形成される、ADASシステム。
【請求項19】
請求項18に記載のADASシステムであって、
共通基板及び前記半導体表面がいずれもシリコンを含む、ADASシステム。
【請求項20】
請求項13に記載のADASシステムであって、
前記画像センサがカラーカメラを含む、ADASシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、概してエラー補正コード(ECC)に関し、更に特定して言えば、ECCロジック回路要素の欠陥検出のためのハードウェアに関連する。
【背景技術】
【0002】
エラー補正コード(ECC)メモリは、殆どの従来のタイプの内部データ破損を検出及び補正し得る或るタイプのコンピュータデータストレージである。ECCメモリ回路は、科学的な、又は機能的セーフティ要件に準拠する必要があるセーフティクリティカルな先進運転支援システム(ADAS)のためのオートモーティブメモリのためなど、データ破損が概して許容され得ないコンピュータにおいて用いることができる。
【0003】
メモリ(例えば、スタティックランダムアクセスメモリ(SRAM)、読み出し専用メモリ(ROM)、又はフラッシュメモリ)にECCを実装することは、メモリ内のデータ完全性を確実にするためにセーフティクリティカル応用例において用いられる、標準のセーフティメカニズムである。従来、メモリが読み出し経路ECCロジック回路要素により読みだされるときメモリにストアされたデータのチェックを提供するために、(例えば、ハミングコードの)ECC冗長ビットが、書き込み経路ECCロジック回路要素によりメモリデータ内容に付加され、同じサイクルにおいて共に書き込まれる。本明細書において用いられるようなECCは、概してハミングコードの冗長ビットを用いる、単一ビットエラーのための単一ビットエラー補正及びマルチビットエラー(例えば、ダブルビットエラー)のためのマルチビットエラー検出のためである。
【0004】
従来、生成ECCハードウェアユニットは、書き込み経路において及び読み出し経路において提供され、生成ECCユニットが書き込み経路にあり、別の生成ECCユニットを含むチェックECCブロックが読み出し経路にある。書き込み経路回路要素及び読み出し経路回路要素は、クロス結合接続を有さず、そのため、互いに独立して動作する。メモリ読み出しオペレーションの間、ECCはチェックECCブロックにより再演算され、ECCは、XOR回路により、ストアされたECCと比較される。このXOR回路の結果(出力)はシンドロームと呼ばれる。シンドロームがゼロである場合、エラーは生じていない。シンドロームが非ゼロである場合、それは、単一ビットエラー補正(SEC)の場合、どのビットがエラーであるかを判定するためにテーブルを「シンドロームデコード」にインデックスするため用いることができ、或いは、ダブルビットエラー検出(DED)の場合、そのエラーは補正不能である。従って、従来のECCメモリは、概して、メモリシステムを事実上殆どのビットエラーがなく保ち得る。
【発明の概要】
【0005】
記載される例において、ロックステップECC回路ハードウェアが、書き込み経路回路要素と読み出し経路回路要素との間のクロス結合された接続を用いるエラー補正回路を含み、これにより、メモリ回路の一方の側での他方の側のエラーをチェックするためのECC生成ロジックの再利用が可能となり、そのため、ECCロジック要件が低減され、かなりの半導体チップ面積が節約される。記載される例は、書き込み経路回路要素における書き込み生成(Gen)ECCロジックと、読み出しGen ECCロジックを含む読み出し経路回路要素におけるチェックECCロジックとを有する、メモリ回路のためのECC回路要素のための欠陥検出、の方法を含む。読み出しGen ECCロジックの出力及び書き込みGen ECCロジックの出力は、それぞれのビットストリングが合致するか否かをチェックするために、デジタルコンパレータにより演算される。ビットストリングが合致しないとき、書き込みGen ECCロジック又は読み出しGen ECCロジックにおける欠陥が検出される。書き込みオペレーションの間のロックステップエラー(コンパレータ出力におけるミスマッチ)の場合、書き込みオペレーションが反復され得る。読み出しオペレーションの間のロックステップエラーの場合、単一ビットエラーが補正され得、マルチビットエラー割込み信号が送られ得る。
【図面の簡単な説明】
【0006】
【
図1】例示の一実施例に従った、ECC生成ロジックへの入力と直列に書き込みデータを受信するための第1の入力を備えるマルチプレクサを有する読み出し側ECCロジックにおける欠陥検出のための、説明されるロックステップECC回路ハードウェアを有する例示のECCメモリ回路のブロック図である。書き込みデータは、通常書き込みオペレーションの間、選択され、読み出しデータは、読み込みオペレーションの間、選択される。
【0007】
【
図2】例示の一実施例に従った、ECCロジックにおける欠陥検出のためのGen ECCロジックの入力と直列にメモリ回路から読み出しデータを受信するための第1の入力を備えるマルチプレクサを有する書き込み側ECCロジックにおける欠陥検出のための、説明されるロックステップECC回路ハードウェアを有する別の例示のECCメモリ回路のブロック図である。
【0008】
【
図3】例示の一実施例に従った、ECC回路要素のための欠陥検出の例示の方法における工程を示すフローチャートである。
【0009】
【
図4】例示の一実施例に従って、
図1及び
図2に関連して上述した読み出し側及び書き込み側エラーチェックの実施例を本質的に組み合わせる、その読み出し経路及び書き込み経路における欠陥検出のための説明されるECCハードウェアを含む例示のECCメモリ回路である。
【0010】
【
図5】例示の一実施例に従った、その読み出し経路及び書き込み経路におけるECCロジックにおける欠陥検出のための説明されるロックステップECC回路ハードウェアを有するプロセッサメモリとして
図4に示される説明されるECCメモリ回路の2つの場合を含む、例示のADASシステムのシステム図である。
【発明を実施するための形態】
【0011】
図面は必ずしも一定の縮尺で描いてはいない。図面において、同様の参照数字は同様の又は等価の要素を示す。幾つかの例示される行為又は事象は、異なる順序で、及び/又は他の行為又は事象と同時に成されてもよい。また、幾つかの例示される行為又は事象は、例示の実施例に従った手法を実装するためのオプションである。
【0012】
本明細書でさらなる制約なしに用いられる「に結合される」又は「と結合される」という用語(及びそれに類するもの)は、間接的又は直接的な電気接続を述べたものである。そのため、第1のデバイスが第2のデバイスに「結合する」場合、その接続は、経路に寄生のみがある直接的な電気接続を介するものであり得、又は、他のデバイス及び接続を含めて介在物を介した間接的な電気接続を介するものであり得る。間接的結合の場合、介在物は、概して、信号の情報を改変しないが、その電流レベル、電圧レベル、及び/又は電力レベルを調整し得る。
【0013】
ECCメモリ回路のECCロジックハードウェアにおいて、一時的又は永久エラーが書き込み側に存在し得、これは、書き込みオペレーションの間メモリに書き込まれている誤ったECCビットとなり得る。ECCメモリ回路の読み出し側におけるECCロジックハードウェアにおける一時的又は永久エラーは、メモリ読み出しデータの破損となり得るか、又は読み出しデータが実際には破損していないとき破損されたとしてメモリ読み出しデータの誤ったフラグとなり得る。書き込み経路回路要素及び読み出し経路回路要素が独立して動作する場合、ECCメモリ回路のECCロジックにおける一時的/永久エラーの検出が可能となり得るが、このような検出の実装は、ECCメモリ回路の両側の余分のECC生成ロジックを含む、かなりの付加的なロジックを必要とし得る。
【0014】
図1は、メモリ回路130(例えば、SRAM、ROM、又はフラッシュメモリチップ)、及び、読み出し経路回路要素120における読み出し経路Gen ECC120b
1のビット出力を検証するために構成されるそのECCロジック回路要素における欠陥検出を有する説明される「ロックステップ」ECCハードウェア110を含む、ECCメモリ回路100を示す。メモリ回路130は、所与のクロックパルスに対して一つのオペレーション(読み出し又は書き込み)のみが実施され得る、単一ポートメモリを含む。この単一ポートメモリの特徴は、ECC GENロジックの一つ(特定の時間/クロックにおいてアクティブではない側、
図1に示すように書き込みがアクティブではない、及び、
図2に示すように読み出しがアクティブではない)からのビット出力を、説明されるロックステップエラー検出を可能とするための参照として利用可能とする。
【0015】
メモリ回路130は、少なくとも半導体表面を有する共通基板105を含む。例えば、基板105は、バルクシリコン基板、又は、バルクシリコン基板上のエピタキシャル層を含み得る。
【0016】
メモリ回路130は、個別のデータ出力及び個別のECC出力を有する。kビットとして示されるデータが、rビットとして示されるECCビットと共にストアされる。例えば、非ECCメモリが64ビットのデータをストアする場合、ECCメモリが、ECCの余分の8ビットと共に、同じ64ビットのデータをストアし得る。そのため、64+8ビットが書き込まれ、64+8ビットが読みだされる。ECC8ビットは、64データビットを有効化するために用いられ、チェックECCにおけるXORロジックに向かう。
【0017】
書き込み経路回路要素115は、書き込み生成(Gen)ECCロジック115bを含み、チェックECCロジック120bは、読み出し経路回路要素120における読み出しGen ECCロジック120b
1を含む。書き込みモードで動作している(後述される
図2において書き込みモードがアクティブである)間、データビット(64ビットなど、WRデータとして示される)及び書き込みECCGenロジック115bからの対応する演算されたECCビット(例えば、8ビット)は、各々、同じクロックサイクルにおいてメモリ回路100に書き込まれる。
図1及び2においてメモリ回路130に対するデータ幅は、一例において64ビット(データ)+8ビット(ECC)を含む72ビット(72ビット幅のメモリ)であり得、これは、幅64及び幅8の2つの個別のメモリとして実現され得、又は単一の72ビット幅のメモリとし得る。
【0018】
上述したように、64情報/データビット及び8ECCビットは単なる例である。ECCビットの実際の数は、下記の例において与えられるものなど、データ(情報)のため対応するビット幅に基づき得る。
【0019】
概してプロセッサからの書き込み(wr)データを有するメモリ回路130からのkビットとして示されるクロス結合接続150により提供されるクロス結合読み出しデータにおいて多重化するために書き込みGEN ECCロジック115bの入力においてマルチプレクサ(Mux)115aが提供される。プロセッサは、マイクロプロセッサ、デジタルシグナルプロセッサ(DSP)、又はマイクロコントローラユニット(MCU)を含み得る。MUX115aは、メモリ回路130が、Mux115aの出力に送るために一つのライン上のメモリからのrdデータ及び他のライン上のwrデータを含む入力ラインのどちらかを選択するために用いられるプロセッサからの読み出しモードにあることに基づいて示されている選択ラインを有して示されている。読み出しモードにあるとき、rdデータがMUX115aにより選択され、書き込みモードにあるとき、wrデータが選択される。
【0020】
デジタルコンパレータ135が、一つの入力において書き込みGen ECCロジック115bからの出力(読み出しの間それがイナクティブであるとした参照として)を、及び、その別の出力において読み出し経路Gen ECC120b1の出力を受信するように結合される。そのため、デジタルコンパレータ135は、読み出し経路Gen ECC120b1のビット出力を検証するため書き込みGen ECCロジック115bからの出力を再使用し、いずれも、単なる一例として8ビットであるように示されている。読み出しGen ECC120b1は、XOR回路120b2と共に、チェックECCブロック120bを構成する。XOR回路120b2の出力は、「シンドローム」信号をシンドロームデコードブロック120cに提供する。シンドロームがゼロである場合、エラーは生じていない。シンドロームが非ゼロである場合、シンドロームデコードブロック120cは、どのビットがエラーであるか(SEC)、又はエラーが補正不能である(例えば、エラーがダブルビットエラーである)と判定する。単一ビットエラーはSECブロック120dに提供され、SECブロック120dは、rdデータとして示される補正された読み出しデータを出力する。
【0021】
ECCハードウェア110では、デジタルコンパレータ135の出力は、イネーブルとしてマルチビット(2又はそれ以上の)エラー割り込み生成に、及びイネーブルとしてSECブロック120dに接続される。そのため、SECブロック120dによるメモリ読み出しデータのSEC、及びシンドロームデコード120cにより提供されるシンドローム演算を用いるマルチビットエラーフラグは、いずれも、書き込み経路におけるECC演算と読み出し経路におけるECC演算とが互いに合致する(
図1において同じrビットとして示される)場合に及びその場合にのみ、デジタルコンパレータ135からのイネーブル信号によりイネーブルされる。書き込み経路におけるECC演算と読み出し経路におけるECC演算とが互いに合致しない場合、読み出しオペレーションの間、ロックステップエラーが存在し、単一ビットエラーが補正され得、ダブルビットエラーなどのマルチビットエラーの場合は、ビットエラー割り込み(ディセーブル)信号が送られ得る。
【0022】
図2は、書き込みGen ECCロジック115bを含むその書き込み経路における欠陥検出のための説明されるECCハードウェア110’を含む例示のECCメモリ回路200を示す。ここで、読み出し経路回路要素120’においてMUX120eが付加され、メモリ回路130から読み出された書き込みデータに多重化するため、クロス結合接続150’が、書き込み経路回路要素115’から読み出し経路回路要素120’におけるMUX120eに付加される。ここでは、そのECCロジック回路要素において欠陥検出を有する説明されたロックステップECCハードウェア110は、書き込みモードがアクティブである間、書き込みGen ECCロジック115bのビット出力を検証するために構成される。「メモリ書き込み」として示される制御入力が、MUX120eの入力選択ノードを制御する制御信号である。書き込みモードにあるとき、wrデータがMUX120eにより選択され、読み出しモードにあるとき、rdデータが選択される。
【0023】
読み出しGen ECCロジック120b1によるECCビット出力は、書き込みGen ECCロジック115bのオペレーションを検証するためにデジタルコンパレータ135により用いられ、デジタルコンパレータ135は、それぞれのGen ECCロジック115b及び120b1により生成されたECCビットを比較する。生成されたデジタルコンパレータ135の出力は、書き込み処理を反復するため、プロセッサ(例えば、マイクロプロセッサ、デジタルシグナルプロセッサ(DSP)、又はマイクロコントローラユニット(MCU))への割り込みとして用いられる。書き込みオペレーションの間、デジタルコンパレータ135によりエラーがフラグされている場合、メモリ回路130に書き込まれるデータがエラーではないことを確実にするため、書き込みオペレーションが反復され得る。エラーが一時的欠陥である場合、書き込みの反復は、ハードウェアエラーの問題を概して修復し得る。永久欠陥の場合、デジタルコンパレータ135は、再び、エラーを生成し続け、この場合プロセッサは、システムにおいて永久欠陥が生じたことをアプリケーションソフトウェアに示すなどの適切なアクションを取り得る。読み出しオペレーション場合もこの同じ欠陥応答が当てはまる。
【0024】
図3は、例示の一実施例に従って、単一ポートメモリ回路に関連するECC回路要素のための欠陥検出の一例の方法300における工程を示すフローチャートである。工程301が、読み出しGen ECCロジック(
図1及び
図2における120b
1)の出力を、書き込みGen ECCロジックの出力(
図1及び
図2における115b)と比較することを含む。工程302が、この比較からの比較出力が、書き込みGen ECCロジックの出力の値が読み出しGen ECCロジック120b
1の出力の値と等しくないと判定する場合、書き込みGen ECCロジックにおける又は読み出しGen ECCロジックにおける欠陥を検出することを含む。
【0025】
工程303が、欠陥が、読み出しオペレーションの間の単一ビットエラーである場合、この単一ビットエラーを補正すること、及び、欠陥が、読み出しオペレーションの間のマルチビットエラーである場合、マルチビットエラー割込み信号を送ることを含む。欠陥が、書き込みオペレーションの間のエラーであるとき、書き込みを反復する。読み出し側における欠陥検出を実装する
図1のメモリ回路100に対して上述したように、単一ビットエラーはSECブロック120dに提供され、SECブロック120dは、rdデータとして示される補正された読み出しデータを出力する。書き込み側における欠陥検出を実装する
図2のメモリ回路200に対して上述したように、メモリチップに書き込まれるデータがエラーではないこと確実にするため、書き込みオペレーションが反復され得る。
【0026】
図1(書き込み側エラーチェック)及び
図2(読み出し側エラーチェック)に関連して上述した実施例は、メモリ回路130の一方の側のエラーを検出するために独立して(他方の側なしで1つで)実施され得る。代替として、
図1及び
図2に関連して上述した読み出し側及び書き込み側エラーチェックの実施例は、メモリ回路130の両側でのエラーチェックを可能にするために、共に組み合わされ得る。
【0027】
図4は、
図1及び
図2に関連して上述した読み出し側及び書き込み側エラーチェックの実施例を本質的に組み合わせる、その読み出し経路及び書き込み経路両方における欠陥検出のための説明されたECCハードウェア110’’を含む例示のECCメモリ回路400である。MUX115aのほかに、ECCメモリ回路400は、読み出しGen ECCロジック120b
1と直列の、メモリ回路400の入力からの読み出しデータを受信するための第1の入力を有する第2のMUX120e、及び、書き込みデータを第2のMUX120eの第2の入力に結合するためのクロス結合された接続150’を含む。ここでは、デジタルコンパレータ135は、読み出し側エラーチェック及び書き込み側エラーチェック両方に関与する。
【0028】
本願において説明されるECCメモリ回路とは対照的に、従来のECCロジックは、内部メモリ(例えば、RAM)エラーを検出及び補正するためにのみ用いられる。本願において説明されるECCロジックを有するECCメモリ回路では、内部メモリエラーの検出及び補正に加えて、ECCロジックにおける欠陥検出が達成され、ここで、ECC演算及び生成ロジックにおける任意の一時的/永久エラーも検出され、これにより補正のアクションがなされ得る。上述したように、読み出しGen ECC120b
1のロックステップエラーの場合(
図1参照)、この単一ビットエラーが補正され得、マルチビットエラー割込み信号が生成され得る。書き込みGen ECCロジック115b(
図2参照)におけるエラーのロックステップロジックの場合、書き込みオペレーションが反復される。また、説明されるロックステップECC回路ハードウェアは、非侵入性であり、付加的なMux及びコンパレータに関してエリアが限られているという不利益を伴うだけで、メモリECCロジックをチェックするために(クロックサイクル毎に、オンザフライで)継続的に動作し得る。
【0029】
説明される実施例を下記の例で更に図示する。
図5は、プロセッサメモリ130
1(プロセッサメモリ1として示される)及び130
2(プロセッサメモリNとして示される)を含む400
1及び400
2として示される
図4に示した説明されたECCメモリ回路の2つの場合を含む例示のADASシステム500のシステム図である。ECCメモリ回路は、プロセッサメモリの読み出し経路及び書き込み経路における欠陥検出のためのECCロジック110
1及び110
2として示される説明されたロックステップECC回路ハードウェアを有する。画像センサ505(例えば、CMOSカラーカメラ)が、シーンから(例えば、車両からの後方ビューから)画像データを生成する。画像データは、カメラインタフェース510により画像認識システム515に結合される。画像認識システム515は、ビデオ認識プロセッサ515a、フラッシュメモリ515b、外部DDRメモリ515c、及びコントローラエリアネットワーク(CAN)バスTx/Rx(トランシーバ)515dを含んで示されている。
【0030】
画像認識システム515は、プロセッサコア530aを含むプロセッサブロック530にCANバス520により結合される。プロセッサコア530aは、ECCメモリ回路4001及び4002のプロセッサメモリ1301及び1302を用いるためバスインタフェース535により結合されて示されている。上述したように、ADASシステム500のオペレーションの間、ECCメモリ回路4001及び4002は、書き込み経路回路要素と読み出し経路回路要素との間のクロス結合された接続を備える、説明されたロックステップECC回路ハードウェアを用い、これにより、プロセッサメモリの一つの側の、他の側のエラーをチェックするためのECC生成ロジックの再利用が可能となり、これは、ECCロジック要件を低減し、かなりの半導体チップ面積を節約する。
【0031】
本発明の特許請求の範囲内で、説明した例示の実施例に改変が成され得、他の実施例が可能である。
【手続補正書】
【提出日】2022-07-13
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
方法であって、
メモリ回路のための読み出し経路回路要素における読み出し生成エラー訂正コード(ECC)ロジックの出力を前記メモリ回路のための書き込み経路回路要素における書き込み生成ECCロジックの出力と比較することと、
前記比較することに基づいて、前記書き込み生成ECCロジックの出力が前記読み出し生成ECCロジックの出力と等しくないときに、前記書き込み生成ECCロジックにおける又は前記読み出し生成ECCロジックにおける欠陥を検出することと、
を含む、方法。
【請求項2】
請求項1に記載の方法であって、
前記比較することと前記検出することとが、クロックサイクル毎に連続的に実施される、方法。
【請求項3】
請求項1に記載の方法であって、
前記メモリ回路が、スタティックランダムアクセスメモリ(SRAM)、読み出し専用メモリ(ROM)、又はフラッシュメモリを含む、方法。
【請求項4】
請求項1に記載の方法であって、
前記メモリ回路が、先進運転支援システム(ADAS)のプロセッサのためのメモリである、方法。
【請求項5】
請求項1に記載の方法であって、
前記欠陥が単一ビットエラーであるときに前記単一ビットエラーを訂正することを更に含む、方法。
【請求項6】
請求項1に記載の方法であって、
前記欠陥がマルチビットエラーであるときにマルチビットエラー割り込み信号を送信することを更に含む、方法。
【請求項7】
装置であって、
書き込み経路回路要素における書き込み生成エラー訂正コード(ECC)ロジックの出力をメモリ回路の読み出し経路回路要素における読み出し生成ECCロジックの出力と比較する回路要素と、
前記比較する回路要素からの比較出力が前記書き込み生成ECCロジックの出力の値が前記読み出し生成ECCロジックの出力の値と等しくないと判定するときに、前記書き込み生成ECCロジック又は前記読み出し生成ECCロジックにおける欠陥を検出することと、
を含む、装置。
【請求項8】
請求項7に記載の装置であって、
前記読み出し経路回路要素が、前記読み出し生成ECCロジックの出力に結合される第1の入力と前記メモリ回路のECC出力に結合される第2の入力とシンドロームデコードブロックにシンドローム出力を提供する出力とを有するXOR回路を含み、
前記シンドロームデコードブロックが単一ビットエラー訂正(SEC)ブロックとマルチビットエラー生成回路要素とに結合され、
前記装置が、
前記比較出力をイネーブル入力としてマルチビットエラー検出(MED)回路要素に提供し、前記比較出力をイネーブル入力として前記SECブロックに提供する回路要素を更に含む、装置。
【請求項9】
請求項7に記載の装置であって、
前記比較することと前記検出することとが、クロックサイクル毎に連続的に実施される、装置。
【請求項10】
請求項7に記載の装置であって、
前記メモリ回路が、スタティックランダムアクセスメモリ(SRAM)、読み出し専用メモリ(ROM)、又はフラッシュメモリである、装置。
【請求項11】
請求項7に記載の装置であって、
前記メモリ回路が、先進運転支援システム(ADAS)のプロセッサのためのメモリである、装置。
【請求項12】
請求項7に記載の装置であって、
前記比較する回路要素がデジタル比較器である、装置。
【請求項13】
請求項7に記載の装置であって、
前記欠陥が単一ビットエラーであるときに前記単一ビットエラーを訂正する回路要素を更に含む、装置。
【請求項14】
請求項7に記載の装置であって、
前記欠陥がマルチビットエラーであるときにマルチビットエラー割り込み信号を送信する回路要素を更に含む、装置。