(57)【要約】【課題】配線率を向上させることができるようにする。【解決手段】設計条件として、ＬＳＩに入力される信号が６１４４ビット幅であり、ＬＳＩから出力される信号が２０４８信号であり、入力信号が８ビットのビデオ信号で構成されているという情報が入力部３１を介して入力されるので、条件設定部３２は、６１４４ビット幅の信号を、１乃至８ビット毎の８個の信号組にまとめ、これらの信号組毎に信号処理を行うように信号条件を設定し、設定された信号条件をブロック分割部３３に出力する。ブロック分割部３３は、条件設定部３２からの信号条件に基づいて、ＬＳＩ内部を、８組の信号組毎に、信号処理を行う８個のブロックに分割する。本発明は、高速用回路の検査を実周波数で実行する半導体集積回路に適用できる。【選択図】図２
2005165706.tif 000002
【特許請求の範囲】
【請求項１】
Ｍビット幅の信号を信号処理する回路を設計する回路設計装置において、
前記Ｍビット幅の信号を、１乃至Ｎ（Ｎ＜Ｍ）ビット毎に信号組としてまとめ、まとめられたＮ個の前記信号組毎に信号処理するように信号条件を設定する条件設定手段と、
前記条件設定手段により設定された前記信号条件に基づいて、前記信号組毎に信号処理するＮ個のブロックに、前記回路を分割する分割手段と、
前記分割手段により分割されたブロック毎に、複数の素子を配置する配置手段と、
前記配置手段により配置された前記素子同士の間を配線する素子配線手段と、
前記素子配線手段により前記素子同士が配線された前記ブロック同士の間を配線するブロック配線手段と
を備えることを特徴とする回路設計装置。
【請求項２】
Ｍビット幅の信号を信号処理する回路を設計する回路設計装置の回路設計方法において、
前記Ｍビット幅の信号を、１乃至Ｎ（Ｎ＜Ｍ）ビット毎に信号組としてまとめ、まとめられたＮ個の前記信号組毎に信号処理するように信号条件を設定する条件設定ステップと、
前記条件設定ステップの処理により設定された前記信号条件に基づいて、前記信号組毎に信号処理するＮ個のブロックに、前記回路を分割する分割ステップと、
前記分割ステップの処理により分割されたブロック毎に、複数の素子を配置する配置ステップと、
前記配置ステップの処理により配置された前記素子同士の間を配線する素子配線ステップと、
前記素子配線ステップの処理により前記素子同士が配線された前記ブロック同士の間を配線するブロック配線ステップと
を含むことを特徴とする回路設計方法。
【請求項３】
Ｍビット幅の信号を処理する回路を設計する回路設計処理をコンピュータに実行させるプログラムが記録される記録媒体であって、
前記Ｍビット幅の信号を、１乃至Ｎ（Ｎ＜Ｍ）ビット毎に信号組としてまとめ、まとめられたＮ個の前記信号組毎に信号処理するように信号条件を設定する条件設定ステップと、
前記条件設定ステップの処理により設定された前記信号条件に基づいて、前記信号組毎に信号処理するＮ個のブロックに、前記回路を分割する分割ステップと、
前記分割ステップの処理により分割されたブロック毎に、複数の素子を配置する配置ステップと、
前記配置ステップの処理により配置された前記素子同士の間を配線する素子配線ステップと、
前記素子配線ステップの処理により前記素子同士が配線された前記ブロック同士の間を配線するブロック配線ステップと
を含むことを特徴とするプログラムが記録される記録媒体。
【請求項４】
Ｍビット幅の信号を処理する回路を設計する回路設計処理をコンピュータに実行させるプログラムであって、
前記Ｍビット幅の信号を、１乃至Ｎ（Ｎ＜Ｍ）ビット毎に信号組としてまとめ、まとめられたＮ個の前記信号組毎に信号処理するように信号条件を設定する条件設定ステップと、
前記条件設定ステップの処理により設定された前記信号条件に基づいて、前記信号組毎に信号処理するＮ個のブロックに、前記回路を分割する分割ステップと、
前記分割ステップの処理により分割されたブロック毎に、複数の素子を配置する配置ステップと、
前記配置ステップの処理により配置された前記素子同士の間を配線する素子配線ステップと、
前記素子配線ステップの処理により前記素子同士が配線された前記ブロック同士の間を配線するブロック配線ステップと
を含むことを特徴とするプログラム。
【請求項５】
Ｍビット幅の信号を処理する回路を有する半導体集積回路であって、
前記回路は、Ｍビット幅の信号を１乃至Ｎ（Ｎ＜Ｍ）ビット毎に信号組としてまとめ、まとめられたＮ個の前記信号組毎にそれぞれ信号処理するＮ個のブロックに分割されて構成される
ことを特徴とする半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路設計装置および方法、記録媒体、プログラム、並びに半導体集積回路に関し、特に、配線率を向上させることができるようにした回路設計装置および方法、記録媒体、プログラム、並びに半導体集積回路に関する。
【背景技術】
【０００２】
ＬＳＩ（Large Scale Integrated Circuit）を設計する場合、まず、仕様設計書が生成され、生成された仕様設計書に基づいて、ＬＳＩ内部が、レジスタ（フリップフロップ）とレジスタとの間の組み合わせ回路により構成される機能ブロックに分割される。このレジスタや組み合わせ回路は、ＡＮＤゲート、ＯＲゲート、あるいはフリップフロップなどのトランジスタからなるセルを用いて生成される。ＬＳＩのレイアウトは、これらのセルの配置や配線が考慮されて生成される。そして、ＬＳＩは、生成されたレイアウトに基づいて、セルがＬＳＩ上に配置され、配線されることにより、設計される。
【０００３】
このような設計方法により、例えば、ビット幅の少ない信号を取り扱う、通常のＬＳＩの組み合わせ回路を設計する場合、配線性を考慮に入れると、ＬＳＩのレイアウト上の６０％乃至７０％は、セルを配置し、配置されたセル同士を配線することができる。なお、この値は、レイアウト面積に対するセルの配置面積の割合（Utilization）という。
【０００４】
ところで、従来より、多ビット幅の信号を取り扱うＬＳＩを設計する方法が提案されている。例えば、特許文献１においては、多ビット幅のうち、使用しないビット列による無駄な論理ゲートを省くようにした設計方法が記載されている。
【０００５】
図１は、従来の多ビット幅の信号を取り扱うＬＳＩ１の構成例を示している。この場合、ＬＳＩ１により、６１４４ビット幅の信号が２０４８ビット幅の信号に削減される。図１の例においては、ＬＳＩ１は、組み合わせ回路１１、組み合わせ回路１１の前段に位置するフリップフロップ１２、および、組み合わせ回路１１の後段に位置するフリップフロップ１３により構成される。
【０００６】
フリップフロップ１２は、図示せぬクロック発生部より入力されるクロック（ＣＬＫ）に同期して、組み合わせ回路１１に、６１４４ビット幅の信号を入力する。組み合わせ回路１１は、フリップフロップ１２から入力される６１４４ビット幅の信号を、２０４８ビット幅の信号に削減して、フリップフロップ１３に出力する。フリップフロップ１３は、組み合わせ回路１１からの２０４８ビット幅の信号を、クロックに同期して、図示せぬ後段に出力する。
【０００７】
なお、図１の例においては、６１４４ビット幅の信号は、８ビット幅のビデオ信号により構成されている。したがって、実際には、６１４４ビット幅の信号が入力される信号線は、７６８組の８ビット幅のビデオ信号（信号線）により構成されている。また、２０４８ビット幅の信号が出力される信号線は、２５６組の８ビット幅のビデオ信号（信号線）により構成されている。
【０００８】
以上のように構成されるＬＳＩ１は、１５万ゲート規模の回路であり、このＬＳＩ１の組み合わせ回路１１を、０．１３μｍ世代のプロセスでレイアウトした場合、上述したようにレイアウト面積に対するセルの配置面積の割合が６０％であると想定すると、１ｍｍでレイアウトが可能とされる。
【０００９】
【特許文献１】特開２００１−３３１５３８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、実際に、この組み合わせ回路１１をレイアウトすると、レイアウト面積に対するセルの配置面積の割合は、１０％まで落ち込んでしまう。これは、この組み合わせ回路１１が多ビット幅の信号を取り扱う回路であり、６１４４ビット幅という非常に巨大なビット幅を配線しなければならないためである。
【００１１】
すなわち、実際には、多ビット幅の信号を取り扱う組み合わせ回路において、多ビット幅の信号線は、例えば、Ｎ（任意な値）ビット毎にまとめられ、Ｎ×３２組のデータ幅を有する信号として取り扱われる。したがって、この組み合わせ回路１１において、多ビット幅の信号を、そのまま組み合わせ回路１１にレイアウトしようとすると、上述したように、多ビット幅の信号は、８ビット×７６８組のデータ幅を持った信号として処理されてしまう。このため、組み合わせ回路１１においては、ビット幅の少ない信号を取り扱うＬＳＩの組み合わせ回路に較べて、必要な配線が多くなってしまい、セルの配置領域が、ＬＳＩのレイアウト上の約１０％以下になってしまう課題があった。すなわち、配線効率が悪くなってしまう課題があった。
【００１２】
逆に、配線効率を高めようとした場合には、ビット幅の少ない信号を取り扱う組み合わせ回路を設計する場合と較べて、ＬＳＩのサイズを大きくしなければならない課題があった。
【００１３】
本発明は、このような状況に鑑みてなされたものであり、配線率を向上させることができるようにするものである。
【課題を解決するための手段】
【００１４】
本発明の回路設計装置は、Ｍビット幅の信号を、１乃至Ｎ（Ｎ＜Ｍ）ビット毎に信号組としてまとめ、まとめられたＮ個の信号組毎に信号処理するように信号条件を設定する条件設定手段と、条件設定手段により設定された信号条件に基づいて、信号組毎に信号処理するＮ個のブロックに、回路を分割する分割手段と、分割手段により分割されたブロック毎に、複数の素子を配置する配置手段と、配置手段により配置された素子同士の間を配線する素子配線手段と、素子配線手段により素子同士が配線されたブロック同士の間を配線するブロック配線手段とを備えることを特徴とする。
【００１５】
本発明の回路設計方法は、Ｍビット幅の信号を、１乃至Ｎ（Ｎ＜Ｍ）ビット毎に信号組としてまとめ、まとめられたＮ個の信号組毎に信号処理するように信号条件を設定する条件設定ステップと、条件設定ステップの処理により設定された信号条件に基づいて、信号組毎に信号処理するＮ個のブロックに、回路を分割する分割ステップと、分割ステップの処理により分割されたブロック毎に、複数の素子を配置する配置ステップと、配置ステップの処理により配置された素子同士の間を配線する素子配線ステップと、素子配線ステップの処理により素子同士が配線されたブロック同士の間を配線するブロック配線ステップとを含むことを特徴とする。
【００１６】
本発明のプログラムが記録される記録媒体は、Ｍビット幅の信号を、１乃至Ｎ（Ｎ＜Ｍ）ビット毎に信号組としてまとめ、まとめられたＮ個の信号組毎に信号処理するように信号条件を設定する条件設定ステップと、条件設定ステップの処理により設定された信号条件に基づいて、信号組毎に信号処理するＮ個のブロックに、回路を分割する分割ステップと、分割ステップの処理により分割されたブロック毎に、複数の素子を配置する配置ステップと、配置ステップの処理により配置された素子同士の間を配線する素子配線ステップと、素子配線ステップの処理により素子同士が配線されたブロック同士の間を配線するブロック配線ステップとを含むことを特徴とする。
【００１７】
本発明のプログラムは、Ｍビット幅の信号を、１乃至Ｎ（Ｎ＜Ｍ）ビット毎に信号組としてまとめ、まとめられたＮ個の信号組毎に信号処理するように信号条件を設定する条件設定ステップと、条件設定ステップの処理により設定された信号条件に基づいて、信号組毎に信号処理するＮ個のブロックに、回路を分割する分割ステップと、分割ステップの処理により分割されたブロック毎に、複数の素子を配置する配置ステップと、配置ステップの処理により配置された素子同士の間を配線する素子配線ステップと、素子配線ステップの処理により素子同士が配線されたブロック同士の間を配線するブロック配線ステップとを含むことを特徴とする。
【００１８】
本発明の半導体集積回路は、回路は、Ｍビット幅の信号を１乃至Ｎ（Ｎ＜Ｍ）ビット毎に信号組としてまとめ、まとめられたＮ個の信号組毎にそれぞれ信号処理するＮ個のブロックに分割されて構成されることを特徴とする。
【００１９】
本発明においては、回路が、Ｍビット幅の信号を１乃至Ｎ（Ｎ＜Ｍ）ビット毎に信号組としてまとめ、まとめられたＮ個の信号組毎にそれぞれ信号処理するＮ個のブロックに分割される。
【発明の効果】
【００２０】
本発明によれば、配線率を向上させることができる。また、ＬＳＩのサイズが大きくなることが抑制される。
【発明を実施するための最良の形態】
【００２１】
以下に本発明の実施の形態を説明するが、請求項に記載の構成要件と、発明の実施の形態における具体例との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする具体例が、発明の実施の形態に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、構成要件に対応するものとして、ここには記載されていない具体例があったとしても、そのことは、その具体例が、その構成要件に対応するものではないことを意味するものではない。逆に、具体例が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その具体例が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２２】
さらに、この記載は、発明の実施の形態に記載されている具体例に対応する発明が、請求項に全て記載されていることを意味するものではない。換言すれば、この記載は、発明の実施の形態に記載されている具体例に対応する発明であって、この出願の請求項には記載されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定するものではない。
【００２３】
本発明の回路設計装置は、Ｍビット幅の信号（例えば、図４の入力信号７１）を処理する回路（例えば、図５のＬＳＩ１０１）を設計する回路設計装置（例えば、図２の回路設計装置２１）において、Ｍビット幅（例えば、６１４４ビット幅）の信号を、１乃至Ｎ（例えば、８）（Ｎ＜Ｍ）ビット毎に信号組（例えば、図４の信号組９１−１）としてまとめ、まとめられたＮ個の信号組毎に信号処理するように信号条件を設定する条件設定手段（例えば、図２の条件設定部３２）と、条件設定手段により設定された信号条件に基づいて、信号組毎に信号処理するＮ個のブロック（例えば、図５のブロック１１１−１乃至１１１−８）に、回路を分割する分割手段（例えば、図３のブロック分割部３３）と、分割手段により分割されたブロック毎に、複数の素子を配置する配置手段（例えば、図２のレイアウト部３５）と、配置手段により配置された素子同士の間を配線する素子配線手段（例えば、図２のセル配線部３６）と、素子配線手段により素子同士が配線されたブロック同士の間を配線するブロック配線手段（例えば、図２のブロック配線部３７）とを備えることを特徴とする。
【００２４】
本発明の回路設計方法は、Ｍビット幅の信号（例えば、図４の入力信号７１）を処理する回路（例えば、図５のＬＳＩ１０１）を設計する回路設計方法において、Ｍビット幅（例えば、６１４４ビット幅）の信号を、１乃至Ｎ（例えば、８）（Ｎ＜Ｍ）ビット毎に信号組（例えば、図４の信号組９１−１）としてまとめ、まとめられたＮ個の信号組毎に信号処理するように信号条件を設定する条件設定ステップ（例えば、図３のステップＳ１）と、条件設定ステップの処理により設定された信号条件に基づいて、信号組毎に信号処理するＮ個のブロック（例えば、図５のブロック１１１−１乃至１１１−８）に、回路を分割する分割ステップ（例えば、図３のステップＳ２）と、分割ステップの処理により分割されたブロック毎に、複数の素子を配置する配置ステップ（例えば、図３のステップＳ４）と、配置ステップの処理により配置された素子同士の間を配線する素子配線ステップ（例えば、図３のステップＳ５）と、素子配線ステップの処理により素子同士が配線されたブロック同士の間を配線するブロック配線ステップ（例えば、図３のステップＳ６）とを含むことを特徴とする。
【００２５】
本発明の半導体集積回路は、Ｍビット幅の信号（例えば、図４の入力信号７１）を処理する回路（例えば、図５のＬＳＩ１０１）を有する半導体集積回路であって、回路は、Ｍビット幅（例えば、６１４４ビット幅）の信号を１乃至Ｎ（例えば、８）（Ｎ＜Ｍ）ビット毎に信号組（例えば、図４の信号組９１−１）としてまとめ、まとめられたＮ個の信号組毎にそれぞれ信号処理するＮ個のブロック（例えば、図５のブロック１１１−１乃至１１１−８）に分割されて構成されることを特徴とする。
【００２６】
なお、本発明の記録媒体およびプログラムも上述した本発明の回路設計方法と基本的に同様の構成であるため、繰り返しになるのでその説明は省略する。
【００２７】
以下、図を参照して本発明の実施の形態について説明する。
【００２８】
図２は、本発明を適用した回路設計装置２１の構成例を表している。図２の例の場合、回路設計装置２１は、多ビット（Ｍビット）幅の信号を取り扱うＬＳＩ、例えば、６１４４ビット幅の信号を、２０４８ビット幅の信号に削減する処理を行うＬＳＩを設計する装置である。回路設計装置２１は、入力部３１、条件設定部３２、ブロック分割部３３、記憶部３４、レイアウト部３５、セル配線部３６、およびブロック配線部３７により構成される。
【００２９】
入力部３１は、ユーザ（設計者）の操作に基づいて、ＬＳＩの設計情報を、条件設定部３２に入力する。条件設定部３２は、ユーザ（設計者）から入力部３１を介して入力されるＬＳＩの設計情報に基づいて、処理する信号の信号条件を設定する。すなわち、条件設定部３２は、入出力する信号のビット幅および信号の種類などの設計情報に基づいて、入力されるＭビット幅信号を、１乃至Ｎ（Ｎ＜Ｍ）ビット毎に信号組としてまとめ、まとめられた信号組毎に信号処理するように信号条件を設定する。条件設定部３２は、設定された信号条件をブロック分割部３３に出力する。
【００３０】
ブロック分割部３３は、条件設定部３２からの信号条件に基づいて、ＬＳＩ内部を、条件設定部３２によりまとめられた信号組毎に信号処理を行うようにＮ個のブロックに分割する。ブロック分割部３３は、Ｎ個のブロックに分割された各ブロックがレジスタ（フリップフロップ）およびレジスタとの間の組み合わせ回路により構成されるまで、そのブロックの分割を繰り返し、各ブロック内のレジスタおよび組み合わせ回路を決定する。ブロック分割部３３は、決定された各ブロックの構成情報をレイアウト部３５に出力する。
【００３１】
記憶部３４には、設計対象回路（いまの場合、組み合わせ回路）を作成するために使用するセルライブラリ４１が、ユーザ（設計者）により予め入力され、登録されている。セルライブラリ４１には、複数の種類のセルが登録されている。セルとは、トランジスタからなるインバータ、ＮＡＮＤゲート、ＮＯＲゲートまたはフリップフロップなどの、ＬＳＩを構成する素子のことである。
【００３２】
レイアウト部３５は、ブロック分割部３３からの各ブロックの構成情報に基づいて、各ブロックのレジスタおよび組み合わせ回路に用いられるセルを、セルライブラリ４１から選択し、選択されたセルの論理的な機能を実現するように、接続関係と幾何学的な配置と配線を決定し、これに基づいてレイアウトを生成する。そして、レイアウト部３５は、生成されたレイアウトに基づいて、選択されたセルをＬＳＩ上に配置する。
【００３３】
セル配線部３６は、各ブロックにおいてレイアウト部３５により配置されたセル同士の配線経路を決定する。ブロック配線部３７は、レイアウト部３５により生成されたレイアウトに基づいて、セル配線部３６によりセルが配線されたブロックとブロック間を配線経路を決定する。
【００３４】
図３のフローチャートを参照して、回路設計装置２１の回路設計処理を説明する。図３においては、６１４４ビット幅の信号を、２０４８ビット幅の信号に削減するＬＳＩが設計される。
【００３５】
ユーザ（設計者）は、入力部３１を操作し、６１４４ビット幅の信号を、２０４８ビット幅の信号に削減するＬＳＩを設計するための入出力する信号のビット幅および信号の種類などの設計情報を、条件設定部３２に入力する。これに対して、条件設定部３２は、ステップＳ１において、ユーザから入力されるＬＳＩの設計情報に基づいて、入力されるＭビット幅信号の信号条件を設定する。すなわち、条件設定部３２は、ＬＳＩの設計情報に基づいて、入力されるＭビット幅信号を、１乃至Ｎ（Ｎ＜Ｍ）ビット毎に各信号組にまとめ、まとめられたＮ個の信号組毎に信号処理するように信号条件を設定する。
【００３６】
いまの場合、設計条件として、ＬＳＩに入力される信号（入力信号）が６１４４ビット幅であり、ＬＳＩから出力される信号（出力信号）が２０４８信号であり、入力信号が８ビットのビデオ信号で構成されているという情報が入力されるので、条件設定部３２は、６１４４ビット幅の信号を、ビデオ信号の１乃至８ビットのそれぞれのビットで構成される８個の信号組にまとめ、これらの信号組毎に信号処理を行うように信号条件を設定し、設定された信号条件をブロック分割部３３に出力し、ステップＳ２に進む。
【００３７】
図４を参照して、ステップＳ１の条件設定処理について詳しく説明する。図４は、ＬＳＩに入力されるＭビット幅の信号の構成例を示している。
【００３８】
図４においては、ＬＳＩに入力される信号（入力信号）７１は、各１ビットのデータｄ［０］乃至ｄ［６１４３］により構成される６１４４ビット幅の信号である。また、入力信号７１は、８ビットのビデオ信号により構成される。したがって、入力信号７１は、データｄ［０］乃至ｄ［７］のビデオ信号８１−１、データｄ［８］乃至ｄ［１５］のビデオ信号８１−２、…、およびデータｄ［６１３６］乃至ｄ［６１４３］のビデオ信号８１−７６８により構成されている。
【００３９】
この信号を、このまま１つの組み合わせ回路にレイアウトすると、８ビット×７６８組のデータ幅を持った信号として処理されるため、図１を参照して上述したように、配線率が非常に悪くなってしまう。
【００４０】
そこで、条件設定部３２は、ビデオ信号８１−１乃至８１−７６８における１ビット目のデータを、信号組９１−１としてまとめ、ビデオ信号８１−１乃至８１−７６８における２ビット目のデータを、信号組９１−２としてまとめ、ビデオ信号８１−１乃至８１−７６８における３ビット目のデータを、信号組９１−３としてまとめ、ビデオ信号８１−１乃至８１−７６８における４ビット目のデータを、信号組９１−４としてまとめ、ビデオ信号８１−１乃至８１−７６８における５ビット目のデータを、信号組９１−５としてまとめ、ビデオ信号８１−１乃至８１−７６８における６ビット目のデータを、信号組９１−６としてまとめ、ビデオ信号８１−１乃至８１−７６８における７ビット目のデータを、信号組９１−７としてまとめ、そして、ビデオ信号８１−１乃至８１−７６８における８ビット目のデータを、信号組９１−８としてまとめる。
【００４１】
これにより、信号組９１−１は、ビデオ信号８１−１の１ビット目のデータｄ［０］，ビデオ信号８１−２の１ビット目のデータｄ［８］，…，ビデオ信号８１−７６８の１ビット目のデータｄ［６１３６］により構成され、信号組９１−２は、ビデオ信号８１−１の２ビット目のデータｄ［１］，ビデオ信号８１−２の２ビット目のデータｄ［９］，…，ビデオ信号８１−７６８の２ビット目のデータｄ［６１３７］により構成され、信号組９１−３は、ビデオ信号８１−１の３ビット目のデータｄ［２］，ビデオ信号８１−２の３ビット目のデータｄ［１０］，…，ビデオ信号８１−７６８の３ビット目のデータｄ［６１３８］により構成され、信号組９１−４は、ビデオ信号８１−１の４ビット目のデータｄ［３］，ビデオ信号８１−２の４ビット目のデータｄ［１１］，…，ビデオ信号８１−７６８の４ビット目のデータｄ［６１３９］により構成される。
【００４２】
また、信号組９１−５は、ビデオ信号８１−１の５ビット目のデータｄ［４］，ビデオ信号８１−２の５ビット目のデータｄ［１２］，…，ビデオ信号８１−７６８の５ビット目のデータｄ［６１４０］により構成され、信号組９１−２は、ビデオ信号８１−１の６ビット目のデータｄ［５］，ビデオ信号８１−２の６ビット目のデータｄ［１３］，…，ビデオ信号８１−７６８の６ビット目のデータｄ［６１４１］により構成され、信号組９１−７は、ビデオ信号８１−１の７ビット目のデータｄ［６］，ビデオ信号８１−２の７ビット目のデータｄ［１４］，…，ビデオ信号８１−７６８の７ビット目のデータｄ［６１４２］により構成され、信号組９１−８は、ビデオ信号８１−１の８ビット目のデータｄ［７］，ビデオ信号８１−２の８ビット目のデータｄ［１５］，…，ビデオ信号８１−７６８の８ビット目のデータｄ［６１４３］により構成される。
【００４３】
以上のように、８ビットのビデオ信号で構成される６１４４ビット幅の信号が、１乃至８ビット毎の８個の信号組９１−１乃至９１−８にまとめられる。そして、条件設定部３２は、これらの信号組９１−１乃至９１−８毎に信号処理を行うように信号条件を設定し、設定された信号条件をブロック分割部３３に出力する。
【００４４】
図３に戻って、ブロック分割部３３は、ステップＳ２において、条件設定部３２からの信号条件に基づいて、ＬＳＩ内部を、まとめられたＮ個の信号組で信号処理を行うようにＮ個のブロックに分割する。すなわち、いまの場合、ブロック分割部３３は、ＬＳＩ内部を、条件設定部３２によりまとめられた８組の信号組９１−１乃至９１−８毎に、信号処理を行う８個のブロックに分割し、ステップＳ３に進む。ステップＳ３において、ブロック分割部３３は、各ブロックがレジスタ（フリップフロップ）およびレジスタとの間の組み合わせ回路により構成されるまで、そのブロックの分割を繰り返し、各ブロック内のレジスタおよび組み合わせ回路を決定する。ブロック分割部３３は、決定された各ブロックの構成情報をレイアウト部３５に出力し、ステップＳ４に進む。
【００４５】
ステップＳ４において、レイアウト部３５は、ブロック分割部３３からの各ブロックの構成情報に基づいて、各ブロックのレジスタおよび組み合わせ回路に用いられるセルを、セルライブラリ４１から選択し、選択されたセルの論理的な機能を実現するように、接続関係と幾何学的な配置と配線を決定し、これに基づいてレイアウトを生成する。そして、レイアウト部３５は、生成されたレイアウトに基づいて、選択されたセルをＬＳＩ上に配置し、ステップＳ５に進む。
【００４６】
ステップＳ５において、セル配線部３６は、各ブロックにおいてレイアウト部３５により配置されたセル同士の配線経路を決定し、ステップＳ６に進み、ブロック配線部３７は、レイアウト部３５により生成されたレイアウトに基づいて、セル配線部３６によりセルが配線されたブロックとブロック間を配線経路を決定し、図３の回路設計処理を終了する。
【００４７】
図５は、図２の回路設計装置２１により設計されたＬＳＩ１０１の構成例を示す。図５の例においては、ＬＳＩ１０１には、６１４４ビットの入力信号７１が、８組にまとめられた信号組９１−１乃至９１−８が入力され、ＬＳＩ１０１は、入力された信号組９１−１乃至９１−８毎に、それぞれ信号処理する８個のブロック１１１−１乃至１１１−８により構成される。
【００４８】
ブロック１１１−１は、組み合わせ回路１２１−１、組み合わせ回路１２１−１の前段に位置するフリップフロップ１２２−１、および、組み合わせ回路１２１−１の後段に位置するフリップフロップ１２３−１により構成される。フリップフロップ１２２−１は、ＬＳＩ１０１に入力される入力信号７１のうち、７６８ビットの信号組９１−１を、組み合わせ回路１２１−１に出力する。組み合わせ回路１２１−１は、フリップフロップ１２２−１からの７６８ビットの信号組９１−１を、２５６ビットの信号組１２４−１に削減する処理を実行し、フリップフロップ１２３−１に、２５６ビットの信号組１２４−１を出力する。フリップフロップ１２３−１は、組み合わせ回路１２１−１からの２５６ビットの信号組１２４−１を、図示せぬ後段に出力する。
【００４９】
同様に、ブロック１１１−２は、組み合わせ回路１２１−２、組み合わせ回路１２１−２の前段に位置するフリップフロップ１２２−２、および、組み合わせ回路１２１−２の後段に位置するフリップフロップ１２３−２により構成される。フリップフロップ１２２−２は、ＬＳＩ１０１に入力される入力信号７１のうち、７６８ビットの信号組９１−２を、組み合わせ回路１２１−２に出力する。組み合わせ回路１２１−２は、フリップフロップ１２２−２からの７６８ビットの信号組９１−２を、２５６ビットの信号組１２４−２に削減する処理を実行し、フリップフロップ１２３−２に、２５６ビットの信号組１２４−２を出力する。フリップフロップ１２３−２は、組み合わせ回路１２１−２からの２５６ビットの信号組１２４−２を、後段に出力する。
【００５０】
ブロック１１１−３は、組み合わせ回路１２１−３、組み合わせ回路１２１−３の前段に位置するフリップフロップ１２２−３、および、組み合わせ回路１２１−３の後段に位置するフリップフロップ１２３−３により構成される。フリップフロップ１２２−３は、ＬＳＩ１０１に入力される入力信号７１のうち、７６８ビットの信号組９１−３を、組み合わせ回路１２１−３に出力する。組み合わせ回路１２１−３は、フリップフロップ１２２−３からの７６８ビットの信号組９１−３を、２５６ビットの信号組１２４−３に削減する処理を実行し、フリップフロップ１２３−３に、２５６ビットの信号組１２４−３を出力する。フリップフロップ１２３−３は、組み合わせ回路１２１−３からの２５６ビットの信号組１２４−３を、後段に出力する。
【００５１】
ブロック１１１−４は、組み合わせ回路１２１−４、組み合わせ回路１２１−４の前段に位置するフリップフロップ１２２−４、および、組み合わせ回路１２１−４の後段に位置するフリップフロップ１２３−４により構成される。フリップフロップ１２２−４は、ＬＳＩ１０１に入力される入力信号７１のうち、７６８ビットの信号組９１−４を、組み合わせ回路１２１−４に出力する。組み合わせ回路１２１−４は、フリップフロップ１２２−４からの７６８ビットの信号組９１−４を、２５６ビットの信号組１２４−４に削減する処理を実行し、フリップフロップ１２３−４に、２５６ビットの信号組１２４−４を出力する。フリップフロップ１２３−４は、組み合わせ回路１２１−４からの２５６ビットの信号組１２４−４を、後段に出力する。
【００５２】
ブロック１１１−５は、組み合わせ回路１２１−５、組み合わせ回路１２１−５の前段に位置するフリップフロップ１２２−５、および、組み合わせ回路１２１−５の後段に位置するフリップフロップ１２３−５により構成される。フリップフロップ１２２−５は、ＬＳＩ１０１に入力される入力信号７１のうち、７６８ビットの信号組９１−５を、組み合わせ回路１２１−５に出力する。組み合わせ回路１２１−５は、フリップフロップ１２２−５からの７６８ビットの信号組９１−５を、２５６ビットの信号組１２４−５に削減する処理を実行し、フリップフロップ１２３−５に、２５６ビットの信号組１２４−５を出力する。フリップフロップ１２３−５は、組み合わせ回路１２１−５からの２５６ビットの信号組１２４−５を、後段に出力する。
【００５３】
ブロック１１１−６は、組み合わせ回路１２１−６、組み合わせ回路１２１−６の前段に位置するフリップフロップ１２２−６、および、組み合わせ回路１２１−６の後段に位置するフリップフロップ１２３−６により構成される。フリップフロップ１２２−６は、ＬＳＩ１０１に入力される入力信号７１のうち、７６８ビットの信号組９１−６を、組み合わせ回路１２１−６に出力する。組み合わせ回路１２１−６は、フリップフロップ１２２−６からの７６８ビットの信号組９１−６を、２５６ビットの信号組１２４−６に削減する処理を実行し、フリップフロップ１２３−６に、２５６ビットの信号組１２４−６を出力する。フリップフロップ１２３−６は、組み合わせ回路１２１−６からの２５６ビットの信号組１２４−６を、後段に出力する。
【００５４】
ブロック１１１−７は、組み合わせ回路１２１−７、組み合わせ回路１２１−７の前段に位置するフリップフロップ１２２−７、および、組み合わせ回路１２１−７の後段に位置するフリップフロップ１２３−７により構成される。フリップフロップ１２２−７は、ＬＳＩ１０１に入力される入力信号７１のうち、７６８ビットの信号組９１−７を、組み合わせ回路１２１−７に出力する。組み合わせ回路１２１−７は、フリップフロップ１２２−７からの７６８ビットの信号組９１−７を、２５６ビットの信号組１２４−７に削減する処理を実行し、フリップフロップ１２３−７に、２５６ビットの信号組１２４−７を出力する。フリップフロップ１２３−７は、組み合わせ回路１２１−７からの２５６ビットの信号組１２４−７を、後段に出力する。
【００５５】
ブロック１１１−８は、組み合わせ回路１２１−８、組み合わせ回路１２１−８の前段に位置するフリップフロップ１２２−８、および、組み合わせ回路１２１−８の後段に位置するフリップフロップ１２３−８により構成される。フリップフロップ１２２−８は、ＬＳＩ１０１に入力される入力信号７１のうち、７６８ビットの信号組９１−８を、組み合わせ回路１２１−８に出力する。組み合わせ回路１２１−８は、フリップフロップ１２２−８からの７６８ビットの信号組９１−８を、２５６ビットの信号組１２４−８に削減する処理を実行し、フリップフロップ１２３−８に、２５６ビットの信号組１２４−８を出力する。フリップフロップ１２３−８は、組み合わせ回路１２１−８からの２５６ビットの信号組１２４−８を、後段に出力する。
【００５６】
なお、図５の例において、フリップフロップ１２２−１乃至１２２−８は、図示せぬクロック発生部から供給されるクロックに基づいて、信号を組み合わせ回路１２２−１乃至１２２−８に出力し、フリップフロップ１２３−１乃至１２３−８は、クロック発生部から供給されるクロックに基づいて、信号を後段に出力するが、その図示および説明は説明の便宜上、省略されている。
【００５７】
以上のように、ＬＳＩ１０１の内部を、７６８ビットの信号組をそれぞれ処理する８個の組み合わせ回路１２１−１乃至１２１−８からなるブロック１１１−１乃至１１１−８に分けて構成、配置することにより、図１を参照して上述したように、６１４４ビット幅の信号を、８ビット×７６８組のデータ幅の信号として処理する、１つの組み合わせ回路でＬＳＩを構成、配置するよりも、各組み合わせ回路１２１−１乃至１２１−８において、セルの組み合わせ数が削減される。
【００５８】
すなわち、実際には、レイアウト上においては、信号線とコントロール線を考慮した配置や配線をすることができないため、図１に示されるような巨大な回路になってしまうと、配線効率が低下してしまうが、回路を組み合わせ回路１２１−１乃至１２１−８に分割して、見かけ回路を小さくすることにより、回路の複雑さを軽減することができ、それに応じて、配線数も削減され、配線効率が向上される。
【００５９】
これにより、配線効率が向上された組み合わせ回路１２１−１乃至１２１−８が搭載されたＬＳＩ１０１のレイアウト面積に対するセルの配置面積の割合は、７０％まで向上される。これにより、１５万ゲート規模のゲートサイズのままでも、ＬＳＩ１０１のサイズは、略1mmを保つことができ、図１のＬＳＩのサイズ（6.2mm）のように大きくなることが抑制される。
【００６０】
さらに、ＬＳＩのサイズの拡大が抑制されるため、コストも削減でき、ＬＳＩのタイミング調整も容易になり、ＬＳＩにかかるパワーも小さく抑えることができる。さらに、８つの組み合わせ回路を設計することにより、１つのより大きな組み合わせ回路を設計するよりも、設計期間の短縮化も図ることができる。
【００６１】
なお、上記説明においては、多ビット（Ｍビット）を６１４４ビットとして説明したが、６１４４ビットに限定されず、Ｎよりも大きいビットであれば、他のビット数であってもよい。また、Ｎビットを８ビットとしたが、８ビットに限定されることはなく、４ビットとしてもよいし、１６ビットとしてもよい。
【００６２】
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。この場合、例えば、図２の回路設計装置２１は、図６に示されるような回路設計装置２０１により構成される。
【００６３】
図６において、ＣＰＵ（Central Processing Unit）２１１は、ＲＯＭ(Read Only Memory) ２１２に記憶されているプログラム、または、記憶部２１８からＲＡＭ（Random Access Memory）２１３にロードされたプログラムに従って各種の処理を実行する。ＲＡＭ２１３にはまた、ＣＰＵ２１１が各種の処理を実行する上において必要なデータなどが適宜記憶される。
【００６４】
ＣＰＵ２１１、ＲＯＭ２１２、およびＲＡＭ２１３は、バス２１４を介して相互に接続されている。このバス２１４にはまた、入出力インタフェース２１５も接続されている。
【００６５】
入出力インタフェース２１５には、キーボード、マウスなどよりなる入力部２１６、ＣＲＴ(Cathode Ray Tube)，ＬＣＤ（Liquid Crystal Display）などよりなるディスプレイ、並びにスピーカなどよりなる出力部２１７、ハードディスクなどより構成される記憶部２１８、モデム、ターミナルアダプタなどより構成される通信部２１９が接続されている。通信部２１９は、図示しないネットワークを介しての通信処理を行う。
【００６６】
入出力インタフェース２１５にはまた、必要に応じてドライブ２２０が接続され、磁気ディスク２２１、光ディスク２２２、光磁気ディスク２２３、或いは半導体メモリ２２４などが適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部２１８にインストールされる。
【００６７】
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば、汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
【００６８】
この記録媒体は、図６に示されるように、装置本体とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク２２１（フレキシブルディスクを含む）、光ディスク２２２（CD-ROM(Compact Disk-Read Only Memory)，ＤＶＤ(Digital Versatile Disk)を含む）、光磁気ディスク２２３（MD(Mini-Disk)（商標）を含む）、もしくは半導体メモリ２２４などよりなるパッケージメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているＲＯＭ２１２や、記憶部２１８に含まれるハードディスクなどで構成される。
【００６９】
なお、本明細書において、フローチャートに示されるステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【図面の簡単な説明】
【００７０】
【図１】従来のＬＳＩの構成例を示す図である。
【図２】本発明の回路設計装置の構成例を示すブロック図である。
【図３】図２の回路設計装置の回路設計処理を説明するフローチャートである。
【図４】図３のステップＳ１の条件設定処理を説明する図である。
【図５】本発明を適用した半導体集積回路の構成例を示すブロック図である。
【図６】本発明の回路設計装置の他の構成例を示すブロック図である。
【符号の説明】
【００７１】
２１  回路設計装置，３１  入力部，３２  条件設定部，３３  ブロック分割部，９１−１乃至８  信号組，１０１  ＬＳＩ，１１１−１乃至１１１−８  ブロック，１２１−１乃至１２１−８  組み合わせ回路，１２２−１乃至１２２−８  フリップフロップ，１２３−１乃至１２３−８  フリップフロップ，１２４−１乃至１２４−８  信号組
【図１】
2005165706.tif 000003
【図２】
2005165706.tif 000004
【図３】
2005165706.tif 000005
【図４】
2005165706.tif 000006
【図５】
2005165706.tif 000007
【図６】
2005165706.tif 000008