JP4471582B2 - 半導体集積回路及び回路設計装置 - Google Patents
半導体集積回路及び回路設計装置 Download PDFInfo
- Publication number
- JP4471582B2 JP4471582B2 JP2003115922A JP2003115922A JP4471582B2 JP 4471582 B2 JP4471582 B2 JP 4471582B2 JP 2003115922 A JP2003115922 A JP 2003115922A JP 2003115922 A JP2003115922 A JP 2003115922A JP 4471582 B2 JP4471582 B2 JP 4471582B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory
- logic
- circuit
- output
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Semiconductor Integrated Circuits (AREA)
- Logic Circuits (AREA)
- Static Random-Access Memory (AREA)
Description
【発明の属する技術分野】
この発明は、メモリを搭載している半導体集積回路と、その半導体集積回路の回路設計を行う回路設計装置とに関するものである。
【0002】
【従来の技術】
従来の半導体集積回路は、ロジックセルにより構成されたロジック回路については一般的にロジック領域に配置される。
しかし、ロジック回路が入出力するデータを保持するメモリは、レイアウト構造や回路構成が決まっているハードマクロであるため、ハードマクロセル領域に配置される。
したがって、メモリがロジック回路の近傍に配置されるとは限らず、ロジック回路とメモリ間の配線が長くなる場合がある。このように配線が長くなると、メモリには長い配線に対応可能な駆動能力を準備する必要がある。
【0003】
また、半導体集積回路に搭載されるメモリの容量が小規模の場合に、メモリをハードマクロで構成すると、レイアウト構造や回路構成が決まっているため、そのメモリに対応するアドレスデコーダやIOバッファの領域が相対的に大きくなり、また、回路が形成されない領域(メモリの容量が大規模であれば、メモリが配置される領域)の割合が大きくなる。したがって、メモリの容量当りの面積は、容量が小さくなるほど増加する。
【0004】
なお、所望容量のメモリの形状がメモリ配置希望エリアの形状に適合しない場合、そのメモリを分割して形状を小さくすることにより、分割後の複数のメモリをメモリ配置希望エリアに配置する方法が以下の特許文献1に開示されているが、そのメモリをロジックセルで構成するものではなく、ハードマクロで構成している。
【0005】
【特許文献1】
特開2001−345384号公報(第6頁から第7頁、図2)
【0006】
【発明が解決しようとする課題】
従来の半導体集積回路は以上のように構成されているので、ロジック回路とメモリ間の配線が長くなり、面積や消費電力が増大してしまう課題があった。また、容量が小規模のメモリを搭載する場合、回路が形成されない領域の割合が大きくなる課題もあった。
さらに、メモリをハードマクロで構成する場合、回路設計が難しいため、多くの時間と人手を必要とする課題もあった。
【0007】
この発明は上記のような課題を解決するためになされたもので、回路が形成されない無駄な領域の作成を排除して、面積や消費電力を削減することができる半導体集積回路を得ることを目的とする。
また、この発明は、設計期間を短縮することができる半導体集積回路及び回路設計装置を得ることを目的とする。
【0008】
【課題を解決するための手段】
この発明に係る半導体集積回路は、ロジック回路が入出力するデータを保持するメモリをロジックセルで構成し、そのメモリをロジック領域に配置するようにしたものである。
【0009】
【発明の実施の形態】
以下、この発明の実施の一形態を説明する。
実施の形態1.
図1はこの発明の実施の形態1による半導体集積回路のレイアウトを示す配置図であり、図において、ロジック回路3,4はロジックセルにより構成され、半導体集積回路のロジック領域1に配置されている。ロジック回路3,4が入出力するデータを保持するメモリ5はロジックセルにより構成され、半導体集積回路のロジック領域1に配置されている。なお、ロジック回路3,4及びメモリ5は、相互に回路が独立していてもよいし、相互に一部の回路が重なり合っていてもよい。
なお、半導体集積回路のハードマクロセル領域2には、各種のハードマクロセルが配置されている。
【0010】
図2はこの発明の実施の形態1による半導体集積回路のメモリ5を示す回路図であり、図において、制御信号生成部11はインバータ11a及びANDゲート11b〜11eから構成され、リードライト信号WE,アドレス信号A及びクロックTから制御信号S1,S2を生成する制御信号生成手段を構成している。
データ保持部12は1ビットのフリップフロップ12a,12bから構成され、制御信号生成部11により生成された制御信号S1がデータの書き込みを指示する場合(S1=クロックT)、ロジック回路3から出力されたデータD[0:1]を保持し、その制御信号S1がデータの書き込みを禁止する場合(S1=“L”)、ロジック回路3から出力されたデータD[0:1]の書き込みを受け付けず、保持しているデータの読み込みのみを受け付ける。
【0011】
データ保持部13は1ビットのフリップフロップ13a,13bから構成され、制御信号生成部11により生成された制御信号S2がデータの書き込みを指示する場合(S2=クロックT)、ロジック回路3から出力されたデータD[0:1]を保持し、その制御信号S2がデータの書き込みを禁止する場合(S2=“L”)、ロジック回路3から出力されたデータD[0:1]の書き込みを受け付けず、保持しているデータの読み込みのみを受け付ける。なお、データ保持部12,13はデータ保持手段を構成している。
【0012】
マルチプレクサ14はアドレス信号Aの論理がLレベルであれば、フリップフロップ12aから出力されたデータQ[0]を選択してロジック回路4に出力し、アドレス信号Aの論理がHレベルであれば、フリップフロップ13aから出力されたデータQ[0]を選択してロジック回路4に出力する。マルチプレクサ15はアドレス信号Aの論理がLレベルであれば、フリップフロップ12bから出力されたデータQ[1]を選択してロジック回路4に出力し、アドレス信号Aの論理がHレベルであれば、フリップフロップ13bから出力されたデータQ[1]を選択してロジック回路4に出力する。なお、マルチプレクサ14,15は選択手段を構成している。
【0013】
次に動作について説明する。
図2の例では、2ワード×2ビットのシングルポートのメモリ5を構成しているが、メモリ5は、インバータ,ANDゲート,フリップフロップ,マルチプレクサなどの標準のロジックセルから構成され、ロジック領域1におけるロジック回路3,4の近傍に配置されている。したがって、ロジック回路3,4とメモリ5間の配線は短いものとなる。
【0014】
ここで、図2のメモリの動作を簡単に説明する。
まず、メモリ5がロジック回路3から出力されたデータD[0:1]を書き込む書込モードでは、Hレベルのリードライト信号WEが制御信号生成部11に入力される。
そして、Lレベルのアドレス信号Aが制御信号生成部11に入力されると、制御信号生成部11のインバータ11aがHレベルのアドレス信号R0をANDゲート11bの入力端子に与え、ANDゲート11cの入力端子にはLレベルのアドレス信号R1が与えられる。
【0015】
これにより、制御信号生成部11のANDゲート11cの出力信号がLレベルになるため、ANDゲート11eがフリップフロップ13a,13bに出力する制御信号S2もLレベルになり、フリップフロップ13a,13bにデータD[0:1]が書き込まれることはない。
しかし、制御信号生成部11のANDゲート11bの出力信号はHレベルになるため、ANDゲート11dはクロックTがHレベルになると、Hレベルの制御信号S1をフリップフロップ12a,12bに出力する。即ち、ANDゲート11dはクロックTをそのままフリップフロップ12a,12bに出力する。
データ保持部12のフリップフロップ12aは、制御信号生成部11のANDゲート11dからHレベルの制御信号S1を受けると、ロジック回路3から出力されたデータD[0]を読み込んで保持し、フリップフロップ12bは、制御信号生成部11のANDゲート11dからHレベルの制御信号S1を受けると、ロジック回路3から出力されたデータD[1]を読み込んで保持する。
【0016】
次に、Hレベルのアドレス信号Aが制御信号生成部11に入力された場合、制御信号生成部11のインバータ11aがLレベルのアドレス信号R0をANDゲート11bの入力端子に与え、ANDゲート11cの入力端子にはHレベルのアドレス信号R1が与えられる。
これにより、制御信号生成部11のANDゲート11bの出力信号がLレベルになるため、ANDゲート11dがフリップフロップ12a,12bに出力する制御信号S1もLレベルになり、フリップフロップ12a,12bにデータD[0:1]が書き込まれることはない。
しかし、制御信号生成部11のANDゲート11cの出力信号はHレベルになるため、ANDゲート11eはクロックTがHレベルになると、Hレベルの制御信号S2をフリップフロップ13a,13bに出力する。即ち、ANDゲート11eはクロックTをそのままフリップフロップ13a,13bに出力する。
【0017】
データ保持部13のフリップフロップ13aは、制御信号生成部11のANDゲート11eからHレベルの制御信号S2を受けると、ロジック回路3から出力されたデータD[0]を読み込んで保持し、フリップフロップ13bは、制御信号生成部11のANDゲート11eからHレベルの制御信号S2を受けると、ロジック回路3から出力されたデータD[1]を読み込んで保持する。
【0018】
一方、メモリ5が保持しているデータD[0:1]を読み込む読込モード(データ保持部12,13に対するデータの書き込みを禁止するモード)では、Lレベルのリードライト信号WEが制御信号生成部11に入力される。これにより、制御信号生成部11からは、アドレス信号A及びクロックTの論理に関わらず、Lレベルの制御信号S1,S2が出力される。
したがって、データ保持部12のフリップフロップ12a,12bにはデータD[0:1]が書き込まれることはなく、また、データ保持部13のフリップフロップ13a,13bにはデータD[0:1]が書き込まれることはない。
【0019】
そして、Lレベルのアドレス信号Aが制御信号生成部11に入力されると、制御信号生成部11のインバータ11aがHレベルのアドレス信号R0をマルチプレクサ14,15に出力するので、マルチプレクサ14は、フリップフロップ12aに保持されているデータ、即ち、データQ[0]を選択してロジック回路4に出力する。
また、マルチプレクサ15は、フリップフロップ13aに保持されているデータ、即ち、データQ[1]を選択してロジック回路4に出力する。
【0020】
次に、Hレベルのアドレス信号Aが制御信号生成部11に入力されると、制御信号生成部11のインバータ11aがLレベルのアドレス信号R0をマルチプレクサ14,15に出力するので、マルチプレクサ14は、フリップフロップ12bに保持されているデータ、即ち、データQ[1]を選択してロジック回路4に出力する。
また、マルチプレクサ15は、フリップフロップ13bに保持されているデータ、即ち、データQ[1]を選択してロジック回路4に出力する。
【0021】
以上で明らかなように、この実施の形態1によれば、ロジック回路3,4が入出力するデータを保持するメモリ5をロジックセルで構成し、そのメモリ5をロジック領域1に配置するように構成したので、回路が形成されない無駄な領域の作成を排除して、面積や消費電力を削減することができる効果を奏する。また、ハードマクロセルを用いる場合よりもメモリ5の設計期間を短縮することができる効果を奏する。
【0022】
また、この実施の形態1によれば、リードライト信号WEから制御信号S1,S2を生成する制御信号生成部11と、その制御信号生成部11により生成された制御信号S1,S2がデータの書き込みを指示する場合、ロジック回路3から出力されたデータを保持し、その制御信号S1,S2がデータの書き込みを禁止する場合、保持しているデータの読み込みのみを受け付けるデータ保持部12,13と、データ保持部12,13に保持されているデータの中から、アドレス信号Aに対応するデータを選択してロジック回路4に出力するマルチプレクサ14,15とからメモリ5を構成したので、即ち、インバータ,ANDゲート,フリップフロップ,マルチプレクサなどの標準のロジックセルからメモリ5を構成したので、ロジック回路3,4と同じロジック領域1に配置可能なメモリ5を簡単に構築することができる効果を奏する。
【0023】
実施の形態2.
上記実施の形態1では、マルチプレクサ14,15がアドレス信号Aに対応するデータを選択してロジック回路4に出力するものについて示したが、図3に示すように、マルチプレクサ14,15の代わりに、3ステートバッファ16,17を用いて選択手段を構成してもよい。
このように、3ステートバッファ16,17を用いる場合、マルチプレクサ14,15を用いる場合よりも回路規模を小さくすることができるので、特に、データの総ビット数が多い場合には、回路規模の削減効果が顕著に表れる。
【0024】
実施の形態3.
上記実施の形態1では、フリップフロップ12a,12b,13a,13bを用いてデータ保持部12,13を構成するものについて示したが、図4に示すように、D−ラッチ12c,12d,13c,13dを用いてデータ保持部12,13を構成してもよい。
ただし、この場合、D−ラッチ12c,12d,13c,13dと逆相のクロックTで動作する1ビットのD−ラッチ11f,11gと2ビットのD−ラッチ18を設ける必要がある。
このように、D−ラッチ12c,12d,13c,13dを用いてデータ保持部12,13を構成する場合、フリップフロップ12a,12b,13a,13bを用いる場合よりも、データ保持部12,13の回路規模を半分程度に減らすことができるため、特に、メモリ5の総ビット数が入力信号数よりも多い場合には、回路規模の削減効果が顕著に表れる。
【0025】
実施の形態4.
上記実施の形態3では、マルチプレクサ14,15がアドレス信号Aに対応するデータを選択してロジック回路4に出力するものについて示したが、図5に示すように、マルチプレクサ14,15の代わりに、3ステートバッファ16,17を用いて選択手段を構成してもよい。
このように、3ステートバッファ16,17を用いる場合、マルチプレクサ14,15を用いる場合よりも回路規模を小さくすることができるので、特に、データの総ビット数が多い場合には、回路規模の削減効果が顕著に表れる。
【0026】
実施の形態5.
図6はこの発明の実施の形態5による半導体集積回路のメモリ5を示す回路図であり、図6では16ワード×1ビットのシングルポートのメモリ5を示している。
図において、D−ラッチ21〜36はロジック回路3から出力されたデータD[0]を保持する一方、保持しているデータを3ステートバッファ41〜56に出力する。3ステートバッファ41〜56はD−ラッチ21〜36のQ端子に接続され、下位アドレス[1:0]のデコード信号LA[0]〜LA[3]がHレベルになると、D−ラッチ21〜36から出力されたデータをCL[0]〜CL[3]としてANDゲート63〜66に出力する。なお、D−ラッチ21〜36及び3ステートバッファ41〜56からデータ保持手段が構成されているが、図6ではD−ラッチ21〜36のD端子及びT端子に接続される回路は省略している(図2〜図5を参照)。
【0027】
2ビットのデコーダ61は下位アドレス[1:0]からデコード信号LA[0]〜LA[3]を生成し、2ビットのデコーダ62は上位アドレス[3:2]からデコード信号UA[0]〜UA[3]を生成する。
ANDゲート63〜66はデコード信号UA[0]〜UA[3]と3ステートバッファ41〜56から出力されたCL[0]〜CL[3]の論理積をORゲート67に出力する。ORゲート67はANDゲート63〜66の論理結果の論理和をデータQ[0]としてロジック回路4に出力する。なお、ANDゲート63〜66及びORゲート67から選択手段が構成されている。
【0028】
次に動作について説明する。
ロジック回路3から出力される16ワードのデータ(0ワード目〜15ワード目のデータ)うち、例えば、1ワード目のデータD[0]をメモリ5に書き込む場合、そのデータD[0]をD−ラッチ25のD端子に与えるとともに、上記実施の形態1と同様にして、Hレベルのリードライト信号WEを図示せぬ制御信号生成部11に入力すれば、そのデータD[0]がD−ラッチ25に保持される。
因みに、0ワード目のデータD[0]をメモリ5に書き込む場合、そのデータD[0]はD−ラッチ21のD端子に与えられ、2ワード目のデータD[0]をメモリ5に書き込む場合、そのデータD[0]はD−ラッチ29のD端子に与えられ、4ワード目のデータD[0]をメモリ5に書き込む場合、そのデータD[0]はD−ラッチ22のD端子に与えられる。
【0029】
一方、1ワード目のデータをメモリ5から読み込む場合、1ワード目を示す下位アドレス[1:0]が2ビットのデコーダ61に入力され、1ワード目を示す上位アドレス[3:2]が2ビットのデコーダ62に入力される。
これにより、デコーダ61は、LA[0]=L、LA[1]=H、LA[0]=L、LA[0]=Lのデコード信号を生成し、デコーダ62は、UA[0]=H、UA[1]=L、UA[0]=L、UA[0]=Lのデコード信号を生成する。
したがって、D−ラッチ25のQ端子に接続されている3ステートバッファ45には、Hレベルのデコード信号LA[1]が与えられるので、D−ラッチ25のQ端子から出力されるデータをCL[0]として、ANDゲート63に出力する。
【0030】
ANDゲート63は、3ステートバッファ45からデータCL[0]を受けると同時、デコーダ62からHレベルのデコード信号UA[0]を受けるので、そのデータCL[0]をそのままORゲート67に出力する。
ANDゲート63以外のANDゲート64〜66は、デコーダ62からLレベルのデコード信号UA[1]〜UA[3]を受けるので、Lレベルの信号をORゲート67に出力する。
ORゲート67は、ANDゲート63からデータCL[0]を受け、ANDゲート64〜66からLレベルの信号を受けると、そのデータCL[0]をQ[0]としてロジック回路4に出力する。
【0031】
この実施の形態5によれば、D−ラッチ,3ステートバッファ,ANDゲート,ORゲートなどの標準のロジックセルからメモリ5を構成したので、上記実施の形態1と同様に、ロジック回路3,4と同じロジック領域1に配置可能なメモリ5を簡単に構築することができる効果を奏する。
また、16ワードのデータに適用するに際して、3ステートバッファ41〜56に出力データ線が4分割されるので、3ステートバッファ41〜56の駆動能力を削減して回路規模を小さくすることができる効果を奏する。
【0032】
実施の形態6.
上記実施の形態5では、ANDゲート63〜66とORゲート67から選択手段を構成するものについて示したが、図7に示すように、3ステートバッファ68〜71を用いて選択手段を構成するようにしてもよい。
このように、3ステートバッファ68〜71を用いて選択手段を構成すれば、ANDゲート63〜66とORゲート67を用いる上記実施の形態5よりも更に回路規模を削減することができる効果を奏する。
【0033】
実施の形態7.
上記実施の形態5では、D−ラッチと3ステートバッファからデータ保持手段を構成するものについて示したが、図8に示すように、D−ラッチ(またはフリップフロップ)と3ステートバッファをハードマクロ化し、ハードマクロセルを用いてデータ保持手段を構成してもよい。
標準的なデータ保持手段は、ハードマクロセルを用いても設計の困難さはなく、ロジックセルを使用するよりもハードマクロセルを使用する方が回路規模を削減することができるので、標準的なデータ保持手段を数多く配列してメモリ5を構成する場合には、設計期間の長期化を招くことなく、メモリ5全体の回路規模を削減することができる効果を奏する。
【0034】
実施の形態8.
上記実施の形態7は、D−ラッチと3ステートバッファをハードマクロ化し、ハードマクロセルを用いてデータ保持手段を構成するものについて示したが、図9に示すように、ハードマクロセルであるデータ格納部12e,出力制御部12f及び反転出力制御部12gからデータ保持部12を構成してもよい。ただし、データ格納部12eが図8のD−ラッチに相当し、出力制御部12fが図8の3ステートバッファ(ただし、反転付の3ステートバッファ)に相当し、反転出力制御部12gが図7の3ステートバッファ(ただし、反転付の3ステートバッファ)に相当する。
【0035】
即ち、データ読込モードになると、データ格納部12eが保持しているデータを出力制御部12fに出力し、出力制御部12fが当該データの反転値QCを反転出力制御部12gに出力する。そして、反転出力制御部12gは反転値QCを更に反転してデータQを出力する。
なお、データ読込モード以外のときは、出力制御部12fがハイインピーダンス値をQCとして出力する。
これにより、回路規模を削減することができる効果を奏する。
【0036】
実施の形態9.
図10はこの発明の実施の形態9によるメモリ5のデータ保持手段を示す回路図であり、図において、入力制御部81はクロックT1に同期してデータDI1を取り込んで、そのデータDI1をデータ保持部83に出力する。入力制御部82はクロックT2に同期してデータDI2を取り込んで、そのデータDI2をデータ保持部83に出力する。なお、入力制御部81,82及びデータ保持部83からデータ保持手段が構成されている。
【0037】
入力制御部81は、図11に示すように、例えば、TGから構成され、クロックT1がHレベルのときだけ(図12(a)を参照)、データDI1をデータ保持部83に出力する。
また、入力制御部82は、図11に示すように、例えば、TGから構成され、クロックT2がHレベルのときだけ(図12(a)を参照)、データDI2をデータ保持部83に出力する。
ただし、クロックT1がHレベルのときはクロックT2がLレベル、クロックT2がHレベルのときはクロックT1がLレベルになるように制御するものとする。
なお、図12のクロック制御回路は、入力制御部81,82に内蔵されていてもよいし、入力制御部81,82の外部に設けられていてもよい。
【0038】
データ保持部83は、図11に示すように、例えば、TG83aとインバータ83b,83c,83dから構成され、入力制御部81又は入力制御部82からデータが出力されているときはTG83aが閉じ、入力制御部81及び入力制御部82の何れからもデータが出力されていないときはTG83aが開くので(図12(b)を参照)、データDI1,DI2を保持することができる。
これにより、入力ポートが2ポート存在する場合には、何れか1つの入力ポートからデータを読み込んで保持することができる。
また、入力制御部81,82及びデータ保持部83をハードマクロセルから構成することにより、回路規模を削減することができる。
なお、データ保持部83を図13に示すようにレシオ回路にすれば、更に回路規模を削減することができる。
【0039】
実施の形態10.
上記実施の形態9では、入力制御部81,82及びデータ保持部83に入力するクロックのクロック制御回路が図12であるものについて示したが、クロック制御回路を図14のように構成してもよい。
図14のクロック制御回路を用いる場合、データ保持部83に対するデータDI2の書き込みは、クロックT1がLレベルになったときのみ行われるので、クロックT1,T2が共にHレベルになることによる書込エラーを確実に回避することができる。
【0040】
実施の形態11.
上記実施の形態9では、TG83aとインバータ83b,83c,83dからデータ保持部83を構成するものについて示したが、図15に示すように、さらに、インバータ83eを追加するようにしてもよい。
これにより、データ保持部83が保持しているデータを複数のポートに出力することができるので、複数の出力ポートをメモリ5に設ける場合には、データ保持部83の個数を減らして、回路規模を削減することができる効果を奏する。
【0041】
実施の形態12.
上記実施の形態11では、データ保持部83が保持しているデータを複数のポートに出力するものについて示したが、図16に示すように、データ保持部83の後段に3ステートバッファ84,85を接続するようにしてもよい。
また、図17に示すように、データ保持部83をレシオ回路を用いて構成するとともに、入力制御部81,82を3ステートバッファを用いて構成すれば、更に回路規模を削減することができる効果を奏する。
【0042】
実施の形態13.
上記実施の形態9では、TG83aとインバータ83b〜83eからデータ保持部83を構成するものについて示したが、図18に示すように、データ保持部83をNORゲート83f,83gのクロスカップリングで構成し、入力制御部81,82をANDゲート81a,81b,82a,82bで構成してもよく、上記実施の形態9と同様の効果を奏することができる。
なお、この実施の形態13によれば、一般的な論理ゲートのみで2ポートのデータ保持部83を構成することができる。
【0043】
実施の形態14.
上記実施の形態9では、入力制御部81,82及びデータ保持部83に入力するクロックのクロック制御回路が図12であるものについて示したが、クロック制御回路を図19のように構成してもよい。
即ち、リードライト信号WEがLレベルになる書込モード時に限り、入力制御部81,82がデータDI1,DI2をデータ保持部83に与えるようにしてもよい。
これにより、リードライト信号WEにより書き込みが制御されるので、クロックT1,T2はフリーランクロックであってもよく、クロックT1,T2の設計の容易化を図ることができる。
【0044】
実施の形態15.
上記実施の形態11〜13では、2ポートのメモリ5のデータ保持手段について示したが、2ポートのメモリ5のデータ保持手段(以下、DPLという)をハードマクロで構成するとともに、その他の周辺回路(例えば、アドレスデコーダ(DEC)、出力選択部(SEL))を一般的なロジックゲートで構成し、これらを図20のように配線すれば、ソフトマクロのデュアルポートのSRAMを構築することができる。
これにより、ロジック領域1の中にデュアルポートメモリを構築することができるので、面積や消費電力を削減することができる効果を奏する。
【0045】
なお、図20では、出力選択部SELの具体的な構成を示していないが、図21に示すように、レシオラッチ型のレベル保持回路で構成すれば、万が一、データD1,D2,D3の制御タイミングに狂いが生じて、出力選択部SELの出力側Qがハイインピーダンスとなっても、出力側Qの受側ドライバに流れる貫通電流を削減することができる。したがって、低消費電力化を実現することができる効果を奏する。
【0046】
また、レシオラッチ型のレベル保持回路に保持されているデータを高い駆動能力でQの出力配線に出力するドライバ91を設けるようにしてもよい(図22を参照)。これにより、Qの出力配線が分割されるので、配線容量やゲート容量のような負荷容量が削減されるため、データの伝播速度が向上する。なお、ドライバ91の代わりに、3ステートバッファを用いてもよい。この場合、面積を削減することができる。
また、Qの出力配線にドライバ91を設ける代わりに、図23に示す位置にドライバ91を設けてもよい。この場合、データの伝播速度を高めることができる効果を奏する。
【0047】
実施の形態16.
図24は図20のデュアルポートのSRAM(以下、RBという)を複数配置して、同期型のデュアルポートメモリ(2RW)を構成したものである。
RBの前段には入力ラッチ101〜110が配置され、特に、入力ラッチ101にラッチされたポート1のアドレスがデコーダ111及びRB1のA1端子に入力される。このため、ポート1の上位アドレスがデコーダ111によりデコードされ、ポート1の下位アドレスがRB1内のデコーダによりデコードされる。
また、入力ラッチ106にラッチされたポート2のアドレスがデコーダ112及びRB2のA2端子に入力される。このため、ポート2の上位アドレスがデコーダ112によりデコードされ、ポート2の下位アドレスがRB2内のデコーダによりデコードされる。
【0048】
そして、デコーダ111は、ポート1の上位アドレスをデコードしてセレクト信号RE1をRB1,2及び二次選択回路113に出力し、デコーダ112は、ポート2の上位アドレスをデコードしてセレクト信号RE2をRB1,2及び二次選択回路114に出力する。
各RBから出力されたデータQは、二次選択回路113,114により選択され、出力ラッチ115,116を経て出力される。
これにより、ロジック領域1の中に同期型のデュアルポートメモリを構築することができるので、面積や消費電力を削減することができる効果を奏する。
【0049】
実施の形態17.
図25はデュアルポートのSRAMを示すものである。図20と比較して、ビットマスク信号BW1,BW2とアドレスデコーダの出力信号との論理積を求めるADNゲートがDPLの前段に接続されている点で相違している。
このようなADNゲートが接続されることにより、アドレスデコーダの出力信号により選択されても、ビットマスク信号BW1,BW2がLレベルになると、非選択の状態になり、対応するビットの書き込みができなくなる。
したがって、ビット毎の書込制御を実現することができる効果を奏する。
図26は図25のデュアルポートのSRAM(以下、RBという)を複数配置して、同期型のデュアルポートメモリ(2RW)を構成したものである。
図24と比較して、ビットマスク信号BW1,BW2をラッチしてRBのライト制御端子BWに出力する入力ラッチ117,118が付加されている点で相違している。
【0050】
実施の形態18.
図27はmワード×nビットのシングルポートのメモリ5(例えば、2ワード×2ビットのシングルポートのメモリであれば、図2のメモリ)がアレイ状に配置されたSRAMを示すものである。ただし、メモリ5にはセット端子とリセット端子を付加し、そのセット端子又はリセット端子の何れかの端子にリセット信号RSを接続し、他方の端子を非アクティブ論理に固定している。
これにより、外部からリセット信号RSを供給することにより、図27のSRAMの初期化プログラムを実現することができる。よって、メモリ5をハードマクロで実現すれば、ネットリストや機能設計の段階で初期化プログラムを作成することができるので、SRAMに初期化機能を容易に付加することができる。
【0051】
実施の形態19.
上記実施の形態18では、特に言及していないが、グランドG1の接続線とリセット信号RSの接続線とを最上階層のメタル配線で配線し、図28に示すように、そのメタル配線とセット/リセット端子をスルーホールTHで接続するようにしてもよい。
これにより、最上階層とスルーホールTHでプログラミングされるため、FIBなどの加工装置による試作後の改修が容易になり、また、改訂時の製作工期TATが短縮される。
【0052】
実施の形態20.
上記実施の形態18,19では、所定の周期で信号レベルがHとLを繰り返すクロックT1,T2,T3,T4がメモリ5に入力されるものについて示したが、図29に示すように、クロックT1については信号レベルをLに固定するようにしてもよい。
これにより、クロックT1を入力するメモリ5は、初期化されたデータを保持し続けることになるので、ROMの機能を実現することになる。よって、SRAMの一部にROM領域を設けることができる。
【0053】
実施の形態21.
図30はこの発明の実施の形態21による回路設計装置を示す構成図であり、図において、パラメータ定義部201は半導体集積回路に搭載するメモリ5のパラメータ202を定義するパラメータ定義手段を構成している。合成用データ作成部203はパラメータ定義部201により定義されたパラメータ202から合成用データを作成し、論理合成部204は合成用データからメモリ5のネットリスト205を作成する。なお、合成用データ作成部203及び論理合成部204からメモリネットリスト作成手段が構成されている。論理最適化部207はメモリ以外のロジック部分のネットリスト206と論理合成部204により作成されたネットリスト205間の論理最適化処理を実施して、半導体集積回路のネットリスト208を作成する最適化手段を構成している。
【0054】
次に動作について説明する。
図30の回路設計装置は、図1の半導体集積回路の回路設計を行う装置であり、まず、ユーザがパラメータ定義部201を操作して、半導体集積回路に搭載するメモリ5のパラメータ202を定義する。
即ち、メモリ5のパラメータ202は、メモリ5のワード数、ビット数、機能を定義するものであり、例えば、次のようなものを定義する。
parameter word=16;
parameter bit=16;
port0_func readwrite;
port1_func readwrite;
【0055】
合成用データ作成部203は、パラメータ定義部201によりパラメータ202が定義されると、メモリ5のワード数やビット数に基づいて合成用データを作成する。合成用データは、例えば、図31に示すようなVerilogHDLのRTL形式で作成する。
論理合成部204は、合成用データ作成部203が合成用データを作成すると、その合成用データに対する論理合成を実施して、メモリ5のネットリスト205を作成する。メモリ5のネットリスト205は、例えば、図32に示すようなVerilogHDLのネットリスト形式で作成する。
【0056】
論理最適化部207は、論理合成部204がメモリ5のネットリスト205を作成すると、メモリ以外のロジック部分のネットリスト206と論理合成部204により作成されたネットリスト205間の論理最適化処理を実施して、半導体集積回路のネットリスト208を作成する。
なお、メモリ以外のロジック部分のネットリスト206は、例えば、図33に示すようなVerilogHDLのネットリスト形式で存在し、半導体集積回路のネットリスト208は、例えば、図34に示すようなVerilogHDLのネットリスト形式で作成する。
【0057】
ここで、論理最適化部207による最適化前後のネットリストを比較すると(図33と図34の比較)、module dpramの境界部分が論理最適化されて、入力信号の一部論理が反転している。これにより、ネットリストの一部の回路を削減することができる。
具体的には、dpramのCSC1とWEC1の論理が反転となり、dpram最適化前のINVセルU1002,U1003が削減されている。
この実施の形態20によれば、メモリブロックをソフトマクロで構成しているので、ロジック全体の最適化を容易に実現でき、半導体集積回路の設計期間を短縮することができる効果を奏する。
【0058】
実施の形態22.
上記実施の形態21では、パラメータ202から合成用データを作成し、その合成用データからメモリ5のネットリスト205を作成するものについて示したが、図35に示すように、パラメータ202から合成用データを作成する際、そのパラメータ202を周辺回路1データ(例えば、アドレスデコーダのデータ)と、周辺回路2データ(例えば、セレクタ、ラッチ、ドライバなどの出力制御回路のデータ)と、メモリコアデータ(例えば、メモリコア部のデータ)とに分割し(図36を参照)、分割後のデータ毎に論理合成を実施して、それらの合成結果を1つにまとめるようにしてもよい。
このように、構造的に類似しているブロック毎に分割することにより、論理合成の複雑さを低減することができる。また、メモリコア部は、構造が単純であるため、予めネットリストに近い形でデータを作成することができる。したがって、論理合成時間を短縮することができるので、半導体集積回路の設計期間を短縮することができる効果を奏する。
【0059】
実施の形態23.
図37はこの発明の実施の形態23による回路設計装置を示す構成図であり、図において、図30と同一符号は同一または相当部分を示すので説明を省略する。領域削除部209は論理最適化部207により作成された半導体集積回路のネットリスト208をシステム検証してメモリ5の使用領域を調査し、そのメモリ5の不使用領域を削除する領域削除手段を構成している。
【0060】
即ち、領域削除部209は、論理最適化部207が半導体集積回路のネットリスト208を作成すると、論理検証やシステム検証を実施することにより、実際にメモリ5を使用する使用領域を調査し、メモリ5の不使用領域を削除する。
例えば、メモリ5の容量が1MBのとき、実使用量が1MB以下である場合、メモリ5の容量を実使用量に応じたサイズに変更する。
なお、システム検証は、システムシミュレーションにより実施してもよいが、評価チップやHWシミュレータなどを用いた実機評価でもよい。
【0061】
これにより、不要な回路を削減することができるので、面積や消費電力を削減することができる効果を奏する。なお、メモリのサイズ変更は、ハードマクロでメモリを構成した場合には容易には変更できないが、ロジックセルでメモリを構成した場合には、上記の通り簡単に変更することができる。
【0062】
実施の形態24.
図38はこの発明の実施の形態24による回路設計装置を示す構成図であり、図において、レジスタバンク設計部211はnビットのレジスタをm個配列してレジスタバンクを設計するレジスタバンク設計手段を構成している。バンクアレイ設計部212はレジスタバンク設計部211により設計されたレジスタバンクをアレイ状に配置してレジスタバンクアレイを設計するバンクアレイ設計手段を構成している。バンク調整部213はバンクアレイ設計部212により設計されたレジスタバンクアレイから不要なレジスタバンクを削除、あるいは、不足のレジスタバンクを追加するバンク調整手段を構成している。
【0063】
次に動作について説明する。
まず、レジスタバンク設計部211は、nビットのレジスタをm個配列してレジスタバンクを設計する。
次に、バンクアレイ設計部212は、n×mのレジスタバンクをa×b個用意し、a×b個のレジスタバンクをアレイ状に配置してレジスタバンクアレイを設計する。
【0064】
最後に、バンク調整部213は、バンクアレイ設計部212により設計されたレジスタバンクアレイに不要なレジスタバンクがあれば、そのレジスタバンクを削除する。
例えば、メモリの必要な容量が120ワードであるとき、バンクアレイ設計部212により設計されたレジスタバンクアレイの容量が128ワード(=27ワード)であれば、8ワード余分であるため、8ワード分のレジスタバンクを削除する。
【0065】
一方、バンクアレイ設計部212により設計されたレジスタバンクアレイにレジスタバンクが不足していれば、不足分のレジスタバンクを追加する。
例えば、メモリの必要な容量が130ワードであるとき、バンクアレイ設計部212により設計されたレジスタバンクアレイの容量が128ワード(=27ワード)であれば、2ワード分不足しているため、2ワード分のレジスタバンクを追加する。
この実施の形態24によれば、段階的にアレイを構成するので、論理最適化の処理が容易になり、半導体集積回路の設計期間を短縮することができる効果を奏する。
【0066】
【発明の効果】
以上のように、この発明によれば、ロジック回路が入出力するデータを保持するメモリをロジックセルで構成し、そのメモリをロジック領域に配置するように構成したので、回路が形成されない無駄な領域の作成を排除して、面積や消費電力を削減することができる効果がある。また、ハードマクロセルを用いる場合よりもメモリの設計期間を短縮することができる効果がある。
【図面の簡単な説明】
【図1】 この発明の実施の形態1による半導体集積回路のレイアウトを示す配置図である。
【図2】 この発明の実施の形態1による半導体集積回路のメモリを示す回路図である。
【図3】 この発明の実施の形態2による半導体集積回路のメモリを示す回路図である。
【図4】 この発明の実施の形態3による半導体集積回路のメモリを示す回路図である。
【図5】 この発明の実施の形態4による半導体集積回路のメモリを示す回路図である。
【図6】 この発明の実施の形態5による半導体集積回路のメモリを示す回路図である。
【図7】 この発明の実施の形態6による半導体集積回路のメモリを示す回路図である。
【図8】 ハードマクロ化されたD−ラッチと3ステートバッファを示す回路図である。
【図9】 データ保持部を示す回路図である。
【図10】 この発明の実施の形態9によるメモリのデータ保持手段を示す回路図である。
【図11】 この発明の実施の形態9によるメモリのデータ保持手段を示す回路図である。
【図12】 クロック制御回路を示す回路図である。
【図13】 データ保持部を示す回路図である。
【図14】 クロック制御回路を示す回路図である。
【図15】 この発明の実施の形態11によるメモリのデータ保持手段を示す回路図である。
【図16】 この発明の実施の形態12によるメモリのデータ保持手段を示す回路図である。
【図17】 この発明の実施の形態12によるメモリのデータ保持手段を示す回路図である。
【図18】 この発明の実施の形態13によるメモリのデータ保持手段を示す回路図である。
【図19】 クロック制御回路を示す回路図である。
【図20】 デュアルポートのSRAMを示す回路図である。
【図21】 図20の出力選択部を示す回路図である。
【図22】 図20の出力選択部を示す回路図である。
【図23】 図20の出力選択部を示す回路図である。
【図24】 同期型のデュアルポートメモリを示す回路図である。
【図25】 デュアルポートのSRAMを示す回路図である。
【図26】 同期型のデュアルポートメモリを示す回路図である。
【図27】 シングルポートのメモリがアレイ状に配置されたSRAMを示す回路図である。
【図28】 シングルポートのメモリがアレイ状に配置されたSRAMを示す回路図である。
【図29】 クロック制御回路を示す回路図である。
【図30】 この発明の実施の形態21による回路設計装置を示す構成図である。
【図31】 合成用データの具体例を示す説明図である。
【図32】 メモリのネットリストの具体例を示す説明図である。
【図33】 メモリ以外のロジック部分のネットリストの具体例を示す説明図である。
【図34】 半導体集積回路のネットリストの具体例を示す説明図である。
【図35】 パラメータからネットリストを作成する手順を示す説明図である。
【図36】 分割データの具体例を示す説明図である。
【図37】 この発明の実施の形態23による回路設計装置を示す構成図である。
【図38】 この発明の実施の形態24による回路設計装置を示す構成図である。
【符号の説明】
1 ロジック領域、2 ハードマクロセル領域、3,4 ロジック回路、5 メモリ、11 制御信号生成部(制御信号生成手段)、11a インバータ、11b〜11e ANDゲート、11f,11g D−ラッチ、12,13 データ保持部(データ保持手段)、12a,12b,13a,13b フリップフロップ、12c,12d,13c,13d D−ラッチ、12e データ格納部、12f 出力制御部、12g 反転出力制御部、14,15 マルチプレクサ(選択手段)、16,17 3ステートバッファ(選択手段)、18 D−ラッチ、21〜36 D−ラッチ(データ保持手段)、41〜56 3ステートバッファ(データ保持手段)、61 デコーダ、62 デコーダ、63〜66 ANDゲート(選択手段)、67 ORゲート(選択手段)、68〜71 3ステートバッファ(選択手段)、81,82 入力制御部(データ保持手段)、81a,81b,82a,82b ANDゲート、83 データ保持部(データ保持手段)、83a TG、83b,83c,83d,83e インバータ、83f,83g NORゲート、84,85 3ステートバッファ、91 ドライバ、101〜110 入力ラッチ、111,112 デコーダ、113,114 二次選択回路、115,116 出力ラッチ、117,118 入力ラッチ、201 パラメータ定義部(パラメータ定義手段)、202 パラメータ、203 合成用データ作成部(メモリネットリスト作成手段)、204 論理合成部(メモリネットリスト作成手段)、205 メモリのネットリスト、206 メモリ以外のロジック部分のネットリスト、207 論理最適化部(最適化手段)、208半導体集積回路のネットリスト、209 領域削除部(領域削除手段)、211 レジスタバンク設計部(レジスタバンク設計手段)、212 バンクアレイ設計部(バンクアレイ設計手段)、213 バンク調整部(バンク調整手段)。
Claims (6)
- ロジックセルにより構成されたロジック回路が配置されるロジック領域と、ハードマクロセルが配置されるハードマクロセル領域とから構成された半導体集積回路において、上記ロジック回路が入出力するデータを保持するメモリをロジックセルで構成し、そのメモリを上記ロジック領域に配置し、
リードライト信号から制御信号を生成する制御信号生成手段と、上記制御信号生成手段により生成された制御信号がデータの書き込みを指示する場合、ロジック回路から出力されたデータを保持し、その制御信号がデータの読み込みを指示する場合、保持しているデータを出力するデータ保持手段とから上記メモリを構成し、
複数のビットから構成されたデータを保持する場合、上記制御信号生成手段が当該データのビット数分の制御信号を生成するとともに、そのビット数分の上記データ保持手段を用意し、複数の上記データ保持手段から出力されたデータの中から、アドレス信号に対応するデータを選択して出力する選択手段を設けたことを特徴とする半導体集積回路。 - マルチプレクサを用いて選択手段を構成したことを特徴とする請求項1記載の半導体集積回路。
- 3ステートバッファを用いて選択手段を構成したことを特徴とする請求項1記載の半導体集積回路。
- ハードマクロセルを用いてデータ保持手段を構成したことを特徴とする請求項1記載の半導体集積回路。
- データ保持手段は、複数のポートのうち何れか1つのポートからデータを読み込んで保持することを特徴とする請求項1記載の半導体集積回路。
- データ保持手段は、保持しているデータを複数のポートに出力することを特徴とする請求項1記載の半導体集積回路。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003115922A JP4471582B2 (ja) | 2003-04-21 | 2003-04-21 | 半導体集積回路及び回路設計装置 |
US10/689,708 US7132850B2 (en) | 2003-04-21 | 2003-10-22 | Semiconductor integrated circuit and circuit design apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003115922A JP4471582B2 (ja) | 2003-04-21 | 2003-04-21 | 半導体集積回路及び回路設計装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004327483A JP2004327483A (ja) | 2004-11-18 |
JP4471582B2 true JP4471582B2 (ja) | 2010-06-02 |
Family
ID=33157092
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003115922A Expired - Fee Related JP4471582B2 (ja) | 2003-04-21 | 2003-04-21 | 半導体集積回路及び回路設計装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7132850B2 (ja) |
JP (1) | JP4471582B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7802216B2 (en) | 2007-09-13 | 2010-09-21 | Rapid Bridge Llc | Area and power saving standard cell methodology |
US8516185B2 (en) * | 2009-07-16 | 2013-08-20 | Netlist, Inc. | System and method utilizing distributed byte-wise buffers on a memory module |
US8099702B2 (en) * | 2008-07-30 | 2012-01-17 | Synopsys, Inc. | Method and apparatus for proximate placement of sequential cells |
JP5668404B2 (ja) * | 2010-10-08 | 2015-02-12 | 日本電気株式会社 | 構成情報管理装置、その方法及びそのプログラム並びに動作合成装置 |
US10509757B2 (en) * | 2016-09-22 | 2019-12-17 | Altera Corporation | Integrated circuits having expandable processor memory |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61107741A (ja) * | 1984-10-31 | 1986-05-26 | Hitachi Ltd | 半導体集積回路装置 |
JP2950427B2 (ja) * | 1989-01-13 | 1999-09-20 | 株式会社東芝 | レジスタバンク回路 |
JP2863453B2 (ja) * | 1994-01-19 | 1999-03-03 | 松下電器産業株式会社 | 半導体集積回路の設計方法及び論理合成方法 |
US6279045B1 (en) * | 1997-12-29 | 2001-08-21 | Kawasaki Steel Corporation | Multimedia interface having a multimedia processor and a field programmable gate array |
JP2001308271A (ja) * | 2000-04-18 | 2001-11-02 | Hitachi Ltd | 半導体集積回路および設計方法並びに製造方法 |
US6462577B1 (en) * | 2000-04-28 | 2002-10-08 | Altera Corporation | Configurable memory structures in a programmable logic device |
JP2001345694A (ja) | 2000-05-31 | 2001-12-14 | Hitachi Ltd | 論理機能回路 |
JP2001345384A (ja) * | 2000-05-31 | 2001-12-14 | Seiko Epson Corp | 半導体集積回路装置及びそのレイアウト方法 |
US6966044B2 (en) * | 2002-12-09 | 2005-11-15 | Lsi Logic Corporation | Method for composing memory on programmable platform devices to meet varied memory requirements with a fixed set of resources |
US6894530B1 (en) * | 2003-04-28 | 2005-05-17 | Lattice Semiconductor Corporation | Programmable and fixed logic circuitry for high-speed interfaces |
US6988251B2 (en) * | 2003-10-14 | 2006-01-17 | Lsi Logic Corporation | Efficient implementation of multiple clock domain accesses to diffused memories in structured ASICs |
-
2003
- 2003-04-21 JP JP2003115922A patent/JP4471582B2/ja not_active Expired - Fee Related
- 2003-10-22 US US10/689,708 patent/US7132850B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20040207429A1 (en) | 2004-10-21 |
JP2004327483A (ja) | 2004-11-18 |
US7132850B2 (en) | 2006-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5471428A (en) | High performance single port RAM generator architecture | |
JP4018159B2 (ja) | 半導体集積回路 | |
JP4212257B2 (ja) | 半導体集積回路 | |
US5256918A (en) | Programmable logic circuit | |
US8185861B2 (en) | Variable sized soft memory macros in structured cell arrays, and related methods | |
US8788756B2 (en) | Circuit for and method of enabling the transfer of data by an integrated circuit | |
KR100613030B1 (ko) | 레지스터 파일 및 레지스터 파일의 설계 방법 | |
JP6564186B2 (ja) | 再構成可能な半導体装置 | |
JP6517626B2 (ja) | 再構成可能な半導体装置 | |
JPWO2014080872A1 (ja) | 再構成可能な半導体装置の論理構成方法 | |
US20070297270A1 (en) | Semiconductor integrated circuit device | |
US7800404B2 (en) | Field programmable application specific integrated circuit with programmable logic array and method of designing and programming the programmable logic array | |
US6470475B2 (en) | Synthesizable synchronous static RAM | |
JP4471582B2 (ja) | 半導体集積回路及び回路設計装置 | |
US7196963B1 (en) | Address isolation for user-defined configuration memory in programmable devices | |
JP2000187676A (ja) | 論理合成装置および論理合成プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
Adiga et al. | Modified T-Flip-Flop based scan cell for RAS | |
JP4488282B2 (ja) | 半導体集積回路 | |
JPH1056377A (ja) | 2線2相式非同期論理ファンクションジェネレータ、およびそれを用いた半導体集積回路装置 | |
US20240185908A1 (en) | Dual power supplied memory cells and deterministic reset thereof for programmable logic devices | |
JP2000147066A (ja) | 半導体集積回路装置 | |
JP2004117046A (ja) | 半導体記憶装置 | |
JP2010212640A (ja) | 集積回路、集積回路支援装置及び集積回路製造方法 | |
JP2000098003A (ja) | メガセルテスト装置及びそのテスト方法 | |
JP2011146944A (ja) | プログラマブルデバイス回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060123 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060206 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20071101 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080929 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091215 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100127 |
|
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: 20100223 |
|
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: 20100302 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130312 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130312 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130312 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140312 Year of fee payment: 4 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |