(57)【特許請求の範囲】
【請求項１】
バスと、上記バスに接続する機能モジュールとを組み合わせて構成されるシステムの設計支援システムであって、
上記機能モジュールがバスに対して要求する転送帯域を示す機能モジュール情報を上記機能モジュール毎に記憶している記憶手段と、
設計対象のシステムを構成する上記バス及び機能モジュールを選択する選択手段と、
上記選択手段により選択された上記バスに係るパラメータを、上記選択手段により選択された機能モジュールについて上記記憶手段により記憶されている機能モジュール情報に基づいて設定するパラメータ設定手段とを備え、
上記パラメータ設定手段は、バスに接続する機能モジュールが当該バスに対して要求する仕様が満たされるように上記パラメータを決定することを特徴とする設計支援システム。
【請求項２】
設計対象のシステムを構成するためにバス及び当該バスに接続する機能モジュールを選択する選択手段と、
上記機能モジュールがバスに対して要求する転送帯域を示す機能モジュール情報を上記機能モジュール毎に記憶している記憶手段と、
上記バスを編集画面上に表示する第１の表示制御手段と、
上記機能モジュールを編集画面上に表示する第２の表示制御手段と、
上記バスに係るパラメータを、当該バスに接続する機能モジュールが動作する際に当該バスに対して要求する転送帯域が満たされるように、上記選択手段により選択された機能モジュールについて上記記憶手段により記憶されている機能モジュール情報に基づいて決定し設定するパラメータ設定手段とを備えることを特徴とする設計支援システム。
【請求項３】
上記バスに機能モジュールを接続すると、接続されている機能モジュールに応じて上記バスに係るパラメータを自動的に変更することを特徴とする請求項１又は２に記載の設計支援システム。
【請求項４】
上記バスに係るパラメータを、さらに予め設定された制約条件を満たすように決定することを特徴とする請求項１〜３の何れか１項に記載の設計支援システム。
【請求項５】
上記バスに係るパラメータは、当該バスのデータ信号ビット幅及び動作周波数の少なくとも一方であることを特徴とする請求項１〜４の何れか１項に記載の設計支援システム。
【請求項６】
機能モジュールがバスに対して要求する転送帯域を示す機能モジュール情報を上記機能モジュール毎に記憶している記憶手段と、選択手段と、パラメータ設定手段とを有する情報処理装置によって、システムの設計支援をする情報処理方法であって、
上記選択手段が、設計対象のシステムを構成するためにバス及び機能モジュールを選択する選択工程と、
上記パラメータ設定手段が、上記選択工程で選択された上記バスに係るパラメータを、上記選択工程で選択された機能モジュールについて上記記憶手段により記憶されている機能モジュール情報に基づいて設定するパラメータ設定工程とを有し、
上記パラメータ設定工程では、バスに接続する機能モジュールが当該バスに対して要求する仕様が満たされるように上記パラメータを決定することを特徴とする情報処理方法。
【請求項７】
請求項６に記載の情報処理方法の各工程をコンピュータに実行させるためのプログラム。
【請求項８】
請求項７に記載のプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、設計支援システム及び情報処理方法に関し、詳しくはシステムＬＳＩのアーキテクチャ設計支援システムに関する。
【背景技術】
【０００２】
プロセス技術の進歩によりＬＳＩ（Large Scale Integrated Circuit）等の集積回路の集積度が増大し、これまでボードに複数のチップ（デバイス）を実装し実現されていたシステムをシステムＬＳＩとして１チップ上に搭載することが可能となった。チップ上に搭載される機能モジュールも多様化し、回路規模が増大している。これに伴い、システムＬＳＩを効率的に設計する手法として、従来のＶｅｒｉｌｏｇ−ＨＤＬやＶＨＤＬといったハードウェア記述言語を使用した設計から、ＳｙｓｔｅｍＣやＳｐｅｃＣといったシステム記述言語を使用した設計が普及してきた（例えば特許文献１参照）。
【０００３】
システム記述言語による設計支援ツールとして、Synopsys社のCoCentricや、CoWare社のN2Cが知られている。システム記述言語による設計支援ツールにおいては、システム記述言語により記述したモジュールを、ブロック図入力画面で入力し、システムＬＳＩの設計を行うことが可能になっている。そして、システムＬＳＩの設計が終了すると、設計支援ツールからシミュレーションモデルを生成し、シミュレータを起動してシステムシミュレーションを行い、システムＬＳＩの機能や性能を確認できるものである。
【０００４】
ここで、システム記述言語によるモジュール記述は、記述の抽象度により以下に説明する３種類の記述レベルが一般に知られている。
【０００５】
＜トランザクションレベル（ＴＬ）＞
トランザクションレベルは、モジュール間の通信を捉えて機能を記述する抽象度レベルである。通信の開始及び終了の時間、通信データにより動作するため、クロックに対するシミュレーション精度は非常に低い。イベントにより機能をシミュレートするため、シミュレーション速度は非常に速い。
【０００６】
＜バスサイクルアキュレート（ＢＣＡ）＞
バスサイクルアキュレートは、モジュールの入力と出力とのイベントとして機能を記述する抽象度レベルである。動作クロックに対し、入力部及び出力部で正確にシミュレートすることができる。
【０００７】
＜レジスタトランスファレベル（ＲＴＬ）＞
レジスタトランスファレベルは、レジスタファイル間の同期転送を捉えて回路を記述する抽象度レベルである。動作クロックに対して正確に機能動作をシミュレートすることができ、シミュレーション精度は非常に高い。１クロック毎に機能をシミュレートするため、シミュレーション速度は非常に遅い。
【０００８】
記述の抽象度が高いほどシミュレーション速度は速くなり、一方、抽象度が低いほどシミュレーション精度は高くなる。システムＬＳＩの設計では、抽象度の高い記述から徐々に抽象度の低い記述へと、モジュールの機能が詳細化されていく。設計者は、各種抽象度で記述されたモジュールを選択し、システムＬＳＩの設計を行うのが一般的である。
【０００９】
システムＬＳＩのブロック図を計算機の画面上に表示し、それを編集することでシステムＬＳＩのアーキテクチャを設計するような設計支援システムがある。従来、システムＬＳＩの設計は抽象度が低いＲＴＬのみで設計していたため、従来のこのような設計支援システムも抽象度としてＲＴＬを対象としたものがほとんどであった。しかしながら、最近では抽象度がより高いＢＣＡやＴＬを対象とした設計支援システムが出てきた。
【００１０】
【特許文献１】特開２００１−１４２９２７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
抽象度が高いＢＣＡ、ＴＬを対象とした設計支援システムは、従来の抽象度が低いＲＴＬを対象とした設計支援システムとは異なり、チップに搭載される設計対象のシステムを構成する機能モジュールやバスについてより多くの情報を保持している。
【００１２】
従来の抽象度が低いＲＴＬを対象とした設計支援システムは、機能モジュールについてはその境界部分のポートの数、各ポートの名前、ビット幅、及び入出力の方向等のポート情報を、バスについては単なる信号線の集まりとしての情報しか保持していない。
【００１３】
それに対して、抽象度が高いＢＣＡ、ＴＬを対象とした設計支援システムは、機能モジュールについてはその境界部分のポート情報の他に、以下の情報も保持している。すなわち、このような設定支援システムは、どのバスに接続可能か、バスに対してマスター又はスレーブのどちらとして動作するか、どんな機能を持っているか等の情報を保持している。また、バスについてはその構成信号の情報の他に、プロトコル、アービトレーションアルゴリズム、接続された機能モジュールのアドレス割り当て、データ転送ビット幅、動作周波数等の情報を保持している。
【００１４】
しかしながら、高い抽象度を対象とした設計支援システムでは、機能モジュールやバスの各モジュールの抽象度が高い分、各モジュール内部に保持するパラメータの数が増加した。そのため、システム設計において、設計者は各モジュールに対して多くのパラメータを設定する必要がある。特に、バスはシステムの根幹をなす部分であるので、バスに関するパラメータはシステム全体から見て非常に重要である。また、バスに関するパラメータは、そのバスに接続する機能モジュールの数や種類によって最適な値が大きく変化する。したがって、バスのパラメータ値を決定するためには、設計者は数多くのシミュレーションを繰り返し、長い時間をかけて試行錯誤を行う必要がある。
【００１５】
本発明は、このような事情に鑑みてなされたものであり、設計対象のシステムを構成するモジュールに係るパラメータを効率良くかつ適切に決定できるようにすることを目的とする。
【課題を解決するための手段】
【００１６】
本発明の設計支援システムは、バスと、上記バスに接続する機能モジュールとを組み合わせて構成されるシステムの設計支援システムであって、上記機能モジュールがバスに対して要求する転送帯域を示す機能モジュール情報を上記機能モジュール毎に記憶している記憶手段と、設計対象のシステムを構成する上記バス及び機能モジュールを選択する選択手段と、上記選択手段により選択された上記バスに係るパラメータを、上記選択手段により選択された機能モジュールについて上記記憶手段により記憶されている機能モジュール情報に基づいて設定するパラメータ設定手段とを備え、上記パラメータ設定手段は、バスに接続する機能モジュールが当該バスに対して要求する仕様が満たされるように上記パラメータを決定することを特徴とする。
本発明の設計支援システムは、設計対象のシステムを構成するためにバス及び当該バスに接続する機能モジュールを選択する選択手段と、上記機能モジュールがバスに対して要求する転送帯域を示す機能モジュール情報を上記機能モジュール毎に記憶している記憶手段と、上記バスを編集画面上に表示する第１の表示制御手段と、上記機能モジュールを編集画面上に表示する第２の表示制御手段と、上記バスに係るパラメータを、当該バスに接続する機能モジュールが動作する際に当該バスに対して要求する転送帯域が満たされるように、上記選択手段により選択された機能モジュールについて上記記憶手段により記憶されている機能モジュール情報に基づいて決定し設定するパラメータ設定手段とを備えることを特徴とする。
本発明の情報処理方法は、機能モジュールがバスに対して要求する転送帯域を示す機能モジュール情報を上記機能モジュール毎に記憶している記憶手段と、選択手段と、パラメータ設定手段とを有する情報処理装置によって、システムの設計支援をする情報処理方法であって、上記選択手段が、設計対象のシステムを構成するためにバス及び機能モジュールを選択する選択工程と、上記パラメータ設定手段が、上記選択工程で選択された上記バスに係るパラメータを、上記選択工程で選択された機能モジュールについて上記記憶手段により記憶されている機能モジュール情報に基づいて設定するパラメータ設定工程とを有し、上記パラメータ設定工程では、バスに接続する機能モジュールが当該バスに対して要求する仕様が満たされるように上記パラメータを決定することを特徴とする。
本発明のプログラムは、上記情報処理方法の各工程をコンピュータに実行させることを特徴とする。
本発明のコンピュータ読み取り可能な記録媒体は、上記プログラムを記録したことを特徴とする。
【発明の効果】
【００１７】
本発明によれば、設計対象のシステムを構成するバスに係るパラメータを決定する際に、それに接続する機能モジュールが当該バスに対して必要とする仕様が満たされるように当該バスに係るパラメータを決定する。したがって、パラメータを効率良くかつ適切に決定することができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施形態を図面に基づいて説明する。
図１は、本発明の一実施形態による設計支援システムのシステム構成例を示すブロック図である。本実施形態による設計支援システムは、システム記述言語によるシステムＬＳＩのアーキテクチャ設計を行う（支援する）ものであり、例えば高い抽象度のＢＣＡ（バスサイクルアキュレート）やＴＬ（トランザクションレベル）を対象とする。
【００１９】
本実施形態による設計支援システムは、図１に示すように、入力装置１０、モジュール情報記憶部２０、設計処理部３０、表示制御部４０、及び表示装置５０を有する。
【００２０】
入力装置１０は、設計支援システムに対する外部からの指示等を入力するためのものであり、例えばマウス、トラックボールなどのポインティングデバイスや、キーボード等である。設計対象とするシステムを構成するモジュールの選択・配置、並びにそれらの接続に係る設計支援システムに対する設計者による指示等が、入力装置１０を介して入力される。
【００２１】
モジュール情報記憶部２０には、設計支援システムによるアーキテクチャ設計において使用可能なモジュールの情報が記憶されている。モジュール情報記憶部２０に記憶されるモジュール情報には、バス情報２１及び機能モジュール情報２２がある。
【００２２】
バス情報２１は、機能モジュールを接続するバスに係る情報である。バス情報２１としては、バスの種類及び動作周波数（デフォルトの動作周波数）の情報がバス毎に記憶されている。さらには、バスの構成信号、プロトコル、アービトレーションアルゴリズム、アドレス割り当て等の情報が適宜含まれる。
【００２３】
機能モジュール情報２２は、所定の機能動作を実現する機能モジュールに係る情報である。機能モジュール情報２２としては、機能モジュールの種類（どのような機能を有するか）及びバスに対してマスターとして動作するかスレーブとして動作するかの情報が、機能モジュール毎に記憶されている。機能モジュール情報２２としては、さらにマスターとして動作する場合にはバスに対して要求するデータ転送帯域の情報が機能モジュール毎に記憶されている。さらには、境界部分のポート情報（境界部分のポートの数、各ポートの名前、ビット幅、及び入出力の方向等）や接続可能なバスなどについての情報が適宜含まれる。
【００２４】
設計処理部３０は、設計支援システムを統括的に制御してアーキテクチャ設計に係る処理を行うものであり、モジュール選択部３１、接続処理部３２、及びパラメータ設定部３３を有する。モジュール選択部３１は、設計対象のシステムを構成するモジュールを選択するものである。具体的には、モジュール情報記憶部２０に記憶されているモジュールの中から、入力装置１０より入力される指示に応じたモジュールの情報を読み出すことによりモジュールの選択を行う。
【００２５】
接続処理部３２は、モジュール選択部３１により選択されたモジュールを互いに接続するものであり、選択されたバスとそれに接続する機能モジュールとを入力装置１０より入力される指示に応じて接続する。このように、選択された複数のモジュール（バス及び機能モジュール）を接続し組み合わせていくことでアーキテクチャ設計が行われ、設計対象とするシステムが構成される。
【００２６】
パラメータ設定部３３は、モジュール選択部３１により選択された設計対象のシステムを構成するバスに係るパラメータを設定する。パラメータ設定部３３は、バスに接続する機能モジュールが当該バスに対して要求する仕様（必要としている性能等）に基づいて、これを満足するようなパラメータを決定し、その決定したパラメータを当該バスに設定する。以下の説明では、機能モジュールがバスに対して要求するデータ転送帯域に応じてパラメータを決定する場合を一例として示すが、機能モジュールがバスに対して要求する仕様はデータ転送帯域に限定されるものではない。
【００２７】
表示制御部４０は、公知のディスプレイ等で構成される表示装置５０に、アーキテクチャ設計に係る編集画面であるブロック図入力画面を表示させる。このブロック図入力画面には、後述するように選択可能なモジュール（バス及び機能モジュール）及び設計対象のシステムを構成するために選択されたモジュールが表示される。表示制御部４０は、設計処理部３０で行われた処理に応じて表示を随時更新させ、当該処理を反映させたブロック図入力画面を表示装置５０に表示させる。
【００２８】
図２は、本実施形態の設計支援システムにおけるブロック図入力画面の一例を示す図である。図２において、１は設計支援システムにおけるブロック図入力画面全体であり、システムブロック図表示部分１００、機能モジュール選択部分１１０、及びバス選択部分１２０の各表示領域からなる。
【００２９】
システムブロック図表示部分１００は、設計対象とするシステムのブロック図を表示する部分である。
ここで、１０１は設計対象とするシステムを構成するバスである。このバス１０１は、“BusA”という種類のバスである。また、１０２は設計対象とするシステムを構成する機能モジュールであり、バス１０１に対してマスターとして接続している。機能モジュール１０２は“ModuleA”という種類の機能モジュールである。１０４は設計対象とするシステムを構成する機能モジュールであり、バス１０１に対してスレーブとして接続している。機能モジュール１０４は“ModuleC”という種類の機能モジュールである。
【００３０】
機能モジュール選択部分１１０は、本実施形態の設計支援システムで使用可能な機能モジュールの種類をすべて或いはその一部を表示する部分である。機能モジュール選択部分１１０に表示された機能モジュールの選択は、以下のように実行できる。すなわち、設計支援システムが動作している計算機に直接又はネットワーク等を介して間接的に接続されている入力装置１０（例えば、マウス、トラックボール、キーボード等）により任意の１つの機能モジュールの種類を選択指定可能となっている。
【００３１】
バス選択部分１２０は、本実施形態の設計支援システムで使用可能なバスの種類をすべて或いはその一部を表示する部分である。バス選択部分１２０に表示されたバスの選択は、以下のように実行できる。すなわち、設計支援システムが動作している計算機に直接又はネットワーク等を介して間接的に接続されている入力装置１０（例えば、マウス、トラックボール、キーボード等）により任意の１つのバスの種類を選択指定可能となっている。
【００３２】
次に、本実施形態の設計支援システムによるブロック図入力画面を用いたシステムＬＳＩの設計における動作について説明する。なお、以下の説明では一例として、入力装置１０としてマウスを用い、図２に示したブロック図入力画面に表示されているシステムを設計するものとする。
【００３３】
まず、ブロック図入力画面のバス選択部分１２０に表示されている“BusA”を設計者がマウスを用いてポイント、クリックすることで、設計処理部３０により設計対象のシステムＬＳＩを構成するバスとして“BusA”が選択される。そして、“BusA”の選択状態のままブロック図入力画面のシステムブロック図表示部分１００の任意の位置をマウスでポイント、クリックされると、“BusA”をバス１０１として配置する。
【００３４】
このとき、パラメータ設定部３３は、バス１０１に係るパラメータの設定を行い、バス１０１の動作周波数を、設計支援システムが情報として内部に保持している“BusA”のデフォルトの動作周波数である４８ＭＨｚとして設定する。なお、この後（動作周波数の設定後）、バス１０１をマウスでクリックすることにより表示されるメニューを利用して、動作周波数を設計者が所望する任意の値に設定し直すことも可能である。
【００３５】
次に、ブロック図入力画面の機能モジュール選択部分１１０に表示されている“ModuleA”を設計者がマウスを用いてポイント、クリックすることで、設計処理部３０により設計対象のシステムＬＳＩを構成する機能モジュールとして“ModuleA”が選択される。そして、“ModuleA”の選択状態のままシステムブロック図表示部分１００のバス１０１の左上の位置をマウスでポイント、クリックされると、“ModuleA”を機能モジュール１０２として配置する。
【００３６】
次に、機能モジュール選択部分１１０に表示されている“ModuleC”を設計者がマウスを用いてポイント、クリックすることで、設計処理部３０により設計対象のシステムＬＳＩを構成する機能モジュールとして“ModuleC”が選択される。そして、“ModuleC”の選択状態のままシステムブロック図表示部分１００のバス１０１の下の位置をマウスでポイント、クリックされると、“ModuleC”を機能モジュール１０４として配置する。
【００３７】
次に、機能モジュール１０２の位置を設計者がマウスでポイント、ボタンをプレースし、バス１０１をポイント、ボタンをリリースすることで、設計処理部３０により機能モジュール１０２とバス１０１とが接続される。機能モジュール１０４についても同様にバス１０１と接続される。
【００３８】
上述した動作において、バス１０１に対してマスターとして動作する機能モジュール１０２がバス１０１に接続されると、パラメータ設定部３３は、下記式（１）が成立するＷのうち、３２以上かつ２の冪乗となる値にＷを自動で決定する。
Ｕａ＜（Ｋ×Ｈ×Ｗ）  …（１）
【００３９】
ここで、Ｕａは設計支援システムが内部に保持している“ModuleA”のバス１０１に対する要求データ転送帯域、Ｈは既に設定されているバス１０１の動作周波数（本実施形態では４８ＭＨｚ）である。また、Ｋは設計支援システムが内部に保持している“BusA”のデータ転送帯域係数、Ｗはバス１０１のデータ転送用信号ビット幅である。
【００４０】
ここで例えば本実施形態では上記式（１）が成立するＷが３２であれば、パラメータ設定部３３によりバス１０１のデータ転送用信号ビット幅は３２ビット（32-bit）に設定される。なお、“BusA”のデータ転送帯域係数Ｋは、“BusA”の動作周波数Ｈ及びデータ転送用信号ビット幅Ｗを用いて表される下記式（２）が“BusA”のデータ転送帯域となるように決定されている。
Ｋ×Ｈ×Ｗ  …（２）
【００４１】
上述した手順によってパラメータ設定部３３により上記式（１）等を基にＷの最小値を得る。したがって、バス１０１に対してマスターとして接続している機能モジュール１０２がバス１０１に要求するデータ転送帯域を満たす最小のバス１０１のデータ転送用信号ビット幅が決定される。
【００４２】
次に、上述したようにして構成したシステムに対して、図３に示すように機能モジュール１０３を追加する場合について説明する。図３は、図２に示した状態から以下に説明する操作を行い機能モジュール１０３を追加した状態を示す図である。
【００４３】
上記図２に示した状態において、機能モジュール選択部分１１０に表示されている“ModuleB”を設計者がマウスを用いてポイント、クリックする。すると、設計処理部３０により設計対象のシステムＬＳＩを構成する機能モジュールとして“ModuleB”が選択される。そして、“ModuleB”の選択状態のままシステムブロック図表示部分１００のバス１０１の右上の位置をマウスでポイント、クリックされると、“ModuleB”を機能モジュール１０３として配置する。
【００４４】
次に、機能モジュール１０３の位置を設計者がマウスでポイント、ボタンをプレースし、バス１０１をポイント、ボタンをリリースすることで、設計処理部３０により機能モジュール１０３とバス１０１とが接続される。
【００４５】
上述したようにして、バス１０１に対してマスターとして動作する機能モジュール１０３がバス１０１に接続されると、パラメータ設定部３３は、下記式（３）が成立するＷのうち、３２以上かつ２の冪乗となる値にＷを自動で決定する。
（Ｕａ＋Ｕｂ）＜（Ｋ×Ｈ×Ｗ）  …（３）
【００４６】
ここで、Ｕａは設計支援システムが内部に保持している“ModuleA”のバス１０１に対する要求データ転送帯域であり、Ｕｂは同様に“ModuleB”のバス１０１に対する要求データ転送帯域である。また、Ｈは既に設定されているバス１０１の動作周波数Ｈ（本実施形態では４８ＭＨｚ）、Ｋは設計支援システムが内部に保持している“BusA”のデータ転送帯域係数、Ｗはバス１０１のデータ転送用信号ビット幅である。
【００４７】
ここで例えば本実施形態では上記式（３）が成立するＷが６４であれば、パラメータ設定部３３により、機能モジュール１０３を追加した後のバス１０１のデータ転送用信号ビット幅は６４ビット（64-bit）に設定される。
【００４８】
つまり、図２に示した状態から機能モジュール１０３を追加して図３に示した状態にシステム構成を変更すると、バス１０１のデータ転送用信号ビット幅が３２ビットから６４ビットに自動的に変化する。この際、設計者は、機能モジュール１０２及び機能モジュール１０３がバス１０１に対して要求するデータ転送帯域等を計算したり、又はシミュレーションを実行してその結果を解析したりする。したがって、設計者自らがバス１０１のパラメータを設定する必要がない。
【００４９】
上述した例では、機能モジュール１０３を追加した場合にバス１０１のデータ転送用信号ビット幅を自動的に変更したが、データ転送用信号ビット幅を３２ビットに固定するという制約を加えた場合についての一例を以下に説明する。このような制約条件は、予め設定し所定の記憶部に記憶させておくようにすれば良い。
【００５０】
図２に示した状態において、ブロック図表示部分１００に表示されているバス１０１を設計者がマウスを用いてポイント、クリックすることで所定のメニューが表示される。表示されるメニュー項目の中から“fix bus data width”をマウスで選択することにより、バス１０１のデータ転送用信号ビット幅が３２ビットに固定される。
【００５１】
その後、上述した例と同様の操作によりバス１０１に対して機能モジュール１０３が接続されると、パラメータ設定部３３は、上記式（３）が成立するようにＨ、Ｗを自動で決定する。但し、バス１０１のデータ転送用信号ビット幅Ｗは３２に固定されているので、バス１０１の動作周波数Ｈを変化させることで上記式（３）を成立させる。また、その際にバス１０１の動作周波数Ｈは予め設計者が指定した周波数の倍数となる値に決定する。本実施形態では例えばデフォルトの動作周波数である４８ＭＨｚの倍数であるとすると、バス１０１の動作周波数Ｈの値は９６となる。
【００５２】
したがって、図２に示した状態から、バス１０１のデータ転送用信号ビット幅を３２ビットに固定したまま、機能モジュール１０３を追加すると、パラメータ設定部３３により、バス１０１の動作周波数が４８ＭＨｚから９６ＭＨｚに自動的に変化する。
以上のように、データ転送用ビット幅又は動作周波数といったバス１０１のパラメータを、バス１０１に対してマスターとして接続している機能モジュール１０２、１０３の両方がバス１０１に対して要求するデータ転送帯域を満たす最小の値として自動的に決定することが可能となる。
【００５３】
本実施形態によれば、設計対象のシステムを構成するバスに係るパラメータ、特にバスのデータ転送帯域に関するパラメータを決定する場合に、当該バスに係るパラメータは以下のように自動的に決定される。すなわち、パラメータ設定部３３が、バスに接続する機能モジュールが当該バスに対して要求するデータ転送帯域に基づいて、当該バスに係るパラメータを自動的に決定する。さらに、機能モジュールが追加された場合には、パラメータ設定部３３が、バスに接続している複数の機能モジュールが当該バスに対してそれぞれ要求するデータ転送帯域の和に基づいて、バスに係るパラメータを自動的に再決定して変更する。
これにより、自動的にバスに接続される機能モジュールに応じた適切なパラメータを効率良く決定し設定することができる。さらには、設計者自らが、バスに接続する機能モジュールがバスに対して要求するデータ転送帯域等を計算したり、又はシミュレーションを実行しその結果を解析したりする必要はない。
【００５４】
（本発明の他の実施形態）
上述した実施形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置又はシステム内のコンピュータに対し、上記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給し、その装置又はシステムのコンピュータ（ＣＰＵ又はＭＰＵ）に格納されたプログラムに従って上記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
また、この場合、上記ソフトウェアのプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコード自体は本発明を構成する。また、そのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
また、コンピュータが供給されたプログラムコードを実行することにより、上述の実施形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているＯＳ（オペレーティングシステム）又は他のアプリケーションソフト等と共同して上述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
【００５５】
図４は、本実施形態に示した設計支援システムを実現可能なコンピュータ４００のハードウェア構成例を示すブロック図である。
コンピュータ４００は、図４に示すように、ＣＰＵ４０１と、ＲＯＭ４０２と、ＲＡＭ４０３と、入力装置であるキーボード（ＫＢ）４０９のキーボードコントローラ（ＫＢＣ）４０５と、表示装置であるＣＲＴディスプレイ（ＣＲＴ）４１０のＣＲＴコントローラ（ＣＲＴＣ）４０６と、ハードディスクドライブ（ＨＤ）４１１及びフレキシブルディスクドライブ（ＦＤ）４１２のディスクコントローラ（ＤＫＣ）４０７と、ネットワークインタフェースカード（ＮＩＣ）４０８とが、システムバス４０４を介して互いに通信可能に接続された構成としている。
ＣＰＵ４０１は、ＲＯＭ４０２又はハードディスクドライブ４１１に記憶されたソフトウェア（プログラム）、又はフレキシブルディスクドライブ４１２より供給されるソフトウェア（プログラム）を実行することで、システムバス４０４に接続された各構成部を総括的に制御する。すなわち、ＣＰＵ４０１は、プログラムやデータの記録媒体であるＲＯＭ４０２、ハードディスクドライブ４１１、又はフレキシブルディスクドライブ４１２から処理プログラムを読み出して実行することで、本実施形態での動作を実現するための制御を行う。
ＲＡＭ４０３は、ＣＰＵ４０１のメインメモリ及びワークエリア等として機能する。
キーボードコントローラ４０５は、キーボード４０９や図示していないポインティングデバイス等からの指示入力を制御する。
ＣＲＴコントローラ４０６は、ＣＲＴ４１０の表示を制御する。
ディスクコントローラ４０７は、種々のアプリケーション、ユーザファイル、ネットワーク管理プログラム、及び本実施形態における処理プログラム等を記憶するハードディスクドライブ４１１及びフレキシブルディスクドライブ４１２とのアクセスを制御する。
ネットワークインタフェースカード４０８はネットワーク４１３上の他の装置と双方向にデータ等をやりとりする。
【００５６】
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図面の簡単な説明】
【００５７】
【図１】本発明の実施形態における設計支援システムのシステム構成例を示すブロック図である。
【図２】本実施形態におけるブロック図入力画面の一例を示す図である。
【図３】機能モジュール追加後のブロック図入力画面の例を示す図である。
【図４】本実施形態における設計支援システムを実現可能なコンピュータのハードウェア構成例を示す図である。
【符号の説明】
【００５８】
１０  入力装置
２０  モジュール情報記憶部
３０  設計処理部
３１  モジュール選択部
３２  接続処理部
３３  パラメータ設定部
４０  表示制御部
５０  表示装置
【図１】
0004764687.tif 000002
【図２】
0004764687.tif 000003
【図３】
0004764687.tif 000004
【図４】
0004764687.tif 000005