JP3713488B2 - コンピュータシステム及びその動作制御方法 - Google Patents

コンピュータシステム及びその動作制御方法 Download PDF

Info

Publication number
JP3713488B2
JP3713488B2 JP2003026128A JP2003026128A JP3713488B2 JP 3713488 B2 JP3713488 B2 JP 3713488B2 JP 2003026128 A JP2003026128 A JP 2003026128A JP 2003026128 A JP2003026128 A JP 2003026128A JP 3713488 B2 JP3713488 B2 JP 3713488B2
Authority
JP
Japan
Prior art keywords
cpu
signal
stop
interrupt
clock
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
JP2003026128A
Other languages
English (en)
Other versions
JP2003271260A (ja
Inventor
明人 永江
功一 瀬沼
丈幸 井口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Toshiba Development and Engineering Corp
Original Assignee
Toshiba Corp
Toshiba Digital Media Engineering Corp
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 Toshiba Corp, Toshiba Digital Media Engineering Corp filed Critical Toshiba Corp
Priority to JP2003026128A priority Critical patent/JP3713488B2/ja
Publication of JP2003271260A publication Critical patent/JP2003271260A/ja
Application granted granted Critical
Publication of JP3713488B2 publication Critical patent/JP3713488B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Power Sources (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、例えばパーソナルコンピュータ等のコンピュータシステムに関し、特にシステム内のストップクロック機能を使用した省エネルギーモードを実現したコンピュータシステム及びその動作制御方法に関する。
【0002】
【従来の技術】
近年、携行が容易でバッテリにより動作可能なノートブックタイプまたはラップトップタイプのポータブルパーソナルコンピュータが種々開発されている。この種のコンピュータにおいては、バッテリによる駆動時間をできるだけ長くするため、種々の電力節約のための工夫が成されている。
【0003】
例えば、CPUの消費電力を少なくするために、CPUの動作速度を遅くして、CPUの消費電流を減らす工夫が成されている。一方、CPU(central processing unit)は年々高速化されている。例えば米国インテル社の80286から80386、80486、Pentium,…と高速化を続け、CPU内部クロックの高速化、CPUバス幅の拡張が成されている。
【0004】
ところで、例えば上記PentinumをCPUとしてノートブック型等のポータブルコンピュータに実装する場合、消費電力が大きいため発熱をいかに抑えるかという問題がある。CPUの消費電流は入力クロックにほぼ比例するので、ロースピード(クロックを落として)で動かしてやれば、消費電流が減少し、結果として発熱を抑えることができる。基本的にはCPUがもつストップクロック機能を使用して、CPU温度が上昇したらクロックを低速にするというように、クロックの切り替えを行うことが考えらる。
【0005】
ストップクロック機能はCPUへの内部クロックを停止することによりCPUの消費電力を制御する割り込み機構(STPCLK#信号)であり、例えば上記インテル社の80486やPentium等が持つ機能である。上記低電力状態はストップグラントステート(Stop Grant state)と呼ばれている。さらに、このSTPCLK#割り込みはある範囲内で入力周波数を変化させたり、CLK入力周波数を完全に停止させることが可能である。CLK入力が完全に停止した場合には、CPUはストップクロックステート(Stop Clock state)、すなわち最も低い電力状態にすることが可能である。
【0006】
しかし、ストップクロック機能を使用したクロック切り替えでは、クロック切り替え後1msの間はCPUが正常に動作しないので、ダイナミックに切り替えができないという制約がある。
【0007】
また、従来、リフレッシュサイクル(ISAバスリフレッシュサイクルと呼ぶこともある)を実行する場合、CPUのクロックを切り替える場合と、リフレッシュサイクルを長くして見かけ上CPU速度を遅くするという2つの方法があった。従来のリフレッシュサイクルの実行は、CPUがこの間アクセスしないようにCPUを止めて行っていた。すなわち、図16に示すようにHOLD信号をだして15μSに1回リフレッシュ動作を行っていた。HOLD信号がでると、CPUは完全に動作を停止する。このリフレッシュサイクルを延ばして同図波線に示すごとく引き延ばし、例えばリフレッシュサイクルを例えば7μSにしたとすると、見かけ上CPUは1/2のスピードで動作しているように見える。ただし、CPUはプログラムを実行しないだけで、CPUの消費電流は変わらない。この場合、ユーザが例えばセットアップメニューでCPUの動作速度をHIGHからLOWに切り替えた場合、上述したようなリフレッシュサイクルの引き延ばしによりCPUの動作速度を見かけ上遅くしていた。しかしながら、上述したように、このHOLDの期間、CPUの消費電流は変わらない。したがって、見かけ上、CPUの動作速度を遅くしたとしても、動作時間は変わらず、バッテリの駆動時間を長くすることには寄与しない。
【0008】
ところで、システム仕様として、CPUハイスピード/ロースピードという設定機能を有したコンピュータシステムがある。従来、このようなコンピュータシステムでは上述したような問題があるため、実際にはクロックの切り替えを行っておらず、リフレッシュ時のホールドサイクルを延長して見かけ上の動作スピードを遅くしているにすぎない。すなわち、図15に示すようにマイクロプロセッサは低速化せずに、リフレッシュホールドタイムをスローダウンタイマにより延長して、マイクロプロセッサを通常よりも長くホールドしている。プロセッサはプログラムのフェッチおよび実行ができないので見かけ上低速に見える。
【0009】
この場合、CPUをロースピードにしたとしてもCPUの消費電流は変わらないという不都合を生じる。このため、見かけ上のスピードを落とすとともに、消費電流も低減されることが望まれている。また、このロースピードモード時にホールドサイクルの代わりにストップクロック機能を使用してリフレッシュサイクルを行うことが望まれている。
【0010】
【発明が解決しようとする課題】
この発明はこのような点に鑑みてなされたもので、ストップクロック機能を使用して効率良く消費電流を低減することができるコンピュータシステム及びその動作制御方法を提供することである。
【0011】
【課題を解決するための手段】
上記した課題を解決し目的を達成するために、本発明は以下に示す手段を用いている。
【0012】
本発明のコンピュータシステムは、内部クロックの停止指示を示す指示信号及び割り込み処理の指示を示す割り込み信号を受信可能なCPUと、前記CPUへ前記指示信号をアサートする手段と、システムイベントが発生した場合、前記割り込み信号を発生する割り込み手段と、前記指示信号が前記CPUへアサートされている間に前記割り込み手段により割り込み信号が発生された場合、前記割り込み信号を保持し前記CPUへのアサートをブロックし、前記指示信号のアサートが解除された後に前記割り込み信号を前記CPUへアサートする手段とを具備する。
【0013】
本発明のコンピュータシステムはストップクロック機能を使用して効率良く消費電流を低減することができる。
【0014】
【発明の実施の形態】
以下、この発明の一実施の形態について説明する。図1はこの発明のストップクロック機能を使用した省エネルギーモード機能を備えたコンピュータシステムの一実施の形態を示す概略ブロック図である。同図に示すように、CPU1は例えば、米国インテル社のSLエンハンスト80486またはPentium(P54C)相当の32ビットCPUである。CPU1はCPUバス5を介してCPUコントロールゲートアレイ3およびメインDRAM7と接続されている。CPUコントロールゲートアレイ3はデータバスドライブブロック、CPUコントロールブロック、DRAMマッパー、DRAMコントロールブロック、CPUサイクルチェックブロックから構成される。CPUコントローラはCPUサイクルの制御(DRAMコントローラ、VLバスからの信号を基にCPUに対してサイクル終了の制御を行う)、CPUアドレスデコード(内部メモリ(64ビット)、拡張メモリ(32ビット)、メモリ、extendedメモリ、000C0000H−000FFFFFHの16KB毎のウインドウ、SM−RAM、ライトプロテクトエリア、キャッシュエリア)、データバスドライバへの制御信号出力(ラッチ信号、バイトレーンスワップ信号)、I/Oバッファイネーブル信号の出力等の制御を行う。DRAMマッパーはDRAMマッピング(CPUアドレスからDRAMアドレスへのアドレス変換、DRAM論理アドレスの生成、conventional エリアに対応するDRAM論理アドレス生成、extended エリアに対応するDRAM論理アドレス生成、SM−RAMエリアに対応するDRAM論理アドレス生成)を行う。DRAMコントローラはDRAM制御(DRAMへのアクセス(CPUおよび外部マスタ・DMA)を制御、L1ライトバックキャッシュ対応制御、シャドウリフレッシュ制御、32ビット拡張DRAMに対するアクセスのサイクル変換(64x32))を行う。その他、上記各ブロックからのレジスタデータのセレクタ、ADS#のディレイ制御回路、CPUへのクロック出力ディレイ制御回路、クロック/リセット/サスペンドコントロール回路、テストのための付加回路等が設けられている。また、CPUコントロールゲートアレイ3はVLバス9を介してISAコントローラゲートアレイ11、拡張DRAM13、およびVGAコントローラ15と接続されている。ISAコントローラ11は、上記VGAコントローラ15および拡張DRAM13を制御するとともに、CPUコントロールゲートアレイ3を介してCPU1と、VGAコントローラ15および拡張DRAM13をインターフェースする。
【0015】
図2はインターバルストップクロック(STPCLK#)を一定間隔でアサートするための回路例を示す。図2に示す回路は図1のISAコントロールゲートアレイ11に設けられるが、CPUコントロールゲートアレイ3内に設けてもよい。インターバルストップクロック(STPCLK#)機能については、例えば1993年発行の「Intel 486 Microprocessor Family Data Book Addendum:SL EnhancedIntel 486 Microprocessor Faimily」、および1994年発行「Pentium Processor Family User’s Manual」に詳述されている。同図において、カウンタA17は図3(a)に示すリクエスト信号(ISRQ1)のリクエスト期間をカウントするカウンタである。リクエスト期間は、インターバルストップクロックイネーブルレジスタ(REGA)19により設定される。カウンタB23は図3(d)に示すストップクロック信号(STPCLK#)のホールド期間をカウントするカウンタである。ホールド期間はインターバルストップクロックホールドレジスタ(REGB)25によりプログラマブルに設定される。
【0016】
インターバルストップクロックイネーブルレジスタ19の機能は次の通りである。設定された時間、一定間隔でCPU1にストップクロック要求を送り、CPU1がそれを受け付けたとき(CPU1がストップグラントサイクルを発生してきたときだけ)、別に設定された時間、ストップグラントステートを続けた後、STPCLK#をデアサート(HIGHに)する。
【0017】
INTERVAL STOPCLOCK ENABLE REG.
bit7-1:INTSC(INTERVAL STOPCLOCK ENABLE)
インターバルストップクロック機能をイネーブルする。
【0018】
0の時:インターバルストップクロック機能をディスエーブルにする。
【0019】
1の時:インターバルストップクロック機能をイネーブルにする。
【0020】
カウンタA17はこのbitを1にすることにより動きだし、0にするとカウンタが停止(クリア)される。
【0021】
bit6-3:INH3-0(INTERVAL STOPCLOCK INHIBIT TIME)
SMI,NMI,INTR,INIT,VGA アクセスが入った時だけ、一定時間インターバルストップクロック(STPCLK#)を禁止する。INH3-0がすべて0の時は、インターバルストップクロック(STPCLK#)を禁止する機能は動作しない。
【0022】
DIS3 2 1 0 インターバルストップクロック禁止期間
0 0 0 0 禁止しない
0 0 0 1 1ms
0 0 1 0 2ms
0 0 1 1 3ms


1 1 1 1 15ms
bit2−0:INTB2−0
(INTERVAL TIMER BIT2−0)
STPCLK#をアサートする間隔を指定する。bit7=1の時のみ有効。
【0023】
Figure 0003713488
また、インターバルストップクロックホールドレジスタ25のビットアサインメントおよび機能は次の通りである。
【0024】
bit7−6:IRQ0SL,VGASL
インターバル・ストップクロックを禁止する条件を変える。
【0025】
IRW0SL=0: タイマ割り込みによるIRQ0を除いたINTR(Interrupt Request)で一定時間インターバルを禁止する。
【0026】
IRQ0SL=1: タイマ割り込みによるIRQ0も含んだINTRで一定時間インターバルを禁止する。
【0027】
VGASL=0:VGAに対するアクセスで、一定時間インターバルを禁止する。
【0028】
VGASL=1:VGAに対するアクセスはインターバルを禁止しない。
【0029】
bit5-0:HTIM5-0(HOLD TIMER 5-0)
STPCLK#をアサートしている時間(ホールド時間)を指定する。ストップグラントサイクルの始まり(ADS#)から10CLK経ってからカウンタが動作を始め、このビットによる設定値に達したところでSTPCLK#がデアサート(HIGH)される。カウンタB23はインターバルストップクロック機能がディスエーブルされるか、このビット設定値にするか、割り込み要因などでSTPCLK#がブレークされた段階でクリアされ、かつ動作を停止する。
【0030】
Figure 0003713488
図2において、比較回路21はカウンタA17のカウンタ出力とレジスタA19のカウンタ設定値とを比較し、一致するとクリア信号をカウンタA17のクリア端子に供給し、カウンタA17をクリアする。比較回路29はカウンタB23のカウンタ出力とレジスタB25のカウンタ設定値とを比較し、一致すると、ANDゲート27を介してカウンタB23のクリア端子に供給する。なお、デコード回路31はCPUステータスをデコードし、ストップグラントステートを検出する回路である。ストップグラントステートはCPU1内部のPLLにクロックに入力されるが、PLLの出力を止めた状態であり、CPUの消費電流が低減(Icc=20無いし50mA)された高速ウエイクアップ状態である。詳細は上述した「Intel486 Microprocessor FaimilyData Book Addendum]および「Pentium Processor Faimily User’s Manual]に記載されている。ANDゲート27はストップグラントステートのときに、比較回路29からのクリア信号をカウンタB23に供給する。
【0031】
31はスナップモード(通常は、一定間隔でSTPCLK#をアサートして見かけ上の動作スピードを落し、割り込みなどの要因が発生した場合は、ある一定時間STPCLK#のアサートを禁止して高速動作させるモード)を実現するためのインヒビットタイマ回路である。カウンタ33、レジスタ19、比較回路37は図4(a)に示すインターバルストップクロック禁止区間を設定する回路であり、カウンタ33はイベント(例えばINTR(Interrupt Request)、NMI(Non−Maskable Interrupt)、SMI(System Management Interrupt)、SRESET(System Reset),INIT(Initialize)等、これらの信号は、上述した「SL Enhanced Intel 486 Microprocessor Faimily」および「Pentium Processor Family User’s Manual」に詳述されている)の発生に応答してカウントを始める。レジスタ19のビット6−3には上述したインターバルストップクロック禁止区間が1ms及至15msの範囲で設定される。比較回路37はカウンタ33のカウンタ出力とレジスタ35のカウンタ設定値とを比較し、一致するまで、インターバルストップクロック禁止信号をANDゲート39に出力し、ANDゲート39はこの間、図5に示すようにインターバルストップクロック(STPCLK#)を出力しない。
【0032】
調停回路41はインターバルストップクロック(STPCLK#)が動作中、INTR、SMI,NMI、SRESET(INIT)、VGAアクセスがあった場合の処理を行う回路であり、図6に示すように処理を行う。
【0033】
図6の表に示すように、1)インターバルストップクロックが出力されていてかつCPUが動作している場合、2)インターバルストップクロックが出力されていてSTPCLK#=0のとき、および3)インターバルストップクロックが出力されていてCPU1がストップグラントステート状態にあるときの3つの状態が存在する。タイマ割り込みによるIRQ0では上記1)及至3)のいずれの状態においてもインヒビットタイマ31は動作しない。
【0034】
1)の状態では、INTR(IRQ0及至IRQ15)、SMI、NMI、SRESET(INIT)及びVGAアクセスがあった場合、インヒビットタイマ31を開始する。2)の状態では、INTR(IRQ0及至IRQ15)、SMI,NMISRESET(INIT)及びVGAアクセスがあった場合、インヒビットタイマを開始しかつCPUはストップグラントサイクル待ちになる。さらに3)の状態ではINTR(IRQ0及至IRQ15)、SMI、NMI、SRESET(INIT)があったとき、ストップグラントステートがブレークされ、インヒビットタイマ31が開始される。なお、CPU1がストップグラントステート中はVGAアクセスは起きない。
【0035】
図7はインターバルストップクロックの詳細タイミングである。同図(a)に示すようにインターバルストップクロックリクエスト(ISRQ1)が出力されると、同図(b)に示すようにsTPCLK#がアサートされる;。(但し、すでにINTR、NMI、SMI、SRESET、INITがあった場合にはSTPCLK#をアサートしない。)同図(b)でSTPCLK#がアサートされると、CPUは同図(c)に示すようにストップグラントステートになる。CPUがストップグラントステートになり、ストップグラントサイクルのADS#(新しいバスサイクルの開始を示す信号)から10CLK後にホールトブレークタイマ(カウンタ23、レジスタ25、比較回路290が動作を開始し、レジスタ25で指定された期間カウントすると同図(d)に示すようにホールドタイマを終了し同図(a)に示すインターバルストップクロックリクエスト(ISRQ1)が取り下げられる。
【0036】
図8はインターバルストップクロック(STPCLK#)がアサートされてCPUがストップグラントステートにあるときに、他のブレーク要因が発生した場合のタイミングチャートである。同図(e)に示すように、他のブレーク要因が発生した場合、同図(b)に示すSTPCLK#がデアサートされ、同図(a)及び同図(d)に示すようにインターバルストップクロックのリクエスト(ISRQ1)及びホールドタイマ(カウンタ23、レジスタ25、比較回路29)がクリアされる。
【0037】
次に、ストップクロックリフレッシュ機能について説明する。ストップクロックリフレッシュ機能は、ISAバスリフレッシュサイクル時に従来のHOLD/HLDAサイクルの代わりにSTPCLK#信号をアサートすることにより、ストップグラント状態でリフレッシュサイクルを行う。
【0038】
ISAバスリフレッシュ機能は例えば、ノート型パソコンの拡張コネクタを介してデスクステーションを接続した場合に、デスクステーションのスロットにDRAM拡張メモリカードが接続される場合が考えられる。この場合、CPUインターフェース信号としてリフレッシュ信号がバスの仕様として定義されている。CPUは、このリフレッシュ信号がアクティブになっているときに、拡張メモリカードをリフレッシュするように構成されている。
【0039】
この機能は、例えば図1に示すISAコントロールゲートアレイ11内に設けられる。ただし、CPUコントロールゲートアレイ3内にあってもよい。ISAコントロールゲートアレイ11では、リフレッシュによるストップクロック要求が発生した時に、INTR,NMI,SMI#,INITのアサートおよびホルトサイクルであるかどうかを監視し、これらの要因がすでに発生していた場合は、通常のHOLD/HLDAサイクルによるリフレッシュに切り替える。この場合は、STPCLK#をアサートしない。前記要因が発生していない場合に限り、STPCLK#をアサートし、同時にINTR,NMI,SMI#,INITをブロックする。さらにSTPCLK#アサート後にホルトサイクルが発生した場合は、STPCLK#をデアサートする。ただし、INTR,NMI,SMI#,INITはブロックしたままとし、ホルトサイクルがブレークされないようにする。
【0040】
ホルトサイクルとストップグラントステートは、消費電流という点では同じであり、ともにCPUが停止している状態である。従って、ホルトサイクルをブレークし、その後にストップグラントステート状態に移行させてリフレッシュを行っても意味がない。従って、ISAコントロールゲートアレイはSTPCLK#を出力した後にもしホルトサイクルが発生した場合は、疑似的にストップグラントサイクルが発生したとみなし(STPCLK#はデアサートしない)、もともと(ストップクロックステート時)サポートしているHOLD/HLDA肩代り回路により、ゲートアレイ内部でHLDA信号(ホールドアクノリッジ信号)を生成する。リフレッシュ時のホールド延長回路によるホールド要求が切れた段階でHLDAをデアサートし、かつINTR,NMI,SMI#,INITのブロックを解除するようにする。この場合は、CPUがホルトステートの時にリフレッシュサイクルを行うことになる。なお、このホールド延長回路によるリフレッシュ時のホールド延長時間はレジスタで指定することによりプログラマブルに設定される。
【0041】
なお、STPCLK#アサート後にホルトサイクルが発生した場合に、ブロックしていたHOLD信号をCPUへ出力し、通常のHOLD/HLDAによるリフレッシュに切り替えるようにしてもよい。
【0042】
次に、ストップクロックリフレッシュ機能について説明する。ストップクロックリフレッシュコントロールレジスタのビットアサインメントとその機能はつぎの通りである。
【0043】
STOPCLOCK REFERESH CONTROL REG.
bit7: ストップクロックリフレッシュをイネーブル/ディスエーブルする。
【0044】
0の時、通常のリフレッシュ
1の時、リフレッシュ時にSTPCLK#を制御する。
【0045】
従来のISAリフレッシュを、HOLD/HLDAで制御する代わりにSTPCLK#を用いる。ISAリフレッシュ中はCPUをストップグラントステートにして消費電力を減らす。リフレッシュホールド時間を長く設定すればCPUがストップグラントステートでいる時間も長くなり、より電力消費を抑えることができる。
【0046】
STPCLK#を制御するのは、ISAリフレッシュによるHOLD要求が起きたときだけである。DMA/マスタによるHOLD要求では、STPCLK#=LOWにならない。
【0047】
ストップクロックリフレッシュがイネーブルであったとき、ISAリフレッシュによるHOLDはCPUに伝えない。ゲートアレイの中でHLDAの肩代りを行う。
【0048】
ISAリフレッシュによるストップグラントステートはSMI,NMI,INTR、INIT,SRESETによってブレークされない。ISAリフレッシュによるストップグラントステート中はSMI,NMI,INTR,SRESETがブロックされ、ストップグラント終了後、最初のADS#の立ち上がりで出し直される。
【0049】
CPUではグラントステート中もSMI,NMI,INTR,INITをブロックしない。
【0050】
bit6-1:Not used
ISAリフレッシュによるSTPCLK#はSRESETと調停する。ISAリフレッシュによってSTPCLK#=LOWとなっている間、SRESET要求はブロックされ、STPCLK#=HIGHになったときSRESETを出し直す。(ADS#を待たない)SRESET中はISAリフレッシュによるHOLD要求があってもSTPCLK#をLOWにアサートしない。リフレッシュによるHOLD要求があった場合、これをブロックせずCPUへ素通しする。CPUはSRESET中でもHOLDを受け付ける。
【0051】
ストップクロック機能と、ストップクロックリフレッシュ機能を同時にイネーブルしてよい。HALTストップクロックまたはレジスタリードストップクロックでSTPCLK#=LOWであったとき、ISAリフレッシュによるHOLD中はブレークイベントがマスクされる。(この時HOLD/HLDA処理はゲートアレイが肩代りしてHOLDはCPUへ伝えない)リフレッシュ終了後にマスクが解除され、ブレークイベント(INTR,NMI,SMI,INIT,SRESET)を受け付ける。
【0052】
図9はストップクロックリフレッシュタイミングを示すタイミングチャートである。図9(d)のホールドリクエスト信号(HDRQ)が出力されると、同図(c)に示すようにホールドリクエスト信号がアクティブリフレッシュによるものであることを示す信号(RFSTS)が出力される。この結果、同図(b)に示すストップクロック信号(STPCLK#)がアサートされる。この結果、同図(j)に示すようにCPU1はストップグラントステートになり同図(h)に示すようにストップグラントサイクルの開始を示すADS#信号が出力される。なお同図(e)に示すようにSTPCLK#がアサートされてもHOLD信号をCPUに出さず、HOLD/HLDA肩代り回路による同図(g)に示すホールドアクノリッジ信号(CGHLDAZ)を出力する。
【0053】
なお、HOLD/HLDA肩代り回路は図14に示すように、今、タイマから割り込み信号に応答してリフレッシュ制御回路がHOLD/HLDA肩代り回路にHOLD要求を出したとする。このとき、もしCPUがクロック切り替え直後だとすると、CPUの仕様により内部PLLが安定するまでに1msの時間がかかるため、この間CPUは動作しない。一方、DRAMリフレッシュは15μS置きに行わなければならないので、DRAMリフレッシュは行うことができない。このため、HOLD/HLDA肩代り回路があたかもCPUがHOLD要求を受け付けたかのごとくにHLDA信号を出力する。
【0054】
そして、同図(k)に示すようにリフレッシュモードを示す信号(RFMD3)が出力されリフレッシュサイクルが実行される。図10はSTPCLK#をアサートするときに、すでに割り込みがあった場合におけるストップクロックリフレッシュと割り込みとの関係を示すタイミングチャートである。
【0055】
同図(e)に示すようにホールドリクエスト信号(HDRQ)が出力され、同図(d)に示すように割り込み要求(INTR)がでているのでSTPCLK#はアサートされず、同図(f)に示すようにHOLD信号がCPU1に出力される。個の結果、同図(g)に示すようにCPU1はホールド状態となり、通常のリフレッシュサイクルが実行される。
【0056】
図11はCPUが80486の場合に、STPCLK#をアサートした後に割り込みがでた場合の各種信号のタイミングを示すタイミングチャートである。図11(f)に示すようにホールドリクエスト信号(HDRQ)が出力され、同図(e)に示すようにホールドリクエスト信号がアクティブリフレッシュによるものであることを示す信号(RFSTS)が出力される。この結果、同図(d)に示すように割り込み要因が発生した場合、ブロックされCPU1には出力されない。その間同図(h)に示すようにCPU1はストップグラントステートになり、同図(i)に示すようにリフレッシュサイクルが実行される。その後同図(c)に示すように図示しない。ADS#の出力でINTR0のブロック(阻止)が解除される。
【0057】
図12はCPUがPentiumの場合に、STPCLK#をアサートした後に、割り込みがでた場合の各種信号のタイミングを示すタイミングチャートである。
【0058】
図12(f)に示すようにホールドリクエスト信号(HDRQ)がでて同図(e)に示すアクティブリフレッシュ信号(RFSTS)が出力されると同図(d)に示すようにSTPCLK#がアサートされる。この後同図(b)に示す割り込み信号(INTR)が出力されると、ISAコントロールゲートアレイ11はこの信号をブロックせずに、同図(c)に示すようにスルーでCPU1に出力する。そして同図(h)に示すようにCPU1はストップグラントステートとなり、同図(i)に示すようにリフレッシュモードを示す信号(RFMD3)が出力されリフレッシュサイクルが実行される。
【0059】
図13はHALTが来たときのストップクロックリフレッシュとHALTとの関係を示すタイミングチャートである。CPUがPentiumのとき、HALTステートからストップグラントに入れない仕様になっている。もし、STPCLK#をアサートした後にHALTサイクルが来た場合、CPUはHALTステートのまま止まる。80486ではHALTステートからストップグラントサイクルが起きるので問題ないが、PentiumではHALTステートを抜けなければグラントサイクルは起きない。HALTステートを抜けるには割り込み(INTR,NMI,SMI#)が必要なため、ストップグラント中も割り込みスルーとする必要がある。図13(b)に示すようにSTPCLK#がアサートされた後にHALTが来たら同図(h)に示すようにCPU1はHALTステートに留まる。そしてISAコントロールゲートアレイ11はSTPCLK#をアサートしたまま同図(e)に示すHOLD信号をCPU1に出力する。CPU1は同図(h)に示すようにホールドアクノリッジ信号(HLDA)を出力し、同図(i)に示すようにリフレッシュサイクルを実行する。その後同図(j)に示すように割り込み信号(INTR)を発生し同図(h)に示すようにCPU1はHALTステートを抜けストップグラントステートに入る。CPU1がストップグラントステートサイクルを完了すると同図(b)に示すようにISAコントロールゲートアレイ11はSTPCLK#をデアサートする。
【0060】
図2に示すストップクロック調停回路41の機能は次の通りである。
【0061】
SMI#要求、INIT(SRESET)要求、NMI要求、INTR要求、STPCLK要求、HOLD要求の調停を行う。なお、CPUとしてPentium相当を対象とする場合を「P54モード」、SLエンハンスト486相当を対象とする場合を「E486モード」と呼んで制御を区別する。
【0062】
1.優先順位 (A>BはBよりもAの方が優先度が高いことを示す)
複数の要求が重なった場合の優先度を以下の様に決める。
【0063】
SMI#>INIT(SRESET)>STPCLK#
NMI,INTR>STPCLK#
SMI,INIT(SRESET)と、NMI、INTR間には順位付けを行わない。
【0064】
互いに相手の影響を受けることはない。STPCLK#は複数の要因により発生する。以下の6要因がある。
【0065】
1)クロックチェンジによる要求
2)I/Oリードによるクロック停止要求
3)I/Oリードによるストップグラント要求
4)HALTによるクロック停止要求
5)インターバルストップグラント要求
6)リフレッシュストップグラント要求これら、6要因についても優先度を決める。
【0066】
クロックチェンジ>I/Oリードクロック停止>I/Oリードグラント>HALTクロック停止>インターバルグラント>リフレッシュグラントP54CモードではCPUの仕様によりHALTステート状態からストップグラントサイクルは発生しないのでHALTによるクロック停止自体をサポートしない。クロックチェンジ、I/Oリードクロック停止、HALTクロック停止、リフレッシュグラントによるSTPCLK#要求は、HOLD要求とも調停を行う。
【0067】
クロックチェンジ>I/Oリードクロック停止>HALTクロック停止>リフレッシュグラント>HOLD要求I/Oリードによるストップグラント要求、インターバルストップグラント要求とHOLD要求間の調停は必要ない。
【0068】
STPCLK#要因に対応した制御はSTATE1からSTATE6の6状態を制御して行う。
【0069】
STATE1:CPUがSTPCLK#を受け付けられる状態。
【0070】
STATE2:いずれかの要因によりSTPCLK#がアサートされているが、ストップグラントサイクルが未完了である状態。
【0071】
STATE3:ストップグラントサイクルが完了した状態。実際には、ストップグラントサイクル完了後、STPCLK#デアサート可能となる数クロック分の待時間が終了した時点でこの状態となる。STATE3からSTATE6へ移るケースも有り。
【0072】
STATE4:肩代り処理 AND/OR クロック操作処理に割り当てる。
【0073】
STATE5:STATE4を経て遷移した場合のSTPCLK#デアサート処理に割り当てる。
【0074】
STATE6:STPCLK#デアサートから次のSTPCLK#アサート可までのプリチャージ時間を保つ状態。
【0075】
(I)クロックチェンジ 各STATE処理
STATE1…クロックチェンジ要求と他のSTPCLK#要求、SMI#要求、INIT要求、NMI/INTR要求、HOLD要求、HALTとの調停を行うキャンセル条件は無い。STPCLK#をアサートする。
【0076】
STATE2…他のSTPCLK#要求、SMI#要求、INIT要求、NMI/INTR要求、HOLD要求のブロックを行う。HALTの発生を監視し、検出したならば、SMI#要求、INIT要求、NMI/INTR要求、HOLD要求のブロックを解除する。ストップグラントサイクルの完了によりSTATE3へ移る。
【0077】
STATE3…HALT発生していなければ、STATE4へ移る。HALTが発生していたならば、要求ラッチF/Fはクリアせずに、STPCLK#をデアサートする。(同期用F/Fのみクリアする)STPCLK#デアサートによりSTATE6へ移る。
【0078】
STATE4…肩代りHLDA処理を行う(CGHLDAZをイネーブルにする)。
【0079】
クロック切り替え処理を行う。クロッック切り替え処理が終了したならば、STATE5へ移る。
【0080】
STATE5…肩代りHLDA処理を行う。肩代りHLDAが終了したならば、要求ラッチF/Fと同期用F/Fをクリアする。STPCLK#デアサートによりSTATE6へ移る。
【0081】
STATE6…HALTの検出をクリアする。SMI#要求、INIT要求、NMI/INTR要求、HOLD要求のブロック(阻止)を解除する。STPCLK#プリチャージが終了したならばSTATE1へ移る。STATE1へ移ると同時に他のSTPCLK#要求のブロックが解除される。
【0082】
(II)I/Oリードクロック停止 各STATE処理
STATE1…I/Oリードクロック停止要求と他のSTPCLK#要求、SMI#要求、INIT要求、NMI/INTR要求、HOLD要求、HALTとの調停を行う。キャンセル条件は無い。STPCLK#をアサートする。
【0083】
STATE2…他のSTPCLK#要求、SMI#要求、INIT要求、NMI/INTR要求、HOLD要求のブロックを行う。HALTの発生を監視し、検出したならば、SMI#要求、INIT要求、NMI/INTR要求、HOLD要求のブロックを解除する。ストップグラントサイクルの完了によりSTATE3へ移る。
【0084】
STATE3…HALT発生していなければ、STATE4へ移る。HALT発生していたならば、要求ラッチF/Fはクリアせずに、STPCLK#をデアサートする。(同期用F/Fのみクリアする)STPCLK#デアサートによりSTATE6へ移る。
【0085】
STATE4…肩代りHLDA開始処理を行う。(CGHLDAZをイネーブルにする)クロック停止処理を行う。ブレークイベントの監視を行う。ブレークイベント…SMI要求あり、INIT(SRESET)要求あり、NMI要求ありかつNMISL=1、INT要求ありかつINTSL=1の4条件。ブレークイベント検出したならば、クロック始動処理を開始する。クロック始動処理を完了したならば、STATE5へ移る。
【0086】
STATE5:肩代りHLDA終了処理を行う。肩代りHLDA終了したならば、要求ラッチF/Fと同期用F/Fをクリアする。STPCLK#デアサートによりSTATE6へ移る。
【0087】
STATE6…HALTの検出をクリアする。SMI#要求、INIT要求、NMI/INTR要求、HOLD要求のブロックを解除する。STPCLK#プリチャージ時間が終了したならばSTATEへ移る。STATE1へ移ると同時に他のSTPCLK#要求のブロックが解除される。
【0088】
(III)I/Oリードグラント各STATE処理
STATE1…I/Oリードグラント要求と他のSTPCLK#要求、SMI要求、INIT要求、NMI/INTR要求との調停を行う。キャンセル条件はない。STPCLK#をアサートする。
【0089】
STATE2…他のSTPCLK#要求のブロックを行う。ストップグラントサイクルの完了によりSTATE3へ移る。
【0090】
STATE3…ブレークイベントの監視を行う。ブレークイベント…SMI#要求あり、INIT(SRESET)要求あり、NMI要求ありかつNMISL=1、INT要求ありかつINTSL=1の4条件。ブレークイベントを検出したならば、要求ラッチF/Fと同期用F/Fをクリアする。STPCLK#デアサートによりSTATE6へ移る。
【0091】
STATE6…STPCLK#プリチャージ時間が終了したならばSTATE1へ移る。STATE1へ移ると同時に他のSTPCLK#要求のブロックが解除される。
【0092】
(IV)インターバルグラント 各STATE処理
STATE1…インターバルグラント要求と他のSTPCLK#要求、SMI#要求、INIT要求、NMI/INTR要求との調停を行う。調停に負けた場合は、インターバルグラント要求をキャンセルする。(要求ラッチF/Fと同期用F/Fをクリアする)。STPCLK#をアサートする。
【0093】
STATE2…他のSTPCLK#要求のブロックを行う。ストップグラントサイクルの完了によりSTATE3へ移る。
【0094】
STATE3…インターバルブレークイネーブルを発行する。ブレークイベントの監視を行う。ブレークイベント…SMI#要求あり、INIT(SRESET)要求あり、NMI要求あり、かつNMISL=1、INT要求ありかつINTSL=1、インターバルストップクロックホールドタイムアウトの5条件。ブレークイベントを検出したならば、要求ラッチF/Fと同期用F/Fをクリアする。STPCLK#デアサートによりSTATE6へ移る。
【0095】
STATE6…インターバルブレークイネーブルを取り消す。STPCLK#プリチャージ時間が完了したならばSTATE1へ移る。STATE1へ移ると同時に他のSTPCLK#要求のブロックが解除される。
【0096】
(V)リフレッシュグラント 各STATE処理
STATE1…リフレッシュグラント要求と他のSTPCLK#要求、SMI#要求、INIT要求、NMI/INTR要求、HALTとの調停を行う。調停に負けた場合は、リフレッシュグラント要求をキャンセルする。(要求ラッチF/Fと同期用F/Fをクリアする)STPCLK#をアサートする。
【0097】
STATE2…他のSTPCLK#要求、HOLD要求のブロックを行う。HALTの発生を監視し、検出したならば、HOLD要求のブロックを解除する。ストップブラントサイクルの完了によりSTATE3へ移る。
【0098】
STATE3…HALT発生していなければ、STATE4へ移る。HALT発生していたならば、要求ラッチF/Fと同期用F/Fをクリアする。STPCLK#デアサートによりSTATE6へ移る。
【0099】
STATE4…肩代りHLDA開始処理を行う。(CGHLDAZをイネーブルにする)。ブレークイベントの監視(=リフレッシュのHDRQデアサート)を行う。ブレークイベントを検出したならば、STATE5へ移る。
【0100】
STATE5…肩代りHLDA終了処理を行う。肩代りHLDA終了したならば、要求ラッチF/Fと同期用F/Fをクリアする。STPCLK#デアサートによりSTATE6へ移る。
【0101】
STATE6:HALTの検出をクリアする。HOLD要求のブロックを解除する。STPCLK#プリチャージ時間が終了したならばSTATE1へ移る。STATE1へ移ると同時に他のSTPCLK#要求のブロックが解除される。
【0102】
【発明の効果】
以上述べたごとく、この発明によれば、コンピュータシステムの消費電力を効率良く低減することができる。
【図面の簡単な説明】
【図1】 この発明のストップクロック機能を使用した省エネルギーモード機能を備えたコンピュータシステムの一実施例を示すブロック図。
【図2】 図1に示すISAコントローラ11内に設けられた、ストップクロック機能を使用した省エネルギーモード機能を実現するための回路を示す回路図。
【図3】 インターバルストップクロックの基本タイミングを示すタイミングチャート。
【図4】 スナップモードを説明するためのタイミングチャート。
【図5】 インターバルストップクロックを禁止する際のタイミングを示すタイミングチャート。
【図6】 インターバルストップクロックが動作中、INTR、SMI,NMI,SRESET(INIT)、VRAMアクセスがあった場合の処理を示す図。
【図7】 インターバルストップクロックタイミングの詳細タイミングを示すタイミングチャート。
【図8】 途中で他のブレーク要因(INTR,NMI,SMI,SRESET,INIT)があった場合のインターバルストップクロックのタイミングを示すタイミングチャート。
【図9】 ストップクロックリフレッシュタイミングを示すタイミングチャート。
【図10】 STPCLK#をアサートするときに、すでに割り込みがあった場合におけるストップクロックリフレッシュと割り込みとの関係を示すタイミングチャート。
【図11】 CPUとして80486を用いた場合において、STPCLK#をアサートした後に、割り込みがでた場合におけるストップクロックリフレッシュと割り込みとの関係を示すタイミングチャート。
【図12】 CPUとしてPentiumを用い場合において、STPCLK#をアサートした後に、割り込みがでた場合におけるストップクロックリフレッシュと割り込みとの関係を示すタイミングチャート。
【図13】 CPUとしてPentiumを用いた場合に、HALTが来たときのストップクロックリフレッシュとHALTとの関係を示すタイミングチャート。
【図14】 HOLD/HLDA肩代り回路を説明するための説明図。
【図15】 リフレッシュサイクルを引き延ばすことによりCPUの動作速度を見かけ上遅らせるための回路例を示す図。
【図16】 リフレッスサイクルを引き延ばすことによりCPUの動作速度を見かけ上遅らせる際のHOLD信号の引き延ばしを説明するための概念図。
【符号の説明】
1…CPU、3…CPUコントロールゲートアレイ、5…CPUバス、7…メインDRAM、9…VLバス、11…ISAコントロールゲートアレイ、13…拡張DRAM、15…VGAコントローラ、17…インターバルストップクロックリクエスト用カウンタ、19…インターバルストップクロックイネーブルレジスタ、21…比較回路、23…インターバルストップクロック信号のホールド期間用カウンタ、25…インターバルストップクロックホールドレジスタ、27…ANDゲート、29…比較回路、31…インヒビットタイマ、33…スナップモード用カウンタ、37…スナップモード用比較回路、41…調停回路。

Claims (11)

  1. 内部クロックの停止指示を示す指示信号及び割り込み処理の指示を示す割り込み信号を受信可能なCPUと、
    前記CPUへ前記指示信号をアサートする手段と、
    システムイベントが発生した場合、前記割り込み信号を発生する割り込み手段と、
    前記指示信号が前記CPUへアサートされている間に前記割り込み手段により割り込み信号が発生された場合、前記割り込み信号を保持し前記CPUへのアサートをブロックし、前記指示信号のアサートが解除された後に前記割り込み信号を前記CPUへアサートする手段と、
    を具備することを特徴とするコンピュータシステム。
  2. 内部クロックの停止指示を示す指示信号の受信に応じて、省電力状態へ移行するCPUと、
    前記CPUへ前記指示信号をアサートする手段と、
    システムイベントが発生した場合、割り込み信号を発生する割り込み手段と、
    前記CPUが前記省電力状態である間に前記割り込み手段により割り込み信号が発生された場合、前記割り込み信号を保持し前記CPUへのアサートをブロックし、前記省電力状態が解除された後に前記割り込み信号を前記CPUへアサートする手段と、
    を具備することを特徴とするコンピュータシステム。
  3. 前記指示信号はストップクロック(STPCLK)信号であることを特徴とする請求項1または2に記載のコンピュータシステム。
  4. 前記割り込み信号を前記CPUへアサートした後、所定時間は前記ストップクロック信号の入力を禁止することを特徴とする請求項3に記載のコンピュータシステム。
  5. 前記ストップクロック信号のアサートが解除されたことに応じて、前記ストップクロック信号をアサートが禁止される時間をカウントするタイマ手段を具備することを特徴とする請求項4に記載のコンピュータシステム。
  6. 内部クロックの停止指示を示す指示信号及び割り込み処理の指示を示す割り込み信号を受信可能なCPUを具備するコンピュータシステムの動作制御方法において、
    前記CPUへ前記指示信号をアサートし、
    システムイベントが発生した場合、前記割り込み信号を発生し、
    前記指示信号が前記CPUへアサートされている間に前記割り込み信号が発生した場合、前記割り込み信号を保持し前記CPUへのアサートをブロックし、
    前記指示信号のアサートが解除された後に前記割り込み信号を前記CPUへアサートすることを特徴とする動作制御方法。
  7. 内部クロックの停止指示を示す信号の受信に基づいて省電力状態へ移行するCPUを具備するコンピュータシステムの動作制御方法において、
    前記CPUへ前記信号をアサートし、
    システムイベントが発生した場合、前記CPUへ割り込み処理の指示を示す割り込み信号を発生し、
    前記CPUが前記省電力状態の間に前記割り込み信号が発生した場合、前記割り込み信号を保持し前記CPUへのアサートをブロックし、
    前記CPUが省電力状態から解除された後に前記割り込み信号を前記CPUへアサートすることを特徴とする動作制御方法。
  8. CPUの内部クロックを停止するストップクロック信号を受信するCPUを具備するコンピュータシステムにおいて、
    前記CPUをCPUが低電力状態にセットされるストップグラント状態にするためのストップクロック信号をアサートする手段と、
    前記CPUがストップグラント状態にあるときに、リフレッシュサイクルを実行する手段と、
    前記CPUがストップグラント状態にあるときにリフレッシュサイクルを実行するか否かを指定する手段と、
    前記CPUがストップグラント状態にあるときにリフレッシュサイクルを実行することが指定されたとき、HOLD要求をCPUに伝達せずに、CPUの代わりにHOLDアクノリッジ信号(HLDA)を出す手段と、
    を具備するコンピュータシステム。
  9. CPUの内部クロックを停止するストップクロック信号を受信するCPUを具備するコンピュータシステムにおいて、
    前記CPUをCPUが低電力状態にセットされるストップグラント状態にするためのストップクロック信号をアサートする手段と、
    前記CPUがストップグラント状態にあるときに、リフレッシュサイクルを実行する手段と、
    前記CPUがストップグラント状態にあるときにリフレッシュサイクルを実行するか否かを指定する手段と、
    前記リフレッシュサイクルのサイクル長を切り替える手段と、
    を具備するコンピュータシステム。
  10. CPUの内部クロックを停止するストップクロック信号を受信するCPUを具備するコンピュータシステムにおいて、
    前記CPUの動作速度を減少し、消費電力を節約するために前記ストッククロック信号を一定時間アサートする手段と、
    前記ストップクロック信号がアサートされる時に割り込みが既に発生されている場合、ストップクロックをアサートすることなく前記CPUにHOLD信号を出力し、前記CPUがhold状態に設定され、リフレッシュサイクルを実行する手段とを具備するコンピュータシステム。
  11. CPUの内部クロックを停止するストップクロック信号を受信するCPUを具備するコンピュータシステムにおいて、
    前記CPUの動作速度を減少し、消費電力を節約するために前記ストッククロック信号を一定時間アサートする手段と、
    前記ストップクロック信号がアサートされた後にHALT信号が発生される場合、前記CPUをHALT状態に設定する手段と、
    前記ストップクロック信号のアサート中に、HOLD信号を前記CPUに出力し、前記CPUにリフレッシュサイクルを実行させる手段と、
    リフレッシュサイクルの実行後、前記CPUを低電力状態に設定されるストックグラント状態に設定するために割り込み信号を前記CPUに発行し、CPUがストックグラント状態の時にCPUにストップグラントサイクルを実行させる手段と、
    前記CPUがストックグラントサイクルを完了後、ストッククロック信号をデアサートする手段とを具備するコンピュータシステム。
JP2003026128A 2003-02-03 2003-02-03 コンピュータシステム及びその動作制御方法 Expired - Fee Related JP3713488B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003026128A JP3713488B2 (ja) 2003-02-03 2003-02-03 コンピュータシステム及びその動作制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003026128A JP3713488B2 (ja) 2003-02-03 2003-02-03 コンピュータシステム及びその動作制御方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP7132196A Division JPH08328684A (ja) 1995-05-30 1995-05-30 コンピュータシステム

Publications (2)

Publication Number Publication Date
JP2003271260A JP2003271260A (ja) 2003-09-26
JP3713488B2 true JP3713488B2 (ja) 2005-11-09

Family

ID=29208403

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003026128A Expired - Fee Related JP3713488B2 (ja) 2003-02-03 2003-02-03 コンピュータシステム及びその動作制御方法

Country Status (1)

Country Link
JP (1) JP3713488B2 (ja)

Also Published As

Publication number Publication date
JP2003271260A (ja) 2003-09-26

Similar Documents

Publication Publication Date Title
US7155618B2 (en) Low power system and method for a data processing system
US7093153B1 (en) Method and apparatus for lowering bus clock frequency in a complex integrated data processing system
JP3964472B2 (ja) クロック制御装置
US5590341A (en) Method and apparatus for reducing power consumption in a computer system using ready delay
JP3526920B2 (ja) コンピュータシステム、ならびに周辺バスクロック信号を制御するためのシステムおよび方法
JP3919245B2 (ja) 集積プロセッサ
US6971033B2 (en) Method and apparatus for improving bus master performance
US6560712B1 (en) Bus arbitration in low power system
EP1369767B1 (en) Method and apparatus for adaptive power management of memory
US5628019A (en) System and method for controlling a peripheral bus clock signal during a reduced power mode
USRE46193E1 (en) Distributed power control for controlling power consumption based on detected activity of logic blocks
US5954809A (en) Circuit for handling distributed arbitration in a computer system having multiple arbiters
JP3919246B2 (ja) マルチプレクサ、集積プロセッサ、および信号マルチプレクサ
WO1998044405A1 (en) Automatic transitioning between acpi c3 and c2 states
JPH08339346A (ja) バスアービタ
US6317841B1 (en) Computer system using stop clock function of CPU to enter low power state
US20080068238A1 (en) Entry/Exit Control To/From a Low Power State in a CPU with an Unprotected Pipeline
JP3568592B2 (ja) 周辺バスクロック信号を制御するためのコンピュータシステムおよびその方法
JP3713488B2 (ja) コンピュータシステム及びその動作制御方法
EP2657847A1 (en) Information processing system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040803

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041004

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050405

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050606

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050816

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050822

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090826

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090826

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100826

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees