(57)【特許請求の範囲】
【請求項１】
第１の信号を出力する第１の出力回路と第２の信号を受信する第１の受信回路とを備えた第１の回路ブロックと、
前記第１の信号を受信する第２の受信回路と前記第２の信号を出力する第２の出力回路を備えた複数の第２の回路ブロックと、
前記第１の回路ブロックと前記第２の回路ブロックを接続する配線を有する信号伝送装置において、
前記第１の回路ブロックは、第３の信号を出力する第３の出力回路と、
該第３の信号を受信する第３の受信回路とを有し、
前記第２の回路ブロックは、前記第３の信号を受信する第４の受信回路を有し、
前記配線は、前記第１の信号を伝搬する第１の配線と、前記第２の信号を伝搬する第２の配線と、前記第３の信号を伝搬する第３の配線を含み、
前記第１の配線と前記第２の配線と前記第３の配線を、それぞれ第１の回路ブロックから最遠の第２の回路以遠の位置で折り返してレイアウトし、
前記複数の第２の回路ブロックのいずれかと前記第３の配線が、前記第１の回路ブロックから折り返しの位置までの間で接続している場合は、当該複数の第２の回路ブロックのいずれかと前記第１の配線を前記第１の回路ブロックからの折り返しの位置までで接続し、
前記第３の配線と前記複数の第２の回路ブロックのいずれかとの接続位置が、前記折り返しの位置より先である場合は、当該複数の第２の回路ブロックのいずれかと前記第２の配線を前記折り返しの位置より先で接続し、
前記複数の第２の回路ブロックのいずれかと前記第３の配線が前記第１の回路ブロックから折り返しの位置までの間で接続している場合は、当該複数の第２の回路ブロックのいずれかと前記第２の配線を前記折り返しの位置より先に接続し、
前記第３の配線と前記複数の第２の回路ブロックのいずれかが前記折り返しの位置より先で接続している場合は、当該複数の第２の回路ブロックのいずれかと前記第２の配線を前記第１の回路ブロックから前記折り返しの位置までの間で接続し、
前記第２の受信回路は、前記第４の受信回路が受信する前記第３の信号に同期して前記第１の信号をラッチし、
前記第１の受信回路は、前記第３の受信回路が受信する前記第３の信号に同期して前記第２の信号をラッチし、
前記第２の出力回路は、前記第４の受信回路が受信する前記第３の信号に同期して前記第２の信号を出力することを特徴とする信号伝送装置。
【請求項２】
請求項１記載の信号伝送装置において、
前記第１、第２及び第３の配線は終端抵抗を備えることを特徴とする信号伝送装置。
【請求項３】
請求項１又は請求項２のいずれかに記載の信号伝送装置において、
前記第１の出力回路と前記第１の配線との間に前記第１の信号を伝えるための第１の分岐配線を、前記第２の受信回路と前記第２の配線との間に前記第２の信号を伝えるための第２の分岐配線を、前記第３の出力回路と前記第３の配線との間に前記第３の信号を伝えるための第３の分岐配線を、前記第３の受信回路と前記第３の配線との間に前記第３の信号を伝えるための第４の配線をそれぞれ備え、
前記第１の分岐配線は第１の抵抗素子を有し、
前記第２の分岐配線は第２の抵抗素子を有し、
前記第３の分岐配線は第３の抵抗素子を有し、
前記第４の分岐配線は第４の抵抗素子を有することを特徴とする信号伝送装置。
【請求項４】
請求項３記載の信号伝送装置において、
前記第１の抵抗素子の抵抗値は、前記第１の分岐配線のインピーダンスの値から前記第１の配線のインピーダンスの半分の値を引いた値の半分から２倍の範囲にあり、また前記第２の抵抗素子の抵抗値は、前記第２の分岐配線のインピーダンスの値から前記第２の配線のインピーダンスの半分の値を引いた値の半分から２倍の範囲にあり、前記第３の抵抗素子の抵抗値が、前記第３の分岐配線のインピーダンスの値から前記第３の配線のインピーダンスの半分の値を引いた値の半分から２倍の範囲にあり、さらに前記第４の抵抗素子の抵抗値が、前記第４の分岐配線のインピーダンスの値から前記第３の配線のインピーダンスの半分の値を引いた値の半分から２倍の範囲にあることを特徴とした信号伝送装置。
【請求項５】
第１のデータ信号を出力する第１の送信回路と第２のデータ信号を受信する第１の受信回路を含む第１の送受信回路を有する第１の回路ブロックと、
前記第１のデータ信号を受信する第２の受信回路と前記第２のデータ信号を出力する第２の送信回路を含む第２の送受信回路を有する第２の回路ブロックと、
前記第１の回路ブロックと前記第２の回路ブロックとを接続する配線を有する信号伝送装置において、
前記第１の回路ブロックは、第３のクロック信号を出力する第３の出力回路と
第４のクロック信号を受信する第３の受信回路を含む第３の送受信回路と、
前記第４のクロック信号を出力する第４の送信回路とを備え、
前記第２の回路ブロックは、前記第３のクロック信号及び第４のクロック信号を受信する第４の受信回路を備え、
前記配線は、前記第１の送受信回路と前記第２の送受信回路間で前記第１、第２のデータ信号を伝送する第１の配線と、前記第３の送受信回路と前記第４の受信回路の間と前記第４の送信回路と前記第４の受信回路との間で前記第３、第４のクロック信号を伝送する第２の配線を含み、
該第１、第２の配線は前記第１の回路ブロックから最遠の第２の回路ブロック以遠の位置で折り返してレイアウトされ、
前記第１の送受信回路から前記第１の配線の折り返し位置までの間に前記複数の第２の回路ブロックのいずれかと前記第１の配線が接続されている場合、当該複数の第２の回路ブロックのいずれかと前記第２の配線を前記第３の送受信回路から前記第２の配線の折り返し位置までの間に接続し、
前記第１の配線の折り返しから先で前記複数の第２の回路ブロックのいずれかと前記第１の配線が接続されている場合、当該複数の第２の回路ブロックのいずれかと前記第２の配線を前記第２の配線の折り返し位置から先に接続し、
前記第２の受信回路は、前記第３のクロック信号に同期して前記第１のデータ信号をラッチし、前記第２の出力回路は前記第４のクロック信号に同期して前記第２のデータ信号を出力し、
前記第１の受信回路は、前記第４のクロック信号に同期して前記第２のデータ信号をラッチすることを特徴とする信号伝送装置。
【請求項６】
請求項５記載の信号伝送装置において、
前記第１、第２の配線は、終端抵抗を備えることを特徴とする信号伝送装置。
【請求項７】
請求項５または請求項６記載の信号伝送装置において、
前記第１の送受信回路と前記第１の配線との間に第１、第２の信号を伝えるための第３の配線があり、前記第３の送受信回路と前記第２の配線との間に第３、第４の信号を伝えるための第４の配線があり、前記第４の出力回路と前記第２の配線との間に第４の信号を伝えるための第５の配線を備え、
前記第３の配線は第１の抵抗素子を有し、
前記第４の配線は第２の抵抗素子を有し、
前記第５の配線は第３の抵抗素子を有することを特徴とする信号伝送装置。
【請求項８】
請求項７記載の信号伝送装置において、
前記第１の抵抗素子の抵抗値が、前記第３の配線のインピーダンスの値から前記第１の配線のインピーダンスの半分の値を引いた値の半分から２倍の範囲にあり、前記第２の抵抗素子の抵抗値が、第４の配線のインピーダンスの値から第２の配線のインピーダンスの半分の値を引いた値の半分から２倍の範囲にあり、第３の抵抗素子の抵抗値が、第５の配線のインピーダンスの値から前記第２の配線のインピーダンスの半分の値を引いた値の半分から２倍の範囲にあることを特徴とする信号伝送装置。
【請求項９】
第１の信号を出力する第１の出力回路と前記第１の信号を受信する第１の受信回路と第２の信号を出力しかつ第３の信号を受信する第１の入出力回路を有する第１の回路ブロックと、
前記第１の信号を受信する第３の受信回路と前記第２の信号を受信する第４の受信回路と第３の信号を出力する第３の出力回路を有する複数の第２の回路ブロックを有し、
前記第１の信号を伝送するための第１の配線と前記第２の信号および第３の信号を伝送するための第２の配線をそれぞれ、第１の回路ブロックから最遠の第２の回路の位置、または前記位置よりさらに遠い位置で折り返して、再び第１の回路ブロックに戻るようにレイアウトし、
前記第１の送信回路から前記第１の配線の折り返し位置までの間に前記複数の第２の回路ブロックのいずれかと前記第１の配線が接続されている場合、当該複数の第２の回路ブロックのいずれかと前記第２の配線を前記第１の送受信回路から前記第２の配線の折り返し位置までの間に接続し、
前記第１の配線の折り返しから先で前記複数の第２の回路ブロックのいずれかと前記第１の配線が接続されている場合、当該複数の第２の回路ブロックのいずれかと前記第２の配線を前記第２の配線の折り返し位置から先に接続し、
前記第２の信号が前記第１の信号と同じ向き伝わり、また前記第３の信号が前記第１の信号と逆向きに伝わるように、前記第２の配線と前記第１の入出力回路の間にスイッチ機能を持ったスイッチ回路が挿入され、
前記第３の出力回路は第１の信号に同期して第３の信号を出力し、
前記第１の入出力回路は第１の信号に同期して第３の信号をラッチすることを特徴とした信号伝送装置。
【請求項１０】
請求項９記載の信号伝送装置において、
前記第１の配線または前記第２の配線が片側終端または両側終端したことを特徴とした信号伝送装置。
【請求項１１】
請求項９または請求項１０いずれか記載の信号伝送装置において、
前記第１の出力回路と前記第１の信号配線との間に第１の信号を伝えるための第３の配線があり、前記スイッチ回路と前記第２の信号配線との間に第２の信号を伝えるための第４の配線があり、さらに前記スイッチ回路と前記第２の信号配線との間に第３の信号を伝えるための第５の配線があることを特徴とした信号伝送装置。
【請求項１２】
請求項１１記載の信号伝送装置において、
前記第３の配線は第１の抵抗を有し、
前記第４の配線は第２の抵抗を有し、
前記第５の配線は第３の抵抗を有することを特徴とした信号伝送装置。
【請求項１３】
請求項１２記載の信号伝送装置において、
第１の抵抗の抵抗値が、第３の配線のインピーダンスの値から第１の配線のインピーダンスの半分の値を引いた値の半分から２倍の範囲にあり、またを第２の抵抗の抵抗値が、第４の配線のインピーダンスの値から第１の配線のインピーダンスの半分の値を引いた値の半分から２倍の範囲にあり、第３の抵抗の抵抗値が、第５の配線のインピーダンスの値から第２の配線のインピーダンスの半分の値を引いた値の半分から２倍の範囲にあることを特徴とした信号伝送装置。
【請求項１４】
請求項１２の信号伝送装置において、
第１の受信回路で受けた信号を２逓倍した信号に同期して第１の入出力回路が第３の信号を受信することを特徴とした信号伝送装置。
【請求項１５】
請求項１４の信号伝送装置において、
第１の入出力回路が受信した第３の信号の位相を前記第１の信号で同期して制御出来る信号へと変換するための位相調整回路を持つことを特徴とした信号伝送装置。
【請求項１６】
第１の信号を出力する第１の出力回路と、第２の信号を出力する第２の出力回路と、第３の信号を受信する第１の受信回路と、第４の信号を受信する第２の受信回路を有する第１の回路ブロックと、
前記第１の信号を受信する第３の受信回路と前記第２の信号を受信するための第４の受信回路と第３の信号を出力する第３の出力回路と前記第４の信号を出力する第４の出力回路を有する複数の第２の回路ブロックを持ち、
前記第１の信号と前記第２の信号と前記第３の信号そして前記第４の信号を、前記第１の回路ブロックと前記第２の回路ブロック間に伝送させる第１の配線と第２の配線と第３の配線および第４の配線をそれぞれ有し、
前記第１、第２、第３、第４の配線をそれぞれ第１の回路ブロックから最遠の第２の回路ブロックの位置、または前記位置よりさらに遠い折り返し位置で折り返してレイアウトし、
前記第１の回路ブロックから第１の配線の折り返し位置までの配線上に前記第２の回路ブロックのいずれかを接続している場合は、当該第２の回路ブロックのいずれかを第３の配線の折り返し位置から先の配線上と第４の配線の折り返し位置から先の配線上に接続し、
前記第１の配線の折り返し位置から先の配線上に前記第２の回路ブロックのいずれかを接続している場合は、当該第２の回路ブロックのいずれかを前記第１の回路ブロックから前記第３の配線の折り返し位置までの配線上と前記第１の回路ブロックから前記第４の配線の折り返し位置までの配線上に接続し、
前記第１の回路ブロックから第１の配線の折り返し位置までの配線上に前記第２の回路ブロックのいずれかを接続している場合は、当該第２の回路ブロックのいずれかを第２の配線の折り返し位置から先の配線上に接続し、
前記第１の配線の折り返し位置から先の配線上に前記第２の回路ブロックのいずれかを接続している場合は、当該第２の回路ブロックのいずれかを前記第１の回路ブロックから前記第２の配線の折り返し位置までの配線上に接続し、
前記第４の受信回路が第１の信号に同期して第２の信号をラッチし、
前記第４の送信回路が第1の信号に同期して第４の信号を出力し、
前記第２の受信回路が第３の信号に同期して第４の信号をラッチすることを特徴とした信号伝送装置。
【請求項１７】
請求項１５または請求項１６記載の信号伝送装置において、
前記第１、第２、第３及び第４の配線は終端抵抗を備えることを特徴とする信号伝送装置。
【請求項１８】
請求項１５乃至請求項１７のいずれかに記載の信号伝送装置において、
前記第１の出力回路と前記第１の配線との間に第１の信号を伝えるための第１の分岐配線を、前記第２の出力回路と前記第２の配線との間に第２の信号を伝えるための第２の分岐配線を、前記第１の受信回路と前記第３の配線との間に第３の信号を伝えるための第３の分岐配線を、前記第２の受信回路と前記第４の配線との間に第４の信号を伝えるための第４の分岐配線をそれぞれ備え、
前記第１の分岐配線は第１の抵抗を備え、
前記第２の分岐配線は第２の抵抗を備え、
前記第３の分岐配線は第３の抵抗を備え、
前記第４の分岐配線は第４の抵抗を備えることを特徴とする信号伝送装置。
【請求項１９】
請求項１８記載の信号伝送装置において、
前記第１の抵抗素子の抵抗値は、前記第１の分岐配線のインピーダンスの値から前記第１の配線のインピーダンスの半分の値を引いた値の半分から２倍の範囲にあり、また前記第２の抵抗素子の抵抗値は、前記第２の分岐配線のインピーダンスの値から前記第２の配線のインピーダンスの半分の値を引いた値の半分から２倍の範囲にあり、前記第３の抵抗素子の抵抗値が、前記第３の分岐配線のインピーダンスの値から前記第３の配線のインピーダンスの半分の値を引いた値の半分から２倍の範囲にあり、さらに前記第４の抵抗素子の抵抗値が、前記第４の分岐配線のインピーダンスの値から前記第３の配線のインピーダンスの半分の値を引いた値の半分から２倍の範囲にあることを特徴とした信号伝送装置。
【請求項２０】
請求項１、５、９、１５のいずれか一つに記載された信号伝送装置において、
前記第1の回路ブロックはメモリコントローラであり、
前記第2の回路ブロックはメモリモジュールであることを特徴とする信号伝送装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はワークステーションやパーソナルコンピュータなどの装置内に実装される部品(集積回路がその代表的なもの）間の信号伝送技術に関するもので、特に高速な信号伝送に有効な技術に関する。
【０００２】
【従来の技術】
現在のワークステーションやパソコンで用いられているメモリ回路の１例を図３に示す。
【０００３】
３０は複数のメモリＬＳＩ３１が実装されたメモリモジュール、３２はメモリコントローラで、メモリＬＳＩ３１の制御、メモリＬＳＩ３１への書き込みデータの送信、メモリＬＳＩ３１からの読み出しデータの受信などを行う。
【０００４】
なお、メモリコントローラ３２の中には、メモリＬＳＩ３１の制御をする部分と書き込みデータの送信と読みだしデータの受信をする部分とを別々の集積回路にておこなうものもある。
【０００５】
ここでのメモリＬＳＩは、クロック同期式のメモリを想定している。クロック同期式メモリとしては、例えばＳＤＲＡＭ（Synchronous  Dynamic  Random  Access  Memory）がある。
【０００６】
このメモリコントローラはマザーボード３３上に実装され、メモリモジュール３０はコネクタ３４によってマザー・ボード上に実装される。
【０００７】
図３には、マザーボード上に実装されているメモリモジュールの枚数は８枚であるが、モジュールの枚数は、システムの規模、仕様またはユーザの目的等によって随時枚数が決められる。
【０００８】
このメモリ回路の簡単な回路動作は以下の通りである。メモリコントローラから出力される制御信号や書き込み用データ信号は、マザーボード上の信号配線３５を通り、コネクタ３４、メモリモジュール上の接点３６、メモリモジュール上の配線３７を経て、各モジュール上のメモリＬＳＩ３１へと伝えられる。さらに、データの読み出しの場合は、メモリＬＳＩ３１からモジュール上配線３７、接点３６、コネクタ３４、マザーボード上の配線３５を通り、メモリコントローラ３２に入力される。
【０００９】
このような配線３５をメモリバスという。図３では複数本あるメモリバスのうち、１本のみを示している。
【００１０】
なお、ＳＤＲＡＭには上記制御信号、データ信号のほかに、クロック信号も供給されるが、図３ではクロック用配線は示していない。クロック用配線はクロック発信源から直接、または分周、分配先よりメモリコントローラやメモリモジュール内にあるメモリＬＳＩに分配される。
【００１１】
このようなメモリシステム内等の集積回路部品間の信号伝送線路に、フリップフロップを用いた単相クロックシステム方式がある。
【００１２】
この技術については、例えば、ＶＬＳＩシステム設計  回路と実装の基礎（丸善出版、平成７年）の３５６ページから３６０ページに詳細に述べられる。
【００１３】
単相クロック方式の最も簡単な例を図２に示す。図２は出力回路と入力回路とが１：１で接続された伝送回路を示す。ここで、回路ブロック２１には、フリップフロップ２４と出力回路２６があり、また回路ブロック２２には入力回路２７とフリップフロップ２５がある。そして２３は回路ブロック２１より出力された信号を回路ブロック２２に伝えるための伝送線路である。
【００１４】
フリップフロップ２４、２５には、クロック発信源から直接、または分配、分周されたクロックが入力される。なお、図２では示していないが、フリップフロップ２４の入力信号は回路ブロック２１内で作られ、また、フリップフロップ２５の出力も、回路ブロック２５内の別の回路に入力されているのが一般的である。
【００１５】
また、上記説明ではフリップフロップ２４の入力信号は回路ブロック２１内で生成されるとしたが、他の回路ブロックで生成され、直接、フリップフロップに入力される場合もある。フリップフロップ２５の出力も同様に、回路ブロック２２内の入力回路に限ることなく、他の回路ブロック内の入力回路に直接、配線される場合もある。
【００１６】
【発明が解決しようとする課題】
図２に示した回路の基本動作は以下の通りである。
【００１７】
フリップフロップ２４、２５にはクロックが供給されているものとする。フリップフロップ２４は、前サイクルのクロックでラッチしたデータをクロックに同期して出力し、そのデータを出力回路２６の入力部に伝え、出力部からそのデータを伝送線路２３に出力する。伝送線路２３を伝わったデータは、入力回路２７を経て、フリップフロップ２５のデータ入力部に伝わり、クロックと同期してそのデータをラッチする。
【００１８】
単相クロックシステムの場合、各フリップフロップに入力されるクロックはお互いに位相が合うように設計される。位相を合わせる技術としては、クロック発信源またはその分配先、分周先から各回路ブロックのクロック入力部までの信号配線長を合わせたり、そのクロック信号の配線の容量負荷を合わせることにより、配線ディレイを合わせる方法が広く使われている。
【００１９】
この単相クロックシステムにおいて、効率的に信号を伝送する方法として広く使われている技術は、信号を出力したサイクルの次のサイクルで、この信号を受信側でラッチする伝送方式である。この方式では、サイクル時間tcycleは以下の式を満足していなければならない。
【００２０】
t cycle > t delay(max) + t pd(max) + t setup(max) + t skew(max)
ここで、
t delay(max)は回路ブロック２１のクロック・アクセス時間、すなわち回路ブロック２１にクロックが入力されてからデータが回路ブロック２１から出力されるまでの時間、
t pd(max)は回路ブロック２１から出力された信号が回路ブロック２２に入力されるまでの伝搬時間、
t setup(max)は回路ブロック２２のセットアップ時間、すなわち回路ブロック２２に入力されるクロックに先立ち、回路ブロック２２に入力される信号の論理値（Ｈｉｇｈ、またはＬｏｗ）が確定していなければならない時間、
そして最後にt skewは回路ブロック２１、２２それぞれに入力されるクロック間のスキューである。
【００２１】
式中に(max)とあるのは、それぞれの温度・プロセスなどのばらつきを考慮にいれたそれぞれの最大値を意味している。
【００２２】
ここで示したメモリ回路において、回路ブロック（ここではメモリコントローラとメモリモジュール）間の接続配線が長い場合、先に述べた伝搬時間、tpdは大きな値を持つことになる。例えば、コネクタピッチを４００ｍｉｌ（約１ｃｍ）、メモリモジュール枚数を１６枚の場合、tpdは３〜４ｎｓとなる。
【００２３】
tpd(mux)を４ｎｓとすると、サイクル数が３３ＭＨｚの場合、その周期、３０ｎｓに対するtpdの割合は約１割程度にすぎず、回路ブロックの高速化により、t cycle > t delay(max) + t pd(max) + t setup(max) + t skew(max)
を満たすことは可能である。
【００２４】
しかし、例えば、サイクル数を２５０ＭＨｚまであげると、その周期はtpd(max)と同じ４ｎｓとなり、いくら回路ブロックの高速化をはかっても、このシステムを実現することは出来ないことになる。２５０ＭＨｚとまでいかなくとも、t delay(max), t setup(max), t skew(max) の高速化はデバイスの微細化などによるところが大きく、現実には、１００ＭＨｚ前後のサイクル数でも、
t cycle < t delay(max) + t pd(max) + t setup(max) + t skew(max)
の関係になり、それ以上の高速化は設計上不可能となる。
【００２５】
また、高速化の実現を検討するときに、上記のようなディレイ計算の他に、ウィンドウの確保の検討を行う方法がある。ディレイ計算の場合、出力回路と入力回路とのクロック位相を一致させた状態での信号伝送の可否を検討しているのに対し、ウィンドウを考慮にいれた場合、クロックの位相にオフセット調整を加えることによって、より一層の高速化を可能とする。
【００２６】
クロックの位相にオフセット調整を加えるというのは、例えば図３のような場合、メモリコントローラに供給されるクロックにくらべ、メモリモジュールに供給されるクロックの位相をずらして早めたり、遅らしたりすることをいう。
【００２７】
例えば、書き込み時のディレイ時間が読み出し時のディレイ時間に比べて早い場合、前述したディレイ時間による方法であれば、読み出し時のディレイ時間に合わせてサイクルが決まるのに対し、ウィンドウを考慮にいれた場合、メモリＬＳＩに供給しているクロックの位相を早くずらすことによって、読み出しデータを早く出力することが出来、その結果、メモリコントローラにおいて、メモリＬＳＩのクロック同期タイミングとメモリコントローラの次サイクルのクロック同期タイミングまでの時間を延ばせるので、読み出し時のディレイ時間以上の時間を確保出来る場合がある。つまり、ウィンドウ時間の確保を検討する場合は、上式の代わりにウィンドウ時間 t window、つまり
t window = t cycle + t OH - t delay(max)
を用いて設計を行う。
【００２８】
t OHは、データ出力ホールド時間といい、信号出力をしている出力回路ブロックに次のクロックが入ってから、出力が（そのサイクルの）データに切り替わるまでの時間である。この時間は、t delay(min)、つまり t delay の最小値と一致するか、それ以上の時間である。
【００２９】
こうして求められた t window の値をもとに、次式が満足していればよい。
【００３０】
t window > tpd(max-min) + t setup(max) + t hold(max)
ここで tpd(max-min) とは、tpd の最大値と最小値との差であり、図３の場合、最大値とはメモリコントローラからみて最遠端のモジュールとメモリコントローラとの間の伝搬時間であり、最小値とは最近端のモジュールとメモリコントローラとの間の伝搬時間である。すなわち、t delay(max-min)とはメモリモジュールの位置による伝搬時間の違いを表す量である。
【００３１】
このウィンドウ時間の検討を、メモリモジュールへのデータの書き込み時と読み出し時のそれぞれについておこない、ともに
t window > tpd(max-min) + t setup(max) +t hold(max)
が満足していれば、あとはそれぞれの時間幅である t window - tpd(max-min) にセットアップ時間とホールド時間が確保できるようにクロックの位相のオフセット値をセットすればよい。
【００３２】
この方法によって、若干の高速化は図れるが、装置のサイズ、例えば図３に示したメモリ回路では、実装モジュール枚数が多くなると、tpd(max-min)の値が無視できなくなり、それゆえに高速化がやはり困難となる。
【００３３】
即ち、高速伝送が要求されるほど、メモリコントローラから近端のメモリモジュールまでの信号の伝搬時間とメモリコントローラからの遠端のメモリモジュールまでの信号の伝搬時間との違いによる影響が大きくなり、メモリシステムの高速設計に困難が生じている。
【００３４】
同様の問題はメモリシステムに係わらず、クロックと同期して信号の送受信を行う回路間で起こってくる問題であり、例えば、マイクロプロセッサを複数用いたマルチプロセッサ・システムにおけるプロセッサバスについても同様の問題が発生しうる。
【００３５】
本発明は、クロック信号に同期して信号の授受を行うシステムにおいて、これらの問題を解決することにある。
【００３６】
本発明は、回路間の信号の伝搬時間の遅れによる信号の授受の不調を減らすことのできる信号伝送装置を提供することを目的とする。
【００３７】
本発明の他の目的は、以下の詳細な説明で明らかにされる。
【００３８】
【課題を解決するための手段】
上記目的を達成するために、
クロック信号を出力するクロック出力回路と、第１の信号を出力する第１の回路と、前記第１の信号を受信する複数の第２の回路と、該複数の第２の回路を配列して実装する基板と、前記クロック信号を伝送する第１の配線と、前記第１の回路から前記第２の回路へ向かう信号を伝達する第２の配線とを備えた信号伝送装置において、
前記第１の配線は前記クロック出力回路から配線され、前記複数の第２の回路と直列に接続され、前記第２の配線は、前記第１の回路から配線され、前記複数のメモリモジュールに直列に接続されるようにして前記第１、第２の配線と、前記第２の回路とを接続するようにした。
【００３９】
こうすることにより、クロック信号が任意の第２の回路へ到達する距離と、第１の回路から出力される第１の信号がその第２の回路へ到達する距離との相対的な関係が、第２の回路の実装位置によらず、ほぼ同様の距離とすることができ、第２の回路がクロック信号に同期して第１の信号をラッチするときに、第１の信号の回路間の伝搬遅延時間の影響を抑えることができる。
【００４０】
また、前記第１、第２の配線のそれぞれは、前記第１の回路から最遠の前記第２の回路以遠の位置で折り返し、前記第１の回路から最も近い前記第２の回路まで戻るようにレイアウトし、
前記第２の回路の一部は前記第１の配線と前記第２の配線の折り返し位置までで接続し、残りの前記第２の回路は前記第１と第２の配線の前記折り返し位置以後で接続することにより、負荷の密度を低めることができる。
【００４１】
更に、クロック信号を出力するクロック出力回路と、第１の信号を出力し、第２の信号を受信する第１の回路と、前記第１の信号を受信し、前記第２の信号を出力する複数の第２の回路と、該複数の第２の回路を配列して実装する基板と、前記クロック信号を伝送する第１の配線と、前記第１の回路から前記第２の回路へ向かう信号を伝達する第２の配線と、前記第２の回路から前記第１の回路へ向かう信号を伝達する第３の配線とを備えた信号伝送装置において、
前記第１の配線は、前記クロック出力回路から配線され、前記複数の第２の回路と直列に接続され、
前記第２、第３の配線は前記第１の回路から配線され、前記複数のメモリモジュールに直列に接続され、
前記第２の配線は、前記第１の回路から最遠の前記第２の回路以遠の位置で折り返し、前記第１の回路から最も近い前記第２の回路まで戻るようにレイアウトされ、
前記第１、第３の配線のそれぞれは、前記第１の回路から最遠の前記第２の回路以遠の位置で折り返し、前記第１の回路から最も近い前記第２の回路まで戻った後前記第１の回路に到達するようにレイアウトされ、
前記第１の配線と前記第２の配線では、前記第２の回路の一部は前記第１の配線と前記第２の配線の折り返し位置までで接続し、残りの前記第２の回路は前記第１と第２の配線の前記折り返し位置以後で接続し、
前記第３の配線では、前記第１の配線と該第１の配線の折り返し位置までで接続した前記一部の第２の回路については、前記第３の配線の折り返し位置以後で接続し、前記残りの第２の回路については、前記第３の配線の折り返し位置までで接続する。
【００４２】
こうすることにより、クロック信号が任意の第２の回路へ到達する距離と、第１の回路から出力される第１の信号がその第２の回路へ到達する距離との相対的な関係、及び第２の回路がクロック信号に同期して出力する第２の信号が第１の回路へ到達するまでの距離と、第２の回路が第２の信号を出力したときのクロック信号が第１の回路へ到達するまでの距離との相対関係が、第２の回路の実装位置によらず、ほぼ同様の距離とすることができ、第２の回路がクロック信号に同期して第１の信号をラッチするとき、及び第１の回路が第２の信号をラッチする時に、第１、第２の信号の回路間の伝搬遅延時間の影響を抑えることができる。
【００４３】
また、第１の信号を出力する第１の出力回路と、第２の信号を出力する第２の出力回路と、第３の信号を受信する第１の受信回路と、第４の信号を受信する第２の受信回路を有する第１の回路ブロックと、前記第１の信号を受信する第３の受信回路と前記第２の信号を受信するための第４の受信回路と第３の信号を出力する第３の出力回路と前記第４の信号を出力する第４の出力回路を有する複数の第２の回路ブロックを持ち、前記第１の信号と前記第２の信号と前記第３の信号そして前記第４の信号を、前記第１の回路ブロックと前記第２の回路ブロック間に伝送させる第１の配線と第２の配線と第３の配線および第４の配線をそれぞれ、第１の回路ブロックから最遠の第２の回路ブロックの位置、または前記位置よりさらに遠い位置で折り返してレイアウトし、前記第１の信号と前記第３の信号について、前記第２の回路ブロックの一部を前記第１の回路ブロックから前記折り返し位置までの配線上で接続し、残りの前記第２の回路ブロックを前記折り返した点より先の配線上で接続し、前記第２の信号と前記第４の信号に対しては、第１の信号が前記第１の回路ブロックから前記折り返し位置までの配線上で接続している場合、前記第２の回路ブロックは前記折り返した点より先の配線上で接続し、他の前記第２の回路ブロックは、前記第１の回路ブロックから前記折り返し位置までの配線上で接続し、第２の受信回路が第３の信号に同期して第４の信号をラッチし、さらに第４の受信回路が第１の信号に同期して第４の信号をラッチする構成とし、メモリモジュール側がデータを出力するときにメモリコントローラ側でデータを受け取るためのタイミング信号を出力するようにしていもよい。
【００４４】
【発明の実施の形態】
以下、本発明の一実施例を図面を用いて詳細に説明する。
【００４５】
本実施例では、メモリシステムのメモリバスの例にして説明する。先述したように、本願発明は、ワークステーションやパーソナルコンピュータなどの高速信号伝送が要求されるあらゆる階層のバス、つまり図１７に示すシステムバス（プロセッサバス）、メモリバス、周辺バス等の信号配線にも適用されるものである。メモリシステムに限られないことは言うまでもない。
【００４６】
本発明の一実施例（第１の実施例）を説明する。
本実施例に関係する図面として、メモリコントローラとメモリモジュールとの配線、接続に関して、図４、図６、図１に示し、メモリコントローラの詳細について図２８〜３１及び図３５に示し、メモリモジュールの詳細について図２１、図４０、図４１に示す。また、実装されたシステムの変形例について図１３〜１６、図１８〜２０、図２２〜図２５に示す。
【００４７】
まず、図４を用いて主に本実施例の基本的な基板配線パターンと基板配線とコネクタとの接続について説明する。
【００４８】
メモリコントローラ３２には出力回路１１、１２と入力回路１３、１４がある。
【００４９】
このうち、出力回路１１、入力回路１３はクロック信号用の回路、また出力回路１２、入力回路１４はデータ信号用の回路、配線１５はクロックを伝えるためのクロック用配線、配線１６はデータ書き込み用配線、配線１７はデータ読み出し用配線である。
【００５０】
３４Ａ〜３４Ｆはコネクターであり,メモリ素子等を実装した後述するメモリモジュール等が接続されるものである。
【００５１】
メモリコントローラ３２や、配線１５、１６、１７とコネクタ３４Ａ〜３４Ｆ等は、図３の３３に示すような基板（マザーボード）に実装される。
【００５２】
伝送線路１５Ａ，１５Ｂ、１６Ａ、１７Ａは、メモリコントローラ３２をマザーボードと別の基板（モジュール）上に実装した場合に、そのモジュールに引かれる配線である。また、メモリコントローラ３２がマザーボードに実装される場合でもマザーボード上のレイアウトによって必要に応じて引かれることがあるが、必ずしも必要なものではない。
【００５３】
コネクタ３４Ａ〜３４Ｆは、マザーボード上で、図３に示すように一列に配列されて実装される。配線１５〜１７はメモリコントローラ３２からそれぞれのコネクタ３４Ａ〜３４Ｆと順次交差するように延び、メモリコントローラ３２から最も遠い位置にあるコネクタの先で折り返し（Ｕターン）し、再度コネクタ３４Ｆからコネクタ３４Ａと順次交差するようにレイアウトされる。図４には、配線１５〜１７とコネクタ３４Ａ〜３４Ｆと接続箇所を、黒丸（・）を示している。
【００５４】
クロック用配線１５とデータ書き込み用配線１６は、それぞれの配線の折り返しの位置までに、コネクタ３４Ａ−３４Ｃ…３４Ｅと接続し、折り返しの位置以後でコネクタ３４Ｆ…３４Ｄ−３４Ｂと接続する。
【００５５】
データ読み出し用配線１７は、クロック用配線１５、データ書き込み用配線１６と逆の関係で接続する。即ち、配線１７の折り返しの位置までに、コネクタ３４Ｂ−３４Ｄ…３４Ｆと接続し、折り返しの位置以後にコネクタ３４Ｅ…３４Ｃ−３４Ａと接続する。
【００５６】
交互に配置することで配線に対する負荷のかかり方が一様になる。
【００５７】
図4では、クロック信号線１６と書き込み用データ信号線１７および読みだし用データ信号線１８をそれぞれ１本づつ示しているが、それぞれの配線の本数は必要に応じて何本引かれていてもよいことはいうまでもない。
【００５８】
コネクタ３４Ａ〜３４Ｆには、メモリモジュール３０が実装される。メモリモジュールの例を図１８から図２７に示す。メモリモジュール３０には図１８に示すように、メモリＬＳＩが複数個実装される。メモリＬＳＩは、クロック同期型メモリ、例えばＳＤＲＡＭが望ましい。ＳＤＲＡＭはクロックのと同期して、制御信号、アドレス信号を取り込んだり、またはデータを書き込んだり、読み出したりするメモリである。
【００５９】
メモリモジュール３０では、データ線は、図１９に示すようにモジュールの接点３６とＳＤＲＡＭのピンとが１：１に接続される。制御信号・アドレス信号は図２０に示すように、モジュールの接点３６と複数のＳＤＲＡＭのピンとが接続される。図２０ではすべてのＳＤＲＡＭに信号が分配された例を示したが、１つの接点３６からモジュール上にあるＳＤＲＡＭの１部に分配されるケース、たとえば１つのモジュールに複数のＣＡＳ(Column Address Strobe)信号が入力されるケースがこれにあたる。
【００６０】
また、図２２に示すように、接点３６とＳＤＲＡＭとの間にバッファ回路６１が入る場合や、図２３のようにデータ信号線に抵抗が入る場合、図２４のように制御信号・アドレス信号線に抵抗が入る場合、さらには図２５のようにバッファ回路６１と抵抗６０の両方が入る場合がある。
【００６１】
図２３等で挿入される抵抗は、マザーボード上の配線と、メモリモジュール上の配線のインピーダンスマッチングをとるための抵抗であり、その詳細は、本願出願人が先に出願した特願平５ー３３４６３１号（特開平７−２０２９４７号）、特願平７−２６４９５号（特開平７−２８３８３６号）に詳述される。
【００６２】
上記メモリモジュール３０のうちの、１つのＳＤＲＡＭに注目し、その他の回路をすべて省略した回路を図２１に示す。図２１のＳＤＲＡＭは入力回路と出力回路とが分離しているタイプを示している。ＳＤＲＡＭにはクロックを取り込む入力回路５０、データを取り込む入力回路５１、そしてデータを出力する出力回路５２がある。
【００６３】
現状のＳＤＲＡＭは、入力回路の入力部と出力回路の出力部とがＬＳＩ内で共通になった入出力タイプであるが、それについては後述し、ここではＬＳＩ内部では入力回路の入力部と出力回路の出力部とが分離しているタイプのピン仕様を例にあげて以下、動作を簡単に説明する。
【００６４】
ＳＤＲＡＭ３１は、入力回路５０によって取り込んだクロックに同期して、入力回路５１でデータを取り込んだり、または出力回路５２からデータを出力するして、クロック信号に同期してデータを書き込み、または読み出しを実行している。
【００６５】
通常本実施例のメモリシステムでは上述したメモリモジュール３０がコネクタ３４の全て又は一部に接続された形で実現される。
【００６６】
以下図4に示されるマザーボードの各コネクタに図21に示したメモリモジュール30が接続されたメモリシステムにおけるメモリモジュール３０へのデータの書き込みの処理例を示す。
【００６７】
メモリコントローラ３２は、書き込み用のデータと、クロック信号とをそれぞれ出力回路１２、１１から出力する。クロック信号は書き込みの処理を行うときに発信するようにしてもよいし、常に出力しているようにしても良い。
【００６８】
出力されたクロック信号はクロック用配線１５を伝わり、コネクタ３４Ａ、３４Ｃ、・・、３４Ｅ、３４Ｆ、・・、３４Ｄ、３４Ｂの順で各コネクタに伝わり、再びメモリコントローラへと戻ってくる。書き込みデータも、クロック用配線と同様順序でコネクタと接続しているので、同様の順序で各コネクタに伝わる。
【００６９】
任意のコネクタ３４に接続されたメモリモジュール３０のＳＤＲＡＭ３１は、入力回路５０で受信したクロック信号に同期して前入力回路５１からデータを取り込む。
【００７０】
メモリコントローラがデータを読み出すときには、メモリコントローラ３２はクロック信号とデータ読み出しのためのアドレス等を含む制御信号を発する。上記の書き込みと同様に、メモリコントローラ３２から出力された制御信号は、ＳＤＲＡＭ３１に受信される。
【００７１】
ＳＤＲＡＭ３１は、該当するデータを入力回路５０が受信するクロック信号と同期して出力回路５２からデータ読み出し用配線１７に出力する。
【００７２】
データ読み出し用配線１７は、データ書き込み用データとは逆の順序で、コネクタと接続している。前記メモリモジュールがコネクタ３４に接続されているとすると、ＳＤＲＡＭ３１が出力回路５２から出力したデータはコネクタ３４Ａから、３４Ｃ、・・、３４Ｅ、３４Ｆ、・・、３４Ｄ、３４Ｂの各コネクタとの接続点を通り、メモリコントローラにたどり着く。ＳＤＲＡＭ３１がデータを出力するときのクロック信号は、コネクタ３４Ａでデータ出力の同期を取られるために利用される。そのクロック信号は読み出し用配線１７のデータと同様に、コネクタ３４Ａから、３４Ｃ、・・、３４Ｅ、３４Ｆ、・・、３４Ｄ、３４Ｂの各コネクタとの接続点を通り、メモリコントローラに戻ってくる。
【００７３】
メモリモコントローラ３２は、受信回路１３で受信したクロック用配線を介して戻ってきたクロック信号に同期して受信回路１４が読み出したデータを取り込む。
【００７４】
読み出しデータがメモリモジュール３０からメモリコントローラ３２にたどり着くまでと、クロック信号がメモリモジュール３０の位置からメモリコントローラ３２にたどり着くまでは、ほぼ同じ距離をたどることになり、回路間のクロック信号とデータ信号の回路間ディレイの差を意識しなくてもよくなる。
【００７５】
このように、クロック信号と書き込みデータ信号が任意のメモリモジュールに届く時間（距離）を、メモリモジュールの接続位置にかかわらずほぼあわせることができる。またメモリモジュールから読み出しデータが届くまでと、該メモリモジュールの位置からクロック信号がメモリコントローラに戻ってくるまでの時間をほぼ合わせることができる。
【００７６】
このように、メモリモジュールの位置にかかわらず、データ書き込み時の伝搬時間と読み出し時の伝搬時間との和が、ほぼ一定の値となり、先述した式、
t window > tpd(max-min) + t setup(max) + t hold(max)
において、tpd(max-min)の値を削減でき、ウィンドウのマージンを確保できる。
【００７７】
つまり、前にも述べたように、時間
t window - tpd(max-min)
が長くなるため、セットアップ時間とホールド時間の値以上の時間を容易に取ることができる。
【００７８】
なお、図４で示したように、コネクタと配線との接続を交互に配線の折り返し位置の前後とするコネクタの接続方法は一例である。
【００７９】
クロック配線１５において、出力回路１１から（メモリコントローラから最も遠い）コネクタ３４Ｆまでの部分を「行きの部分」、そしてコネクタ３４Ｆから入力回路までの部分を「帰りの部分」、同様に書き込みデータ配線においても、出力回路１２からコネクタ３４Ｆまでの部分を「行きの部分」、残りの部分（つまり、行きの部分の先にあるメモリモジュール側に戻ってくる部分）を「リターンの部分」、そして読み出しデータ配線については、コネクタ３４Ｆから入力回路１４までの部分を「リターンの部分」、残りの部分（つまり、リターン部分の手前の部分で、コネクタ３４Ａからコネクタ３４Ｆまでの部分）を「行きの部分」とすれば、以下のルールを守ってコネクタを接続すれば良い。
【００８０】
（１）クロック配線を「行きの部分」でコネクタと接続した場合、
・書き込みデータ用配線は「行きの部分」でコネクタと接続し、
・読み出しデータ用配線は「リターンの部分」で配線する。
【００８１】
（２）クロック配線を「帰りの部分」でコネクタと接続した場合、
・書き込みデータ用配線は「リターンの部分」でコネクタと接続し、
・読み出しデータ用配線は「行きの部分」で配線する。
【００８２】
より精度をあげるためには、以下のことを考慮して配線のレイアウトを行えば良い。
【００８３】
（１）出力回路１１からモジュール内の入力回路５０までの配線１５の配線長と、出力回路１２からモジュール内の入力回路５１までの配線１６の配線長とを合わせたり、配線負荷を合わせる。
【００８４】
（２）出力回路１２からモジュール内の入力回路５１までの配線１６の配線長と、モジュール内の出力回路５２から入力回路１４までの配線１７の配線長を各モジュール間で合わせたり、配線負荷を合わせる。
【００８５】
これらの配線長をあわせたり、配線負荷を合わせたりする精度をあげれば、その分、t window - tpd(max-min) の値を増やす効果がある。
【００８６】
なお、クロックの位相のオフセットをかける手段としては、
（１）メモリコントローラ、または各メモリモジュールに分配されるクロック配線上のいずれかに伝搬遅延を生じさせるための回路、たとえばディレイ回路を置く方法。この回路はすべての配線上に置いても良いし、どれかの信号のみに置いても良い。
【００８７】
（２）（１）のディレイ回路機能をクロック発信源、または分配、分周源側に持たせる方法。このとき、外部ピンによってそのディレイが調整できるようにしておくことがより良い。このためには、これらのクロック源内にいくつかのディレイ回路を作り込んでおいて、それらを外部から選択する方法や、複数のディレイ回路を用意し、それらの回路のうち、いくつ用いるかを外部から指定する方法などがある。
【００８８】
また、メモリコントローラとコネクタとを結ぶ配線において、クロック信号やデータ信号をコネクタに接続するとき、「行きの部分」のみや「帰りの部分（またはリターンの部分）」のみで接続するよりは、「行きの部分」と「帰りの部分（またはリターン部分）」とに分散して接続するのがよりよい。なぜならば、コネクタに接続による負荷を分散させることが出来、信号配線の実効インピーダンスの落ち込みを抑えることが出来るからである。
【００８９】
このインピーダンスの落ち込みを抑える効果として、以下のようなものがある。
【００９０】
（１）出力回路の出力が切り替わった時、初めにメモリモジュールに伝わる信号振幅の落ち込みを抑えることができる。
【００９１】
特に、小振幅信号の場合、インピーダンスの落ち込みにより出力回路から出た第１波の信号振幅が少なくなり、その結果、入力信号のノイズマージンが少なくなり、時には誤動作を起こす原因となるのを防ぐ。
【００９２】
（２）多様な用途に対する品質を向上させることが出来る。
【００９３】
メモリモジュールのように、ユーザの使い方によって、すべてのコネクタにモジュールをフル実装する場合や、一部のコネクタにモジュールを実装し、その他のコネクタを空き状態にする場合がある。このように、使われ方が変化する場合、すべての状態で性能を保証するためには、その装置の特性、この場合は配線の実効インピーダンスの変化量を少なくすることによって性能マージンが確保でき、品質を上げることが出来る。
【００９４】
これらの効果を最大限に生かせるコネクタとの接続方法は、図４に示したように、「行きの部分」と「帰りの部分（またはリターンの部分）」と交互に接続する方法である。
【００９５】
さらに、インピーダンスの落ち込みを抑える方法として、配線１５、１６または１７のインピーダンスをモジュールのインピーダンスと比べ低い信号配線を用いいることがあげられる。例えば５０Ω前後（たとえば４０〜６０Ω）にする。
【００９６】
モジュールを実装することによって、実効的なインピーダンスは２０〜４０Ωへと下がるが、この値は５０Ωの配線であろうが７５Ωの配線であろうが、ほぼ等しい値となる。すなわち、この場合、５０Ωの配線を用いた方が、モジュールを実装する前後でのインピーダンスの差が小さくすることが出来る。
【００９７】
本実施例においては、４つの回路１１〜１４が１つの回路ブロック３２内にある例を示したが、本発明の適用範囲がその構成によって限定されるものではないのはいうまでもなく、これらの回路が複数の回路ブロックに分離されていてもよい。もっとも、性能や製造コストの面で優位なのは４つの回路が１つの回路ブロック３２内にある構成である。
【００９８】
現状のメモリコントローラの構成を考えると、クロック信号を出力する出力回路のみ他の回路ブロックに分離するのも望ましい回路構成である。
【００９９】
また、本実施例では、メモリモジュールへのデータ書き込みと、メモリモジュールからのデータの読み出しの両方ともに適用した例を示したが、データ書き込みにだけ本願発明のクロック分配を用い、データ読み出しには、従来技術を適用することもできる。このような従来技術との折衷構成でもかまわないことや回路構成の代案例は以後の実施例でも同様である。
【０１００】
上記図４で示した実施例に対し、前述の配線１５から１７に終端抵抗を追加した例を図６に示す。図６中４０〜４５は終端抵抗を表している。当然のことながら、終端抵抗は終端電源と接続している。
【０１０１】
図６には両端終端の例を示しているが片端終端でもその効果はある。より効果的に終端を行うには両端終端をするのがよいが、信号の向きが片側のみである場合、例えば、制御信号線やアドレス信号線の場合、片側終端であっても良い。そのとき、終端する場所は出力回路の反対側がよい。
【０１０２】
終端抵抗の抵抗値は、伝送線路のインピーダンスで終端する例が多いが、より効果的にするには伝送線路の実効インピーダンス値で終端するのがよい。ただしこの値は厳密に合わせなくとも、±２０Ω程度のずれがあっても終端の効果はある。
【０１０３】
図１に、分岐配線（１５Ａ、１５Ｂ、１６Ａ、１７Ａ）と配線（１５、１６、１７）との間に配線間のインピーダンスマッチングとるためのマッチング抵抗（４６、４７、４８、４９）を挿入した例を示す。このマッチング抵抗は、配線１５〜１７上の信号を低振幅化することと、配線間のインピーダンスのマッチングをとって配線の分岐点での信号の反射を押さえる目的で挿入される。
【０１０４】
このマッチング抵抗については、本願出願人が先に出願した特願平５ー３３４６３１号（特開平７−２０２９４７号）、特願平７−２６４９５号（特開平７−２８３８３６号）に詳述される。
【０１０５】
この抵抗は分岐配線から主配線への信号伝搬において、分岐点での反射を抑える効果がある。この抵抗値は分岐配線（１５Ａ、１５Ｂ、１６Ａ、１７Ａ）のインピーダンス値から配線（１５、１６、１７）のインピーダンスの半分の値を引いた値に設定するのがよい。ただし、メモリモジュールが主配線上に実装されることで、主配線の実効インピーダンスが低くなる場合などは、主配線のインピーダンス値の代わりに主配線の実効インピーダンス値を用いると良い。
【０１０６】
目安となるその抵抗値は先に求めた値の０．５から１．５倍程度の範囲であるのが望ましい。但し、２倍程度になっても低振幅化による高速化に効果がある。
【０１０７】
このように図１に示すマッチング抵抗（４６、４７、４８、４９）を備えるものとしたときには、メモリモジュール側も図２３、２４、２５に示すように抵抗を備えるものであることが望ましい。この抵抗もメモリモジュール内の配線とマザーボードの配線（１５、１６、１７）とのインピーダンスマッチングをとり、配線１５〜１７上の信号の低振幅化を実現する値のものが望ましい。この抵抗の抵抗値の決め方も前述のマッチング抵抗４６〜４９と同様である。その時には、分岐配線をメモリモジュール内の配線として計算する。
【０１０８】
次に,本発明の他の実施例（実施例２）を図５に示す。上述の実施例において明らかとしてきたことは、以下の実施例においても適用できるため、繰り返し記載しない。異なる点のみを明らかにする。
【０１０９】
本実施例は、メモリコントローラから出力されるクロック信号を読み出し用のクロックと書き込み用クロックとに分離し、それぞれを同じクロック用配線１５で読み出し時と書き込み時とでクロック信号の伝わる向きを変えて伝送する方式である。ここで書き込み用クロックの出力回路は１１、読み出し用クロックの出力回路は１１Ａ、そして読み出したデータをメモリコントローラで取り込むクロックを受信する受信回路は１３である。１２、１４はそれぞれデータを出力する回路１２、受信する回路１４である。
【０１１０】
なお、図５でには示していないが、出力回路１１、１１Ａは両方が動作して使用することのないように、それぞれの出力を制御する論理回路をメモリコントローラ３２に持つことが望まれる。
【０１１１】
第１の実施例と同様に、クロック配線１５において、出力回路１１から（メモリコントローラから最も遠い）コネクタ３４Ｆへ向かう部分を「行きの部分」、そして「行きの部分」の先、すなわちコネクタ３４Ｆからコネクタ３４Ａへ向かう部分を「帰りの部分」、データ配線１６において、出力回路１２からコネクタ３４Ｆに向かう部分を「行きの部分」、残りの部分（つまり、行きの部分の先にあるメモリモジュール側に戻ってくる部分）を「リターンの部分」とすれば、以下のルールを守ってコネクタを接続すれば良い。
【０１１２】
（１）クロック配線を「行きの部分」でコネクタと接続した場合、
・データ用配線は「行きの部分」でコネクタと接続する。
【０１１３】
（２）クロック配線を「帰りの部分」でコネクタと接続した場合、
・データ用配線は「リターンの部分」でコネクタと接続する。
【０１１４】
こうすることで、第１番目に示した実施例と同等の効果を、データの信号配線を半分、すなわち書き込み専用配線と読み出し用配線の２組から、書き込み・読み出し共通の１組へと減らして出来る。
【０１１５】
書き込み用クロック信号の出力回路の出力部と読み出し用クロックの入力回路の入力部とは回路ブロック（集積回路や部品）の内部または外部で接続すればよい。（図５では回路ブロック内で接続した例を示している）
また、第２の実施例は、メモリモジュール上に実装されているメモリＬＳＩがＩ／Ｏ共通、すなわち入力回路、出力回路をともに持った入出力回路を持ったタイプに適用した例である。この実施例では使用するモジュール内の回路は第１の実施例の図２１に対し、図２６に示す構成となる。データ等を出力する出力回路５１と受信する受信回路５２が接続された形になっている。
【０１１６】
図７は、第２の実施例においてメモリコントローラ３２が配線１５、１６と分岐配線１５Ａ〜１６Ａを介して接続するタイプ（第１の実施例の図６と同じタイプ）であり、図８は、分岐配線１５Ａ〜１６Ａと配線１５、１６との間にマッチング抵抗４６〜４８を介したタイプ（第１の実施例の図１と同じタイプ）である。
【０１１７】
次に第３の実施例を説明する。上記第１、第２の実施例では、データ信号などの双方向の信号に対する実施例を示してきたが、アドレス信号、または制御信号などの単方向の伝送については、図９から図１１に示すように、クロックがメモリコントローラに戻る経路を削除することによって容易に出来る。これは、データ信号でも書き込みだけ使用するラインにのみも適用できる。
【０１１８】
ただ、この場合、データ用クロックとその他の信号用クロックの２種類のクロックが各メモリモジュールに供給されることになるが、データ用クロック回路を用いて、アドレス信号や制御信号を取り込んてもよい。このとき、第２の実施例のように２つのクロックがある場合、書き込み専用クロックを用いてアドレス信号、制御信号をＳＤＲＡＭで取り込めば良い。なお、このときのメモリモジュール内の回路は第１の実施例における図２１に対し、図２７に示すタイプになる。
【０１１９】
図１２には第２の実施例の応用として第４の実施例を示す。Ｉ／Ｏ共通のメモリコントローラを用いたときに、クロック信号を第１の実施例と同じように単方向のみで伝搬することを許す方法を提供する。
【０１２０】
すなわち、クロック信号を出力回路１１から出力し、書き込みデータ信号を出力回路１２より出力する。このとき、スイッチ９０は入出力回路（図では出力回路１２と入力回路１４とに分けてある）と伝送線路１６Ａとを接続する。このようにすることで、クロック信号とデータ信号をメモリコントローラ３２からコネクタ３４Ａ〜３４Ｆまでをそれぞれほぼ等しい配線長を経由して、コネクタ上のメモリモジュールに伝えることができる。
【０１２１】
また、読み出し時にはスイッチ９０は入出力回路と伝送線路１６Ｂとを接続し、１６Ｂから伝わってきたデータを、１５Ｂから送られてきたクロックによってラッチする。こうすることで、第１の実施例で示したクロック制御方式を用いて、Ｉ／Ｏ共通のデータ線を持った回路に適用することが出来る。
【０１２２】
いままで示してきた実施例１〜４において、データを取り込むクロックはメモリコントローラ内部のクロックとは一般に位相が異なる。すなわち、読み出しデータをさらに、メモリコントローラ内で使うには、ふたたびメモリコントローラ内のクロックによって制御出来るように、クロックの乗り換え（ここではリターンクロックから内部クロックへの乗り換え）をする必要がある。そこで、リタイミング回路、たとえばＦＩＦＯ（First-in First-out)回路を入力回路１４の先につけておくとよい。また、配線１５を伝搬してきたクロックと内部クロックとの位相のずれの大きさをもとに、メモリコントローラが内部クロックのどのサイクルでラッチすればよいかを判定する手段をもってもよい。
【０１２３】
また、配線長、ディレイ回路などを用いて、出力するクロックと戻ってくるクロックとの位相を合わせることにより、データの取り込みが容易になる。
【０１２４】
図３５は前記したリタイミング回路の一実施例をメモリコントローラ３２に備えた例を示したものである。リタイミング回路は、少なくとも、Ｄタイプのラッチ回路２５Ａ、フリップフロップ回路２５Ｂとから構成される。 Ｄタイプのラッチ回路２５Ａは入力されるクロックがＨｉｇｈ（またはＬｏｗ）のときに入力されたデータを通し、Ｌｏｗ（またはＨｉｇｈ）に切り替わった時のデータを、クロックが再びＨｉｇｈ（またはＬｏｗ）になるまで保持する機能を持っている。
【０１２５】
Ｄタイプのラッチ回路２５Ａには、リターンクロック、２φ'の正論理、または不論理がクロックとして入力され、またフリップフロップ回路２５Ｂにはメモリコントローラ３２の内部クロック、２φの正論理、または負論理がクロックとして入力される。
【０１２６】
これらのクロックのいずれを使うかは、メモリコントローラ３２内部のクロック２φと戻ってきたクロック２φ'の位相差の大きさによって、一意的に選択される。
【０１２７】
例えば、２φと２φ'との位相差の大きさがちょうど半位相分ずれている場合、そのズレを補正するために、Ｄタイプのラッチ回路２５Ａには２φ'の負論理のクロックが入力され、フリップフロップ回路２５Ｂには２φの正論理のクロックが入力される。
【０１２８】
また、２φと２φ'との位相差の大きさがちょうど合っている場合、Ｄタイプのラッチ回路２５Ａには２φ'の正論理のクロックが入力され、フリップフロップ回路２５Ｂには２φの正論理のクロックが入力される。
【０１２９】
また、別の実施例としては、それぞれの位相が合う場合は、フリップフロップ回路２５Ｂが不要となるので、２５Ａの出力を直接、メモリコントローラ内部へ伝えても良い。
【０１３０】
メモリモジュールのそれぞれにメモリコントローラ３２から出力されるクロックの他にメモリモジュールの動作用のクロックが別配線で供給されている場合には、上述したリタイミング回路をメモリモジュール側に持ってもよい。
【０１３１】
図３６は図３５で示したリタイミング回路を図１２の回路に適用した一実施例を示している。また、図３６ではクロックφをメモリコントローラからではなく、コネクタ３４Ａの手前のクロック分配回路から出力している例を示している。図１で示したクロックの供給の仕方、すなわちクロックφをメモリコントローラから供給してもよいが、一般にメモリコントローラのクロックアクセス時間は、メモリＬＳＩのクロックアクセス時間と比べ早い。そのため、書き込みに比べ、読みだしが厳しくなる。このため、クロックの出力回路をメモリコントローラ内からコネクタ３４Ａの手前に移動し、クロックの位相を前に持ってきて、書き込みと読みだしとにかかる時間を合わせている。
【０１３２】
なお、本実施例は図１２に示す第２の実施例を例に示したが、他の実施例にも適用できるのはいうまでもない。また、図３６では分周回路７１付きＰＬＬ(Phase Locked Loop)７０（Ａ）はメモリコントローラの外にある例を示している。クロック信号発信回路３６０からクロック分配回路３６１等を経て供給されるクロック信号を分周する。このＰＬＬ７０（Ａ）はメモリコントローラの内部にあってもよいのは言うまでもない。
【０１３３】
さらに、本発明の第５の実施例を図３７に示す。本実施例では、２つのコネクタ列３４Ａ〜３４Ｆ、３４Ｇ〜３４Ｍに渡り、伝送線路１５、１６がレイアウトされている。
【０１３４】
上記で示してきた実施例では、「行きの配線」上で接続されるコネクタ列と、「帰りの配線」上で接続されるコネクタ列とは同じである例を示したが、本実施例では、「行きの配線」上で接続されるコネクタ列（図の例では３４Ａ〜３４Ｆ）と「帰りの配線」上で接続されるコネクタ列（図の例では３４Ｇ〜３４Ｍ）とが異なっている。このことによって、コネクタ下にレイアウトされる伝送線路の本数は、半分（「行きの配線」と「帰りの配線」から、「行きの配線」または「帰りの配線」のいずれかの配線）になり、レイアウトが容易になったり、基板の信号配線の層数を減らすことが出来る。
【０１３５】
また、図３７には、伝送線路１５、１６は全てのコネクタと接続された例を示したが、一部のコネクタ、例えばコネクタ１つおきに接続しても良い。
【０１３６】
当然ながら、図３７以前で示してきた図においても、「行きの配線」または「帰りの配線」の何れかにコネクタが接続されているが、どちらの配線とも接続されていないコネクタがあってもよい。たとえば、配線を平行して２本レイアウトし、偶数番目のコネクタ、つまり３４Ｂ、３４Ｄ，・・、３４Ｆと接続する配線と、奇数番目のコネクタ、つまり３４Ａ、３４Ｄ、・・、３４Ｅと接続する配線とに分けても良い。
【０１３７】
さらに、図３７で示した実施例は図３６、さらには図３６のもとになった図１２で示す実施例でも適用できるのは言うまでもなく、他の実施例でも適用できる。
【０１３８】
次に第６の実施例について説明する。第１〜第５の実施例ではメモリコントローラ３２側でメモリモジュール３０読み出したデータを受け取るときは、メモリコントローラ３２が出力し配線１５を通して受信したクロック信号と同期して受け取っていた。第６の実施例ではメモリモジュールが出力したデータを受け取るタイミングをとるためのトリガーとなる信号をデータを出すメモリモジュール側が発する構成としている。以下詳細を説明する。
【０１３９】
図４６に第６の実施例を示す。
【０１４０】
メモリコントローラ１６１にはクロック出力回路１７１、クロック同期型の出力回路１７２と入力回路１８１とこの入力回路１８１によって取り込んだ信号と同期する入力回路１８２がある。
【０１４１】
出力回路１７２、入力回路１８２はデータ用の回路である。
【０１４２】
また伝送線路１１４〜１１７は、メモリコントローラをモジュール化した場合やマザーボード上のレイアウトによっては引かれる配線であって、必ずしも存在するとは限らないし、またこの配線の有無によって本発明が制限されることはない。
【０１４３】
以下の実施例では、これら４つの回路が１つの回路ブロックで構成されている例を示すが、これらの回路が複数の回路ブロックに分離されていてもよい。
【０１４４】
また、配線１１０はメモリコントローラ１６１から出力された信号が、コネクタ１４０〜１４５上に実装された各メモリモジュール上で取り込むために必要なクロックで、メモリコントローラ１６１から出力される信号のための配線である。
【０１４５】
また、配線１１１はメモリモジュール上のメモリから読み出されたデータをメモリコントローラで取り込むために必要なトリガ信号（リターンクロック）を伝送するための配線で、このトリガ信号は読み出したメモリから出力される。
【０１４６】
このトリガ信号は、メモリコントローラから出力されるクロックとは異なり、読み出しデータ１つに対し、１パルスのみ出力される。
【０１４７】
さらに、このトリガ信号は読み出しデータがメモリコントローラ側で取り込めるように、例えばメモリコントローラのセットアップ時間以上、データより遅れるのが望ましい。さらにメモリコントローラのホールド時間を満たすためには、トリガ信号が出てから、メモリコントローラのホールド時間より長く、メモリの出力はデータを保持しておくのが望ましい。
【０１４８】
また、図４６では、メモリ回路におけるクロック信号とデータ信号とをそれぞれ１本づつ着目し、その他の回路をすべて省略しているため、これらの入力回路および出力回路はそれぞれ１組のみ示しているが、その数は本発明を制限するものではないのも言うまでもない。
【０１４９】
黒丸（・）で示したところでそれぞれの配線とコネクタとが接続されている。
【０１５０】
すなわち、図４６の例では、メモリコントローラから出力されたクロック信号は信号伝送線路１１０上をコネクタ１４０、１４２、・・、１４１と伝わる。データ書き込み用信号配線１１２も、クロック用配線と同様順序でコネクタと接続する。
【０１５１】
そして、データ読み出し用配線１１３とメモリから出力されるトリガ信号用配線１１１は、データ書き込み用データとは逆の順序で、コネクタと接続する。すなわち、データ書き込み配線をメモリコントローラから、１４１、１４３、・・、１４０と各コネクタに接続する。
【０１５２】
こうすることで、データ書き込み時の伝搬時間と読み出し時の伝搬時間との和が、メモリモジュールの位置にかかわらず、揃うことになる。
【０１５３】
このとき、これらのクロック信号用配線、トリガ信号用配線とデータ書き込み用配線、または読み出し配線それぞれの伝搬時間を揃うように設計することが望ましい。
【０１５４】
メモリモジュールのささっていないコネクタがある場合にはメモリモジュールと同等の負荷をダミーで実装することで、実装枚数の変動による実効インピーダンスの変化を抑える方法もある。
【０１５５】
図４６では両端終端の１実施例を示したが、図４７に示すように配線１１０、１１２のように、信号が片方向のみ伝搬する信号については、片側終端でもよい。これによって部品の搭載すうを削減でき、消費電流を低減する事が出来る。また、配線１１４〜１１７の長さが十分に短いとき、例えばこれらの配線における伝搬時間が信号波形の立ち上がり時間または立ち下がり時間の約１／６以下の場合、抵抗１５０〜１５３を取り除くことも可能である。ただし、この場合、バス１１０における信号振幅が大きくなるため、出力回路から出る信号振幅そのものを低振幅化するなどの見直しをするのが望ましい。この例が図４８である。
【０１５６】
さらに、出願人が特願平５−３３４６３１号(特開平７−２０２９４７号)にて明らかにした小振幅回路に本回路を適用することもできる。すなわち、抵抗１５０〜１５３は分岐配線１１４〜１１７から主配線１１０への信号伝搬において、分岐点での反射を抑える効果がある。この抵抗値は分岐配線のインピーダンス値から主配線のインピーダンスを引いた値に設定するのがよい。ただし、メモリモジュールが主配線上に実装されることで、主配線の実効インピーダンスが低くなる場合などは、先の値にくらべ小さな値を用いるとよい。
【０１５７】
目安となるその抵抗値は先に求めた値の０．５から１．５倍程度の範囲であるのが望ましい。
【０１５８】
次に第７の実施例を以下に示す。なお、上述の実施例において明らかとしてきたことは、以下の実施例においても適用できるため、繰り返し記載しない。異なる点を明らかにする。
【０１５９】
第６の実施例では、メモリコントローラ１６１、メモリモジュール１６２の入力回路と出力回路とが分離された場合の例を示したが、図４９はメモリコントローラ１６１、メモリモジュール１６２に入出力回路が採用された場合の１実施例を示している。入出力回路とは例えば、図示しているメモリコントローラを用いて説明すると出力回路１７２の出力部と入力回路１８２の入力部とが回路ブロック１６１（例えば集積回路）内で接続され、回路ブロックの端子としては分離されず共通の１つの端子となっている回路のことである。
【０１６０】
この場合、スイッチ１９０が挿入され、スイッチは、データの書き込み時には回路ブロック伝送線路１６１側へ、データの読み出し時には伝送線路１１７側へと接続される。
【０１６１】
これによって、先に示した第１の実施例と同等の効果を入出力回路を持ったシステムに適用することが出来る。図５０は図４７と同様、図４９の回路を片側終端した場合の１例、図５１は図４８と同様、挿入抵抗を削除した例である。
【０１６２】
図５３、５４で示す回路図は、メモリモジュール内のメモリ１チップに注目して示した図で、図５３は図４６で示した実施例に適用されるモジュールの回路図で、入力回路１８１はクロック入力用、出力回路１７１はリターンクロックとなるトリガ信号を出力する回路、出力回路１７２は読み出しデータを出力する回路、入力回路１８２は書き込みデータを入力するための回路である。図５４はデータ信号を入出力回路によって出力、入力する場合の回路例である。
【０１６３】
なお、クロック信号を入力する入力回路１８１は一般に１チップについて１つあって、この回路で入力したクロックで、書き込みデータや制御信号、アドレス信号を取り込む。
【０１６４】
図５２に示した別の実施例は、「行きの配線」と「帰りの配線」とを別のコネクタ列に通した例である。こうすることで、「行きの配線」と「帰りの配線」とを基板配線上、同一層でレイアウトする事が出来、基板層数を増やすことなく、本発明を実現することができる。
【０１６５】
図５５に示した回路図は本発明におけるメモリコントローラのクロック信号およびデータ信号の出力回路、入力回路を詳細に示した回路である。
【０１６６】
フリップフロップ１９１Ｄ，１９１Ｓは内部クロックに同期して動作し、フリップフロップ１９１Ｌには入力回路１８１で受信したメモリからのトリガ信号に同期して動作する。
【０１６７】
これによって、メモリコントローラから出力される書き込みデータは、チップ内部のクロックと同期して出力され、メモリから読み出したデータはトリガ信号によってセットアップおよびホールド時間を確保したまま受信をし、次段のフリップフロップによって内部のクロックにリタイミングされる（位相を内部のクロックに合わせる）。
【０１６８】
こうすることで、メモリコントローラからプロセッサバスへの信号のやりとりを内部クロックと位相を合わせて行うことが出来る。
【０１６９】
なお、本実施例では、リタイミングのために使用したフリップフロップ１９１Ｓは１段の例を示したが、段数は１段に制限されることは当然なく、さらにこの場合、フリップフロップに入力されるクロックの位相は内部クロックとトリガ信号それぞれの位相の間をとったり、さらには内部クロックの逓倍クロックを用いて、複数段で行うことによっても実現できる。
【０１７０】
次に、本発明におけるクロック信号の伝送の改良について述べる。前述の実施例において、クロック信号はデータ信号と同様の負荷のもとで、動作することになる。しかし、例えば、１００ＨＭｚのデータ転送を行うためには、クロックの周期は１０ｎｓ（周波数は１００ＭＨｚ）、データの周期は２０ｎｓ（周期は５０ＭＨｚ）とデータ信号に比べ、クロック信号は倍の周波数で動かさなければならない。そこで、より本発明でクロックを安定して供給する方法を以下に示す。
【０１７１】
まず、クロックの周波数（周期）をデータなどの信号と同じにする。そして、モジュール内、またはメモリＬＳＩ内でこの入力されたクロックの２逓倍のクロックを生成し、この生成されたクロックに同期して、ＳＤＲＡＭの信号の取り込み、出力を制御する。
【０１７２】
同様の機能はメモリコントローラ側にも持たせる。
【０１７３】
また、２逓倍の方法であるが、ｄｕｔｙを５０％前後に安定させるには、ＰＬＬを用いて１度、４倍し、そのあと２分周してにして２倍に戻すのがよい。一般には、Ｎを自然数として、２（Ｎ＋１）逓倍し、Ｎ＋１分周をすればよい。
【０１７４】
これらのことを示したのが、図２８から図３４である。
【０１７５】
図２８では、クロック２φを分周回路７１付きＰＬＬ(Phase Locked Loop)７０を用いて０．５倍の周波数のクロックφを作り、そのクロックを出力回路１１を用いて、メモリコントローラ３２より、出力する。されに、もとのクロック２φと同期して、出力回路１２から信号を出力する。
【０１７６】
図２９は、分周回路７１付きＰＬＬ(Phase Locked Loop)７０が出力回路１１の先にある場合の一実施例を示している。この方法によって、分周回路７１付きＰＬＬ(Phase Locked Loop)７０を持たないメモリコントローラ３２にも本発明を適用できる。
【０１７７】
図３０では、受信回路１３で受けたクロックφ'を分周回路７１付きＰＬＬ(Phase Locked Loop)７０を用いて２倍の周波数のクロック２φ'を作り、そのクロック２φ'を用いて、受信回路１４で受信した信号をフリップフロップ２５でラッチする。ここで、ラッチするクロックは２φ'であって、メモリコントローラ内部に供給されているクロック２φではない。２φと２φ'とは周波数は等しいが、２φ'は、メモリコントローラから出て再び戻って来たクロック、φ'から生成されたクロックであって、一般に位相が違う。
【０１７８】
図３１は、分周回路７１付きＰＬＬ(Phase Locked Loop)７０が受信回路１３の手前にある場合の一実施例を示している。この方法によって、分周回路７１付きＰＬＬ(Phase Locked Loop)７０を持たないメモリコントローラにも本発明を適用できる。
【０１７９】
図３２はクロック出力回路と入出力回路の一実施例を示している。内部クロック２φの半分の周波数のクロックφを分周回路７１付きＰＬＬ(Phase Locked Loop)７０によって作り出し、そのクロックを出力回路１１によって、メモリコントローラより出力する。また、メモリコントローラへもどって来たクロックφ'を入力回路１３で受け、分周回路７１付きＰＬＬ(Phase Locked Loop)７０によって２倍の周波数のクロック２φ'を作る。出力回路１２より出力されるデータはクロック２φと同期して出力され、受信回路１４によって受信されるデータはクロック２φ'に同期して受信される。
【０１８０】
図３３は図３１と同様、分周回路７１付きＰＬＬ(Phase Locked Loop)７０が出力回路１１の先、入力回路１３の手前にそれぞれある場合の一実施例である。
【０１８１】
図３４はメモリモジュールに、分周回路７１付きＰＬＬ(Phase Locked Loop)７０を用いた場合の一実施例を示す。メモリバス上を伝わってきたφ'を同期型メモリ３１、例えばＳＤＲＡＭのクロックピンに供給するには、メモリコントローラ側で周波数を半分にしたクロックをもとに戻すため、分周回路７１付きＰＬＬ(Phase Locked Loop)７０を用いて、周波数を２倍にし、クロック２φ'を作り、それをメモリ３１に供給する。
【０１８２】
図３２、図３３で示した例では、受信回路と出力回路の両方を持ったＩ／Ｏ回路タイプのメモリコントローラの例を示したが、図３８および図３９では、受信回路と出力回路とが別々の端子をもったＩ／Ｏ分離型のメモリコントローラに適用される。図３８と図３９との違いは、図３２、図３３との違い同様、ＰＬＬ回路がメモリコントローラの内部にある場合と外部にある場合の違いである。
【０１８３】
さらに、Ｉ／Ｏ分離型のメモリモジュールに対しては図４０に示すメモリモジュールが提供される。これはＩ／Ｏ回路タイプの図３４に対するＩ／Ｏ分離型の応用例である。
【０１８４】
また、本発明は、レジスタタイプのバッファを持ったメモリモジュール（図４２）、単なるバッファ（中間バッファとして使用し、ラッチはしないタイプのバッファで、スルータイプ、バスドライバともいう）をを持ったメモリモジュール（図４３）にも適用できる。
【０１８５】
また、いままで明らかにしてきた本発明の実施例に対し、メモリモジュール側にも抵抗を挿入した場合も本発明は当然、有効である。この抵抗によって、小振幅化をはかるのはもちろん、インピーダンス整合をとることができ、反射ノイズを防止できる。
【０１８６】
図４１は図４０に抵抗を追加した一実施例、図４４、４５はそれぞれ図４２、４３に抵抗を追加した一実施例である。
【０１８７】
図１３〜図１４は、本発明の１実施例が実現されたボードの状態を示す。図１３はメモリコントローラ３２がマザーボードに直接実装され、メモリＩＣ（ＳＤＲＡＭ）３１がドーターボードに実装されたメモリモジュール３０がコネクタ３４を介してマザーボードに実装されている状態を示す。
【０１８８】
図１４は、メモリコントローラ３２をドーターボードに実装してモジュール化した例である。また、図１５、図１６はメモリＩＣ３１をコネクタを介さずに直接マザーボードに実装した例を示す。
【０１８９】
上述してきたいくつかの実施例は、キャッシュメモリとプロッセサとの接続にも使用出来る。  さらに、図１７に示すように、ワークステーションやパソコンでは、プロセッサバス、メモリバス、周辺バスなど、さまざまなバスがある。本発明ではメモリモジュールとメモリモジュールとの接続を例にとって示したが、本発明はメモリバスに限らず、その他のバスにおいても、またはコネクタの使用の有無、モジュール化の有無に関係なく有効であることはいうまでもない。さらに、ボード実装でなくとも、複数のＬＳＩを１つのパッケージ内に納めるマルチモジュールにも適用できる。
【０１９０】
【発明の効果】
本発明により、メモリシステムのように、信号伝搬時間が大きくしかもモジュールの位置による遅延時間の違いがあるシステムにおいても高速な信号転送が可能な設計が行えるようになる。
【図面の簡単な説明】
【図１】本発明の第１の実施例の応用例についての、メモリコントローラとメモリモジュールとの接続関係及び配線パターンを示す図。
【図２】従来の単相クロックシステム方式の信号伝送装置を示す図。
【図３】従来のメモリシステムの実装構造及び回路を示す図。
【図４】本発明の第１の実施例についてのメモリコントローラとメモリモジュールとの接続関係及び配線パターンを示す図。
【図５】本発明の第２の実施例についての、メモリコントローラとメモリモジュールとの接続関係及び配線パターンを示す。本発明を入出力共通型回路に適用した場合に、クロック信号の向きを読み出し時と書き込み時とで反転させる例を示す図である。
【図６】本発明の第１の実施例の応用例のメモリコントローラとメモリモジュールとの接続関係及び配線パターンを示す図。
【図７】本発明の第２の実施例の応用例についての、メモリコントローラとメモリモジュールとの接続関係及び配線パターンを示す図。
【図８】本発明の第２の実施例の応用例についての、メモリコントローラとメモリモジュールとの接続関係及び配線パターンを示す図。
【図９】本発明の第３の実施例についてのメモリコントローラとメモリモジュールとの接続関係及び配線パターンを示す。単一方向の信号伝送に適用した例を示す図。
【図１０】本発明の第３の実施例の応用例についてのメモリコントローラとメモリモジュールとの接続関係及び配線パターンを示す図。
【図１１】本発明の第３の実施例の応用例についてのメモリコントローラとメモリモジュールとの接続関係及び配線パターンを示す図。
【図１２】本発明の第４の実施例のメモリコントローラとメモリモジュールとの接続関係及び配線パターンを示す図。
【図１３】本発明をメモリシステムに適用した場合の実装構造を示す図。
【図１４】本発明をメモリシステムに適用した場合の実装構造を示す図。
【図１５】本発明をメモリシステムに適用した場合の実装構造を示す図。
【図１６】本発明をメモリシステムに適用した場合の実装構造を示す図。
【図１７】情報処理システムのブロック構成図。
【図１８】メモリモジュールの外形を示す図。
【図１９】メモリモジュール上のデータ信号配線を示す図。
【図２０】メモリモジュール上のアドレス・制御・クロック信号配線を示す図。
【図２１】メモリモジュール上の入出力分離型のＳＤＲＡＭ回路を示す図。
【図２２】メモリモジュール上のアドレス・制御・クロック信号配線上にバッファ回路を挿入した場合の信号接続を示す図。
【図２３】メモリモジュール上のデータ信号配線上に抵抗を挿入した場合の信号接続を示す図。
【図２４】メモリモジュール上のアドレス・制御・クロック信号配線上に抵抗を挿入した場合の信号接続を示す図。
【図２５】メモリモジュール上のアドレス・制御・クロック信号配線上にバッファ回路・抵抗を挿入した場合の信号接続を示す図。
【図２６】メモリモジュール上の入出力共通型ＳＤＲＡＭ回路を示す図。
【図２７】メモリモジュール上にあるＳＤＲＡＭのアドレス・制御・クロック信号入力回路を示す図。
【図２８】ＰＬＬ回路がメモリコントローラ内部にあるメモリコントローラのクロック出力回路を示す図。
【図２９】ＰＬＬ回路がメモリコントローラ外部にあるメモリコントローラのクロック出力回路を示す図。
【図３０】ＰＬＬ回路がメモリコントローラ内部にあるメモリコントローラのクロック入力回路を示す図。
【図３１】ＰＬＬ回路がメモリコントローラ外部にあるメモリコントローラのクロック入力回路を示す図。
【図３２】ＰＬＬ回路がメモリコントローラ内部にある入出力共通型メモリコントローラを示す図。
【図３３】ＰＬＬ回路がメモリコントローラ外部にある入出力共通型メモリコントローラを示す図。
【図３４】ＰＬＬ回路を持ったメモリモジュールにおけるクロック入力を示す図。
【図３５】リタイミング回路を備えたメモリコントローラを示す図。
【図３６】本発明のリタイミング回路を用いた本発明のメモリシステムを示す図。
【図３７】本発明の第５の実施例を示す図。
【図３８】ＰＬＬ回路がメモリコントローラ内部にある入出力分離型メモリコントローラのクロック出力回路を示す図。
【図３９】ＰＬＬ回路がメモリコントローラ外部にある入出力分離型メモリコントローラのクロック出力回路を示す図。
【図４０】入出力分離型ＳＤＲＡＭ回路を持ったメモリモジュールにおけるクロック入力を示す図。
【図４１】挿入抵抗と入出力分離型ＳＤＲＡＭ回路を持ったメモリモジュールにおけるクロック入力を示す図。
【図４２】レジスタタイプのバッファ回路と入出力共通型ＳＤＲＡＭ回路を持ったメモリモジュールを示す図。
【図４３】スルータイプのバッファ回路と入出力共通型ＳＤＲＡＭ回路を持ったメモリモジュールを示す図。
【図４４】挿入抵抗とスルータイプのバッファ回路と入出力共通型ＳＤＲＡＭ回路を持ったメモリモジュールを示す図。
【図４５】挿入抵抗とレジスタタイプのバッファ回路と入出力共通型ＳＤＲＡＭ回路を持ったメモリモジュールを示す図。
【図４６】本発明の第6の実施例を示す図。
【図４７】本発明の第６の実施例の変形例を示す。片側終端のバス構成を示す図。
【図４８】本発明の第６の実施例の変形例を示す図。
【図４９】本発明の第７の実施例を示す図。
【図５０】第４の実施例の変形例を示す図。
【図５１】第４の実施例の変形例を示す図。
【図５２】リタイミング回路を示す図。
【図５３】第６の実施例に接続されるメモリモジュール回路の一実施例を示す図。
【図５４】第７の実施例に接続されるメモリモジュール回路の一実施例を示す図。
【図５５】本発明の第８の実施例を示す図。
【符号の説明】
１１、１１Ａ、１２、２６・・出力回路、１３、１４、２７・・受信回路
２４、２５・・フリップフロップ
２５Ａ・・Ｄタイプラッチ回路、２５Ｂ・・フリップフロップ回路
１５〜１７、１５Ａ〜１５Ｄ、２３、３５、３７・・伝送線路
２１、２２・・回路ブロック
３０・・メモリモジュール、３１・・メモリＬＳＩ、３２・・メモリコントローラ
３３・・マザーボード、３４・・コネクタ、３６・・モジュールの接点部
３８・・伝送線路とコネクタの接点を表すマーク
４０〜４５・・終端抵抗（終端電源も含む）
４６〜４９・・マッチング抵抗
６０・・抵抗
６１・・バッファ回路
７０・・ＰＬＬ回路  ７１・・分周回路
９０・・スイッチ回路
【図１】
0003543541.tif 000002
【図２】
0003543541.tif 000003
【図３】
0003543541.tif 000004
【図４】
0003543541.tif 000005
【図５】
0003543541.tif 000006
【図６】
0003543541.tif 000007
【図７】
0003543541.tif 000008
【図８】
0003543541.tif 000009
【図９】
0003543541.tif 000010
【図１０】
0003543541.tif 000011
【図１１】
0003543541.tif 000012
【図１２】
0003543541.tif 000013
【図１３】
0003543541.tif 000014
【図１４】
0003543541.tif 000015
【図１５】
0003543541.tif 000016
【図１６】
0003543541.tif 000017
【図１７】
0003543541.tif 000018
【図１８】
0003543541.tif 000019
【図１９】
0003543541.tif 000020
【図２０】
0003543541.tif 000021
【図２１】
0003543541.tif 000022
【図２２】
0003543541.tif 000023
【図２３】
0003543541.tif 000024
【図２４】
0003543541.tif 000025
【図２５】
0003543541.tif 000026
【図２６】
0003543541.tif 000027
【図２７】
0003543541.tif 000028
【図２８】
0003543541.tif 000029
【図２９】
0003543541.tif 000030
【図３０】
0003543541.tif 000031
【図３１】
0003543541.tif 000032
【図３２】
0003543541.tif 000033
【図３３】
0003543541.tif 000034
【図３４】
0003543541.tif 000035
【図３５】
0003543541.tif 000036
【図３６】
0003543541.tif 000037
【図３７】
0003543541.tif 000038
【図３８】
0003543541.tif 000039
【図３９】
0003543541.tif 000040
【図４０】
0003543541.tif 000041
【図４１】
0003543541.tif 000042
【図４２】
0003543541.tif 000043
【図４３】
0003543541.tif 000044
【図４４】
0003543541.tif 000045
【図４５】
0003543541.tif 000046
【図４６】
0003543541.tif 000047
【図４７】
0003543541.tif 000048
【図４８】
0003543541.tif 000049
【図４９】
0003543541.tif 000050
【図５０】
0003543541.tif 000051
【図５１】
0003543541.tif 000052
【図５２】
0003543541.tif 000053
【図５３】
0003543541.tif 000054
【図５４】
0003543541.tif 000055
【図５５】
0003543541.tif 000056