JP4250464B2 - Semiconductor integrated circuit - Google Patents
Semiconductor integrated circuit Download PDFInfo
- Publication number
- JP4250464B2 JP4250464B2 JP2003179603A JP2003179603A JP4250464B2 JP 4250464 B2 JP4250464 B2 JP 4250464B2 JP 2003179603 A JP2003179603 A JP 2003179603A JP 2003179603 A JP2003179603 A JP 2003179603A JP 4250464 B2 JP4250464 B2 JP 4250464B2
- Authority
- JP
- Japan
- Prior art keywords
- output
- data
- cycle
- output data
- buffer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Dc Digital Transmission (AREA)
- Dram (AREA)
- Logic Circuits (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、一般に半導体集積回路に関し、詳しくは半導体集積回路からデータを出力するデータ出力回路を含む半導体集積回路に関する。
【従来の技術】
半導体集積回路の出力データが、前の信号レベルから新たな信号レベルに変化すると、その変化に応じて出力I/Oバッファにおいて電流が消費される。出力I/O数が増大すると、出力I/Oバッファの動作時に流れる電流が全体として大きくなる。また半導体集積回路の動作が高速になると、瞬間的に流れる電流値di/dtが大きくなる。これによりI/Oバッファの電源電位や接地電位が大きく変動すると、半導体集積回路が誤動作する可能性がある。特に半導体集積回路の集積度が増して微細な回路構造となると、電位の変動を受けやすくなるので、上記の誤動作の問題が顕在化してくる。
【0002】
この電位変動は、半導体集積回路を実装するパッケージと半導体集積回路との間にある寄生インダクタンスの大きさに依存する。従って、この寄生インダクタンス値を小さくすることによって、電位変動のノイズは減少することができる。しかしながら、インダクタンスの小さいパッケージは一般的に高価になる傾向があり、コスト面から望ましい解決策ではない。
【0003】
別の解決策として、データ出力タイミングをずらす方法がある。同期式の半導体集積回路では、クロックに同期してデータ出力するので、同一のタイミングで出力I/Oバッファも動作することになる。しかしながら、一般にI/Oの動作周波数は半導体集積回路内部の動作周波数と比較して低速であり、タイミングマージンも広くとられることが多い。従って、出力クロックサイクル時間の10分の1程度の範囲で、出力I/Oバッファからの出力タイミングをずらせるように設計することが可能である。これにより、同時スイッチングすることによる電流のピーク値を低減することができる。しかしながら、設計時に各出力I/Oバッファのタイミングを調整するので、設計が複雑になるという問題がある。またI/Oバッファの数が増えるとタイミング調整だけでは対応しきれなくなる。
【0004】
更に別の解決策として、出力データを符号化する方法がある(非特許文献1及び非特許文献2)。前回の出力データと新たな出力データとが同一であれば、出力I/Oバッファはスイッチングしないので電流は流れない。従って、出力データを適切に符号化して同時にスイッチングする出力I/Oバッファの数を少なくすれば、流れる電流量を小さくして電位変動ノイズを低減することができる。
【0005】
【特許文献1】
特開平8−316840号公報
【0006】
【特許文献2】
特開2000−295088号公報
【0007】
【特許文献3】
特開2002−259940号公報
【0008】
【非特許文献1】
エム・アール・スタン(M.R. Stan et al.)他、「バス・インバーテッド コーディング フォー ローパワー アイオー(Bus-Inverted Coding for Low Power I/O)」、(米国)、アイトリプルイートランザクション オン ベリーラージスケール インテグレーションシステムズ(IEEE Transaction on Very Large Scale Integration Systems)、1995年3月、第3巻(Vol.3)、第1号(No. 1)、pp49−58
【0009】
【非特許文献2】
エス・コマツ他(S. Komatsu et al.)、「バスデータ エンコーディング ウィズ カップリング ドリブン アダプティブ コードブックメソッド フォー ローパワー データトランスミッション(Bus Data Encoding with Coupling-driven Adaptive Code-book Method for Low Power Data Transmission)」、(オーストリア)、第27回ヨーロッピアン ソリッドステートサーキッツ コンファレンス プロシーディング(27th European Solid-State Circuits Conference Proceeding)、2001年9月
【発明が解決しようとする課題】
出力データを符号化する手法では、符号化により出力データの値を変化させてしまうので、データを受信する半導体集積回路側においてデータを復号化する回路が必要になる。従って、相手側の構成に関らずに互いにデータをやり取りすることが可能なわけではなく、一般のシステムにおいて使用可能な汎用的な技術ではない。
【0010】
以上を鑑みて、本発明は、受信側に特別な回路を組み込む必要なく、同時にスイッチングする出力I/Oバッファ数を所定数以下とすることで、電位変動を小さくする半導体集積回路を提供することを目的とする。
【課題を解決するための手段】
本発明による半導体集積回路は、データ供給元から供給される出力データを半導体集積回路外部に出力する出力I/Oバッファと、第1のサイクルにおいて該出力I/Oバッファから出力した第1の出力データを保持するレジスタと、該出力I/Oバッファから新たに出力すべき出力データと該レジスタに保持される該第1の出力データとが所定の基準以上異なっているか否かの判断に応じて、該第1のサイクルに続く第2のサイクルにおいて該データ供給元から供給される第2の出力データ、該第2のサイクル以前に該データ供給元から供給された第3の出力データ、及び該第1の出力データの何れか一つを該出力I/Oバッファから該第2のサイクルにおいて出力するように制御する制御回路を含み、該制御回路は、該第2の出力データと該第1の出力データとの差異が所定のビット数以下である旨の判断に応答して該出力I/Oバッファから該第2のサイクルにおいて該第2の出力データを出力し、該差異が該所定のビット数以下でない場合に該第3の出力データと該第1の出力データとの差異が前記所定のビット数以下である旨の判断に応答して該出力I/Oバッファから該第2のサイクルにおいて該第3の出力データを出力し、該第2又は第3の出力データを出力しない場合には該出力I/Oバッファから該第2のサイクルにおいて該第1の出力データを出力することを特徴とする。
【0011】
上記半導体集積回路においては、出力I/Oバッファから新たに出力すべき出力データとレジスタに保持される第1の出力データとがどの程度異なるのかを判断し、判断結果に応じて、その新たに出力すべき出力データを実際に出力するか或いは出力データを無変化状態に保つかを制御する。現サイクルに供給された第2の出力データが前サイクルの出力データである第1の出力データとそれ程異ならないのであれば、第2の出力データを出力すればよい。この場合、同時にスイッチングする出力I/Oバッファの数は少ないので電流消費は小さい。同様に、以前のサイクルに供給された第3の出力データが前サイクルの出力データである第1の出力データとそれ程異ならないのであれば、第3の出力データを出力すればよい。この場合、同時にスイッチングする出力I/Oバッファの数は少ないので電流消費は小さい。また第2の出力データ及び第3の出力データが両方共に第1の出力データと大きく異なる場合には、前サイクルと同一の第1のデータを出力する。この場合には、出力無変化とすることで電流消費を無くすことができる。
【0012】
以上により、本発明は、受信側に特別な回路を組み込む必要なく、同時にスイッチングする出力I/Oバッファ数を所定数以下とすることで、電位変動を小さくする半導体集積回路を提供することができる。
【発明の実施の形態】
以下に、本発明の実施例を添付の図面を用いて詳細に説明する。
【0013】
ある出力サイクルにおいてスイッチングする出力I/Oバッファの数を少なくするためには、前サイクルの出力データと現サイクルの出力データ(新たに出力しようとするデータ)との間で、信号レベルが変化するI/Oピン数を小さくすればよい。変化するI/Oピンの数は、前サイクルのコードと現サイクルのコードとのハミング距離で表される。ハミング距離とは2つのコード間での異なるビット数であり、例えば4ビットのコードで(0011)と(0000)とは最後の2ビットが異なるので、ハミング距離は2である。本発明においては、前サイクルの出力データと現サイクルの出力データとのハミング距離を算出し、算出した距離が所定の距離以上であるときは、現サイクルのデータを出力することなくダミーデータを出力する。出力されなかった現サイクルのデータは、メモリに格納し、後程適切な機会に出力する。
【0014】
図1は、本発明による出力データ制御回路の構成を示す構成図である。
【0015】
図1の出力データ制御回路10は、出力I/Oバッファ11、レジスタ12、距離検出器13、比較回路14、セレクタ15、RAM16、コントローラ17、距離検出器18、比較回路19、Nサイクルモードデータ発生回路20、及び有効指示信号出力バッファ21を含む。図1の出力データ制御回路10は、例えばCPUからのデータ及びアドレスを内部出力データとして受け取り、これをRAMに対して外部出力データとして供給するために用いられる。以下においては、CPUからのデータ出力を例として説明するが、本発明はこの例に限られることなく種々のデータ転送に対して適用することができる。
【0016】
出力I/Oバッファ11は、内部出力データとしてCPUから供給されたデータ(例えばRAM等が対象の場合であればアドレス及びデータ)を、供給先の半導体集積回路に出力する。ここでは図示の便宜上、一つの出力I/Oバッファ11のみが示されるが、出力データは複数のビットを含み、複数の出力I/Oバッファがそれぞれのビットを出力する構成となっている。有効指示信号出力バッファ21は、出力I/Oバッファ11からの出力データが有効か否かを示す有効指示信号を出力する。この有効指示信号が有効を示す場合に、受信側の半導体集積回路は出力データ制御回路10からのデータを受信する。このような有効指示信号を使用することは、一般のシステムにおいて通常見られる通信制御の手法であり、本発明に特別なものではない。
【0017】
レジスタ12は、前サイクルにおいて送出されたデータを内部に格納して記憶する。このレジスタ12に格納されたデータは、次のサイクルで距離検出器13に送られる。距離検出器13は、レジスタ12に記憶されたデータとCPUから新たに供給される内部出力データとのハミング距離を算出する。算出されたハミング距離は、距離検出器13から比較回路14の一方の入力に供給される。比較回路14のもう一方の入力は、コントローラ17に予め設定された所定の基準値を受け取る。この基準値は、1サイクル中に変化することが許されるI/Oデータのビット数であり、ユーザが予め設定することができる。比較回路14は、算出されたハミング距離と基準値とを比較して、比較結果をコントローラ17に供給する。
【0018】
コントローラ17は、比較回路14からの比較結果に基づいて、セレクタ15を制御する。具体的には、ハミング距離が基準値より小さい場合、即ち出力I/Oバッファ11の同時スイッチングするビット数が基準値より小さい場合には、コントローラ17がセレクタ15を制御して、現サイクルの値をそのまま出力I/Oバッファ11から出力させる。逆にハミング距離が基準値よりも大きい場合には、現サイクルのデータを出力すると大きな電位変動ノイズが生じるので、コントローラ17がセレクタ15を制御して、レジスタ12からの前サイクルのデータを選択させて出力データを無変化とする。更に、出力されなかった現サイクルのデータをRAM16に書き込むように、コントローラ17は、RAM16に対してR/W制御信号と書き込みアドレスとを供給する。
【0019】
RAM16は、出力が保留されたデータを一時的に保存しておくために設けられるものであり、異なるアドレスに対して読み出しと書き込みとを同時に実行可能な1R/1Wタイプのマルチポートメモリである。RAM16に以前保留されて格納されているデータがある場合、コントローラ17は、現サイクルのデータをRAM16に書き込むのと同時に、格納されているデータのうちの1つをRAM16から読み出す。距離検出器18は、RAM16から読み出した出力保留データと、レジスタ12に格納されている前サイクルのデータとのハミング距離を計算する。比較回路19は、距離検出器18により計算された距離を予め設定した基準値と比較して、比較結果をコントローラ17に供給する。
【0020】
コントローラ17は、比較回路19の比較結果に基づいてセレクタ15を制御する。これにより、ハミング距離が基準値よりも小さい場合には、RAM16から読み出されたデータがセレクタ15により選択され、出力I/Oバッファ11を介して外部に出力される。図1から分るように、このときの出力データは、Nサイクルモードデータ発生回路20を通過することになる。即ちこの場合、Nサイクルモードデータ発生回路20は、コントローラ17からの制御に基づいて、入力側データをそのまま出力側に通過させる。ハミング距離が基準値よりも大きい場合には、セレクタ15はレジスタ12からの前サイクルのデータを選択するように制御され、出力I/Oバッファ11は前回と同一データを出力する。従って、出力I/Oバッファ11には電流が流れない。この場合はダミーサイクルとなり、出力されたデータは受信側の半導体集積回路で受信されることはない。
【0021】
以上の動作が、各サイクルにおいて実行される。従って、場合によってはRAM16に格納されるデータ数が増加し、RAM16の記憶容量を超えてしまう可能性がある。これに対処するために、出力保留されたデータがRAM16の記憶容量のある一定割合以上の数だけ書き込まれた場合には、コントローラ17が、前段の回路(この場合はCPU)に対して、これ以上の出力データ受け付けは不可能であることを示すWAIT信号を出力する。その後、コントローラ17はRAM16に現在保存されているデータを出力する動作モードに入る。
【0022】
この動作モードに入ると、コントローラ17は、RAM16から出力保留データを順次読み出して、Nサイクルモードデータ発生回路20、セレクタ15、及び出力I/Oバッファ11を介して外部に出力する。この際、ある出力データと次の出力データとの間で、出力I/Oバッファ11の同時スイッチング数が所定数を越えないように、Nサイクルモードデータ発生回路20がダミーデータを生成して出力データ間に挿入する。この際、一つの出力データを出力I/Oバッファ11から出力させるために、Nサイクルモードデータ発生回路20は2サイクル以上の所定のサイクル数を使用する。以下においては、簡単のため2サイクルかけて一つのデータを出力する場合を例として説明する。
【0023】
図2は、Nサイクルモードデータ発生回路20の動作の一例を説明するための図である。
【0024】
図2は、前サイクルのデータと現サイクルのデータとの間に一つのダミーデータを入れて、2サイクル費やして現サイクルのデータを出力する場合を示す。図に示されるように、前サイクルのデータ(レジスタ12に格納されるデータ)を、上位半分のデータ30aと下位半分のデータ30bとに分けて考える。また現サイクルのデータは、上位半分のデータ31aと下位半分のデータ31bとからなるとする。このときダミーデータとして、上位半分は現サイクルの上位半分のデータ31aとし、下位半分は前サイクルの下位半分のデータ30bとしたデータを作成する。Nサイクルモードデータ発生回路20は、前サイクルのデータを出力すると、その後このダミーデータを出力してから、現サイクルのデータを出力する。Nサイクルモードデータ発生回路20がこのような動作をすることによって、データ長をnビットとすれば、最大でn/2ビットしか変化しないようにデータを出力することができる。なお図の例では、前サイクルのデータから上位半分を変化させてダミーデータを作成しているが、代わりに下位半分を変化させてダミーデータを作成してもよい。
【0025】
最大でn/3ビットしか同時に変化しないようにデータを出力するためには、3サイクルかけてn/3ビットずつ前サイクルのデータから現サイクルのデータへと変化するように、ダミーデータを2つ発生させればよい。同様に、4サイクル以上のサイクル数を使用して、データ出力するようにしてもよい。
【0026】
図3は、Nサイクルモードデータ発生回路20の動作の別の一例を説明するための図である。
【0027】
図3においては、前サイクルと現サイクルのデータをビット毎に比較し、値が一致しているビットについてはそのビット値をダミーデータに使用する。値が異なるビットについては、上位ビット又は下位ビットから順番に、前サイクルの値及び現サイクルの値を交互に選択してダミーサイクルデータを構成する。この方法によっても、全体で最大n/2ビットしかデータが変化しないようにダミーデータを生成することができる。なお交互に選択するのではなく、値が異なるビットの上半分及び下半分に分けて、前サイクルのデータと現サイクルのデータとをそれぞれ選択してもよい。
【0028】
また値が異なるビットを1/3ずつ変化させて前サイクルのデータから現サイクルのデータへと3サイクルかけて変化させることで、3サイクルのデータ出力方法に拡張することができる。同様に、4サイクル以上のサイクル数を使用して、データ出力するようにしてもよい。
【0029】
図4は、Nサイクルモードデータ発生回路20の構成の一例を示す回路図である。
【0030】
図4のNサイクルモードデータ発生回路20は、2サイクルかけて一つのデータを出力する場合の構成であり、セレクタ41及び42を含む。セレクタ41及び42は、コントローラ17からの制御信号DMYU及びDMYLにより制御され、2入力のうちの一つを選択して出力する。現サイクルの出力データはRAM16から供給される出力データであり、上位半分RAMUと下位半分RAMLとからなる。また前サイクルの出力データはレジスタ12に格納されており、上位半分REGUと下位半分REGLとからなる。出力側はOUTUが上位ビット側、OUTLが下位ビット側であり、双方共にセレクタ15へ供給される。
【0031】
Nサイクルモード以外の通常モードではRAM16の出力がそのまま出力されるので、制御信号DMYU及びDMYLは1に設定され、OUTU=RAMU及びOUTL=RAMLとなる。Nサイクルモードに入った場合、1サイクル目で例えばDMYL=0及びDMYU=1とすることにより、OUTU=RAMU及びOUTL=REGLであるダミーデータを出力する。2サイクル目にはRAM16の出力をそのまま出力すればよいので、DMYL=DMYU=1とすればよい。1サイクル目に上位ビット側を現在のレジスタ値として下位ビット側をRAM16の出力値とする場合には、上記とは逆にDMYL=1及びDMYU=0とすればよい。
【0032】
図5は、Nサイクルモードデータ発生回路20の構成の別の一例を示す回路図である。
【0033】
図5のNサイクルモードデータ発生回路20は、3サイクルかけて一つのデータを出力する場合の構成であり、セレクタ51及び53を含む。セレクタ51乃至53は、それぞれコントローラ17からの制御信号DMYU、DMYM、及びDMYLにより制御され、2つの入力のうちの一つを選択して出力する。動作原理は図4の場合と同様であるので説明を省略する。
【0034】
図6は、Nサイクルモードデータ発生回路20の構成の更に別の一例を示す回路図である。
【0035】
図4の構成は、1サイクル目と2サイクル目との2つのサイクルにおいて、RAM16の同一アドレスから同一のデータが継続して読み出されることを前提としている。RAM16から1サイクル目だけデータが読み出される場合には、図6に示されるように、図4の構成に加えてセレクタ43及び44と、データを一時的に格納しておくためのフリップフロップ45を設ける。
【0036】
1サイクル目では、セレクタ制御信号FFU及びFFLを共に0として、RAM16から読み出したデータをフリップフロップ45に格納する。また同時に、セレクタ制御信号DMYU及びDMYLをそれぞれ1及び0として、下位ビット側は現在レジスタ値REGLを出力し、上位ビット側はRAM読み出しデータRAMUを出力する。2サイクル目はRAM16からのデータを出力するために、FFU=FFL=1としてセレクタ43及び44によりフリップフロップ45からのデータを選択し、DMYU=DMYL=1としてフリップフロップ45からのデータ(RAMU及びRAML)を出力する。
【0037】
図7は、コントローラ17によるRAM制御とセレクタ制御のアルゴリズムの一例を示すフローチャートである。
【0038】
コントローラ17は、CPU側からデータ出力要求を受けた場合(ステップST1でYes)、或いはRAM16内に出力すべきデータが残っている場合(ステップST2でYes)に起動される。データ出力要求を受けた場合(ステップST1でYes)、比較回路14による比較に基づいて、現サイクルの出力データと前サイクルの出力データとのハミング距離がある一定値以下であるか否かを判断する(ステップST4)。ハミング距離がある一定値以下である場合には(ステップST4でYes)、内部出力データが外部に出力されるようにセレクタ15を制御する(ステップST5)。このとき有効指示信号を有効にする。
【0039】
比較回路14による比較が、現サイクルの出力データと前サイクルの出力データとのハミング距離がある一定値以下でないことを示す場合は(ステップST4でNo)、現データをRAM16に書き込むと同時に書き込みポインタを1増加させる(ステップST6)。ここで、RAM16に対して読み出しポインタと書き込みポインタとが用意されており、2つのポインタで挟まれた範囲が有効なデータ範囲である。新しいデータがRAM16に書き込まれると書き込みポインタを1増加させ、データが1つ出力されると読み出しポインタが1つ増加する。これにより、FIFO(First in First out)バッファを実現している。
【0040】
比較回路19による比較に基づいて、RAM16から読み出したデータと前サイクルのデータとのハミング距離が設定値以下であると判断される場合は(ステップST7でYes)、RAM16のデータが出力I/Oバッファ11を介して外部に出力されるようにセレクタ15を制御する。このとき有効指示信号を有効にする。また読み出しポインタを1つ増加することで、RAM16内で保留中のデータを1つ減らし、次に読み出すべきデータを指し示す。
【0041】
比較回路19による比較が設定値以上のハミング距離を示す場合には(ステップST7でNo)、RAM16からのデータを出力できないので、前サイクルのデータを出力I/Oバッファ11を介して外部に出力するようにセレクタ15を制御する(ステップST9)。このとき有効指示信号を無効にする。この後RAM16がオーバーフローしているか否かをチェックし(ステップST10)、オーバーフローしていれば、CPUにWAIT信号を送出すると共にNサイクルモードにはいる(ステップST11)。なお出力保留中のデータを全て出力してNサイクルモードが終了すると、コントローラ17は出力成功信号をCPUに送信する。
【0042】
図7の例では、データ出力要求が無く(ステップST1でNo)、且つRAM内にデータが残っている場合(ステップST2でYes)においても、Nサイクルモードが起動されるアルゴリズムとなっている。これはRAM16内に出力保留中のデータがいつまでも残らないようにするために必要な処理である。
【0043】
またデータ出力要求が無く(ステップST1でNo)且つRAM内にデータが残っていない場合(ステップST2でNo)には、前サイクルのデータを出力I/Oバッファ11を介して外部に出力するようにセレクタ15を制御する(ステップST3)。このとき有効指示信号を無効にする。
【0044】
図8は、本発明による出力データ制御回路10をCPUからRAMへのアクセス動作部分に適用した場合の構成を示す図である。
【0045】
図8において、出力データ制御回路10は、CPU51からアドレス(nビット)、データ(mビット)、及び出力要求を受け取り、RAM53にアドレス&データ及び有効指示信号を供給する。入力ユニット52は、CPU51がRAM53からデータ(mビット)を読み出す場合に使用される。ここで、CPU51、出力データ制御回路10、及び入力ユニット52が一つの半導体集積回路チップに搭載され、RAM53は別の半導体集積回路チップに搭載される。
【0046】
I/Oバッファのスイッチングによる電流ノイズは、外部負荷を駆動する場合にのみ問題となり、入力回路のI/Oバッファのスイッチングでは問題とならない。従って、本発明によるデータ制御回路10は出力回路側にのみ適用し、入力回路側(入力ユニット52)には適用していない。
【0047】
以上、本発明を実施例に基づいて説明したが、本発明は上記実施例に限定されるものではなく、特許請求の範囲に記載の範囲内で様々な変形が可能である。
【0048】
なお本発明は以下の内容を含むものである。
(付記1)データ供給元から供給される出力データを半導体集積回路外部に出力する出力I/Oバッファと、
第1のサイクルにおいて該出力I/Oバッファから出力した第1の出力データを保持するレジスタと、
該出力I/Oバッファから新たに出力すべき出力データと該レジスタに保持される該第1の出力データとが所定の基準以上異なっているか否かの判断に応じて、該第1のサイクルに続く第2のサイクルにおいて該データ供給元から供給される第2の出力データ、該第2のサイクル以前に該データ供給元から供給された第3の出力データ、及び該第1の出力データの何れか一つを該出力I/Oバッファから該第2のサイクルにおいて出力するように制御する制御回路
を含むことを特徴とする半導体集積回路。
(付記2)該制御回路は、該第2の出力データと該第1の出力データとの差異が所定のビット数以下である旨の判断に応答して該出力I/Oバッファから該第2のサイクルにおいて該第2の出力データを出力し、該差異が該所定のビット数以下でない場合に該第3の出力データと該第1の出力データとの差異が所定のビット数以下である旨の判断に応答して該出力I/Oバッファから該第2のサイクルにおいて該第3の出力データを出力し、該第2又は第3の出力データを出力しない場合には該出力I/Oバッファから該第2のサイクルにおいて該第1の出力データを出力することを特徴とする付記1記載の半導体集積回路。
(付記3)該新たに出力すべき出力データと該レジスタに保持される該第1の出力データとのハミング距離を算出する距離検出器と、
該距離検出器が算出した距離と所定の値とを比較する比較回路と、
該第1の出力データ、該第2の出力データ、及び該第3の出力データの何れか一つを選択して該出力I/Oバッファに供給するセレクタ
を更に含み、該比較回路の比較結果に基づいて該制御回路が該セレクタを制御することを特徴とする付記1記載の半導体集積回路。
(付記4)記憶回路を更に含み、該制御回路は該出力I/Oバッファから該第2のサイクルにおいて該第2の出力データを出力しない場合に該第2の出力データを該記憶回路に格納することを特徴とする付記1記載の半導体集積回路。
(付記5)該第3の出力データは、該第2のサイクル以前のサイクルにおいて該データ供給元から供給され該制御回路によって該記憶回路に格納された出力データであることを特徴とする付記4記載の半導体集積回路。
(付記6)該記憶回路から連続して読み出される複数の出力データを受け取り、該複数の出力データの間に挿入するダミーデータを生成し、該ダミーデータを挿入した該複数の出力データを該出力I/Oバッファに供給するデータ発生回路を更に含むことを特徴とする付記1記載の半導体集積回路。
(付記7)該データ発生回路は、該複数の出力データの連続する2つの出力データの一方と上位半分が同一で他方と下位半分が同一であるダミーデータを生成し、該2つの出力データの間に挿入することを特徴とする付記6記載の半導体集積回路。
(付記8)該データ発生回路は、該複数の出力データの連続する2つの出力データの間でビット値が同一のビットについてはそのまま含み、該2つの出力データの間でビット値が同一でないビットについては、半数が該2つの出力データの一方と同一で残りの半数が該2つの出力データの他方と同一であるダミーデータを生成し、該2つの出力データの間に挿入することを特徴とする付記6記載の半導体集積回路。
(付記9)該データ発生回路は、該複数の出力データの連続する2つの出力データの間に挿入する複数のダミーデータを生成し、該2つの出力データの一方から始まり該複数のダミーデータを経て該2つの出力データの他方に到る一連のデータは隣接する2つのデータ間の差異が所定の基準値以下であることを特徴とする付記6記載の半導体集積回路。
【発明の効果】
上記の半導体集積回路においては、出力I/Oバッファから新たに出力すべき出力データとレジスタに保持される前サイクルの出力データとがどの程度異なるのかを判断し、判断結果に応じて、その新たに出力すべき出力データを実際に出力するのか或いは出力データを無変化状態に保つのかを制御する。これにより、同時にスイッチングする出力I/Oバッファの数を少なくし、電流消費を削減することができる。このようにして本発明は、受信側に特別な回路を組み込む必要なく、同時にスイッチングする出力I/Oバッファ数を所定数以下とすることで、電位変動を小さくする半導体集積回路を提供することができる。
【図面の簡単な説明】
【図1】本発明による出力データ制御回路の構成を示す構成図である。
【図2】Nサイクルモードデータ発生回路の動作の一例を説明するための図である。
【図3】Nサイクルモードデータ発生回路の動作の別の一例を説明するための図である。
【図4】Nサイクルモードデータ発生回路の構成の一例を示す回路図である。
【図5】Nサイクルモードデータ発生回路の構成の別の一例を示す回路図である。
【図6】Nサイクルモードデータ発生回路の構成の更に別の一例を示す回路図である。
【図7】コントローラによるRAM制御とセレクタ制御のアルゴリズムの一例を示すフローチャートである。
【図8】本発明による出力データ制御回路をCPUからRAMへのアクセス動作部分に適用した場合の構成を示す図である。
【符号の説明】
10 出力データ制御回路
11 出力I/Oバッファ
12 レジスタ
13 距離検出器
14 比較回路
15 セレクタ
16 RAM
17 コントローラ
18 距離検出器
19 比較回路
20 Nサイクルモードデータ発生回路
21 有効指示信号出力バッファ[0001]
BACKGROUND OF THE INVENTION
The present invention generally relates to semiconductor integrated circuits, and more particularly to a semiconductor integrated circuit including a data output circuit that outputs data from the semiconductor integrated circuit.
[Prior art]
When the output data of the semiconductor integrated circuit changes from the previous signal level to a new signal level, current is consumed in the output I / O buffer according to the change. As the number of output I / Os increases, the current that flows during operation of the output I / O buffer increases as a whole. Further, when the operation of the semiconductor integrated circuit becomes faster, the instantaneously flowing current value di / dt increases. As a result, if the power supply potential or ground potential of the I / O buffer fluctuates greatly, the semiconductor integrated circuit may malfunction. In particular, when the degree of integration of the semiconductor integrated circuit is increased and the circuit structure becomes finer, it becomes more susceptible to potential fluctuations, and thus the problem of malfunction described above becomes obvious.
[0002]
This potential fluctuation depends on the magnitude of the parasitic inductance between the package on which the semiconductor integrated circuit is mounted and the semiconductor integrated circuit. Therefore, by reducing the parasitic inductance value, potential fluctuation noise can be reduced. However, packages with low inductance generally tend to be expensive and are not a desirable solution from a cost standpoint.
[0003]
Another solution is to shift the data output timing. Since a synchronous semiconductor integrated circuit outputs data in synchronization with a clock, the output I / O buffer also operates at the same timing. However, in general, the operating frequency of I / O is lower than the operating frequency inside the semiconductor integrated circuit, and the timing margin is often wide. Therefore, it is possible to design the output timing from the output I / O buffer to be shifted within a range of about 1/10 of the output clock cycle time. Thereby, the peak value of current due to simultaneous switching can be reduced. However, since the timing of each output I / O buffer is adjusted at the time of design, there is a problem that the design becomes complicated. Further, when the number of I / O buffers increases, it becomes impossible to cope with timing adjustment alone.
[0004]
As another solution, there is a method of encoding output data (Non-Patent
[0005]
[Patent Document 1]
JP-A-8-316840
[0006]
[Patent Document 2]
JP 2000-295088 A
[0007]
[Patent Document 3]
JP 2002-259940 A
[0008]
[Non-Patent Document 1]
MR Stan et al. Et al., “Bus-Inverted Coding for Low Power I / O”, (US), I Triple E Transaction on Belly Large Scale Integration Systems (IEEE Transaction on Very Large Scale Integration Systems), March 1995, Volume 3 (Vol. 3), Issue 1 (No. 1), pp 49-58
[0009]
[Non-Patent Document 2]
S. Komatsu et al., “Bus Data Encoding with Coupling-driven Adaptive Code-book Method for Low Power Data Transmission” (Austria), 27th European Solid-State Circuits Conference Proceeding, September 2001
[Problems to be solved by the invention]
In the method of encoding the output data, the value of the output data is changed by the encoding. Therefore, a circuit for decoding the data is required on the semiconductor integrated circuit side that receives the data. Therefore, it is not possible to exchange data with each other regardless of the other party's configuration, and it is not a general-purpose technique that can be used in a general system.
[0010]
In view of the above, the present invention provides a semiconductor integrated circuit that reduces potential fluctuations by reducing the number of output I / O buffers that are simultaneously switched to a predetermined number or less without requiring a special circuit on the receiving side. With the goal.
[Means for Solving the Problems]
The semiconductor integrated circuit according to the present invention includes an output I / O buffer for outputting output data supplied from a data supply source to the outside of the semiconductor integrated circuit, and a first output output from the output I / O buffer in the first cycle. According to the judgment whether or not the register holding the data, the output data to be newly output from the output I / O buffer, and the first output data held in the register differ by more than a predetermined reference , Second output data supplied from the data supplier in a second cycle following the first cycle, third output data supplied from the data supplier before the second cycle, and the A control circuit that controls to output any one of the first output data from the output I / O buffer in the second cycle; In response to the determination that the difference between the second output data and the first output data is equal to or less than a predetermined number of bits, the control circuit outputs the second cycle from the output I / O buffer. Output the second output data in step S3, and if the difference is not less than the predetermined number of bits, the difference between the third output data and the first output data is less than the predetermined number of bits. In response to the determination, the third output data is output from the output I / O buffer in the second cycle, and when the second or third output data is not output, the output I / O buffer Outputting the first output data in the second cycle It is characterized by that.
[0011]
In the semiconductor integrated circuit, it is determined how much the output data to be newly output from the output I / O buffer is different from the first output data held in the register, and the new output data is newly determined according to the determination result. It controls whether to actually output the output data to be output or to keep the output data unchanged. If the second output data supplied in the current cycle is not so different from the first output data that is the output data of the previous cycle, the second output data may be output. In this case, the current consumption is small because the number of output I / O buffers that are simultaneously switched is small. Similarly, if the third output data supplied in the previous cycle is not so different from the first output data that is the output data of the previous cycle, the third output data may be output. In this case, the current consumption is small because the number of output I / O buffers that are simultaneously switched is small. When both the second output data and the third output data are greatly different from the first output data, the same first data as in the previous cycle is output. In this case, current consumption can be eliminated by making the output unchanged.
[0012]
As described above, the present invention can provide a semiconductor integrated circuit in which the potential fluctuation is reduced by setting the number of output I / O buffers to be simultaneously switched to a predetermined number or less without incorporating a special circuit on the receiving side. .
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
[0013]
In order to reduce the number of output I / O buffers to be switched in a certain output cycle, the signal level changes between the output data of the previous cycle and the output data of the current cycle (data to be newly output). The number of I / O pins may be reduced. The number of I / O pins that change is represented by the Hamming distance between the code of the previous cycle and the code of the current cycle. The Hamming distance is a different number of bits between two codes. For example, in a 4-bit code, (0011) and (0000) are different in the last two bits, so the Hamming distance is 2. In the present invention, the Hamming distance between the output data of the previous cycle and the output data of the current cycle is calculated, and when the calculated distance is equal to or greater than a predetermined distance, dummy data is output without outputting the current cycle data. To do. The data of the current cycle that has not been output is stored in the memory, and is output at an appropriate opportunity later.
[0014]
FIG. 1 is a block diagram showing the configuration of an output data control circuit according to the present invention.
[0015]
The output
[0016]
The output I / O buffer 11 outputs data supplied from the CPU as internal output data (for example, an address and data if a RAM or the like is a target) to a supply destination semiconductor integrated circuit. Here, for convenience of illustration, only one output I / O buffer 11 is shown, but the output data includes a plurality of bits, and the plurality of output I / O buffers are configured to output the respective bits. The valid instruction
[0017]
The register 12 stores and stores the data sent in the previous cycle. The data stored in the register 12 is sent to the
[0018]
The
[0019]
The
[0020]
The
[0021]
The above operation is executed in each cycle. Therefore, in some cases, the number of data stored in the
[0022]
When this operation mode is entered, the
[0023]
FIG. 2 is a diagram for explaining an example of the operation of the N cycle mode
[0024]
FIG. 2 shows a case where one dummy data is inserted between the previous cycle data and the current cycle data, and the current cycle data is output after spending two cycles. As shown in the figure, the data of the previous cycle (data stored in the register 12) is considered divided into
[0025]
In order to output data so that only n / 3 bits change at the same time, two dummy data are used so that data changes from the previous cycle to the current cycle by n / 3 bits over 3 cycles. It only has to be generated. Similarly, data may be output using a cycle number of 4 cycles or more.
[0026]
FIG. 3 is a diagram for explaining another example of the operation of the N cycle mode
[0027]
In FIG. 3, the data of the previous cycle and the current cycle are compared for each bit, and the bit value of the bit having the same value is used as dummy data. For bits having different values, dummy cycle data is configured by alternately selecting the value of the previous cycle and the value of the current cycle in order from the upper bit or the lower bit. Also by this method, dummy data can be generated so that the data changes only by a maximum of n / 2 bits as a whole. Instead of selecting them alternately, the data of the previous cycle and the data of the current cycle may be selected separately for the upper half and the lower half of the bits having different values.
[0028]
Further, by changing the bits having different values by 1/3 and changing the data from the previous cycle to the current cycle over 3 cycles, the data output method can be extended to 3 cycles. Similarly, data may be output using a cycle number of 4 cycles or more.
[0029]
FIG. 4 is a circuit diagram showing an example of the configuration of the N cycle mode
[0030]
The N cycle mode
[0031]
In the normal mode other than the N cycle mode, since the output of the
[0032]
FIG. 5 is a circuit diagram showing another example of the configuration of N cycle mode
[0033]
The N cycle mode
[0034]
FIG. 6 is a circuit diagram showing still another example of the configuration of the N cycle mode
[0035]
The configuration of FIG. 4 is based on the premise that the same data is continuously read from the same address in the
[0036]
In the first cycle, both the selector control signals FFU and FFL are set to 0, and the data read from the
[0037]
FIG. 7 is a flowchart showing an example of an algorithm for RAM control and selector control by the
[0038]
The
[0039]
When the comparison by the
[0040]
When it is determined that the Hamming distance between the data read from the
[0041]
If the comparison by the
[0042]
In the example of FIG. 7, even when there is no data output request (No in step ST1) and data remains in the RAM (Yes in step ST2), the N cycle mode is activated. This is a process necessary to prevent the data pending output from remaining in the
[0043]
If there is no data output request (No in step ST1) and no data remains in the RAM (No in step ST2), the data of the previous cycle is output to the outside via the output I / O buffer 11. The
[0044]
FIG. 8 is a diagram showing a configuration in the case where the output
[0045]
In FIG. 8, the output
[0046]
Current noise due to switching of the I / O buffer becomes a problem only when driving an external load, and does not become a problem when switching the I / O buffer of the input circuit. Therefore, the
[0047]
As mentioned above, although this invention was demonstrated based on the Example, this invention is not limited to the said Example, A various deformation | transformation is possible within the range as described in a claim.
[0048]
The present invention includes the following contents.
(Supplementary note 1) an output I / O buffer for outputting output data supplied from a data supply source to the outside of the semiconductor integrated circuit;
A register for holding first output data output from the output I / O buffer in a first cycle;
Depending on the judgment whether or not the output data to be newly output from the output I / O buffer and the first output data held in the register differ by more than a predetermined reference, the first cycle is executed. Any of the second output data supplied from the data supply source in the subsequent second cycle, the third output data supplied from the data supply source before the second cycle, and the first output data Control circuit for controlling one of the output I / O buffers to output in the second cycle
A semiconductor integrated circuit comprising:
(Supplementary Note 2) In response to the determination that the difference between the second output data and the first output data is equal to or less than a predetermined number of bits, the control circuit receives the second output data from the output I / O buffer. When the second output data is output in the cycle, and the difference is not less than the predetermined number of bits, the difference between the third output data and the first output data is less than the predetermined number of bits. The third output data is output from the output I / O buffer in the second cycle in response to the determination of the output I / O buffer, and the output I / O buffer is output when the second or third output data is not output. The semiconductor integrated circuit according to
(Supplementary Note 3) A distance detector that calculates a Hamming distance between the output data to be newly output and the first output data held in the register;
A comparison circuit for comparing the distance calculated by the distance detector with a predetermined value;
A selector that selects any one of the first output data, the second output data, and the third output data and supplies the selected data to the output I / O buffer
The semiconductor integrated circuit according to
(Supplementary Note 4) Further including a storage circuit, and when the control circuit does not output the second output data from the output I / O buffer in the second cycle, the second output data is stored in the storage circuit. The semiconductor integrated circuit according to
(Supplementary Note 5) The third output data is output data supplied from the data supply source and stored in the storage circuit by the control circuit in a cycle before the second cycle. The semiconductor integrated circuit as described.
(Supplementary note 6) Receive a plurality of output data continuously read from the storage circuit, generate dummy data inserted between the plurality of output data, and output the plurality of output data into which the dummy data is inserted The semiconductor integrated circuit according to
(Supplementary Note 7) The data generation circuit generates dummy data in which one of two consecutive output data of the plurality of output data is the same as the upper half and the other and the lower half are the same, and the two output data 8. The semiconductor integrated circuit according to appendix 6, wherein the semiconductor integrated circuit is inserted between them.
(Supplementary Note 8) The data generation circuit includes a bit having the same bit value between two consecutive output data of the plurality of output data as it is, and a bit whose bit value is not the same between the two output data Is characterized in that dummy data in which half is identical to one of the two output data and the remaining half is identical to the other of the two output data is generated and inserted between the two output data. The semiconductor integrated circuit according to appendix 6.
(Supplementary Note 9) The data generation circuit generates a plurality of dummy data to be inserted between two consecutive output data of the plurality of output data, and starts the dummy data starting from one of the two output data. 7. The semiconductor integrated circuit according to appendix 6, wherein a series of data reaching the other of the two output data has a difference between two adjacent data equal to or less than a predetermined reference value.
【The invention's effect】
In the above semiconductor integrated circuit, it is determined how much the output data to be newly output from the output I / O buffer differs from the output data of the previous cycle held in the register, and the new data is determined according to the determination result. It controls whether the output data to be output is actually output or whether the output data is kept unchanged. As a result, the number of output I / O buffers that are simultaneously switched can be reduced, and current consumption can be reduced. In this way, the present invention provides a semiconductor integrated circuit that reduces potential fluctuations by reducing the number of output I / O buffers that are simultaneously switched to a predetermined number or less without requiring a special circuit on the receiving side. it can.
[Brief description of the drawings]
FIG. 1 is a configuration diagram showing a configuration of an output data control circuit according to the present invention.
FIG. 2 is a diagram for explaining an example of an operation of an N cycle mode data generation circuit.
FIG. 3 is a diagram for explaining another example of the operation of the N cycle mode data generation circuit.
FIG. 4 is a circuit diagram showing an example of a configuration of an N cycle mode data generation circuit.
FIG. 5 is a circuit diagram showing another example of a configuration of an N cycle mode data generation circuit.
FIG. 6 is a circuit diagram showing still another example of the configuration of the N cycle mode data generation circuit.
FIG. 7 is a flowchart illustrating an example of an algorithm for RAM control and selector control by a controller.
FIG. 8 is a diagram showing a configuration when an output data control circuit according to the present invention is applied to an access operation portion from a CPU to a RAM.
[Explanation of symbols]
10 Output data control circuit
11 Output I / O buffer
12 registers
13 Distance detector
14 Comparison circuit
15 selector
16 RAM
17 Controller
18 Distance detector
19 Comparison circuit
20 N cycle mode data generation circuit
21 Valid indication signal output buffer
Claims (4)
第1のサイクルにおいて該出力I/Oバッファから出力した第1の出力データを保持するレジスタと、
該出力I/Oバッファから新たに出力すべき出力データと該レジスタに保持される該第1の出力データとが所定の基準以上異なっているか否かの判断に応じて、該第1のサイクルに続く第2のサイクルにおいて該データ供給元から供給される第2の出力データ、該第2のサイクル以前に該データ供給元から供給された第3の出力データ、及び該第1の出力データの何れか一つを該出力I/Oバッファから該第2のサイクルにおいて出力するように制御する制御回路
を含み、
該制御回路は、該第2の出力データと該第1の出力データとの差異が所定のビット数以下である旨の判断に応答して該出力I/Oバッファから該第2のサイクルにおいて該第2の出力データを出力し、
該差異が該所定のビット数以下でない場合に該第3の出力データと該第1の出力データとの差異が前記所定のビット数以下である旨の判断に応答して該出力I/Oバッファから該第2のサイクルにおいて該第3の出力データを出力し、
該第2又は第3の出力データを出力しない場合には該出力I/Oバッファから該第2のサイクルにおいて該第1の出力データを出力する
ことを特徴とする半導体集積回路。An output I / O buffer for outputting output data supplied from a data supply source to the outside of the semiconductor integrated circuit;
A register for holding first output data output from the output I / O buffer in a first cycle;
Depending on the judgment whether or not the output data to be newly output from the output I / O buffer and the first output data held in the register differ by a predetermined reference or more, the first cycle is executed. Any of second output data supplied from the data supply source in the subsequent second cycle, third output data supplied from the data supply source before the second cycle, and the first output data look including one from the output I / O buffer control circuit for controlling to output in the second cycle or,
The control circuit responds to the determination that the difference between the second output data and the first output data is less than a predetermined number of bits from the output I / O buffer in the second cycle. Output second output data,
The output I / O buffer in response to a determination that the difference between the third output data and the first output data is less than the predetermined number of bits when the difference is not less than the predetermined number of bits. To output the third output data in the second cycle from
The semiconductor integrated circuit, wherein when the second or third output data is not output, the first output data is output from the output I / O buffer in the second cycle .
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003179603A JP4250464B2 (en) | 2003-06-24 | 2003-06-24 | Semiconductor integrated circuit |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003179603A JP4250464B2 (en) | 2003-06-24 | 2003-06-24 | Semiconductor integrated circuit |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2005020169A JP2005020169A (en) | 2005-01-20 |
| JP4250464B2 true JP4250464B2 (en) | 2009-04-08 |
Family
ID=34180886
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2003179603A Expired - Fee Related JP4250464B2 (en) | 2003-06-24 | 2003-06-24 | Semiconductor integrated circuit |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4250464B2 (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5778640B2 (en) * | 2012-08-10 | 2015-09-16 | 日本電信電話株式会社 | Frame search processing apparatus and method |
| JP6493042B2 (en) * | 2015-07-09 | 2019-04-03 | 富士通株式会社 | Semiconductor device and method for controlling semiconductor device |
-
2003
- 2003-06-24 JP JP2003179603A patent/JP4250464B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2005020169A (en) | 2005-01-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR100429724B1 (en) | High-performance dma controller | |
| US20050180229A1 (en) | On die termination mode transfer circuit in semiconductor memory device and its method | |
| US20040133758A1 (en) | Memory controller, interface device and method using a mode selection signal to support different types of memories | |
| US20080144397A1 (en) | Pipe latch circult of multi-bit prefetch-type semiconductor memory device with improved structure | |
| US20100054060A1 (en) | Delay locked loop and semiconductor memory device with the same | |
| CN100541648C (en) | semiconductor storage device | |
| CN100405343C (en) | A kind of asynchronous data cache device | |
| CN101126794B (en) | integrated circuit | |
| JP2007073052A (en) | Accessing external memory from integrated circuit | |
| US6954094B2 (en) | Semiconductor memory device having partially controlled delay locked loop | |
| EP1886315B1 (en) | Method to handle write mask in dram memory | |
| JP4250464B2 (en) | Semiconductor integrated circuit | |
| US11600341B2 (en) | Semiconductor integrated circuit, memory controller, and memory system | |
| US6967893B2 (en) | Integrated synchronous memory and memory configuration having a memory module with at least one synchronous memory | |
| US7742345B2 (en) | Data input circuit of semiconductor memory apparatus and method of inputting the data | |
| US20050140969A1 (en) | Semiconductor memory device for reducing current consumption in operation | |
| WO2009081551A1 (en) | Memory device and memory device control method | |
| US6992948B2 (en) | Memory device having address generating circuit using phase adjustment by sampling divided clock to generate address signal of several bits having one bit changed in sequential order | |
| US9071239B2 (en) | Method and semiconductor apparatus for reducing power when transmitting data between devices in the semiconductor apparatus | |
| KR100695824B1 (en) | Data transmission circuit | |
| US20090022005A1 (en) | Apparatus and method of controlling bank of semiconductor memory | |
| US8164973B2 (en) | Storage apparatus and method of controlling storage apparatus | |
| US20010012290A1 (en) | Data input circuit and semiconductor device utilizing data input circuit | |
| US7461184B2 (en) | Integrated circuit device having two or more input ports and system for the device | |
| JP2000207889A (en) | Serial memory |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051005 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070720 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080304 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080502 |
|
| 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: 20090113 |
|
| 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: 20090119 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120123 Year of fee payment: 3 |
|
| 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: 20130123 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130123 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140123 Year of fee payment: 5 |
|
| LAPS | Cancellation because of no payment of annual fees |