図面 (/)

技術 可変遅延回路,メモリ制御回路,遅延量設定装置,遅延量設定方法および遅延量設定プログラム

出願人 富士通株式会社
発明者 山崎学
出願日 2007年11月20日 (13年6ヶ月経過) 出願番号 2007-300818
公開日 2009年6月11日 (11年11ヶ月経過) 公開番号 2009-130455
状態 特許登録済
技術分野 メモリシステム 静的メモリのアクセス制御 パルス回路 DRAM
主要キーワード 出力遅延量 Dフリップフロップ デジタル遅延回路 フライバイ メモリインタフェイス 制御回路ユニット 数珠つなぎ グリッジ
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2009年6月11日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (15)

課題

回路規模を抑えつつ、信号が入力されてから出力するまでの遅延量を広範囲に設定することを目的とする。

解決手段

信号INが入力されてから出力するまでの遅延量を変更可能な可変遅延回路100であって、信号INを第1遅延量だけ遅延させる第1遅延部101と、信号INを第1遅延量よりも大きい第2遅延量だけ遅延させる第2遅延部102と、遅延量が第1遅延部101で遅延可能な最大遅延量を超える場合に、遅延量が第1遅延量と第2遅延量との和になる信号経路を選択する遅延量選択部103とをそなえることを特徴とする。

概要

背景

近年のメモリインタフェイスにおいては、JEDEC(Joint Electron Device Engineering Council)で規格化されたDDR3(Double Data Rate 3)メモリインタフェイス等のように年々高速化が進んでいる。
このようなメモリインタフェイスを設計する場合には、DLL(Delay Locked Loop)が必須となり、このDLLの内部には、信号が入力されてから出力するまでの遅延量を変更可能な可変遅延回路が用いられている(例えば、下記特許文献1参照)。

図14は従来の可変遅延回路の構成例を模式的に示す図であり、複数(図14に示す例では10個)の遅延素子91−1〜91−10を直列に接続して構成された従来の可変遅延回路90において、信号の遅延量を変更する手法を説明するための図である。
なお、以下、遅延素子を示す符号としては、複数の遅延素子のうち1つを特定する必要があるときは符号91−1〜91−10を用いるが、任意の遅延素子を指すときには符号91を用いる。

そして、従来の可変遅延回路90は、各遅延素子91−1〜91−10の各制御信号入力端子CONTに入力される制御信号に基づいて、最前段の遅延素子91−1に入力された信号が通過する遅延素子91の数を増減させることにより、信号が入力されてから出力するまでの遅延量を変更しうるようになっている。
例えば、図14に示すように、遅延素子91−8に対して制御信号としてその制御信号入力端子CONTにHigh信号(図14の符号“H”参照)が入力されるとともに、遅延素子91−8以外の各遅延素子91−1〜91−7,91−9,91−10に対して制御信号として各制御信号入力端子CONTにLow信号(図14の符号“L”参照)が入力された場合には、最前段の遅延素子91−1から入力された信号が(図14の符号“IN”参照)、複数の遅延素子91−2〜91−7を遅延素子91−2から遅延素子91−7にかけて順次通過して、遅延素子91−8で折り返されて、複数の遅延素子91−2〜91−7を、今度は、遅延素子91−7から遅延素子91−2にかけて順次通過して、最前段の遅延素子91−1から出力される(図14の符号“OUT”参照)。

このように、従来の可変遅延回路においては、信号が入力されてから出力するまでの遅延量を、信号が通過(伝搬)する遅延素子の数の増減によって変化させるようになっている。
特開2005−286467号公報

概要

回路規模を抑えつつ、信号が入力されてから出力するまでの遅延量を広範囲に設定することを目的とする。信号INが入力されてから出力するまでの遅延量を変更可能な可変遅延回路100であって、信号INを第1遅延量だけ遅延させる第1遅延部101と、信号INを第1遅延量よりも大きい第2遅延量だけ遅延させる第2遅延部102と、遅延量が第1遅延部101で遅延可能な最大遅延量を超える場合に、遅延量が第1遅延量と第2遅延量との和になる信号経路を選択する遅延量選択部103とをそなえることを特徴とする。

目的

さらに、大量の遅延素子91を制御する必要があることから、消費電力が増加するだけでなく、同時スイッチングノイズが増大することも懸念される。
本発明は、このような課題に鑑み創案されたもので、回路規模を抑えつつ、広範囲の遅延量を高精度に設定することを目的とする。

効果

実績

技術文献被引用数
2件
牽制数
2件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

信号が入力されてから出力するまでの遅延量を変更可能な可変遅延回路であって、該信号を第1遅延量だけ遅延させる第1遅延部と、該信号を該第1遅延量よりも大きい第2遅延量だけ遅延させる第2遅延部と、該遅延量が該第1遅延部で遅延可能な最大遅延量を超える場合に、該遅延量が該第1遅延量と該第2遅延量との和になる信号経路を選択する遅延量選択部とをそなえることを特徴とする、可変遅延回路。

請求項2

該第2遅延部は、該遅延量に基づいて、複数種類タイミング信号のうちのいずれかを選択する選択回路と、該選択回路により選択された該タイミング信号に応じて、該信号を該第2遅延量だけ遅延させる順序回路とをそなえることを特徴とする、請求項1に記載の可変遅延回路。

請求項3

ライトレベリング機能をそなえ、複数のメモリに対して制御を行なうメモリ制御回路であって、前記複数のメモリに対応してそれぞれ、該メモリに出力するデータストローブ出力信号を、該ライトレベリング機能を用いて設定された出力遅延量だけ遅延させる出力用可変遅延回路をそなえ、該出力用可変遅延回路が、該データストローブ出力信号を第1出力遅延量だけ遅延させる第1出力遅延部と、該データストローブ出力信号を該第1出力遅延量よりも大きい第2出力遅延量だけ遅延させる第2出力遅延部と、該出力遅延量が該第1出力遅延部で遅延可能な最大出力遅延量を超える場合に、該出力遅延量が該第1出力遅延量と該第2出力遅延量との和になる信号経路を選択する出力遅延量選択部とをそなえることを特徴とする、メモリ制御回路。

請求項4

該第2出力遅延部は、該出力遅延量に基づいて、複数種類のタイミング信号のうちのいずれかを選択する出力用選択回路と、該出力用選択回路により選択された該タイミング信号に応じて、該データストローブ出力信号を該第2出力遅延量だけ遅延させる出力用順序回路とをそなえることを特徴とする、請求項3に記載のメモリ制御回路。

請求項5

該タイミング信号が、該メモリに対してリード(read)/ライト(write)動作の制御を行なう際に用いられるクロック信号であることを特徴とする、請求項4に記載のメモリ制御回路。

請求項6

ライトレベリング機能をそなえ、複数のメモリに対して制御を行なうメモリ制御回路であって、前記複数のメモリに対応してそれぞれ、該メモリから入力されるデータ入力信号を、該ライトレベリング機能を用いて設定された該メモリに出力するデータストローブ出力信号の出力遅延量に応じて設定された入力遅延量だけ遅延させる入力用可変遅延回路をそなえ、該入力用可変遅延回路が、該データ入力信号を第1入力遅延量だけ遅延させる第1入力遅延部と、該データ入力信号を該第1入力遅延量よりも大きい第2入力遅延量だけ遅延させる第2入力遅延部と、該入力遅延量が該第1入力遅延部で遅延可能な最大入力遅延量を超える場合に、該入力遅延量が該第1入力遅延量と該第2入力遅延量との和になる信号経路を選択する入力遅延量選択部とをそなえることを特徴とする、メモリ制御回路。

請求項7

請求項3〜6に記載されたメモリ制御回路の該出力遅延量を、前記複数のメモリに対応してそれぞれ設定する遅延量設定装置であって、一のメモリに対応する設定対象の出力遅延量を、他のメモリに対応する設定済の出力遅延量に基づいて設定する出力遅延量設定部をそなえることを特徴とする、遅延量設定装置。

請求項8

該出力遅延量設定部は、前記複数のメモリに対応するそれぞれの該出力遅延量を、クロック信号線配線経路に沿って順次設定することを特徴とする、請求項7に記載の遅延量設定装置。

請求項9

請求項3〜6に記載されたメモリ制御回路の該出力遅延量を、前記複数のメモリに対応してそれぞれ設定する遅延量設定方法であって、一のメモリに対応する設定対象の出力遅延量を、他のメモリに対応する設定済の出力遅延量に基づいて設定する出力遅延量設定ステップをそなえることを特徴とする、遅延量設定方法。

請求項10

請求項3〜6に記載されたメモリ制御回路の該出力遅延量を、前記複数のメモリに対応してそれぞれ設定する遅延量設定機能コンピュータに実行させるための遅延量設定プログラムであって、一のメモリに対応する設定対象の出力遅延量を、他のメモリに対応する設定済の出力遅延量に基づいて設定する出力遅延量設定部として、該コンピュータを機能させることを特徴とする、遅延量設定プログラム。

技術分野

0001

本発明は、信号が入力されてから出力するまでの遅延量を制御する技術に関する。

背景技術

0002

近年のメモリインタフェイスにおいては、JEDEC(Joint Electron Device Engineering Council)で規格化されたDDR3(Double Data Rate 3)メモリインタフェイス等のように年々高速化が進んでいる。
このようなメモリインタフェイスを設計する場合には、DLL(Delay Locked Loop)が必須となり、このDLLの内部には、信号が入力されてから出力するまでの遅延量を変更可能な可変遅延回路が用いられている(例えば、下記特許文献1参照)。

0003

図14は従来の可変遅延回路の構成例を模式的に示す図であり、複数(図14に示す例では10個)の遅延素子91−1〜91−10を直列に接続して構成された従来の可変遅延回路90において、信号の遅延量を変更する手法を説明するための図である。
なお、以下、遅延素子を示す符号としては、複数の遅延素子のうち1つを特定する必要があるときは符号91−1〜91−10を用いるが、任意の遅延素子を指すときには符号91を用いる。

0004

そして、従来の可変遅延回路90は、各遅延素子91−1〜91−10の各制御信号入力端子CONTに入力される制御信号に基づいて、最前段の遅延素子91−1に入力された信号が通過する遅延素子91の数を増減させることにより、信号が入力されてから出力するまでの遅延量を変更しうるようになっている。
例えば、図14に示すように、遅延素子91−8に対して制御信号としてその制御信号入力端子CONTにHigh信号図14の符号“H”参照)が入力されるとともに、遅延素子91−8以外の各遅延素子91−1〜91−7,91−9,91−10に対して制御信号として各制御信号入力端子CONTにLow信号図14の符号“L”参照)が入力された場合には、最前段の遅延素子91−1から入力された信号が(図14の符号“IN”参照)、複数の遅延素子91−2〜91−7を遅延素子91−2から遅延素子91−7にかけて順次通過して、遅延素子91−8で折り返されて、複数の遅延素子91−2〜91−7を、今度は、遅延素子91−7から遅延素子91−2にかけて順次通過して、最前段の遅延素子91−1から出力される(図14の符号“OUT”参照)。

0005

このように、従来の可変遅延回路においては、信号が入力されてから出力するまでの遅延量を、信号が通過(伝搬)する遅延素子の数の増減によって変化させるようになっている。
特開2005−286467号公報

発明が解決しようとする課題

0006

しかしながら、上述した可変遅延回路90を用いて遅延量を設定する場合においては、大きな遅延量を設定したり、小刻みに遅延量を設定したりするためには、大量の遅延素子91が必要となり、回路規模が増大することになる。
そして、遅延量を設定すべきデータ信号線の本数が多い場合や、複数のメモリインタフェイスを1のチップ集約したい場合等のように、上述した可変遅延回路90の数が多くなると、回路規模がより増大し、製造コストが嵩む場合もある。

0007

さらに、大量の遅延素子91を制御する必要があることから、消費電力が増加するだけでなく、同時スイッチングノイズが増大することも懸念される。
本発明は、このような課題に鑑み創案されたもので、回路規模を抑えつつ、広範囲の遅延量を高精度に設定することを目的とする。

課題を解決するための手段

0008

上記目的を達成するために、開示の可変遅延回路は、信号を第1遅延量だけ遅延させる第1遅延部と、信号を第1遅延量よりも大きい第2遅延量だけ遅延させる第2遅延部と、遅延量が第1遅延部で遅延可能な最大遅延量を超える場合に、遅延量が第1遅延量と第2遅延量との和になる信号経路を選択する遅延量選択部とをそなえている。
また、開示のメモリ制御回路は、ライトレベリング機能をそなえ、複数のメモリに対して制御を行なうメモリ制御回路であって、複数のメモリに対応してそれぞれ、メモリに出力するデータストローブ出力信号を、ライトレベリング機能を用いて設定された出力遅延量だけ遅延させる出力用可変遅延回路をそなえ、この出力用可変遅延回路が、データストローブ出力信号を第1出力遅延量だけ遅延させる第1出力遅延部と、データストローブ出力信号を第1出力遅延量よりも大きい第2出力遅延量だけ遅延させる第2出力遅延部と、出力遅延量が第1出力遅延部で遅延可能な最大出力遅延量を超える場合に、出力遅延量が第1出力遅延量と第2出力遅延量との和になる信号経路を選択する出力遅延量選択部とをそなえている。

0009

さらに、開示のメモリ制御回路は、ライトレベリング機能をそなえ、複数のメモリに対して制御を行なうメモリ制御回路であって、複数のメモリに対応してそれぞれ、メモリから入力されるデータ入力信号を、ライトレベリング機能を用いて設定されたメモリに出力するデータストローブ出力信号の出力遅延量に応じて設定された入力遅延量だけ遅延させる入力用可変遅延回路をそなえ、この入力用可変遅延回路が、データ入力信号を第1入力遅延量だけ遅延させる第1入力遅延部と、データ入力信号を第1入力遅延量よりも大きい第2入力遅延量だけ遅延させる第2入力遅延部と、入力遅延量が第1入力遅延部で遅延可能な最大入力遅延量を超える場合に、入力遅延量が第1入力遅延量と第2入力遅延量との和になる信号経路を選択する入力遅延量選択部とをそなえている。

0010

そして、開示の遅延量設定装置は、上述したメモリ制御回路の出力遅延量を、複数のメモリに対応してそれぞれ設定する遅延量設定装置であって、一のメモリに対応する設定対象の出力遅延量を、他のメモリに対応する設定済の出力遅延量に基づいて設定する出力遅延量設定部をそなえている。
また、開示の遅延量設定方法は、上述したメモリ制御回路の出力遅延量を、複数のメモリに対応してそれぞれ設定する遅延量設定方法であって、一のメモリに対応する設定対象の出力遅延量を、他のメモリに対応する設定済の出力遅延量に基づいて設定する出力遅延量設定ステップをそなえている。

0011

さらに、開示の遅延量設定プログラムは、上述したメモリ制御回路の出力遅延量を、複数のメモリに対応してそれぞれ設定する遅延量設定機能コンピュータに実行させるための遅延量設定プログラムであって、一のメモリに対応する設定対象の出力遅延量を、他のメモリに対応する設定済の出力遅延量に基づいて設定する出力遅延量設定部としてコンピュータを機能させるようになっている。

発明の効果

0012

開示の技術によれば、以下の少なくともいずれか1つの効果ないし利点がある。
(1)回路規模を小さくできる。
(2)広範囲の遅延量を高精度に設定できる。
(3)消費電力を低減することができる。
(4)同時スイッチングノイズを低減することができる。

発明を実施するための最良の形態

0013

〔1〕本発明の第1実施形態の説明
以下、図面を参照しながら本発明の第1実施形態について説明する。
図1は本発明の第1実施形態としての可変遅延回路の構成例を模式的に示す図、図2はその動作を説明するためのタイミングチャートである。
本発明の第1実施形態に係る可変遅延回路100は、信号が入力されてから出力するまでの遅延量TDLを変更可能なものであって、図1に示すように、第1遅延回路(第1遅延部)101,第2遅延回路(第2遅延部)102およびセレクタ(遅延量選択部)103をそなえた回路として構成されている。

0014

第1遅延回路101は、入力された信号を第1遅延量(第1遅延時間)DL1だけ遅延させるものであって、例えば、設定すべき遅延量TDLに基づき入力される遅延制御信号SELdlyに基づいて、後述するセレクタ103から入力された信号INselを、直列に接続された所定数の遅延素子(図示省略)に通過させることにより第1遅延量DL1だけ遅延させてデータ出力信号OUTとして出力するデジタル遅延回路で構成されている。なお、デジタル遅延回路は既知であるため、その詳細な説明を省略する。

0015

また、第1遅延量DL1には、第1遅延回路101を構成する遅延素子の総数に対応する最大遅延量MDLを上限として、信号INselを通過させる遅延素子の数が設定される。
そして、この第1遅延回路101では、信号INselを通過させる遅延素子の数を段階的に変更して第1遅延量DL1を設定可能に構成されており、例えば、第1遅延回路101が8個の遅延素子で構成されている場合には、8段階の第1遅延量DL1を設定可能に構成されている。

0016

第2遅延回路102は、入力された信号を第1遅延量DL1よりも大きい第2遅延量(第2遅延時間)DL2だけ遅延させるものであって、例えば、セレクタ(選択回路)104およびDフリップフロップ順序回路)105をそなえて構成されている。
セレクタ104は、位相が異なる複数((m+1)個;但し、mは1以上の自然数)種類のタイミング信号TS0〜TSmが入力され、設定すべき遅延量TDLに基づいて、これらの入力された複数種類のタイミング信号TS0〜TSmのうちのいずれかを選択するものである。

0017

また、これらの複数種類のタイミング信号TS0〜TSmは、互いに同じ波形波長振幅)を有し、第0タイミング信号TS0から第mタイミング信号TSmにかけて第1遅延回路101の最大遅延量MDLよりも大きい間隔で順次遅延してセレクタ104に入力されるようになっている。
例えば、本実施形態においては、複数種類のタイミング信号TS0〜TSmは、第0タイミング信号TS0から第mタイミング信号TSmにかけて位相αで順次遅延してセレクタ104に入力されるようになっている。そして、位相αとタイミング信号の個数m+1との間では、m+1=360/αの関係式成立する。本実施形態においては、α=90°の例について説明するものであり、m+1=360/90であることから、m=3となる。

0018

従って、セレクタ104は、例えば、設定すべき遅延量TDLに基づき入力される第1選択信号SELtsに基づいて、位相が異なる複数のタイミング信号TS0〜TSmの中から一のタイミング信号を選択し、選択タイミング信号TSsel(CLKノード)として出力するようになっている。
Dフリップフロップ105は、セレクタ104により選択された選択タイミング信号TSselに応じて、入力された信号を第2遅延量DL2だけ遅延させるものであって、例えば、セレクタ104から入力される選択タイミング信号TSselの立上り(もしくは立下りエッジに同期して、データ入力信号INを信号tdINとして出力するようになっている。そして、Dフリップフロップ105は、セレクタ104から入力される選択タイミング信号TSselの次の立上り(もしくは立下り)エッジが現れるまで、信号tdINの値を保持するようになっている。

0019

セレクタ103は、設定すべき遅延量TDLと第1遅延回路101で遅延可能な最大遅延量MDLとに基づき入力される第2選択信号SELinに基づいて、信号の経路を選択するものである。
本実施形態においては、セレクタ103は、例えば、遅延量TDLが最大遅延量MDLを超えない場合には、データ入力信号INを信号INselとして第1遅延回路101に出力する経路を選択し、遅延量TDLが最大遅延量MDLを超える場合には、Dフリップフロップ105から入力される信号tdINを信号INselとして第1遅延回路101に出力する経路を選択するようになっている。

0020

即ち、本実施形態においては、セレクタ103は、遅延量TDLが最大遅延量MDLを超えない場合には、遅延量TDLが第1遅延量DL1になる信号の経路を選択し、遅延量TDLが最大遅延量MDLを超える場合には、遅延量TDLが第1遅延量DL1と第2遅延量DL2との和になる信号の経路を選択するのである。
なお、上述したセレクタ103およびセレクタ104においては、出力信号にグリッジが生じることが懸念されるが、例えば、トレーニング期間を設けてその期間中の送受信データを無効としたり、グリッジが出ないように第1選択信号SELtsや第2選択信号SELinの切替タイミングを考慮して設計したりすることにより、グリッジによる影響を回避することができる。

0021

上述の如く構成された本発明の第1実施形態に係る可変遅延回路100における、選択タイミング信号TSselとして第2タイミング信号TS2を選択した場合の動作について、図2を参照しながら説明する。なお、以下、α=90°の例について示す。
セレクタ104には、第0タイミング信号TS0がData0としてのデータ入力信号INと同じもしくはほぼ同じタイミングで入力され(図2の時間“A1”参照)、第1タイミング信号TS1が第0タイミング信号TS0から位相をα遅延させた状態(タイミング)で入力され(図2の時間“A2”参照)、以下同様に、第2タイミング信号TS2〜第mタイミング信号TSmが、第2タイミング信号TS2から第mタイミング信号TSmにかけて位相をαずつ順次遅延させた状態でそれぞれ入力されている(図2の時間“A3”および“A5”参照)。

0022

この状態において、セレクタ104は、第1選択信号SELtsに基づいて、第2タイミング信号TS2を選択しているので(図2の符号“SELts”参照)、Dフリップフロップ105には、選択タイミング信号TSselが第2タイミング信号TS2の立ち上がりに合わせたタイミングで入力される(図2の時間“A3”,“A7”,“A10”および“A13”参照)。

0023

Dフリップフロップ105は、Data0がデータ入力信号INとして入力され、選択タイミング信号TSselが第2タイミング信号TS2の立ち上がりに合わせたタイミングで入力されると、信号tdINを出力する(図2の時間“A3”参照)。即ち、Dフリップフロップ105は、Data0がデータ入力信号INとして入力されてから第2遅延量DL2(図2の時間“A1”〜“A3”参照)だけ遅延して信号tdINを出力する。

0024

そして、セレクタ103は、第2選択信号SELinに基づいて(図2の符号“SELin”参照)、その立ち上がりのタイミングでDフリップフロップ105から入力された信号tdINを信号INselとして第1遅延回路101に出力し(図2の時間“A3”参照)、第1遅延回路101は、遅延制御信号SELdlyに基づいて、信号INselを第1遅延量DL1だけ遅延させてデータ出力信号OUTとして出力する(図2の時間“A4”参照)。

0025

以下、同様に、Data1〜Data3のそれぞれについて、Dフリップフロップ105は、Data1〜Data3としてのデータ入力信号INが入力されてから(図2の時間“A6”,“A9”および“A12”参照)第2遅延量DL2だけ遅延して信号tdINを出力し(図2の時間“A7”,“A10”および“A13”参照)、第1遅延回路101は、Data1〜Data3に対応する各信号INselを第1遅延量DL1だけ遅延させてデータ出力信号OUTとして出力する(図2の時間“A8”,“A11”および“A14”参照)。
これにより、Data0〜Data3は、第1遅延量DL1と第2遅延量DL2との和になる遅延量TDLだけ遅延してデータ出力信号OUTとして出力されるのである。

0026

このように、本発明の第1実施形態としての可変遅延回路100によれば、位相が異なる複数のタイミング信号TS0〜TSmを第1遅延回路101の最大遅延量MDLよりも大きい間隔で順次遅延してセレクタ104に入力することにより、大きい間隔で第2遅延量DL2を設定した後に、小さい間隔で第1遅延量DL1を設定することができるので、広範囲の遅延量TDLを高精度に設定でき、利便性が向上する。又、第1遅延回路101だけで遅延量TDLを設定する場合に比べて、第1遅延回路101の遅延素子の数を削減することができる。従って、回路規模を抑えつつ、広範囲の遅延量TDLを高精度に設定できる。
また、セレクタ104にて複数のタイミング信号TS0〜TSmの中から一のタイミング信号を選択し、セレクタ104にて選択したタイミング信号の立ち上がりに合わせて信号INを第2遅延量DL2だけ遅延させることにより、大量の遅延素子を設ける必要がなくなり、これにより、消費電力を低減するとともに、同時スイッチングノイズを低減することができる。

0027

〔2〕本発明の第2実施形態の説明
図3および図4は本発明の第2実施形態としての情報処理装置の構成例を模式的に示す図であり、図3メモリコントローラとDIMMとの関係を示す図、図4は処理部とメモリコントローラとDIMMとの関係を示す図である。又、図5および図6はそのメモリコントローラの回路構成例を模式的に示す図である。

0028

本発明の第2実施形態に係る情報処理装置(遅延量設定装置)10aは、図3および図4に示すように、DIMM(Dual Inline Memory Module)11,メモリコントローラ(メモリ制御回路)12および処理部13(図4参照)をそなえたコンピュータとして構成されている。
DIMM11は、複数のメモリを搭載したメモリモジュールであって、本実施形態においては、図3および図4に示すように、複数(n+1個;nは1以上の自然数)のSDRAM(Synchronous DRAM;メモリ)300−0〜300−nをそなえて構成されている。又、n+1はch(チャンネル)の数を示しており、以下、図中においては、便宜上、一部のSDRAM(例えば、SDRAM300−0とSDRAM300−n)のみを示している。なお、SDRAMは既知の技術であり、その詳細な説明を省略する。

0029

また、以下、SDRAMを示す符号としては、複数のSDRAMのうち1つを特定する必要があるときは符号300−0〜300−nを用いるが、任意のSDRAMを指すときには符号300を用いる。
そして、本実施形態においては、メモリコントローラ12と複数のSDRAM300−0〜300−nとの一部の配線フライバイトポロジが採用されている。

0030

フライバイトポロジとは、図3に示すように、メモリコントローラ12と複数のSDRAM300−0〜300−nとをデイジーチェーンで配線することをいう。
従って、本実施形態においては、後述する第1クロック信号生成部14によって生成されるクロック信号CK1を出力(供給)するためのクロック信号線がSDRAM300−0〜300−nに対してデイジーチェーンで配線されており、図3および図4に示すように、第1クロック信号生成部14(図4参照)に接続されたクロック信号線が、SDRAM300−0からSDRAM300−nにかけて数珠つなぎに接続されている。又、アドレス信号Addおよびコマンド信号CMDを出力するための信号線についても、クロック信号線と同様に、SDRAM300−0〜300−nに対してデイジーチェーンで配線されている。

0031

そして、メモリコントローラ12と複数のSDRAM300−0〜300−nとの間をつなぐデータ信号線は、メモリコントローラ12から複数のSDRAM300−0〜300−nのそれぞれに並列に接続されており、図4に示す例では、各SDRAM300には、メモリコントローラ12から、データストローブ信号DQSを伝送するための1本のDQS信号線(データ信号線)とデータ信号DQを伝送するためのk+1本(kは1以上の自然数)のDQ信号線(データ信号線)とがそれぞれ並列に接続されており、又、複数のSDRAM300−0〜300−nにおいては、これらのデータ信号線は互いに等しい線長等長)に構成されている。即ち、メモリコントローラ12と複数のSDRAM300−0〜300−nとの間をつなぐ複数のデータ信号線は、等長接続されている。

0032

なお、図4〜6においては、便宜上、クロック信号線とアドレス信号Addおよびコマンド信号CMDを出力するための信号線(例えば、図4の符号“Add”および“CMD”参照)とがDIMM11の端部付近紙面上部)において接続されていることを示しているが、実際には、図3に示すように、これらの信号線がDIMM11の中央部(紙面中央)に接続されているものとする。

0033

メモリコントローラ12は、クロック信号線がデイジーチェーンで接続された複数のSDRAM300−0〜300−nに対して、クロック信号線を介してクロック信号CK1を供給することにより、リード(read)/ライト(write)動作の制御を行なうDDR3(Double Data Rate 3)メモリインタフェイスであって、例えば、図4に示すように、第1クロック信号生成部14および複数の制御回路ユニット15−0〜15−nをそなえて構成されている。

0034

また、メモリコントローラ12は、ライトレベリング機能をそなえている。なお、このライトレベリング機能の詳細については後述する。
複数の制御回路ユニット15−0〜15−nは、上述した複数のSDRAM300−0〜300−nのそれぞれに対応して構成されている。即ち、メモリコントローラ12は、例えば、図4に示すように、SDRAM300−0に対応する制御回路ユニット15−0や、SDRAM300−nに対応する制御回路ユニット15−nをそなえて構成されている。

0035

なお、以下、制御回路ユニットを示す符号としては、複数の制御回路ユニットのうち1つを特定する必要があるときは符号15の後に“−(ハイフン)”とともに符号0〜nを用いるが、任意の制御回路ユニットを指すときには符号15を用いる。
また、図中においては、便宜上、制御回路ユニット15−0と制御回路ユニット15−nのみを示している。

0036

第1クロック信号生成部14は、後述する処理部13から入力されるクロック信号CLKに基づいて所定周期のクロック信号CK1を生成・出力するものであって、例えば、図5および図6に示すように、クロック信号線(図5および図6の符号“CK1”参照)を介してDIMM11(SDRAM300−0〜300−n)に出力するとともに、複数の制御回路ユニット15−0〜15−nのそれぞれにも出力するようになっている。この第1クロック信号生成部14は、クロック信号CLKと同じクロック周期のクロック信号をクロック信号CK1として出力してもよく、又、クロック信号CLKを1/2や1/4等の他のクロック周期に変換したクロック信号CK1を出力してもよい。

0037

制御回路ユニット15は、データストローブ信号DQSやデータ信号DQの入出力を制御するものであって、例えば、図4図6に示すように、DQS信号生成部16,リード側DQS遅延回路DR0(図5図6参照),複数(k+1個;kは1以上の自然数)のDQ信号制御部17−0〜17−kおよび論理和回路OR(図5図6参照)をそなえて構成されている。

0038

なお、以下、DQ信号制御部を示す符号としては、DQ信号制御部のうち1つを特定する必要があるときは符号17の後に“−(ハイフン)”とともに符号0〜kを用いるが、任意のDQ信号制御部を指すときには符号17を用いる。
また、図中においては、便宜上、DQ信号制御部17−0とDQ信号制御部17−kのみを示している。

0039

DQS信号生成部16は、SDRAM300に出力するためのデータストローブ信号(データストローブ出力信号)DQSを生成するものであって、制御回路ユニット15に1つそなえられ、例えば、制御回路ユニット15−0においては、図5に示すように、データストローブ信号DQS−0を生成してSDRAM300−0に出力するようになっており、制御回路ユニット15−nにおいては、図6に示すように、データストローブ信号DQS−nを生成してSDRAM300−nに出力するようになっている。

0040

なお、以下、データストローブ信号を示す符号としては、複数のデータストローブ信号のうち1つを特定する必要があるときは符号DQS−0〜DQS−nを用いるが、任意のデータストローブ信号を指すときには符号DQSを用いる。
このDQS信号生成部16は、例えば、図5および図6に示すように、出力用可変遅延回路DW0,第2クロック信号生成部18およびフリップフロップFF0をそなえて構成されている。

0041

出力用可変遅延回路DW0は、上述した第1実施形態に係る可変遅延回路100で構成されるものであって、後述する出力遅延量設定部23からの出力制御信号d1に基づいて、後述する処理部13から入力されたクロック信号CLK(図1の符号“IN”に相当)を、後述する出力遅延量設定部23によって設定された出力遅延量だけ遅延させて第2クロック信号生成部18に出力するようになっており(図1の符号“OUT”に相当)、これにより、出力用可変遅延回路DW0は、SDRAM300に出力するデータストローブ信号DQSを出力遅延量だけ遅延させるといえる。

0042

なお、本実施形態においては、複数の制御回路ユニット15−0〜15−nに対してそれぞれ出力遅延量が設定されている。具体的には、制御回路ユニット15−0における出力用可変遅延回路DW0には出力遅延量Dt1−0が設定されており、同様に、制御回路ユニット15−nにおける出力用可変遅延回路DW0には出力遅延量Dt1−nが設定されている。

0043

なお、以下、出力遅延量を示す符号としては、複数の出力遅延量のうち1つを特定する必要があるときは符号Dt1−0〜Dt1−nを用いるが、任意の出力遅延量を指すときには符号Dt1を用いる。
そして、本実施形態の出力用可変遅延回路DW0においては、出力制御信号d1が、上述した第1実施形態における遅延制御信号SELdly,第1選択信号SELtsおよび第2選択信号SELinに相当し、出力遅延量Dt1が、上述した第1実施形態における遅延量TDLに相当する。

0044

また、本実施形態の出力用可変遅延回路DW0では、“0”〜“7”の8段階で第1遅延量DL1(上記第1実施形態参照)を設定可能な第1遅延回路(第1出力遅延部)101が用いられており、最大遅延量MDLが“7”となっている。
さらに、本実施形態の出力用可変遅延回路DW0には、第1クロック信号生成部14から取り出された(抽出された)複数のクロック信号CK1−0〜CK1−mが入力されるようになっており、これらの複数のクロック信号CK1−0〜CK1−mが、上述した第1実施形態における複数のタイミング信号TS0〜TSmに相当する。

0045

なお、本実施形態においては、これらの複数のクロック信号CK1−0〜CK1−mは、第0クロック信号CK1−0から第mクロック信号CK1−mにかけてα(=90°)の位相で順次遅延するように、例えば、第1クロック信号生成部14における所定位置からそれぞれ取り出して出力用可変遅延回路DW0に入力されるようになっている。
なお、第1クロック信号生成部14から複数のクロック信号CK1−0〜CK1−mを取り出す手法については、既知の種々の手法を用いることができる。例えば、第1クロック信号生成部14が複数の遅延素子(図示省略)を直列に接続して構成された可変遅延回路である場合には、複数のクロック信号CK1−0〜CK1−mは、第0クロック信号CK1−0から第mクロック信号CK1−mにかけてα(=90°)の位相で順次遅延するように、各遅延素子の接点からそれぞれ取り出されて出力用可変遅延回路DW0に入力されるようになっている。このように、第1クロック信号生成部14を構成する遅延素子を設計時にマージンを持たせた数(段数)で作り込んでおき、第1クロック信号生成部14を構成する可変遅延回路(即ち、DLL(Delay Locked Loop)内で使用されている可変遅延回路)が出力用可変遅延回路DW0と同等の回路で構成されることにより、例えば、製造プロセスよるばらつき・電源電圧変動等の影響によって出力用可変遅延回路DW0の出力遅延量Dt1が変動したとしても、出力用可変遅延回路DW0において最大遅延量MDL(=α)となる条件を容易に求めることができる。

0046

また、図中においては、便宜上、複数のクロック信号CK1−0〜CK1−mを符号CK1で示している。
従って、出力用可変遅延回路DW0は、データストローブ信号DQSを第1遅延量(第1出力遅延量)DL1だけ遅延させる第1遅延回路101と、データストローブ信号DQSを第1遅延量DL1よりも大きい第2遅延量(第2出力遅延量)DL2だけ遅延させる第2遅延回路(第2出力遅延部)102と、出力遅延量Dt1が第1遅延回路101で遅延可能な最大遅延量(最大出力遅延量)MDLを超える場合に、出力遅延量Dt1が第1遅延量DL1と第2遅延量DL2との和になる信号経路を選択するセレクタ(出力遅延量選択部)103とをそなえるのである(図1参照)。

0047

そして、第2遅延回路102においては、セレクタ(出力用選択回路)104が、出力遅延量Dt1に基づいて、位相が異なる複数種類のクロック信号CK1−0〜CK1−mのうちのいずれかを選択し、Dフリップフロップ(出力用順序回路)105が、セレクタ104により選択されたタイミング信号に応じて、データストローブ信号DQSを第2遅延量DL2だけ遅延させるのである(図1参照)。

0048

第2クロック信号生成部18は、後述する処理部13から入力されるクロック信号CLKに基づいてクロック信号CK2を生成・出力(供給)するものであって、例えば、図5および図6に示すように、クロック信号CLKが入力されると、所定周期のクロック信号CK2をフリップフロップFF0および後述するフリップフロップFF2に出力するようになっている。この第2クロック信号生成部18は、クロック信号CLKと同じクロック周期のクロック信号をクロック信号CK2として出力してもよく、又、クロック信号CLKを1/2や1/4等の他のクロック周期に変換したクロック信号CK2を出力してもよい。

0049

フリップフロップFF0は、第2クロック信号生成部18から入力されたクロック信号CK2に基づいて、データストローブ信号DQSを生成して出力するものであって、例えば、図5および図6に示すように、クロック信号CK2が入力されると、データストローブ信号DQSを生成してSDRAM300に出力するようになっている。
リード側DQS遅延回路DR0は、SDRAM300から入力されたデータストローブ信号DQSを遅延させるものであって、例えば、SDRAM300から入力されたデータストローブ信号DQSを、直列に接続された所定数の遅延素子(図示省略)に通過させることにより遅延させるデジタル遅延回路で構成されており、この遅延させたデータストローブ信号DQSを後述するフリップフロップFF5およびフリップフロップFF7に出力するようになっている。

0050

DQ信号制御部17は、データ信号DQの入出力を制御するものであって、例えば、図5および図6に示すように、DQ信号出力制御部19とDQ信号入力制御部20とをそなえて構成されている。具体的には、図5および図6に示すように、複数(n+1個)の制御回路ユニット15−0〜15−nのそれぞれにおいて、DQ信号制御部17−0には、DQ信号出力制御部19−0とDQ信号入力制御部20−0とがそなえられており、同様に、DQ信号制御部17−kには、DQ信号出力制御部19−kとDQ信号入力制御部20−kとがそなえられている。

0051

なお、以下、DQ信号出力制御部を示す符号としては、複数(k+1個)のDQ信号出力制御部のうち1つを特定する必要があるときは符号19−0〜19−kを用いるが、任意のDQ信号出力制御部を指すときには符号19を用いる。又、以下、DQ信号入力制御部を示す符号としては、複数のDQ信号入力制御部のうち1つを特定する必要があるときは符号20−0〜20−kを用いるが、任意のDQ信号入力制御部を指すときには符号20を用いる。

0052

DQ信号出力制御部19は、ライト動作時において、後述する処理部13から入力されたデータ信号DQをSDRAM300に出力する制御を行なうものであって、例えば、制御回路ユニット15−0においては、図5に示すように、複数(k+1個)のDQ信号出力制御部19−0〜19−kに対応してそれぞれ、後述する処理部13から入力された第1のデータ信号I_DQe-0 [0]または第2のデータ信号I_DQo-0 [0]をデータ信号DQ-0[0]としてSDRAM300−0に出力する制御を行なうようになっており、同様に、後述する処理部13から入力された第1のデータ信号I_DQe-0 [k]または第2のデータ信号I_DQo-0 [k]をデータ信号DQ-0[k]としてSDRAM300−0に出力する制御を行なうようになっている。

0053

また、DQ信号出力制御部19は、例えば、制御回路ユニット15−nにおいては、図6に示すように、複数のDQ信号出力制御部19−0〜19−kに対応してそれぞれ、後述する処理部13から入力された第1のデータ信号I_DQe-n [0]または第2のデータ信号I_DQo-n [0]をデータ信号DQ-n[0]としてSDRAM300−nに出力する制御を行なうようになっており、同様に、後述する処理部13から入力された第1のデータ信号I_DQe-n [k]または第2のデータ信号I_DQo-n [k]をデータ信号DQ-n[k]としてSDRAM300−nに出力する制御を行なうようになっている。

0054

なお、以下、第1のデータ信号を示す符号としては、複数の第1のデータ信号のうち1つを特定する必要があるときは符号I_DQe-0 [0]〜I_DQe-0 [k]や、符号I_DQe-n [0]〜I_DQe-n [k]を用いるが、任意の第1のデータ信号を指すときには符号I_DQeを用いる。又、以下、第2のデータ信号を示す符号としては、複数の第2のデータ信号のうち1つを特定する必要があるときは符号I_DQo-0 [0]〜I_DQo-0 [k]や、I_D Qo-n [0]〜I_DQo-n [k]を用いるが、任意の第2のデータ信号を指すときには符号I_DQoを用いる。

0055

そして、以下、データ信号を示す場合において、第1のデータ信号および第2のデータ信号を特定する必要があるときは、第1のデータ信号を示す符号I_DQeおよびI_DQe-0 [0]〜I_DQe-0 [k], I_DQe-n [0]〜I_DQe-n [k]や、第2のデータ信号を示す符号I_DQoおよびI_DQo-0 [0]〜I_DQo-0 [k],I_DQo-n [0]〜I_DQo-n [k]を用いるが、第1のデータ信号および第2のデータ信号を特定する必要がないときは、SDRAM300−0〜SDRAM300−nのそれぞれに対応するデータ信号を示す符号DQ-0[0]〜DQ-0[k],DQ-n[0]〜DQ-n[k]を用い、更に、任意のデータ信号を指すときには符号DQを用いる。又、第1のデータ信号および第2のデータ信号を特定する必要がない場合において、便宜上、SDRAM300−0〜300−nのそれぞれに対応するデータ信号を示す符号DQ-0 [0]〜DQ-0 [k],DQ-n [0]〜DQ-n [k]に代えて符号DQ−0〜DQ−nを用いる場合もある。

0056

即ち、SDRAM300−0に対応する第1のデータ信号I_DQe-0 [0]〜I_DQe-0 [k]が、第1のデータ信号I_DQe,データ信号DQ-0[0]〜DQ-0[k],データ信号DQ−0およびデータ信号DQに対応しており、SDRAM300−nに対応する第1のデータ信号I_DQe-n [0]〜I_DQe-n [k]が、第1のデータ信号I_DQe,データ信号DQ-n[0]〜DQ-n[k],データ信号DQ−nおよびデータ信号DQに対応している。又、SDRAM300−0に対応する第2のデータ信号I_DQo-0 [0]〜I_DQo-0 [k]が、第2のデータ信号I_DQo,データ信号DQ-0[0]〜DQ-0[k],データDQ−0およびデータ信号DQに対応しており、SDRAM300−nに対応する第2のデータ信号I_DQo-n [0]〜I_DQo-n [k]が、第2のデータ信号I_DQo,データ信号DQ-n[0]〜DQ-n[k],データDQ−nおよびデータ信号DQに対応している。

0057

このDQ信号入力制御部19は、第1のデータ信号I_DQeおよび第2のデータ信号I_DQoを多重化してSDRAM300に出力する制御を行なうようになっている。
なお、第1のデータ信号I_DQeおよび第2のデータ信号I_DQoを多重化してSDRAMに出力する手法は既知の技術であるので、その詳細な説明は省略する。
そして、DQ信号出力制御部19は、例えば、図5および図6に示すように、フリップフロップFF1,出力用可変遅延回路DW1およびフリップフロップFF2をそなえて構成されている。

0058

フリップフロップFF1は、第1クロック信号生成部14から入力されたクロック信号CK1が入力されると、後述する処理部13から入力された第1のデータ信号I_DQeまたは第2のデータ信号I_DQoを出力用可変遅延回路DW1に出力するようになっている。
出力用可変遅延回路DW1は、上述した第1実施形態に係る可変遅延回路100で構成されるものであって、後述する出力遅延量設定部23からの出力制御信号d1に基づいて、フリップフロップFF1から入力された第1の入力データ信号I_DQeまたは第2のデータ信号I_DQo(図1の符号“IN”に相当)を、後述する出力遅延量設定部23によって設定された出力遅延量Dt1だけ遅延させてフリップフロップFF2に出力するようになっている(図1の符号“OUT”に相当)。

0059

なお、この出力用可変遅延回路DW1は上述した出力用可変遅延回路DW0と同様に構成されているため、その詳細な説明を省略する。
フリップフロップFF2は、第2クロック信号生成部18からクロック信号CK2が入力されると、出力用可変遅延回路DW1から入力された第1のデータ信号I_DQeまたは第2のデータ信号I_DQoをSDRAM300に出力するようになっている。

0060

なお、本実施形態においては、複数のSDRAM300−0〜300−nのそれぞれに対応して同じ出力遅延量Dt1が設定されているものとする。
具体的には、図5に示す制御回路ユニット15−0にそなえられた各出力用可変遅延回路DW0,DW1には、出力遅延量Dt1−0が設定されており、同様に、図6に示す制御回路ユニット15−nにそなえられた各出力用可変遅延回路DW0,DW1には、出力遅延量Dt1−nが設定されている。

0061

また、以下、出力用可変遅延回路を示す符号としては、複数の出力用可変遅延回路のうち1つを特定する必要があるときは符号DW0,DW1等を用いるが、任意の出力用可変遅延回路を指すときには符号DWを用いる。
なお、以下の説明においては、便宜上、1chのSDRAM300−0に対応する出力用可変遅延回路として符号DW−0を用いる場合があり、同様に、nchのSDRAM300−nに対応する出力用可変遅延回路として符号DW−nを用いる場合もある。

0062

DQ信号入力制御部20は、リード動作時において、SDRAM300から入力されたデータ信号(データ入力信号)DQを後述する処理部13に出力する制御を行なうものであって、例えば、制御回路ユニット15−0においては、図5に示すように、複数のDQ信号入力制御部20−0〜20−kに対応してそれぞれ、SDRAM300−0から入力されたデータ信号DQ-0[0]を第3のデータ信号O_DQe-0 [0]または第4のデータ信号O_DQo-0 [0]として後述する処理部13に出力する制御を行なうようになっており、同様に、SDRAM300−0から入力されたデータ信号DQ-0[k]を第3のデータ信号O_DQe-0 [k]または第4のデータ信号O_DQo-0 [k]として後述する処理部13に出力する制御を行なうようになっている。

0063

また、DQ信号入力制御部20は、例えば、制御回路ユニット15−nにおいては、図6に示すように、複数のDQ信号入力制御部20−0〜20−kに対応してそれぞれ、SDRAM300−nから入力されたデータ信号DQ-n[0]を第3のデータ信号O_DQe-n [0]または第4のデータ信号O_DQo-n [0]として後述する処理部13に出力する制御を行なうようになっており、同様に、SDRAM300−nから入力されたデータ信号DQ-n[k]を第3のデータ信号O_DQe-n [k]または第4のデータ信号O_DQo-n [k]として後述する処理部13に出力する制御を行なうようになっている。

0064

なお、以下、第3のデータ信号を示す符号としては、複数の第3のデータ信号のうち1つを特定する必要があるときは符号O_DQe-0 [0]〜O_DQe-0 [k]や、符号O_DQe-n [0]〜O_DQe-n [k]を用いるが、任意の第3のデータ信号を指すときには符号O_DQeを用いる。又、以下、第4のデータ信号を示す符号としては、複数の第4のデータ信号のうち1つを特定する必要があるときは符号O_DQo-0 [0]〜O_DQo-0 [k]や、O_DQo-n [0]〜O_DQo-n [k]を用いるが、任意の第4のデータ信号を指すときには符号O_DQoを用いる。

0065

そして、以下、データ信号を示す場合において、第3のデータ信号および第4のデータ信号を特定する必要があるときは、第3のデータ信号を示す符号O_DQeおよびO_DQe-0 [0]〜O_DQe-0 [k], O_DQe-n [0]〜O_DQe-n [k]や、第4のデータ信号を示す符号O_DQoおよびO_DQo-0 [0]〜O_DQo-0 [k],O_DQo-n [0]〜O_DQo-n [k]を用いるが、第3のデータ信号および第4のデータ信号を特定する必要がないときは、SDRAM300−0〜300−nのそれぞれに対応するデータ信号を示す符号DQ-0 [0]〜DQ-0 [k],DQ-n[0]〜DQ-n [k]を用い、更に、任意のデータ信号を指すときには符号DQを用いる。又、第3のデータ信号および第4のデータ信号を特定する必要がない場合において、便宜上、SDRAM300−0〜300−nのそれぞれに対応するデータ信号を示す符号DQ-0 [0]〜DQ-0 [k],DQ-n [0]〜DQ-n [k]に代えて符号DQ−0〜DQ−nを用いる場合もある。

0066

即ち、SDRAM300−0に対応する第3のデータ信号O_DQe-0 [0]〜O_DQe-0 [k]が、第3のデータ信号O_DQe,データ信号DQ-0[0]〜DQ-0[k],データ信号DQ−0およびデータ信号DQに対応しており、SDRAM300−nに対応する第3のデータ信号O_DQe-n [0]〜O_DQe-n [k]が、第3のデータ信号O_DQe,データ信号DQ-n[0]〜DQ-n[k],データ信号DQ−nおよびデータ信号DQに対応している。又、SDRAM300−0に対応する第4のデータ信号O_DQo-0 [0]〜O_DQo-0 [k]が、第4のデータ信号O_DQo,データ信号DQ-0[0]〜DQ-0[k],データDQ−0およびデータ信号DQに対応しており、SDRAM300−nに対応する第4のデータ信号O_DQo-n [0]〜O_DQo-n [k]が、第4のデータ信号O_DQo,データ信号DQ-n[0]〜DQ-n[k],データDQ−nおよびデータ信号DQに対応している。

0067

このDQ信号入力制御部20は、例えば、図5および図6に示すように、フリップフロップFF5,入力用可変遅延回路DR1,フリップフロップFF6,フリップフロップFF7,入力用可変遅延回路DR2およびフリップフロップFF8をそなえて構成されている。
フリップフロップFF5は、データストローブ信号DQSがSDRAM300から後述するリード側DQS遅延回路DR0を介して入力されると、SDRAM300から入力された第3のデータ信号O_DQeを入力用可変遅延回路DR1に出力するようになっている。

0068

入力用可変遅延回路DR1は、上述した第1実施形態に係る可変遅延回路100で構成されるものであって、後述する入力遅延量設定部24からの入力制御信号d2に基づいて、フリップフロップFF5から入力された第3のデータ信号O_DQe(図1の符号“IN”に相当)を、後述する入力遅延量設定部24によって設定された入力遅延量だけ遅延させてフリップフロップFF6に出力するようになっている(図1の符号“OUT”に相当)。

0069

なお、本実施形態においては、複数の制御回路ユニット15−0〜15−nに対してそれぞれ入力遅延量が設定されている。具体的には、制御回路ユニット15−0における入力用可変遅延回路DR1には入力遅延量Dt2−0が設定されており、同様に、制御回路ユニット15−nにおける入力用可変遅延回路DR1には入力遅延量Dt2−nが設定されている。

0070

なお、以下、入力遅延量を示す符号としては、複数の入力遅延量のうち1つを特定する必要があるときは符号Dt2−0〜Dt2−nを用いるが、任意の入力遅延量を指すときには符号Dt2を用いる。
そして、本実施形態の入力用可変遅延回路DR1においては、入力制御信号d2が、上述した第1実施形態における遅延制御信号SELdly,第1選択信号SELtsおよび第2選択信号SELinに相当し、入力遅延量Dt2が、上述した第1実施形態における遅延量TDLに相当する。

0071

また、本実施形態の入力用可変遅延回路DR1では、“0”〜“7”の8段階で第1遅延量DL1(上記第1実施形態参照)を設定可能な第1遅延回路(第1入力遅延部)101が用いられており、最大遅延量MDLが“7”となっている。
さらに、本実施形態の入力用可変遅延回路DR1には、リード側DQS遅延回路DR0から取り出された複数のタイミング信号CK3−0〜CK3−mが入力されるようになっており、これらの複数のタイミング信号CK3−0〜CK3−mが、上述した第1実施形態における複数のタイミング信号TS0〜TSmに相当する。

0072

なお、本実施形態においては、これらの複数のタイミング信号CK3−0〜CK3−mは、第0タイミング信号CK3−0から第mタイミング信号CK3−mにかけて90°の位相で順次遅延するように、リード側DQS遅延回路DR0における所定位置からそれぞれ取り出されて入力用可変遅延回路DR1に入力されるようになっている。
なお、リード側DQS遅延回路DR0から複数のタイミング信号CK3−0〜CK3−mを取り出す手法については、既知の種々の手法を用いることができる。

0073

また、図中においては、便宜上、複数のタイミング信号CK3−0〜CK3−mを符号CK3で示している。
従って、入力用可変遅延回路DR1は、データ信号DQを第1遅延量(第1入力遅延量)DL1だけ遅延させる第1遅延回路(第1入力遅延部)101と、データ信号DQを第1遅延量DL1よりも大きい第2遅延量(第2入力遅延量)DL2だけ遅延させる第2遅延回路(第2入力遅延部)102と、入力遅延量Dt2が第1遅延回路101で遅延可能な最大遅延量(最大入力遅延量)MDLを超える場合に、入力遅延量Dt2が第1遅延量DL1と第2遅延量DL2との和になる信号経路を選択するセレクタ(入力遅延量選択部)103とをそなえるのである(図1参照)。

0074

そして、第2遅延回路102においては、セレクタ(入力用選択回路)104が、入力遅延量Dt2に基づいて、位相が異なる複数種類のタイミング信号CK3−0〜CK3−mのうちのいずれかを選択し、Dフリップフロップ(入力用順序回路)105が、セレクタ104により選択されたタイミング信号に応じて、データ信号DQを第2遅延量DL2だけ遅延させるのである(図1参照)。

0075

フリップフロップFF6は、第1クロック信号生成部14からクロック信号CK1が入力されると、入力用可変遅延回路DR1から入力された第3のデータ信号O_DQeを後述する処理部13に出力するようになっている。
フリップフロップFF7は、データストローブ信号DQSがSDRAM300から後述するリード側DQS遅延回路DR0を介して入力されると、SDRAM300から入力された第4のデータ信号O_DQoを入力用可変遅延回路DR2に出力するようになっている。

0076

入力用可変遅延回路DR2は、上述した第1実施形態に係る可変遅延回路100で構成されるものであって、後述する入力遅延量設定部24からの入力制御信号d2に基づいて、フリップフロップFF7から入力された第4のデータ信号O_DQoを、後述する入力遅延量設定部24によって設定された入力遅延量Dt2だけ遅延させてフリップフロップFF8に出力するようになっている。

0077

なお、この入力用可変遅延回路DR2は上述した入力用可変遅延回路DR1と同様に構成されているため、その詳細な説明を省略する。
なお、本実施形態においては、複数のSDRAM300−0〜300−nのそれぞれに対応して同じ入力遅延量Dt2が設定されているものとする。
具体的には、図5に示す制御回路ユニット15−0にそなえられた各入力用可変遅延回路DR1およびDR2には、入力遅延量Dt2−0が設定されており、同様に、図6に示す制御回路ユニット15−nにそなえられた各入力用可変遅延回路DR1およびDR2には、入力遅延量Dt2−nが設定されている。

0078

また、以下、入力用可変遅延回路を示す符号としては、複数の入力用可変遅延回路のうち1つを特定する必要があるときは符号DR1,DR2等を用いるが、任意の入力用可変遅延回路を指すときには符号DRを用いる。
なお、以下の説明においては、便宜上、1chのSDRAM300−0に対応する入力用可変遅延回路として符号DR−1を用いる場合があり、同様に、nchのSDRAM300−nに対応する入力用可変遅延回路として符号DR−nを用いる場合もある。

0079

フリップフロップFF8は、第1クロック信号生成部14からクロック信号CK1が入力されると、入力用可変遅延回路DR2から入力された第4のデータ信号O_DQoを後述する処理部13に出力するようになっている。
論理和回路ORは、後述するライトレベリング機能を用いた場合に、第3のデータ信号O_DQeおよび第4のデータ信号O_DQoに基づいて、応答信号(例えば、High信号)を後述する処理部13に出力するようになっている。

0080

具体的には、制御回路ユニット15−0にそなえられた論理和回路ORは、例えば、図5に示すように、後述するライトレベリング機能を用いた場合に、SDRAM300−0に対応する複数の第3のデータ信号O_DQe-0[0]〜O_DQe-0[k]およびSDRAM300−0に対応する複数の第4のデータ信号O_DQo-0[0]〜O_DQo-0[k]のいずれかが入力されると、応答信号O_DQX-0を後述する処理部13に出力するようになっている。

0081

また、例えば、制御回路ユニット15−nにそなえられた論理和回路ORは、図6に示すように、後述するライトレベリング機能を用いた場合に、SDRAM300−nに対応する複数の第3のデータ信号O_DQe-n[0]〜O_DQe-n[k]およびSDRAM300−nに対応する複数の第4のデータ信号O_DQo-n[0]〜O_DQo-n[k]のいずれかが入力されると、応答信号O_DQX-nを後述する処理部13に出力するようになっている。

0082

なお、以下、応答信号を示す符号としては、複数の応答信号のうち1つを特定する必要があるときは符号O_DQX-0〜O_DQX-nを用いるが、任意の応答信号を指すときには符号O_DQXを用いる。
処理部13は、情報処理装置10aにおいて各種の数値計算情報処理および機器制御等を行なうものであって、本実施形態においては、遅延時間制御部22として機能するようになっている(図4参照)。又、処理部13は、MAC(Media Access Control;図示省略)をそなえて構成されており、このMACを介して各種信号(データ信号DQ,クロック信号CLK,応答信号DQX等)の入出力を行なうようになっている。

0083

遅延時間制御部22は、制御回路ユニット15−0〜15−nのそれぞれにそなえられた出力用可変遅延回路DWおよび入力用可変遅延回路DRに対して、遅延量を設定する制御信号を出力するものであって、図4に示すように、出力遅延量設定部23および入力遅延量設定部24をそなえて構成されている。
出力遅延量設定部23は、ライトレベリング機能を用いて、制御回路ユニット15−0〜15−nのそれぞれにそなえられた出力用可変遅延回路DWに対して、出力遅延量Dt1の遅延を行なわせるべく制御を行なうものであって、出力遅延量Dt1を設定する出力制御信号d1を出力するようになっている。又、出力遅延量設定部23は、本実施形態においては、ライトレベリング機能を用いて、ライト動作時において複数のSDRAM300−0〜300−nのそれぞれに対して出力されるデータストローブ信号DQS−0〜DQS−nの各出力遅延量Dt1−0〜Dt1−nをそれぞれ設定するようになっている。

0084

ここで、ライトレベリング機能とは、複数のSDRAM300−0〜300−nのそれぞれに対して、各データストローブ信号DQS−0〜DQS−nを、クロック信号CK1と同時もしくはほぼ同時に入力させるように調整(補正)する機能であり、クロック信号線がデイジーチェーンで配線された複数のSDRAM300−0〜300−nのそれぞれに対して出力されるデータストローブ信号DQS−0〜DQS−nの各出力遅延量Dt1−0〜Dt1−nを、これらのSDRAM300−0〜300−nから出力される各データ信号DQ−0〜DQ−nに基づいてそれぞれ設定することにより実現される。

0085

図7は本発明の第2実施形態としての情報処理装置の出力遅延量設定部におけるライトレベリング機能を説明するための図である。
以下、出力遅延量設定部23において、複数のSDRAM300−0〜300−nのそれぞれに対応する出力遅延量Dt1−0〜Dt1−nを、ライトレベリング機能を用いてそれぞれ設定する場合について、図7に示すような、0chのSDRAM300−0に対応する出力遅延量Dt1−0とnchのSDRAM300−nに対応する出力遅延量Dt1−nとを設定する例を用いて説明する。

0086

また、各SDRAM(図7に示す例では、SDRAM300−0,SDRAM300−n)は、それぞれ、クロック信号CK1とデータストローブ信号DQS(図7に示す例では、DQS−0,DQS−n)とが同時もしくはほぼ同時に入力されると、メモリコントローラ12にデータ信号DQ(図7に示す例では、DQ-0 [0]〜[k],DQ-n [0]〜[k])を出力するようになっている。

0087

先ず、メモリコントローラ12は、クロック信号CK1を各SDRAM(図7に示す例では、SDRAM300−0,SDRAM300−n)に出力するとともに、これと同時もしくはほぼ同時に、各データストローブ信号DQS(図7に示す例では、DQS−0,DQS−n)を各SDRAM(図7に示す例では、SDRAM300−0,SDRAM300−n)のそれぞれに対して出力する(図7の時間“T0”参照)。

0088

そして、例えば、ライトレベリング機能によって出力遅延量Dt1が調整される前においては、図7に示すように、0chのSDRAM300−0には、クロック信号CK1が、データストローブ信号DQS−0が入力されてから(図7の時間“T1”および点“A”参照)、時間Dt1−0だけ遅延して入力され(図7の時間“T2”参照)、nchのSDRAM300−nには、クロック信号CK1が、データストローブ信号DQS−nが入力されてから(図7の時間“T1”および点“B”参照)、時間Dt1−nだけ遅延して入力される(図7の時間“T3”参照)。

0089

この場合において、データストローブ信号DQS−0とクロック信号CK1とが同時もしくはほぼ同時に0chのSDRAM300−0に入力されるように、出力遅延量Dt1−0が出力用可変遅延回路DW−0に設定される(図7の時間“T2”参照)。又、データストローブ信号DQS−nとクロック信号CK1とが同時もしくはほぼ同時にnchのSDRAM300−nに入力されるように、出力遅延量Dt1−nが出力用可変遅延回路DW−nに設定される(図7の時間“T3”参照)。

0090

即ち、0chのSDRAM300−0においては、出力遅延量設定部23(図7において図示省略)は、クロック信号CK1とデータストローブ信号DQS−0とが同時もしくはほぼ同時に入力されるまで、出力用可変遅延回路DW−0の遅延時間を少しずつ延ばしていき、SDRAM300−0からの各データ信号DQ-0[0]〜[k]のいずれかが論理和回路OR−0に入力されて、論理和回路OR−0が応答信号O_DQX-0を出力した時間を出力遅延量Dt1−0として出力用可変遅延回路DW−0に設定するようになっている。

0091

また、nchのSDRAM300−nにおいては、出力遅延量設定部23(図7において図示省略)は、クロック信号CK1とデータストローブ信号DQS−nとが同時もしくはほぼ同時に入力されるまで、出力用可変遅延回路DW−nの遅延時間を少しずつ延ばしていき、SDRAM300−nからの各データ信号DQ-n[0]〜[k]のいずれかが論理和回路OR−nに入力されて、論理和回路OR−nが応答信号O_DQX-nを出力した時間を出力遅延量Dt1−nとして出力用可変遅延回路DW−nに設定するようになっている。

0092

そのため、SDRAM300−0〜300−nのそれぞれに対応する各出力遅延量Dt1−0〜Dt1−nが、0chのSDRAM300−0からnchのSDRAM300−nにかけて順に遅延量が大きくなるように設定されるのである。
そして、出力遅延量設定部23は、設定した各出力遅延量Dt1−0〜Dt1−nとなるように出力制御信号d1を出力用可変遅延回路DW−0〜DW−nのそれぞれに対して出力し、各出力用可変遅延回路DW−0〜DW−nが、これらの出力制御信号d1に基づいて、各データストローブ信号DQS−0〜DQS−nをそれぞれ出力遅延量Dt1−0〜Dt1−nだけ遅延させるようになっている。

0093

即ち、出力用可変遅延回路DWは、ライト動作時において、SDRAM300に出力するデータストローブ信号DQSを、ライトレベリング機能を用いて設定された出力遅延量Dt1だけ遅延させるのである。
図8は本発明の第2実施形態としての情報処理装置の出力遅延量設定部において遅延量を設定する順序を説明するための図、図9はその遅延量を設定する順序を示すタイミングチャートである。

0094

また、出力遅延量設定部23は、複数のSDRAM300−0〜300−nに対応するそれぞれの出力遅延量Dt1−0〜Dt1−nを、クロック信号線の配線経路に沿って順次設定するようになっており、図8に示す例(Unbuffered DIMM)では、クロック信号CK1が最も早く入力されるSDRAM300−0に対応する出力遅延量Dt1−0から、出力遅延量Dt1−1,出力遅延量Dt1−2,出力遅延量Dt1−3,出力遅延量Dt1−4,出力遅延量Dt1−5,出力遅延量Dt1−6の順に、クロック信号CK1が最も遅く入力されるSDRAM300−7に対応する出力遅延量Dt1−7まで設定するようになっている。

0095

さらに、出力遅延量設定部23は、一のSDRAM300(例えば、SDRAM300−2)と隣り合う他のSDRAM300(例えば、SDRAM300−1)に対応する設定済の出力遅延量Dt1(例えば、Dt1−1)を開始遅延量Dt1stとして、この開始遅延量Dt1stを段階的に変更することにより、一のSDRAM300(例えば、SDRAM300−2)に対応する設定対象の出力遅延量Dt1(例えば、Dt1−2)を設定するようになっている。

0096

図9に示す例では、出力遅延量設定部23は、先ず、0chのSDRAM300−0に対応する出力用可変遅延回路DW−0に対して出力制御信号d1を出力して、出力用可変遅延回路DW−0の出力遅延量Dt1−0を設定値“0”(図9の時間“B1”参照)から段階的に1,2,3,4,5,6と増加させ、論理和回路OR−0から応答信号O_DQX-0が出力された時点の設定値SV−0を出力遅延量Dt1−0として設定する(図9の時間“B2”参照)。

0097

なお、設定値SV−0は、SDRAM300−0に対応する出力遅延量Dt1−0の設定値であって、図9に示すように、“SELdly(0)”,“SELin(0)”および“SELts(0)”で構成されている。同様に、設定値SV−1〜SV−nは、SDRAM300−1〜300−nに対応する出力遅延量Dt1−1〜Dt1−nの設定値であって、それぞれ、“SELdly(1)”,“SELin(1)”および“SELts(1)”〜“SELdly(n)”,“SELin(n)”および“SELts(n)”で構成されている。

0098

“SELdly(0)”は、出力用可変遅延回路DW−0に入力された信号(図1の符号“IN”参照)の遅延量DL1(上記第1実施形態参照)を第1遅延回路101(図1参照)に設定する値であり、本実施形態においては、この値は、出力用可変遅延回路DW−0に入力された信号が第1遅延回路101を構成する遅延素子を通過する数を示している。“SELdly(1)”〜“SELdly(n)”についても上記“SELdly(0)”と同様である。

0099

“SELin(0)”は、出力用可変遅延回路DW−0に入力された信号の信号経路をセレクタ103(図1参照)に設定する値であり、本実施形態においては、値“0”は、出力用可変遅延回路DW−0に入力された信号が直接セレクタ103に入力される信号経路を選択することを示し、値“1”は、出力用可変遅延回路DW−0に入力された信号が第2遅延回路102を介してセレクタ103に入力される信号経路を選択することを示している。“SELin(1)”〜“SELin(n)”についても上記“SELin(0)”と同様である。

0100

“SELts(0)”は、複数のクロック信号CK1−0〜CK1−mの中から選択される一のクロック信号をセレクタ104(図1参照)に設定する値である。本実施形態においては、値“0”は、第0クロック信号CK1−0を選択することを示しており、以下、同様に、値“1”は、第1クロック信号CK1−1を選択することを示し、値“n”は、第nクロック信号CK1−nを選択することを示している。“SELts(1)”〜“SELts(n)”についても上記“SELts(0)”と同様である。

0101

そして、設定値SV−0は、“SELdly(0)”が値“6”に、“SELin(0)”が値“0”に、“SELts(0)”が値“1”に、それぞれ設定される。
次に、出力遅延量設定部23は、0chのSDRAM300−0に対応する出力遅延量Dt1−0として設定された設定値SV−0を開始遅延量Dt1st(図9の時間“B2”参照)として、1chのSDRAM300−1に対応する出力遅延量Dt1−1を設定する。具体的には、出力遅延量設定部23は、1chのSDRAM300−1に対応する出力用可変遅延回路DW−1に対して出力制御信号d1を出力して、出力用可変遅延回路DW−1の出力遅延量Dt1−1を開始遅延量Dt1st(設定値SV−0;図9の時間“B2”参照)から段階的に増加させ、論理和回路OR−1から応答信号O_DQX-1が出力された時点の設定値SV−1を出力遅延量Dt1−1として設定する(図9の時間“B4”参照)。

0102

この場合において、出力遅延量設定部23は、遅延量TDLが最大遅延量MDL(本実施形態では“7”)を超えると、第1遅延回路101の遅延量DL1をリセット(DL1=“0”)するとともに、遅延量TDLが第1遅延量DL1と第2遅延量DL2(この場合、第0クロック信号CK1−0)との和になる信号の経路に切り替える出力制御信号d1(“SELin(1)”=“1”)を出力する(図9の時間“B3”参照)。
従って、図9に示す例においては、設定値SV−1は、“SELdly(1)”が値“3”に、“SELin(1)”が値“1”に、“SELts(1)”が値“1”に、それぞれ設定される。

0103

以下、同様に、出力遅延量設定部23は、2ch以降のSDRAM300−2〜300−nに対応する出力遅延量Dt1−2〜Dt1−nについて、それぞれの前段となるSDRAM300−1〜300−n−1に対応する出力遅延量Dt1−1〜Dt1−n−1(設定値SV−1〜SV−n−1;設定値SV−1については図9の時間“B4”参照)を開始遅延量Dt1stに設定し、又、出力遅延量設定部23は、これらの開始遅延量Dt1stから出力遅延量Dt1−1〜Dt1−n−1を段階的に増加させ、各論理和回路OR−2〜OR−nから応答信号O_DQX-2〜O_DQX-nが出力された時点の設定値SV−2〜SV−nを各出力遅延量Dt1−2〜Dt1−nとしてそれぞれ順次設定する(図9の時間“B5”および“B7”参照)。

0104

そして、出力遅延量設定部23は、遅延量TDLが最大遅延量MDLを超える都度、遅延量TDLが第1遅延量DL1と第2遅延量DL2との和になる信号の経路を選択した状態で、第1遅延回路101の遅延量DL1をリセットするとともに、第2遅延量DL2を現時点のクロック信号(例えば、第p−1(pは1〜nの自然数)クロック信号CK1−p−1)から次のクロック信号(例えば、第pクロック信号CK1−p)に切り替える出力制御信号d1(例えば、“SELts(n)”=“p”)を出力する(図9の時間“B5”および時間“B6”参照)。

0105

従って、設定値SV−2は、“SELdly(2)”が値“1”に、“SELin(2)”が値“1”に、“SELts(2)”が値“2”に、それぞれ設定される。又、設定値SV−nは、“SELdly(n)”が値“2”に、“SELin(n)”が値“1”に、“SELts(n)”が値“3”に、それぞれ設定される。
このように、出力遅延量設定部23は、一のSDRAM300に対応する設定対象の出力遅延量Dt1を、他のSDRAM300に対応する設定済の出力遅延量Dt1に基づいて設定するのである。

0106

以下、出力遅延量設定部23において複数のSDRAM300−0〜300−nに対応する出力遅延量Dt1−0〜Dt1−nを設定する順序について、図10に示すフローチャート(ステップS11〜S24)に従って説明する。
先ず、出力遅延量設定部23は、設定対象のSDRAM300を示す変数“n”を初期化し(n=0;ステップS11)、出力制御信号d1を示す各変数“SELdly(n)”,“SELin(n)”および“SELts(n)”を初期化する(SELdly(n)=0,SELin(n)=0,SELts(n)=1;ステップS12)。

0107

次に、出力遅延量設定部23は、応答信号O_DQX-nがLowからHighに遷移したか否かを判断し(ステップS13)、応答信号O_DQX-nがLowからHighに遷移していない場合には(ステップS13の“NO”ルート参照)、変数“SELdly(n)”が最大であるか否かを判断する(ステップS14)。
変数“SELdly(n)”が最大ではない場合には(ステップS14の“NO”ルート参照)、出力遅延量設定部23は、変数“SELdly(n)”に値“1”を加算して(ステップS15)、ステップS13に戻る。

0108

変数“SELdly(n)”が最大である場合には(ステップS14の“YES”ルート参照)、出力遅延量設定部23は、変数“SELin(n)”が値“1”であるか否かを判断する(ステップS16)。
変数“SELin(n)”が値“1”ではない場合には(ステップS16の“NO”ルート参照)、出力遅延量設定部23は、変数“SELin(n)”を値“1”に設定し(ステップS17)、変数“SELdly(n)”をリセット(SELdly(n)=0)して(ステップS18)、ステップS13に戻る。

0109

変数“SELin(n)”が値“1”である場合には(ステップS16の“YES”ルート参照)、出力遅延量設定部23は、変数“SELts(n)”が最大であるか否かを判断する(ステップS19)。
変数“SELts(n)”が最大ではない場合には(ステップS19の“NO”ルート参照)、出力遅延量設定部23は、変数“SELts(n)”に値“1”を加算し(ステップS20)、変数“SELdly(n)”をリセット(SELdly(n)=0)して(ステップS18)、ステップS13に戻る。

0110

変数“SELts(n)”が最大である場合には(ステップS19の“YES”ルート参照)、出力遅延量設定部23は、所望の遅延量を付加できず、各変数“SELdly(n)”,“SELin(n)”および“SELts(n)”の設定範囲を超えたことになるため、ステップS11に戻って再実行を行なうかもしくはアラーム発行し、処理を終了する(異常終了)。

0111

また、応答信号O_DQX-nがLowからHighに遷移した場合、即ち、応答信号O_DQX-nを受信すると(ステップS13の“YES”ルート参照)、出力遅延量設定部23は、各変数“SELdly(n)”,“SELin(n)”および“SELts(n)”に設定された値をロック直前の状態を保持)する(ステップS21)。
そして、出力遅延量設定部23は、変数“n”が最大であるか否かを判断する(ステップS22)。

0112

変数“n”が最大ではない場合には(ステップS22の“NO”ルート参照)、出力遅延量設定部23は、各変数“SELdly(n+1)”,“SELin(n+1)”および“SELts(n+1)”に対して、ステップS21においてロックされた各変数“SELdly(n)”,“SELin(n)”および“SELts(n)”の値を設定し(ステップS23)、変数“n”に値“1”を加算して(ステップS24)、次のSDRAMに移行し、ステップS13に戻る。

0113

変数“n”が最大である場合には(ステップS22の“YES”ルート参照)、出力遅延量設定部23は、処理を終了する(正常終了)。
これにより、全てのSDRAM300−0〜300−nに対して出力遅延量Dt1−0〜Dt1−nが設定されるのである。
入力遅延量設定部24は、出力遅延量設定部23によって設定された各出力遅延量Dt1−0〜Dt1−nに基づいて、制御回路ユニット15−0〜15−nのそれぞれにそなえられた入力用可変遅延回路DRに対して、入力遅延量Dt2の遅延を行なわせるべく制御を行なうものであって、入力遅延量Dt2を設定する入力制御信号d2(“SELdly(n)”,“SELin(n)”および“SELts(n)”)を出力するようになっている。又、入力遅延量設定部24は、本実施形態においては、出力遅延量設定部23によって設定された各出力遅延量Dt1−0〜Dt1−nに基づいて、リード動作時において複数のSDRAM300−0〜300−nのそれぞれから入力されるデータ信号DQ−0〜DQ−nの入力遅延量Dt2をそれぞれ算出・設定するようになっている。

0114

本実施形態の入力遅延量設定部24においては、一のSDRAM300−x(xは0〜nの変数)に対応する入力遅延量Dt2−xは、当該SDRAM300−xに対応する出力遅延量Dt1−xと入力遅延量Dt2−xとの和が、他のSDRAM300−y(yは0〜nの変数)に対応する出力遅延量Dt1−yと入力遅延量Dt2−yとの和と等しくなるように設定されている。

0115

従って、SDRAM300−0〜300−nのそれぞれに対応する各入力遅延量Dt2−0〜Dt2−nが、0chのSDRAM300−0からnchのSDRAM300−nにかけて順に遅延量が小さくなるように設定されるのである。
そして、入力遅延量設定部24は、設定した各入力遅延量Dt2−0〜Dt2−nとなるように入力制御信号d2を入力用可変遅延回路DR−0〜DR−nのそれぞれに対して出力し、各入力用可変遅延回路DR−0〜DR−nが、これらの入力制御信号d2に基づいて、各データ信号DQ−0〜DQ−nをそれぞれ入力遅延量Dt2−0〜Dt2−nだけ遅延させるようになっている。

0116

即ち、入力用可変遅延回路DRは、リード動作時において、SDRAM300から入力されるデータ信号DQを、ライトレベリング機能を用いて設定されたSDRAM300に出力するデータストローブ信号DQSの出力遅延量Dt1に応じて設定された入力遅延量Dt2だけ遅延させるのである。
このように、本発明の第2実施形態としての情報処理装置10aによれば、上述した本発明の第1実施形態と同様の作用効果を得ることができる他、位相が異なる複数のクロック信号CK1−0〜CK1−mおよび位相が異なる複数のタイミング信号CK3−0〜CK3−mをメモリコントローラ12内の既存の回路から生成することにより、より回路規模を抑えることができ、又、より消費電力を低減することができる。

0117

また、クロック信号線がデイジーチェーンで配線された複数のSDRAM300−0〜300−nに対して、ライトレベリング機能を用いて設定された出力遅延量Dt1に基づいて、リード動作時においてSDRAM300から入力されるデータ信号DQの入力遅延量Dt2を設定することにより、クロック信号線がデイジーチェーンで配線された複数のSDRAM300−0〜300−nから出力されたデータ信号DQの入力時間を容易に揃えることができ、従って、リード動作の制御を行なう場合において、データ信号DQの伝播遅延による不具合を防止することができる。

0118

〔3〕本発明の第2実施形態の第1変形例
次に、図11を参照しながら、本発明の第2実施形態の第1変形例における情報処理装置10bについて説明する。
図11は本発明の第2実施形態の第1変形例としての情報処理装置におけるメモリコントローラの回路構成例を模式的に示す図である。

0119

この図11に示すように、本発明の第2実施形態の第1変形例としての情報処理装置10bは、第2実施形態の出力用可変遅延回路DW0,DW1および入力用可変遅延回路DR1,DR2に代えて出力用可変遅延回路DW0b,DW1bおよび入力用可変遅延回路DR1b,DR2bをそなえ、更に、第4クロック信号生成部25および第5クロック信号生成部26をメモリコントローラ12にそなえるものであり、その他の部分は第2実施形態の情報処理装置10aと同様に構成されている。

0120

なお、図中、既述の符号と同一の符号は同一もしくは略同一の部分を示しているので、その詳細な説明は省略する。
また、図11においては、便宜上、クロック信号線とアドレス信号Addおよびコマンド信号CMDを出力するための信号線とがDIMM11の端部付近(紙面上部)において接続されていることを示しているが、実際には、図3に示すように、これらの信号線がDIMM11の中央部(紙面中央)に接続されているものとする。

0121

第4クロック信号生成部25は、処理部13から入力されるクロック信号CLKに基づいて所定周期のクロック信号CK4を生成・出力するものである。この第4クロック信号生成部25は、クロック信号CLKと同じクロック周期のクロック信号をクロック信号CK4として出力してもよく、又、クロック信号CLKを1/2や1/4等の他のクロック周期に変換したクロック信号CK4を出力してもよい。

0122

第5クロック信号生成部26は、SDRAM300から入力されるデータストローブ信号DQSに基づいて所定周期のクロック信号CK5を生成・出力するものである。
出力用可変遅延回路DW0bは、上述した第2実施形態の出力用可変遅延回路DW0と同様に、第1実施形態に係る可変遅延回路100で構成されている。
そして、第1変形例においては、上述した第2実施形態の出力用可変遅延回路DW0とは異なり、出力用可変遅延回路DW0bには、第4クロック信号生成部25から取り出された複数のクロック信号CK4−0〜CK4−mが入力されるようになっており、これらの複数のクロック信号CK4−0〜CK4−mが、上述した第1実施形態における複数のタイミング信号TS0〜TSmに相当する。

0123

また、これらの複数のクロック信号CK4−0〜CK4−mは、上述した第2実施形態の複数のクロック信号CK1−0〜CK1−mと同様に、第0クロック信号CK4−0から第mクロック信号CK4−mにかけて90°の位相で順次遅延するように、第4クロック信号生成部25における所定位置からそれぞれ取り出されて出力用可変遅延回路DW0bに入力されるようになっている。

0124

なお、出力用可変遅延回路DW0bにおけるその他の部分は、上述した第2実施形態の出力用可変遅延回路DW0と同様の機能構成をそなえており、その説明を省略する。
出力用可変遅延回路DW1bは、上述した第2実施形態の出力用可変遅延回路DW1と同様に、第1実施形態に係る可変遅延回路100で構成されるものであって、出力遅延量設定部23からの出力制御信号d1に基づいて、フリップフロップFF1から入力された第1の入力データ信号I_DQeまたは第2のデータ信号I_DQoを、出力遅延量設定部23によって設定された出力遅延量Dt1だけ遅延させてフリップフロップFF2に出力するようになっている。

0125

なお、この出力用可変遅延回路DW1bは上述した出力用可変遅延回路DW0bと同様に構成されているため、その詳細な説明を省略する。
入力用可変遅延回路DR1bは、上述した第2実施形態の入力用可変遅延回路DR1と同様に、第1実施形態に係る可変遅延回路100で構成されるものである。
そして、第1変形例においては、上述した第2実施形態の入力用可変遅延回路DR1とは異なり、入力用可変遅延回路DR1bには、第5クロック信号生成部26から取り出された複数のクロック信号CK5−0〜CK5−mが入力されるようになっており、これらの複数のクロック信号CK5−0〜CK5−mが、上述した第1実施形態における複数のタイミング信号TS0〜TSmに相当する。

0126

また、これらの複数のクロック信号CK5−0〜CK5−mは、上述した第2実施形態の複数のタイミング信号CK3−0〜CK3−mと同様に、第0クロック信号CK5−0から第mクロック信号CK5−mにかけて90°の位相で順次遅延するように、第5クロック信号生成部25における所定位置からそれぞれ取り出されて入力用可変遅延回路DR1bに入力されるようになっている。

0127

なお、入力用可変遅延回路DR1bにおけるその他の部分は、上述した第2実施形態の入力用可変遅延回路DR1と同様の機能構成をそなえており、その説明を省略する。
入力用可変遅延回路DR2bは、上述した第2実施形態の入力用可変遅延回路DR2と同様に、第1実施形態に係る可変遅延回路100で構成されるものであって、入力遅延量設定部24からの入力制御信号d2に基づいて、フリップフロップFF7から入力された第4のデータ信号O_DQoを、入力遅延量設定部24によって設定された入力遅延量Dt2だけ遅延させてフリップフロップFF8に出力するようになっている。

0128

なお、この入力用可変遅延回路DR2bは、上述した入力用可変遅延回路DR1bと同様に構成されているため、その詳細な説明を省略する。
このように、本発明の第2実施形態の第1変形例としての情報処理装置10bによれば、上述した第2実施形態と同様の作用効果を得ることができる他、位相が異なる複数のクロック信号CK4−0〜CK4−m,CK5−0〜CK5−mをメモリコントローラ12内の回路から生成する場合よりも自由に生成することができる。

0129

〔4〕本発明の第2実施形態の第2変形例
次に、図12を参照しながら、本発明の第2実施形態の第2変形例における情報処理装置10cについて説明する。
図12は本発明の第2実施形態の第2変形例としての情報処理装置におけるメモリコントローラの回路構成例を模式的に示す図である。

0130

この図12に示すように、本発明の第2実施形態の第2変形例としての情報処理装置10cは、第2実施形態の出力用可変遅延回路DW0,DW1および入力用可変遅延回路DR1,DR2に代えて出力用可変遅延回路DW0c,DW1cおよび入力用可変遅延回路DR1c,DR2cをそなえ、更に、第6クロック信号生成部27および第7クロック信号生成部28を処理部13にそなえるものであり、その他の部分は第2実施形態の情報処理装置10aと同様に構成されている。

0131

なお、図中、既述の符号と同一の符号は同一もしくは略同一の部分を示しているので、その詳細な説明は省略する。
また、図12においては、便宜上、クロック信号線とアドレス信号Addおよびコマンド信号CMDを出力するための信号線とがDIMM11の端部付近(紙面上部)において接続されていることを示しているが、実際には、図3に示すように、これらの信号線がDIMM11の中央部(紙面中央)に接続されているものとする。

0132

第6クロック信号生成部27は、処理部13の制御を行なうための所定周期のクロック信号CK6を生成・出力するものであり、第7クロック信号生成部28は、処理部13の制御を行なうための所定周期のクロック信号CK7を生成・出力するものである。
出力用可変遅延回路DW0cは、上述した第2実施形態の出力用可変遅延回路DW0と同様に、第1実施形態に係る可変遅延回路100で構成されている。
そして、第2変形例においては、上述した第2実施形態の出力用可変遅延回路DW0とは異なり、出力用可変遅延回路DW0cには、第6クロック信号生成部27から取り出された複数のクロック信号CK6−0〜CK6−mが入力されるようになっており、これらの複数のクロック信号CK6−0〜CK6−mが、上述した第1実施形態における複数のタイミング信号TS0〜TSmに相当する。

0133

また、これらの複数のクロック信号CK6−0〜CK6−mは、上述した第2実施形態の複数のクロック信号CK1−0〜CK1−mと同様に、第0クロック信号CK6−0から第mクロック信号CK6−mにかけて90°の位相で順次遅延するように、第6クロック信号生成部27における所定位置からそれぞれ取り出されて出力用可変遅延回路DW0cに入力されるようになっている。

0134

なお、出力用可変遅延回路DW0cにおけるその他の部分は、上述した第2実施形態の出力用可変遅延回路DW0と同様の機能構成をそなえており、その説明を省略する。
出力用可変遅延回路DW1cは、上述した第2実施形態の出力用可変遅延回路DW1と同様に、第1実施形態に係る可変遅延回路100で構成されるものであって、出力遅延量設定部23からの出力制御信号d1に基づいて、フリップフロップFF1から入力された第1の入力データ信号I_DQeまたは第2のデータ信号I_DQoを、出力遅延量設定部23によって設定された出力遅延量Dt1だけ遅延させてフリップフロップFF2に出力するようになっている。

0135

なお、この出力用可変遅延回路DW1cは上述した出力用可変遅延回路DW0cと同様に構成されているため、その詳細な説明を省略する。
入力用可変遅延回路DR1cは、上述した第2実施形態の入力用可変遅延回路DR1と同様に、第1実施形態に係る可変遅延回路100で構成されるものである。
そして、第2変形例においては、上述した第2実施形態の入力用可変遅延回路DR1とは異なり、入力用可変遅延回路DR1cには、第7クロック信号生成部28から取り出された複数のクロック信号CK7−0〜CK7−mが入力されるようになっており、これらの複数のクロック信号CK7−0〜CK7−mが、上述した第1実施形態における複数のタイミング信号TS0〜TSmに相当する。

0136

また、これらの複数のクロック信号CK7−0〜CK7−mは、上述した第2実施形態の複数のタイミング信号CK3−0〜CK3−mと同様に、第1クロック信号CK7−0から第mクロック信号CK7−mにかけて90°の位相で順次遅延するように、第7クロック信号生成部28における所定位置からそれぞれ取り出されて入力用可変遅延回路DR1cに入力されるようになっている。

0137

なお、入力用可変遅延回路DR1cにおけるその他の部分は、上述した第2実施形態の入力用可変遅延回路DR1と同様の機能構成をそなえており、その説明を省略する。
入力用可変遅延回路DR2cは、上述した第2実施形態の入力用可変遅延回路DR2と同様に、第1実施形態に係る可変遅延回路100で構成されるものであって、入力遅延量設定部24からの入力制御信号d2に基づいて、フリップフロップFF7から入力された第4のデータ信号O_DQoを、入力遅延量設定部24によって設定された入力遅延量Dt2だけ遅延させてフリップフロップFF8に出力するようになっている。

0138

なお、この入力用可変遅延回路DR2cは、上述した入力用可変遅延回路DR1cと同様に構成されているため、その詳細な説明を省略する。
このように、本発明の第2実施形態の第2変形例としての情報処理装置10cによっても、上述した第2実施形態の第1変形例と同様の作用効果を得ることができる。
〔5〕その他
なお、本発明は上述した実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。

0139

例えば、上記実施形態では、第2遅延回路102の後段に第1遅延回路101をそなえる場合について説明しているが、それに限定されるものではなく、例えば、第2遅延回路102の前段に第1遅延回路101をそなえてもよく、例えば、第1遅延回路101から出力された信号が第2遅延回路102およびセレクタ103にそれぞれ入力されるように構成されていてもよい。

0140

また、上記実施形態では、複数種類のタイミング信号TS0〜TSmが90°の位相(α=90)で順次遅延してセレクタ104に入力される場合について説明しているが、それに限定されるものではなく、データ入力信号IN(図1参照)に対して位相αだけ遅延した1以上のタイミング信号がセレクタ104に入力されていればよい。例えば、α=180°の場合には、上記第1実施形態における計算式を参照してm+1=360/180であり、m=1となることから、データ入力信号INに対して180°遅延した1つのタイミング信号がセレクタ104に入力されていればよい。

0141

さらに、上記実施形態では、第2遅延回路102がDフリップフロップ105をそなえて構成されている場合について説明しているが、それに限定されるものではなく、例えば、第2遅延回路102がDフリップフロップ105に代えてDラッチをそなえて構成されていてもよい。
図13は本発明の第2実施形態の情報処理装置の他の構成例を模式的に示す図である。

0142

そして、上述した本発明の第2実施形態では、各SDRAM300−0〜300−nがデイジーチェーンで配線されている場合について説明しているが、それに限定されるものではなく、クロック信号線がDIMM11内で2方向に分岐して配線されていてもよく、図13に示す例(Registered DIMM)では、クロック信号CK1が、SDRAM300−3とSDRAM300−4とにそれぞれ入力されて、SDRAM300−3からSDRAM300−0にかけて順次入力されるとともに、SDRAM300−4からSDRAM300−7にかけて順次入力されるように配線されている。この場合には、各出力遅延量Dt1−0〜Dt1−7は、出力遅延量Dt1−3から出力遅延量Dt1−0にかけて順次設定されるとともに、出力遅延量Dt1−4から出力遅延量Dt1−7にかけて順次設定されるようになっている。

0143

さらに、図示を省略するが、SDRAM300が両面実装されたDIMMにおいては、例えば、SDRAM300−0とSDRAM300−1とが、SDRAM300−2とSDRAM300−3とが、SDRAM300−4とSDRAM300−5とが、SDRAM300−6とSDRAM300−7とが、それぞれ両面実装されている場合には、各出力遅延量Dt1−0〜Dt1−7は、出力遅延量Dt1−2から出力遅延量Dt1−0に、出力遅延量Dt1−3から出力遅延量Dt1−1に、出力遅延量Dt1−4から出力遅延量Dt1−6に、出力遅延量Dt1−5から出力遅延量Dt1−7に、それぞれ順次設定されるようになっている。

0144

そして、上述した本発明の第2実施形態においては、処理部13が、遅延時間制御プログラム(遅延量設定プログラム)を実行することにより、これらの出力遅延量設定部23および入力遅延量設定部24として機能するようになっている。
なお、これらの出力遅延量設定部23および入力遅延量設定部24としての機能を実現するためのプログラム(遅延時間制御プログラム)は、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RW等),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD+R,DVD−RW,DVD+RW,HD−DVD等),ブルーレイディスク磁気ディスク光ディスク光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、その記憶装置から通信経路を介してコンピュータに提供するようにしてもよい。

0145

出力遅延量設定部23および入力遅延量設定部24としての機能を実現する際には、内部記憶装置に格納されたプログラムがコンピュータのマイクロプロセッサによって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行するようにしてもよい。
なお、本発明の第2実施形態において、コンピュータとは、ハードウェアオペレーティングシステムとを含む概念であり、オペレーティングシステムの制御の下で動作するハードウェアを意味している。又、オペレーティングシステムが不要でアプリケーションプログラム単独でハードウェアを動作させるような場合には、そのハードウェア自体がコンピュータに相当する。ハードウェアは、少なくとも、CPU(Central Processing Unit)等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取るための手段とをそなえており、本発明の第2実施形態においては、情報処理装置10a,10b,10cがコンピュータとしての機能を有しているのである。

0146

さらに、本発明の第2実施形態における記録媒体としては、上述したフレキシブルディスク,CD,DVD,ブルーレイディスク,磁気ディスク,光ディスク,光磁気ディスクのほか、ICカードROMカートリッジ磁気テープパンチカード,コンピュータの内部記憶装置(RAMやROMなどのメモリ),外部記憶装置等や、バーコードなどの符号が印刷された印刷物等のコンピュータ読取可能な種々の媒体を利用することができる。
〔6〕付記
上記実施形態に関し、更に以下の付記を開示する。

0147

(付記1) 信号が入力されてから出力するまでの遅延量を変更可能な可変遅延回路であって、
該信号を第1遅延量だけ遅延させる第1遅延部と、
該信号を該第1遅延量よりも大きい第2遅延量だけ遅延させる第2遅延部と、
該遅延量が該第1遅延部で遅延可能な最大遅延量を超える場合に、該遅延量が該第1遅延量と該第2遅延量との和になる信号経路を選択する遅延量選択部とをそなえることを特徴とする、可変遅延回路。

0148

(付記2) 該第2遅延部は、
該遅延量に基づいて、複数種類のタイミング信号のうちのいずれかを選択する選択回路と、
該選択回路により選択された該タイミング信号に応じて、該信号を該第2遅延量だけ遅延させる順序回路とをそなえることを特徴とする、付記1に記載の可変遅延回路。

0149

(付記3) 該第1遅延部は、該信号を、直列に接続された所定数の該遅延素子に通過させることにより該第1遅延量だけ遅延させるデジタル遅延回路で構成されていることを特徴とする、付記1または付記2に記載の可変遅延回路。
(付記4) 該順序回路がDフリップフロップで構成されていることを特徴とする、付記1〜3のいずれか1項に記載の可変遅延回路。

0150

(付記5) 該順序回路がDラッチで構成されていることを特徴とする、付記1〜3のいずれか1項に記載の可変遅延回路。
(付記6)ライトレベリング機能をそなえ、複数のメモリに対して制御を行なうメモリ制御回路であって、
前記複数のメモリに対応してそれぞれ、
該メモリに出力するデータストローブ出力信号を、該ライトレベリング機能を用いて設定された出力遅延量だけ遅延させる出力用可変遅延回路をそなえ、
該出力用可変遅延回路が、
該データストローブ出力信号を第1出力遅延量だけ遅延させる第1出力遅延部と、
該データストローブ出力信号を該第1出力遅延量よりも大きい第2出力遅延量だけ遅延させる第2出力遅延部と、
該出力遅延量が該第1出力遅延部で遅延可能な最大出力遅延量を超える場合に、該出力遅延量が該第1出力遅延量と該第2出力遅延量との和になる信号経路を選択する出力遅延量選択部とをそなえることを特徴とする、メモリ制御回路。

0151

(付記7) 前記複数のメモリは、クロック信号線がデイジーチェーンで配線されていることを特徴とする、付記6に記載のメモリ制御回路。
(付記8) 該第2出力遅延部は、
該出力遅延量に基づいて、複数種類のタイミング信号のうちのいずれかを選択する出力用選択回路と、
該出力用選択回路により選択された該タイミング信号に応じて、該データストローブ出力信号を該第2出力遅延量だけ遅延させる出力用順序回路とをそなえることを特徴とする、付記6または付記7に記載のメモリ制御回路。

0152

(付記9) 該タイミング信号が、該メモリに対してリード(read)/ライト(write)動作の制御を行なう際に用いられるクロック信号であることを特徴とする、付記8に記載のメモリ制御回路。
(付記10)ライトレベリング機能をそなえ、複数のメモリに対して制御を行なうメモリ制御回路であって、
前記複数のメモリに対応してそれぞれ、
該メモリから入力されるデータ入力信号を、該ライトレベリング機能を用いて設定された該メモリに出力するデータストローブ出力信号の出力遅延量に応じて設定された入力遅延量だけ遅延させる入力用可変遅延回路をそなえ、
該入力用可変遅延回路が、
該データ入力信号を第1入力遅延量だけ遅延させる第1入力遅延部と、
該データ入力信号を該第1入力遅延量よりも大きい第2入力遅延量だけ遅延させる第2入力遅延部と、
該入力遅延量が該第1入力遅延部で遅延可能な最大入力遅延量を超える場合に、該入力遅延量が該第1入力遅延量と該第2入力遅延量との和になる信号経路を選択する入力遅延量選択部とをそなえることを特徴とする、メモリ制御回路。

0153

(付記11) 前記複数のメモリは、クロック信号線がデイジーチェーンで配線されていることを特徴とする、付記10に記載のメモリ制御回路。
(付記12) 該第2入力遅延部は、
該入力遅延量に基づいて、複数種類のタイミング信号のうちのいずれかを選択する入力用選択回路と、
該入力用選択回路により選択された該タイミング信号に応じて、該データ入力信号を該第2入力遅延量だけ遅延させる入力用順序回路とをそなえることを特徴とする、付記10または付記11に記載のメモリ制御回路。

0154

(付記13) 該タイミング信号が、該メモリに対してリード(read)/ライト(write)動作の制御を行なう際に用いられる信号であることを特徴とする、付記12に記載のメモリ制御回路。
(付記14) 付記6〜13に記載されたメモリ制御回路の該出力遅延量を、前記複数のメモリに対応してそれぞれ設定する遅延量設定装置であって、
一のメモリに対応する設定対象の出力遅延量を、他のメモリに対応する設定済の出力遅延量に基づいて設定する出力遅延量設定部をそなえることを特徴とする、遅延量設定装置。

0155

(付記15) 該出力遅延量設定部は、前記複数のメモリに対応するそれぞれの該出力遅延量を、クロック信号線の配線経路に沿って順次設定することを特徴とする、付記14に記載の遅延量設定装置。
(付記16) 該出力遅延量設定部は、前記一のメモリと隣り合う前記他のメモリに対応する設定済の出力遅延量を開始遅延量として、当該開始遅延量を段階的に変更することにより、前記設定対象の出力遅延量を設定することを特徴とする、付記15に記載の遅延量設定装置。

0156

(付記17) 付記6〜13に記載されたメモリ制御回路の該出力遅延量を、前記複数のメモリに対応してそれぞれ設定する遅延量設定方法であって、
一のメモリに対応する設定対象の出力遅延量を、他のメモリに対応する設定済の出力遅延量に基づいて設定する出力遅延量設定ステップをそなえることを特徴とする、遅延量設定方法。

0157

(付記18) 該出力遅延量設定ステップにおいて、前記複数のメモリに対応するそれぞれの該出力遅延量を、クロック信号線の配線経路に沿って順次設定することを特徴とする、付記17に記載の遅延量設定方法。
(付記19) 該出力遅延量設定ステップにおいて、前記一のメモリと隣り合う前記他のメモリに対応する設定済の出力遅延量を開始遅延量として、当該開始遅延量を段階的に変更することにより、前記設定対象の出力遅延量を設定することを特徴とする、付記18に記載の遅延量設定方法。

0158

(付記20) 付記6〜13に記載されたメモリ制御回路の該出力遅延量を、前記複数のメモリに対応してそれぞれ設定する遅延量設定機能をコンピュータに実行させるための遅延量設定プログラムであって、
一のメモリに対応する設定対象の出力遅延量を、他のメモリに対応する設定済の出力遅延量に基づいて設定する出力遅延量設定部として、該コンピュータを機能させることを特徴とする、遅延量設定プログラム。

図面の簡単な説明

0159

本発明の第1実施形態としての可変遅延回路の構成例を模式的に示す図である。
本発明の第1実施形態としての可変遅延回路の動作を説明するためのタイミングチャートである。
本発明の第2実施形態としての情報処理装置の構成例を模式的に示す図である。
本発明の第2実施形態としての情報処理装置の構成例を模式的に示す図である。
本発明の第2実施形態としての情報処理装置のメモリコントローラの回路構成例を模式的に示す図である。
本発明の第2実施形態としての情報処理装置のメモリコントローラの回路構成例を模式的に示す図である。
本発明の第2実施形態としての情報処理装置の出力遅延量設定部におけるライトレベリング機能を説明するための図である。
本発明の第2実施形態としての情報処理装置の出力遅延量設定部において遅延量を設定する順序を説明するための図、
本発明の第2実施形態としての情報処理装置の出力遅延量設定部において遅延量を設定する順序を示すタイミングチャートである。
本発明の第2実施形態としての情報処理装置の出力遅延量設定部において出力遅延量を設定する順序を示すフローチャートである。
本発明の第2実施形態の第1変形例としての情報処理装置におけるメモリコントローラの回路構成例を模式的に示す図である。
本発明の第2実施形態の第2変形例としての情報処理装置におけるメモリコントローラの回路構成例を模式的に示す図である。
本発明の第2実施形態の情報処理装置の他の構成例を模式的に示す図である。
従来の可変遅延回路の構成例を模式的に示す図である。

符号の説明

0160

100可変遅延回路
101 第1遅延回路(第1遅延部,第1出力遅延部,第1入力遅延部)
102 第2遅延回路(第2遅延部,第2出力遅延部,第2入力遅延部)
103セレクタ(遅延量選択部,出力遅延量選択部,入力遅延量選択部)
104 セレクタ(選択回路,出力用選択回路,入力用選択回路)
105Dフリップフロップ(順序回路,出力用順序回路,入力用順序回路)
10a,10b,10c情報処理装置(遅延量設定装置)
11 DIMM
300,300−0〜300−n SDRAM
12メモリコントローラ(メモリ制御回路)
13 処理部
14 第1クロック信号生成部
15−0〜15−n制御回路ユニット
16DQS信号生成部
17,17−0〜17−kDQ信号制御部
18 第2クロック信号生成部
19,19−0〜19−k DQ信号出力制御部
20,20−0〜20−k DQ信号入力制御部
22 遅延時間制御部
23 出力遅延量設定部
24 入力遅延量設定部
25 第4クロック信号生成部
26 第5クロック信号生成部
27 第6クロック信号生成部
28 第7クロック信号生成部
d1出力制御信号
d2入力制御信号
DW,DW0,DW1,DW0b,DW1b,DW0c,DW1c 出力用可変遅延回路(可変遅延回路)
DR,DR1,DR2,DR1b,DR2b,DR1c,DR2c 入力用可変遅延回路(可変遅延回路)
DR0リード側DQS遅延回路

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ