JP2007012166A - 半導体装置 - Google Patents

半導体装置 Download PDF

Info

Publication number
JP2007012166A
JP2007012166A JP2005191371A JP2005191371A JP2007012166A JP 2007012166 A JP2007012166 A JP 2007012166A JP 2005191371 A JP2005191371 A JP 2005191371A JP 2005191371 A JP2005191371 A JP 2005191371A JP 2007012166 A JP2007012166 A JP 2007012166A
Authority
JP
Japan
Prior art keywords
data
delay
memory
clock
semiconductor device
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
JP2005191371A
Other languages
English (en)
Other versions
JP4763360B2 (ja
Inventor
Yoshinori Yamamura
良憲 山村
Isao Kimura
功 木村
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.)
Alaxala Networks Corp
Original Assignee
Alaxala Networks Corp
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 Alaxala Networks Corp filed Critical Alaxala Networks Corp
Priority to JP2005191371A priority Critical patent/JP4763360B2/ja
Publication of JP2007012166A publication Critical patent/JP2007012166A/ja
Application granted granted Critical
Publication of JP4763360B2 publication Critical patent/JP4763360B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】 個体差または環境差による伝播特性の差を調整しうる半導体装置を提供する。
【解決手段】 受信したDDRデータとクロックとからSDRデータを生成するSDRデータ生成部と、DDRデータまたはクロックに可変量の遅延を与えるディレイヤ220と、ディレイヤの遅延量を制御するディレイ調整部260とからなる半導体装置200により達成できる。
【選択図】 図1

Description

本発明は半導体装置に係り、特にメモリおよびメモリ制御用LSIに関する。
Single Data Rate(以下SDR)メモリのライトデータは、メモリクロックの立下りから立上りの1周期で書き込まれる。一方、リードデータは、リードデータ並走クロックの立上りから立下りの1周期で読み込む。
Double Data Rate(以下DDR)メモリでは、基準クロックの半周期で1単位のデータの読み書きを行う。具体的には、DDRメモリのリードデータは、リードデータ並走クロックの立上りから立下りの半周期および立下りから立上りの半周期で、それぞれデータを読みこむ。一方、ライトデータは、リードデータとは1/4周期ずらして書き込む。これは、ライトデータの単位長の中心部にメモリクロックの立上りと立下りを充てるためである。
インターフェース上の様々な要因による特性ばらつきを装置に吸収させ、システム全体を安定的に動作させる手段の一つに、システムを本格運用する前段階で試験的に運用し、インターフェースする相手装置が確実にデータを受け取ることができる最適ポイントを探る技術がある。この最適ポイントを探る技術をトレーニングと呼ぶ。
特許文献1には、メモリインターフェースに関するトレーニング技術が開示されている。
特開平11−219314号公報
同期式メモリには、高速でデータの読み書きが実行される。このため、メモリ制御用LSIと同期式メモリの個体差、電圧、温度等の環境差によって、信号遅延であるディレイ、クロックと信号基準ポイントのずれであるスキュー等の特性に差が生じることが分かってきた。このため動作環境が異なる場合は、同じ同期式メモリとそのインターフェースICとを常に安定して動作させることが難しくなってきた。
特許文献1に記載の発明では、メモリからシステム側が受け取るリードデータ自体はその基準クロックにて確実に受け取ることができる、または確実に受け取ることができるマージンが分かっていることが前提となっている。このため、基準クロックに対してライトまたはリードのデータが正しく相手が受け取れるポイントにあるかどうか分からないときには、誤動作を起こす可能性がある。
本発明の目的は、個体差または環境差による伝播特性の差を調整しうる半導体装置を提供することにある。
データまたはクロックに可変量の遅延を与えるディレイヤと、ディレイヤの遅延量を制御するディレイ調整部とからなる半導体装置により達成できる。
本発明によれば、個体差または環境差による伝播特性の差を調整し得る半導体装置を提供することができる。
以下本発明の実施の形態について、実施例を用いて、図面を参照しながら説明する。なお、実質同一の部材には同じ符号を振り説明は繰り返さない。
まず、初めに図1ないし図8を用いて、ディレイヤの設置場所(システムLSI/メモリ)、データ対象(リードデータ/ライトデータ)、ディレイ対象(データ/クロック)の8種類の組み合わせを説明する。
ここで、図1はディレイ対象をシステムLSI側のリードデータとしたシステムLSI(メモリ制御用LSI)−DDRメモリシステムのブロック図である。図2はディレイ対象をシステムLSI側のリードデータ並走クロックとしたシステムLSI−DDRメモリシステムのブロック図である。図3はディレイ対象をシステムLSI側のライトデータとしたシステムLSI−DDRメモリシステムのブロック図である。図4はディレイ対象をシステムLSI側のメモリクロックとしたシステムLSI−DDRメモリシステムのブロック図である。
また、図5はディレイ対象をDDRメモリ側のライトデータとしたシステムLSI−DDRメモリシステムのブロック図である。図6はディレイ対象をDDRメモリ側のライトデータ取り込みクロックとしたシステムLSI−DDRメモリシステムのブロック図である。図7はディレイ対象をDDRメモリ側のリードデータとしたシステムLSI−DDRメモリシステムのブロック図である。図8はディレイ対象をDDRメモリ側のリードデータ並走クロックとしたシステムLSI−DDRメモリシステムのブロック図である。なお、以下の記載ではメモリを制御する側をシステムと呼ぶ。また、図1ないし図8にはタイミングを説明する図面を添付する。
まず、システム側(メモリ制御側)にディレイヤを設け、リードデータの読み込みを確実にする構成を図1および図2を用いて説明する。図1(a)において、DDRメモリ100は、同相でリードデータと、リードデータ並走クロックをシステムLSI 200Aに送出する。リードデータを入力バッファ210で受信したシステムLSI 200Aは、リードデータをディレイヤ220Aに転送し、ディレイ調整部260Aが指示する量のディレイを受けた後、2分岐されてラッチ230に送信される。ラッチ230−1には、インバータ240によって逆相のリードデータ並走クロックが、供給されている。また、ラッチ230−2には、正相のリードデータ並走クロックが、供給されている。ラッチ230からの2信号は、DDRデータ取り出し部250で、SDRに変換され、リードデータとなる。
ここで、ディレイヤ220は、15段のディレイ素子を直列に並べ、入力および各段の出力(設定0〜15)をセレクタで選択する構成である。ディレイ調整部260は、セレクタの出力をコントロールする。なお、ディレイヤ220はハードウェアロジック以外にソフトウェアで実現することもできる。ディレイ調整部260の設定値は、トレーニングにより決定する。図1(a)の構成では、リードデータに遅延を与えるので、1ビット毎または1バイト毎のきめ細かい調整が可能である。
図1(b)に示すタイミング図は、システムLSI 200Aが読み込むリード並走クロックとリードデータおよびシステムLSI 200Aがディレイ調整をしたリードデータを示す。DDRメモリのリードデータは、リードデータ並走クロックの立上りから立下りの半周期および立下りから立上りの半周期で、それぞれデータを読みこむ。システムLSI 200Aは、リードデータをリードデータ並走クロックの立上りおよび立下りで読み込む。このため図1(b)では、リードデータを概ね4分の1周期ディレイさせて、システムLSI 200Aがリードデータを、その有効期間の中央付近で読み込むように調整する。 図2(a)に示すDDRメモリ100は、同相でリードデータと、リードデータ並走クロックをシステムLSI 200Bに送出する。リードデータを入力バッファ210で受信したシステムLSI 200Bは、リードデータをラッチ230に転送する。一方、リードデータ並走クロックは、ディレイヤ220Bが受信し、ディレイ調整部260Bが指示する量のディレイを受けた後、2分岐されて、一方はラッチ230−2に供給され、他方はインバータ240を経由して、逆送のリードデータ並走クロックがラッチ230−1に供給される。ラッチ230からの2信号は、DDRデータ取り出し部250で、SDRに変換され、リードデータとなる。図2(a)の構成ではクロックのディレイを調整するので回路規模(またはソフトウェア規模)が小さくてすむ。
図2(b)に示すタイミング図は、システムLSI 200Bが読み込むリード並走クロックとリードデータおよびシステムLSI 200Bがディレイ調整をしたリード並走クロックを示す。DDRメモリのリードデータは、リードデータ並走クロックの立上りから立下りの半周期および立下りから立上りの半周期で、それぞれデータを読みこむ。システムLSI 200Bは、リード並走クロックを概ね4分の1周期ディレイさせて、ディレイされたリードデータ並走クロックの立上りと立下りでリードデータを読み込む。
次に、システム側にディレイヤを設け、ライトデータの書き込みを確実にする構成を図3および図4を用いて説明する。
図3(a)において、DDRメモリ100が受信するメモリクロックとライトデータの位相は、図3(b)のメモリクロックとディレイ調整後のライトデータの関係とする必要がある。システムLSI 200Cは、メモリクロックを生成するメモリクロック生成部270と、クロックの1周期の立下りから立上りまでのライトデータをDDRのライトデータに変換するDDR化部280と、DDRのライトデータにディレイを与えるディレイヤ220Cと、ディレイヤ220Cのディレイ量を設定するディレイ調整部260Cと、出力バッファ290とで構成されている。ここで、DDR化部280の出力は、図3(b)のメモリクロックとライトデータの関係であり、ディレイヤ220Cを調整して、DDRメモリが受信するライトデータを、ディレイ調整後ライトデータとメモリクロックの関係とする。図3(a)の構成では、ライトデータにディレイを与えているので、きめ細かい調整が可能である。
一方、図4(a)に示す構成では、ディレイヤ220Dをメモリクロック生成部270の後ろに置き、図4(b)に示すようにメモリクロックのディレイ量をディレイ調整部260Dが調整する。この構成では、メモリクロックのみ調整すれば良いので、簡単な構成となる。
DDRメモリ側にディレイヤを設けライトデータの書き込みを確実にする構成を図5および図6を用いて説明する。基本的な構成は、図1および図2で説明したシステム側にディレイヤを設けリードデータの読み込みを確実にする構成をDDRメモリに適用したものである。しかし、一般にメモリはシステムに対して受動的(システムの命令に反応する)な部品である。このためシステム側の制御が必要である。なお、制御用にも信号線が必要だが図示を省く。
図5(a)に示すDDRメモリ100Aは、メモリクロックとライトデータを受信する。このメモリクロックとライトデータは、図5(b)に示すようにスキューが発生している。DDRメモリ100Aは、ライトデータをディレイヤ110Aに転送し、ディレイ調整部150Aが指示する量のディレイを受けた後、2分岐されてラッチ130に送信される。ラッチ130−1には、インバータ120によって逆相のメモリクロックが、供給されている。また、ラッチ130−2には、正相のメモリクロックが、供給されている。ラッチ130からの2信号は、DDRデータ取り出し部160で、SDRに変換される。トレーニング状態において、SDRに変換されたライトデータは、パターン比較部140でメモリトレーニング用パターン300と比較され、この結果がディレイ調整部150Aに送信される。
一方、システムLSI 200Eには、トレーニング設定部205と、トレーニング設定部205のメモリトレーニング用テストパターン300と通常時ライトデータとを選択するセレクタ215が設けられている。トレーニング設定部205は、トレーニング時にはセレクタ215の出力をメモリトレーニング用テストパターンとして、DDR化部280、出力バッファ290を介して、DDRメモリ100Aに送信する。
本実施例では、メモリ機能として、ライトトレーニングモードを用意し、そのモード時のライトアクセスはアドレス毎にメモリ内部で持つ特定パターンと比較チェックする。システムLSIは、ライトトレーニングモードへの設定変更と、そのモード時での特定パターンデータでのライトアクセスを行う。これによりメモリ側でのディレイ調整制御をおこなうことができる。この調整により、図5(b)に示すディレイ調整後のライトデータを得ることができる。
なお、本実施例ではシステムLSIおよびメモリは、内部データをSDRで扱うものとして説明したが、内部データをDDRで扱うシステムLSIまたはメモリに付いても、DDR−SDR変換を行なう部位等が不要なことを除いて、基本となる構成と動作は同様である。また、外部データをSDRで扱うものであっても良く、SDRまたはDDR以外のデータレート(例えばQuad−DR)についても有効である。これは、他の実施例に付いても同様である。
図6(a)に示すDDRメモリ100Bは、分岐したDDRデータ取り出し用のメモリクロックにディレイ調整機構150Bからの制御でディレイを与えるディレイヤ110Bを設けている。
本実施例でも、DDRメモリ100Bにライトトレーニングモードを用意し、そのモード時のライトアクセスはアドレス毎にメモリ内部で持つ特定パターンと比較チェックする。システムLSI200Eは、ライトトレーニングモードへの設定変更と、そのモード時での特定パターンデータでのライトアクセスを行う。これによりDDRメモリ110Bでのディレイ調整制御をおこなうことができる。この調整により、図5(b)に示すディレイ調整後のメモリクロックを得ることができる。
DDRメモリ側にディレイヤを設け、システムLSIでのリードデータの読み込みを確実にする構成を図7および図8を用いて説明する。基本的な構成は、図3および図4で説明したシステム側にディレイヤを設けライトデータの書き出しを確実にする構成をDDRメモリに適用したものである。しかし、一般にメモリはシステムに対して受動的なので、システム側の制御が必要である。なお、制御用にも信号線が必要だが図示を省く。
図7(a)において、DDRメモリ100Cは、メモリトレーニング用テストパターン300とメモリリードデータとを入力とするセレクタ190と、セレクタ190の出力を入力とするDDR化部170と、DDR化されたリードデータにディレイ調整部150Cからの指示に基づいてディレイを与えるディレイヤ110Cと、リードデータ並走クロック生成部180とから構成されている。
一方、システムLSI 200Fは、DDRデータ取り出し部250の出力とメモリトレーニング用テストパターン300とを入力とするパターン比較部225とを備える。
トレーニングモードが選択されると、DDRメモリ100Cのセレクタ190は、メモリトレーニング用テストパターン300を選択する。この結果、テストパターン300がDDR化されて、ディレイ調整部150Cが選択したディレイが与えられて、システムLSI 200Fに送信される。システムLSI 200Fのパターン比較部225は、送信されてきたデータと自己が保有するテストパターン300を比較し、その結果をDDRメモリ100Cのディレイ調整部150Cに返信する。
ディレイ調整部150Cは、ディレイの量を変えてパターン比較を繰り返せば最適なディレイ量を把握することができる。
図7(b)の内部リードデータはDDR化部170の出力波形である。一方、リードデータ入力と、リードデータ並走クロック入力は、システムLSI 200Fの入力波形である。リードデータ入力は、スキュー等の特性の異なる環境に置かれても、その環境でディレイ量を調整できる。その結果安定した特性とすることができる。
本実施例では、DDRメモリ100Cにリードトレーニングモードを用意して、リードトレーニングモード時のリードアクセスは一定アドレス毎に特定パターンを送出するものとする。システムLSI 200Fは、そのモードへの設定変更と、そのモード時のリードデータパターンチェックを行いメモリにチェックOK/NGを伝達する。これによりメモリ側でのディレイ調整制御をおこなうことができる。
なお、パターン比較はシステムLSI 200Fで実施しているので、テストパターン300をDDRメモリ100Cに持たず、ライトデータとして書き込んだ後、リードデータとして読み込んでも良い。なお、この場合にはライトデータの健全性を検証した後、実施する。この変形例は、図8でも共通である。
図8(a)において、DDRメモリ100Dは、リードデータ並走クロックの出力にディレイ調整部150Dからの指示に基づくディレイを与えるディレイヤ110Dを有する。
図8のシステムLSI−DDRメモリシステムトレーニングモードの動作は、図7とまったく同じである。
図8(b)のリードデータ入力とリードデータ並走クロック入力は、システムLSI 200Fの入力である。一方、内部リードデータ並走クロックは、リードデータ並走クロック生成部180の出力である。リードデータ並走クロック入力は、スキュー等の特性の異なる環境に置かれても、その環境でディレイ量を調整できる。その結果安定した特性とすることができる。
さて、これまでリードデータの読み出しを確実に実施する実施例を4例、ライトデータの書き込みを確実にする実施例を4例説明してきた。それらの組み合わせは自由であり、16種類の組み合わせがある。すべてについて説明するのは紙面に限りがあるので、発明者が最も適切と判断した2例を図9および図10を用いて説明する。なお、残った14例が不適切と判断したわけではない。ここで、図9はディレイ対象をシステムLSIのライトデータとリードデータ並走クロックとしたシステムLSI−DDRメモリシステムのブロック図である。また、図10はディレイ対象をDDRメモリのメモリクロックとシステムLSIのリード並走クロックとしたシステムLSI−DDRメモリシステムのブロック図である。
図9は、図2と図3とを組み合わせたシステムLSI−DDRメモリシステムである。また、図10は、図3と図6と図8とを組み合わせたシステムLSI−DDRメモリシステムである。
図9の構成は、メモリを制御するシステムLSIに閉じるので、現時点で最良と発明者が判断した構成である。ここで、クロックを遅延対象とした方が、回路は簡単になるにも関わらず、ディレイ対象をライトデータとリードデータ並走クロックとしている理由は、メモリクロックに遅延を与えるとリードデータ並走クロックに影響がおよぶ(その結果リード側の遅延量を補正する必要が生まれる)メモリが存在するからである。図9の構成の説明は、図2および図3で実施したので、ここでは省略する。なお、図9のDDRメモリ100は、ライトデータの入力端子と、リードデータの出力端子が異なるライト/リード分離I/Oを図示しているが、端子が共通のライト/リード共通I/Oであってもよい。これは、他の実施例にも共通である。
図10のDDRメモリ100Bは、図6のDDRメモリ100Bと同じ構成である。一方、図10のシステムLSI 200Hは、図3と図6とを組み合わせ、さらに図8のシステムLSI 200Fのパターン比較部225を組み合わせた構成である。パターン比較部225は、その比較結果をディレイ調整部260Hに送信する。なお、ここでDDRメモリ100Bは、テストパターンを持たないが、システムLSI 200Hが、事前に通常のデータとしてテストパターンを送信し、当該データを読み出すことでテストパターンを読み出す。
このように構成することで、DDRメモリ100Bが送信するテストパターンについて、ディレイヤ220Bのディレイ量を変えてパターン比較を繰り返せばディレイヤ220Bの最適なディレイ量を把握することができる。
なお、DDRメモリ100Bに、図8のDDRメモリ100Dのメモリトレーニング用テストパターン300とセレクタ190と図8で省略されたDDR化部170とを追加した構成としてもよい。図10のDDRメモリ100BおよびシステムLSI 200Hは、共に入力されたデータを自分自身でトレーニングする点が好ましい。また、DDRメモリ100Bは、リードデータ並走クロックを生成するために、遅延を与えられていないメモリクロックを用いる。
次に、データトレーニングのタイムチャートを図11および図12を用いて説明する。ここで、図11はリードデータトレーニングのタイムチャートとトレーニング結果を示す図である。また、図12はライトデータトレーニングのタイムチャートとトレーニング結果を示す図である。
ここで、データトレーニングはリードデータから実施し、リードデータまたはリードデータ並走クロックに与える最適なディレイ量としてから、ライトデータのデータトレーニングを行う。SDRでライトできるDDRメモリはSDRでライト、またDDRのみのライトを行なうDDRメモリに付いてはライト時は周波数を下げてライトする等、リードデータトレーニング用のライトデータを、SDRで確実に書き込んで、混乱を避けるためである。
図11(a)には、リードデータまたはリードデータ並走クロックのディレイヤ設定”0”について、上から順にメモリコマンド、アドレス、ライトデータ、リードデータを記載してある。まず、SDRでアドレス0からアドレスnまでデータを書き込む。次に、DDRでアドレス0からアドレスnまでデータを読み出す。読み出したデータと、書き込んだデータを比較し、一つでも比較NGがあればディレイヤ設定”0”はNGとする。これをディレイヤ設定”15”まで繰り返す。この結果をまとめたのが、図11(b)である。
図11(b)は、図11(a)の手順を取って得たディレイヤ設定と、NG/OK結果の表である。この結果は、ディレイヤ設定”0”〜”2”、”10”、”13”〜”15”がNG、他のディレイヤ設定がOKであったので、追って図13で説明する手順で、ディレイヤ設定”6”をディレイ最適値としている。
図12と図11とを比較すれば分かるように、ディレイ量を振るディレイヤがライトデータまたはメモリクロック用であることと、ライトデータが最初からDDRであることが異なる。前半は当然として、後半は既に終了したリードデータトレーニングによって、リードデータの健全性が保証されているからである。したがって、図12の説明は図11の説明に尽きており、説明を省く
図13ないし図18を用いて、トレーニング制御のフローを説明する。ここで、図13はディレイヤをシステムLSIに設けたリードデータの読み込みを確実とする制御フローである。図14はディレイヤをシステムLSIに設けたライトデータの読み込みを確実とする制御フローである。図15はディレイヤをDDRメモリに設けたライトデータの読み込みを確実とする制御フローである。図16はディレイヤをDDRメモリに設けたリードデータの読み込みを確実とする制御フローである。図17は図9に示すシステムLSI−DDRメモリシステムの制御フローである。図18は図10に示すシステムLSI−DDRメモリシステムの制御フローである。
図13において、ディレイヤの設置箇所がシステムLSIであれば、ディレイ対象がリードデータであってもリードデータ並走クロックであっても良い。トレーニングを開始すると、まずレジスタをリセットする(S401)。ここでリセットするのは、以下の項目である。(1)ディレイヤの設定値レジスタを”0”とする。(2)連続OK回数レジスタを”0”とする。(3)連続OK最大回数レジスタを”0”とする。(4)連続OK最終時ディレイヤ値レジスタを”0”とする。次に、予め定めた領域に対しSDRモードでテストデータを書き込む(S402)。書き込んだ領域をDDRモードで読み出す(S403)。書き込んだ領域で、書き込んだデータと読み出したデータとの比較を行う(S404)。この結果が全てOKでなければ(No)、連続OK回数レジスタをクリアして(S405)、ステップ409に移行する。
ステップ404で全てOKなら(Yes)、連続OK回数レジスタをインクリメントする(S406)。連続OK回数レジスタの値と連続OK最大回数レジスタの値を比較し(S407)、最大OK回数を超えていなければ(No)、ステップ409に移行する。最大OK回数を超えているなら(Yes)、連続OK最大回数レジスタの値を連続OK回数レジスタの値とし、連続OK最終時ディレイヤ設定値レジスタの値を現在のディレイヤ設定値の値とする(S408)。ディレイヤの設定値と設定可能上限値を比較し(S409)、ディレイヤの設定値が設定可能上限値未満であれば(No)、ディレイヤ設定値をインクリメントし(S410)、ステップ402に戻る。ディレイヤの設定値が設定可能上限値以上であれば(Yes)、連続最大OK回数レジスタの値と予め定めたトレーニング成功判定回数とを比較する(S411)。連続最大OK回数レジスタの値がトレーニング成功判定回数未満なら(No)、トレーニング失敗である。連続最大OK回数レジスタの値がトレーニング成功判定回数以上なら(Yes)、ディレイヤ設定値を(連続OK最終時ディレイ設定−連続OK最大回数レジスタの値÷2)として(S412)、トレーニング成功に遷移する。なお、ステップ412において計算途中ででた少数点以下は切り捨てる。また、ステップ405ないしステップ412はトレーニング結果判定およびディレイヤ設定値算出制御ステップ(S420)と呼ぶ。
図14を用いてシステムLSIにディレイヤを設けたライトトレーニング手順を説明する。図14のフローは、ライトデータを遅延させる場合、メモリクロックを遅延させる場合に共通なフローである。
トレーニングを開始すると、まずレジスタをリセットする(S421)。予め定めた領域にDDRモードでテストデータを書き込む(S422)。書き込んだ領域をDDRモードで読み出す(S423)。書き込んだ領域で、書き込んだデータと読み出したデータとの比較を行う(S424)。このデータの比較以降は図13と同様にトレーニング結果判定およびディレイヤ設定値算出制御を実施する(S420)。
図15を用いてDDRメモリにディレイヤを設けたライトトレーニング手順を説明する。ここで、ディレイ対象はライトデータであってもメモリクロックであっても良い。なお、メモリ内部にはテストパターンを本来のメモリ領域とは別に持っている。
トレーニングを開始すると、まずレジスタをリセットする(S431)。ここでリセットするのは、以下の項目である。(1)ディレイヤの設定値レジスタを”0”とする。(2)連続OK回数レジスタを”0”とする。(3)連続OK最大回数レジスタを”0”とする。(4)連続OK最終時ディレイヤ値レジスタを”0”とする。次に、システムより予め定めた領域に対しDDRモードでテストデータを書き込む(S432)。書き込まれたデータとテストパターンとを比較する(S433)。この結果(S434)が全てOKでなければ(No)、連続OK回数レジスタをクリアして(S435)、ステップ439に移行する。
ステップ434で全てOKなら(Yes)、連続OK回数レジスタをインクリメントする(S436)。連続OK回数レジスタの値と連続OK最大回数レジスタの値を比較し(S437)、最大OK回数を超えていなければ(No)、ステップ439に移行する。最大OK回数を超えているなら(Yes)、連続OK最大回数レジスタの値を連続OK回数レジスタの値とし、連続OK最終時ディレイヤ設定値レジスタの値を現在のディレイヤ設定値の値とする(S438)。ディレイヤの設定値と設定可能上限値を比較し(S439)、ディレイヤの設定値が設定可能上限値未満であれば(No)、ディレイヤ設定値をインクリメントし(S440)、ステップ432に戻る。ディレイヤの設定値が設定可能上限値以上であれば(Yes)、連続最大OK回数レジスタの値と予め定めたトレーニング成功判定回数とを比較する(S441)。連続最大OK回数レジスタの値がトレーニング成功判定回数未満なら(No)、トレーニング失敗である。連続最大OK回数レジスタの値がトレーニング成功判定回数以上なら(Yes)、ディレイヤ設定値を(連続OK最終時ディレイ設定−連続OK最大回数レジスタの値÷2)として(S442)、トレーニング成功に遷移する。なお、ステップ442において計算途中ででた少数点以下は切り捨てる。また、ステップ435ないしステップ442はトレーニング結果判定およびディレイヤ設定値算出制御ステップ(S450)と呼ぶ。
図16を用いてDDRメモリにディレイヤを設けたリードトレーニング手順を説明する。ここで、ディレイ対象はリードデータであっても、リードデータ並走クロックであっても良い。なお、メモリ内部にはテストパターンを本来のメモリ領域とは別に持っている。また、システムにもテストパターンを持っている。
トレーニングを開始すると、まずレジスタをリセットする(S451)。ここでリセットするのは、以下の項目である。(1)ディレイヤの設定値レジスタを”0”とする。(2)連続OK回数レジスタを”0”とする。(3)連続OK最大回数レジスタを”0”とする。(4)連続OK最終時ディレイヤ値レジスタを”0”とする。次に、システムにテストパターン部をDDRモードでデータリードしてもらい、システム側でテストパターンを比較し、その結果の連絡を受ける(S452)。連絡を受けた比較結果が全データOKか確認する(S453)。このデータの比較以降は図15と同様にトレーニング結果判定およびディレイヤ設定値算出制御処理する(S450)。
なお、本実施例では、メモリ内部に正規に書き込まれたテストパターンを読み込んでいるので、最初からDDRモードでリードすることができる。
図17を参照して、図9に示すシステムLSI−DDRメモリシステムの制御フローを説明する。トレーニングを開始すると、まずリードデータ並走クロックのディレイ調整トレーニングを実施する(S501)。リードデータ並走クロックのディレイ調整トレーニングの結果が成功か否か確認する(S502)。否なら(No)、トレーニング失敗であり、一般メモリアクセス不可とする。成功ならば(Yes)、ライトデータディレイ調整トレーニングを実行する(S503)。ライトデータディレイ調整トレーニングの結果が成功か否か確認する(S504)。否なら(No)、トレーニング失敗であり、一般メモリアクセス不可とする。成功ならば(Yes)、トレーニング成功であり、一般メモリアクセス開始可とする。
図18を参照して、図10に示すシステムLSI−DDRメモリシステムの制御フローを説明する。トレーニングを開始すると、まず、メモリにおいてメモリクロックのディレイ調整トレーニングを実施する(S511)。メモリクロックのディレイ調整トレーニングの結果が成功か否か確認する(S512)。否なら(No)、トレーニング失敗であり、一般メモリアクセス不可とする。成功ならば(Yes)、システムLSIにおいてリードデータ並走クロックのディレイ調整トレーニングを実行する(S513)。リードデータ並走クロックのディレイ調整トレーニングの結果が成功か否か確認する(S514)。否なら(No)、トレーニング失敗であり、一般メモリアクセス不可とする。成功ならば(Yes)、トレーニング成功であり、一般メモリアクセス開始可とする。
以上説明した実施例に拠れば、DDRメモリまたはメモリ制御ICにおいて、リードデータとリードデータ並走クロックの位相関係およびライトデータとメモリクロックとの位相関係を調整することができる。その結果、個体差または環境差による伝播特性の差を調整し得る半導体装置(DDRメモリまたはメモリ制御IC)を提供することができる。
ディレイ対象をシステムLSI側のリードデータとしたシステムLSI−DDRメモリシステムのブロック図である。 ディレイ対象をシステムLSI側のリードデータ並走クロックとしたシステムLSI−DDRメモリシステムのブロック図である。 ディレイ対象をシステムLSI側のライトデータとしたシステムLSI−DDRメモリシステムのブロック図である。 ディレイ対象をシステムLSI側のメモリクロックとしたシステムLSI−DDRメモリシステムのブロック図である。 ディレイ対象をDDRメモリ側のライトデータとしたシステムLSI−DDRメモリシステムのブロック図である。 ディレイ対象をDDRメモリ側のライトデータ取り込みクロックとしたシステムLSI−DDRメモリシステムのブロック図である。 ディレイ対象をDDRメモリ側のリードデータとしたシステムLSI−DDRメモリシステムのブロック図である。 ディレイ対象をDDRメモリ側のリードデータ並走クロックとしたシステムLSI−DDRメモリシステムのブロック図である。 ディレイ対象をシステムLSIのライトデータとリードデータ並走クロックとしたシステムLSI−DDRメモリシステムのブロック図である。 ディレイ対象をDDRメモリのメモリクロックとシステムLSIのリード並走クロックとしたシステムLSI−DDRメモリシステムのブロック図である。 リードデータトレーニングのタイムチャートと比較結果を示す図である。 ライトデータトレーニングのタイムチャートと比較結果を示す図である。 ディレイヤをシステムLSIに設けたリードデータの読み込みを確実とする制御フローである。 ディレイヤをシステムLSIに設けたライトデータの読み込みを確実とする制御フローである。 ディレイヤをDDRメモリに設けたライトデータの読み込みを確実とする制御フローである。 ディレイヤをDDRメモリに設けたリードデータの読み込みを確実とする制御フローである。 図9に示すシステムLSI−DDRメモリシステムの制御フローである。 図10に示すシステムLSI−DDRメモリシステムの制御フローである。
符号の説明
100…DDRメモリ、110…ディレイヤ、120…インバータ、130…ラッチ、140…パターン比較部、150…ディレイ調整部、160…DDRデータ取り出し部、170…DDR化部、180…リードデータ並走クロック生成部、190…セレクタ、200…システムLSI、205…トレーニング設定部、210…入力バッファ、215…セレクタ、220…ディレイヤ、225…パターン比較部、230…ラッチ、240…インバータ、250…DDRデータ取り出し部、260…ディレイ調整部、270…メモリクロック生成部、280…DDR化部、290…出力バッファ、300…テストパターン。

Claims (10)

  1. データとクロックとを入力される半導体装置であって、
    前記データまたは前記クロックに可変な遅延を与えるディレイヤと、前記ディレイヤの遅延量を制御するディレイ調整部とを含む半導体装置。
  2. 請求項1に記載の半導体装置であって、
    前記データはDDRリードデータであり、
    前記クロックはリード並走クロックであることを特徴とする半導体装置。
  3. 請求項1に記載の半導体装置であって、
    前記データはDDRライトデータであり、
    前記クロックはメモリクロックであることを特徴とする半導体装置。
  4. データをクロックと共に送信する半導体装置であって、
    前記データまたは前記クロックに可変な遅延を与えるディレイヤと、前記ディレイヤの遅延量を制御するディレイ調整部とを含む半導体装置。
  5. 請求項4に記載の半導体装置であって、
    前記データはDDRライトデータであり、
    前記クロックはメモリクロックであることを特徴とする半導体装置。
  6. 請求項4に記載の半導体装置であって、
    前記データはDDRリードデータであり、
    前記クロックはリード並走クロックであることを特徴とする半導体装置。
  7. 請求項1ないし請求項6のいずれか一つに記載の半導体装置であって、
    前記ディレイヤは、複数の遅延素子とセレクタとで構成され、複数段に直列接続された前記遅延素子の少なくとも各段の出力を接続した前記セレクタの出力を選択することを特徴とする半導体装置。
  8. 請求項1ないし請求項6のいずれか一つに記載の半導体装置であって、
    テストパターンを記録する記録部をさらに備えることを特徴とする半導体装置。
  9. 請求項1に記載の半導体装置であって、
    テストパターンを記録する記録部と、前記テストパターンと前記データまたは前記データから生成したデータとを比較するパターン比較部とをさらに備え、
    前記パターン比較部が検出した比較結果を前記ディレイ調整部に送信することを特徴とする半導体装置。
  10. 請求項1に記載の半導体装置であって、
    テストパターンを記録する記録部と、前記テストパターンと前記データまたは前記データから生成したデータとを比較するパターン比較部とをさらに備え、
    前記パターン比較部が検出した比較結果を第2の半導体装置に送信することを特徴とする半導体装置。
JP2005191371A 2005-06-30 2005-06-30 半導体装置 Active JP4763360B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005191371A JP4763360B2 (ja) 2005-06-30 2005-06-30 半導体装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005191371A JP4763360B2 (ja) 2005-06-30 2005-06-30 半導体装置

Publications (2)

Publication Number Publication Date
JP2007012166A true JP2007012166A (ja) 2007-01-18
JP4763360B2 JP4763360B2 (ja) 2011-08-31

Family

ID=37750442

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005191371A Active JP4763360B2 (ja) 2005-06-30 2005-06-30 半導体装置

Country Status (1)

Country Link
JP (1) JP4763360B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1950529A1 (en) 2007-01-23 2008-07-30 Fujitsu Ltd. Angular velocity sensor
JP2008226423A (ja) * 2007-03-09 2008-09-25 Hynix Semiconductor Inc ライトトレーニング機能を持つ半導体メモリ装置
JP2009117025A (ja) * 2007-11-02 2009-05-28 Hynix Semiconductor Inc 半導体メモリ装置、半導体メモリ装置を備えるシステム、および、半導体メモリ装置の動作方法
JP2010015667A (ja) * 2008-06-30 2010-01-21 Hynix Semiconductor Inc データ伝達回路及びそれを備える半導体メモリ装置
US8201013B2 (en) 2008-05-21 2012-06-12 Renesas Electronics Corporation Memory controller, system including the controller, and memory delay amount control method
JP2012515408A (ja) * 2009-01-12 2012-07-05 ラムバス・インコーポレーテッド クロック転送低電力シグナリングシステム
US8271824B2 (en) 2008-10-30 2012-09-18 Renesas Electronics Corporation Memory interface and operating method of memory interface

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001337862A (ja) * 2000-05-29 2001-12-07 Fujitsu Ltd メモリシステム及びそのセットアップ方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001337862A (ja) * 2000-05-29 2001-12-07 Fujitsu Ltd メモリシステム及びそのセットアップ方法

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1950529A1 (en) 2007-01-23 2008-07-30 Fujitsu Ltd. Angular velocity sensor
JP2008226423A (ja) * 2007-03-09 2008-09-25 Hynix Semiconductor Inc ライトトレーニング機能を持つ半導体メモリ装置
JP2009117025A (ja) * 2007-11-02 2009-05-28 Hynix Semiconductor Inc 半導体メモリ装置、半導体メモリ装置を備えるシステム、および、半導体メモリ装置の動作方法
US9058437B2 (en) 2007-11-02 2015-06-16 Hynix Semiconductor Inc. Semiconductor memory device with high-speed data transmission capability, system having the same, and method for operating the same
US8201013B2 (en) 2008-05-21 2012-06-12 Renesas Electronics Corporation Memory controller, system including the controller, and memory delay amount control method
US8359490B2 (en) 2008-05-21 2013-01-22 Renesas Electronics Corporation Memory controller, system including the controller, and memory delay amount control method
JP2010015667A (ja) * 2008-06-30 2010-01-21 Hynix Semiconductor Inc データ伝達回路及びそれを備える半導体メモリ装置
US8271824B2 (en) 2008-10-30 2012-09-18 Renesas Electronics Corporation Memory interface and operating method of memory interface
US8737162B2 (en) 2009-01-12 2014-05-27 Rambus Inc. Clock-forwarding low-power signaling system
US8918667B2 (en) 2009-01-12 2014-12-23 Rambus Inc. Mesochronous signaling system with core-clock synchronization
US9043633B2 (en) 2009-01-12 2015-05-26 Rambus Inc. Memory controller with transaction-queue-monitoring power mode circuitry
JP2012515408A (ja) * 2009-01-12 2012-07-05 ラムバス・インコーポレーテッド クロック転送低電力シグナリングシステム
US9229523B2 (en) 2009-01-12 2016-01-05 Rambus Inc. Memory controller with transaction-queue-dependent power modes
US9753521B2 (en) 2009-01-12 2017-09-05 Rambus Inc. Chip-to-chip signaling link timing calibration
US10331193B2 (en) 2009-01-12 2019-06-25 Rambus Inc. Signaling interface with phase and framing calibration
US10901485B2 (en) 2009-01-12 2021-01-26 Rambus Inc. Clock-forwarding memory controller with mesochronously-clocked signaling interface
US11556164B2 (en) 2009-01-12 2023-01-17 Rambus Inc. Memory IC with data loopback
US11960344B2 (en) 2009-01-12 2024-04-16 Rambus Inc. Memory controller with looped-back calibration data receiver

Also Published As

Publication number Publication date
JP4763360B2 (ja) 2011-08-31

Similar Documents

Publication Publication Date Title
JP4763360B2 (ja) 半導体装置
KR101143469B1 (ko) 반도체 메모리의 출력 인에이블 신호 생성 회로
US10290336B2 (en) Methods and apparatuses including command delay adjustment circuit
US8456924B2 (en) Semiconductor memory device and method for operating the same
JP4524662B2 (ja) 半導体メモリチップ
US8514639B2 (en) Semiconductor memory device and method for operating the same
US20100169702A1 (en) Memory control apparatus, memory optimization program product, and memory optimization method
US8339877B2 (en) Semiconductor memory device comprising variable delay unit
JP2010158004A (ja) 遅延回路及び可変遅延回路
US20090039941A1 (en) Method and circuit for generating memory clock signal
US8581654B2 (en) Method of compensating clock skew, clock skew compensating circuit for realizing the method, and input/output system including the clock skew compensating circuit
US20150146477A1 (en) Semiconductor device
US20090168564A1 (en) Strobe signal controlling circuit
KR100718038B1 (ko) 반도체 메모리 장치의 뱅크 선택 회로
JP2005294947A (ja) 出力バッファ回路および半導体集積回路
KR102656206B1 (ko) 반도체 장치
US8531896B2 (en) Semiconductor system, semiconductor memory apparatus, and method for input/output of data using the same
JP2006107352A (ja) メモリコントローラ
US9094183B2 (en) Circuits for receiving data
US20060221761A1 (en) Control unit for deactivating and activating the control signals
JP2007305288A (ja) 半導体記憶装置のデータ出力回路
US20090039932A1 (en) Delay circuit of semiconductor memory apparatus
KR20090126774A (ko) 반도체 메모리 소자
KR20090081229A (ko) 버퍼 출력 제어 회로
KR20150116052A (ko) 반도체 메모리 장치 및 그의 동작 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070806

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100707

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100720

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100916

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

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

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

Free format text: PAYMENT UNTIL: 20140617

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4763360

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250