JP3757757B2 - リード優先メモリシステム - Google Patents
リード優先メモリシステム Download PDFInfo
- Publication number
- JP3757757B2 JP3757757B2 JP2000152667A JP2000152667A JP3757757B2 JP 3757757 B2 JP3757757 B2 JP 3757757B2 JP 2000152667 A JP2000152667 A JP 2000152667A JP 2000152667 A JP2000152667 A JP 2000152667A JP 3757757 B2 JP3757757 B2 JP 3757757B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- wiring
- signal
- clock
- memory controller
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
- G06F13/4086—Bus impedance matching, e.g. termination
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Dram (AREA)
- Memory System (AREA)
Description
【発明の属する技術分野】
本発明は情報処理装置においてマルチプロセッサやメモリ等の素子間(例えばCMOS等により構成されたデジタル回路間又はその機能ブロック間)での信号伝送のための技術に関し、特に、同一の伝送線に接続された複数の素子がデータ転送を行うバス伝送の高速化技術に関する。特に、複数のメモリモジュールとメモリコントローラを接続するバスとこれを用いるシステムに関する。
【0002】
【従来の技術】
多数のノードが接続されたバス上で高速にデータを転送するためには配線の伝搬遅延時間が無視できなくなっている。これを解決するメモリバス方式として" SynchLink : A Proposal for an Implementation of IEEEE P1596.4 (Ramlink) Optimized for small (single bord) Memory Systems" March 23, 1995がある。この従来技術の基本方式の1形態を図2に示す。
【0003】
図2は、メモリコントローラ(以下MCと表記する)1とDRAM(Dynamic Random Access Memory) 10−1〜10−4間のデータ転送を行うための配線形態を示し、クロック信号配線30とデータ信号配線31によってMC1とDRAM10−1〜10−4間がバス接続されている。クロック信号はクロック信号配線30を介してMC1からDRAM10−1〜10−4に一方向に供給されている。データ信号はデータ信号配線31をライト動作の場合はMC1からDRAM10−1〜10−4へ伝搬し、リード動作の場合はDRAM10−1〜10−4からMC1の方向へ伝搬する。ここで、クロック信号配線30とデータ信号配線31は配線長が同じであり、DRAM10−1〜10−4からみてMC1からのライトデータはクロック信号と同じ伝搬遅延時間を持つ。その結果、どのDRAMに対してもクロック信号との位相差が同じくなるように、ライトデータは各DRAM10−1〜10−4に到達出来る。このため、クロック信号配線30とデータ信号配線31の配線長差のバラツキを小さく抑えることで、ライトデータのタイミング設計は非常に容易となる。
【0004】
他方、リードデータに関してはクロック信号とデータ信号のそれぞれの伝搬遅延方向が異なるため、MC1でのクロック信号に対してデータ信号の到達時間が異なりMC1でのデータの読み取りが困難である。このMC1でのクロック信号に対するデータ信号の時間差は、クロック信号配線30とデータ信号配線31の伝搬時間の和にほぼ等しく、リードデータを送信するDRAM10−1〜10−4の場所に依存して異なる。すなわち、DRAMがMC1に近ければクロック信号とリードデータ信号との時間差は短いが、遠いければリードデータは時間遅れが大きいことになる。
【0005】
このようにDRAM10−1〜10−4の場所によりクロック信号に対するデータ信号の到達時間が異なるので、MC1がDRAM10−1〜10−4からのデータ信号を取り込むのは困難であるため、位相調整(read vernier)回路40で位相差を吸収してデータ信号を取り込んでいた。このread vernier回路40はDRAM10−1〜10−4の場所による時間差を吸収する。例えば、read vernier回路40は、リードデータ信号がクロック信号に同期するようにDRAM10−1〜10−4の位置によりリードデータの遅延量を変える。この意味で、この従来例はライトデータアクセスを優先する配線方式である。
【0006】
Betty Prince "High Performance Memories"; John Wiley & Sons Ltd. 1995 p205-20に記載されている第2の従来例を、図3を用いて説明する。図2との大きな差異はクロック信号(CLK)30の配線方法にある。クロック発生回路である水晶発信器2の出力が各DRAM10−4〜10−1の各チップに入力され、その後MC1に入力され、更に配線30は折り返されて再び各DRAM10−1〜10−4に入力され、終端抵抗により整合終端されている。すなわち、各DRAM10−1〜10−4はクロック入力を2本持つ。また、DRAM10−1〜10−4内にはこの2本のクロック信号から配線位置に依らないクロックを生成する位相調整回路40を持っている。
【0007】
【発明が解決しようとする課題】
第一の従来例は、リードデータに対して位相調整用の遅延がread vernier回路40で付加されるためリードデータの処理時間が長くなる。これはリードデータに対してシステム性能が充分でないことを意味する。一般的なプロセッサ、メモリ、I/Oからなる情報処理装置においてはメモリに対するライトアクセスよりもリードアクセスの方が大幅に多い。このことはメモリに対してはライトアクセスよりもリードアクセスを優先するようなメモリシステムを構築する方がシステム性能が向上することを意味するが、図2で示したメモリシステムではライトアクセスを優先しているのでシステム性能を充分に高めていない。すなわち、性能が高くないと言える。すなわち、第1の従来例では、システムのメモリアクセスでリードアクセスを優先していないのでシステム性能が高くないという第1の課題があった。
【0008】
第2の従来例では位相調整回路40をDRAMの全てに持たなければならない。このため、チップ面積が拡大し、DRAMの個数だけ面積が増加するのでシステムの価格が高くなるという第2の課題があった。
【0009】
また、全てのDRAM10−1〜10−4が2本のクロック入力信号を持っており、パッケージのコストも高くなると言う第3の課題があった。
【0010】
本発明の目的は、低コストで、リード優先メモリシステムを実現することにある。
【0011】
【課題を解決するための手段】
第1の課題を解決して、本発明の目的を達成するために、本発明のリード優先メモリシステムでは、リードアクセスを優先するために、クロック信号の伝搬方向をMC(メモリコントローラ)からでなく、MCから最遠端に位置するDRAMからデータ信号と同じ伝搬遅延時間になるようにクロック信号を配線する。これによりMCにおいてクロック信号とリードデータ信号のそれぞれの伝搬遅延時間が同じとなるため、MCでのリードデータの処理が待ち時間無しで出来る。そのためリードアクセス性能がシステムとして向上する。もちろん、ライトデータに対してはクロック信号とデータ信号は伝搬方向が互いに逆となるのでライトデータのタイミングを各DRAMの位置に応じた遅延量でアクセスする必要がある。すなわち、位相調整回路をMCのライトデータ側に持たせることでリードアクセス優先配線であってもライトデータも問題なくDRAMに書き込める。
【0012】
本発明では、リードアクセスを優先する方式を採用しているので、ライトデータのタイミング生成に必要な位相調整用の位置情報を得る必要がある。即ち、図2の第1の従来例とは違って、本発明では、MCはクロック信号とリードデータ信号の位相差が殆ど無いので別の方法でモジュールの位置情報を得る必要がある。
【0013】
この課題を解決するため、本発明では、以下の機構を設ける。
【0014】
MCから各DRAMの位置情報を検出するため、1対1配線の信号を用いて矩形パルスをMCからドライブする。DRAMの入力インピーダンスは極めて高いため1対1配線を伝搬する信号はDRAMの位置で全反射するので、MCで波形観測すると全反射のパルスが配線長に応じた時間遅れで戻ってくる。これにより、MCでは配線上の往復の伝搬遅延時間である各DRAM位置の情報が得られる。
【0015】
第2、3の課題を解決して、本発明の目的を達成するために、本発明のリード優先メモリシステムでは、従来技術のようにクロック信号配線を折り返すのではなく、リードアクセス優先になるようにクロック信号配線に単一方向をもたせるために、各DRAM側でなくMC側にただ一つの位相調整回路を設ける。その結果、メモリシステムとして総チップ面積が小さくなり、DRAMの総ピン数も減るので価格が低くなる。
【0016】
【発明の実施の形態】
第1の実施例を図1を用いて説明する。
【0017】
メモリコントローラ制御機構を有するLSIチップ(以下MC: Memory Controllor)1は、メモリチップ(DRAM)10を複数個搭載したメモリモジュール20−1〜20−2を制御する。図1には示されてないプリント配線板(Printed Circuit Board)上に形成された信号伝達用の配線30〜32,33−1,33−2は、MC1とメモリモジュール20−1〜20−2間で各種の信号を伝達する。図1では、メモリモジュールは2個しか記載していないが、もちろんこれ以上でもこれ以下でも以下述べる目的・効果は同じである。
【0018】
配線30はクロック信号用である。クロック信号は水晶発振器などのパルス発生器2から出力されてクロック信号配線30を伝搬し各メモリモジュール20−1〜20−2内のDRAMに分配される。図1においてはDRAM モジュール20−1〜20−2内にDRAM10を複数個搭載しており、これらのDRAM10に同位相で信号を伝達させるために、モジュール20−1内のクロック分配器3を介している。
【0019】
クロック信号配線30には図中英字の”C”の様な記号で表記された2本の配線からなる方向性結合器5が設けられている。方向性結合器5はクロック信号配線30などの配線をパルス信号などの信号が伝搬すると他方の終端された配線に微分様波形の信号を生成する回路である。方向性結合器については、例えば、特開平7ー141079の「非接触バス配線」などに詳細が示されている。
【0020】
この方向性結合器5では2本の配線が互いに接触・分岐しておらず、一定の間隔で平行に布線されている。そのため、一方の配線の持つ特性インピーダンスはこの区間で一定であるという特徴を持つ。このため、パルス発生器2からのクロック信号は特性インピーダンスが一定であることから波形歪みが非常に少なく信号を伝達できる。
【0021】
この方向性結合器5を介してクロック信号配線30を伝搬するクロック信号(CLK)がDRAMモジュール20−1〜20−2に伝達され、クロック分配器3に入力される。そして、全てのDRAMモジュールを通過した後、MC1に入力され、パルス発生器2から見て最遠端で整合終端されている。この整合終端はクロック配線30を伝搬する信号の反射波を吸収することが目的であり、MC1内のクロック信号に対する入力インピーダンスが配線30の特性インピーダンスと同じでも良い。この場合、終端抵抗は必要ない。
【0022】
ここで、バス配線のための信号伝達に方向性結合器5を用いて説明したが、SSTL(Stub Series terminated Transceiver Logic)などのインタフェース方式を用いても同じ効果がある。この場合、全ての方向性結合器5をSSTLで用いられているシリーズ抵抗に依る分岐に置き換えればよい。
【0023】
更に、データ信号配線(DQ)31とこれに結合する方向性結合器5を介して、DRAMモジュール20−1〜20−2内の各DRAMとMC1との間で信号の送受信が行われる。同様に、データ用のストローブ信号(DQS)も配線32、方向性結合器を介して信号を送受信できる。これらクロック信号配線30、データ信号配線31、データストローブ信号配線32はそれぞれ1本の信号配線に複数の素子が接続されている構成のバス接続がなされている。
【0024】
DRAMモジュールの位置検出信号配線33−1,33−2は、MC1と各DRAMモジュール20−1〜20−2を1対1(point-to-point)に接続している。通常メモリシステムではMCからのチップセレクト(CS)信号はこの1対1配線によって伝達されるので、位置検出信号をCS信号と兼ねても良い。図1ではモジュール位置検出用配線33−1,33−2はCS信号と共用されている。モジュール20ー1内でCS信号は各DRAM10にバッファ4によって分配されている。このバッファ4は当然、他のアドレス信号や制御信号の分配を行うこともできる。ここで、DRAMモジュール位置検出信号配線33ー1〜33ー2の配線長は、図1には記載していないMC1の信号ピンからモジュール20ー1〜20ー2内のバッファ4の入力ピンまでの長さであり、この配線長はDQS配線32、DQ信号31、クロック配線30の各配線のMC1からモジュール20ー1内の各DRAM10までの入力ピンまでの配線長にほぼ等しく、このため、データ信号伝搬遅延時間も等しい構成になっている。その結果、これらの配線では、MC1とDRAM10間の配線長のうち、モジュール内の配線部分の長さは各モジュールで同じであり、MC1とモジュール間で異なる。
【0025】
MC1の内部はアドレスの計算やメモリアドレスの制御などの演算・制御を行うコアロジックの他、クロック信号安定化回路(例えば、PLL:Phase Locked LoopやDLL:Delay Locked Loopなど)51を有している。DRAM10との信号の送受信はDQ、DQS信号に接続されたドライバ53とレシーバ54を介して行われる。また、当然クロック信号安定化回路51の入力回路としてレシーバ53と同じ特性のものを用いても良い。DRAMモジュールの位置検出は、位置検出信号配線33ー1〜33ー2に接続されたドライバ56、レシーバ57を介して行われる。
【0026】
MC1内にはこの他にライトデータのタイミングを生成する位相調整回路(write vernier)52を有している。DRAM10は一般的にクロック信号に対してライトデータを書き込むための時間規定があり、これを満たすようにメモリコントローラMC1はタイミング調整する必要があるが、MC1内の位相調整回路52はこれを行うための回路である。また、MC1からモジュール20ー1、モジュール20ー2までの信号配線30、31、32の配線長がそれぞれ異なるため、この配線上を伝搬する信号の伝搬遅延時間もモジュール毎に異なり、この伝搬時間差も位相調整回路52で吸収される。その結果、MC1は、どのモジュールに搭載されているDRAM10に対しも余裕を持ったタイミングで書き込み(ライト)データを送信できる。
【0027】
更に、MC1にはモジュール20ー1〜20ー2の位置検出のための回路55を有している。この位置検出回路55はドライバ56とレシーバ57と配線33ー1〜33ー2を用いてモジュール20ー1までの距離を測定する。この配線33ー1〜33ー2はDQ信号やDQS信号、あるいはクロック信号のMC1からモジュール20ー1までの配線長に等しい長さ、あるいは信号伝搬遅延時間が等しい長さの1対1配線で接続されており、この配線を用いて伝搬遅延時間を測定できる。
【0028】
伝搬遅延時間の測定の原理は次の通りである。配線33ー1に接続されているモジュール20ー1内のバッファ4の入力インピーダンスは、回路をC−MOSで構成した場合、非常に高いのでここで全反射が生じる。このため、ドライバ56が出力した時間と、バッファ4で全反射したパルスをレシーバ57で観測した時間との差を観測すればMC1からモジュール20ー1までの往復の伝搬時間が分かる。観測された時間差は配線33ー1の往復の伝搬遅延時間とドライバ56、レシーバ57の伝搬遅延時間の和に等しい。一般に、ドライバ56、レシーバ57の遅延時間は配線33ー1の往復の遅延時間に比べて短いので、上記の動作によって位置検出回路55はMC1からモジュールまでの往復の伝搬遅延時間を測定できる。もちろん、モジュール20ー2に対してもCS−2信号の配線33ー2に対しても同じ方法で往復の伝搬遅延時間を測定できる。
【0029】
モジュール20ー1〜20ー2毎の測定された伝搬遅延時間である位置情報はライトデータの書き込みタイミングを生成する位相調整回路52に送られ、書き込み対象のモジュール毎に位相調整される。これはもちろんコアロジックを介して設定しても良い。
【0030】
次に、図4を用いて位置検出の方式の詳細について述べる。図1に於ける位置検出に関する部分(1回路分)を抜き出したのが図4である。図1と同じ機能の部分には同じ番号を振ってある。
【0031】
図4の構成では、MC1内の位置検出回路55にドライバ56の入力とレシーバ57の出力が接続されており、ドライバ56の出力とレシーバ57の入力がMC1に設けられたI/Oピンで接続され、MC1の外部とMC1のI/Oピンを介して接続される。レシーバ57は、このI/Oピンの電圧をモニターすることでI/Oピンに接続された配線の電圧状態をモニターしている。メモリモジュール内20のバッファ4とMC1のI/Oピンとが、配線33、コネクタ15及び配線36を介して接続されている。配線33の持つ特性インピーダンスをZo、配線長をL0、配線36の持つ特性インピーダンスをZo’、配線長をL1とする。
【0032】
位置検出回路55はドライバ56を介してパルスをドライブする。ドライブパルスは配線33、コネクタ15及び配線36を通ってバッファ4に到達する。バッファ4の入力インピーダンスは高いので、バッファ4の入力部でパルスは全反射する。この反射波は到達した経路を逆順にMC1に伝搬する。ドライバ56の出力インピーダンスを配線33の特性インピーダンスZoに合わせることで反射波を吸収でき、MC1のI/Oピンでの再反射を防ぐことが出来る。
【0033】
レシーバ57はI/Oピンでの電圧の変化を監視することで反射波を捉えることが出来き、ドライバ56が出力した時刻から反射波が戻った時刻までが観測できる。
【0034】
図5に示す等価回路を用いて、I/Oピンでの電圧波形シミュレーションを行った。電圧源58と、それに直列接続された抵抗Rsとでドライバ56を近似した。配線33の配線長100mm、Zoを75Ω、モジュール20内の配線36の配線長25mm、Zo’を60Ωとした。このインピーダンスの違いは実際のシステムで配線33が構成されるプリント基板とモジュール20とが別部品であることを考慮した事による。また、バッファ4の入力インピーダンスをキャパシタンスClで近似し、その静電容量を典型的な値の3pFとした。観測点をP1,P2,P3で表した。配線の持つ信号伝搬速度をガラスエポキシ樹脂系のPCBを想定して138mm/nsとした。
【0035】
電圧源58を0.5Vから1.5Vまでの1V振幅で、0.5nsの遷移時間でドライブしたときの各点での波形をシミュレーションした結果、図6のようになった。実線が電圧源58の出力点であるP1での電圧波形、点線がI/Oピンに対応するP2の電圧波形、破線がバッファ4の入力に対応するP3での電圧波形である。P2では、時刻1nsから0.5Vから立上り、1Vで一度安定する。この電圧は、ドライバ56のインピーダンスであるRs=Zoと配線の特性インピーダンスZoの分圧比で決まる。そして、約3.4nsの時点から反射波のため電圧が1.5Vまで立上り出す。この2つの立上りの時間差が配線33と配線36を往復伝搬する時間である。ちなみに、P3では、P2におけるこの2つの立上りが起きる時刻の中間の時刻2nsあたりで電圧が立ち上がり、この時刻がP3にパルスが伝搬してきた時刻である。図6では配線33、36の伝搬遅延時間をTflight(flight time)で表した。また、ドライブ側に抵抗Rsがあるため、P2側での再反射はない。
【0036】
図6から分かるようにI/Oピン(P2)での電圧はLレベル、中間レベル、Hレベルの3値をとり、この3値間の遷移時間が配線33、36の往復伝搬遅延時間(2*Tflight)であることが分かる。このため、P1でのドライブパルスからP2でのVref+を横切った時刻までの時間差がほぼこの往復時間に等しいといえる。すなわち、ドライブパルスとI/Oピン位置であるP2を観測するだけでモジュール20までの配線遅延時間を測定でき、モジュール20の位置情報を得ることができる。これはTDR(Time Domain Reflection)法と呼ばれている方式と同じである。
【0037】
図4においてレシーバ57にヒステリシス特性を持たせることで、この2つの遷移を、耐ノイズ性を更に高めて測定できる。レシーバ57の基準電圧をVrefとすると、ヒステリシス特性によりVrefに対して、わずかにオフセットを持ってレシーバ57出力が反転する。この電圧をVref+,Vref−と表すことにする。図6において、Vrefを1V、Vref+を1.2V、Vref−を0.8Vとした場合、横棒の点線で示された位置でレシーバ57が反応する。図6の様に立ち上がりパルスに対してはVref+の電圧を横切った時点で、立下がりパルスの場合はVref−を横切った時点でそれぞれレシーバ出力が切り替わる。また、伝送線路上の特性インピーダンスの乱れ、例えば2つの配線33、36のZoの差、あるいはコネクタ15などが異なるインピーダンスを持つことでP2点での波形が歪む場合でも、レシーバ57のヒステリシスのオフセット電圧だけノイズ耐性が向上する。つまり、ノイズ耐性が高いと言える。このようにヒステリシス特性を持ったレシーバ57を用いることで多少のインピーダンス不整合による波形の乱れを受けても安定して反射波を捉えることができる。
【0038】
次に、図7を用いて位置検出回路55の動作を示す。
【0039】
位置検出回路55はクロックエッジに同期するFF(Flip Flop)50と排他的論理和(XOR)59、及び遅延整合(delay matching)回路70、遅延レジスタ(delay register)71とからなり、FF50の出力がドライバ56の入力に、ヒステリシス特性を持つレシーバ57の出力がXOR59の入力にそれぞれ接続されている。FF50のクロック端子に入力されるパルス信号61は、被測定対象である往復の配線遅延時間より長いパルス幅を持っている。同様に、I/Oピン62、ヒステリシスレシーバ57の出力信号63、及びXOR59の出力64を示す。
【0040】
各信号の波形は図8のようになる。図8はPULSE信号61の入力でFF50の出力が立上がった状態の時の各信号状態を示している。
【0041】
FF50のPULSE信号61の入力からドライバ56の出力までの時間差をTcoとすると、I/Oピンでの信号62は信号61に対してTco遅延して、図6で示したように電圧が上昇する。レシーバ57の遅延時間をT1とすると、反射波がI/Oピンに戻ってきてVref+を横切った時刻からTin遅れて出力信号63が反転する。この2つの信号61と63を排他的論理和(XOR)演算する事で信号64が得られる。このパルス幅(Tw)は以下の式で表される。
【0042】
Tw=Tco+2*Tflight+Tin (数1)
同様に、立下がりのPULSE信号61でも同じパルス幅Twの信号64を得ることが出来る。この信号64を用いることで遅延整合(delay matching)回路70により、以下に述べるように遅延時間Twを写す、すなわち、Tco,Tinを含んで往復の遅延時間T1を読めることになる。
【0043】
遅延整合(delay matching)回路70の構成の1例を図9に示す。
【0044】
delay matching回路70は微少な遅延素子70aを多段並べてこれをセレクタ70cにより選択し、切替手段70bで伝送通路を切り換えることで可変遅延素子として動作する。遅延時間が図8で示した位置検出信号64のパルス幅Twと同じになるようにこの可変遅延素子の段数を調整する。その基本動作では、遅延の短い順に0、1、2、3・・・とするとi番目の可変遅延時間はi*Tdとなる。遅延後の信号とパルス信号61との排他的論理和の演算によって信号65が得られるが、この信号65と位置検出信号64を位相比較することで可変量の過不足が分かる。遅延量が少ない場合は、位相比較器70dは遅延量を増やすU信号が出力される。遅延が短い場合は遅延量を減らすD信号を出力するように位相比較器70dは動作する。この段数の調整と位相比較を繰り返すことで、この遅延素子70aの遅延量Tdを最少分解能とするTwと同じ長さの遅延回路が得られる。
【0045】
このようにi段の遅延素子70aは信号64の遅延量Twと同じ長さとなり、すなわち、段数iがTwと等価になる。この値はセレクタ70cの設定値そのままであるので、この設定値をセレクタ70cから図7のレジスタ71に格納することでTwの遅延量に等しい情報がえられる。MC1内に同じ構成の可変遅延回路70eを用いて同じ段数iを設定すれば、同じ遅延量Twを持つ回路をMC1内の何処にでも配置できる。当然、レジスタ71はモジュール毎に設定・保持できるようになっている。
【0046】
また、図10のように位置検出用と他の信号を共用しても良い。先に述べたように、位置検出回路55の信号はMC1からメモリモジュール20への1対1接続された一方向信号であり、また、チップセレクト(CS)信号も1対1接続された一方向信号である。このことから、位置検出回路55の信号とCS信号を兼ねることが出来る。このため、CS制御系のドライバ53と位置検出ドライバ56を切り換えることでI/Oピンを共有できる。これらの切替は出力のイネーブル制御(OE制御)によって簡単に達成できる。
【0047】
2つのドライバ53と56を設け、これらを切替える必要がある。なぜならば、CS制御系のドライバ53の出力インピーダンスは、一般的に配線の特性インピーダンスZoに対して低く、Zoに等しい出力インピーダンスを持つ位置検出用のドライバ56とはインピーダンスが異なるためである。当然出力インピーダンスをCS信号用には低く、位置検出用には高く可変できる単一のドライバを用いても同じ効果が得られる。
【0048】
ドライバ53はメモリアクセスに用いられ、ドライバ56はモジュール位置検出時に用いられ、これらの動作間でドライバが切り換えられる。当然、メモリモジュール位置検出はシステムのメモリアクセルに先立って行われ、通常はパワーオン後に行われる。但し、活線挿抜に対応したメモリモジュールの場合は、システム動作中であってもメモリモジュール挿入直後に位置検出を行う必要がある。モジュールの位置検出は動作中に、一定間隔を置いて行っても良い。この場合、MC1内の電圧変動、温度変動に対する遅延素子70aの遅延量を補正することが出来る。これはシステムの要求による。
【0049】
次に、図1のようにMC1に接続されている全てのモジュール20ー1〜20ー2に対する位置検出のシーケンスを図11に示す。このシーケンスをモージュール位置検出モードと呼ぶことにする。
【0050】
まず、ステップ1101でドライバを切り換える。ステップ1101は、図10で示したようなCS信号と位置検出用信号を兼用にしたシステムを対象にしており、CS制御系ドライバ53から位置検出用のドライバ56に切り換える。
【0051】
次に、ステップ1102では、初期化を行う。ドライバ56の出力インピーダンスをこれに接続されている配線の特性インピーダンスにあわせる。例えば、配線のインピーダンスに等しい抵抗器を電圧Vccに接続し、他方の端を別に設けられたドライバ56に接続する。ドライバがL出力するときこのドライバの出力電圧が1/2Vccとなるようにドライバのインピーダンスを調整することで配線インピーダンスに整合した出力インピーダンスを持つドライバが得られる。H側のインピーダンスにいても同様である。
【0052】
また、ステップ1102では、モジュール選択のレジスタkに1を設定する。このレジスタkはモジュール番号を示している。
【0053】
次に、ステップ1103では、メモリバスに接続されたk番目のモジュールを1つ選択し、位置検出回路55内の可変遅延回路70eを初期化する。すなわち、遅延量を最小あるいは最大に設定する。遅延量を最小に設定する場合、遅延素子70aの切替の段数に対応する値をiとすると、i=1とする事と等価になる。
【0054】
ステップ1104では、位置検出信号64を生成する。
【0055】
次に、ステップ1105では、可変遅延回路70eが信号64のパルス幅Twと等しいか判定し、等しくなければステップ1106に移る。
【0056】
ステップ1106では、可変遅延回路70e内の遅延量を1段長く(あるいは短く)する。すなわち、iの値をi+1にする。そして、ステップ1104に戻り同じ手順を繰り返す。
【0057】
ディレーが整合したならば、ステップ1105からステップ1107へ移る。
【0058】
ステップ1107では可変遅延回路70eで整合を取った遅延量である段数iをディレーレジスタ71に格納する。ステップ1108でモジュール選択が終了したかを判断し、終わってなければステップ1109でモジュールの選択レジスタ値を1つ進めてステップ1103以降を繰り返す。
【0059】
上記のシーケンスによって、全モジュールに対してMC1からの往復の伝搬遅延時間がディレーレジスタ71に設定され、すなわち各モジュール毎に(数1)に示した可変遅延素子の遅延量に相当する情報がdelay register71に格納される。これにより、MC1はモジュールの位置情報である遅延量を知ることが出来る。この方式によれば、MC1の温度に関わらず遅延量の正確な測定が可能である。何故ならば、回路がC−MOSで構成される場合、ジャンクション温度により遅延素子70aの遅延量が大きく変動するが、この測定に使用される検出回路55、遅延整合回路70とMC1内の他の可変遅延素子は、局所的な温度勾配があっても、同一チップ内では殆ど同じ温度と考えられるためである。また、動作中に設定されたdelay register71の設定時と異なる温度になった場合でも、再測定すれば温度の影響を排することが出来る。
【0060】
次に、図12を用いて図1に示した位相調整回路52の動作について述べる。図12はMC1からモジュールにデータを書き込む際の各種時間の関係を示す図である。
【0061】
位相調整回路52の目的は、ライト時にモジュール20に入力されるクロック信号とデータ信号(DQ信号、DQS信号)あるいは制御信号を、モジュール20の位置に関わらずクロック信号に対して一定の位相関係にすることである。即ち、モジュール20内のDRAM10がクロック信号に対するDQ,DQS信号のタイミング規定を満足するように、MC1が送信信号であるライトデータのタイミングを調整することである。
【0062】
このため、位相調整回路52は、モジュール20の遠近に関わらずデータの送信タイミングをモジュールに入力されるクロックに対して一定になるように、モジュールの距離に応じてライトデータのタイミングを制御することを目的としている。
【0063】
まず、モジュール位置でのタイミングの計算方法について述べる。
【0064】
図12では簡単のため、1つのメモリモジュール20とMC1とが接続されている場合を示す。配線形態は時間計算のためのパラメータである配線長だけを示しており、結合器や終端抵抗は省略されている。他のモジュールについても配線長を変えるだけで同じように計算できる。また、データ信号DQとデータストローブ信号DQSは同じ配線長を持つように設計されるので、図12ではDQSを代表させて記載している。DQ信号やバス接続される制御線に対しても同様である。
【0065】
パルス発生器2からのクロック信号はモジュール20を介してMC1に入力される。この時のモジュール20とMC1とのクロック信号のパルスエッジの位相差(時間差)はクロック配線30の配線長を伝搬する時間と等しく、配線長に伝搬速度を掛けた伝搬遅延時間をT1,clkで表す。同様に、信号DQSがMC1とモジュール20の間の配線31を伝搬する際の伝搬遅延時間をT1,dqsで表わし、位置検出用の信号であるCS信号が配線33を伝搬する際の伝搬遅延時間をT1,csで表す。また、モジュール内においてクロック信号が配線34を伝搬する際の伝搬遅延時間をT2,clkで表わし、DQS信号が配線35を伝搬する際の伝搬遅延時間をT2,dqsで表わし、CS信号が配線36を伝搬する際の伝搬遅延時間をT2,csで表す。
【0066】
ここで、MC1内でクロック入力からデータ出力までの遅延時間(Tmc)を計算する。
【0067】
Tmc=Tin+Tskew,mc+Twv+Tco (数2)
ここで、Tinはクロック入力からレシーバ54’の出力である内部信号65までのスキュー、Tskew,mcはクロック安定化回路(DLL)53のスキュー、Twvは位相調整回路(write vernier)52の遅延時間、Tcoは位相調整回路52からの信号66からFFを介してドライバ53の出力までの遅延時間である。
【0068】
次に、モジュール20内のDRAM10の入力クロックに対するデータDQS信号の時間差(Tdram)を計算する。モジュール20のクロック信号が入力された信号67を基準に考えると以下のようになる。
【0069】
ここで、Tskew,dramは位相安定化回路(DLL)3のクロック入力からDRAM10のクロック入力までのスキューである。配線34、35の配線長差が無視できるとするとTdramは(数4)で表わされる。同様に、配線30、31の配線長差を無視できるぐらいに設計すればTdramは以下の式となる。
【0070】
ここで、以下のように近似を行なった。
【0071】
T1=T1,clk〜T1,dqs〜T1,cs (数7)
一方、位置検出回路55による整合される可変遅延時間(Tw)は(数1)より次式となる。
【0072】
Tw=Tin+2*(T1,cs+T2,cs)+Tco (数8)
ここで、位置検出用のレシーバ57はクロック信号用のレシーバ54’と同じ遅延時間Tinを持つものとしている。この(数8)を(数6)に代入すると次式となる。
【0073】
DRAM10の入力クロックに対するデータDQS信号の時間差(Tdram)は、制御できないスキュー分を差し引くと次式となる。
【0074】
Tdram=Tw+Twv−2*T2,cs (数10)
T2,csはモジュール20内の配線36の伝搬遅延時間であり、配線36はモジュール20の位置に依らない固定長である。そのため、MC1では、モジュール20の位置情報である観測されたTwを元に位相調整回路52で遅延量Twvを制御することで、全てのDRAM10に対してDRAM10が規定するタイミングを生成できることになる。
【0075】
また、図7のように位置検出回路55を構成することでTco,Tinを含んだ形でモジュール20の位置による遅延量Twを写し取ることができる。すなわち、より精度の高い補正が可能となる。
【0076】
以上に述べたように、次式で表わされる遅延量Twvを位相調整回路52によってモジュール毎に生成することで、全DRAM10に対して同じタイミング(Tdram)を生成できる。
【0077】
Twv=Tdram+2*T2,cs−Tw (数11)
DRAM10の仕様であるTdramと固定値の2*T2,csをオフセットにしてモジュール毎の”−Tw”を生成できればよい。
【0078】
ここで、Twは負の値”−Tw”になっているが、負の値を持つTwは図13のように実現できる。”−Tw”をTwv’と置く。システムクロック60に対しても図9の可変遅延回路70eを用いて遅延素子の段数を計測できる。クロック信号60の半周期(Tck)に対して今J段で遅延量(J*Td)があったとする。図13(a)のTw>Tckの場合、Twはi段だったので、Twv'は次式となる。
【0079】
Twv’=(J−i)*Td (数12)
図13では大文字のIを用いており、本文では小文字のiを用いているがいずれも同じ意味で用いている。図13(b)のTw<Tckの場合でも、Twv'は次式で与えられる。
【0080】
Twv’=MOD(i,J)*Td (数13)
ここで、MODは剰余関数であり、例えば、MOD(10,3)は1である。(数12)は商が0の場合の剰余を表わし、(数13)と等価である。同様に、(数11)の代わりに、次式のように遅延量を設定しても良い。
【0081】
Twv=MOD(Tdram+2*T2,cs−Tw,Tclk)(数14)
上式はそれぞれの量が遅延素子70aの遅延時間によって離散化されていれば簡単な算術演算となる。この場合、オフセットのための遅延回路(Tdram+2*T2,cs)を持たなくて済み回路が簡単になる。
【0082】
このように動作するためのdelay register71の構成の一例を図14に示す。
【0083】
図14はレジスタ71のマップであり、レジスタはモジュールの最大搭載数(k個)用意されている。各レジスタは、このモジュールの順番をアドレスとして持ち、(数13)で計算された遅延段数をデータとして持っている。図14では(数13)のMOD[i(k),J]が遅延段数として格納されており、その内容はk番目のモジュールに対し位置検出回路55により求まった遅延素子段数i(k)とシステムクロックの等価段数Jとの剰余計算結果である。同様に、(数14)の計算結果であっても良い。
【0084】
位相調整回路52の出力信号であるデータ出力用クロック信号66は、クロック安定化回路53の出力であるシステムクロックから、(数13)で表される遅延量Twv’とオフセット(=Tdram+T2,cs)の和の遅延量として生成される。その結果、何れのDRAM10に対しても、FFからドライバ53の遅延時間Tco,配線31の往復の遅延時間T1、レシーバ54’の入力遅延時間Tinをキャンセルすることができ、DRAM10の仕様であるクロック信号とライトデータの位相関係を示すTdramによってライトデータを全てのメモリモジュールに書き込むことが出来る。また、MC1とメモリモジュール20間の配線長が長い場合、TwがTckに対して何倍も大きい場合があるが、この場合でも(数13)の遅延量で構わない。その理由は、データ用クロック信号66がシステムクロック64の周期で剰余を求めてあるからである。また、図13ではシステムクロックTckは半周期であるので、データ信号がDRAM10に到達するタイミングはクロック信号に対し半周期ずれていることになるが、メモリの仕様が例えばダブルデータレート同期DRAM(DDR−SDRAM)ならば問題ない。シングルデータレートの場合は基準とするクロック信号を分周してクロック周期をTckとすれば同相となり、クロック周期は選択するメモリに応じて調整することが出来る。
【0085】
図15にライトアクセス時のシーケンスを示す。
【0086】
DRAMに対してライトアクセスする場合、MC1はプロセッサやI/Oからライトアクセス要求を先行して受け付ける。MC1では論理アドレスから実際のDRAMの物理的なアドレスへ変換するする必要があり、これをステップ1501で行っている。次に、ステップ1502では、計算された物理アドレスに対応するライトアクセス対象のモジュールを選択する。選択されたモジュールをkとする。モジュールの選択はチップ選択(CS)信号を用いて行われる。モジュールが選択されると図14のレジスタ71のマップに基づいて位相調整回路52にレジスタ71の遅延段数を設定する(1504)。ステップ1502,1504と並行してメモリにライトアクセス制御信号を送信する(1503)。ライトアクセス制御信号はライトデータに先立ちMC1から出力される。その後、位相調整回路52により適正に遅延したライトデータが出力される(1505)。以上でライトアクセスは終了する。もちろん、連続アドレスに対するバーストデータライトもステップ1505と同様に行えば良い。
【0087】
上記のシーケンスにより、モジュールに配られるクロック信号に確実に同期してライトデータを送信できる。
【0088】
次に、図16を用いて第2の実施例を説明する。
【0089】
図16と図12とでは、メモリモジュール20内のクロック安定化回路(DLL)3で生成・分配するクロックタイミングが異なる。図16では、DLL3の出力を遅延配線37によって遅延させた信号をDLL3の参照として入力している。
【0090】
図12の信号65、66、67の他に、モジュール20内のDLL3の入力信号68、DRAM10のクロック入力信号69、モジュール20のピンでのDQS信号6A、DRAM10のピンでのDQS信号6B、MC1のピンでのDQS信号6C、MC1のピンでのクロック入力信号6Dが追加される。
【0091】
遅延配線37は、その遅延量がDLL3のクロック出力からDRAM10のクロック入力信号69の配線遅延と配線34の2倍の伝搬遅延時間T2の和となるような配線長を持つ。このように配線することで、DRAM10のクロックは信号67からT2前の位相に合うことになる。その結果、メモリシステムとして時間精度が更に増す。その理由を、図17を用いて説明する。
【0092】
図17(a)はリードデータのタイミングを示す図である。
【0093】
図16においてクロック信号はまず信号67に到達し、クロック配線30の伝搬遅延時間T1、clkだけ遅延後に信号6Dに到達する。また、DLL3の働きにより信号67よりもT2だけ早くDRAM10にクロック信号が入力される。
【0094】
DRAM10はクロック信号69に応じて所定の仕様でデータ信号6Bを出力する。図17ではこの時間差を便宜上、ゼロとする。この時間差がゼロでなくても以下の議論に影響はない。DRAM10から送信されたデータは、信号6Bから配線35の遅延時間T2後に信号6Aに到達し、その後、配線31の遅延時間T1経過後にMC1のDQS入力信号6Cに到達する。
【0095】
MC1側から見ると、クロック入力信号6DとDQS信号入力6Cは全く同じタイミングになっている。このように遅延配線37に配線34の2倍のT2分のオフセットを設けることで、MC1ではクロック信号とデータ信号が同着となる。その結果、モジュール20内の配線34、35の長さが同じであればクロック信号とデータ信号の遅延をキャンセルできる。ここで、図17でのDQS信号はLからHへの遷移のみを記載しているが、逆の場合でも同様である。同様に、DRAM10に入力されるクロック信号69に対してDQS信号の出力6Bがある一定な値を持っていても、この値を保持したままMC1に到達することは明らかである。
【0096】
次に、図17(b)を用いてライトデータのタイミングを説明する。クロック信号6D,67,69は図17(a)と同じである。
【0097】
MC1からDQS信号66が出力されるのはクロック信号65に対して(数11)で表される遅延時間後である。ここで、MC1内の位置調整回路52によってオフセット時間である2*T2,csをゼロに設定する以上のことを式で表わすと以下のようになる。
【0098】
ここで、モジュール20内の配線34、35、36はそれぞれ殆ど同じ長さT2であるとした。(数15)をMC1のピンで定義されたクロック信号6DとピンでのDQS信号6Cとの間の遅延時間として書き直すと次式となる。
【0099】
(数16)の関係を図示したものが図17(b)の信号6Cである。すなわち、MC1のクロック入力信号6Dに対する遅延時間は2*T1+2*T2になっている。DQS信号66が配線31を伝搬しT1時間後に信号6Aに到達する。そして、DRAM10のDQS信号入力6BにはT2後に到達する。DQS信号66はDRAM10のクロック入力信号69と全く同じ位相である。すなわち、ライトデータに対しても、DLL3の配線差を設け、かつMC1内の位相調整回路52によってオフセットをTdramに設定するだけで時間調整が可能である。
【0100】
図16のように回路を構成することで、リードデータ及びライトデータのいずれに対してもDRAM10の仕様をオフセットとしてクロック信号とDQS信号を同位相に出来るので時間精度を向上できる。また、MC1内の位相調整回路52内に2*T2のオフセット遅延回路を持つ必要がないので、回路の構成が簡単になると共にスキューが低減する。その結果、更なる高速化が可能である。
【0101】
図18に第3の実施例を示す。
【0102】
図18は、MC1からメモリから直接アクセスするメモリシステムを示す。メモリ10−1〜10−4はクロック配線30とデータ信号31を介して直接MC1とデータ送受信する。配線30、31がリード優先配線となるようにクロックパルス発生器2が接続されている。MC1はライトデータに対する位相調整回路(write vernier)52を有している。リードデータはクロック信号30によって位相差無しで取り込まれる。また、MC1とDRAM10−1〜10−4と間のデータの送受信を説明したが、メモリシステムが他の機能を持つLSIであっても時間関係は変わらないので同じ効果が得られる。
【0103】
また、図19に本発明を情報処理装置に応用した実施例を示す。情報処理装置は、プロセッサ80−1〜80−4、メモリを搭載したメモリモジュール20、及びI/Oポート90−1〜90−4からなり、システムブリッジがこれらの間のデータフローを制御している。システムブリッジに内蔵されたメモリコントローラ1はメモリバスを介してメモリモジュール20を制御している。このメモリバスに第1から第3の実施例で説明した技術を適用することでシステムとしてリードアクセルレイテンシが改善し、システム性能が向上する。
【0104】
【発明の効果】
メモリシステムをリード優先の配線にすることで、リードアクセスの方がライトアクセスより大幅に多い情報処理装置におけるリードアクセスのアクセスレイテンシィが短くでき、システム性能が向上する。また、メモリコントローラ(MC)と複数あるメモリモジュール間を1対1配線し、これを用いて矩形パルスをドライブして反射波が戻ってくる時間を計測することでモジュールまでの伝搬遅延時間が分かり、この時間を用いてリードアクセス優先配線を用いてもライトアクセスが高速に動作できる。その結果、図2の従来例よりも性能を向上でき、図3の従来例と比べて、メモリ内に位相調整回路40を持たずに済み、さらに、パッケージのクロック信号用のピンが1本ですむのでコストを下げることができる。
【図面の簡単な説明】
【図1】 第1の実施例を説明する図である。
【図2】 第1の従来例である。
【図3】 第2の従来例である。
【図4】 モジュール位置検出回路配線である。
【図5】 モジュール位置検出の原理の説明図である。
【図6】 モジュール位置検出のシミュレーション波形である。
【図7】 モジュール位置検出回路の第1の例である。
【図8】 モジュール位置検出回路のタイミング説明図である。
【図9】 遅延整合回路と時間関係説明図である。
【図10】 モジュール位置検出回路の第2の例である。
【図11】 モジュ−ル位置検出シーケンスである。
【図12】 ライトデータタイミング調整の説明図である。
【図13】 ライトタイミング説明図である。
【図14】 delayレジスタのマップである。
【図15】 ライトアクセスシーケンスである。
【図16】 ライトデータタイミング調整の説明図(第2の実施例)である。
【図17】 第2の実施例のタイミング説明図である。
【図18】 リード優先配線メモリシステムである。
【図19】 リード優先配線メモリシステムを用いた情報処理装置である。
【符号の説明】
1・・・メモリコントローラ、2・・・クロック信号生成器(水晶発振器)、
3・・・クロック分配器、4・・・制御信号用バッファ、5・・・方向性結合器、
10・・DRAMチップ、15・・コネクタ、20・・DRAMモジュール、
30・・クロック信号配線、31・・データ信号配線(DQ)、
32・・データストローブ信号配線(DQS)、
33,33−1,33−2・・・位置検出用の信号配線、
34、35、36・・・配線、
40・・・Read vernier回路、41・・・位相調整回路、
50・・・Flip Flop、51・・・クロック安定化回路、
52・・・位相調整回路(write vernier)、
53・・・出力回路、54・・・入力回路、55・・・位置情報検出回路、
56・・・位置検出用ドライバ、57・・・位置検出用レシーバ、
58・・・パルス電源、59・・・排他的論理和回路
Claims (8)
- メモリを複数個搭載するメモリモジュールと、前記メモリに対してデータをリードあるいはライトするメモリコントローラと、クロック発生器とを備えたメモリシステムにおいて、
前記クロック発生器から、互いに等間隔の位置に配置された該メモリモジュールへ順にバス接続され、前記メモリコントローラに終端されて接続されたクロック信号配線と、
前記メモリコントローラと前記メモリモジュール間の信号伝搬遅延時間が前記メモリモジュールのそれぞれに対応する前記クロック信号配線の信号伝搬遅延時間と同じとなる、前記メモリコントローラと前記メモリモジュールとを接続するデータ信号バス配線とを備え、
前記メモリモジュールから前記メモリコントローラまでのリードデータの伝搬遅延時間が、前記メモリモジュールから前記メモリコントローラまでのクロック信号到達時間差に等しく、
前記クロック信号配線と前記データ信号バス配線とは別に、1対1配線によって、前記メモリコントローラと前記メモリモジュールとを、前記リードデータの伝搬遅延時間と同じになる配線長で接続し、
前記メモリコントローラは、前記1対1配線に対して、前記1対1配線が持つ特性インピーダンスと同じ出力インピーダンスを持つドライバと、ヒステリシス特性を持つレシーバを有し、
前記ドライバから発生したパルスの前記メモリモジュールからの反射波を前記レシーバにより検出し、パルス出力時から反射波入力時までの前記1対1配線の往復の伝播遅延時間を計測し、
前記メモリコントローラからのライトデータのタイミングを、前記メモリコントローラから前記ライトデータを書き込む対象のメモリモジュールまでの前記1対1配線の往復の伝搬遅延時間によって可変することを特徴とするメモリシステム。 - 前記ライトデータのタイミングの可変量は、前記1対1配線の往復の伝搬遅延時間をTwとし、前記メモリのライトデータのクロックに対する規定された書き込み時間をTdramとし、前記メモリモジュール内の配線遅延時間をT2とすると、
Twv=Tdram+2*T2−Tw
で表された遅延量Twvであることを特徴とする請求項1記載のメモリシステム。 - 前記メモリコントローラから送信するライトデータ生成のための内部クロックの周期をTclkとすると、
前記ライトデータのタイミングを前記遅延量Twvに対し前記内部クロックの周期Tclkの剰余としたことを特徴とする請求項2記載のメモリシステム。 - メモリを複数個搭載するメモリモジュールと、前記メモリに対してデータをリードあるいはライトするメモリコントローラと、クロック発生器とを備えたメモリシステムにおいて、
前記クロック発生器から、互いに等間隔の位置に配置された該メモリモジュールへ順にバス接続され、前記メモリコントローラに終端されて接続されたクロック信号配線と、
前記メモリコントローラと前記メモリモジュール間の信号伝搬遅延時間が前記メモリモジュールのそれぞれに対応する前記クロック信号配線の信号伝搬遅延時間と同じとなる、前記メモリコントローラと前記メモリモジュールとを接続するデータ信号バス配線とを備え、
前記メモリモジュールから前記メモリコントローラまでのリードデータの伝搬遅延時間が、前記メモリモジュールから前記メモリコントローラまでのクロック信号到達時間差に等しく、
前記クロック信号配線と前記データ信号バス配線とは別に、1対1配線によって、前記メモリコントローラと前記メモリモジュールとを、前記リードデータの伝搬遅延時間と同じになる配線長で接続し、
前記メモリコントローラは、ライトデータのタイミングを前記メモリモジュール毎に可変し、
前記メモリコントローラは、前記1対1配線に接続された前記メモリコントローラ内のドライバからのパルス送信から反射波を、前記メモリコントローラ内のヒステリシスレシーバにより受信するまでの往復の伝搬遅延時間をTwとし、前記メモリのライトデータのクロックに対する規定された書き込み時間をTdramとし、前記メモリモジュール内の配線遅延時間をT2とすると、
Twv=Tdram+2*T2−Tw
で表された遅延量Twvに調整する可変遅延手段を有し、
前記メモリコントローラは、前記可変遅延手段の遅延量Twvを示す遅延情報を格納するレジスタを前記メモリモジュールの個数だけ有し、
ライトデータ送信の際にライトアドレスで示されたメモリモジュールに対応する前記レジスタ内に保持されている遅延情報によりライトデータのタイミングを遅延させることを特徴とするメモリシステム。 - 前記1対1配線をメモリ制御信号のチップセレクトと共用にした請求項4記載のメモリシステム。
- 前記メモリモジュールと前記メモリコントローラ間の接続の際に、前記クロック信号配線と前記データ信号バス配線を他方が整合終端された方向性結合器を用いて接続し、
前記1対1配線を直接ピン同士で接続し、
前記方向性結合器の向きを前記クロック信号配線と前記データ信号バス配線で反対となるように構成した請求項1〜5の何れかに記載のメモリシステム。 - メモリを複数個搭載するメモリモジュールと、前記メモリに対してデータをリードあるいはライトするメモリコントローラと、クロック発生器とを備えたメモリシステムにおいて、
前記クロック発生器から、互いに等間隔の位置に配置された該メモリモジュールへ順にバス接続され、前記メモリコントローラに終端されて接続されたクロック信号配線と、
前記メモリコントローラと前記メモリモジュール間の信号伝搬遅延時間が前記メモリモジュールのそれぞれに対応する前記クロック信号配線の信号伝搬遅延時間と同じとなる、前記メモリコントローラと前記メモリモジュールとを接続するデータ信号バス配線とを備え、
前記メモリモジュールから前記メモリコントローラまでのリードデータの伝搬遅延時間が、前記メモリモジュールから前記メモリコントローラまでのクロック信号到達時間差に等しく、
前記メモリモジュールは、前記メモリのそれぞれにクロック信号を分配するクロック分配器を搭載し、
前記クロック分配器は、クロック安定化回路を有し、
前記クロック分配器からの出力を前記クロック分配器から前記メモリまでの配線長と前記メモリモジュールから前記メモリ分配器までの配線長の倍の配線長の和の遅延を持たせて前記クロック安定化回路への参照信号とし、前記メモリモジュールのデータ信号ピンから前記メモリのデータピンまでの配線長を前記クロック分配器の入力配線長と同じにしたことを特徴とするメモリシステム。 - 前記メモリコントローラからのライトデータのタイミングを前記メモリコントローラから前記ライトデータを書き込む対象のメモリモジュールまでの往復の伝搬遅延時間によっ て可変とし、
前記ライトデータのタイミングの可変量は、前記往復の伝搬遅延時間をTwとし、前記メモリのライトデータのクロックに対する規定された書き込み時間をTdramとすると、
Twv=Tdram−Tw
で表された遅延量Twvであることを特徴とする請求項7記載のメモリシステム。
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000152667A JP3757757B2 (ja) | 2000-05-18 | 2000-05-18 | リード優先メモリシステム |
| PCT/JP2000/008796 WO2001088726A1 (fr) | 2000-05-18 | 2000-12-13 | Systeme de memoire |
| TW089126782A TW536671B (en) | 2000-05-18 | 2000-12-14 | Memory system |
| US10/294,594 US7257725B2 (en) | 2000-05-18 | 2002-11-15 | Memory system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000152667A JP3757757B2 (ja) | 2000-05-18 | 2000-05-18 | リード優先メモリシステム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2001331439A JP2001331439A (ja) | 2001-11-30 |
| JP3757757B2 true JP3757757B2 (ja) | 2006-03-22 |
Family
ID=18658062
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2000152667A Expired - Fee Related JP3757757B2 (ja) | 2000-05-18 | 2000-05-18 | リード優先メモリシステム |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US7257725B2 (ja) |
| JP (1) | JP3757757B2 (ja) |
| TW (1) | TW536671B (ja) |
| WO (1) | WO2001088726A1 (ja) |
Families Citing this family (51)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6464628B1 (en) | 1999-08-12 | 2002-10-15 | Obtech Medical Ag | Mechanical anal incontinence |
| US6471635B1 (en) | 2000-02-10 | 2002-10-29 | Obtech Medical Ag | Anal incontinence disease treatment with controlled wireless energy supply |
| DE60110747T2 (de) | 2000-02-10 | 2006-02-23 | Potencia Medical Ag | Mechanische vorrichtung zur impotenzbehandlung |
| MXPA02007589A (es) | 2000-02-10 | 2004-08-23 | Potencia Medical Ag | Tratamiento controlado de incontinencia urinaria. |
| ATE380006T1 (de) | 2000-02-11 | 2007-12-15 | Potencia Medical Ag | Kontrollierte impotenzbehandlung |
| EP1255513B1 (en) | 2000-02-14 | 2005-05-25 | Potencia Medical AG | Penile prosthesis |
| DE60119081T2 (de) | 2000-02-14 | 2007-01-04 | Potencia Medical Ag | Männliche impotentzprothesevorrichtung mit drahtloser energieversorgung |
| US6675272B2 (en) | 2001-04-24 | 2004-01-06 | Rambus Inc. | Method and apparatus for coordinating memory operations among diversely-located memory components |
| JP4136495B2 (ja) | 2001-08-08 | 2008-08-20 | 株式会社日立製作所 | 方向性結合器を含む回路の設計支援装置、その設計支援プログラム、及び回路の設計方法 |
| JP4173970B2 (ja) * | 2002-03-19 | 2008-10-29 | 株式会社ルネサステクノロジ | メモリシステム及びメモリモジュール |
| KR100518532B1 (ko) * | 2002-04-27 | 2005-10-04 | 삼성전자주식회사 | 선택적으로 명령신호 및 어드레스를 전송하는 방법 및 장치 |
| JP4159415B2 (ja) * | 2002-08-23 | 2008-10-01 | エルピーダメモリ株式会社 | メモリモジュール及びメモリシステム |
| DE10332616B3 (de) * | 2003-07-17 | 2005-03-17 | Infineon Technologies Ag | Halbleiterspeichermodul |
| JP4741226B2 (ja) | 2003-12-25 | 2011-08-03 | 株式会社日立製作所 | 半導体メモリモジュール、およびメモリシステム |
| US7444558B2 (en) * | 2003-12-31 | 2008-10-28 | Intel Corporation | Programmable measurement mode for a serial point to point link |
| JP2005244479A (ja) * | 2004-02-25 | 2005-09-08 | Fujitsu Ltd | 伝送装置 |
| US7437580B2 (en) * | 2004-05-05 | 2008-10-14 | Qualcomm Incorporated | Dynamic voltage scaling system |
| US7437497B2 (en) * | 2004-08-23 | 2008-10-14 | Apple Inc. | Method and apparatus for encoding memory control signals to reduce pin count |
| US7301831B2 (en) | 2004-09-15 | 2007-11-27 | Rambus Inc. | Memory systems with variable delays for write data signals |
| DE102004046957B4 (de) * | 2004-09-28 | 2016-02-04 | Polaris Innovations Ltd. | Verfahren und Schaltungsanordnungen zum Abgleichen von Signallaufzeiten in einem Speichersystem |
| KR100703728B1 (ko) * | 2005-01-11 | 2007-04-05 | 삼성전자주식회사 | 전자 기기 |
| US7339364B2 (en) | 2006-06-19 | 2008-03-04 | International Business Machines Corporation | Circuit and method for on-chip jitter measurement |
| US8272781B2 (en) * | 2006-08-01 | 2012-09-25 | Intel Corporation | Dynamic power control of a memory device thermal sensor |
| US20080104352A1 (en) * | 2006-10-31 | 2008-05-01 | Advanced Micro Devices, Inc. | Memory system including a high-speed serial buffer |
| US7861140B2 (en) * | 2006-10-31 | 2010-12-28 | Globalfoundries Inc. | Memory system including asymmetric high-speed differential memory interconnect |
| WO2008063199A1 (en) * | 2006-11-20 | 2008-05-29 | Rambus Inc. | Memory systems and methods for dynamically phase adjusting a write strobe and data to account for receive-clock drift |
| JP2008152315A (ja) * | 2006-12-14 | 2008-07-03 | Sanyo Electric Co Ltd | 信号処理回路 |
| US7652932B2 (en) * | 2007-07-19 | 2010-01-26 | Mosaid Technologies Incorporated | Memory system having incorrupted strobe signals |
| WO2010042045A1 (en) | 2008-10-10 | 2010-04-15 | Milux Holding S.A. | A system, an apparatus, and a method for treating a sexual dysfunctional female patient |
| US8781053B2 (en) * | 2007-12-14 | 2014-07-15 | Conversant Intellectual Property Management Incorporated | Clock reproducing and timing method in a system having a plurality of devices |
| US8467486B2 (en) | 2007-12-14 | 2013-06-18 | Mosaid Technologies Incorporated | Memory controller with flexible data alignment to clock |
| EP2244760B8 (en) * | 2008-01-28 | 2022-07-20 | Implantica Patent Ltd. | An implantable drainage device |
| EP2240138B1 (en) | 2008-01-29 | 2021-07-21 | Implantica Patent Ltd. | Apparatus for treating obesity |
| US8255734B2 (en) * | 2008-02-05 | 2012-08-28 | Rambus Inc. | Multi-drop signaling system and method employing source termination |
| JP2009237678A (ja) * | 2008-03-26 | 2009-10-15 | Fujitsu Microelectronics Ltd | メモリコントローラデバイス、メモリコントローラデバイスの制御方法およびデータ受信デバイス |
| CA2776450C (en) | 2008-10-10 | 2018-08-21 | Peter Forsell | Heart help device, system, and method |
| US8600510B2 (en) | 2008-10-10 | 2013-12-03 | Milux Holding Sa | Apparatus, system and operation method for the treatment of female sexual dysfunction |
| PL2349383T3 (pl) | 2008-10-10 | 2022-09-19 | Medicaltree Patent Ltd. | Urządzenie i system wspomagania serca |
| ES2985873T3 (es) | 2008-10-10 | 2024-11-07 | Implantica Patent Ltd | Medios de fijación para conjunto de control médico implantable |
| US10219898B2 (en) | 2008-10-10 | 2019-03-05 | Peter Forsell | Artificial valve |
| US9949812B2 (en) | 2009-07-17 | 2018-04-24 | Peter Forsell | Vaginal operation method for the treatment of anal incontinence in women |
| US10952836B2 (en) | 2009-07-17 | 2021-03-23 | Peter Forsell | Vaginal operation method for the treatment of urinary incontinence in women |
| JP2012083954A (ja) * | 2010-10-12 | 2012-04-26 | Fujitsu Ltd | 回路設計支援装置、回路設計支援装置の制御方法および回路設計支援装置の制御プログラム |
| US9082464B2 (en) * | 2012-02-14 | 2015-07-14 | Samsung Electronics Co., Ltd. | Memory module for high-speed operations |
| US9389637B2 (en) * | 2012-04-25 | 2016-07-12 | Rambus Inc. | Methods and systems for recovering intermittent timing-reference signals |
| US9141541B2 (en) | 2013-09-20 | 2015-09-22 | Advanced Micro Devices, Inc. | Nested channel address interleaving |
| US9478268B2 (en) | 2014-06-12 | 2016-10-25 | Qualcomm Incorporated | Distributed clock synchronization |
| KR102433013B1 (ko) | 2015-08-11 | 2022-08-17 | 삼성전자주식회사 | 메모리 모듈 및 이를 갖는 솔리드 스테이트 디스크 |
| US10095421B2 (en) | 2016-10-21 | 2018-10-09 | Advanced Micro Devices, Inc. | Hybrid memory module bridge network and buffers |
| EP3889622B1 (en) * | 2020-04-03 | 2024-03-27 | Nokia Solutions and Networks Oy | Delay measurement of a cable |
| US20250347729A1 (en) * | 2024-05-07 | 2025-11-13 | Teradyne, Inc. | Analyzing bundles of wires |
Family Cites Families (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3786418A (en) * | 1972-12-13 | 1974-01-15 | Ibm | Multi-terminal digital signal communication apparatus |
| JP2684178B2 (ja) * | 1987-09-09 | 1997-12-03 | 日立電子エンジニアリング株式会社 | スキュー補正装置 |
| JPH0773118A (ja) * | 1993-09-02 | 1995-03-17 | Toshiba Corp | 遅延時間補償装置 |
| JP3399630B2 (ja) * | 1993-09-27 | 2003-04-21 | 株式会社日立製作所 | バスシステム |
| JPH08123717A (ja) * | 1994-10-25 | 1996-05-17 | Oki Electric Ind Co Ltd | 半導体記憶装置 |
| US5578940A (en) * | 1995-04-04 | 1996-11-26 | Rambus, Inc. | Modular bus with single or double parallel termination |
| US5805030A (en) * | 1995-08-04 | 1998-09-08 | Apple Computer, Inc. | Enhanced signal integrity bus having transmission line segments connected by resistive elements |
| JP3410922B2 (ja) * | 1996-04-23 | 2003-05-26 | 株式会社東芝 | クロック制御回路 |
| US6125419A (en) * | 1996-06-13 | 2000-09-26 | Hitachi, Ltd. | Bus system, printed circuit board, signal transmission line, series circuit and memory module |
| JP3729582B2 (ja) * | 1996-08-13 | 2005-12-21 | 富士通株式会社 | 半導体装置、半導体装置システム及びディジタル遅延回路 |
| JP3442237B2 (ja) * | 1996-10-30 | 2003-09-02 | 株式会社日立製作所 | 間隙結合式バスシステム |
| US6115318A (en) * | 1996-12-03 | 2000-09-05 | Micron Technology, Inc. | Clock vernier adjustment |
| JPH10224204A (ja) * | 1997-02-10 | 1998-08-21 | Mitsubishi Electric Corp | 半導体集積回路 |
| US5987576A (en) * | 1997-02-27 | 1999-11-16 | Hewlett-Packard Company | Method and apparatus for generating and distributing clock signals with minimal skew |
| JP3922765B2 (ja) * | 1997-07-22 | 2007-05-30 | 富士通株式会社 | 半導体装置システム及び半導体装置 |
| JPH1185612A (ja) * | 1997-09-09 | 1999-03-30 | Hitachi Ltd | データ転送遅延補正方法及びデータ転送制御装置 |
| US6154821A (en) * | 1998-03-10 | 2000-11-28 | Rambus Inc. | Method and apparatus for initializing dynamic random access memory (DRAM) devices by levelizing a read domain |
| TR200002649T2 (tr) | 1998-03-16 | 2000-11-21 | Jazio Inc. | VLSI CMOS arayüz devreleri için yüksek hızlı sinyal üretimi. |
| US6111812A (en) * | 1999-07-23 | 2000-08-29 | Micron Technology, Inc. | Method and apparatus for adjusting control signal timing in a memory device |
-
2000
- 2000-05-18 JP JP2000152667A patent/JP3757757B2/ja not_active Expired - Fee Related
- 2000-12-13 WO PCT/JP2000/008796 patent/WO2001088726A1/ja not_active Ceased
- 2000-12-14 TW TW089126782A patent/TW536671B/zh not_active IP Right Cessation
-
2002
- 2002-11-15 US US10/294,594 patent/US7257725B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| US7257725B2 (en) | 2007-08-14 |
| US20030200407A1 (en) | 2003-10-23 |
| JP2001331439A (ja) | 2001-11-30 |
| WO2001088726A1 (fr) | 2001-11-22 |
| TW536671B (en) | 2003-06-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3757757B2 (ja) | リード優先メモリシステム | |
| US8271824B2 (en) | Memory interface and operating method of memory interface | |
| CN101529394B (zh) | 存储器控制电路、存储器控制方法和集成电路 | |
| US7095661B2 (en) | Semiconductor memory module, memory system, circuit, semiconductor device, and DIMM | |
| CN103460293B (zh) | 用于将命令提供到数据块的命令路径、设备及方法 | |
| KR100448033B1 (ko) | 캘리브레이션 방법 및 메모리 시스템 | |
| JP5392688B2 (ja) | メモリシステムにおける書込レベリングの開始値を較正する方法 | |
| US6877079B2 (en) | Memory system having point-to-point bus configuration | |
| JP6434161B2 (ja) | ソースシンクロナスインターフェースから受信する制御デバイスのキャリブレーション | |
| EP2808801B1 (en) | Multiple data rate memory with read timing information | |
| EP1510930A2 (en) | Memory interface system and method | |
| JP4173970B2 (ja) | メモリシステム及びメモリモジュール | |
| CN104901675B (zh) | 半导体装置、含该装置的半导体系统和操作该装置的方法 | |
| CN116013389A (zh) | 电子装置、数据选通闸控信号产生电路以及方法 | |
| Palanisamy et al. | High-Performance DDR2 SDRAM Interface in Virtex-5 Devices | |
| JPH10187592A (ja) | メモリバスシステム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050920 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051117 |
|
| 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: 20051206 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051219 |
|
| R151 | Written notification of patent or utility model registration |
Ref document number: 3757757 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100113 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110113 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110113 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120113 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120113 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130113 Year of fee payment: 7 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130113 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140113 Year of fee payment: 8 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140113 Year of fee payment: 8 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140113 Year of fee payment: 8 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| 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 |
|
| LAPS | Cancellation because of no payment of annual fees |