(57)【特許請求の範囲】
【請求項１】
コンピュータを、
設計対象となる半導体回路に関するネットリストを取得する取得手段と、
前記取得手段によって取得されたネットリストに含まれるフリップ・フロップと、当該フリップ・フロップ外のトランジスタとを抽出する抽出手段と、
前記抽出手段によって抽出されたフリップ・フロップを、当該フリップ・フロップよりも入出力ビット数の大きなフリップ・フロップとなるように所定数ごとに統合する統合手段と、
前記統合手段による統合後のフリップ・フロップの数と、前記抽出手段によって抽出されたトランジスタの数との比率を算出する算出手段と、
前記算出手段によって算出された比率に応じた前記統合後のフリップ・フロップの数と前記トランジスタの数とを基本ブロックとする前記半導体回路の設計データを生成する生成手段として機能させることを特徴とする半導体回路設計プログラム。
【請求項２】
前記生成手段は、前記比率に基づき、１個の前記統合後のフリップ・フロップあたりの前記トランジスタの数を基本ブロックとすることを特徴とする請求項１に記載の半導体回路設計プログラム。
【請求項３】
前記生成手段は、前記統合後のフリップ・フロップと前記トランジスタとの配置が同一の基本ブロック群を用いて、前記設計データを生成することを特徴とする請求項１または２に記載の半導体回路設計プログラム。
【請求項４】
設計対象となる半導体回路に関するネットリストを取得する取得手段と、
前記取得手段によって取得されたネットリストに含まれるフリップ・フロップと、当該フリップ・フロップ外のトランジスタとを抽出する抽出手段と、
前記抽出手段によって抽出されたフリップ・フロップを、当該フリップ・フロップよりも入出力ビット数の大きなフリップ・フロップとなるように所定数ごとに統合する統合手段と、
前記統合手段による統合後のフリップ・フロップの数と、前記抽出手段によって抽出されたトランジスタの数との比率を算出する算出手段と、
前記算出手段によって算出された比率に応じた前記統合後のフリップ・フロップの数と前記トランジスタの数とを基本ブロックとする前記半導体回路の設計データを生成する生成手段と、
を備えることを特徴とする半導体回路設計装置。
【請求項５】
前記生成手段は、前記比率に基づき、１個の前記統合後のフリップ・フロップあたりの前記トランジスタの数を基本ブロックとすることを特徴とする請求項４に記載の半導体回路設計装置。
【請求項６】
前記生成手段は、前記統合後のフリップ・フロップと前記トランジスタとの配置が同一の基本ブロック群を用いて、前記設計データを生成することを特徴とする請求項４または５に記載の半導体回路設計装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、半導体回路を設計する半導体回路設計プログラムおよび半導体回路設計装置に関する。
【背景技術】
【０００２】
近年は、多様かつ複雑化した半導体回路の設計に対応するため、ゲートアレイ（Ｇａｔｅ  Ａｒｒａｙｓ：以下「Ｇ／Ａ」という）やエンベデッドアレイ（Ｅｍｂｅｄｄｅｄ  Ａｒｒｅｙｓ：以下「Ｅ／Ａ」という）など様々なＡＳＩＣが提供されている。Ｇ／Ａは、多数のトランジスタを形成したウェハから構成されており、ウェハより上の配線層のみユーザが設計する方式のＡＳＩＣである。また、Ｅ／Ａは、セルベースＩＣのウェハ製造と、回路設計とを平行しておこなう方式のＡＳＩＣである（たとえば、下記特許文献１参照。）。
【０００３】
Ｇ／Ａ、Ｅ／Ａいずれの場合も設計期間や製造工程の短縮が期待できるという特徴を備えているが、その反面、半導体回路を構成するＦＦやその他のトランジスタの素子の配置がパターン化されているため、設計内容によっては冗長な素子を含んだ構成となってしまう可能性もあった。そこで、近年は、設計内容により柔軟に対応可能なＡＳＩＣとしてスタンダードセル（Ｓｔａｎｄａｒｄ  Ｃｅｌｌｓ：以下「Ｓ／Ｃ」という）が提供され広く用いられている（たとえば、下記特許文献２参照。）。
【０００４】
Ｓ／Ｃの場合、白紙状態のウェハに、あらかじめ用意されたマクロセルを配置・配線することができる。また、Ｓ／Ｃは、Ｇ／ＡやＥ／Ａよりも集積度、回路速度が優れるため、面積を縮小することができる。一方でＳ／Ｃは、上述のような自由度を実現するためにウェハの拡散層から製造されるため、Ｇ／ＡやＥ／Ａに比べて製造工程や、開発費が多くなる傾向にある。したがって、半導体回路設計者は、半導体回路の設計内容や、用途、開発費用などの設計環境を考慮して最適な手法を利用していた。
【０００５】
【特許文献１】特開２００４−１３２０５号公報
【特許文献２】米国特許第６２４２７６７号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記特許文献１のように、Ｇ／ＡやＥ／Ａによって設計された半導体回路を製造した場合、同等の機能を備えたＳ／Ｃによって設計された半導体回路と比較して消費電力が大きくなってしまうという問題があった。
【０００７】
また、上記特許文献２のようなＳ／Ｃを利用する場合、設計された半導体回路はブロック単位ごとに一定量のフリップ・フロップが埋め込まれた構成となる。したがって、半導体回路に含まれる論理回路の構成内容によっては、ＦＦが過剰もしくは不足してしまうことがある。このような状況を解消するには、結局冗長なレイアウトの半導体回路となり、非効率な回路構成になってしまうという問題があった。
【０００８】
また、近年は、半導体回路の微細化が進んでいるため、いずれの方式の場合であっても半導体回路製造時の製造ばらつきが大きくなってしまうという問題があった。
【０００９】
この発明は、上述した従来技術による問題点を解消するため、低消費電力、省回路サイズであるとともにレイアウトが容易な半導体回路を設計する半導体回路設計プログラムおよび半導体回路設計装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するため、この半導体回路設計プログラムおよび半導体回路設計装置は、設計対象となる半導体回路に関するネットリストを取得し、前記取得されたネットリストに含まれるフリップ・フロップと、当該フリップ・フロップ外のトランジスタとを抽出し、前記抽出されたフリップ・フロップを、当該フリップ・フロップよりも入出力ビット数の大きなフリップ・フロップとなるように所定数ごとに統合し、前記統合後のフリップ・フロップの数と、前記抽出されたトランジスタの数との比率を算出し、前記算出された比率に応じた前記統合後のフリップ・フロップの数と前記トランジスタの数とを基本ブロックとする前記半導体回路の設計データを生成する処理を備えることを要件とする。
【００１１】
この半導体回路設計プログラムおよび半導体回路設計装置によれば、ネットリストに記述されたフリップ・フロップをよりビット数の多いフリップ・フロップに統合するため、設計対象となる半導体回路に含まれるフリップ・フロップ数を削減することができる。さらに、統合後のフリップ・フロップ数と、トランジスタ数との比率に基づいて基本ブロックを設定するため、必要最低限のフリップ・フロップ数によって構成された半導体回路を設計することができる。
【００１２】
また、上記の半導体回路設計プログラムおよび半導体回路設計装置は、前記比率に基づき、１個の前記統合後のフリップ・フロップあたりの前記トランジスタの数を基本ブロックとしてもよい。
【００１３】
この半導体回路設計プログラムおよび半導体回路設計装置によれば、１個のフリップ・フロップ（統合後のフリップ・フロップ）と上述のように算出した比率に基づいて個数のトランジスタとからなる基本ブロックによって半導体回路の設計データを生成することができる。
【００１４】
また、上記の半導体回路設計プログラムおよび半導体回路設計装置は、前記統合後のフリップ・フロップと前記トランジスタとの配置が同一の基本ブロック群を用いて、前記設計データを生成してもよい。
【００１５】
この半導体回路設計プログラムおよび半導体回路設計装置によれば、同一の基本ブロックのみによって前記半導体回路が構成されるような設計データを生成することができる。
【発明の効果】
【００１８】
この半導体回路設計プログラムおよび半導体回路設計装置によれば、低消費電力、省回路サイズであるとともにレイアウトが容易な半導体回路を設計し、提供できるという効果を奏する。
【発明を実施するための最良の形態】
【００１９】
以下に添付図面を参照して、この半導体回路設計プログラムおよび半導体回路設計装置の好適な実施の形態を詳細に説明する。
【００２０】
（半導体回路設計処理の概要）
まず、本実施の形態にかかる半導体回路設計処理の概要について説明する。図１は、本実施の形態にかかる半導体回路設計処理の概要を示す説明図である。図１のように、本実施の形態では、半導体回路設計装置１００によって設計対象回路１１１の設計データ１２０を生成する。図１では汎用の情報処理装置に半導体回路設計プログラム１０１を実行させることによって半導体回路設計装置１００を実現している。なお、図１のような形態に限らず、後述する機能部を備えた装置を半導体回路設計装置１００として特化して提供してもよい。
【００２１】
半導体回路設計処理の手順としては、まず、従来の半導体回路設計と同様に、設計対象回路１１１のネットリスト１１０を取得する。そして、半導体回路設計装置１００は、取得したネットリスト１１０の記述から設計対象回路１１１を構成するフリップ・フロップ（以下「ＦＦ」という）とＦＦ外のトランジスタを抽出する。
【００２２】
ここで、ネットリスト１１０とは、設計対象回路１１１における端子間の接続情報をあらわしたデータである。また、ＦＦ外のトランジスタとは、設計対象回路１１１に含まれるＦＦを構成するトランジスタ以外のトランジスタをあらわす。
【００２３】
抽出されたＦＦは、よりビット数の大きなＦＦに統合される。統合をおこなうには、まず、ネットリスト１１０に記述されたＦＦが、入出力が１ビットの１ビットＦＦであれば、この１ビットＦＦを入出力が２ビットのＦＦや、４ビットのＦＦなどに変換する。そしてこれら変換後のＦＦをさらに入出力ビット数に対応したＦＦ数ごとにまとめることによってＦＦが統合されたこととなる。
【００２４】
具体的には、たとえば、抽出されたＦＦが１ビットのＦＦであれば、これらの１ビットのＦＦを２ビットのＦＦに統合する場合には、２つのＦＦの入出力を１つの２ビットのＦＦに変換することによって統合をおこなう。同様に、１ビットのＦＦ４個であれば、４ビットのＦＦに統合してもよいし、２ビットのＦＦ２個であれば４ビットのＦＦに統合してもよい。
【００２５】
なお、上述のようなＦＦの統合の際に、抽出したＦＦを変換するＦＦのビット数は、あらかじめ設定されたビット数のＦＦに統合するようにしてもよいし、半導体回路設計処理の際に設計者がどのようなビット数のＦＦに統合するかを設計条件に応じて適宜選択するようにしてもよい。いずれの場合であっても、１つのネットリスト１１０があらわす設計対象回路１１１において、ＦＦの統合の際に用いるＦＦは、ビット数を統一させる必要がある。
【００２６】
半導体回路設計装置１００では、ＦＦを統合後、設計対象回路１１１におけるＦＦ（統合後）とトランジスタの数とを比較し、比率を算出する。さらに、算出された比率に基づいて基本ブロック１２２を設定する。そして、この基本ブロック１２２を用いて設計対象回路１１１の設計データ１２０を生成する。
【００２７】
この設計データ１２０によって製造された半導体回路１２１は、基本ブロック１２２の集合によって構成される。すなわち、半導体回路１２１の製造をおこなうには、一定の比率で配置されたＦＦ（黒ブロック）とトランジスタ（白ブロック）とからなる、同一の基本ブロック１２２を製造すればよい。したがって、同一のパターン製造の繰り返しとなるため、製造ばらつきを抑えることができる。
【００２８】
このように、本実施の形態では、ネットリスト１１０からＦＦを統合した基本ブロック１２２を設定し、この基本ブロック１２２を用いて設計対象回路１１１の設計データ１２０を生成するため、必要最低限のＦＦによって構成された半導体回路１２１を製造することができる。したがって、従来のＡＳＩＣのように半導体回路１２１においてＦＦが余剰に配置されることによって生じる面積増や、消費電力増を防ぐこともできる。
【００２９】
以下、上述した半導体回路設計処理を実現するための具体的な装置構成および処理内容について具体的に説明する。
【００３０】
（半導体回路設計装置のハードウェア構成）
まず、本実施の形態にかかる半導体回路設計装置１００のハードウェア構成について説明する。図２は、本実施の形態にかかる半導体回路設計装置のハードウェア構成を示す説明図である。
【００３１】
図２において、半導体回路設計装置１００は、コンピュータ本体２１０と、入力装置２２０と、出力装置２３０と、から構成されており、不図示のルータやモデムを介してＬＡＮ、ＷＡＮやインターネットなどのネットワーク２４０に接続可能である。
【００３２】
コンピュータ本体２１０は、ＣＰＵ、メモリ、インターフェースを有する。ＣＰＵは、半導体回路設計装置１００の全体の制御を司る。メモリは、ＲＯＭ、ＲＡＭ、ＨＤ、光ディスク２１１、フラッシュメモリから構成される。メモリはＣＰＵのワークエリアとして使用される。
【００３３】
また、メモリには各種プログラムが格納されており、ＣＰＵからの命令に応じてロードされる。ＨＤおよび光ディスク２１１はディスクドライブによりデータのリード／ライトが制御される。また、光ディスク２１１およびフラッシュメモリはコンピュータ本体２１０に対し着脱自在である。インターフェースは、入力装置２２０からの入力、出力装置２３０への出力、ネットワーク２４０に対する送受信の制御をおこなう。
【００３４】
また、入力装置２２０としては、キーボード２２１、マウス２２２、スキャナ２２３などがある。キーボード２２１は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式であってもよい。マウス２２２は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。スキャナ２２３は、画像を光学的に読み取る。読み取られた画像は画像データとして取り込まれ、コンピュータ本体２１０内のメモリに格納される。なお、スキャナ２２３にＯＣＲ機能を持たせてもよい。
【００３５】
また、出力装置２３０としては、ディスプレイ２３１、スピーカ２３２、プリンタ２３３などがある。ディスプレイ２３１は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。スピーカ２３２は、効果音や読み上げ音などの音声を出力する。また、プリンタ２３３は、画像データや文書データを印刷する。
【００３６】
（半導体回路設計装置の機能的構成）
つぎに、半導体回路設計装置１００の機能的構成について説明する。図３は、半導体回路設計装置の機能的構成を示すブロック図である。図３において、半導体回路設計装置１００は、取得部３０１と、抽出部３０２と、統合部３０３と、算出部３０４と、生成部３０５と、を備えている。これら各機能３０１〜３０５は、半導体回路設計装置１００の記憶部に記憶された当該機能３０１〜３０５に関するプログラムをＣＰＵに実行させることにより、または、入出力Ｉ／Ｆにより、当該機能を実現することができる。
【００３７】
まず、取得部３０１は、設計対象回路１１１の構成が記述されたネットリスト１１０を取得する。取得部３０１は、コンピュータ本体２１０（図２参照）のメモリから設計者があらかじめ格納したネットリスト１１０を取得してもよいし、入力装置２２０やネットワーク２４０からあらたに取得してもよい。
【００３８】
抽出部３０２は、取得部３０１によって取得されたネットリスト１１０に含まれるＦＦと、ＦＦ外のトランジスタとをそれぞれ抽出する。この抽出処理によって、設計対象回路１１１にどのようなビット数のＦＦと、トランジスタとが配置されているかを集計することができる。
【００３９】
統合部３０３は、抽出部３０２によって抽出されたＦＦを、所定数ごとにＦＦよりも入出力ビット数の大きなＦＦとなるように統合する。上述したように抽出部３０２によって設計対象回路１１１にどのようなビット数のＦＦがいくつ配置されているか集計されている。したがって、ＦＦの総数とビット数とに基づいて何個ごとのＦＦに統合できるかを判断し、抽出したＦＦを所定数ごとにビット数の大きなＦＦとして統合する。
【００４０】
算出部３０４は、統合部３０３による統合後のＦＦの数と、抽出部３０２によって抽出されたトランジスタの数との比率を算出する。このとき、さらに算出部３０４は、統合部３０３による統合後のＦＦの数と、抽出部３０２によって抽出されたトランジスタの数とから、統合後のＦＦ１個あたりのトランジスタの割合を比率として算出してもよい。
【００４１】
生成部３０５は、算出部３０４によって算出された比率に応じた統合後のＦＦとトランジスタとを基本ブロック１２２とする半導体回路１２１の設計データ１２０を生成する。設計データ１２０は、図１に示したように、ＦＦとトランジスタとの配置が同一の基本ブロック１２２群によって半導体回路１２１が実現されるように構成されている。
【００４２】
なお、上述したように、算出部３０４によって統合後のＦＦ１個あたりのトランジスタの割合を比率として算出した場合、生成部３０５は、１個のＦＦ（統合後のＦＦ）と、比率の応じた個数のトランジスタとが配置された基本ブロック１２２を用いて、設計データ１２０を生成する。
【００４３】
（半導体回路設計処理の手順）
つぎに、半導体回路設計装置１００による半導体回路設計処理の手順について説明する。図４は、半導体回路設計装置における半導体回路設計処理の手順を示すフローチャートである。図４のフローチャートにおいて、まず、ネットリスト１１０を取得する（ステップＳ４０１）。
【００４４】
つぎに、ネットリスト１１０の記述内容からＦＦとトランジスタとを抽出する（ステップＳ４０２）。なお、このステップＳ４０２において抽出するトランジスタとは、上述したように、設計対象回路１１１を構成する半導体素子のうち、ＦＦ以外のトランジスタを意味する。
【００４５】
図５は、取得したネットリストの等価回路を示す回路図である。図５の等価回路１１１ａは、ネットリスト１１０の記述内容あらわしている。ネットリスト１１０の記述では、設計対象回路１１１は、ＦＦ５０１〜ＦＦ５０４の４個の１ビットＦＦを配置した構成となっている。そこで、統合部３０３によってこれら抽出したＦＦをビット数の大きなＦＦに統合する（ステップＳ４０３）。
【００４６】
図６は、ＦＦ統合後のネットリストの等価回路を示す回路図である。図６の等価回路１１１ｂは、ステップＳ４０３によるＦＦの統合処理後の変換されたネットリスト１１０の記述内容をあらわしている。ここでは、４個の１ビットＦＦが１個の４ビットＦＦ６０１に統合されている。
【００４７】
ステップＳ４０３の統合が完了すると、続いて、算出部３０４によって統合後のＦＦとトランジスタとの比率を算出する（ステップＳ４０４）。そして、算出された比率から基本ブロック１２２を設定する（ステップＳ４０５）。基本ブロック１２２の設定がおこなわれると、最後に、生成部３０５において、基本ブロック１２２によって構成された半導体回路１２１の設計データ１２０を生成し（ステップＳ４０６）、一例の処理を終了する。
【００４８】
このように、本実施の形態にかかる半導体回路設計処理では、ネットリスト１１０の記述に応じた基本ブロック１２２を設定し、基本ブロック１２２によって構成された効率的な半導体回路を設計することができる。特に、基本ブロック１２２を設定する際に、ＦＦの統合をおこなっているため、半導体回路１２１のセル面積を格段に縮小することができる。
【００４９】
図７は、設計対象回路のセル面積のサイズ比較を示す説明図である。図７のように、ネットリスト１１０の記述から１ビットＦＦとＦＦ外のトランジスタとのセル面積を比較するとブロック７１０のような比率（Ｆ（ＦＦ）：Ｔ（トランジスタ））になる。したがって、図５に示した等価回路１１１ａの機能を実現するには、最低でもブロック７１０×４のセル面積となり、ブロック７２０のような比率になる。
【００５０】
一方、本実施の形態では、複数のＦＦをビット数の大きなＦＦに統合する処理が含まれている。たとえば、図５のように、４個の１ビットＦＦを１個の４ビットＦＦに統合した場合、ＦＦ部分のセル面積が１／４に統合され、ブロック７３０のような比率となる。ＦＦ統合前のブロック７２０と、ＦＦ統合後のブロック７３０との面積比較から明らかなように、ＦＦの統合によって半導体回路１２１のセル面積が大きく削減されることとなる。
【００５１】
このように、本実施の形態にかかる半導体回路設計処理によって設計された半導体回路１２１は、必要最低限のＦＦとトランジスタとによって構成可能であるため、余剰なＦＦを配置することによって生じる消費電力を削減することができる。
【００５２】
また、本実施の形態にかかる半導体回路設計処理によって設計された半導体回路１２１の場合、ネットリスト１１０から抽出したＦＦをよりビット数の大きなＦＦに統合しているため、ＦＦ数を大幅に減少させることもできる。
【００５３】
さらに、本実施の形態にかかる半導体回路設計処理では、ネットリスト１１０から抽出したＦＦに基づいて基本ブロック１２２を設定しているため、冗長なレイアウトを必要とせず、効率的な回路構成を実現することができる。加えて、回路製造時には、同一構成の基本ブロック１２２の製造が繰り返されるため、回路製造時の製造ばらつきを最小限に留めることができる。
【００５４】
以上説明したように、本実施の形態によれば、消費電力、省回路サイズであるとともにレイアウトが容易な半導体回路を設計し、提供することができる。
【００５５】
なお、本実施の形態で説明した半導体回路設計処理は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な媒体であってもよい。
【００５６】
また、本実施の形態で説明した半導体回路設計装置１００は、スタンダードセルやストラクチャードＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などの特定用途向けＩＣ（以下、単に「ＡＳＩＣ」という。）やＦＰＧＡなどのＰＬＤ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）によっても実現することができる。具体的には、たとえば、上述した半導体回路設計装置１００の機能３０１〜３０５をＨＤＬ記述によって機能定義し、そのＨＤＬ記述を論理合成してＡＳＩＣやＰＬＤに与えることにより、半導体回路設計装置１００を製造することができる。
【００５７】
上述した実施の形態に関し、さらに以下の付記を開示する。
【００５８】
（付記１）設計対象となる半導体回路に関するネットリストを取得する取得手段と、
前記取得手段によって取得されたネットリストに含まれるフリップ・フロップと、当該フリップ・フロップ外のトランジスタとを抽出する抽出手段と、
前記抽出手段によって抽出されたフリップ・フロップを、当該フリップ・フロップよりも入出力ビット数の大きなフリップ・フロップとなるように所定数ごとに統合する統合手段と、
前記統合手段による統合後のフリップ・フロップの数と、前記抽出手段によって抽出されたトランジスタの数との比率を算出する算出手段と、
前記算出手段によって算出された比率に応じた前記統合後のフリップ・フロップと前記トランジスタとを基本ブロックとする前記半導体回路の設計データを生成する生成手段と、
をコンピュータにおこなわせることを特徴とする半導体回路設計プログラム。
【００５９】
（付記２）前記生成手段は、１個の前記統合後のフリップ・フロップと前記比率のトランジスタとを基本ブロックとすることを特徴とする付記１に記載の半導体回路設計プログラム。
【００６０】
（付記３）前記生成手段は、前記統合後のフリップ・フロップと前記トランジスタとの配置が同一の基本ブロック群を用いて、前記設計データを生成することを特徴とする付記１または２に記載の半導体回路設計プログラム。
【００６１】
（付記４）設計対象となる半導体回路に関するネットリストを取得する取得手段と、
前記取得手段によって取得されたネットリストに含まれるフリップ・フロップと、当該フリップ・フロップ外のトランジスタとを抽出する抽出手段と、
前記抽出手段によって抽出されたフリップ・フロップを、当該フリップ・フロップよりも入出力ビット数の大きなフリップ・フロップとなるように所定数ごとに統合する統合手段と、
前記統合手段による統合後のフリップ・フロップの数と、前記抽出手段によって抽出されたトランジスタの数との比率を算出する算出手段と、
前記算出手段によって算出された比率に応じた前記統合後のフリップ・フロップと前記トランジスタとを基本ブロックとする前記半導体回路の設計データを生成する生成手段と、
を備えることを特徴とする半導体回路設計装置。
【００６２】
（付記５）前記生成手段は、１個の前記統合後のフリップ・フロップと前記比率のトランジスタとを基本ブロックとすることを特徴とする付記４に記載の半導体回路設計装置。
【００６３】
（付記６）前記生成手段は、前記統合後のフリップ・フロップと前記トランジスタとの配置が同一の基本ブロック群を用いて、前記設計データを生成することを特徴とする付記４または５に記載の半導体回路設計装置。
【００６４】
（付記７）設計対象となる半導体回路に関するネットリストを取得する取得工程と、
前記取得工程によって取得されたネットリストに含まれるフリップ・フロップと、当該フリップ・フロップ外のトランジスタとを抽出する抽出工程と、
前記抽出工程によって抽出されたフリップ・フロップを、当該フリップ・フロップよりも入出力ビット数の大きなフリップ・フロップとなるように所定数ごとに統合する統合工程と、
前記統合工程による統合後のフリップ・フロップの数と、前記抽出工程によって抽出されたトランジスタの数との比率を算出する算出工程と、
前記算出工程によって算出された比率に応じた前記統合後のフリップ・フロップと前記トランジスタとを基本ブロックとする前記半導体回路の設計データを生成する生成工程と、
を含むことを特徴とする半導体回路設計方法。
【００６５】
（付記８）付記１〜３のいずれか一つに記載の半導体回路設計プログラムによって生成された設計データにより製造された半導体回路。
【図面の簡単な説明】
【００６６】
【図１】本実施の形態にかかる半導体回路設計処理の概要を示す説明図である。
【図２】本実施の形態にかかる半導体回路設計装置のハードウェア構成を示す説明図である。
【図３】半導体回路設計装置の機能的構成を示すブロック図である。
【図４】半導体回路設計装置における半導体回路設計処理の手順を示すフローチャートである。
【図５】取得したネットリストの等価回路を示す回路図である。
【図６】ＦＦ統合後のネットリストの等価回路を示す回路図である。
【図７】設計対象回路のセル面積のサイズ比較を示す説明図である。
【符号の説明】
【００６７】
１００  半導体回路設計装置
１１０  ネットリスト
１１１  設計対象回路
１２０  設計データ
１２１  半導体回路
２１０  コンピュータ本体
２２０  入力装置
２３０  出力装置
３０１  取得部
３０２  抽出部
３０３  統合部
３０４  算出部
３０５  生成部
【図１】
0005050905.tif 000002
【図２】
0005050905.tif 000003
【図３】
0005050905.tif 000004
【図４】
0005050905.tif 000005
【図５】
0005050905.tif 000006
【図６】
0005050905.tif 000007
【図７】
0005050905.tif 000008