JP2008519457A - 値域を用いた適応性メモリ較正 - Google Patents

値域を用いた適応性メモリ較正 Download PDF

Info

Publication number
JP2008519457A
JP2008519457A JP2007540150A JP2007540150A JP2008519457A JP 2008519457 A JP2008519457 A JP 2008519457A JP 2007540150 A JP2007540150 A JP 2007540150A JP 2007540150 A JP2007540150 A JP 2007540150A JP 2008519457 A JP2008519457 A JP 2008519457A
Authority
JP
Japan
Prior art keywords
delay
integrated circuit
clock
external clock
range
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
JP2007540150A
Other languages
English (en)
Other versions
JP4842958B2 (ja
Inventor
パテル、ジャグルット・ビリスクマー
ブラード、グレゴリー
カプア、サナト
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2008519457A publication Critical patent/JP2008519457A/ja
Application granted granted Critical
Publication of JP4842958B2 publication Critical patent/JP4842958B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/3193Tester hardware, i.e. output processing circuits with comparison between actual response and known fault free response
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/3193Tester hardware, i.e. output processing circuits with comparison between actual response and known fault free response
    • G01R31/31937Timing aspects, e.g. measuring propagation delay
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/022Detection or location of defective auxiliary circuits, e.g. defective refresh counters in I/O circuitry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • 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/50Marginal testing, e.g. race, voltage or current 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
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50012Marginal testing, e.g. race, voltage or current testing of timing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2254Calibration
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/04Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Read Only Memory (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

【解決手段】電子デバイスは、電子部品と集積回路とを備える。集積回路は、システムクロックと、前記システムクロックからプログラム可能な遅延を有する外部クロックとを生成し、前記外部クロックを前記電子部品に提供し、前記集積回路と電子部品とが通信可能な、外部クロックとシステムクロックとの間の遅延範囲を決定し、前記遅延範囲に基づいて、予め定めた複数の遅延値のうちの1つを用いて、前記外部クロックをプログラムするように構成されている。
【選択図】 図4

Description

本開示は、集積回路を電子部品に較正するためのシステム及び技術に関する。
集積回路は、ディスクリートデバイスで可能ではなかった新たな用途を可能にすることによって、エレクトロニクス産業を革新した。集積化によって、何百万もの電子部品から成る複雑な回路を、シングルチップの半導体材料へパッケージすることが可能となった。更に、集積化は、単一のシリコンウェハ上に、何百ものチップを製造するという利点を与える。これは、完成した回路の各々のコストを大幅に低減し、かつその信頼性を高める。
集積回路は、例えば汎用目的及び特定用途のプロセッサのような精巧な回路を実装するために、今日、電子デバイスにおいて広く使用されている。チップ上に統合されたコントローラは、例えば外部メモリ等のようなオフチップ部品に様々なプロセッサをインタフェースさせるために使用されうる。コントローラによって生成されるクロックは、これらオフチップ部品にアクセスするために使用されうる。これらクロックは、最悪ケースの温度及び電圧条件の下でコントローラがオフチップ部品と通信できることを保証するために、ある許容差内で、特定の公称速度で動作すべきである。
シリコンウェハ製造処理における固有の処理により、単一のウェハから生成されたチップのセットは、異なる処理速度能力の範囲に陥るかもしれない。用途によって、幾つかの製造者は、公称許容範囲外の低速チップ及び高速チップを廃棄するように強いられうる。これは、大量の無駄をもたらし、コスト的にも非常に無駄である。
公称チップを製造しないウェハの一部を持ち続けようとする際、幾つかの製造者は、速度ビニング方法を適用する。ここでは、単一ウェハから製造された様々なチップが、等級付けられた(graded)処理速度に従ってテストされバッチされる。速度に従ってチップをバッチするこの方法は、時間の浪費であり、コストがかかる。割引価格で低速チップ及び高速チップを販売すると、更なるコストを招く。
遅延は、電子デバイスを構築する集積回路と外部部品との間の誤りのない通信を保証するために必要とされるタイミングを実現するために使用される。遅延は、集積回路の速度と電圧、及び外部部品の速度を含む多くの要因の関数である。これら遅延は、例えば、そのような通信をテストし、このテストの結果から遅延を導出する較正処理を用いて決定される。多くの集積回路及び外部部品にわたるそのようなパラメータの変化は、所定の電子デバイスに最適ではない予め定めた遅延となりうる。しかし、各集積回路の実際の速度と電圧、あるいは外部部品の速度を前もって知ることは現実的ではない。従って、チップメーカは、そのように予め定めた遅延が、多くの電子デバイスに最適ではなくても、そのようなパラメータの予測される範囲にわたって、誤りなく動作するプログラム遅延を決定することを受け入れなければならなかった。
本特許出願は、本明細書の譲受人に譲渡され、本明細書に参照によって明確に組み込まれた2004年11月5日出願の「Adaptive Memory Calibration Using Bins」と題された仮出願60/625,229号の優先権を主張する。
本発明の1つの局面では、電子デバイスは、電子部品と集積回路とを備える。集積回路は、システムクロックと、前記システムクロックからプログラム可能な遅延を有する外部クロックとを生成するように構成されている。この集積回路は更に、外部クロックを電子部品に提供し、集積回路と電子部品とは通信することができる、システムクロックと外部クロックとの間の遅延範囲を決定し、遅延範囲に基づいて、予め定めた複数の遅延値のうちの1つを用いて、外部クロックをプログラムするように構成されている。
本発明の別の局面では、システムクロックを有する集積回路を電子部品へ較正する方法は、集積回路に外部クロックを生成することを含む。この外部クロックは、システムクロックからプログラム可能な遅延を有する。この方法は更に、集積回路から電子部品へ外部クロックを提供し、それらの間の通信をサポートすることと、集積回路と電子部品とが通信することができる、システムクロックと外部クロックとの間の遅延範囲を決定することと、この遅延範囲に基づいて、予め定めた複数の遅延値のうちの1つを用いて、外部クロックをプログラムすることとを含む。
また本発明の別の局面では、電子デバイスは、電子部品と集積回路とを備える。この集積回路は、システムクロックを生成する手段と、システムクロックからプログラム可能な遅延を有する外部クロックを集積回路に生成する手段と、集積回路から電子部品へ外部クロックを提供し、それらの間の通信をサポートする手段と、集積回路と電子部品とが通信することができる、システムクロックと外部クロックとの間の遅延範囲を決定する手段と、この遅延範囲に基づいて、予め定めた複数の遅延値のうちの1つを用いて、外部クロックをプログラムする手段とを備える。
本発明の別の局面では、コンピュータ読取可能媒体が、プロセッサによって、集積回路を電子部品へ較正する方法を実行することが可能な命令からなるプログラムを組み込んでいる。この集積回路は、システムクロックと、前記システムクロックからのプログラム可能な遅延を有する外部クロックとを含む。外部クロックは、電子部品に提供され、それらの間の通信をサポートする。この方法は、集積回路と電子部品とが通信することができる、システムクロックと外部クロックとの間の遅延範囲を決定することと、この遅延範囲に基づいて、予め定めた複数の遅延値のうちの1つを用いて、外部クロックをプログラムすることとを含む。
本発明の様々な実施形態が示され、例示によって説明された以下の詳細記載から、本発明の他の実施形態が、当業者に容易に明らかになるであろうことが理解される。理解されるように、本発明は、本発明の精神及び範囲から逸脱することなく、その他の異なる実施形態を実施することができ、その幾つかの詳細が、他の様々な観点において変更することが可能である。従って、図面及び詳細説明は、本質的な例示として見なされるべきであり、限定と見なされるべきではない。
本発明の局面は、添付図面中において、一例として例示され、限定として例示されない。
添付図面に関連して以下に記載される詳細記述は、本発明の様々な実施形態の説明として意図されており、本発明が実現される唯一の実施形態を表すことを意図していない。詳細説明は、本発明の完全な理解を提供する目的で具体的な詳細を含んでいる。しかしながら、本発明が、これら具体的な詳細無しで実現されうることが、当業者にとって明らかであろう。幾つかの実例では、本発明の概念を不明瞭にしないために、周知の構造及びデバイスが、ブロック図形式で示される。単に便宜性及び明確性のために頭辞語及びその他の記述的用語が使用されうるが、本発明の範囲を制限することを意図してはいない。
次の詳細説明では、本発明の様々な局面が、例えば記憶デバイスのような電子部品に接続されるように構成された集積回路に関して記述されうる。集積回路は、例えば、少なくとも1つのプロセッサを含む特定用途向けIC(ASIC)でありうる。記憶デバイスは、例えば、シンクロナスDRAM(SDRAM)又は同様のデバイスでありうる。これら発明的局面が、これら部品とともに使用するのに好適でありうる一方、当業者であれば、これら発明的局面は、その他様々な電子デバイスにも同様に適用可能であることを容易に理解するであろう。従って、そのような発明的局面は広範な用途を持つという理解の下、集積回路又は電子部品(例えば、外部メモリ又はオフチップメモリ)の具体的種類に対するあらゆる参照は、この発明的局面を例示することのみ意図されている。
図1は、ASICのような集積回路102を使用する電子デバイス100の概念ブロック図である。集積回路102は、マイクロプロセッサ104、デジタル信号プロセッサ(DSP)106、トランシーバ108、入力/出力(I/O)インタフェース110、及び外部バスインタフェース(EBI)112を含みうる。これら部品は全て、内部システムバス(ISB)114を用いて共に接続されうる。クロックジェネレータ116は、システムタイミング用のシステムクロック信号(又は「システムクロック」)を生成するために使用されうる。図1は、電子デバイス100、又はその部品のどのような具体的な物理的レイアウトをも必要とすると解釈されるべきではない。
マイクロプロセッサ104は、電子デバイス100のためのシステム全体の管理機能と、ユーザ制御とを提供するアプリケーションプログラムを実行するためのプラットフォームとして使用されうる。DSP106は、マイクロプロセッサ104上の処理デマンドを低減するために、アプリケーション特有のアルゴリズムを実行する組込式通信ソフトウェアレイヤを用いて実現されうる。マイクロプロセッサ104及びDSP106の何れか一方、又はその両方もまた、ここに記載したアルゴリズムを実行するために使用される。トランシーバ108は、無線電話、端末、例えば携帯情報端末又は他の類似のデバイスのような電子メールデバイス又はWeb対応デバイスの場合におけるラジオリンクのような外部媒体へのアクセスを提供するために使用されうる。幾つかの実施形態では、トランシーバ108は、イーサネット(登録商標)、ケーブルモデム線、光ファイバ、デジタル加入者回線(DSL)、公衆交換電話網(PSTN)、あるいはその他の通信媒体へのアクセスを提供しうる。他の実施形態では、電子デバイスは、トランシーバの無い独立型であり、外部通信をサポートしうる。I/Oインタフェース110は、様々なユーザインタフェースをサポートするために使用されうる。ユーザインタフェースは、キーパッド、マウス、タッチスクリーン、オーディオスピーカ又はヘッドセット、マイクロホン、カメラ等を含みうる。
EBI112は、ISB114の上の部品間のアクセスを提供するために使用されうる。EBI112は、ISB114と、例えば外部部品118のような1又は複数のオフチップ部品のような集積回路102の外部部品との間のインタフェースを提供するコントローラ113を含みうる。インタフェースは、クロックバス120、アドレスバス122、制御バス124、及びデータバス126を含みうる。図示していないが、EBI112は更に、液晶ディスプレイ(LCD)及び/又はその他のユーザインタフェースデバイスへインタフェースを供給しうる。
電子デバイス100の少なくとも1つの実施形態では、外部部品118は、SDRAMのようなメモリでありうる。あるいは、この外部部品は、バーストNOR、バーストPSRAM、RAM、ROM、EPROM、EEPROM、VRAM、あるいは他のメモリ部品又はデバイス、あるいはメモリアレイでありうる。前述した何れの場合においても、コントローラ113は、クロックジェネレータ116から、システムクロックの関数として、フィードバッククロック信号(あるいは「フィードバッククロック」)、及び外部クロック信号(あるいは「外部クロック」)を生成するために使用されうる。外部クロックは、以降SDRAM118として示す外部部品118との読み書きのために、クロックバス120によって外部部品118へ提供される。フィードバッククロックは、SDRAM118から読まれるデータをサンプルするために、コントローラ113によって使用されうる。
SDRAM118に書き込むためのタイミング要求の一例が図2に示される。外部クロック204によって表される外部クロックは、システムクロック202によって表されるシステムクロックから遅れる。SDRAM118に書き込まれるデータは、データ206(又はデータ信号)によって表され、システムクロックの遷移直後に、時間tにおいて、コントローラ113からデータバス120(図1参照)へリリースされる。システムクロックの遷移と、tとの間の短い遅延210は、コントローラ113の伝播遅延による。データバス120(図1参照)は、追加伝搬遅延を加えることにより、データ206を、時間tにおけるSDRAMへの入力時に到着させる。SDRAMへの入力データは、図2において、データ206のクロスハッチングで示される。
信頼できる動作を保証するために、データ206は、外部クロック遷移前の短時間の間、SDRAM118への入力時において安定していなければならない。これは「最小セットアップ時間」と呼ばれ、図2においてtset−upと示される。また、データ206が、外部クロック遷移に続いて、すなわち、tset−up後に安定を維持しなければならない期間が存在する。これは「最小ホールド時間」と呼ばれ、図2においてtholdと示される。最小セットアップ時間及び最小ホールド時間が満足されない場合、SDRAMへの書込動作は保証されない。従って、図2より、最小セットアップ時間を満足するために、システムクロック202と外部クロック204との間に最小遅延要求が存在すること、及び最小ホールド時間を満足するために、これら2つの間に最大遅延が存在することが容易に理解される。遅延はプログラム可能かもしれないし、外部クロック204の影部分208によって図2に示すように、これらの境界の間の任意の場所に設定することもできる。
SDRAM118からの読取タイミング要求の一例を図3に示す。図2に関して以前に説明したように、外部クロック204は、システムクロック202から遅れうる。フィードバッククロック302もまた、図3に示すように、システムクロック202から遅れうる。フィードバッククロック302は、SDRAM118からコントローラ113にデータを読み取るために使用されうる。データ206は、外部クロック204の遷移後直ちに、時間tにおいて、SDRAM118からデータバス120(図1参照)へリリースされうる。SDRAM118及びデータバス120(図1参照)の伝播遅延により、データ206は、時間tにおいて、コントローラ113への入力時に到着する。コントローラ113への入力時におけるデータ(データ206のクロスハッチングによって示される)は、フィードバッククロック遷移前の短期間の間、安定を保たねばならない。この期間は、コントローラ113の最小セットアップ時間tset−upによって定義される。データ206はまた、フィードバッククロック302遷移の後、コントローラ113の最小ホールド時間tholdによって定義される期間の間、安定を保たねばならない。このデータが一旦、フィードバッククロック302の遷移とともにコントローラ113に読み取られると、システムクロックによって再サンプルされうる。この再サンプル処理は、最小セットアップ時間を含むそれ自身の要求を持ち、サンプルされたデータは、システムクロック202の次の遷移の前、安定を保たねばならない。従って、図3より、最小セットアップ時間を満足するために、システムクロック202とフィードバッククロック302との間に最小遅延要求が存在すること、及び最小ホールド時間と再サンプリングセットアップ時間を満足するために、これら2つの間に最大遅延が存在することが容易に理解される。遅延はコントローラ113内でプログラム可能かもしれないし、影部分304によって図3に示すように、これらの境界の間の任意の場所に設定することもできる。
図4は、コントローラ113の実施形態の機能ブロック図である。図示する実施形態では、コントローラ113は、同期コントローラ402及び非同期コントローラ404に分割されうる。この分割は単に設計上の選択であり、当業者であれば、本開示の全体にわたって記載された様々な機能を実行するために任意の構成が適用されうることを理解するであろう。コントローラ402,404は、アドレスバス122、制御バス124、及びデータバス126を、当該技術で周知の手段によってISB114にインタフェースする。
コントローラ113は、外部クロック204及びフィードバッククロック302を生成するために使用されうる。マルチプレクサ408は、データ206が同期コントローラ又は非同期コントローラからクロック出力されるかに依存して、適切なシステムクロック202を選択するために使用されうる。図示された実施形態では、マルチプレクサ408は、SDRAM118にインタフェースするために、同期コントローラ402によって使用されるシステムクロックを選択するように設定される。排他的ORゲート410は、反転又は非反転のシステムクロック202を出力に提供することによって、柔軟性を備えるために使用されうる。プログラム可能な遅延セル412が、外部クロック204の遅延を設定するために使用されてもよい。外部クロックの遅延と同様に、マルチプレクサ及び排他的ORゲート制御は、例えば、マイクロプロセッサ104上で実行するソフトウェア、あるいはその他任意の手段によってプログラムされうる。バスドライバ414は、SDRAM118へ外部クロック204を提供するために使用されうる。
フィードバッククロック302は、システムクロック202あるいは外部クロック204の何れかから生成されうる。両クロックは、ソフトウェアプログラマに対して幾つかの多用途性を提供するために、マルチプレクサ416に提供される。説明した実施形態では、選択されたシステムクロックは、排他的ORゲート418に供給されうる。排他的ORゲート418によって、反転クロック又は非反転クロックの何れかが使用されるようになる。プログラム可能な遅延セル420が、フィードバッククロックを遅延させるために使用されうる。そして、フィードバッククロック302は、コントローラ402,404にフィードバックされうる。フィードバッククロックの遅延と同様に、マルチプレクサ及び排他的ORゲート制御も、マイクロプロセッサ104上で動作するソフトウェア、あるいはその他任意の手段によってプログラムされうる。
既に説明したように、コントローラ113及びSDRAM118によって課せられるあるタイミング制約は、外部クロック及びフィードバッククロックのための可能な遅延設定を制限しうる。例えば、外部クロックの遅延設定は、SDRAM118のための最小セットアップ時間と最小ホールド時間によって制約されうる。同様に、フィードバッククロックの遅延設定は、コントローラ113のための最小セットアップ時間、最小ホールド時間、及び再サンプリングセットアップ時間によって制約されうる。これらのタイミング制約は、処理、電圧、および温度(PVT)に応じて変わる場合がある。
集積回路へプログラムされた較正アルゴリズムは、デバイス単位ベースで遅延セルをプログラムするために使用されうる。このアプローチは、個々の電子デバイスに最適なクロック設定を提供しうる。較正アルゴリズムは、電子デバイスの起動の際、あるいは動作中定期的に、フィールド内でイネーブルされる。較正アルゴリズムは、メモリ内にプログラムされた統計情報に部分的に依存しうる。この統計情報は、工場において、電子デバイスの十分なサンプルをテストすることにより得られたデータの収集から導かれうる。この処理は、「キャラクタリゼーション処理」と呼ばれるだろう。
キャラクタリゼーション処理は、電子デバイスのサンプルについてのフィードバッククロックと外部クロックとの間の遅延(K)の計算で始まる。図3に戻って示すように、読取動作の場合、コントローラ113のセットアップ時間tset−upは、フィードバッククロックの遷移に対する、外部クロックの遷移からの遅延に基づくことが容易に分かるであろう。また、ホールド時間tholdは、外部クロックの次の遷移に対する、フィードバッククロックの遷移からの遅延に基づくことも分かる。従って、外部クロックとフィードバッククロックとの間の遅延が短縮される場合、セットアップ時間tset−upは減少し、ホールド時間thold増加する。反対に、外部クロックとフィードバッククロックとの間の遅延が増加する場合、セットアップ時間tset−upは増加し、ホールド時間tholdは減少する。従って、キャラクタリゼーション処理の最初のステップは、電子デバイスのサンプルについて、最悪ケースの最小のセットアップ時間及びホールド時間を満足する外部クロックと、フィードバッククロックとの間の遅延を計算することであろう。
フィードバッククロックデバイスと外部クロックデバイスとの間の遅延は、読取動作中、コントローラの最小のセットアップ時間及びホールド時間を満足するように設定されると仮定すると、読取動作の失敗又は成功は、最小の再サンプリングセットアップ時間tset−upが満足されるかどうかに全て依存するであろう。図3に示すように、システムクロックとフィードバッククロックとの間の遅延が小さい場合、再サンプリングセットアップ時間tset−upは非常に長い。しかしながら、2つのクロック間の遅延が大きくなると、再サンプリングセットアップ時間tset−upは、最小の再サンプリングセットアップ時間tset−upに達するまで減少する。これは、システムクロックとフィードバッククロックとの間の「最大遅延」であり、読取動作を保証することができる。
図2に再び示すように、書込動作の成功又は失敗は、2つのタイミングパラメータ、すなわち、SDRAM118への書込のための最小ホールド時間thold及び最小セットアップ時間tset−upに依存するであろう。しかしながら、実際問題として、最小ホールド時間tholdは、通常は、制限因子ではない。なぜなら、このホールド時間は、クロック周期からセットアップ時間tset−upを引いたものにほぼ等しく、最小のホールド時間tholdよりも極めて大きいからである。従って、SDRAM118の最小セットアップ時間tset−upは、外部クロック(又はフィードバック)とシステムクロックとの間の「最小遅延」を判定し、書込動作を保証することができる。
キャラクタリゼーション処理中、サンプル内の各電子デバイスについてテスト処理が実行され、システムクロックとフィードバッククロックとの間の遅延値の範囲が判定され、コントローラ113は、SDRAM118への書込、及びSDRAM118からの読取をすることができる。この範囲は、コントローラ113の最小再サンプリングセットアップ時間tset−upによって設定された「最大遅延」と、SDRAM118の最小セットアップ時間tset−upによって設定された「最小遅延」とによって境界付けられた連続的な範囲である。このテスト処理は、テスト中の電子デバイスの各々について、フィードバッククロックと外部クロックとの間の計算された遅延を、コントローラ113のプログラム可能な遅延セルにプログラムすることを含みうる。次に、各電子デバイスについて、プログラム可能な遅延セルの調整範囲が、フィードバッククロックと外部クロックとの間の遅延を維持しながら、調整範囲全体にわたってスイープされる。より具体的には、各電子デバイスについて、フィードバッククロックのプログラム可能な遅延セル420が、遅延ゼロに設定され、外部クロックのプログラム可能な遅延セル412が、Kに設定されうる。そして、これらプログラム可能な遅延セルの遅延はともに、インクリメントにより増加されうる。個々のインクリメント遅延について、コントローラ113は、SDRAM118への読み書きを行い、その結果に基づいて、成功又は失敗として、各読取及び書込を分類する。
実際問題として、特定の集積回路の速度、及びSDRAMの速度には変動があり、特定の電子デバイスに対する最適なフィードバッククロック遅延及び外部クロック遅延に悪影響を与えうる。例えば、図5Aおよび図5Bは、キャラクタリゼーション処理中のサンプルからの2つの異なる電子デバイスからのテスト処理結果を示す。図5Aおよび図5Bの各々では、各棒グラフは、それぞれの電子デバイスが動作するフィードバッククロック遅延の範囲を表す。明らかに、集積回路の周波数(すなわち、クロック速度)の相違が、著しく異なるフィードバッククロック遅延要求を生み出しうる。外部クロック遅延は、図5Aおよび図5Bの各々で示されているが、これらの結果は、代わりに、外部クロック遅延について表すこともできる。なぜなら、例示する実施形態では、外部クロックとフィードバッククロックとの間に既知の関係があるからである。
図5Aに示すように、キャラクタリゼーション処理中、電子デバイスのテスト処理は、電子デバイスのための最適な電圧を設定することによって開始されうる。そして、フィードバッククロック遅延がゼロに設定される(nfb=0)。ここで、nfbは、フィードバッククロックについて遅延セルにプログラムされたデジタル値である。更に、外部クロックがKに設定される(next=K)。ここで、nextは、外部クロックについて遅延セルにプログラムされたデジタル値である。これらの条件の下では、データはSDRAMに書き込まれ、次に、SDRAMから読み取られる。読み取られたデータが有効な場合、つまり、誤りがないのであれば、nの値に対して「pass」が記録される。有効でない場合、nの値に対して「fail」が記録される。そして、nの値はインクリメントされ、例えばn=1となる。一方、電圧及び周波数は変わらない。そして、この書込、読取、及びpass/fail記録の各ステップが、新たなnについて実行される。これは、最大値であるn=31まで続けられる。これらの結果は、例えば、図5Aの棒グラフに示される。棒グラフの影部分は、合格(pass)した値を表し、これは、ほぼn=1からn=28までに至る。失敗(fail)した値は、n=1未満か、あるいはn=28より上である。システムクロックとフィードバッククロックとの間の「最小遅延」は、最低合格値(LPV:lowest passing value)と称されうる。システムクロックとフィードバッククロックとの間の「最大遅延」は、最大合格値(HPV:highest passing value)と称されうる。
同じテスト処理が、最適な電圧において、第2の電子デバイスについて行なわれうる。この場合、第2の電子デバイス内の集積回路は、第1のものよりも高速である。この結果は、図5Bの棒グラフに示される。棒グラフの影部分は、合格した値を表わし、これは、ほぼn=4からn=31に至る。失敗した値は、n=4未満、あるいはn=31より上になる。図5A及び図5Bの第1及び第2の電子デバイスの結果を比較すると、高速な集積回路を備えた第2の電子デバイスのフィードバッククロックとシステムクロックとの間の様々なクロック遅延設定は、低速な集積回路を備えた第1の電子デバイスには作用しないことが明らかである。
キャラクタリゼーション処理は、フィードバッククロック遅延解決のより多くの母集団(population)に達するために、多くの電子デバイスについて実施されうる。このデータは、電子デバイスの異なる分類値に対する遅延範囲を決定するために使用されうる。これらの分類は「値域」(bin)と呼ばれ、電子デバイス用の集積回路およびSDRAMの速度に基づく。各値域は、テストされたデバイスの組合せを表しうる。実例となる実施形態では、以下に示すように集積回路とSDRAMとの組み合わせを表す4つの値域が定義されている。(1)低速集積回路と高速SDRAM、(2)低速/公称集積回路と低速SDRAM、(3)高速/公称集積回路と高速SDRAM、(4)高速/公称集積回路と低速SDRAM)。もちろん、その他の組合せも定義することが可能であり、幾つかの値域が定義されうる。
キャラクタリゼーション処理の間、電子デバイスの十分多くのサンプルをテストすることによって、集積回路及びSDRAMの各組み合わせに対する遅延値の分布が生成される。そのような分布から値域が定義されうる。もちろん、値域の幅(すなわち、システムクロックとフィードバッククロックとの間の遅延値の範囲)を決定するために、テストデータに適用されうる多くの周知の統計的アプローチが存在する。十分なテストデータが利用可能ではない場合、値域幅及び対応する遅延を推定するために外挿が使用されうる。
図5Cは、値域1,2,3および4を示す棒グラフ550である。ここでは、各値域は、それぞれ定義された値域幅を持つ。値域1の幅は約4〜8、値域2の幅は約8〜12、値域3の幅は約12〜16、値域4の幅は約16〜20である。各値域内では、システムクロックとフィードバッククロックとの間の遅延設定が選択されうる。この遅延設定は、値域の中心から選択されうる。一例として、低速集積回路と高速SDRAMとを有するものとして特徴付けられた電子デバイスは、値域1として分類される。そして、システムクロックとフィードバッククロックとの間の遅延(すなわち、値域1の中心における遅延値)が6に設定されれば、この電子デバイスは、適切に動作すべきである。この場合、システムクロックと外部クロックとの間の遅延は6+Kになるだろう。約2ナノ秒のセットアップ時間と1ナノ秒のホールド時間を達成するため、Kが4に設定されると、以下に示すような遅延設定が各値域について設定される。値域1→低速集積回路と高速SDRAM、フィードバッククロック遅延=6、外部クロック遅延=10。値域2→低速/公称集積回路と低速SDRAM、フィードバッククロック遅延=10、外部クロック遅延=14。値域3→公称/高速集積回路と高速SDRAM、フィードバッククロック遅延=14、外部クロック遅延=18。値域4→公称/高速集積回路と低速SDRAM、フィードバッククロック遅延=18、外部クロック遅延=22。
キャラクタリゼーション処理中に決定されたクロック設定は、フィードバックデバイスと外部デバイスとの遅延を、デバイスベースでフィールド内に設定するために電子デバイスにプログラムされた適応性較正アルゴリズムによって処理されうる。これらのクロック設定及び値域定義は、電子デバイス内のメモリに格納される。あるいは、適応性較正アルゴリズムに含まれる。
図6は、フィールド内で、特定の電子デバイスと共に使用される適応性較正アルゴリズムを示すフローチャート600を提供する。本明細書で説明した他の全てのアルゴリズム、処理、及び方法とともに、この適応性較正アルゴリズム700は、ソフトウェア、ハードウェア、ファームウェア、又はこれら任意の組み合わせで具体化されうる。適応性較正アルゴリズム600は、図5Aおよび図5Bの棒グラフの決定のための上述したものと類似している。適応性較正アルゴリズム600は、電子デバイス100の最初の起動時に実行されうる。適応性較正アルゴリズム600はまた、次の起動時に、ランダムに、周期的に、あるいは電圧、温度、速度のような感知条件の変動に応じて実行されうる。
この例では、適応性較正アルゴリズムはまず、ステップ604において、システムクロックとフィードバックとの間の遅延をゼロに(nfb=0)、システムクロックと外部クロックとの間の遅延をK(next=K)に設定する。ステップ606では、フィードバッククロックが、調整範囲全体にわたってスイープされたかをテストする。これは、nfbが31を超えたかを判定することによってなされうる。ステップ606において、フィードバッククロック遅延が、調整範囲全体にわたってスイープされていないと仮定すると、処理600はステップ608に進み、集積回路102がSDRAM118にテストデータを書き込む。そして、この処理600は、ステップ610に続き、集積回路102が、SDRAM118からテストデータを読み取る。
読み取られたテストデータは、書き込まれたものと比較される。ステップ612では、読み取られたデータが有効であれば(すなわち、正しければ)、処理600はステップ614に進み、フィードバック及び外部クロックの設定における動作について「pass」状態が付される。読み取られたデータが、書き込まれたものと一致しなかった場合、テストは失敗し、ステップ616において、フィードバック及び外部クロックの設定について、「fail」状態が記録される。何れの場合も、その後、ステップ618において、フィードバッククロック遅延値及び外部クロック遅延値がインクリメントされ、処理600はステップ606に戻る。このように、適応性較正アルゴリズム600は、遅延範囲全体をスイープする。一旦完了すると、処理600はステップ620に進み、電子デバイスについて得られたLPVとHPVとが決定される。
LPVとHPVとが一旦明らかになると、適応性較正アルゴリズム700は、最終的なクロック設定を決定するために使用されうる。適応性較正アルゴリズム700は、上述した値域定義で反映されたようなメモリデバイス及び集積回路の速度と、LPVと、HPVとの間の関係の周知の原則に基づいてテストを実行する。
ステップ702では、電子デバイス100のLPVおよびHPVが取得される。この例示する実施形態が、図6の処理を用いてLPVとHPVとを決定する一方、適応性較正アルゴリズムは、電子デバイス100のLPVおよびHPVが、図6の処理によって決定されることを必要としない。LPV値とHPV値とがその他の手法で決定されることも可能である。LPVとHPVとは、電子デバイス100にどの値域が適切であるか、更に、その電子デバイス100にどの遅延設定が適切であるかを判定するために使用される。これは、調整範囲全体に対してLPVとHPVとをテストする(すなわち、nfbが0〜31からスイープされる)ことによって達成される。
ステップ704では、HPVが31以上であるかが判定される。ステップ704においてテストが偽であれば、処理はステップ706に進み、LPVが0以下であるか否かが判定される。LPVが0以上である場合、電子デバイス100は、ステップ708の値域1に属する。LPVが0未満である場合、電子デバイス100は、ステップ710に値域2に属する。ステップ704では、HPVが31以上である場合、アルゴリズムはステップ712に進み、LPVに関する判定がなされる。LPVが0以下である場合、電子デバイス100は、ステップ714の値域3に属する。そうでない場合、電子デバイス100は、ステップ716の値域4に属する。
一旦適切な値域が決定されると、集積回路102は、その値域のために、予め定めた設定でクロック遅延を設定する。この例では、値域の中心が、遅延設定である。ステップ720では、フィードバッククロック遅延が得られる。また、ステップ722では、フィードバッククロック遅延およびオフセットKから外部クロックが決定される。ステップ724では、プログラム可能な外部クロック遅延セル412およびプログラム可能なフィードバッククロック遅延セル420が、ステップ722からの値を用いて設定される。
明らかであるが、上述したアルゴリズムは、フィードバッククロック遅延=外部クロック遅延−Kであり、外部クロック遅延を決定し、この外部クロック遅延からフィードバッククロック遅延を決定するものとして表される。フィードバッククロックと外部クロックとの間には定義された関係があり、一方が与えられると、他方が得られるので、何れか一方のアプローチで十分であろう。
図7に戻り、かつ図5Cに関して上述した値域定義を用いると、電子デバイス100が値域1になる場合、フィードバッククロック遅延=6、外部クロック遅延=10となり、電子デバイス100が値域2になる場合、フィードバッククロック遅延=10、外部クロック遅延=14となり、電子デバイス100が値域3になる場合、フィードバッククロック遅延=14、外部クロック遅延=18となり、電子デバイス100が値域4になる場合、フィードバッククロック遅延=18、フィードバッククロック遅延=22となる。
上述したように、この処理は、最初の起動時のみならず、以後の起動時においても同様に実行されうる。例えば、適応性較正アルゴリズムは、起動時毎に、周期的に、ランダムに、あるいは感知条件に応じて実行されうる。そのような感知条件は、集積回路又は外部部品の速度、温度、電圧、あるいは集積回路と外部部品との間の通信の誤りの感知でありうる。
ここで開示された実施形態に関連して記述された様々の説明的論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、アプリケーションに固有の集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)あるいはその他のプログラマブル論理デバイス、ディスクリートゲートあるいはトランジスタロジック、ディスクリートハードウェア部品、又は上述された機能を実現するために設計された上記何れかの組み合わせを用いて実現又は実行されうる。汎用プロセッサとしてマイクロプロセッサを用いることが可能であるが、代わりに、従来技術によるプロセッサ、コントローラ、マイクロコントローラ、あるいは状態機器を用いることも可能である。プロセッサは、たとえばDSPとマイクロプロセッサとの組み合わせ、複数のマイクロプロセッサ、DSPコアに接続された1つ以上のマイクロプロセッサ、またはこのような任意の構成である計算デバイスの組み合わせとして実現することも可能である。
ここで開示された実施形態に関連して記述された方法は、ハードウェアや、プロセッサによって実行されるソフトウェアモジュールや、これらの組み合わせによって直接的に具現化される。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブルディスク、CD−ROM、あるいは当該技術分野で知られているその他の型式の記憶媒体に収納されうる。記憶媒体は、プロセッサがそこから情報を読み取り、またそこに情報を書き込むことができるようにプロセッサに結合される。または、記憶媒体はプロセッサに統合されうる。このプロセッサと記憶媒体は、ASIC内に存在することができる。
開示された実施形態における上述の記載は、当該技術分野におけるいかなる人であっても、本発明の活用または利用を可能とするように提供される。これらの実施形態への様々な変形例もまた、当該技術分野における熟練者に対しては明らかであって、ここで定義された一般的な原理は、本発明の主旨または範囲を逸脱せずに他の実施形態にも適用されうる。このように、本発明は、ここで示された実施形態に制限されるものではなく、ここで記載された原理と新規の特徴に一致した最も広い範囲に相当するものを意図している。
図1は、集積回路を使用する電子デバイスの例を図示する概念ブロック図である。 図2は、オフチップメモリに書き込むタイミングパラメータの例を図示するタイミングブロック図である。 図3は、オフチップメモリから読み取るタイミングパラメータの例を図示するタイミングブロック図である。 図4は、コントローラの動作の例を図示する機能ブロック図である。 図5Aは、異なる電圧および速度における集積回路の代表的な遅延範囲を示す棒グラフである。 図5Bは、異なる電圧および速度における集積回路の代表的な遅延範囲を示す棒グラフである。 図5Cは、本発明に従って値域に分割された遅延範囲を示す棒グラフである。 図6は、図7の適応性較正アルゴリズムに先行する較正アルゴリズムの例を図示するフローチャートである。 図7は、本発明に従った適応性較正アルゴリズムの例を図示するフローチャートである。

Claims (35)

  1. 電子部品と、
    システムクロックと、前記システムクロックからプログラム可能な遅延を有する外部クロックとを生成し、前記外部クロックを前記電子部品に提供し、集積回路と電子部品とが通信可能な、外部クロックとシステムクロックとの間の遅延範囲を決定し、前記遅延範囲に基づいて、予め定めた複数の遅延値のうちの1つを用いて、前記外部クロックをプログラムするように構成された集積回路と
    を備える電子デバイス。
  2. 前記集積回路は更に、前記予め定めた遅延値を格納するように構成された請求項1の電子デバイス。
  3. 前記電子部品は、少なくとも1つのメモリデバイスを備える請求項1の電子デバイス。
  4. 前記電子部品は、SDRAM、バーストNOR、バーストPSRAM、RAM、ROM、EPROM、EEPROM、又はVRAMのうちの少なくとも1つを備える請求項3の電子デバイス。
  5. 前記集積回路は更に、電子部品との複数の読取/書込動作を通じて、前記遅延範囲を決定するように構成された請求項3の電子デバイス。
  6. 前記集積回路は更に、前記読取動作の各々を、合格状態又は失敗状態として評価することにより、前記遅延範囲を決定するように構成された請求項5の電子デバイス。
  7. 前記遅延範囲は上部境界及び下部境界を備え、前記集積回路は更に、前記遅延範囲の境界に基づき、予め定めた複数の遅延値のうちの1つを用いて、前記外部クロックをプログラムするように構成された請求項1の電子デバイス。
  8. 前記集積回路は更に、前記遅延範囲の上部境界が、前記システムクロックと前記外部クロックとの間のプログラム可能な最大遅延を超えているかの関数として、前記予め定めた複数の遅延値のうちの1つを決定するように構成された請求項7の電子デバイス。
  9. 前記集積回路は更に、前記遅延範囲の下部境界が、前記システムクロックと前記外部クロックとの間のプログラム可能な最小遅延未満であるかの関数として、前記予め定めた複数の遅延値のうちの1つを決定するように構成された請求項7の電子デバイス。
  10. 前記予め定めた遅延値の各々は、前記集積回路を特徴付ける速度の範囲、および前記電子部品を特徴付ける速度の範囲と関連する請求項1の電子デバイス。
  11. 無線電話、携帯情報端末、電子メールデバイス、又はウェブ対応デバイスを備える請求項1の電子デバイス。
  12. システムクロックを有する集積回路を電子部品に較正する方法であって、
    前記システムクロックからプログラム可能な遅延を有する外部クロックを前記集積回路に生成することと、
    前記集積回路から前記電子部品へ外部クロックを提供し、それらの間の通信をサポートすることと、
    前記集積回路と前記電子部品とが通信することができる、前記システムクロックと前記外部クロックとの間の遅延範囲を決定することと、
    前記遅延範囲に基づいて、予め定めた複数の遅延値のうちの1つを用いて、前記外部クロックをプログラムすることと
    を含む方法。
  13. 前記予め定めた遅延値を格納することを更に含む請求項12の方法。
  14. 前記電子部品は、少なくとも1つのメモリデバイスを備える請求項12の方法。
  15. 前記電子部品は、SDRAM、バーストNOR、バーストPSRAM、RAM、ROM、EPROM、EEPROM、又はVRAMのうちの少なくとも1つを備える請求項14の方法。
  16. 電子部品との複数の読取/書込動作を通じて、前記遅延範囲を決定することを更に含む請求項14の方法。
  17. 前記読取動作の各々を、合格状態又は失敗状態として評価することにより、前記遅延範囲を決定することを更に含む請求項16の方法。
  18. 前記遅延範囲の上部境界及び下部境界を決定することと、
    前記遅延範囲の境界に基づき、予め定めた複数の遅延値のうちの1つを用いて、前記外部クロックをプログラムすることと
    を更に含む請求項12の方法。
  19. 前記遅延範囲の上部境界が、前記システムクロックと前記外部クロックとの間のプログラム可能な最大遅延を超えているかの関数として、前記予め定めた複数の遅延値のうちの1つを決定することを更に含む請求項18の方法。
  20. 前記遅延範囲の下部境界が、前記システムクロックと前記外部クロックとの間のプログラム可能な最小遅延未満であるかの関数として、前記予め定めた複数の遅延値のうちの1つを決定することを更に含む請求項18の方法。
  21. 前記予め定めた遅延値の各々は、前記集積回路を特徴付ける速度の範囲、および前記電子部品を特徴付ける速度の範囲と関連する請求項12の方法。
  22. 前記電子デバイスは、無線電話、携帯情報端末、電子メールデバイス、又はウェブ対応デバイスを備える請求項12の方法。
  23. 電子部品と、
    システムクロックを生成する手段、
    前記システムクロックからプログラム可能な遅延を有する外部クロックを前記集積回路に生成する手段、
    前記集積回路から前記電子部品に外部クロックを提供し、それらの間の通信をサポートする手段、
    前記集積回路と前記電子部品とが通信可能な、前記外部クロックと前記システムクロックとの間の遅延範囲を決定する手段、
    前記遅延範囲に基づいて、予め定めた複数の遅延値のうちの1つを用いて、前記外部クロックをプログラムする手段
    を備える集積回路と
    を備える電子デバイス。
  24. 前記予め定めた遅延値を格納する手段を更に備える請求項23の電子デバイス。
  25. 前記電子部品は、少なくとも1つのメモリデバイスを備える請求項23の電子デバイス。
  26. 前記電子部品は、SDRAM、バーストNOR、バーストPSRAM、RAM、ROM、EPROM、EEPROM、又はVRAMのうちの少なくとも1つを備える請求項25の電子デバイス。
  27. 電子部品との複数の読取/書込動作を通じて、前記遅延範囲を決定する手段を更に備える請求項25の電子デバイス。
  28. 前記読取動作の各々を、合格状態又は失敗状態として評価することにより、前記遅延範囲を決定する手段を更に備える請求項27の電子デバイス。
  29. 前記遅延範囲の上部境界及び下部境界を決定する手段と、
    前記遅延範囲の境界に基づき、予め定めた複数の遅延値のうちの1つを用いて、前記外部クロックをプログラムする手段と
    を更に備える請求項23の電子デバイス。
  30. 前記遅延範囲の上部境界が、前記システムクロックと前記外部クロックとの間のプログラム可能な最大遅延を超えているかの関数として、前記予め定めた複数の遅延値のうちの1つを決定する手段を更に備える請求項29の電子デバイス。
  31. 前記遅延範囲の下部境界が、前記システムクロックと前記外部クロックとの間のプログラム可能な最小遅延未満であるかの関数として、前記予め定めた複数の遅延値のうちの1つを決定する手段を更に備える請求項29の電子デバイス。
  32. 前記予め定めた遅延値の各々は、前記集積回路を特徴付ける速度の範囲、および前記電子部品を特徴付ける速度の範囲と関連する請求項23の電子デバイス。
  33. 無線電話、携帯情報端末、電子メールデバイス、又はウェブ対応デバイスを備える請求項23の電子デバイス。
  34. 集積回路を電子部品に較正する方法を実行する、プロセッサによって実行可能な命令からなるプログラムを組み込んだコンピュータ読取可能媒体であって、
    前記集積回路は、システムクロックと、前記システムクロックからプログラム可能な遅延を有する外部クロックとを含み、前記外部クロックは、前記電子部品に提供され、それらの間の通信をサポートし、
    前記方法は、
    前記集積回路と前記電子部品とが通信可能な、前記外部クロックと前記システムクロックとの間の遅延範囲を決定することと、
    前記遅延範囲に基づいて、予め定めた複数の遅延値のうちの1つを用いて、前記外部クロックをプログラムすることと
    を含むコンピュータ読取可能媒体。
  35. 前記電子部品はメモリを備え、前記集積回路は更に、前記システムクロックからプログラム可能な遅延を有するフィードバッククロックを更に含み、
    前記集積回路と前記メモリとの間の通信は、前記メモリとの読み書きのために前記外部クロックを使用し、かつ前記集積回路において前記メモリから読み取られたデータをサンプルするために前記フィードバッククロックを使用することによって実施され、
    前記方法は更に、前記遅延範囲の関数として前記フィードバッククロック遅延を較正することを含む請求項34のコンピュータ読取可能媒体。
JP2007540150A 2004-11-05 2005-11-07 値域を用いた適応性メモリ較正 Expired - Fee Related JP4842958B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US62522904P 2004-11-05 2004-11-05
US60/625,229 2004-11-05
PCT/US2005/040363 WO2006052929A1 (en) 2004-11-05 2005-11-07 Adaptive memory calibration using bins

Publications (2)

Publication Number Publication Date
JP2008519457A true JP2008519457A (ja) 2008-06-05
JP4842958B2 JP4842958B2 (ja) 2011-12-21

Family

ID=35985747

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007540150A Expired - Fee Related JP4842958B2 (ja) 2004-11-05 2005-11-07 値域を用いた適応性メモリ較正

Country Status (11)

Country Link
US (1) US8816742B2 (ja)
EP (1) EP1812804B1 (ja)
JP (1) JP4842958B2 (ja)
CN (1) CN101095060B (ja)
AT (1) ATE430320T1 (ja)
CA (1) CA2586537A1 (ja)
DE (1) DE602005014264D1 (ja)
ES (1) ES2326903T3 (ja)
MX (1) MX2007005484A (ja)
RU (1) RU2363059C2 (ja)
WO (1) WO2006052929A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8386829B2 (en) * 2009-06-17 2013-02-26 Macronix International Co., Ltd. Automatic internal trimming calibration method to compensate process variation
WO2013066774A1 (en) 2011-11-01 2013-05-10 Rambus Inc. Data transmission using delayed timing signals
US9825638B2 (en) 2014-03-05 2017-11-21 Sandisk Technologies Llc Virtual critical path (VCP) system and associated methods
US10203962B2 (en) * 2016-03-28 2019-02-12 Crrc Qingdao Sifang Rolling Stock Research Institute Co., Ltd. Tigersharc DSP boot management chip and method
US11935613B2 (en) * 2020-08-05 2024-03-19 Texas Instruments Incorporated Method for tuning an external memory interface
CN115862707B (zh) * 2022-11-25 2024-03-12 湖南兴芯微电子科技有限公司 一种psram相位校准方法及控制器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07134701A (ja) * 1993-09-17 1995-05-23 Hitachi Ltd シングルチップマイクロコンピュータ
JP2000235517A (ja) * 1999-02-12 2000-08-29 Nec Corp 半導体集積回路及びクロック遅延調整方法
JP2001154907A (ja) * 1999-11-29 2001-06-08 Nec Kofu Ltd 遅延調整回路及び情報処理装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU1529220A1 (ru) 1986-07-15 1989-12-15 Предприятие П/Я А-3162 Устройство дл автоматического контрол больших интегральных схем
SU1471156A1 (ru) 1987-01-27 1989-04-07 Предприятие П/Я Р-6668 Устройство дл контрол параметров электронных блоков
US5268639A (en) * 1992-06-05 1993-12-07 Rambus, Inc. Testing timing parameters of high speed integrated circuit devices
US5920216A (en) * 1997-04-03 1999-07-06 Advanced Micro Devices, Inc. Method and system for generating digital clock signals of programmable frequency employing programmable delay lines
US6175928B1 (en) * 1997-12-31 2001-01-16 Intel Corporation Reducing timing variance of signals from an electronic device
US6204694B1 (en) * 1999-05-21 2001-03-20 Logicvision, Inc. Programmable clock signal generation circuits and methods for generating accurate, high frequency, clock signals
JP4301680B2 (ja) * 2000-02-29 2009-07-22 株式会社ルネサステクノロジ 半導体集積回路装置
US6564335B1 (en) * 2000-03-31 2003-05-13 Intel Corporation Cross chip transfer mechanism for a memory repeater chip in a Dram memory system
DE10035169A1 (de) * 2000-07-19 2002-02-07 Infineon Technologies Ag Verfahren und Vorrichtung zum Testen von Setup-Zeit und Hold-Zeit von Signalen einer Schaltung mit getakteter Datenübertragung
US6850107B2 (en) * 2001-08-29 2005-02-01 Micron Technology, Inc. Variable delay circuit and method, and delay locked loop, memory device and computer system using same
US7290186B1 (en) * 2003-09-16 2007-10-30 Virage Logic Corporation Method and apparatus for a command based bist for testing memories
US7646835B1 (en) * 2003-11-17 2010-01-12 Rozas Guillermo J Method and system for automatically calibrating intra-cycle timing relationships for sampling signals for an integrated circuit device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07134701A (ja) * 1993-09-17 1995-05-23 Hitachi Ltd シングルチップマイクロコンピュータ
JP2000235517A (ja) * 1999-02-12 2000-08-29 Nec Corp 半導体集積回路及びクロック遅延調整方法
JP2001154907A (ja) * 1999-11-29 2001-06-08 Nec Kofu Ltd 遅延調整回路及び情報処理装置

Also Published As

Publication number Publication date
EP1812804B1 (en) 2009-04-29
CN101095060A (zh) 2007-12-26
DE602005014264D1 (de) 2009-06-10
CN101095060B (zh) 2011-03-30
RU2007120819A (ru) 2008-12-10
WO2006052929A1 (en) 2006-05-18
US8816742B2 (en) 2014-08-26
RU2363059C2 (ru) 2009-07-27
EP1812804A1 (en) 2007-08-01
ES2326903T3 (es) 2009-10-21
US20080123444A1 (en) 2008-05-29
MX2007005484A (es) 2007-07-16
ATE430320T1 (de) 2009-05-15
JP4842958B2 (ja) 2011-12-21
CA2586537A1 (en) 2006-05-18

Similar Documents

Publication Publication Date Title
JP4842958B2 (ja) 値域を用いた適応性メモリ較正
US7876629B2 (en) Memory control methods capable of dynamically adjusting sampling points, and related circuits
JP5318870B2 (ja) クロック・ジッタを測定する回路装置および方法
KR100262707B1 (ko) Dram컨트롤러
CN108431785B (zh) 存储器控制器
US20080129357A1 (en) Adaptive Integrated Circuit Clock Skew Correction
TWI781169B (zh) 雙倍資料速率同步動態隨機存取記憶體(ddr sdram)資料選通信號校準
JP2010081577A (ja) 半導体装置およびデータ伝送システム
JP4814248B2 (ja) 適応性速度値域を持つ集積回路
US7493461B1 (en) Dynamic phase alignment for resynchronization of captured data
KR100826843B1 (ko) 전자장치에 대한 집적회로의 교정
US6754869B2 (en) Method and device for testing set-up time and hold time of signals of a circuit with clocked data transfer
US6909301B2 (en) Oscillation based access time measurement
KR100864633B1 (ko) 반도체 메모리 테스트 장치 및 반도체 메모리 테스트 방법
US10902896B2 (en) Memory circuit and method thereof
US9721675B1 (en) Memory device having input circuit and operating method of same
US7593831B2 (en) Method and apparatus for testing delay lines
US20110055618A1 (en) Memory controlling method
JP2004287749A (ja) 信号処理装置および方法、記録媒体、並びにプログラム
JP2000097996A (ja) 半導体試験装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101019

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101021

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110119

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110126

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110517

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110809

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

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

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

Year of fee payment: 3

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

LAPS Cancellation because of no payment of annual fees