JP2006004419A - データキャッシュが内蔵された半導体集積回路およびそれの実速度テスト方法 - Google Patents

データキャッシュが内蔵された半導体集積回路およびそれの実速度テスト方法 Download PDF

Info

Publication number
JP2006004419A
JP2006004419A JP2005162840A JP2005162840A JP2006004419A JP 2006004419 A JP2006004419 A JP 2006004419A JP 2005162840 A JP2005162840 A JP 2005162840A JP 2005162840 A JP2005162840 A JP 2005162840A JP 2006004419 A JP2006004419 A JP 2006004419A
Authority
JP
Japan
Prior art keywords
address
data cache
data
chip memory
cache
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.)
Granted
Application number
JP2005162840A
Other languages
English (en)
Other versions
JP4833586B2 (ja
Inventor
Eishoku Kin
金 榮植
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2006004419A publication Critical patent/JP2006004419A/ja
Application granted granted Critical
Publication of JP4833586B2 publication Critical patent/JP4833586B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/24Marginal checking or other specified testing methods not covered by G06F11/26, e.g. race tests
    • 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
    • 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
    • G11C2029/0401Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals in embedded memories
    • 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
    • G11C2029/1806Address conversion or mapping, i.e. logical to physical address

Abstract

【課題】データキャッシュが内蔵された半導体集積回路およびそれの実速度テスト方法を提供する。
【解決手段】ここに開示されたデータキャッシュが内蔵した半導体集積回路およびそれの実速度テスト方法は、データキャッシュのアドレスデコーディング時、一定ビットを考慮しなくデコーディングを実行して、データキャッシュの複数個のアドレスを所定のアドレス単位ごとにオンチップメモリの一つのアドレスにマッピングさせる。そして、デコーディングされたアドレスを利用してデータキャッシュのN個の互いに異なるアドレスに対するN回のリード−ミス(read−miss)、N回の書き込み−ミス(write−miss)、およびN回のラインフィルおよびキャストアウト動作に対するテストを全部実行する。その結果、データキャッシュより小さいサイズを有するオンチップメモリを有してもデータキャッシュに対する実速度テストを十分に実行することができるようになる。
【選択図】図7

Description

本発明は半導体集積回路のテストに係わり、さらに具体的には半導体集積回路に内蔵されたデータキャッシュのための実速度テスト装置および方法に関する。
半導体工程が発展することによって、最近開発されている半導体集積回路は中央処理装置(Central Processing Unit;CPU)とキャッシュメモリが単一チップで集積されたSOC(system on a chip)形態に開発される傾向を示している。CPUとキャッシュメモリを単一チップとして集積する場合、データ入/出力速度が向上し、その結果、CPUの全体性能が向上する効果を得ることができる。しかし、製造工程の不均衡などによって半導体集積回路に不良が発生する場合があり、このような不良を検出するためには半導体集積回路の実際動作速度に合わせてテストを実行する実速度テスト(at speed test)が多用されている。
現在主に使用されている実速度テスト用テスタの動作周波数は約80MHz程度であるのに比べて、半導体集積回路の動作周波数は100MHz以上から1GHzを超過する場合もある。最近には300MHz以上の高速動作が可能なテスタが登場しているが、非常に高価であり、高速のテスタを利用してもテスタと半導体集積回路とを連結させる複数個の外部ピン(すなわち、外部端子)に存在するピン間の寄生容量によって動作周波数に影響を及ぼすようになる。
このような問題を解決するため、半導体集積回路の内部的では高速のオンチップPLLクロック(On−chip PLL(Phase−Locked Loop)clock)を使用して高速のテストを実行し、テスト結果だけ低速のテスタに伝送して確認する方法が使用されている。この場合、テストパターンは半導体集積回路の外部に位置したオフチップメモリ(off−chip memory)または内部に位置したオンチップメモリ(on−chip memory)に貯蔵されることができ、システムの性能を低下させず、最適の実速度テストを実行するためにはオフチップメモリよりはオンチップメモリを使用することより望ましい。
特許文献1にはテスタによってオンチップメモリにあらかじめ貯蔵されたテストパターンを利用して集積回路の内部で自体的に実速度テストを実行し、テスト実行の結果を外部の低速テスタへ伝送する技術が開示されている。しかし、前記テスト方法でデータキャッシュの全領域の動作を十分にテストするためには、必ずデータキャッシュ(data cache)サイズより大きいオンチップメモリが集積回路内に具備されなければならないので、半導体集積回路のサイズが大きくなり、集積度が低下することがある。
特開2003−139818号公報
本発明の課題は、データキャッシュサイズより小さいオンチップメモリを有しても半導体集積回路に内蔵されたデータキャッシュを実速度テストすることができる装置および方法を提供することにある。
本発明の目的を達成するために本発明の特徴によれば、半導体集積回路は、 第1データ貯蔵領域を有するデータキャッシュと、前記データキャッシュの前記第1データ貯蔵領域より小さい第2データ貯蔵領域を有し、テストデータを貯蔵するオンチップメモリと、前記オンチップメモリに貯蔵された前記テストデータに対するアクセスが要求される時、前記第1データ貯蔵領域が前記第2貯蔵領域にマッピングされるようにアドレスをデコーディングするアドレスデコーダとを含むことを特徴とする。
本発明の目的を達成するために本発明の特徴によれば、半導体集積回路のための実速度テストシステムは、データキャッシュのデータ貯蔵領域が前記データキャッシュより小さいデータ貯蔵領域を有するオンチップメモリにマッピングされるようにアドレスをデコーディングし、前記オンチップメモリに貯蔵されたテストデータを利用して前記デコーディングされたアドレス別に前記データキャッシュに対するリード−ミス、書き込み−ミス、ラインフィルおよびキャストアウト動作を実行する半導体集積回路と、前記半導体集積回路の外部で前記データキャッシュの動作実行の結果を受け入れて前記データキャッシュの欠陥の可否を分析するテスト回路とを含むことを特徴とする。
本発明の目的を達成するために本発明の特徴によれば、半導体集積回路に内蔵されたオンチップメモリを利用してデータキャッシュを実速度テストする方法は、(a)前記データキャッシュのアドレス領域を前記データキャッシュより小さい前記オンチップメモリのアドレス領域にデコーディングする段階と、(b)前記デコーディングされたアドレスに応答して前記オンチップメモリからテストデータを読み込んで前記データキャッシュのリード−ミス、書き込み−ミス、ラインフィルおよびキャストアウトをテストする段階とを含むことを特徴とする。
本発明の目的を達成するために本発明の特徴によれば、半導体集積回路に内蔵されたオンチップメモリを利用してデータキャッシュを実速度テストする方法は、(a)前記データキャッシュのアドレス領域を前記データキャッシュより小さい前記オンチップメモリのアドレス領域にデコーディングする段階と、(b)前記デコーディングされたアドレスに応答して前記オンチップメモリからテストデータを読み込んで前記データキャッシュに対するリード−ミス、書き込み−ミス、ラインフィルおよびキャストアウト動作を実行し、前記実行の結果を前記半導体集積回路の外部のテスト装置に出力する段階と、(c)前記テスト装置で前記データキャッシュの動作実行の結果を分析して前記データキャッシュの欠陥の可否を判断する段階とを含む。
望ましい実施形態において、前記データキャッシュがN個のアドレスを有する場合、2N個のアドレスを前記オンチップメモリのアドレス領域にデコーディングし、前記データキャッシュのアドレスビットのうちの少なくとも一つの以上がアドレスデコーディング時、考慮されないドントケアアドレスビット(don’t care address bits)として使用されることを特徴とする。
望ましい実施形態において、前記データキャッシュが2個のセットを有し、各々のセットが2個のブロックを有し、一つのキャッシュブロックサイズが2バイトであり、全体キャッシュサイズが2(s+b+n)バイトであり、前記オンチップメモリが単一セットサイズに該当する2(s+b)バイトのアドレス領域を有する場合、前記ドントケアアドレスビットにn+1ビットが割り当てられ、前記オンチップメモリが単一ブロックサイズに該当する2バイトのアドレス領域を有する場合、前記ドントケアアドレスビットにn+s+1ビットが割り当てられることを特徴とする。
本発明によれば、データキャッシュの各アドレスがオンチップメモリの各々の他のアドレスにデコーディングされるのに代えて、データキャッシュの複数個のアドレスが一定アドレス単位ごとにオンチップメモリの一つのアドレスにデコーディングされる。そしてデコーディングされたアドレスを使用してデータキャッシュの全体アドレス領域に対するリード−ミス、書き込み−ミス、リード−ミスおよびキャストアウト動作を全部テストすることができるので、データキャッシュより小さいサイズを有するオンチップメモリを有しも半導体集積回路に内蔵されているデータキャッシュに対する実速度テストを十分に実行することができる。
以下、本発明による実施形態を添付の図を参照して詳細に説明する。
本発明の新規したデータキャッシュが内蔵された半導体集積回路およびそれの実速度テスト方法は、データキャッシュのアドレスデコーディング時、一定ビットを考慮しなくデコーディングを実行して、データキャッシュの複数個のアドレスを所定のアドレス単位ごとにオンチップメモリの一つのアドレスにマッピングする。そして、デコーディングされたアドレスを利用してデータキャッシュのN個の互いに異なるアドレスに対するN回のリード−ミス(read−miss)、N回の書き込み−ミス(write−miss)、そしてN回のラインフィルおよびキャストアウト動作に対するテストを全部実行する。その結果、データキャッシュより小さいサイズを有するオンチップメモリを有してもデータキャッシュに対する実速度テストを十分に実行することができるようになる。
図1は本発明が適用される半導体集積回路100のブロック図として、半導体集積回路100とテスタ10との連結関係が示している。
図1を参照すれば、本発明による半導体集積回路100はデータキャッシュ110と、データキャッシュ110が内蔵されたCPU(Central Processing Unit)120と、半導体集積回路100を動作させるのに必要な高速のクロック信号を発生するPLL130と、半導体集積回路100に内蔵されたオンチップメモリ140と、オンチップメモリ140の入出力動作を制御するメモリコントローラ150と、データキャッシュ110より小さいオンチップメモリ140でもデータキャッシュ110のすべての機能を十分にテストするように類似アドレス(synonym address)をデコーディングする類似アドレスデコーダ160と、複数個のロジックブロック180と、半導体集積回路100に具備された機能ブロックの間で信号およびデータを伝達するバス190とを含む。
図1に示したように、最近開発されている半導体集積回路、いわゆるSOC(system on a chip)は数百MHzで動作するキャッシュ内蔵型CPU120と、100MHz以上で動作するメモリコントローラ150などを具備している。高速SOCの最大遅延経路(critical timing path)ではキャッシュラインフィル(cache line fill)とビクティムキャストアウト(victim cast out)があり、このような最大遅延経路をクロックを直接印加して実速度テストするのにはIO(Input Output)特性上、様々な難しさが伴うので、本発明では数百MHzのクロックを外部テスタ10で印加するに代えて内部PLL130で発生された高速クロック信号を使用してSOCをテストし、データキャッシュ110より小さいサイズのオンチップメモリ140を利用してテストを実行するように類似アドレスデコーダ160からデコーディングされた類似アドレス(synonym address)を利用してテストを実行する。すなわち、CPU120はキャッシュミス時、オンチップメモリ140に貯蔵されたテストデータを読み込んでデータキャッシュ110のN個の互いに異なるアドレスに対するN回のリード−ミス(read−miss)、N回の書き込み−ミス(write−miss)、N回のラインフィルおよびキャストアウト動作を実行する。そして、前記動作実行の結果は半導体集積回路100の外部に連結されたテスタ10に伝送されて、テスト結果が判断される。その結果、低速のテスタ10を利用して高速の半導体集積回路100をテストし、データキャッシュ110より小さいサイズのオンチップメモリ140を有して半導体集積回路100に対するテストを十分に実行することができるようになる。
一般的に、半導体集積回路100の性能は回路内の可能なすべての信号伝達経路(signal propagation path)のうちの最も長い経路によって決められ、これによって回路の性能が決められるので、これを最大遅延経路または臨界経路と言う。したがって、下では図1に示した半導体集積回路100の最大遅延経路、すなわちデータキャッシュ110のキャッシュラインフィル(cache line fill)とビクティムキャストアウト(victim cast out)に対して説明するためにデータキャッシュ110に対する基本構造を説明する。
プログラムを分析すれば、与えられた時間の間最近書き込んだデータや命令語を再書き込みする傾向を有している。これを参照の地域性(locality of reference)という。このような現象はコンピュータプログラムでプログラムループとサブルーチンが多用されており、分岐命令語に接する前まで命令語が順次に要請されるという事実から容易に理解されることができる。このように、よく参照されるプログラムとデータは速度が速いキャッシュメモリに貯蔵される。CPUはメモリに接近する必要がある時、まずキャッシュを調査した後、所望するワードがキャッシュから発見されれば、これを読み込み、発見されなければ、メインメモリに接近する。CPUが参照しようとするデータや命令語がキャッシュに存在すれば、これをキャッシュヒット(cache hit)といい、キャッシュに存在しなければ、これをキャッシュミス(cache miss)という。キャッシュヒットが発生すれば、待機時間なしにCPUが動作することができるが、キャッシュミスが発生すれば、メモリまで行ってデータや命令語を参照しなければならないので、時間遅延が発生するようになる。
キャッシュメモリの基本的な特性は速い接近時間として、キャッシュで必要なデータを捜すのにほとんど時間がかからないようにしなければならない。メインメモリからキャッシュメモリにデータを伝送することをマッピングプロセスといい、マッピングプロセスの種類によって、キャッシュは、完全アソシアティブキャッシュ(Fully associativeキャッシュ)、ダイレクトマッピングキャッシュ(Direct mapped cache)、およびN−ウェイセット−アソシアティブキャッシュ(N−way set−associative cache)に区分される。
図2は図1に示したデータキャッシュ110の構造を示す図であり、N―ウェイセットアソシアティブデータキャッシュ(N−way set associative data cache)の論理的構造が示している。
N−ウェイセット−アソシアティブキャッシュは、キャッシュメモリ内の一つのエントリーにマッピングされることができるブロックを一つのセット(set)に縛ったことを意味する。例えば、2−ウェイセット−アソシアティブキャッシュは同一のブロックインデックス(block index)を有するブロックがキャッシュメモリに二つ貯蔵されることができるということを意味する。この場合、ダイレクトマッピングキャッシュよりミス率(miss rate)を減らすことができるという長所があり、ダイレクトマッピングキャッシュは1−ウェイセット−アソシアティブキャッシュともいえる。
図2を参照すれば、N−ウェイセット−アソシアティブキャッシュで構成されたデータキャッシュ110はN個(すなわち、2個)のセットを有し、各々のセットはS個(すなわち2個)のブロックを有する。 ここで、一つのキャッシュブロックサイズは2バイトであり、全体キャッシュサイズは2(s+b+n)バイトである。例えば、ARM社のARM1020Eは32Kbytesのデータ(すなわち、32Kbytes =215=2(s+b+n)=2(4+5+6))を有し、64−ウェイセット−アソシアティブ、32バイトブロック構造で構成される。したがって、ARM社のARM1020Eのデータキャッシュのパラメータ値は各々N=64、n=6(64=2であるので、n=6)、S=16、s=4(16=2であるので、s=4)、b=5(32=2であるので、b=5)と同様である。ARM社のARM1020Eに対するより詳細な構成は2002年ARM社で発行された“ARM1020E Technical Reference Manual”に詳細に開示されている。
図3は図2に示した構造を有するデータキャッシュ110のキャッシュミス発生例を示す図である。
図3を参照すれば、同一のセットインデックス(set index)Kを有し、かつ互いに異なるアドレスを有するN+1個のデータアクセス(data access)は、データキャッシュミス(data cache miss)を誘発するようになることが分かる。例えば、ARM1020Eデータキャッシュの場合、address[8:5]が同一の65個の互いに異なるアドレスデータをアクセスすれば、データキャッシュミスが発生するようになる。下で詳細に説明するが、本発明では、キャッシュミスの発生時、類似アドレスをデコーディングし、これを利用してテストを実行するようになる。類似アドレスのデコーディング方法は次のとおりである。
図4および図5は図1に示した類似アドレスデコーダ160のアドレスデコーディング例を示す図である。
従来にはデータキャッシュ110の各アドレスがオンチップメモリ140の各々の他のアドレスにデコーディングされなければならないので、テストしようとするデータキャッシュ110より大きいオンチップメモリ140が必ず具備されなければならなかった。しかし、本発明では、データキャッシュ110の各アドレスをオンチップメモリ140の各々の他のアドレスにデコーディングするに代えて、一定アドレス単位ごとにデータキャッシュ110の複数個のアドレスをオンチップメモリ140の一つのアドレスにデコーディングする。すなわち、本発明による類似アドレスデコーダ160はデータキャッシュ110の各アドレスに対するデコーディング時、アドレスのタグ(tag)フィールドに含まれた一定ビットは考慮しなくデコーディングすることによって、データキャッシュ110の複数個のアドレスを一定アドレス単位ごとにオンチップメモリ140の一つのアドレスにマッピングさせる。
例えば、32ビットアドレスに8ビットのドントケアアドレスビット(don’t care address bits)が存在する場合、下の表1のように2個のアドレスごとに一つのオンチップメモリ140のアドレス値がデコーディングされる。表1に表示されたアドレスは8ビットのドントケアアドレスビットを有するアドレスデコーディング結果の一部分を表示したものである。
Figure 2006004419
本発明では、データキャッシュ110のアドレスをオンチップメモリ140の各々の他のアドレスにデコーディングしなく、表1のようにデータキャッシュ110の複数個のアドレスをオンチップメモリ140の一つのアドレスにデコーディングする。その理由は、図7および図8で詳細に説明するが、本発明では表1のような方式によってデコーディングされたアドレスのみを有してもデータキャッシュ110の全アドレス領域に対するリードミス(read−miss)、書き込みミス(write−miss)、ラインフィルおよびキャストアウト動作に対するテストを全部実行することができるためである。
このようにデータキャッシュ110の複数個のアドレスが一定個数ごとにオンチップメモリ140の一つのアドレスにデコーディングされることを類似アドレスデコーディング(synonym address decoding)といい、類似アドレスデコーディングのために考慮しないドントケアアドレスビット(don’t care address bits)を類似アドレスビット(synonym address bits)という。そして、前記類似アドレスデコーディング結果得られたアドレスを類似アドレス(synonym address)といい、類似アドレス(synonym address)が占めるアドレス領域を類似アドレス領域(synonym address space)という。
図4には単一セットサイズに該当する2(s+b)バイトのアドレス領域を有するオンチップメモリ140を有し、2(n+s+b)バイトのアドレス領域を有するデータキャッシュ110をテストするのに必要なオンチップメモリ140の類似アドレス領域が表示されている。
図4で2Nセットサイズのアドレス領域を一つセットサイズのアドレス領域を有するオンチップメモリ140にマッピングするためには、類似アドレスデコーダ160が総n+1ビットの類似アドレスビットを持たなければならない。例えば、ARM1020Eデータキャッシュをテストするのに使用されるオンチップメモリ140の大きさが単一セットサイズである512 バイトであれば、64個セットの2倍である128個(すなわち、2(n+1)=2=128)セットサイズのアドレス領域を一つのセットサイズのオンチップメモリ140にマッピングすることができるアドレスデコーディング結果を持たなければならない。
ARM1020Eデータキャッシュの場合、nパラメータの値は6であるので、類似アドレスデコーダ160はn+1に該当する7ビットの類似アドレスビットを考慮しなくアドレスデコーディングを実行する。その結果、図4のように2(n+s+b+1)バイトのアドレス領域を2(s+b)バイトの物理的アドレス領域を有するオンチップメモリ140にマッピングすることができるようになる。この場合、類似アドレスデコーダ160が総n+1ビットの類似アドレスビットを有するので、データキャッシュ110の全体アドレス(full address)がデコーディングされる必要がなく、それによって、デコーディング速度も速くなる。この際、もしタグフィールドのn+1個のビットがデコーディングされない場合にはキャッシュミスが発生するようになる。
ここで、データキャッシュ110がNセットサイズのアドレス領域を有するにもかかわらず、オンチップメモリ140が2Nセットサイズの仮想アドレス領域とマッピングされるようにアドレスをデコーディングする理由は、Nセットサイズのアドレスを有してデータキャッシュ110に対するリードミス(read−miss)および書き込みミス(write−miss)に対するテストを実行し、残りのNセットサイズのアドレスを使用してデータキャッシュ110に対するラインフィルおよびキャストアウトに対するテストを実行するためである。これに対する内容は図7および図8を参照して以下詳細に説明する。
続いて、図5を参照すれば、図5には単一ブロックサイズに該当する2バイトのアドレス領域を有するオンチップメモリ140を有してデータキャッシュ110をテストするのに必要な類似アドレス領域が表示されている。2(n+s+1)個のブロックサイズのアドレス領域を一つのブロックサイズのアドレス領域にマッピングするためには、類似アドレスデコーダ160が総n+s+1ビットの類似アドレスビットを持たなければならない。
例えば、ARM1020Eデータキャッシュをテストするのに使用されるオンチップメモリ140の大きさが単一ブロックサイズである32バイトであれば、1024個ブロックの2倍である2048個(すなわち、2(n+s+1)=211=2048)ブロックサイズのアドレス領域を一つのブロックサイズのアドレス領域を有するオンチップメモリ140にマッピングすることができるアドレスデコーディング結果を持たなければならない。ARM1020Eデータキャッシュの場合、nパラメータの値は6であり、sパラメータの値は4であるので、類似アドレスデコーダ160はn+s+1に該当する11ビットのアドレスを考慮しなくアドレスデコーディングを実行する。その結果、図5のように、2バイトの物理的アドレス領域を有するオンチップメモリ140を有しても2(n+s+b+1)バイトのアドレス領域を有するデータキャッシュ110をテストすることができるようになり、このために、タグフィールドのn+1ビットとセットインデックスのsビットがデコーディングされない時にはキャッシュミスが発生するようになる。
上述のように、オンチップメモリ140が単一セットサイズに該当する2(s+b)バイトのアドレス領域を有する場合には総n+1ビットの類似アドレスビットを有する一方、オンチップメモリ140が単一ブロックサイズに該当する2バイトのアドレス領域を有する場合には総n+s+1ビットの類似アドレスビットを有するようになる。すなわち、類似アドレスビットの大きさはオンチップメモリ140の大きさが小くなるほど大きくなり、図5のように、オンチップメモリ140が最小メモリサイズ(すなわち、単一ブロックサイズ)を有する場合の類似アドレスビットの大きさは次のように決められる。
図6は最小メモリサイズのオンチップメモリ140に対する類似アドレス領域の構成を示す図である。図6の(a)にはデータキャッシュ110の全体アドレス領域(full address space)と、データキャッシュ110のサイズ、およびデータキャッシュ110をテストするのに使用されるオンチップメモリ140のサイズが各々示している。そして、図6の(b)にはデータキャッシュ110より小さいサイズのオンチップメモリ140にデータキャッシュ110をテストするのに必要な類似アドレス領域およびデコーディングアドレス領域が示している。
図6を参照すれば、類似アドレス領域のサイズADD_SIZESYNONYMとオンチップメモリ140のアドレス領域のサイズADD_SIZEON−CHIPとの和は、式(1)のようにデータキャッシュ110のアドレス領域のサイズADD_SIZED−CACHEより大きく構成されなければならないことが分かる。
Figure 2006004419
すなわち、本発明でデータキャッシュ110のアドレス領域のサイズADD_SIZED−CACHEは2n+s+bバイトであるので、類似アドレスサイズADD_SIZESYNONYMとオンチップメモリ140のアドレスサイズADD_SIZEON−CHIPの和が2n+s+b+1バイト(ここで、n+s+b+1={n+1+s−x}+x+b以上になるように構成してアドレスをデコーディングする。
例えば、最小メモリサイズに該当する単一ブロックサイズ(すなわち、32バイト)の大きさを有するオンチップメモリ140を利用してARM1020Eデータキャッシュをテストするためには、1024個ブロックの2倍である2048個(すなわち、2(n+s+1)=211=2048)ブロックサイズのアドレス領域を一つのブロックサイズのアドレス領域を有するオンチップメモリ140にマッピング可能でなければならない。したがって、式1のように、n+s+1に該当する11ビットの類似アドレスビットを有してアドレスデコーディングを実行すれば、図5のように2バイトの物理的アドレス領域を有するオンチップメモリ140がまるで2(n+s+b+1)バイトのアドレス領域を有するオンチップメモリ140のように動作することができるようになって、小さいサイズのオンチップメモリ140を有しても、これより大きいデータキャッシュ110を十分にテストすることができるようになる。
図7は本発明の望ましい実施形態によるデータキャッシュ110の実速度テスト方法を概略的に示す図であり、図8は本発明の望ましい実施形態によるデータキャッシュ110の実速度テストの詳細流れ図である。図7および図8には単一セットサイズを有するオンチップメモリ140のための実速度テスト方法が示している。
図7および図8を参照すれば、本発明によるデータキャッシュの実速度テスト方法は先にテストを実行する前にデータキャッシュ110をオフさせた後(1100段階)、オンチップメモリ140にテストパターン0(Pattern0)を貯蔵する(1120段階)。そして、データキャッシュ110をオンさせる(1140段階)。次いで、データキャッシュ110にリードミスが発生するようになれば、図7の(a)のように類似アドレス領域に属するデータキャッシュ110のN個のアドレスADD_1〜ADD_N−1を読み込み、これらアドレスが示すオンチップメモリ140の該当のアドレスに貯蔵されているテストパターン0をデータキャッシュ110の該当のアドレス領域に貯蔵するラインフィルを実行する(1200段階)。次いで、リードミスがN回実行されたか否か(すなわち、オンチップメモリ140からテストパターン0を読み込む動作がN回実行されたか否か)を判別する(1250段階)。
1250段階での判別結果、リードミスがN回実行されなければ、該当のキャッシュ110に不良が発生したと判定する。そして、リードミスがN回実行されたら、1200 段階で読み込んだアドレスADD_1〜ADD_N−1を再び読み込む。そして、該当のアドレスにテストパターン0が正しく貯蔵されているか否かを比べて(1300段階)、前記比較結果に基づいてリードヒットがN回発生されたか否かを判別する(1350段階)。
1350段階での判別結果、リードヒットがN回発生しなければ、該当のキャッシュ110に不良が発生したと判定する。そして、リードヒットがN回発生したら、図7の(b)のように、N個のアドレスADD_1〜ADD_N−1の各々に対して互いに異なる値を有する第1乃至第Nテストパターン(Pattern1〜PatternN)を書き込んだ後、書き込みヒットが発生されたか否かを比べる(1400段階)。ここで、第1乃至第Nテストパターンは互いに異なる値を有するように一定数字を足すか、引くことによって発生されたデータを使用する。
1400段階での比較結果、書き込みヒットがN回発生しなければ、該当のキャッシュ110に不良が発生したと判定する。そして、書き込みヒットがN回発生したら、図7の(c)および(d)のように前記N個のアドレスADD_1〜ADD_N−1とは異なるアドレス値を有するN個のアドレスADD_N〜ADD_2N−1を読み込んで各アドレス別にラインフィルを実行すると同時にキャストアウトをN回実行する(1500段階)。1500段階でラインフィルおよびキャストアウトに使用されるN個のアドレスADD_N〜ADD_2N−1は先で使用されたN個のアドレスADD_1〜ADD_N−1と同一な類似アドレス領域に属するが(すなわち、先で使用されたN個のアドレスADD_1〜ADD_N−1と同一のオンチップメモリ140のアドレス領域にマッピングされるが)先で使用されたN個のアドレスADD_1〜ADD_N−1とは各々異なるアドレス値を有する。
その結果、オンチップメモリ140に貯蔵されていたテストパターン0はデータキャッシュ110のセット0に満たされるようになり、セット0に貯蔵されていたテストパターン1(Pattern1)はオンチップメモリ140にキャストアウトされる。そして、オンチップメモリ140に貯蔵されていたテストパターン1はデータキャッシュ110のセット1に満たされるようになり、セット1に貯蔵されていたテストパターン2(Pattern2)はオンチップメモリ140にキャストアウトされる。すなわち、データキャッシュ110にリードミスが発生されるごとにテストパターンi−1(Patterni−1)がラインフィルされ、テストパターンi(Patterni)がキャストアウトされる。そして、N個のアドレスADD_N〜ADD_2N−1の各々に対してラインフィルされるテストパターンi−1とキャストアウトされるテストパターンiが一致するか否かが判別される(1550段階)。
1550段階での比較結果、ラインフィルされるテストパターンi−1とキャストアウトされるテストパターンiが互いに一致しなければ、該当のキャッシュ110に不良が発生したと判定する。そして、ラインフィルされるテストパターン i−1とキャストアウトされるテストパターンiが互いに一致すれば、該当のキャッシュ110は正常であると判別する。以上で説明した実速度テスト方法は、テストに使用されたデータキャッシュ110はライトバックキャッシュ(write−back cache)であり、リードミス時、ラインフィルの内容が修正されたダーティーコピー(dirty copy)のキャストアウトより優先し、テストプログラムは命令語キャッシュ(instruction cache)に全部ローディングされているという仮定下で実行される。
上述のように、本発明によるデータキャッシュの実速度テスト方法はデータキャッシュ110がN個のアドレス領域を有する場合、2N個のアドレス領域をオンチップメモリ140のアドレス領域にデコーディングする。そしてN個のアドレスADD_1〜ADD_N−1を利用してデータキャッシュ110に対するN回のリード−ミス(read−miss)とN回の書き込み−ミス(write−miss)に対するテストを実行し、残りのN個のアドレスADD_N〜ADD_2N−1を利用してデータキャッシュ110に対するラインフィルおよびキャストアウト動作に対するテストを実行する。その結果、データキャッシュ110より小さいサイズを有するオンチップメモリ140を有してもデータキャッシュ110を十分にテストすることができるようになる。
以上では、本発明による回路の構成および動作を上述の説明および図に従って示したがこれは例をあげて説明したことに過ぎず、本発明の技術的思想を逸脱しない範囲内で多様な変化および変更が可能であることはもちろんである。
本発明はまたコンピュータで読み出すことができる記録媒体にコンピュータが読み出すことができるコードとして実現可能である。コンピュータが読み出す記録媒体はコンピュータシステムによって読み出されることができるデータが貯蔵されるすべての種類の記録装置を含む。コンピュータが読み出すことができる記録媒体の例としてはROM、RAM、CD−ROM、磁気テープ、フロッピー(登録商標)ディスク、光データ貯蔵装置などがあり、またキャリアウエーブ(例えばインターネットを通じた伝送)の形態に実現されることも含む。また、コンピュータが読み出すことができる記録媒体はネットワークで連結されたコンピュータシステムに分散されて、分散方式によってコンピュータが読み出すことができるコードに貯蔵されて実行されることができる。
本発明が適用される半導体集積回路のブロック図である。 図1に示したデータキャッシュの構造を示す図である。 図2に示した構造を有するデータキャッシュのキャッシュミス発生例を示す図である。 図1に示した類似アドレスデコーダのアドレスデコーディング例を示す図である。 図1に示した類似アドレスデコーダのアドレスデコーディング例を示す図である。 最小メモリサイズのオンチップメモリに対する類似アドレス領域の構成を示す図である。 本発明の望ましい実施形態によるデータキャッシュの実速度テスト方法を概略的に示す図である。 本発明の望ましい実施形態によるデータキャッシュの実速度テスト方法の詳細流れ図である。
符号の説明
100 半導体集積回路
110 データキャッシュ
120 中央処理装置CPU
140 オンチップメモリ
160 類似アドレスデコーダ

Claims (27)

  1. 第1データ貯蔵領域を有するデータキャッシュと、
    前記データキャッシュの前記第1データ貯蔵領域より小さい第2データ貯蔵領域を有し、テストデータを貯蔵するオンチップメモリと、
    前記オンチップメモリに貯蔵された前記テストデータに対するアクセスが要求されるとき、前記第1データ貯蔵領域が前記第2貯蔵領域にマッピングされるようにアドレスをデコーディングするアドレスデコーダとを含むことを特徴とする半導体集積回路。
  2. 前記アドレスデコーダは前記データキャッシュがN個のアドレスに該当される前記第1データ貯蔵領域を有する場合に、2N個のアドレスが前記オンチップメモリの前記第2データ貯蔵領域にマッピングされるようにアドレスをデコーディングすることを特徴とする請求項1に記載の半導体集積回路。
  3. 前記アドレスデコーダは前記データキャッシュのアドレスビットのうちの少なくとも一つの以上のビットをアドレスデコーディングに影響を与えないドントケアアドレスビットに割り当てることを特徴とする請求項1に記載の半導体集積回路。
  4. 前記データキャッシュが2個のセットを有し、各々のセットが2個のブロックを有し、一つのキャッシュブロックサイズが2バイトであり、全体キャッシュサイズが2(s+b+n)バイトであり、前記オンチップメモリが単一セットサイズに該当される2(s+b)バイトのアドレス領域を有する場合に、
    前記アドレスデコーダは前記ドントケアアドレスビットにn+1ビットを割り当てることを特徴とする請求項3に記載の半導体集積回路。
  5. 前記データキャッシュが2個のセットを有し、各々のセットが2個のブロックを有し、一つのキャッシュブロックサイズが2バイトであり、全体キャッシュサイズが2(s+b+n)バイトであり、前記オンチップメモリが単一ブロックサイズに該当される2バイトのアドレス領域を有する場合に、
    前記アドレスデコーダは前記ドントケアアドレスビットにn+s+1ビットを割り当てることを特徴とする請求項3に記載の半導体集積回路。
  6. 前記ドントケアアドレスビットのビット数は前記オンチップメモリのアドレス領域の大きさが小さくなるほど大きくなることを特徴とする請求項5に記載の半導体集積回路。
  7. 前記ドントケアアドレスビットのビット数は前記アドレスデコーダでデコーディングされたアドレス領域のサイズと前記オンチップメモリのアドレス領域のサイズとの和が前記データキャッシュのアドレス領域のサイズより大きい値を有するように決められることを特徴とする請求項6に記載の半導体集積回路。
  8. データキャッシュのデータ貯蔵領域が前記データキャッシュより小さいデータ貯蔵領域を有するオンチップメモリにマッピングされるようにアドレスをデコーディングし、前記オンチップメモリに貯蔵されたテストデータを利用して前記デコーディングされたアドレス別に前記データキャッシュに対するリード−ミス、書き込み−ミス、およびラインフィルおよびキャストアウト動作を実行する半導体集積回路と、
    前記半導体集積回路の外部で前記データキャッシュの動作実行の結果を受け入れて前記データキャッシュの欠陥の可否を分析するテスト回路とを含むことを特徴とする半導体集積回路のための実速度テストシステム。
  9. 前記半導体集積回路は前記オンチップメモリに貯蔵されている第1テストデータを読み出して前記データキャッシュのN個の互いに異なるアドレスに対してN回のラインフィルを実行し、
    前記データキャッシュの前記N個のアドレスの各々に対して互いに異なる値を有する第2テストデータを書き込み、
    前記データキャッシュの前記N個のアドレスとは異なる値を有するN個のアドレスの各々に対して、前記オンチップメモリに貯蔵されている前記第1テストデータを読み出して前記データキャッシュの該当のアドレスに新しい第2テストデータに貯蔵するラインフィルを実行し、前記ラインフィルが実行される間前記データキャッシュの前記アドレスに貯蔵されていた以前の第2テストデータをキャストアウトして前記オンチップメモリに新しい第1テストデータに貯蔵することを特徴とする請求項8に記載の半導体集積回路のための実速度テストシステム。
  10. 前記第2テストデータが書き込まれた前記N個のアドレスと、前記ラインフィルおよび前記キャストアウトに使用された前記N個のアドレスは、前記オンチップメモリの同一のアドレス領域にマッピングされることを特徴とする請求項9に記載の半導体集積回路のための実速度テストシステム。
  11. 前記N個のアドレスのうちのi番目のアドレスに適用されるラインフィルデータと前記 N個のアドレスのうちのi−1番目のアドレスで発生されたキャストアウトデータは互いに同一のデータであることを特徴とする請求項9に記載の半導体集積回路のための実速度テストシステム。
  12. 半導体集積回路に内蔵されたオンチップメモリを利用してデータキャッシュを実速度テストする方法において、
    (a)前記データキャッシュのアドレス領域を前記データキャッシュより小さい前記オンチップメモリのアドレス領域にデコーディングする段階と、
    (b)前記デコーディングされたアドレスに応答して前記オンチップメモリからテストデータを読み出して前記データキャッシュのリード−ミス、書き込み−ミス、ラインフィルおよびキャストアウトをテストする段階とを含むことを特徴とするデータキャッシュの実速度テスト方法。
  13. 前記(a)段階では前記データキャッシュがN個のアドレスを有する場合、2N個のアドレスを前記オンチップメモリのアドレス領域にデコーディングすることを特徴とする請求項12に記載のデータキャッシュの実速度テスト方法。
  14. 前記(a)段階では前記データキャッシュのアドレスビットのうちの少なくとも一つの以上のビットがアドレスデコーディングに影響を与えないドントケアアドレスビットに割り当てられることを特徴とする請求項12に記載のデータキャッシュの実速度テスト方法。
  15. 前記(a)段階では、前記データキャッシュが2個のセットを有し、各々のセットが2個のブロックを有し、一つのキャッシュブロックサイズが2バイトであり、全体キャッシュサイズが2(s+b+n)バイトであり、前記オンチップメモリが単一セットサイズに該当する2(s+b)バイトのアドレス領域を有する場合、
    前記ドントケアアドレスビットにn+1ビットが割り当てられることを特徴とする請求項14に記載のデータキャッシュの実速度テスト方法。
  16. 前記(a)段階では、前記データキャッシュが2個のセットを有し、各々のセットが2個のブロックを有し、一つのキャッシュブロックサイズが2バイトであり、全体キャッシュサイズが2(s+b+n)バイトであり、前記オンチップメモリが単一ブロックサイズに該当する2バイトのアドレス領域を有する場合、
    前記ドントケアアドレスビットにn+s+1ビットが割り当てられることを特徴とする請求項14に記載のデータキャッシュの実速度テスト方法。
  17. 前記ドントケアアドレスビットのビット数は前記オンチップメモリのアドレス領域の大きさが小さくなるほど大きくなることを特徴とする請求項16に記載のデータキャッシュの実速度テスト方法。
  18. 前記ドントケアアドレスビットのビット数は前記(a)段階でデコーディングされたアドレス領域のサイズと前記オンチップメモリのアドレス領域のサイズとの和が前記データキャッシュのアドレス領域のサイズより大きい値を有するように決められることを特徴とする請求項17に記載のデータキャッシュの実速度テスト方法。
  19. 前記(b)段階は
    (b−1)前記オンチップメモリに貯蔵されている第1テストデータを読み出して前記データキャッシュのN個の互いに異なるアドレスに対してN回のラインフィルを実行して前記ラインフィル動作の欠陥の可否を判別する段階と、
    (b−2)前記データキャッシュの前記N個のアドレスの各々に対して互いに異なる値を有する第2テストデータを書き込んで前記書き込み動作の欠陥の可否を判別する段階と、
    (b−3)前記データキャッシュの前記N個のアドレスとは異なる値を有するN個のアドレスの各々に対して、前記オンチップメモリに貯蔵されている前記第1テストデータを読み出して前記データキャッシュの該当のアドレスに新しい第2テストデータに貯蔵するラインフィルを実行し、前記ラインフィルが実行される間前記データキャッシュの前記アドレスに貯蔵されていた以前の第2テストデータをキャストアウトして前記オンチップメモリに新しい第1テストデータに貯蔵して、前記ラインフィルおよびキャストアウト動作の欠陥の可否を判別する段階とを含むことを特徴とする請求項12に記載のデータキャッシュの実速度テスト方法。
  20. 前記実速度テスト方法は、
    前記(b−1)段階の以前に
    (b−1−1)前記データキャッシュをオフする段階と、
    (b−1−2)前記オンチップメモリに前記第1テストデータを貯蔵する段階と、
    (b−1−3)前記データキャッシュをオンする段階とをさらに含むことを特徴とする請求項19に記載のデータキャッシュの実速度テスト方法。
  21. 前記(b−3)段階では前記(b−1)および前記(b−2)段階で使用された前記N個のアドレスと同一な前記オンチップメモリのアドレス領域にマッピングされるN個のアドレスが使用されることを特徴とする請求項19に記載のデータキャッシュの実速度テスト方法。
  22. 前記(b−3)段階では前記N個のアドレスのうちのi番目のアドレスに適用されるラインフィルデータと前記N個のアドレスのうちのi−1番目のアドレスで発生されたキャストアウトデータと同一のデータが使用されることを特徴とする請求項19に記載のデータキャッシュの実速度テスト方法。
  23. 半導体集積回路に内蔵されたオンチップメモリを利用してデータキャッシュを実速度テストする方法において、
    (a)前記データキャッシュのアドレス領域を前記データキャッシュより小さい前記オンチップメモリのアドレス領域にデコーディングする段階と、
    (b)前記デコーディングされたアドレスに応答して前記オンチップメモリからテストデータを読み出して前記データキャッシュに対するリード−ミス、書き込み−ミス、ラインフィルおよびキャストアウト動作を実行し、前記実行結果を前記半導体集積回路の外部のテスト装置に出力する段階と、
    (c)前記テスト装置で前記データキャッシュの動作実行の結果を分析して、前記データキャッシュの欠陥の可否を判断する段階とを含むことを特徴とする半導体集積回路のための実速度テスト方法。
  24. 前記(b)段階は、
    (b−1)前記オンチップメモリに貯蔵されている第1テストデータを読み出して前記データキャッシュのN個の互いに異なるアドレスに対してN回のラインフィルを実行する段階と、
    (b−2)前記データキャッシュの前記N個のアドレスの各々に対して互いに異なる値を有する第2テストデータを書き込む段階と、
    (b−3)前記データキャッシュの前記N個のアドレスとは異なる値を有するN個のアドレスの各々に対して、前記オンチップメモリに貯蔵されている前記第1テストデータを読み出して前記データキャッシュの該当のアドレスに新しい第2テストデータに貯蔵するラインフィルを実行し、前記ラインフィルが実行される間前記データキャッシュの前記アドレスに貯蔵されていた以前の第2テストデータをキャストアウトして前記オンチップメモリに新しい第1テストデータに貯蔵する段階とを含むことを特徴とする請求項23に記載の半導体集積回路のための実速度テスト方法。
  25. 前記第2テストデータが書き込まれた前記N個のアドレスと、前記ラインフィルおよび前記キャストアウトに使用された前記N個のアドレスは、前記オンチップメモリの同一のアドレス領域にマッピングされることを特徴とする請求項24に記載の半導体集積回路のための実速度テスト方法。
  26. 前記N個のアドレスのうちのi番目のアドレスに適用されるラインフィルデータと前記N個のアドレスのうちのi−1番目のアドレスで発生されたキャストアウトデータは互いに同一のデータであることを特徴とする請求項24に記載の半導体集積回路のための実速度テスト方法。
  27. 第12項乃至第26項のうちのいずれか一項の方法をコンピュータで実行させるためのプログラムを記録したコンピュータで読み出すことができる記録媒体。
JP2005162840A 2004-06-14 2005-06-02 データキャッシュが内蔵された半導体集積回路およびそれの実速度テスト方法 Expired - Fee Related JP4833586B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020040043646A KR101014413B1 (ko) 2004-06-14 2004-06-14 데이터 캐쉬가 내장된 반도체 집적회로 및 그것의앳-스피드-테스트 방법
KR2004-043646 2004-06-14

Publications (2)

Publication Number Publication Date
JP2006004419A true JP2006004419A (ja) 2006-01-05
JP4833586B2 JP4833586B2 (ja) 2011-12-07

Family

ID=35460344

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005162840A Expired - Fee Related JP4833586B2 (ja) 2004-06-14 2005-06-02 データキャッシュが内蔵された半導体集積回路およびそれの実速度テスト方法

Country Status (3)

Country Link
US (1) US7173839B2 (ja)
JP (1) JP4833586B2 (ja)
KR (1) KR101014413B1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7564380B2 (en) * 2007-08-02 2009-07-21 General Electric Company Systems and methods for storing test data and accessing test data
US9037928B2 (en) * 2012-01-01 2015-05-19 Mosys, Inc. Memory device with background built-in self-testing and background built-in self-repair
CN104412327B (zh) * 2013-01-02 2019-02-12 默思股份有限公司 内建自测试以及修复装置及方法
CN103440186B (zh) * 2013-07-22 2017-02-22 记忆科技(深圳)有限公司 测试缓存加速的方法及其系统
US10176099B2 (en) * 2016-07-11 2019-01-08 Intel Corporation Using data pattern to mark cache lines as invalid

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05342104A (ja) * 1992-06-12 1993-12-24 Fujitsu Ltd キャッシュメモリの診断方法
JPH0689199A (ja) * 1992-09-09 1994-03-29 Fujitsu Ltd キャッシュ機能診断方法
JPH0764863A (ja) * 1993-08-30 1995-03-10 Nec Shizuoka Ltd キャッシュメモリの自動判定方式
JPH10260910A (ja) * 1997-03-13 1998-09-29 Internatl Business Mach Corp <Ibm> メモリ・チェック・テスト実行方法及び記憶媒体
JPH1139228A (ja) * 1997-07-15 1999-02-12 Pfu Ltd キャッシュメモリ置き換え制御機構の診断方法およびその診断装置並びに記録媒体
JP2002367395A (ja) * 2001-06-04 2002-12-20 Fujitsu Ltd Tag−ram試験方法およびそのための装置
JP2003139818A (ja) * 2001-10-30 2003-05-14 Hitachi Ltd 半導体集積回路及び半導体集積回路のテスト方法
JP2003229000A (ja) * 2001-12-26 2003-08-15 Arm Ltd メモリ自己テストの方法と装置
JP2005309787A (ja) * 2004-04-21 2005-11-04 Nec Electronics Corp 中央演算処理装置及びマイクロコンピュータ

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4167782A (en) * 1977-12-22 1979-09-11 Honeywell Information Systems Inc. Continuous updating of cache store
US4575792A (en) 1982-03-31 1986-03-11 Honeywell Information Systems Inc. Shared interface apparatus for testing the memory sections of a cache unit
JP3139818B2 (ja) 1992-03-30 2001-03-05 日本碍子株式会社 固体の水分定量における正確さの検証方法
US6199142B1 (en) 1996-07-01 2001-03-06 Sun Microsystems, Inc. Processor/memory device with integrated CPU, main memory, and full width cache and associated method
US5974579A (en) * 1996-09-03 1999-10-26 Credence Systems Corporation Efficient built-in self test for embedded memories with differing address spaces
US6161206A (en) 1998-04-30 2000-12-12 Credence Systems Corporation Pattern generator for a semiconductor integrated circuit tester
US6748558B1 (en) * 2000-05-10 2004-06-08 Motorola, Inc. Performance monitor system and method suitable for use in an integrated circuit

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05342104A (ja) * 1992-06-12 1993-12-24 Fujitsu Ltd キャッシュメモリの診断方法
JPH0689199A (ja) * 1992-09-09 1994-03-29 Fujitsu Ltd キャッシュ機能診断方法
JPH0764863A (ja) * 1993-08-30 1995-03-10 Nec Shizuoka Ltd キャッシュメモリの自動判定方式
JPH10260910A (ja) * 1997-03-13 1998-09-29 Internatl Business Mach Corp <Ibm> メモリ・チェック・テスト実行方法及び記憶媒体
JPH1139228A (ja) * 1997-07-15 1999-02-12 Pfu Ltd キャッシュメモリ置き換え制御機構の診断方法およびその診断装置並びに記録媒体
JP2002367395A (ja) * 2001-06-04 2002-12-20 Fujitsu Ltd Tag−ram試験方法およびそのための装置
JP2003139818A (ja) * 2001-10-30 2003-05-14 Hitachi Ltd 半導体集積回路及び半導体集積回路のテスト方法
JP2003229000A (ja) * 2001-12-26 2003-08-15 Arm Ltd メモリ自己テストの方法と装置
JP2005309787A (ja) * 2004-04-21 2005-11-04 Nec Electronics Corp 中央演算処理装置及びマイクロコンピュータ

Also Published As

Publication number Publication date
JP4833586B2 (ja) 2011-12-07
US20050276087A1 (en) 2005-12-15
US7173839B2 (en) 2007-02-06
KR20050118515A (ko) 2005-12-19
KR101014413B1 (ko) 2011-02-15

Similar Documents

Publication Publication Date Title
Shirvani et al. PADded cache: a new fault-tolerance technique for cache memories
US8230179B2 (en) Administering non-cacheable memory load instructions
US6848024B1 (en) Programmably disabling one or more cache entries
KR100372293B1 (ko) 가상및물리인덱스캐시에서가상번지용캐시가능속성
US7343455B2 (en) Cache mechanism and method for avoiding cast out on bad victim select and recycling victim select operation
US20060117129A1 (en) High speed DRAM cache architecture
JP4218820B2 (ja) ダイレクトマップドキャッシュとフルアソシアティブバッファとを含んだキャッシュシステム、その制御方法及び記録媒体
US7831774B2 (en) Pipelining D states for MRU steerage during MRU-LRU member allocation
US7222217B2 (en) Cache residency test instruction
US6226763B1 (en) Method and apparatus for performing cache accesses
JP4833586B2 (ja) データキャッシュが内蔵された半導体集積回路およびそれの実速度テスト方法
US6240489B1 (en) Method for implementing a pseudo least recent used (LRU) mechanism in a four-way cache memory within a data processing system
US6510506B2 (en) Error detection in cache tag array using valid vector
US6240532B1 (en) Programmable hit and write policy for cache memory test
US7089397B1 (en) Method and system for caching attribute data for matching attributes with physical addresses
JP2006040176A (ja) キャッシュメモリ装置およびメモリ制御方法
US7987320B2 (en) Cache mechanism and method for avoiding cast out on bad victim select and recycling victim select operation
US7302530B2 (en) Method of updating cache state information where stores only read the cache state information upon entering the queue
KR100833178B1 (ko) 캐시 메모리에 저장되는 블록개수를 제어할 수 있는 캐시메모리 시스템 및 동작 방법
US20060143397A1 (en) Dirty line hint array for cache flushing
US6968427B1 (en) Built-in self test circuit for testing cache tag array and compare logic
US6694468B1 (en) Method and apparatus to test memory
US20240054072A1 (en) Metadata-caching integrated circuit device
KR20040047398A (ko) 캐쉬 메모리를 이용한 데이터 억세스 방법
KR19990068873A (ko) 캐쉬 메모리

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080528

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110531

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110729

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: 20110823

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110922

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140930

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees