JP4817660B2 - データバス出力制御用の装置及び方法 - Google Patents

データバス出力制御用の装置及び方法 Download PDF

Info

Publication number
JP4817660B2
JP4817660B2 JP2004559105A JP2004559105A JP4817660B2 JP 4817660 B2 JP4817660 B2 JP 4817660B2 JP 2004559105 A JP2004559105 A JP 2004559105A JP 2004559105 A JP2004559105 A JP 2004559105A JP 4817660 B2 JP4817660 B2 JP 4817660B2
Authority
JP
Japan
Prior art keywords
data
bus
signal
agent
transaction
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
Application number
JP2004559105A
Other languages
English (en)
Other versions
JP2006510096A (ja
Inventor
カーツ,ツヴィカ
オレンスティエン,ドロン
ユッフェ,マルセロ
Original Assignee
インテル コーポレイション
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by インテル コーポレイション filed Critical インテル コーポレイション
Publication of JP2006510096A publication Critical patent/JP2006510096A/ja
Application granted granted Critical
Publication of JP4817660B2 publication Critical patent/JP4817660B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4072Drivers or receivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Power Sources (AREA)
  • Dram (AREA)
  • Small-Scale Networks (AREA)
  • Microcomputers (AREA)
  • Amplifiers (AREA)
  • Logic Circuits (AREA)
  • Bus Control (AREA)

Description

この出願は、割り当てられた出願番号10/317,798の代理人整理番号42.P15268の2002年12月11日に出願された“An Apparatus and Method For Address Bus Power Control”という題名の同時継続出願に関係する。
本発明の1つ以上の実施例は、概して、集積回路とコンピュータシステム設計とに関するものである。特に、本発明の1つ以上の実施例は、データバス出力制御用の方法及び装置に関するものである。
一般的に、コンピュータシステム内の装置間の通信は、そのような装置を相互接続する1つ以上のバスを使用して実行される。これらのバスは、2つの装置を結合する専用バスでもよく、複数のユニット及び装置(例えばバスエージェント)により多重化される非専用バスでもよい。更に、コンピュータシステム内のバスは、特定の種類の情報を伝送することに専用でもよい。例えば、CaliforniaのSanta ClaraのIntel Corporationにより開発されたx86マイクロプロセッサアーキテクチャは、アドレス信号とデータ信号と制御信号とをそれぞれ伝送するアドレスバスとデータバスと制御バスとを備えた3つのバスシステムを有する。
Pentium(登録商標)Pro、Pentium(登録商標)II、Pentium(登録商標)III又はPentium(登録商標)4のような進歩したアーキテクチャ及びプロセッサを使用したコンピュータシステムにおいて、バスのトランザクションは一般的にパイプライン型に生じる。特に、次のメモリアクセスは、以前のトランザクション要求が出された後に開始してもよく、バストランザクションの全ての構成要素又はフェーズは、他のバストランザクションが始まり得る前に完了する必要はない。従って、複数のバスエージェントからの要求は、常に保留中でもよい。バストランザクションのパイプライン方式は、別々のデータ及びアドレスバスにより促進される。要求のアドレスがアドレスバスで送信されると、アドレスバスで以前に出されたアドレスに対応するデータ(又は信号)がデータバスに戻されてもよい。
コンピュータシステム内のスループットを増加させるために、膨大な研究とシステムアーキテクチャ設計の取り組みが向けられてきた。データパイプライン方式、順序が狂った実行(out-of-order execution)等のような技術は、かなり高いクロックレート及びワールドクラスの性能を備えた進歩したアーキテクチャ及び処理を可能にする。
更に、この研究及びアーキテクチャ再設計は、ラップトップコンピュータやハンドヘルド装置や携帯情報端末(PDA:personal digital assistant)等のモバイル市場を可能にした。残念ながら、このようなモバイルプラットフォームは、他の電源が利用可能でないときに、各モバイルプラットフォームにより使用されるバッテリー寿命により決定される実行時間に限度があることがある。モバイルプラットフォームの複雑性に応じて、付属バッテリーからの電力リソースは比較的短い時間に使い尽くされることがある。部分的には、このことは、プラットフォームの多数の電子要素が使用されていないときでも、電力を消費し続けるという事実に起因する。
本発明の多様な実施例は、添付図面の図において、限定ではなく一例として示されている。
完全な理解を提供するために、以下の説明において、ロジックの実装や、信号及びバスのサイズ及び名前や、システム構成要素の形式及び相互関係や、ロジックの分割/統合の選択肢のような多数の特定の詳細が示されている。しかし、本発明は、そのような特別の詳細なしに実行され得ることが当業者にわかる。その他に、本発明をあいまいにしないように、制御構成及びゲートレベル回路が詳細に示されていない。包含される説明で、過度の実験を行うことなく、当業者は適切な論理回路を実装することが出来るであろう。
データバス出力制御用の方法と装置について説明する。一実施例において、その方法は、トランザクションのデータフェーズの前に、出力制御信号に従ってプロセッサのデータバス入力センス増幅器をイネーブルにすることを有する。イネーブルにすると、データバス入力センス増幅器は、データフェーズ中に提供されるデータを取得することができる。次に、所定の範囲内に更なるデータフェーズが存在しない場合に、プロセッサのデータバス入力センス増幅器は、データフェーズが終了した後に、出力制御信号に従ってディセーブルになる。その結果、データバスの休止期間中にデータバス入力センス増幅器による電力消費が低減又は回避され得る。
図1は、例示的なコンピュータシステムの従来のプロセッサ(CPU)110及びメモリコントローラ(MCH:memory controller)構成を示した図である。図示のように、CPU110は、プロセッサシステムバス又はフロントサイドバス(FSB:front-side bus)102のデータ線を介して受信したデータを取得するように動作する入力バッファ112を有してもよい。CPU110の入力バッファ112は、FSB102のデータバス部分を介してCPU110に送信されるセンスデータに結合され得る複数のデータバス入力センス増幅器114(114-1,...,114-N)を有する。
CPU110について、データバス入力センス増幅器114は、次のシステム初期化で継続的にイネーブルである。イネーブルの間に、データ入力センス増幅器114は電力を消費し、モバイルプラットフォームの場合には、バッテリーの浪費を増加させ得る。更に、センス増幅器は、継続的にイネーブルの場合には周辺温度を増加させ得る。
次に図2を参照して、一実施例のプロセッサ(CPU)について説明する。図2に示す実施例では、CPU300はモバイルプラットフォームCPUである。他の実施例では、CPU300は、例えばデジタル信号プロセッサ、グラフィックスプロセッサ、内蔵プロセッサ等を含む異なる形式のプロセッサでもよいことがわかる。
図示のように、CPU300は、併せて入力バッファ310として示されている入力バッファを有する。入力バッファ310は、Nのデータ入力センス増幅器320(320-1,...,320-N)を有する。センス増幅器320は、内部データバス信号線(pdata)322(322-1,...,322-N-1)に結合された出力を有する。入力バッファ310はまた、更なる内部データ線及び/又は制御線に結合されてもよい。一実施例では、センス増幅器320は、フロントサイドバス(FSB)330の複数のデータ線FSB D[0..M]に結合された入力を有する。
一実施例では、FSB330は、Pentium(登録商標)4プロセッサのフロントサイドバスプロトコルと互換性があり、その特徴は、2001年11月1日に公開された同時継続のSingh他の米国特許出願第US2001/0037421A1に記載されている。FSBがPentium(登録商標)4プロセッサのフロントサイドバスと互換性がある場合、FSB330は、64のデータ線FSB D[0..63]を有する。他の実施例では、FSB330は異なるバスプロトコルと互換性があってもよく、及び/又は異なる数のデータ線を有してもよい。
続けて図2を参照すると、一実施例では、入力バッファ310は、バスクロック(BCLK)信号とFSB330に関連するデータバス出力制御(DPWR#)信号350とを受信するように結合されたラッチ352を更に有する。一実施例では、DPWR#信号は、例えばFSB330でCPU300に更に結合されたチップセット装置(図示なし)から受信されてもよい。ラッチ352の出力は、データ入力センス増幅器320のそれぞれの入力をイネーブルにするように結合される。
動作中に、BCLK信号が変化すると、ラッチ352は、DPWR#信号の状態をラッチする。DPWR#信号がアサートされることに応じて、入力バッファ310のデータ入力センス増幅器320は、データ線FSB D[0..N]を介してFSB330から要求のデータを取得するようにイネーブルになる。逆に、DPWR#信号がアサート停止されることに応じて、入力データセンス増幅器がディセーブルになる。入力センス増幅器がディセーブルになると、その電力消費(主として、入力バッファにより電流提供されるバイアスによる温度浪費出力(TDP:thermal dissipation power))が低減される。
図3は、図2のCPU300が有利に使用され得る一実施例の例示的なシステム500のブロック図である。CPU300に加えて、システム500は、一実施例ではメモリコントロールハブ(MCH:memory control hub)510と呼ばれるメモリコントローラと、一実施例ではI/Oコントロールハブ(ICH:I/O control hub)530と呼ばれる入出力(I/O)コントローラとを有する。MCH510とICH530とを併せてチップセット502と呼ばれることもある。MCH510は、FSB330を介してCPU300に結合され、バス150を介してICH530に結合されている。メインメモリ520と1つ以上のグラフィックス装置550もMCH510に結合されている。一実施例では、グラフィックス装置はMCHに統合されてもよい。
システム500の入出力サブシステムは、ハードディスクドライブ(HDD)210のように、ICH530に結合された多様な異なる形式の入出力装置を有してもよく、1つ以上のUSBポート190は、ユニバーサルシリアルバス(USB)192を介してICH530に結合されてもよく、及び/又は1つ以上の周辺構成要素相互接続(PCI:pheripheral component interconnect)装置180は、対応するバス182を介してICHに結合されてもよい。更に、ある実施例では、1つ以上のオーディオチャネル170及び/又はローカルエリアネットワーク(LAN)インタフェース220もまたICH530に結合されてもよい。
一実施例では、FSB330は、Pentium(登録商標)4プロセッサのフロントサイドバスと互換性があり、アドレス、データ及び制御部分(代替として、アドレス、データ及び制御バスと呼ばれることもある)を有するパイプライン方式データバスである。
ここで、FSB330に結合された装置はまた、FSB330に関するバスエージェントとも呼ばれる。一実施例では、3つの形式のエージェント(要求エージェント、応答エージェント及び検査エージェント(snoop agent))がFSB330に存在してもよい。要求エージェントは、例えばメモリ又はI/O読み取り若しくは書き込み要求のような要求を出すことによりトランザクションを開始する装置である。応答エージェントは、例えばI/O対象又はメモリ対象のようなトランザクションの対象である。検査エージェントは、一般的にキャッシュメモリに関連するバスの装置である。一実施例では、バスエージェントは異なるように分類されてもよい。
FSB330がパイプライン式バスの場合、バストランザクションはフェーズに分離されてもよく、複数のトランザクションが重複してもよい。特に、バストランザクションの全ての構成要素又はフェーズは、他のバストランザクションが始まり得る前に完了する必要はない。
ここで使用される“トランザクション”という用語は、単一のバスアクセス要求に関係するバス活動を示している。トランザクションは複数のフェーズを有し、それぞれのフェーズが特定の形式の情報を通信するバス信号の特別のセットに関連してもよい。一実施例では、例示的なフェーズは、例えば、仲裁フェーズ、要求フェーズ、検査フェーズ、応答フェーズ及び/又はデータフェーズを有してもよい。
要求フェーズでは、要求エージェントは、FSB330で要求制御及びアドレス情報を駆動する。その後の検査フェーズの間に、検索後のデータがローカルに格納されているか否か、及び/又は以前に出されたトランザクションに関してトランザクションが適切に完了する可能性があるか否かについて決定する。応答フェーズでは、応答エージェントは、要求トランザクションが成功したか失敗したかを示す情報を要求エージェントに報告する。要求トランザクションがデータ伝送を有する場合、データ伝送フェーズとも呼ばれるデータフェーズが、データレディ(DRDY#)信号のアサートに応じて開始されてもよい。
図3に示すように、一実施例では、前述のDPWR#信号は、FSB330の一部としてMCH510によりアサート及びアサート停止される。一実施例では、MCHは、DPWR#信号のアサート及びアサート停止を行わせるコントローラ512(ここではバスインタフェースとも呼ばれる)を有する。代替実施例では、コントローラ512は、FSB330に結合された他の装置/エージェントに備えられてもよい。コントローラ512がDPWR#信号のアサート及びアサート停止を行わせる方法については、以下に詳細に説明する。
一実施例において、コントローラ512は、FSB330にデータ活動が存在しない間にCPU300の入力データセンス増幅器320がディセーブルになり、データ伝送動作の前にイネーブルになるように、DPWR#信号のアサート及びアサート停止を行わせる。一実施例では、コントローラは、トランザクション要求の形式に基づいて、要求データを取得するために予期されるデータアクセス時間を決定する。予期されるデータアクセス時間に基づいて、コントローラ512は、提供されるデータを検知したときにCPU300のセンス増幅器320がイネーブルになるように、DPWR#信号のアサートを行わせる。データフェーズが完了し、所定の時間フレーム(例えば所定数のクロック周期)内に入力データフェーズが存在しない場合、コントローラ512は、センス増幅器の電力消費を減少させるために、DPWR#信号のアサート停止を行わせる。
図4は、一実施例のDPWR#信号を示したタイミング図である。タイミング図は、BCLK信号を提供するために使用され得るバスクロック(BCLK)信号410と、アドレスストローブ(address strobe)信号(ADS#)420と、DPWR#信号350と、データビジー信号(DBSY#)430と、データレディ(DRDY#)信号440(これらのそれぞれはFSB330の一部である)と、FSB330のデータバス部分のデータ活動を示す信号455とのクロック周期T1-T14を示している。FSBがPentium(登録商標)4プロセッサのフロントサイドバスプロトコルと互換性がある実施例では、DPWR#信号以外の前述の信号は、対応するPentium(登録商標)4プロセッサのフロントサイドバス信号に従って定められて動作する。
前述の信号で、信号名の終わりの“#”は、関連する信号がアクティブ・ローの信号(すなわち、ロジック低レベルになるとアサートされると考えられる)であることを示している。同様の機能を提供するために、関連の回路に対応する変更を行い、代わりにアクティブ・ハイの信号が使用されてもよいことがわかる。更に、一実施例では、FSB330信号の1つ以上は、フルスイング(full swing)より小さい電圧スイングを有する低電圧スイング信号(swing signal)である。
図4に示す例のトランザクションでは、CPU300のような要求エージェントは、T1でADS#信号をアサートすることにより、読み取りトランザクション要求を開始する。MCH510のような応答エージェントと、一実施例ではMCHのコントローラ512は、関連のアドレス情報をサンプルし、要求の読み取りトランザクションの形式を検出する。要求の読み取りトランザクションの形式に基づいて、コントローラ512は、データ配信クロック周期を決定するために、要求に関連する予期されるデータアクセス時間を決定する。
次に、コントローラ512は、特定のデータ配信クロック周期の所定数のクロック周期の前にDPWR#信号をアサートし、データがデータバスに到達する前に要求エージェント(CPU300)のセンス増幅器がイネーブルになるのに十分な時間を提供する。一般的に、特定のデータクロック周期は、トランザクションを処理する際の応答エージェント装置により費やされる処理時間の関数である。例えば、“読み取り”トランザクションが12クロック周期を費やすことを応答エージェント(例えばMCH510)が認識すると、12周期の終了の前の“読み取り”トランザクションの要求の後にDPWR#信号のアサートを行わせる(それにより、要求データを受信したときに要求エージェントのセンス増幅器がアクティブになる)。
応答エージェントは、異なるトランザクションについて異なる応答時間を示してもよいことに留意すべきである(例えば、それぞれ図5A及び5Bに関して以下に詳細に示すように、ページエンプティ(page empty)の場合の“部分読み取り”トランザクションについて12クロック周期に対して、“ページミストランザクション”について14クロック周期)。結果として、多様なトランザクションについて応答エージェントの応答時間の特徴を通じて、コントローラ512は、サポートされるトランザクションの形式毎に応じてDPWR#信号のアサートを行わせる。要求エージェントは多様な形式の基礎の技術(例えば、異なる半導体製造処理)で実装されてもよく、同様に、トランザクションで費やされる時間量も実施例毎に異なってもよい。従って、図4及び5A〜5Fについて以下に続く例においてDPWR#信号がアサートされる特定のクロック周期時間は、多数の異なる可能な実施例から選択されることがわかる。
図4に示す例では、説明目的で、コントローラ512がデータ配信クロック周期をT12に決定することを仮定する。更に、図示の例示的な実施例では、クロック周期の所定の数は、図示のようにコントローラがT10でDPWR#信号をアサートするように2であることを仮定する。他の実施例では、要求データの予期される有用性からDPWR#信号のアサートを分離するために、異なる数のクロック周期又は他の指標の時間が使用されてもよいことがわかる。
更に、ある実施例では、データが到達したときにデータセンス増幅器がレディになっていることを更に確保するために、応答エージェントはデータ伝送の前の所定数のクロック周期より前であるが、実際のデータ伝送の前の所定数のクロック周期より遅くないときにDPWR#信号をアサートしてもよい。このような実施例では、DPWR#信号のアサートと、返信されてデータバスでレディのデータとの間の所定の分離が維持されることを確保するために、応答エージェントはデータ伝送を遅延してもよい。
CPU300は、T11でバスクロック信号の立ち上がり時にDPWR#信号をサンプルし、クロック周期T12でイネーブルになるように、センス増幅器320にDPWR#信号を提供する。DRDY#信号はT12に応答エージェントによりアサートされ、要求データがCPU300により取得される。
データが伝送されると、応答エージェント(この例ではMCH510)は、DRDY#信号がアサート停止されるようにする。ある実施例では、コントローラ512はまた、並行してDPWR#信号のアサート停止を行わせてもよい。他の実施例では、以下に詳細に説明するように、CPU300を対象とする更なるデータフェーズが所定の時間フレーム内に予期される場合には、DPWR#信号はアサートになったままでもよい。
CPU300は、クロック周期T14でDPWR#信号のアサート停止を検出し、その後すぐにセンス増幅器320をイネーブルにさせる。このように、図4を参照して説明する例示的なトランザクションでは、センス増幅器は全体のトランザクションの13クロック周期から約2クロック周期の間にアクティブ(すなわち、イネーブル)になり、その結果、従来技術と比較して電力の節約を生じる。
いくつかの実施例の動作を更に示すため、図5Aは、一実施例に従ってページミスの間のDPWR#とデータ入力センス増幅器320との動作を示すタイミング図である。前記のように、応答エージェントは、バスクロックT1でADS#信号のアサートに続いてトランザクションアドレス情報をサンプルすることにより、読み取りトランザクションを検出する。図示の実施例では、要求データのページミスにより、応答エージェントは14クロック周期後(T14)に要求データを返信する。その結果、クロック周期T14の間にイネーブルになるまで、データ入力バッファセンス増幅器320はディセーブルのままになる。従って、コントローラ512は、T14としてデータフェーズクロック周期を計算してもよい。
DPRW#信号のアサートと要求データの到達とを分離する所定数のクロック周期が2である前記の例を続けると、コントローラ512は、バスクロック周期T12でDPWR#信号350のアサートを行わせる。要求エージェントは、バスクロックT13の立ち上がりでDPWR#信号をサンプルし、バスクロック周期T14でセンス増幅器をイネーブルにすることにより応答する。バスクロックT16で、応答エージェントはDRDY#信号440をアサート停止し、コントローラ512はDPWR#信号350のアサート停止を行わせ、バスクロックT16でデータフェーズの終了を示す。従って、図5Aに示すように、データ入力バッファセンス増幅器のイネーブル及び/又はディセーブルに従って提供される電力の節約は、この特定の例では約12クロック周期である。
一実施例において、データフェーズ終了クロック周期T16の間にセンス増幅器320をイネーブルにし、DRDY#信号のアサート停止に続く次のクロックでデータの取得を可能にするソース同期ストローブ方法(source synchronization strobe method)を可能にするように、DPWR#信号はアサートされたままになってもよい。
図5Bは、一実施例に従って部分読み取り動作を示したタイミング図である。図示のように、バスクロックT1でADS#信号420がアサートになり、その結果、バスクロックT12でデータフェーズを生じる。前記の例で説明した同じ2つのクロックウィンドウを仮定すると、図示のようにDPWR#信号がクロック周期T10でアサートになりクロック周期T13でアサート停止になるのに応じて、入力バッファ310のデータ入力センス増幅器320はバスクロックT12でイネーブルになり、バスクロックT14でディセーブルになる。この例では、トランザクションの合計13のうち約2クロック周期の間にデータセンス増幅器320はイネーブルになり、それにより、従来の手法と比較して入力バッファで電力の節約が実現される。
図5Cは、一実施例に従ってキャッシュラインバースト読み取り(cache line burst read)の例示的な動作を示したタイミング図である。図示のように、コントローラ512は、バスクロック周期T10にDPWR#信号350のアサートを行わせ、バスクロック周期T11にCPU300によりサンプルされ、それにより、伝搬遅延によって、データ入力センス増幅器320がバスクロック周期T12でイネーブルになる。この例では、データバス330が次のクロック周期(T13)も同様に応答エージェントにより占有されることを示すために、応答エージェントはDBSY#信号430をアサートする。従って、データ入力センス増幅器はクロック周期T12及びT13の間にデータ472を取得し、DRDY#が同じ時間周期の間にアサートされる。DPWR#信号は(DRDY#のアサート停止と実質的に並行して)クロック周期T14にアサート停止され、センス増幅器320はクロック周期T15の間にディセーブルになる(図示なし)。
図5Dは、一実施例に従ってDRDY#信号440がアクティブでない間のバースト読み取りトランザクションを示したタイミング図である。一実施例において、システム500は、例えば64ビットデータバス幅を備えた単一チャネルDDRプラットフォーム(制御及びソース同期信号を除く)として構成されてもよい。この例では、DDR伝送レートは例えばバスクロック周期毎に16ビットでもよく、FSB330がPentium(登録商標)4プロセッサのフロントサイドバスと互換性があり、4ポンプ(quad pumped)である場合、FSB伝送レートは1バスクロック毎に32バイトでもよい。
図示のように、コントローラ512は、バスクロック周期T10でDPWR#信号のアサートを行わせ、バスクロック周期T11でCPU300によりサンプルされ、それにより、伝搬遅延によって、データ入力センス増幅器320がバスクロック周期T12でイネーブルになる。不安定な伝送レートのため、T13にデータ伝送のギャップが存在する。換言すると、バスクロックT14まで、応答エージェントは伝送の準備ができた次の32バイトを有していない。従って、DRDY#信号440はクロック周期T13の間にアサート停止され、次の32バイトが伝送の準備ができるクロック周期T14の間に再アサートされる。図示のように、DBSY#信号430は、T12及びT13にアサートされ、T14にFSB330データバスが応答エージェントにより占有されることを示す。従って、コントローラ512はT10にDPWR#信号350のアサートを行わせ、最後のDRDY#信号440と並行してT15に信号のアサート停止を行わせる。
図5Eは、一実施例に従って、間にアイドルクロックなしに連続して読み取りデータ返信が出される例のパイプライン型バスを示したタイミング図である。図示の例では、システム500はデュアルチャネルDDRメモリ構成を提供するが、他の実施例では他のメモリ手法が使用されてもよい。図示のように、データフェーズ伝送ストリームの2クロック周期前に、コントローラ512はバスクロック周期T10にDWDR#信号350のアサートを行わせる。図示の例では、3つの読み取りトランザクション(R1とR2とR3)が要求されている。
トランザクションR1に関連するデータ伝送は、バスクロック周期T12に開始してバスクロックT13に終了する。トランザクションR2に関連するデータ伝送は、バスクロックT14に開始してバスクロックT15に終了する。図示の実施例では、全データストリームでセンス増幅器がオープンなままであることを可能にするために、コントローラ512は連続したデータ伝送の間にDPWR#信号350のアサート停止を行わせない。コントローラ512は、トランザクションR3の最後のDRDY#信号440と並行して、バスクロックT16にDPWR#信号350のアサート停止を行わせる。図示の実施例では、ソース同期受信データの取得を可能にするために、バスクロック周期T16に待ち状態が挿入され、バスクロックT17(図示なし)までDPWR#信号350がCPU300によりサンプルされない。他の実施例では、データレディ信号とデータバス出力制御信号のアサート停止との間に異なる数の待ち状態が挿入されてもよい。
図5Fは、一実施例に従って単一のチャネルDDRメモリからのパイプライン型読み取りを示したタイミング図である。図5Fに示すように、3クロック周期だけ離れて2つの読み取りトランザクション(R1及びR2)が出される。トランザクションR1はバスクロックT1に出され、トランザクションR2はバスクロック周期T4に出される(図5Fに図示なし)。関連のデータはバスクロック周期T12の始めに返信される。この特定の例では、要求エージェントが1チャネルDDRメモリから読み取りデータを要求したという事実のため、応答エージェントは待ち状態をアサートするように要求される。従って、コントローラ512は、トランザクションR2の最後のDRDY#信号440のアサート停止と並行して、バスクロックT18にDPWR#信号350のアサート停止を行わせる。図示のように、コントローラ512は、第1のDRDY#信号440の発行まで、DPWR#信号350のアサート間に所定のクロックギャップ(この例では2クロック周期)を提供するために、バスクロックT15にDPWR#信号のアサート停止を行わせない。
更なる代替実施例は、オンチップ・ライトバックバッファ(on-chip write back buffer)を有するチップセットの場合を含み、コントローラ512は、アドレスストローブ(例えばADS#信号)のアサートから約3クロックの検査フェーズと共に、DPWR#信号のアサートを行わせる。一実施例では、このことにより、バスプロトコルにより割り当てられた時間にデータ伝送が可能になる。一実施例では、このようなバスプロトコルにより許可された時間は、アドレスストローブ(ADS#)信号のアサートから5クロックであり、検査結果に2クロック周期を提供する。
更に、一実施例において、図4に示すようなコンピュータシステム500では、各バスエージェントは、現在処理中の全てのトランザクションの記録と、各トランザクションが現在あるフェーズと、(存在する場合には)各エージェントが各フェーズで有する役目とを維持する。従って、適切なトランザクションの各段階でバス(FSB330)と適切に相互作用するために、各エージェントは、I/Oトランザクションキュー又は順序キュー(IOQ:in-order queue)を維持する。従って、トランザクションが応答を保証され、トランザクションが終了することを示すと、要求エージェントはIOQからトランザクションを削除する。従って、代替実施例では、要求エージェントのIOQが空になるまでDPWR#信号はアサートのままでもよい。
特定のバスプロトコルと特定の信号とを使用してデータバス出力制御の相対タイミングのいくつかの特定の例について説明したが、異なるバスプロトコル及び信号を用いて代替実施例のデータバス出力制御手法も実装され得ることがわかる。更に、CPU読み取りトランザクションを参照してデータバス出力制御信号について主に説明したが、多様な実施例のデータバス出力制御手法がデータを要求エージェントに配信させる他のトランザクションにも同等に適用可能であることもわかる。例えば、あるシステムでは、アドバンスト・プログラマブル割込みコントローラ(APIC:advanced programmable interrupt controller−図示なし)トランザクションが“書き込み”トランザクションとして定められてもよいが、CPUへの返信データ及び一実施例のデータバス出力制御手法は電力消費を低減するように適用され得る。
データバス出力制御方法は、図6に示すフローチャート600に記載されている。処理ブロック602において、応答エージェントは、(読み取りトランザクションのように)データが要求エージェントに返信されるトランザクションを検出する。処理ブロック604において、応答エージェントはいつデータが配信される予定であるかを決定する。処理ブロック606において、応答エージェントはDPWR#信号のアサートを行わせ、要求エージェントのセンス増幅器がデータを受信することを可能にする。
処理ブロック608において、応答エージェントは、要求エージェントへのデータ伝送の終了に基づいて、いつDPWR#信号のアサート停止を行わせるかを決定する。処理ブロック610において、応答エージェントは、データ入力センス増幅器をディセーブルにさせるDPWR#信号のアサート停止を行わせる。
一実施例において、読み取りトランザクションのデータフェーズが終了すると、DPWR#信号はアサート停止になる。一般的に、読み取りトランザクションのデータフェーズの終了は、DRWY#信号がアサート停止になったときに生じる。しかし、一実施例では、データ入力センス増幅器のディセーブルは、DRDY#信号のアサート停止に続く1つ以上のクロック周期待ち周期だけ遅延し、バスでのソース同期受信データの伝搬を可能にするために使用され、次のDRDY#信号のアサート停止に提供される。
図7は、一実施例に従って出力制御信号DPWR#のアサート停止を行わせる更なる技術を示したフローチャートを示している。処理ブロック700において、応答エージェントは、(要求エージェントに返信されるデータを生じる)更なる今後のトランザクションがあるか否かを決定する。そのような更なるトランザクションが検出されない場合、処理ブロック716において、応答エージェントは、現在のトランザクションのデータフェーズ終了のクロック周期が検出されたか否かを決定する。検出された場合には、処理ステップ714において、出力制御信号DWPR#がアサート停止になる。
一方、(要求エージェントにデータを返信する)更なるトランザクションが検出された場合、処理ブロック704において、更なるトランザクションについてデータフェーズ終了クロック周期が決定される。データフェーズ終了クロック周期が検出されると、処理ブロック706において、更なるトランザクションのデータ終了クロック周期と現在のトランザクションのデータフェーズ終了クロック周期との間の複数のクロック周期が決定される。処理ブロック708において、決定されたクロック周期の数が所定数のクロック周期以下であるか否かが決定される。処理ブロック706の決定されたクロック周期が所定数のクロック周期未満である場合、処理ブロック710において、DPWR#信号のアサート停止が遅延され、要求エージェントのセンス増幅器がイネーブルのままになり、更なるトランザクションの今後のデータを受信することが可能になる。
その結果、処理ブロック712において、更なるトランザクションのデータフェーズ終了クロック周期が検出されるまで、DPWR#信号のアサート停止が遅延し続ける。検出されると、処理ブロック714において、DPWR#信号がアサート停止になる。
データバス出力制御の方法は、図8に示すフォローチャート800に記載されている。処理ブロック802において、要求エージェント(例えばCPU)は、(読み取りトランザクションのように)要求エージェントに返信されるデータを生じる要求トランザクションを出す。処理ブロック804において、データを受信する前に、要求エージェントはDPWR#信号のアサートを検出し、要求データを受信するために要求エージェントのデータ入力センス増幅器をイネーブルにさせる。処理ブロック806において、要求エージェントは要求データを受信する。処理ブロック808において、要求エージェントはDPWR#信号のアサート停止を検出し、要求エージェントのデータ入力センス増幅器のディセーブルを行わせ、電力消費を低減する。
図9は、開示された技術を使用して設計のシミュレーション、エミュレーション及び構成用の多様な設計表現又はフォーマットを示したブロック図である。設計を表すデータは、多数の方法で設計を表してもよい。まず、シミュレーションで有用なように、ハードウェアは、設計されたハードウェアが実行すると予期される方法のコンピュータモデルを本質的に提供するハードウェア記述言語又は他の機能記述言語を用いて表されてもよい。ハードウェアモデル910は、コンピュータメモリのような記憶媒体900に格納されてもよく、それにより、実際に意図した通り機能するか否かを決定するためにハードウェアモデルに特定のテスト一式930を適用するシミュレーションソフトウェア920を使用して、モデルがシミュレーションされてもよい。ある実施例では、シミュレーションソフトウェアは媒体に記録、取得又は包含されない。
更に、ロジック及び/又はトランジスタゲートを備えた回路レベルのモデルが、設計過程のある段階で作られてもよい。そのモデルは、プログラム可能ロジックを使用したモデルを形成する専用ハードウェアシミュレータにより、何度か同様にシミュレーションされてもよい。ある程度のこの形式のシミュレーションは、更にエミュレーション技術でもよい。いずれの場合でも、再構成可能ハードウェアは、開示された技術を使用したモデルを格納した機械読取可能媒体を含み得る他の実施例である。
更に、ある段階でのほとんどの設計は、ハードウェアモデルの多様な装置の物理配置を表すデータのレベルに到達する。従来の半導体構成技術が使用される場合、ハードウェアモデルを表すデータは、集積回路を作るために使用される異なるマスクレイヤ又はマスクの多様な機能の存在又は欠如を特定するデータでもよい。また、集積回路を表すこのデータは、回路ロジック及びデータが技術を実行するためにシミュレーション又は構成され得る点で開示された技術を具体化する。


設計の如何なる表示において、データは如何なる形式の機械読取可能媒体に格納されてもよい。そのような情報を伝送するために変調又は生成された光波又は電波960、メモリ950又はディスクのような磁気若しくは光記憶装置940は、機械読取可能媒体でもよい。これらの媒体の如何なるものも設計情報を運んでもよい。このように、“運ぶ”(例えば機械読取可能媒体が情報を運ぶ)という用語は、記憶装置に格納された情報又は符号化若しくは搬送波に変調された情報をカバーする。設計又は特定の設計を記述するビットのセットは、(搬送波又は記憶媒体のような機械読取可能媒体に具体化されると)それ自体閉じ込められたものであり、また、更なる設計又は構成のため他人により使用されるものである。
[代替実施例]
他の実施例では、異なるシステム構成が使用されてもよいことがわかる。例えば、システム500は単一のCPU300を有するが、他の実施例では(1つ以上のプロセッサが前述のCPU300の構成及び動作と類似し得る)マルチプロセッサシステムが多様な実施例のバス出力制御手法から恩恵を受けてもよい。例えば、サーバ、ワークステーション、デスクトップコンピュータシステム、ゲームシステム、内蔵コンピュータシステム、ブレードサーバ等のような異なる形式のシステム又は異なる形式のコンピュータシステムが、他の実施例で使用されてもよい。
例示的な実施例を開示したが、特許請求の範囲に定められる本発明の実施例の範囲内にとどまりながら、開示された実施例に変更及び変形が行われ得る。
従来のプロセッサ及びメモリ制御ハブを示したブロック図 一実施例による入力バッファを有するプロセッサを示したブロック図 一実施例によるシステムプラットフォームを示したブロック図 一実施例によるタイミング図 異なる実施例によるタイミング図 異なる実施例によるタイミング図 異なる実施例によるタイミング図 異なる実施例によるタイミング図 異なる実施例によるタイミング図 異なる実施例によるタイミング図 一実施例による方法を示したフローチャート 一実施例による方法を示したフローチャート 一実施例による方法を示したフローチャート 開示された技術を使用して設計のシミュレーション、エミュレーション及び構成用の多様な設計表現又はフォーマットを示したブロック図

Claims (4)

  1. 外部バスに結合されたコントローラを有するバスエージェントであって、
    前記コントローラは、前記外部バスに結合された異なるバスエージェントから出されたデータのトランザクション要求を読み取り、
    前記コントローラは、前記要求に関連するデータ配信周期の所定数のクロック周期の前に、データバス出力制御信号のアサートを行わせ、
    前記データバス出力制御信号は、前記異なるバスエージェントが前記データを受信する前に、前記異なるバスエージェントの入力データセンス増幅器のセットをイネーブルにするバスエージェント。
  2. バスへのインタフェースを有するバスエージェントであって、
    前記インタフェースは、データを要求する前記バス上の異なるバスエージェントにより出されたトランザクション要求に関連するデータ配信周期の所定数のクロック周期の前に、データバス出力制御信号のアサートを行わせ、
    前記データバス出力制御信号は、前記異なるバスエージェントの入力データセンス増幅器のセットがデータを受信することを可能にするバスエージェント。
  3. バス上のバスエージェントにより、前記バス上の異なるバスエージェントから出されたデータのトランザクション要求を読み取り、
    前記トランザクション要求に関連するデータ配信周期を決定し、
    前記データ配信周期の所定数のクロック周期の前に、データバス出力制御信号をアサートし、前記異なるバスエージェントが前記データを受信する前に、前記異なるバスエージェントの入力データセンス増幅器のセットをイネーブルにすることを有する方法。
  4. 外部バスと、
    前記外部バスに結合されたチップセットと、
    バスインタフェースに結合され、プロセッサから出されたデータのトランザクション要求を読み取り、前記プロセッサが前記データを受信する前に、前記トランザクション要求に関連するデータ配信周期の所定数のクロック周期の前にデータバス出力制御信号のアサートを行わせるコントローラと、
    を有し、
    前記プロセッサは、入力データセンス増幅器のセットを有する入力バッファを有し、前記センス増幅器は、データバス出力制御信号を受信するように結合され、前記センス増幅器は、前記プロセッサが要求データを受信する前に、前記データバス出力制御信号のアサートに応じて前記外部バスからデータを受信するようにイネーブルになるシステム。
JP2004559105A 2002-12-11 2003-11-10 データバス出力制御用の装置及び方法 Expired - Fee Related JP4817660B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/317,776 US7152167B2 (en) 2002-12-11 2002-12-11 Apparatus and method for data bus power control
US10/317,776 2002-12-11
PCT/US2003/035774 WO2004053705A2 (en) 2002-12-11 2003-11-10 An apparatus and method for data bus power control

Publications (2)

Publication Number Publication Date
JP2006510096A JP2006510096A (ja) 2006-03-23
JP4817660B2 true JP4817660B2 (ja) 2011-11-16

Family

ID=32506215

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004559105A Expired - Fee Related JP4817660B2 (ja) 2002-12-11 2003-11-10 データバス出力制御用の装置及び方法

Country Status (9)

Country Link
US (1) US7152167B2 (ja)
EP (1) EP1573491B1 (ja)
JP (1) JP4817660B2 (ja)
KR (1) KR100807442B1 (ja)
CN (1) CN100409146C (ja)
AT (1) ATE554438T1 (ja)
AU (1) AU2003287612A1 (ja)
TW (1) TWI249105B (ja)
WO (1) WO2004053705A2 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7000065B2 (en) * 2002-01-02 2006-02-14 Intel Corporation Method and apparatus for reducing power consumption in a memory bus interface by selectively disabling and enabling sense amplifiers
US20040128416A1 (en) * 2002-12-11 2004-07-01 Tsvika Kurts Apparatus and method for address bus power control
US7152167B2 (en) 2002-12-11 2006-12-19 Intel Corporation Apparatus and method for data bus power control
US7216240B2 (en) * 2002-12-11 2007-05-08 Intel Corporation Apparatus and method for address bus power control
US7258625B2 (en) * 2004-09-08 2007-08-21 Nike, Inc. Golf clubs and golf club heads
US7797728B2 (en) * 2004-10-27 2010-09-14 Intel Corporation Mechanism to generate restricted and unrestricted execution environments
US7529955B2 (en) * 2005-06-30 2009-05-05 Intel Corporation Dynamic bus parking
TWI308696B (en) * 2005-10-07 2009-04-11 Via Tech Inc Initializing method bus device
EP2038728B1 (en) * 2006-06-29 2013-07-31 ARM Limited Controlling power consumption in a data processing apparatus
JP4837780B2 (ja) * 2006-07-28 2011-12-14 アーム・リミテッド マスタおよびスレーブを有するデータ処理デバイスにおける電力管理
US7730337B2 (en) * 2007-01-24 2010-06-01 Via Technologies, Inc. Method and apparatus for asserting a hardware pin to disable a data bus connecting a processor and a chipset during power saving state
US7567465B2 (en) * 2007-08-30 2009-07-28 Micron Technology, Inc. Power saving sensing scheme for solid state memory
US20100296685A1 (en) * 2009-05-20 2010-11-25 Lake Shore Studios, Inc. Adapter and electronic devices for recessed light socket
ES2687609T3 (es) 2013-05-02 2018-10-26 Huawei Technologies Co., Ltd. Sistema informático, método para acceder a un terminal de interconexión de componentes periféricos exprés y equipo

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02143609A (ja) * 1988-11-25 1990-06-01 Hitachi Ltd 信号伝達システム
JPH04195241A (ja) * 1990-11-22 1992-07-15 Koufu Nippon Denki Kk 情報処理装置
US5432944A (en) * 1991-08-05 1995-07-11 Motorola, Inc. Data processing system having a dynamically enabled input synchronizer for selectively minimizing power consumption
US5737746A (en) * 1994-03-15 1998-04-07 Intel Corporation Computer system including an apparatus for reducing power consumption in an on-chip tag static RAM
JPH11134318A (ja) * 1997-10-30 1999-05-21 Nec Corp メモリシステム及びこれを内蔵したシングルチップマイクロコンピュータ
EP0932097A1 (en) * 1998-01-26 1999-07-28 Fujitsu Limited Bus controllers ensuring reduced power consumption and stable operation
US6058059A (en) * 1999-08-30 2000-05-02 United Microelectronics Corp. Sense/output circuit for a semiconductor memory device
US6330679B1 (en) * 1997-12-31 2001-12-11 Intel Corporation Input buffer circuit with dual power down functions

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0230960B1 (en) * 1986-01-20 1992-05-13 Nec Corporation Microcomputer having a highspeed operation mode and a low-speed operation mode
JPH0812756B2 (ja) * 1987-06-22 1996-02-07 松下電子工業株式会社 スタチックram回路
US5327394A (en) * 1992-02-04 1994-07-05 Micron Technology, Inc. Timing and control circuit for a static RAM responsive to an address transition pulse
US5692202A (en) 1995-12-29 1997-11-25 Intel Corporation System, apparatus, and method for managing power in a computer system
US5819027A (en) * 1996-02-28 1998-10-06 Intel Corporation Bus patcher
DE19617172C2 (de) * 1996-04-29 1999-06-24 Siemens Ag Integrierte Schaltungsanordnung zur Reduzierung der Stromaufnahme
US5911153A (en) 1996-10-03 1999-06-08 International Business Machines Corporation Memory design which facilitates incremental fetch and store requests off applied base address requests
US5848428A (en) 1996-12-19 1998-12-08 Compaq Computer Corporation Sense amplifier decoding in a memory device to reduce power consumption
US6141765A (en) * 1997-05-19 2000-10-31 Gigabus, Inc. Low power, high speed communications bus
JP4216415B2 (ja) * 1999-08-31 2009-01-28 株式会社ルネサステクノロジ 半導体装置
US6609171B1 (en) * 1999-12-29 2003-08-19 Intel Corporation Quad pumped bus architecture and protocol
JP3906015B2 (ja) * 2000-07-12 2007-04-18 株式会社東芝 クロック周波数切り替え機能を有するlsi、計算機システム及びクロック周波数切り替え方法
US7000065B2 (en) 2002-01-02 2006-02-14 Intel Corporation Method and apparatus for reducing power consumption in a memory bus interface by selectively disabling and enabling sense amplifiers
US6961787B2 (en) * 2002-01-07 2005-11-01 Intel Corporation Method and apparatus for updating task files
US7152167B2 (en) 2002-12-11 2006-12-19 Intel Corporation Apparatus and method for data bus power control

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02143609A (ja) * 1988-11-25 1990-06-01 Hitachi Ltd 信号伝達システム
JPH04195241A (ja) * 1990-11-22 1992-07-15 Koufu Nippon Denki Kk 情報処理装置
US5432944A (en) * 1991-08-05 1995-07-11 Motorola, Inc. Data processing system having a dynamically enabled input synchronizer for selectively minimizing power consumption
US5737746A (en) * 1994-03-15 1998-04-07 Intel Corporation Computer system including an apparatus for reducing power consumption in an on-chip tag static RAM
JPH11134318A (ja) * 1997-10-30 1999-05-21 Nec Corp メモリシステム及びこれを内蔵したシングルチップマイクロコンピュータ
US6330679B1 (en) * 1997-12-31 2001-12-11 Intel Corporation Input buffer circuit with dual power down functions
EP0932097A1 (en) * 1998-01-26 1999-07-28 Fujitsu Limited Bus controllers ensuring reduced power consumption and stable operation
US6058059A (en) * 1999-08-30 2000-05-02 United Microelectronics Corp. Sense/output circuit for a semiconductor memory device

Also Published As

Publication number Publication date
ATE554438T1 (de) 2012-05-15
EP1573491A2 (en) 2005-09-14
TW200416549A (en) 2004-09-01
WO2004053705A2 (en) 2004-06-24
KR20050085553A (ko) 2005-08-29
TWI249105B (en) 2006-02-11
AU2003287612A1 (en) 2004-06-30
US20040117670A1 (en) 2004-06-17
JP2006510096A (ja) 2006-03-23
AU2003287612A8 (en) 2004-06-30
WO2004053705A3 (en) 2005-06-09
US7152167B2 (en) 2006-12-19
EP1573491B1 (en) 2012-04-18
CN1723429A (zh) 2006-01-18
KR100807442B1 (ko) 2008-02-25
CN100409146C (zh) 2008-08-06

Similar Documents

Publication Publication Date Title
US10185385B2 (en) Method and apparatus to reduce idle link power in a platform
US7146510B1 (en) Use of a signal line to adjust width and/or frequency of a communication link during system operation
US20070162648A1 (en) DMA Controller With Self-Detection For Global Clock-Gating Control
US7506192B2 (en) Method and apparatus for adaptive power management of memory subsystem
JP4817660B2 (ja) データバス出力制御用の装置及び方法
US7117289B2 (en) Claiming cycles on a processor bus in a system having a PCI to PCI bridge north of a memory controller
US20090327609A1 (en) Performance based cache management
US11016549B2 (en) Method, apparatus, and system for power management on a CPU die via clock request messaging protocol
KR101844809B1 (ko) 클록 게이팅 제어를 위한 조기의 웨이크-경고
US5559968A (en) Non-conforming PCI bus master timing compensation circuit
US5964856A (en) Mechanism for data strobe pre-driving during master changeover on a parallel bus
JP4813180B2 (ja) アドレスバス出力制御用の装置及び方法
US7779188B2 (en) System and method to reduce memory latency in microprocessor systems connected with a bus
US5974239A (en) Data transfer method for a bus device in a computer system by placing first and second addresses corresponding to a bridge and with the bus device respectively on a bus
US7216240B2 (en) Apparatus and method for address bus power control

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080708

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081007

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20081118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090318

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090428

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20090710

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110719

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110830

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

Free format text: PAYMENT UNTIL: 20140909

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees