(57)【要約】【課題】メモリーに能動終端制御信号を与えるモジュール・レジスタによりメモリーの能動終端制御を行う方法及び装置を提供する。【解決手段】モジュール・レジスタは、読出し及び書込みコマンドに関してシステム・コマンド・バスをモニターする。読出しまたは書込みコマンドを検知すると、モジュール・レジスタはメモリーへの能動終端制御信号を発生する。メモリーは、その１つまたは２つ以上のモード・レジスタにプログラムされている情報に基づき能動終端をターン・オンする。メモリーは、その１つまたは２つ以上のモード・レジスタにプログラムされている情報に基づき能動終端を所定の時間オン状態に維持する。【選択図】図５
2008103073.tif 000002
【特許請求の範囲】
【請求項１】
能動終端制御信号を受信し；
能動終端制御信号の受信に呼応して１つまたは２つ以上のモード・レジスタ中の情報に基づいて能動終端をターン・オンするステップから成る、メモリーにおける能動終端制御方法。
【請求項２】
能動終端のターン・オンが、能動終端制御信号の受信から所定時間後に行われる、請求項１に記載の方法。
【請求項３】
能動終端のターン・オンが、能動終端制御信号の受信からＣＡＳ待ち時間−２クロック・サイクル＋追加待ち時間後に行われる、請求項１に記載の方法。
【請求項４】
能動終端のターン・オンが追加待ち時間を含まない、請求項３に記載の方法。
【請求項５】
能動終端を所定時間オンの状態に維持するステップをも含む、請求項１に記載の方法。
【請求項６】
能動終端を所定時間オンの状態に維持するステップが約バースト長さ÷２＋１1/2クロック・サイクルに相当する所定時間を含む、請求項５に記載の方法。
【請求項７】
能動終端がオン状態にあるときにさらに新しく能動終端制御信号を受信すると、先に受信した能動終端制御信号に対して設定される所定時間に亘って能動終端をオン状態に維持するステップをも含む、請求項１に記載の方法。
【請求項８】
先行能動終端制御信号に対して設定される所定時間に亘って能動終端をオン状態に維持するステップが、先行能動終端制御信号に関連するターン・オン時間後、バースト長さ÷２＋１1/2クロック・サイクルに亘って能動終端をオン状態に維持するステップを含む、請求項７に記載の方法。
【請求項９】
能動終端制御信号を受信し;
受信した能動終端制御信号を無視し；
書込みコマンドの受信に呼応して能動終端をターン・オンするステップから成る、メモリーにおける能動終端制御方法。
【請求項１０】
受信した能動終端制御信号を無視するステップが、受信した能動終端制御信号を無視してもよいとするメモリーのモード・レジスタ中の情報にアクセスするステップを含む、請求項９に記載の方法。
【請求項１１】
受信した能動終端制御信号を無視するステップが、受信した能動終端制御信号を無視してもよいとするメモリー中の情報にアクセスするステップを含む、請求項９に記載の方法。
【請求項１２】
メモリー中の情報にアクセスするステップが、メモリーのモード・レジスタ中の１つまたは２つ以上のビットにアクセスするステップを含む、請求項１１に記載の方法。
【請求項１３】
能動終端をターン・オンするタイミングが書込みコマンドからＣＡＳ待ち時間−２クロック・サイクル＋追加待ち時間後に行われる、請求項９に記載の方法。
【請求項１４】
能動終端のターン・オンが追加待ち時間を含まない、請求項１３に記載の方法。
【請求項１５】
能動終端を所定時間に亘ってオン状態に維持するステップをも含む、請求項９に記載の方法。
【請求項１６】
能動終端を所定時間に亘ってオン状態に維持するステップが、バースト長さ÷２＋１1/2クロック・サイクルに約相当する所定時間を含む、請求項１５に記載の方法。
【請求項１７】
能動終端制御が可能か不可能かを指示する情報にアクセスし；
能動終端のターン・オン時間を求め;
能動終端のターン・オフ時間を求めるステップから成る、メモリーにおける能動終端制御方法。
【請求項１８】
能動終端制御が可能か不可能かを指示する情報にアクセスするステップが、モード・レジスタ中の、能動終端の使用許可または不許可を指示するように定められた少なくとも１つのビットにアクセスするステップを含む、請求項１７に記載の方法。
【請求項１９】
能動終端のターン・オン時間を求めるステップが、能動終端制御が可能か不可能かを指示する情報を、ターン・オン時間を能動終端制御信号の受信後の所定時間に設定する待ち時間情報と組み合わせるステップを含む、請求項１７に記載の方法。
【請求項２０】
能動終端のターン・オン時間を求めるステップが、能動終端制御信号受信後のＣＡＳ待ち時間−２クロック・サイクル＋追加待ち時間にターン・オン時間を設定するステップを含む、請求項１７に記載の方法。
【請求項２１】
ターン・オン時間の設定に追加待ち時間が含まれない、請求項２０に記載の方法。
【請求項２２】
能動終端のターン・オフ時間を求めるステップが、能動終端制御が可能か不可能かを指示する情報を、能動終端のターン・オン後所定の時間にターン・オフ時間を設定するバースト長さ情報と組合せるステップを含む、請求項１７に記載の方法。
【請求項２３】
能動終端のターン・オフ時間を求めるステップが、能動終端のターン・オン時間後のバースト長さ÷２＋複数クロック・サイクルにターン・オフ時間を設定するステップを含む、請求項１７に記載の方法。
【請求項２４】
ターン・オフ時間を設定するステップが約１1/2クロック・サイクルに等しい複数クロック・サイクルを含む、請求項２３に記載の方法。
【請求項２５】
能動終端制御を可能化または不可能化する情報をメモリーにロードするステップから成る、能動終端制御のためメモリーをプログラムする方法。
【請求項２６】
ＣＡＳ待ち時間及びバースト長さ示す情報をメモリーにロードするステップをも含む、請求項２５に記載の方法。
【請求項２７】
追加待ち時間を示す情報をメモリーにロードするステップをも含む、請求項２５に記載の方法。
【請求項２８】
能動終端制御を可能化または不可能化する情報をメモリーにロードするステップが、メモリーのモード・レジスタに１つまたは２つ以上のビットをロードするステップを含む、請求項２５に記載の方法。
【請求項２９】
複数終端値を選択するための情報をメモリーにロードし;
シングル・スロットまたはデュアル・スロット・システムを選択するための情報をメモリーにロードするステップをも含む、請求項２５に記載の方法。
【請求項３０】
能動終端制御可能化または不能化の情報をメモリーにロードし、複数終端値選択の情報をメモリーにロードし、シングル・スロットまたはデュアル・スロット選択の情報をメモリーにロードするステップが、１つまたは２つ以上のビットをメモリーにおける１つまたは２つ以上のモード・レジスタにロードするステップを含む、請求項２９に記載の方法。
【請求項３１】
複数終端値選択の情報をメモリーにロードするステップが７５オーム終端値または１５０オーム終端値を選択するため、１つまたは２つ以上のビットをモード・レジスタにロードするステップを含む、請求項２９に記載の方法。
【請求項３２】
シングル・スロットまたはデュアル・スロット・システムを選択するための情報をメモリーにロードするステップを含む、能動終端制御のためにメモリーをプログラムする方法。
【請求項３３】
シングル・スロットまたはデュアル・スロット・システムを選択するための情報をメモリーにロードするステップが、シングル・スロットまたはデュアル・スロット・システムを選択するための１つまたは２つ以上のビットをモード・レジスタにロードするステップを含む、請求項３２に記載の方法。
【請求項３４】
シングル・スロット・システムを選択するための情報をメモリーにロードするステップが、受信された能動終端制御信号を無視するようにメモリーをプログラムすることである、請求項３２に記載の方法。
【請求項３５】
能動終端制御信号を受信するための能動終端制御ポートと；
能動終端制御ポートと接続する制御論理回路と；
制御論理回路と協働する能動終端と
から成り、制御路論理回路が能動終端をターン・オン及びターン・オフするためのタイミング回路を含むメモリー。
【請求項３６】
メモリーが制御論理回路と接続する１つまたは２つ以上のモード・レジスタをも含み、これら１つまたは２つ以上のモード・レジスタが能動終端の利用可能と利用不能を定義する１つまたは２つ以上のビットを含む、請求項３５に記載のメモリー。
【請求項３７】
メモリーが制御論理回路と接続する１つまたは２つ以上のモード・レジスタをも含み、これら１つまたは２つ以上のモード・レジスタが複数能動終端値の１つを選択するための１つまたは２つ以上のビットを含む、１つ請求項３５に記載のメモリー。
【請求項３８】
１つまたは２つ以上のビットが７５オーム集検知または１５０オーム終端値を選択する、請求項３７に記載のメモリー。
【請求項３９】
メモリーが制御論理回路と接続する１つまたは２つ以上のモード・レジスタをも含み、これら１つまたは２つ以上のモード・レジスタがシングル・スロットまたはデュアル・スロット・システムを選択するための１つまたは２つ以上のビットを含む、請求項３５に記載のメモリー。
【請求項４０】
シングル・スロットを選択する１つまたは２つ以上のビットが、メモリーが受信された能動終端制御信号を無視することを可能にする、請求項３９に記載のメモリー。
【請求項４１】
制御論理回路が、能動終端制御ポートにおいて能動終端制御信号が受信された所定時間後に能動終端をターン・オンするタイミング回路を含む、請求項３５に記載のメモリー。
【請求項４２】
メモリーが、制御論理回路と接続する１つまたは２つ以上のモード・レジスタをも含み、これら１つまたは２つ上のモード・レジスタがＣＡＳ待ち時間及びバースト長さを定義する１つまたは２つ以上のビットを含む、請求項４１に記載のメモリー。
【請求項４３】
制御論理回路のタイミング回路を、ＣＡＳ待ち時間を定義するビットを利用して能動終端のターン・オン時間を設定するように構成した、請求項４２に記載のメモリー。
【請求項４４】
１つまたは２つ以上のモード・レジスタが追加待ち時間を定義する１つまたは２つ以上のビットを含む、請求項４３に記載のメモリー。
【請求項４５】
制御論理回路のタイミング回路を、ＣＡＳ待ち時間を定義するビット及び追加待ち時間を定義するビットを利用することによって、能動終端のターン・オン時間をＣＡＳ待ち時間−２クロック・サイクル＋追加待ち時間に設定するように構成した、請求項４４に記載のメモリー。
【請求項４６】
制御論理回路が能動終端のターン・オンの所定時間後に能動終端をターン・オフするタイミング回路を含む、請求項４２に記載のメモリー。
【請求項４７】
制御論理回路のタイミング回路を、バースト長さを定義するビットを利用することによって能動終端のターン・オフ時間を設定するように構成した、請求項４６に記載のメモリー。
【請求項４８】
制御論理回路のタイミング回路を、バースト長さを定義するビットを利用することによって能動終端のターン・オフ時間を能動終端のターン・オンのバースト長さ÷２＋１1/2クロック・サイクル後に設定するように構成した、請求項４７に記載のメモリー。
【請求項４９】
複数の入力コマンド・ポートと；
タイミング回路クロック信号を受信するための１つまたは２つ以上のクロック・ポートと；
能動終端制御信号を受信するための能動終端制御ポートと；
能動終端制御ポート、複数の入力コマンド・ポート及び１つまたは２つ以上のクロック・ポートと接続して読出し及び書込みコマンドを復号する制御論理回路と；
制御論理回路と協働する能動終端とから成り、制御論理回路が能動終端をターン・オン及びターン・オフするタイミング回路を含む、集積回路。
【請求項５０】
メモリーが、制御論理回路と接続する１つまたは２つ以上のモード・レジスタをも含み、これら１つまたは２つ以上のモード・レジスタが７５オーム終端値または１５０オーム終端値を選択する１つまたは２つ以上のビット・ロケーションを含む、請求項４９に記載の集積回路。
【請求項５１】
制御論理回路が、能動終端制御ポートにおいて能動終端制御信号が受信された所定時間後に能動終端をターン・オンするタイミング回路を含む、請求項４９に記載の集積回路。
【請求項５２】
メモリーが、制御論理回路と接続する１つまたは２つ以上のモード・レジスタをも含み、これら１つまたは２つ以上のモード・レジスタが能動終端をターン・オン及びターン・オフする情報を定義する１つまたは２つ以上のビットを有する、請求項４９に記載の集積回路。
【請求項５３】
コントローラと；
コントローラと接続するメモリー素子とから成り、メモリー素子が
能動終端制御ポートと；
能動終端ポートと接続する制御論理回路と；
制御論理回路と作動的に結合する能動終端とを含み、制御論理回路が能動終端をターン・オン及びターン・オフするタイミング回路を含む、システム。
【請求項５４】
メモリーが制御論理回路と接続する１つまたは２つ以上のモード・レジスタをも含み、これら１つまたは２つ以上のモード・レジスタが複数の能動終端値を選択するための１つまたは２つ以上のビットを含む、請求項５３に記載のシステム。
【請求項５５】
メモリーが制御論理回路と接続する１つまたは２つ以上のモード・レジスタをも含み、これら１つまたは２つ以上のモード・レジスタがシングル・スロットまたはデュアル・スロット・システムを選択するための１つまたは２つ以上のビットを含み、シングル・スロット・システムを選択する１つまたは２つ上のビットが、受信される能動終端制御信号をメモリーが無視することを可能にする、請求項５３に記載のシステム。
【請求項５６】
制御論理回路が、能動終端制御ポートにおいて能動終端制御信号が受信された所定時間後に能動終端をターン・オンするタイミング回路を含む、請求項５３に記載のシステム。
【請求項５７】
メモリーが制御論理回路と接続する１つまたは２つ以上のモード・レジスタをも含み、これら１つまたは２つ以上のモード・レジスタがＣＡＳ待ち時間及びバースト長さを定義する１つまたは２つ以上のビットを含む、請求項５３に記載のシステム。
【請求項５８】
制御論理回路が．ＣＡＳ待ち時間を定義するビットを利用することによって１つの能動終端のターン・オン時間を設定するように構成されたタイミング回路を含む、請求項５７に記載のシステム。
【請求項５９】
制御論理回路が．バースト長さを定義するビットを利用することによって１つの能動終端のターン・オフ時間を設定するように構成されたタイミング回路を含む、請求項５７に記載のシステム。
【発明の詳細な説明】
【関連出願】
【０００１】
この出願は２００２年１１月２０日付米国仮出願第６０／４２７，９１７号及び２００３年３月７日付米国特許出願第１０／３８３，９３９号に基づく優先権を主張する。
【技術分野】
【０００２】
本発明はメモリー素子に係わり、特に、メモリー素子における、読出し及び書込みコマンドに続く能動終端の制御に係わる。
【背景技術】
【０００３】
多くの電子システムは相互間で情報を送受信するコントローラ及びメモリー素子を採用している。典型的には、１つまたは２つ以上のシステム・バスを介して情報が伝送される。これらのバスは伝送ラインとして作用する。従って、これらのバスは伝送ラインと接続しているデバイスと関連する信号反射を考慮した設計を必要とする。典型的には、伝送ラインと給電点との間に接続された抵抗器を利用して成端する。
【０００４】
コンピュータのような電子システムにあっては、多くの場合そのマザーボードに配置される外部抵抗器によって成端する。伝送ラインのインピーダンスと一致するインピーダンスを有する外部抵抗器を選択することにより、複数の集積回路を接続するバスの相互接続信号ラインのような伝送ラインを成端する。外部抵抗が伝送ラインのインピーダンスの抵抗成分と一致すると、信号反射は殆どまたは全く起こらない。しかし、システム・ボードに配置されるすべての信号ラインのための外部抵抗器はこれらのボードの広い面積を占有することになる。
【０００５】
外部抵抗器に代わるものとして、同じく能動終端として知られるオン・チップ終端またはオン・ダイ終端をシステムの集積回路上に使用することができる。オン・チップ終端を使用するとなると、コントローラやメモリーのようなシステムのデバイス間も相互接続する必要がある。このように相互接続するとなると、システムのコントローラその他のデバイスが余分にピン・コネクタを使用しなければならなくなる。種々のデバイスにおける余分の接続ライン及びピン・コネクションの量はオン・チップ終端を設けるための全体的な設計に応じて異なる。
【０００６】
必要なのは、融通性に富み、多数のピン・コネクションを追加する必要のない、電子システムにおける能動終端制御手段である。
【発明の概要】
【０００７】
本発明によると、能動終端制御信号を受信し、能動終端制御信号の受信に呼応して１つまたは２つ以上のモード・レジスタ中の情報に基づいて能動終端をターン・オンするステップから成る、メモリーにおける能動終端制御方法が提供される。
【０００８】
本発明によると、能動終端制御信号を受信し、受信した能動終端制御信号を無視し、書込みコマンドの受信に呼応して能動終端をターン・オンするステップから成る、メモリーにおける能動終端制御方法をも提供される。
【０００９】
本発明によると、能動終端制御が可能か不可能かを指示する情報にアクセスし、能動終端のターン・オン時間を求め、能動終端のターン・オフ時間を求めるステップから成る、メモリーにおける能動終端制御方法をも提供される。
【００１０】
本発明によると、能動終端制御を可能化または不可能化する情報をメモリーにロードするステップから成る、能動終端制御のためメモリーをプログラムする方法をも提供される。
【００１１】
本発明によると、能動終端制御信号を受信するための能動終端制御ポートと、能動終端制御ポートと接続する制御論理回路と、制御論理回路と協働する能動終端とから成り、制御路論理回路が能動終端をターン・オン及びターン・オフするためのタイミング回路を含むメモリーをも提供される。
【００１２】
本発明によると、複数の入力コマンド・ポートと、タイミング回路クロック信号を受信するための１つまたは２つ以上のクロック・ポートと、能動終端制御信号を受信するための能動終端制御ポートと、能動終端制御ポート、複数の入力コマンド・ポート及び１つまたは２つ以上のクロック・ポートと接続して読出し及び書込みコマンドを復号する制御論理回路と、制御論理回路と協働する能動終端とから成り、制御論理回路が能動終端をターン・オン及びターン・オフするタイミング回路を含む、集積回路をも提供される。
【００１３】
本発明によると、コントローラと、コントローラと接続するメモリー素子とから成り、メモリー素子が能動終端制御ポートと、能動終端ポートと接続する制御論理回路と、制御論理回路と作動的に結合する能動終端とを含み、制御論理回路が能動終端をターン・オン及びターン・オフするタイミング回路を含む、システムをも提供される。
【００１４】
本発明の上記及びその他の実施態様、着眼点、利点及び特徴を以下に説明するが、下記の説明、添付図面、または本発明の実施によって、当業者ならば容易に理解するであろう。本発明の着眼点、利点、及び特徴は特に添付の特許請求の範囲に指摘する手段、方法及びその組合せによって実現され、達成される。
【発明を実施するための最良の形態】
【００１５】
添付の図面を参照して、本発明の好ましい実施態様を以下に説明する。当業者が本発明を実施できるように充分詳細に説明するが、本発明の範囲を逸脱することなくここに述べる実施態様以外の態様を採用することも、工程の変更や電気的または機械的変更も可能である。従って、以下の説明によって本発明の範囲が制限されることはなく、本発明の範囲はあくまでも添付の特許請求の範囲及びその等価物によってのみ限定される。
【００１６】
システム
図１は本発明の、メモリー・モジュール１３０、１４０に接続されたコントローラ１２０を有するコンピュータ・システム１１０を含む情報ハンドリング・システム１００の実施例を示す。コントローラ１２０は、他の経路のうち、特にコマンド・バス１５０を介してメモリー・モジュール１３０、１４０と接続している。メモリー・モジュール１３０、１４０は１つまたは２つ以上のメモリー素子を含み、それぞれのメモリー素子内にアクティブ・ターミネーションが形成されている。情報ハンドリング・システム１００はこのほかにキーボード１６０、マウス１７０、及び他のシステム・ユーザーからの入力を受信してこれを表示するようにコンピュータ・システム１１０に接続されたモニター１８０をも含むことができる。
【００１７】
図２は本発明の、メモリー・モジュール２３０、２５０に接続されたコントローラ２２０を有するシステ２００の実施例を示す。図２の実施例では、メモリー・モジュール２３０がモジュール・レジスタ２３２及びメモリー素子２３１−２４１を含み、モジュール・レジスタ２３２は複数のライン２４５を介してメモリー２３４−２４１のそれぞれと接続している。同様に、メモリー・モジュール２５０はモジュール・レジスタ２５２及びメモリー素子２５４−２６１を含む。モジュール・レジスタ２５２は複数のライン２６５を介してメモリー２５４−２６１のそれぞれと接続している。さらに、メモリー・モジュール２３０側のモジュール・レジスタ２３２とメモリー・モジュール２５０側のモジュール・レジスタ２５２は共通のコマンド・バス、即ち、システム２００のためのシステム・コマンド・バス２６０と接続し、このコマンド・バス２６０にはコントローラ２２０も接続している。システム・コマンド・バス２６０を介してだけではなく、コントローラ２２０はチップ・セレクト(ＣＳ＃０）ライン２６２及びＣＳ＃１ライン２６４を介してもモジュール・レジスタ２３２と接続し、ＣＳ＃２ライン２６６及びＣＳ＃３ライン２６８を介してもモジュール・レジスタ２５２と接続している。当業者には明らかなように、システム２００は図示してはいないその他の素子、その他のバス、素子間の通信経路を含む。図面では、本発明の種々の実施態様を理解するのに必要な素子に焦点を合わせた。
【００１８】
モジュール・レジスタ２３２はシステム・コントロール・バス２６０からの制御信号をモジュール２３０側の８個のメモリー素子２３４−２４１へ再駆動するバッファのような機能を果たす。アドレス信号及び制御信号はモジュール・レジスタ２３２へ転送され、次のクロック・サイクルにメモリー素子２３４−２４１へ再駆動される。従って、アドレス及び制御ラインに過度の負荷をかけることなく、システム・バス２６０に比較的大きい負荷をかけることができる。個々のメモリー・モジュールが１６、３２、または３６個のメモリー素子を含むように実施することも可能である。メモリー素子数は多様であるが、メモリー・モジュールが高密度化するのが一般的な傾向である。モジュール・レジスタ２３２はコントロール・ライン２４５を介してメモリー素子２３４-２４１に接続され、コントロール・ライン２４５は各メモリー素子と接続して行アドレス・ストローブ（ＲＡＳ)、カラム・アドレス・ストローブ（ＣＡＳ)、及び書込みイネーブル（ＷＥ）のような信号を供給する。ＣＳやクロック・イネーブル（ＣＫＥ）のような他の信号はレジスタ・モジュール２３２とは別のラインを持つ。メモリー素子２３４−２４１は所与のメモリー素子に読出しまたは書込みが行われているか確認するため、主としてチップ選択入力をモニターする。また、それぞれのメモリー素子２３４-２４１はマザーボードにターミネーションを有するのではなく、メモリー素子毎にアクティブ・ターミネーションを備えている。
【００１９】
モジュール・レジスタ２３２はＣＳ＃０ライン２６２及びＣＳ＃１ライン２６４を介してコントローラ２２０に接続している。モジュール・レジスタ２５２はモジュール・レジスタ２３２と同様に構成されているが、ＣＳ＃２ライン２６６及びＣＳ＃３ライン２６８を介してコントローラと接続している。このような構成を利用することによって、異なる時点で２つのメモリー素子グループ、即ち、典型的には、メモリー・モジュール２３０の一方の側のグループとメモリー・モジュール２３０の他方の側の他のグループにアクセスする。このような構成をランク２構成と呼称する。但し、チップ選択が１つだけの両側モジュールがあり、従って、ランク１構成となる。モジュールのランクは、メモリー素子からの読出しまたはメモリー素子への書込みが行われている間、どのように信号を終わらせるかを決定する。ランク１の場合、一実施例では、メモリー素子自体が終端として作用する。２モジュール・システムの場合、もし書込みまたは読出し動作がモジュール１に対してなら、モジュール２が実際に終端として作用するモジュールである。従って、メモリー・モジュール２３０のモジュール・レジスタ２３２もメモリー・モジュール２５０のモジュール・レジスタ２５２も読出し及び書込みコマンドに関してシステム・コントロール・バス２６０をモニターするから、それぞれのメモリー・モジュール２３０２５０に、互いの読出し/書込み動作に関する情報が提供され、適正な終端作用を容易にする。
【００２０】
モジュール・レジスタ
図３は本発明の、復号回路３０２、複数の入力コマンド・ポート３０４、３０６、３０８、３１０、３１２、チップ選択ポート３１４、３１６、及びアクティブ・ターミネーション制御（ＡＴＣ)信号を出力するアクティブ・ターミネーション・ポート３２０を有するモジュール・レジスタ３００の実施例を示す。クロック信号（ＣＬＫ)及び反転クロック信号（ＣＬＫ＃)はポート３０４、３０６においてそれぞれ受信される。反転行アドレス・ストローブ（ＲＡＳ＃)、反転カラム・アドレス・ストローブ（ＣＡＳ＃)、及び反転書込みイネーブル（ＷＥ＃)信号はポート３０８、３１０、及び３１２においてそれぞれ受信される一方、ＣＳ０＃及びＣＳ１＃信号はポート３１４、及び３１６においてそれぞれ受信される。モジュール・レジスタ３００はこれらの信号を再クロックし、ＣＬＫ、ＣＬＫ＃、ＲＡＳ＃、ＣＡＳ＃、ＷＥ＃、ＣＳ０＃、及びＣＳ１＃信号をそれぞれポート３２２、３２４、３２６、３２８、３３０、３３２、及び３３４からモジュール・レジスタ３００が接続しているメモリー素子へ出力する。制御信号を再クロックしてメモリー素子へ出力するだけでなく、モジュール・レジスタ３００は接続しているメモリー素子のアクティブ・ターミネーションを制御する手段を提供する。
【００２１】
復号回路３０２はシステム・コマンド・バスから受信された制御信号を利用することによって、同じシステム・コマンド・バスと接続しているメモリー・モジュールが読み出しまたは書込みコマンドを受信したかどうかをモニターする。書込みまたは読出しコマンドを検知すると、復号回路３０２はポート３２０においてＡＴＣ信号を出力する。もし書き込みコマンドが復号されると、メモリー・モジュールに書込みコマンドが出力されるのと同時にポート３２０からＡＴＣ信号が出力される。もし読み出しコマンドが復号されると、メモリー・モジュールへの読出しコマンド出力の１サイクル後に、ポート３２０からＡＴＣ信号が出力される。モジュール・レジスタ３００はシステム・バスをモニターし、メモリー素子へアクティブ・ターミネーション制御信号を出力する。従って、モジュールまたはチップ・セットに余分のピンは存在しない。各メモリー素子に１個のポートまたはピンを有するモジュール・レジスタ３００を使用すれば、各メモリー・モジュールにＡＴＣポートを設けることも、各メモリー・モジュールと接続しているコントローラにＡＴＣポートを設けることも不要である。モジュール・レジスタ３００はシステム・コマンド・バスをモニターし、接続しているメモリー素子への信号を制御することによってＡＴＣ信号を制御する。
【００２２】
図４は本発明の、チップ選択ポート４０４、４０６及び複数の入力コマンド・ポート４０８、４１０、４１２、４１４、及び４１６において受信される信号に基づくアクティブ・ターミネーション制御信号を出力するアクティブ・ターミネーション・ポート４０２を有するモジュール・レジスタの復号回路４００の実施例を示す。ポート４１６及び４１４において受信されるＣＬＫ及びＣＬＫ＃と、ポート４０８、４１０及び４１２においてそれぞれ受信されるＷＥ＃、ＣＡＳ＃、及びＲＡＳ＃はいずれも、選択されたメモリー素子へのコマンドを復号する復号回路４００への入力信号である。ポート４０４、４０６におけるＣＳ１＃、及びＣＳ０＃は出力ＡＴＣ信号またはパルスを可能化する論理回路において利用される。２モジュール・システムの場合、ＣＳ０＃及びＣＳ１＃が一方のメモリー・モジュールに対するＡＴＣ信号の出力を可能化し、他方のメモリー・モジュールにおけるメモリー素子が読出し/書込み動作のために選択される。
【００２３】
復号回路４００は読出しコマンドまたは書込みコマンドを復号する一連のゲートを含むコマンド復号構造である。もし書込みコマンドがモジュール・レジスタの復号回路４００中を伝搬されると、ポート４０２からこのモジュール・レジスタと接続しているメモリー素子へＡＴＣ信号が伝送される。もし読出しコマンドがモジュール・レジスタの復号回路４００中を伝搬されると、ポート４０２からＡＴＣ信号を伝送する前に先ずラッチ４１８を通過しなければならない。ラッチ４１８は他方のモジュール・レジスタからの読出しコマンド出力に対して１クロック・サイクルだけ遅延させる。
【００２４】
メモリー
図５は本発明の、能動終端制御ポート５０４と接続して能動終端制御信号を受信するとともに能動終端５０５と接続している制御論理回路５０２を含むメモリーの実施例を示す。制御論理回路５０２は能動終端をオン・オフするためのタイミング回路５０２を含む。制御論理回路５０２は標準的なメモリー制御論理回路であるとともに、メモリーにおける能動終端の状態を制御する回路または状態マシーンでもある。便宜上、当業者には明らかなように、図５はこの実施例を理解するのに必要なメモリー素子だけを示す。
【００２５】
ポート５０４においてＡＴＣ信号を受信するだけでなく、制御論理回路５０２はポート５０６、５０８、５１０においてそれぞれＣＫＥ、ＣＬＫ＃、及びＣＬＫを受信する。メモリー５００はポート５１２、５１４、５１６、及び５１８においてそれぞれコマンド信号ＣＳ＃、ＷＥ＃、ＣＡＳ＃、及びＲＡＳ＃を受信し、これらの信号はコマンド復号回路５２０において復号される。さらに、メモリー５００は制御論理回路５０２の一部としての、または制御論理回路５０２に接続された１つまたは２つ以上のモード・レジスタ５２２を有する。１つまたは２つ以上のモード・レジスタ５２２はＣＡＳ待ち時間、動作モード、バースト長さ、及びバースト・タイプを含む、メモリーを操作するのに必要な情報をプログラムされている。メモリーによっては、１つまたは２つ以上のモード・レジスタ５２２がさらに他の情報をも含むことができる。
【００２６】
メモリー５００はアドレス・バス５２４、データ・バス５２６、及びメモリー５００に記憶されているデータを含むメモリー回路５２８をも含む。メモリー回路５２８はデータ・バス５２６からの読出しまたはデータ・バス５２６への書込みのロケーションを識別する情報を受信するため、アドレス・バス５２４と接続している。ロケーションのＩＤはメモリー・バンクを選択するためのＢＡ０−ＢＡ１及びメモリー・バンク内のアドレスを選択するためのＡ０−ＡＸに含まれている。読出し及び書込み動作の管理は図２のコントローラ２２０のようなプロセッサからのコマンドの受信に基づいて制御論理回路５０２が行う。メモリー５００の読出し及び書込み動作はドライバ５３２に与えられるタイミングを調節するためのＣＬＫ入力を有する遅延ロック・ループを利用して制御する。読出し及び書込み動作はまた、ＤＱＳ発生回路５３４によって与えられるデータ・ストローブＤＱＳによっても制御される。ドライバ５３２はＤＱＳライン５３６に位置するＤＱＳを制御する。さらに、ドライバはメモリー回路３１４から受信したデータ３２４をクロックアウトし、データ・バス５２６のデータ・バス・ロケーションＤＱ０−ＤＱＸへ移送させる。
【００２７】
メモリー５００は１つまたは２つ以上のレジスタをモード・レジスタとして使用し、動作情報はコントローラにより、典型的には初期化またはブート・アップ（システムの起動）と同時にメモリー５００にプログラムされる。既に述べたように、この情報はＣＡＳ待ち時間、動作モード、バースト長さ、バースト・タイプを含む。周知のように、バースト長さは所与の読出しまたは書込みコマンドに対応してアクセス可能なカラム・ロケーションの最大数を決定する。典型的には、バースト・タイプは連続タイプか間歇タイプかのいずれかであり、ＣＡＳ待ち時間はメモリー５００によって読出しコマンドが位置決めされてからメモリー５００からの出力データの第１ビットが利用可能になるまでのクロック・サイクル数である。動作モードは正規動作か、遅延ロック・ループ（ＤＬＬ)のリセットを伴う正規動作かである。１つまたは２つ以上のモード・レジスタ５２２には、能動終端を制御するための情報をもプログラムすることができる。
【００２８】
制御論理回路５０２は、能動終端制御ポートにおいて能動終端制御信号が受信された所定時間後に能動終端をターン・オンするタイミング回路を含む。能動終端のターン・オンはＣＡＳ待ち時間を定義する１つまた２つ以上のビットを利用してメモリー５００によって設定される。能動終端のターン・オンは１つまたは２つ以上のモード・レジスタにプログラムされている追加待ち時間（AL)によっても調整することができる。一実施例では、制御論理回路５０２のタイミング回路を、ＣＡＳ待ち時間−２クロック・サイクル＋追加待ち時間においてターン・オン・するように構成する。一実施例では、追加待ち時間はゼロである。制御論理回路は能動終端がターン・オンした所定時間後に能動終端をターン・オンするタイミング回路をも含む。さらに、一実施例では、バースト長さを定義するビットを利用して能動終端のターン・オフ時間を設定するように構成する。便宜上、ＢＬに等しいサイクル数をバースト長さとする。制御論理回路５０２のタイミング回路能動終端のターン・オフ時間を、１つの能動終端のターン・オンからバースト長さ÷２＋１1/2クロック・サイクル後に設定する。ＤＤＲのバースト長さを２で割るのは、１つのデータ・ビットがクロックの立上りにおいて読み出され、もう１つのデータ・ビットが同じクロックの立下りにおいて読み出されるからである。１クロック・サイクルに１データ・ビット読出しのメモリーの場合、能動終端のター・オフ時間は１つの能動終端のターン・オンからバースト長さ＋１1/2クロック・サイクル後となる。
【００２９】
一実施例では、メモリー素子が複数の終端値を持つ能動終端を有する。１つまたは２つ以上のモード・レジスタは複数の能動終端値の１つを選択するための１つまたは２つ以上のビットを含む。一実施例では、複数終端値が７５オームと１５０オームである。また、一実施例では、メモリーが２モジュール・システムにおけるメモリーなら、７５オーム終端値が使用され、メモリーが１モジュール・システムにおけるメモリーなら、１５０オーム終端値が使用される。
【００３０】
２モジュールまたは２スロット・システムにおいては、一方のモジュールのメモリー素子に書込みまたは読出し信号が供給されると、他方のモジュールのメモリー素子にＡＴＣターン・オンシングが供給される。但し、単一モジュール・システムには能動終端のための第２モジュールは存在しない。単一モジュール・システムにおいては、各メモリーは書込み動作のためには自ら終端として作用するが、読出し動作のためには全く作用しない。単一モジュール・システムにおいて、書込み動作にたいしてメモリー自体が終端として作用するため、メモリー５００は１つまたは２つ以上のレジスタ５２２中に、メモリー５００がシングル・スロットまたはデュアル・スロット・システムにおけるメモリー５００であることを示唆する１つまたは２つ以上のビットを含む。メモリー５００は、１つまたは２つ以上のビットがシングル・スロット・システムを選択するとメモリー５００が受信した能動終端制御信号を無視できるようにする論理回路を有する。メモリー５００を初期設定でシングル・スロット・システムとしてプログラムすれば、書込みコマンド受信と同時に、１つまたは２つ以上のモード・レジスタ中のＣＡＳ待ち時間及び追加待ち時間情報を利用し、プログラムされたビットを利用することによってセルフ・ターミネーションをターン・オンする。能動終端のターン・オン後、能動終端は、１つまたは２つ以上のモード・レジスタ５２２にプログラムされているバースト長さ情報を利用してターン・オフされる。
【００３１】
他の実施態様では、メモリー５００は能動終端を可能化または不能化する情報を含む１つまたは２つ以上のモード・レジスタを含む。
【００３２】
即ち、１つまたは２つ以上のモード・レジスタにプログラムされている情報に基づいて、メモリー５００をターン・オン及びターン・オフする。この構成は、１つの外部信号を利用して能動終端をターン・オンさせ、もう１つの外部信号を利用して能動終端をターン・オフする、あるいは１つの能動終端信号の２つの変わり目を利用してターン・オンしたりターン・オフしたりする構成よりもプログラムし易い。
【００３３】
メモリー５００、モジュール・レジスタ３００及びコントローラ２２０はそれぞれ単一の集積回路として実施することができる。メモリー５００は基板を利用して半導体ダイ上に形成することができ、基板はシリコン、ゲルマニウム、シリコン・オン・サファイア，砒化ガリウムなど広く使用されている半導体材料から成る。メモリー５００の素子は半導体材料内に種々の回路を形成したり、アドレス・バス、データ・バス、及びコントローラまたはプロセッサとの交信用の制御ラインとの電気的接続を実現したりするための公知の製造手段を利用して製造することができる。
【００３４】
図３のモジュール・レジスタ３００の種々の実施例と共にメモリー５００の種々の実施例を図２のコントローラ２２０のようなコントローラと接続することによってその能動終端制御を管理することのできるシステムが得られる。また、システム２００は種々の実施態様が可能な１つまたは２つ以上のコントローラ２２０を利用することによって他のメモリーとは独立に接続している個々のメモリー５００の１つまたは２つ以上のモード・レジスタ５２２をプログラムすることができる。
【００３５】
データ構造
図６は本発明の、能動終端制御に関する情報を提供するビット・ロケーションを有する拡張モード・レジスタの実施例を示す。拡張モード・レジスタは遅延ロック・ループ（ＤＬＬ)、駆動強さ（ＤＳ)、及び流れ制御(ＱＦＣ）に関する情報をそれぞれ示すビット・ロケーション０、１、２を含む。ロケーションＥ０はＤＬＬ可能化/不能化情報を提供する。ロケーションＥ１は駆動強さ情報を、Ｅ２は流れ制御ＱＦＣ不能化情報を提供する。図５のメモリー５００のようなメモリーの拡張モード・レジスタは図２のコントローラ２２０のようなコントローラによるプログラミングのため、アドレス・バス５２４と協働する。コントローラ２２０、または中間コントローラは初期設定中にアドレス・バスを利用して拡張モード・レジスタに情報をプログラムする。一般に、メモリー５００の標準モード・レジスタへのプログラミングと拡張モード・レジスタへのプログラミングとを区別するため、アドレス・バスのＢＡ１、ＢＡ２ロケーションが使用される。典型的には、標準モード・レジスタをプログラムするにはＢＡ１＝０及びＢＡ０＝０を使用し、拡張モード・レジスタをプログラムするにはＢＡ１＝０及びＢＡ０＝１を使用する。
【００３６】
動作モードのためのビット３−１１は規格化団体によって未だ完全には設定されていないから、能動終端制御に使用する１つまたは２つ以上のビットをプログラムするには拡張モード・レジスタを使用することができる。一実施例では、拡張モード・レジスタのためのデータ構造がシングル・スロットまたはデュアル・スロット・メモリー・システムを表わすデータを含むフィールドを有する。このフィールドはシングル・スロットまたはデュアル・スロット・システムを表わす少なくとも１つのビットを含む。別の実施態様では、拡張モード・レジスタのためのデータ構造がメモリー素子の複数終端値を表わすデータを含むフィールドを有する。このフィールドは７５オーム終端値または１５０オーム終端値を選択するための１つまたは２つ以上のビットを含む。さらに他の実施態様では、拡張モード・レジスタのデータ構造が、メモリーの能動終端制御の可能化または不能化を表わすデータを含む１つまたは２つ以上のビットを有するフィールドを含む。
【００３７】
これらに代わる実施態様としては、例えば、ＪＥＤＥＣのような規格化団体によって規定されたデータ構造に追随する標準モード・レジスタ及び拡張モード・レジスタ以外の１つまたは２つ以上のモード・レジスタに能動終端情報をプログラムする。多くの場合、ＣＡＳ待ち時間及びバースト長さが標準モード・レジスタにプログラムされる。
【００３８】
図７は本発明の、能動終端制御の情報を提供するビット・ロケーションを利用するモード・レジスタの実施例を示す。ビット・ロケーション１２、１３はそれぞれアドレス・ロケーションＢＡ０、ＢＡ１と協働して、初期設定の際にプログラムされるモード・レジスタの識別を可能にする。残りのビット・ロケーション０-１１はそれぞれアドレス・バス・ロケーションＡ０−Ａ１１と協働する。ビット・ロケーション０−１１は能動終端制御に使用することができる。一実施例では、モード・レジスタのデータ構造がシングル・スロットまたはデュアル・スロット・システムを表わすデータを含むフィールドを有する。このフィールドはシングル・スロットまたはデュアル・スロット・システムを選択するための少なくとも１つのビットを含む。別の実施態様では、モード・レジスタのデータ構造がメモリー素子の複数終端値を表わすデータを含む。このフィールドは７５オーム終端値または１５０オーム終端値を選択するための１つまたは２つ以上のビットを含む。さらに他の実施態様では、モード・レジスタのデータ構造がメモリーのための能動終端制御の可能化または不能化を表わすデータを含む１つまたは２つ以上のビットを有するフィールドを含む。
【００３９】
既に述べたように、メモリーのモード・レジスタはメモリーの初期設定の段階においてコントローラによってプログラムされる。これに代わる態様として、初期設定後、規定のコマンド・シーケンスを利用してモード・レジスタをプログラムすることもできる。また、図６及び図７のモード・レジスタは、シングル・スロットまたはデュアル・スロット・システムを選択するためのデータ部分を含むシングル・スロットまたはデュアル・スロット・システムを表わすデータを含む一連の電気信号の形に実施されたメモリーのためのデータ信号を供給するコントローラによってプログラムされる。このデータ信号はシングル・スロットまたはデュアル・スロット・システムを選択するための少なくとも１つのビットを有するデータ部分を含む。シングル・スロット・システムを選択するように構成されたデータ部分は、受信した能動終端制御信号を無視するようにメモリーをプログラムする。別の実施態様では、データ信号が複数終端値の選択を表わすデータをも含み、１つまたは２つ以上のビットを有するデータ部分は７５オーム終端値または１５０オーム終端値を選択するのに使用される。別の実施態様では、データ信号がメモリー素子における能動終端制御の可能化または不能化を表わすデータをも含み、１つまたは２つ以上のビットを有するデータ部分が能動終端制御を可能化または不能化するのに使用される。
【００４０】
メモリーにおいて、１つまたは２つ以上のレジスタがコントローラまたはプロセッサによるメモリーの初期化または起動時にプログラムされる。モード・レジスタには上記データ部分を含むデータがプログラムされる。コントローラは、初期設定命令のためコントローラがアクセスするコンピュータ可読媒体に記憶されている命令に基づいてこれらのモード・レジスタをプログラムする。このコンピュータ可読媒体としては、コントローラまたはこれと協働する他のコンピュータ可読媒体中のメモリー・ロケーションが考えられる。コンピュータ可読媒体はメモリーの１つまたは２つ以上のレジスタに送信且つロードすべきビット群の決定、ビットの所定フォーマット配列、ビット群の出力などの方法を実行するコンピュータ実行可能命令を有する。一実施例では、ビット群がシングル・スロットまたはデュアル・スロット・システムを選択するための少なくとも１つのビットを含む。ビット群がシングル・スロット・システムの選択を指示すると、メモリーへのビット群の出力が、受信された能動終端制御信号を無視するようにメモリーをプログラムする。さらに、コンピュータ可読媒体は複数終端値を選択するための１つまたは２つ以上のビットをビット群中に含むことができる。例えば、７５オーム終端値または１５０オーム終端値を選択する１つまたは２つ以上のビットを設ける。別の実施態様では、ビット群が能動終端制御を可能化または不能化するための１つまたは２つ以上のビットをも含む。当業者ならば容易に理解できるように、コントローラまたはプロセッサによってアクセスされるコンピュータ可読媒体としては、ＣＤ−ＲＯＭｓ、不揮発性ＲＯＭ、ＲＯＭ、及びＲＡＭなどが挙げられるが、これらに限定されるものではない。
【００４１】
動作
図８は本発明の、能動終端制御方法の実施例を示すフローチャートである。図３のモジュール・レジスタ３００のようなモジュール・レジスタを図２のシステム２００においてモジュール・レジスタ２３２及び２５２として使用する。ブロック８０２において、モジュール・レジスタ２３２はシステム・コマンド・バス２６０をモニターする。ブロック８０４において、コマンドが所定のコマンドであるかどうかの決定がなされる。ブロック８０６において、所定コマンドがコマンド・バス２６０に存在すると判定されると、能動終端制御信号が発信される。
【００４２】
一実施例では、モジュール・レジスタ２３２が書込みコマンドまたは読出しコマンドに関してコマンド・バスをモニターすると同時に、コントローラ２２０から受信するチップ選択または反転チップ選択信号をもモニターする。２スロットまたは２モジュール・システムにおいては、モジュール・レジスタ２３２がチップ選択情報を利用して、ＡＴＣ信号を出力すべきかどうかを決定する。例えば、もし書込みまたは読出しコマンドがモジュール１のメモリーに対してなら、モジュール２において能動終端制御が実行される。即ち、図２において、メモリー・モジュール２３０に対して書込みまたは読出しコマンドがあれば、モジュール・レジスタ２５２はモジュール２５０におけるメモリー素子の能動終端を対象としてＡＴＣ信号を発信する。もしメモリー・モジュール２３０におけるメモリー素子を対象とする書込みコマンドなら、モジュール・レジスタ２５２は、モジュール・レジスタ２３２が書込みコマンドを発信するのと同時にＡＴＣ信号を発する。ＡＴＣ信号もモジュール・レジスタからの書込みコマンドも、システム・コマンド・バス２６０からの書込みコマンドがモニターされた１クロック・サイクル後に発信される。メモリー・もフール２３０におけるメモリー素子に対する読出しコマンドが検知されると、モジュール・レジスタ２３２が書込みコマンドを発信した１クロック・サイクル後にモジュール・レジスタ２５２がＡＴＣ信号を発する。モジュール・レジスタからの読出しコマンドはシステム・コマンド・バス２６０から読出しコマンドがモニターされた１クロック・サイクル後に発信され、ＡＴＣ信号はシステム・コマンド・バス２６０から読出しコマンドがモニターされた２クロック・サイクル後に発信される。
【００４３】
図９は本発明の、能動終端制御方法の他の実施例を示すフローチャートである。ブロック９０２において、能動終端制御信号が受信される。ブロック９０４において、能動終端がターン・オンされる。図５のメモリー５００のようなメモリーを、図２のシステム２００におけるメモリー・モジュール２３０、２５０に使用する。メモリー５００はＡＴＣ信号を受信し、１つまたは２つ以上のモード・レジスタ５２２における情報に基づいて能動終端をターン・オンする。能動終端のターン・オンは能動終端制御信号を受信した所定時間後に行われる。一実施例では、１つまたは２つ以上のモード・レジスタにプログラムされているＣＡＳ待ち時間及び追加待ち時間に関する情報に基づいて能動終端がターン・オンされる。ターン・オン時間は、ＡＴＣ信号受信後約ＣＡＳ待ち時間−２クロック・サイクル＋追加待ち時間に設定される。例えば、標準モード・レジスタにプログラムされているＣＡＳ待ち時間が４、追加待ち時間が０なら、能動終端はＡＴＣ信号受信の２クロック・サイクル後にターン・オンされる。別の実施態様として、追加待ち時間無しのメモリーの場合、能動終端はＡＴＣ信号受信から約ＣＡＳ待ち時間−２クロック・サイクル後にターン・オンされる。当業者には周知のように、能動終端の所定ターン・オン時間は上記以外のパラメータを使用しても設定することができる。上記以外の所定ターン・オン設定方法としては、ＣＡＳ待ち時間−追加クロック・サイクル数を利用する方法があり、この場合、追加クロック・サイクル数はＣＡＳ待ち時間以下の分数クロック・サイクルを含めて、如何なるクロック・サイクル数であってもよい。データが読み出されるか、書き込まれるまでの短い時間に亘って能動終端がターン・オンされることが重要である。
【００４４】
能動終端は所定時間に亘ってオン状態に維持される。所定時間は１つまたは２つ以上のモード・レジスタにプログラムされている情報を利用して決定される。一実施例では、所定時間が約バースト長さ÷２＋１1/2クロック・サイクルに設定される。ＤＤＲの場合、バースト長さを２で割る。１クロック・サイクルに１ビットが読み出されるかまたは書き込まれるメモリーの場合、バースト長さを２で割らない。例えば、標準モード・レジスタにプログラムされているバースト長さが８であれば、能動終端は５1/2クロック・サイクルに亘ってオン状態に維持される。当業者には周知のように、能動終端をオン状態に維持する所定時間は上記以外のパラメータを利用しても設定することができる。所定時間を設定する上記以外の方法として、バースト長さまたはバースト長さ÷２＋追加クロック・サイクル数を利用する方法があり、この場合、クロック・サイクル数は１、１.５、２、２.５などである。要はデータが読み出されるか、書き込まれるかした後も短い時間に亘ってオン状態のままとなるように追加クロック・サイクルを選択することである。
【００４５】
一実施例では、メモリーにおける能動終端制御方法が能動終端制御の可能または不可能を指示する情報にアクセスし、能動終端のターン・オン時間を決定し、能動終端のターン・オフ時間を決定するステップから成る。能動終端制御の可能または不可能を指示する情報はモード・レジスタ中の少なくとも１つのビットによって提供される。能動終端制御の可能または不可能を指示する１つまたは２つ以上のビットを待ち時間情報と組み合わせることによって、ターン・オン時間をＡＴＣ信号受信後の所定時間に設定する。一実施例では、この所定時間をＡＴＣ信号受信後のＣＡＳ待ち時間−２クロック・サイクル＋追加待ち時間に設定する。これに代わる態様では、追加待ち時間が存在しない、即ち、追加待ち時間がゼロである。ターン・オフ時間は能動終端制御の可能または不可能を指示する情報をバースト長さ情報と組み合わせることによって決定される。一実施例では、能動終端制御のためのターン・オフ時間を決定する方法が能動終端のターン・オフ時間後のバースト長さ÷２＋クロック・サイクルの倍数にターン・オフ時間を設定するステップを含む。クロック・サイクルの便利な倍数は約１1/2クロック・サイクルである。
【００４６】
図５のメモリー５００のようなメモリーは受信したＡＴＣ信号と、モード・レジスタにプログラムされているＣＡＳ待ち時間及びバースト長さを利用することによって能動終端のターン・オン及びターン・オフ時間を設定する。この動作は、データが書き込まれるかまたは読み出されるメモリー素子がメモリー・モジュールの一方のスロットに存在し、能動終端制御の対象となるメモリー素子がメモリー・モジュールの他方のスロットに存在する２スロット・システムに適している。１スロット・システムの場合、別の方法を採用することができる。一実施例では、メモリーにおける能動終端制御方法が、能動終端制御信号を受信し、受信した能動終端制御信号を無視し、書込みコマンドの受信と同時に能動終端をターン・オンするステップから成る。受信した能動終端制御信号の無視に関する情報はメモリーのモード・レジスタにプログラムされている。この情報は典型的にはメモリーのモード・レジスタに１つまたは２つ以上のビットとして記憶されている。
【００４７】
２スロット・システムの場合、ターン・オン及びターン・オフ時間はそれぞれ待ち時間情報及びバースト長さ情報を利用して設定される。能動終端は書込みコマンド受信からＣＡＳ待ち時間−２クロック・サイクル＋追加待ち時間後にターン・オンされる。一実施例では、能動終端ターン・オン時間の設定には、追加待ち時間は利用されない。書込みコマンド受信後の所定時間、能動終端はオン状態に維持される。一実施例では、所定時間が約バースト長さ÷２＋１1/2クロック・サイクルである。１スロット・システムの場合、読出し動作に終端は不要である。
【００４８】
図１０は本発明の拡張能動終端制御方法の他の実施例のフローチャートを示す。図２のシステム２００におけるメモリー・モジュール２３０２５０に図５のメモリー５００のようなメモリーを使用する。ブロック１００２において、メモリー５００は能動終端制御信号を受信する。ブロック１００４において、メモリー５００は能動終端のターン・オン時間を設定する。ブロック１００６において、メモリー５００は能動終端のターン・オフ時間を設定する。ブロック１００８において、メモリー５００は別の能動終端制御信号が着信していないかどうかを確認する。もし別の能動終端制御信号が着信していると、メモリー５００はブロック１００６に戻り、最新の能動終端制御信号に基づいて新しいターン・オフを設定する。もし別の能動終端制御信号が着信していなければ、ブロック１０１０において、メモリー５００は受信した最新のＡＴＣ信号に基づく最新の設定ターン・オフ時間に能動終端をターン・オフする。従って、能動終端がオン状態にある間に別のＡＴＣ信号を受信すると、メモリー５００は受信された最新のＡＴＣ信号に対して設定された所定時間に亘って能動終端をオン状態に維持する。メモリー５００は同じ手順及びパラメータを使用して、最初に受信したＡＴＣ信号に対応してターン・オフ時間を設定するために実行したのと同様に、新しく受信したＡＴＣ信号に基づいてターン・オフ時間を設定する。例えば、第２の、即ち、最新のＡＴＣ信号を受信すると、最新の能動終端制御信号と連携するターン・オン時間後、能動終端がバースト長さ÷２＋１1/2クロック・サイクルの間、状態を持続するようにタイマーがリセットされる。
【００４９】
図１１は本発明の能動終端制御方法の一実施例において、ＣＡＳ待ち時間が３、バースト長さが４としたメモリーへの書込み動作のタイミングチャートを示す。タイミングチャート１１００は説明の便宜上、図２のシステム２００に適用することができる。１１０２において、システム・コマンド・バス２６０に現れる書込みコマンドがモジュール・レジスタ２３２、２５２によって検知される。このコマンドはシステム・コマンド・バス２６０を有効に探索するモジュール・レジスタ２３２、２５２によって検知されるから、図１１にはコマンド・エッジ・コネクトとして示してある。１１０２において、ＷＲ  ＲＯはモジュール１における第１ランクのメモリーに対する書込みのための書込みコマンドを示すランク・ゼロへの書込みを意味する。ＷＲ  Ｒ２は第２モジュールにおけるメモリーへの書込みコマンドを示すランク２への書込みを意味する。従って、コマンド・バスにおいて、コントローラ２２０はスロット０におけるメモリー・モジュール２３０とスロット１におけるメモリー・モジュール２５０へ２つの異なる書込みコマンドを送信している。モジュール・レジスタ２３２はクロック制御されているから、１１０４において、モジュール・レジスタ２３２はメモリー・モジュール２３０に対する書込みコマンドをモジュール・レジスタを通過する１クロック・サイクルだけ遅延させる。１１０６において、メモリー・レジスタ２３２からスロット・ゼロへの書込みコマンドと同時にスロット１におけるメモリー・モジュール２５０に対してＡＴＣ信号を発信するが、モジュール・レジスタ２３２はメモリー・モジュール２３０に対してＡＴＣパルスまたは信号を送信しない。
【００５０】
１１０８において、スロット１におけるメモリー・モジュール２５０の能動終端がＣＡＳ待ち時間−２クロック・サイクルにおいてターン・オンする。ＣＡＳ待ち時間が３に設定されている場合、もうどう終端はスロット１におけるメモリー・モジュール２５０のメモリー素子がＡＴＣ信号を受信した１クロック・サイクル後にターン・オンする。１１１０において、ＤＱラインへのランク０、モジュール２３０のためのデータ入力はＤＱＳの制御下にＣＡＳ待ち時間−１＋バースト長さ４の時点において始まる。
【００５１】
１１１２において、第２モジュールにおけるメモリーへの書き込むコマンドを示すランク２への書込み信号がシステム・コマンド・バス２６０におけるコントローラ２２０から発信される。１１１４において、メモリー・モジュール２５０のモジュール・レジスタ２５２がスロット１におけるメモリー・モジュール２５０のメモリー素子に対する書込みコマンドを再発信する。
【００５２】
１１１６において、メモリー・モジュール２３０のモジュール・レジスタ２３２がスロット０におけるメモリー・モジュール２３０側のメモリー素子に対するＡＴＣパルスまたは信号を発信する。１１１８において、スロット０におけるメモリー・モジュール２３０のための能動終端は、ＣＡＳ待ち時間が３であるから、ＡＴＣ信号から１クロック・サイクル後に、スロット１におけるメモリー・モジュール２５０側のメモリー素子に対してメモリー・レジスタ２５２が再発信する書込みコマンドと同時的にターン・オンする。１１２０において、ＤＱラインへのランク２モジュール２５０のためのデータ入力はＤＱＳの制御下にＣＡＳ待ち時間−１＋バースト長さ４の時点において始まる。
【００５３】
スロット１におけるメモリー・モジュール２５０の能動終端はバースト長さ４÷２＋１1/2クロック・サイクルの時点でターン・オフし、ターン・オン後から約３1/2クロック・サイクルに相当する時間に亘ってオフの状態となる。図１１から明らかなように、スロット１におけるメモリー・モジュール２５０側の能動終端はスロット０におけるメモリー・モジュール２３０側のメモリー素子へのデータ書込みを完全にブラケットする。同様に、スロット０におけるメモリー・モジュール２３０の能動終端はスロット１におけるメモリー・モジュール２５０側のメモリー素子へのデータ書込みを完全にブラケットする。図１１に示すケースでは、スロット２におけるメモリー・モジュール２３０の能動終端と、スロット１におけるメモリー・モジュール２５０側の能動終端とがともにオン状態のままの時間がある。しかし、この時点でデータ・バスには何も無いから、問題は起こらない。システム２００のための有効な能動終端を１１２２に示したが、図示のとおり、時間的に近接する２つの書込みコマンド・シーケンスに対応できる状態に能動終端が有効に維持されている。
【００５４】
能動終端のターン・オン及びターン・オフは共通のＤＱバスを使用する異なるメモリー・モジュール側のメモリー素子において起こるから、両メモリー・モジュール側のメモリー素子は同じＣＡＳ待ち時間及び同じバースト長さで動作する必要がある。また、一方のメモリー・モジュールにおけるＡＴＣ信号の発生とこれに続く能動終端のターン・オン及びター・オフは、関連の時間枠において他方のメモリーにおいてコマンド動作が実行されることを想定して実行されるから、コマンド・バスは両メモリー・モジュールによって共用される必要がある。
【００５５】
図１２は本発明の拡張能動終端制御を含む能動終端制御方法の一実施例において、ＣＡＳ待ち時間３、バースト長さ４としたメモリーからの読出しのタイミングチャートを示す。説明の便宜上、タイミングチャート１２００を図２のシステム２００に適用することができる。１２０２において、システム・コマンド・バス２６０からモジュール・レジスタ２３２、２５２によって読出しコマンドが検知される。RD R０はモジュール１における第１ランクのメモリー読み出すための読出しコマンドを示すランク・ゼロ読出しを意味する。RD R２は第２モジュールにおけるメモリーに対する読出しコマンドを示すランク２読出しを意味する。モジュール・レジスタ２３２はクロック制御されているから、１２０４において、メモリー・モジュール２３０に対する読出しコマンドを、レジスタを通過する１クロック・サイクルだけ遅延させる。１２０６において、モジュール・レジスタ２３２がメモリー・モジュール２３０側のメモリーに対して読出しコマンドを発信してから１クロック・サイクル遅れて、メモリー・モジュール２５０側のモジュール・レジスタ２５２がＡＴＣ信号を発信する。このようなタイミング関係は共通のクロック信号を受信し、共通のバスをモニターするモジュール・レジスタ２３２、２５２によって容易に達成される。モジュール・レジスタ２３２は、読出し動作が行われるスロット０におけるメモリー・モジュール２３０に対してはＡＴＣパルスまたは信号を送信しない。
【００５６】
１２０８において、スロット１のメモリー・モジュール側で能動終端がＣＡＳ待ち時間−２クロック・サイクルにおいてターン・オンする。ＣＡＳ待ち時間が３に設定されている場合、能動終端はＡＴＣ信号受信から１クロック・サイクル後にターン・オンする。メモリーはターン・オフ時間を能動終端のターン・オンのバースト長さ÷２＋１1/2クロック・サイクル後に設定する。バースト長さが４なら、メモリーはターン・オフ時間を能動終端のターン・オンから３1/2クロック・サイクルに設定する。１２１０において、ランク０、モジュール２３０に関するＤＱラインからのデータ出力はＤＱＳの制御下にＣＡＳ待ち時間−１＋バースト長さ４の時点に始まる。
【００５７】
但し、スロット１におけるメモリー・モジュール２５０側のメモリー素子のための能動終端をターン・オンする前に、コントローラ２２０は１２１２において別の読出しコマンドを発信する。１２１４において、スロット０におけるメモリー・モジュール２３０のモジュール・レジスタ２３２は、システム・コマンド・バス２６０から読出しコマンドを検知した１クロック・サイクル後にメモリー・モジュール２３０側のメモリー素子に読出しコマンドを発信する。モジュール・レジスタ２３２が１２１４において読出しコマンドを発信した１クロック・サイクル後に、１２１６において、メモリー・モジュール２５０のモジュール・レジスタ２５２がスロット１におけるメモリー・モジュール２５０側のメモリーのための別のＡＴＣ信号を発信する。メモリー・モジュール２５０側でこの第２のＡＴＣ信号を受信したメモリーは、第２のＡＴＣ信号の着信に基づいて新しい能動終端ターン・オン及びターン・オフ時間を設定する。図１２から明らかなように、新しいターン・オン時間は１２１８における最初のターン・オン時間の２クロック・サイクル後に始まり、これは最初に受信されたＡＴＣ信号から設定されたよていのターン・オフ時間よりも前である。メモリーは受信された第２のＡＴＣ信号に基づいて能動終端のオン時間を再設定し、ターン・オフ時間を、新しく設定されたターン・オン時間の３1/2クロック・サイクルに設定する。従って、能動終端はスロット０におけるメモリー・モジュール２３０側のメモリーからの２つの読出し動作の間、そのままの状態を維持する。
【００５８】
１２２０において、スロット０におけるメモリー・モジュール２３０川のメモリーに対する第２の読出しコマンドに呼応して、ＤＱラインかランク０、モジュール２３０に関するデータが読み出される。このデータは最初の読出しコマンドに関してデータが読み出された直後に読み出される。図１２から明らかなように、２つの読出しコマンドに続くスロット０におけるメモリー・モジュール２３０からのデータ読出しはすべて、スロット１におけるメモリー・モジュール２５０側のメモリー素子においてオン状態にある能動終端によって完全に無視される。
【００５９】
１２２２において、スロット０におけるメモリー・モジュール２３０側のメモリーの読出し動作が完了する前に、コントローラ２２０はスロット１におけるメモリー・モジュール２５０側メモリーに対する読出しコマンドを発信する。１２２４において、モジュール・レジスタ２５２は、システム・コマンド・バス２６０から読出しコマンドを検知した１クロック・サイクル後に、メモリー・モジュール２５０側メモリー素子に対して読出しコマンドを発信する。メモリー・レジスタ２５２が読出しコマンドを発信した１クロック・サイクル後に、スロット０におけるメモリー・モジュール２３０側のメモリー素子に対してメモリー・モジュール２３２がＡＴＣ信号を発信する。ＣＡＳ待ち時間−２クロック・サイクルに相当する１サイクル遅れて、スロット０におけるメモリー・モジュール２３０側メモリー素子における能動終端が１２２８においてオン状態となる。１２３０において、ランク２モジュール２５０に関するＤＱラインからのデータ出力はＤＱＳの制御下に、ＣＡＳ待ち時間−１＋バースト長さ４の時点に始まる。１２３２において、システムの有効な能動終端はメモリー・モジュール２３０における読出し及びメモリー・モジュール２５０における読出しの双方をブラケットする。メモリー・モジュール２３０側メモリー素子の能動終端のオン状態はメモリー・モジュール側メモリー素子の能動終端のオン状態とは短時間に亘ってオーバラップする。このオーバラップ時間中、システム・データ・バスにはデータが存在しない。
【００６０】
すべての読出し及び書込みコマンドに対して、ターン・オン時間及びター・オフ時間は同じである。ＣＡＳ待ち時間が３、バースト長さが４の場合、ターン・オン時間はＡＴＣ信号受信から１クロック・サイクル後であり、ターン・オフ時間は能動終端のターン・オンから３1/2クロック・サイクル後である。もし追加の読出しまたは書込みコマンドがモニターされて、先行の読出しまたは書込みコマンドからの能動終端のターン・オフよりも前の新しい能動終端ターン・オン時間を設定する場合には、ターン・オフ時間が変更される。いうまでもなく、すべてのメモリーを３以外のＣＡＳ待ち時間及び４以外のバースト長さでプログラムすることによって相対的なターン・オン及びターン・オフ時間を変更することができる。しかし、既に述べたように、読出し及び書込み動作は一方のメモリー・モジュール側のメモリー素子において実行され、能動終端制御は他方のメモリー・モジュール側のメモリー素子において実行されるから、すべてのメモリーが同じＣＡＳ待ち時間、バースト長さを有し、共通のクロック信号を受信し、共通のバスと接続している場合、すべてのメモリーにとってタイミング条件が同じになる。
【００６１】
結論
モジュール・レジスタを介しての能動終端制御の構造と方法を、発明の範囲を制限する形ではなく、実施例の形で説明した。方法と装置はメモリーに能動終端制御信号を供給するモジュール・レジスタを介してメモリーにおける能動終端に作用する。モジュール・レジスタは読出し及び書込みコマンドを検知するためシステム・コマンド・バスをモニターする。読出しまたは書込みコマンドを検知すると、モジュール・レジスタはメモリーに対して能動終端制御信号を発信する。メモリーはメモリーの１つまたは２つ以上のモード・レジスタにプログラムされている情報に基づいて能動終端をターン・オンする。一実施例では、ＣＡＳ待ち時間を利用してターン・オン時間を設定し、バースト長さを利用して、能動終端のターン・オンに続くターン・オフ時間を設定する。
【００６２】
この方法を採用すれば、システムにおける終端となるポートまたはピンの数が少なくて済む。種々の実施例において、システム・コントローラ、マザーボード、またはメモリー・モジュールに、能動終端制御のためのピンが不要である。
【００６３】
特定の実施例を図示、説明したが、これらの特定実施例を、同じ目的を達成するように計算された構成で置き換えることができることは当業者なら理解できるであろう。本願は本発明の如何なる翻案または変更態様をも包含させることを意図するものである。以上の記述内容は説明のためのもであって、制限的なものではない。以上の説明に照らして、当業者なら上記実施例を組み合わせることも他の実施態様を見出すことも容易であろう。本発明の範囲は上記構造及び製法の他の目的への応用をも含む。本発明の範囲は添付の特許請求の範囲及びこれと等価の案によって決定される。
【図面の簡単な説明】
【００６４】
【図１】本発明の、メモリー・モジュールに接続されたコントローラを有するコンピュータ・システムを含む情報ハンドリング・システムの一実施例を示す。
【図２】本発明の、メモリー・モジュールに接続されたコントローラを有するシステムの一実施例を示す。
【図３】本発明の、復号回路、複数の入力コマンド・ポート、チップ選択ポート、及びアクティブ・ターミネーション制御（ＡＴＣ)信号を出力するアクティブ・ターミネーション・ポートを有するモジュール・レジスタの一実施例を示す
【図４】本発明の、チップ選択ポート及び複数の入力コマンド・ポートにおいて受信される信号に基づくアクティブ・ターミネーション制御信号を出力するアクティブ・ターミネーション・ポートを有するモジュール・レジスタの復号回路の一実施例を示す。
【図５】本発明の、能動終端制御ポートと接続して能動終端制御信号を受信するとともに、能動終端と接続している制御論理回路を含むメモリーの一実施例を示す。
【図６】本発明の、能動終端制御のための情報を提供するビット・ロケーションを有する拡張モード・レジスタの一実施例を示す。
【図７】本発明の、能動終端制御のための情報を提供するビット・ロケーションを利用するモード・レジスタの一実施例を示す。
【図８】本発明の能動終端制御方法の一実施例のフローチャートを示す。
【図９】本発明の能動終端制御方法の他の実施例のフローチャートを示す。
【図１０】本発明の拡張能動終端制御方法の他の実施例のフローチャートを示す。
【図１１】本発明の能動終端制御方法の一実施例において、ＣＡＳ待ち時間３、バースト長さ４としたメモリーへの書込みのタイミングチャートを示す。
【図１２】本発明の拡張能動終端制御を含む能動終端制御方法の一実施例において、ＣＡＳ待ち時間３、バースト長さ４としたメモリーからの読出しのタイミングチャートを示す。
【図１】
2008103073.tif 000003
【図２】
2008103073.tif 000004
【図３】
2008103073.tif 000005
【図４】
2008103073.tif 000006
【図５】
2008103073.tif 000007
【図６】
2008103073.tif 000008
【図７】
2008103073.tif 000009
【図８】
2008103073.tif 000010
【図９】
2008103073.tif 000011
【図１０】
2008103073.tif 000012
【図１１】
2008103073.tif 000013
【図１２】
2008103073.tif 000014
【手続補正書】
【提出日】平成19年11月27日(2007.11.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
能動終端制御信号を受信し；
能動終端制御信号の受信に呼応して１つまたは２つ以上のモード・レジスタ中の情報に基づいて能動終端をターン・オンするステップから成る、メモリーにおける能動終端制御方法。