JP2001056827A - 集積回路装置の設計方法 - Google Patents

集積回路装置の設計方法

Info

Publication number
JP2001056827A
JP2001056827A JP11231140A JP23114099A JP2001056827A JP 2001056827 A JP2001056827 A JP 2001056827A JP 11231140 A JP11231140 A JP 11231140A JP 23114099 A JP23114099 A JP 23114099A JP 2001056827 A JP2001056827 A JP 2001056827A
Authority
JP
Japan
Prior art keywords
integrated circuit
circuit device
bus
designing
elements
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.)
Pending
Application number
JP11231140A
Other languages
English (en)
Inventor
Miwaka Takahashi
美和夏 高橋
Toshiyuki Yokoyama
敏之 横山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP11231140A priority Critical patent/JP2001056827A/ja
Priority to US09/638,397 priority patent/US6671857B1/en
Publication of JP2001056827A publication Critical patent/JP2001056827A/ja
Priority to US10/642,187 priority patent/US20040054976A1/en
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 システムLSIなどの巨大な集積回路装置の
設計に適した設計の効率化とレイアウト面積の低減を実
現しうる設計方法を提供する。 【解決手段】 バスの単位時間当たりのデータ処理量
(動作・仕様レベルでは円柱の断面積,RTレベルでは
四角柱の断面積)を設定し、データベースから所望の機
能を有するコアを抜き出してこれを要素として選択し、
バスの接続面やバスから要素への接続部の設定などを行
なって、バスと各要素との接続関係を決定する。時間的
シミュレーションを行なって、処理時間や要素の形状を
明確にした後、性能解析を行なって、選択した各要素の
レイアウト面積,消費電力,処理速度などを評価する。
これを選択した要素やバスの断面積の全種類について繰
り返した後、最適解の決定を行なう。“単位時間当たり
のデータ処理量”をバス及び要素の断面積として、バス
と各要素との接続関係を設定する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、システムLSI等
の集積回路装置の設計方法に係り、特にバスと要素との
接続関係の最適化による設計の円滑化対策に関する。
【0002】
【従来の技術】従来より、集積回路装置の設計におい
て、例えば動作・仕様層,RT層というような階層化さ
れたモデルを用いて設計が行なわれている。
【0003】図24(a),(b)は、動作・仕様層及
びRT層における設計対象となるプロセスの状態を表す
ブロック図である。
【0004】図24(a)に示すように、動作・仕様レ
ベルの設計においては、プロセスP2の各要素M28
(例えばメモリ),C2(例えば制御回路),A2(例
えば演算器)が生成されるが、各要素同士の接続関係は
明確に現れておらず、ただ、各要素の処理順序言い換え
るとデータの流れのみが現れた状態となっている。
【0005】そして、図24(b)に示すように、RT
レベルの設計においては、各要素に対応するメモリ,制
御回路,演算器が生成されるとともに、これらを接続す
るバスが生成されて、プロセスP2はより具体化され
る。
【0006】そして、このような階層化された設計を行
なうことにより、大まかなシステムの動作・仕様から徐
々にRT層という具体的な構造を生成していくので、設
計の当初に目標位置から大きくはずれることを防止で
き、所望の機能を発揮しうるシステムを迅速に設計する
ことが可能になる。
【0007】
【発明が解決しようとする課題】ところが、上記従来の
集積回路装置の設計方法においては、動作・仕様レベル
の設計におけるバスの構造があまりにも不明瞭なこと
や、バスと各要素との接続関係をどのように構築するか
ということに適切な考慮が払われていなかった。
【0008】その結果、システムLSIのような回路数
がきわめて大きなシステムを構築する際に、複雑な要素
間の処理を迅速に処理できないことになり、設計の効率
が悪化するおそれがあった。
【0009】本発明の目的は、バスの構造に着目し、バ
スと要素との接続関係を動作・仕様レベルからRTレベ
ルにわたって統一的に設定する手段を講ずることによ
り、システムLSIのような巨大なシステムの設計を効
率よく設計しうる集積回路装置の設計方法を提供するこ
とにある。
【0010】
【課題を解決するための手段】本発明の集積回路装置の
設計方法は、バスと該バスに接続される複数の要素とを
有する集積回路装置の設計方法であって、データの処理
量を媒介として、バスの構造と上記要素の構造とが適合
するように、上記バスと要素との接続関係を生成しなが
らシステムの設計を行なう方法である。
【0011】この方法により、処理量というパラメータ
を媒介として、設計の上流側から下流側のレベルに亘っ
てバスと各要素との接続関係を統一的に設定することが
できる。
【0012】上記集積回路装置の設計方法において、動
作・仕様レベルの下流側の設計において、上記要素の形
状を単位時間当たりのデータ処理量が断面積に一致する
円柱で模擬し、上記バスの形状を単位時間当たりのデー
タ処理量が断面積に一致するバス・プレートで模擬し
て、バスと要素との接続構造を生成することにより、従
来不明瞭であった動作・仕様層におけるバスの構造をほ
ぼ具体化することが可能となった。
【0013】上記集積回路装置の設計方法において、上
記バス・プレートに付設され、上記要素の底面と一致し
た断面を有して要素に接続される要素・プレートを生成
することにより、バスと要素との接続を確実に行なうこ
とができる。
【0014】上記集積回路装置の設計方法において、上
記要素同士の底面積、又は上記要素・プレートの断面積
と上記要素の底面積とが互いに異なる場合には、要素の
底面積又は要素・プレートの断面積に等しい面積を有す
る下面と、要素の底面積に等しい面積を有する上面と、
上面−下面間を接続する円錐面とにより構成される処理
量変換錘をさらに生成することができる。
【0015】上記集積回路装置の設計方法において、動
作・仕様レベルの上流側の設計を行なった後、動作・仕
様の下流側の設計でバスの断面積を設定するステップ
(a)と、上記データベースのコアからデータを取りだ
して、これを要素として選択するステップ(b)と、上
記要素とバスとの接続関係を設定するステップ(c)
と、上記バスに接続された要素の時間的シミュレーショ
ンを行なって、要素を特定するためのパラメータを求め
るステップ(d)と、上記ステップ(d)において求め
られた要素のパラメータを用いて性能解析を行なうステ
ップ(e)と、上記ステップ(b)〜(e)を繰り返し
て、各要素の最適解を決定するステップ(f)とを含む
ことにより、上述のようなバスと各要素との接続関係を
利用して、一連の流れによって、動作・仕様レベルにお
けるシステムの設計を円滑に行なうことができる。
【0016】その場合、上記ステップ(b)において、
同じ機能を有する複数の要素がある時には、該複数の要
素に関する情報をデータベース内に格納することによ
り、この情報を利用した要素の共有化処理等が可能にな
る。
【0017】上記ステップ(d)において、同じ機能を
有する複数の要素をある共有要素に単一化するための処
理を行なうことにより、要素数を低減することができる
ので、アクセス数の低減による設計効率の向上やレイア
ウト面積の低減を図ることができる。
【0018】上記ステップ(d)において、上記共有化
のための処理は、上記複数の要素のうち断面積が最大の
ものを共有要素として決定することが好ましい。
【0019】上記ステップ(e)又は(f)において、
上記要素を上記共有要素で置換して用いる場合には、上
記共有要素の断面のうち置換される要素の断面からはみ
出る部分は使用しないことにより、消費電力の低減を図
ることができる。
【0020】また、上記集積回路装置の設計方法におい
て、RTレベルの設計において、上記要素の形状を単位
時間当たりのデータ処理量が断面積に、データ幅・周波
数が断面の各辺に一致する四角柱で模擬し、上記バスの
形状を単位時間当たりのデータ処理量が断面積に、デー
タ幅・周波数が断面の各辺に一致するバス・プレートで
模擬して、バスと要素との接続構造を生成することによ
り、具体化されるRTレベルの構造に対応した具体的な
バスの断面形状を設定することが可能になる。
【0021】このRTレベルの設計においても、上記バ
ス・プレートに付設され、上記要素の底面形状と一致し
た断面形状を有して要素に接続される要素・プレートを
生成することが好ましい。
【0022】上記RTレベルの設計においても、バスの
断面形状を設定するステップ(a)と、上記データベー
スのコアからデータを取りだして、これを要素として選
択するステップ(b)と、上記要素とバスとの接続関係
を設定するステップ(c)と、上記バスに接続された要
素の時間的シミュレーションを行なって、要素を特定す
るためのパラメータを求めるステップ(d)と、上記ス
テップ(d)において求められた要素のパラメータを用
いて性能解析を行なうステップ(e)と、上記ステップ
(b)〜(e)を繰り返して、各要素の最適解を決定す
るステップ(f)とを含むことにより、バスと各要素と
の接続関係を利用して、一連の流れによって、RTレベ
ルにおけるシステムの設計を円滑に行なうことができ
る。
【0023】上記ステップ(d)において、同じ機能を
有する複数の要素をある共有要素に単一化するための処
理を行なうことが好ましい。
【0024】上記ステップ(d)において、上記共有化
のための処理は、上記複数の要素のデータ幅の最大値,
周波数の最大値にそれぞれ一致するデータ幅及び周波数
を有するものを共有要素として決定することが好まし
い。
【0025】上記ステップ(d)において、上記ステッ
プ(e)又は(f)において、上記要素を上記共有要素
で置換して用いる場合には、上記共有要素の断面のうち
置換される要素の断面からはみ出る部分は使用しないこ
とにより消費電力の低減を図ることができる。
【0026】上記集積回路装置の設計方法において、同
じ機能を有する複数の要素で同時に動作しないものを上
記共有要素に単一化することにより、上述のように、設
計の効率化とレイアウト面積の低減とを図ることができ
る。
【0027】また、同じ機能を有する複数の要素で同時
に動作するものがある場合は、断面積を増大させること
により、上記各要素が同時に動作しないように変形した
ものを共有要素にすることにより、共有化処理をフレキ
シブルに行なうことができる。
【0028】
【発明の実施の形態】(発明の基本概念)まず、本発明
の基本的な概念について説明する。ここでは、集積回路
装置の設計において、データベースに格納されている要
素(コア)のデータを利用するための基本的な手法につ
いて説明する。図1(a)〜(c)は、本発明の集積回
路装置の設計において取り扱うハードウェア資源のイメ
ージを形状によって表現する図である。
【0029】図1(a)は、本実施形態では最上流側の
設計としている動作・使用レベル1の設計における要素
(コア)のイメージを表している。この最上流側のレベ
ルにおいては、“仕様”,“動作”のうち“仕様”の比
重が高いので、プロセスは要素を定量的な時間軸に沿っ
て処理していくというほど具体化されておらず、単に、
ある手順で各要素における処理を行なっていくという一
連の流れで捉えられている。そして、各要素は、ある体
積を持っているが形の定まらない球体のような物体とし
て表される。このとき、処理量はこの物体の体積に相当
するが、処理量を決定するためのパラメータが定まって
いない状態を考えてよい。したがって、「処理量」とい
う観点からみた場合には、動作・仕様レベル1の設計に
おける要素は球体のようなもので、ある必要な処理量を
満たすハードウェア資源をデータベース内から取り出し
たいときには、一定の体積又はそれ以上の体積を有する
ハードウェア資源(コア)をデータベースから取り出し
て、これを要素として利用することになる。
【0030】図1(b)は、本実施形態では中間段階の
設計としている動作・設計レベル2の設計における要素
のイメージを表している。この中間段階の設計において
は、“動作”,“仕様”のうち,定量的な時系列つまり
時間軸に沿って要素を処理していくという“動作”が占
める比重が高くなる。したがって、この中間段階の設計
においては、プロセスは、ある単位時間当たりの処理量
を時間軸に沿って処理していく機能を持った要素を順次
実行していくという動作で表現される。そこで、本実施
形態においては、要素を、ある底面積を持った柱状の物
体例えば円柱として表す。この円柱の底面積(横断面
積)が単位時間当たりのデータ処理量であり、円柱の軸
方向長さが時間を示し、両者を掛け合わせて得られる円
柱の体積が処理量を示す。図1(b)には、体積が同じ
で底面積と軸方向長さとが異なる,つまり形状が異なる
3種類の円柱が表されている。例えば、ある処理量を有
する要素が必要なときには、処理時間の制約の下で、あ
る体積又はそれ以上の体積を有する円柱状のハードウェ
ア資源(コア)をデータベースから取り出して、これを
要素として用いることになる。
【0031】図1(c)は、本実施形態では下流側の設
計としているRTレベルの設計における要素のイメージ
を表している。この下流側の設計においては、要素の具
体的なパラメータ,つまりデータ幅(bit)と周波数
(1/cycle)とが定まっているので、要素はデー
タ幅,周波数及び時間を軸とする3次元の座標系で表さ
れる。ここで、“cycle”は1つのクロック(又は
パルス)の周期に相当し、クロック系統によって1クロ
ックの周期は一定であるので、cycle数によって時
間を表すことができる。したがって、1/cycle
は、周波数(又は単位ビットの処理速度)を表すことに
なる。そして、要素は、データ幅,周波数を辺とする四
角形の底面積(横断面積)を有し、この底面積が単位時
間当たりのデータ処理量である。そして、四角柱の底面
積と軸方向長さとを掛け合わせた体積が処理量を表して
いる。したがって、RTレベルの設計で、ある処理量を
有する要素が必要なときには、処理時間の制約だけでな
く、データ幅や周波数の制約の下で、ある体積又はそれ
以上の体積を有する四角柱のハードウェア資源(コア)
をデータベースから取り出して、これを要素として用い
ることになる。
【0032】一方、設計に利用できるハードウェア資源
を探し出すには、処理量以外のパラメータとして性能情
報が最も重要であるが、この性能情報としては、集積回
路装置のレイアウト面積(A),トグル数(T)(信号
の遷移確率),消費電力(P)があり、P=T・A・V
2 ・Fの関係がある。
【0033】ここで、本発明の基本概念は、図1(a)
〜(c)に示されるようなハードウェア資源をデータベ
ースから取り出し、これを組み合わせて所望の集積回路
装置を設計する際に、処理量という共通のパラメータを
設定し、このパラメータに基づいてバスと各要素との接
続関係を設定しながら設計を進めることにある。
【0034】(第1の実施形態)本実施形態において
は、動作・仕様層の設計に本発明の概念を適用する形態
について説明する。動作・仕様層とする代わりに、“仕
様層”を最上流の層とし、“動作層”をその下流側の層
とする分け方もあるが、“仕様”と“動作”とは必ずし
も明確に切り分けることができない場合が多い。そこ
で、本実施形態においては、“動作・仕様層”を1つの
層として、“動作・仕様層”の中で、“仕様”の比重が
大きい段階を“動作・仕様レベル1”とし、“動作”の
比重が大きい段階を“動作・仕様レベル2”とする。以
下、“動作・仕様レベル1”と、“動作・仕様レベル
2”とにおける設計方法について説明する。
【0035】−設計手順の概略− まず、集積回路装置の設計における動作・仕様レベルの
設計の全体の流れについて説明する。図2は、集積回路
装置の動作・仕様レベルにおける設計の手順を示すフロ
ーチャートである。
【0036】まず、ステップST1で、動作・仕様レベ
ル1の設計を行なう。ここでは、要素の選択や、機能シ
ミュレーションなどを行なう。
【0037】次に、動作・仕様レベルに2の設計に入
る。まず、ステップST2で、バスの単位時間当たりの
データ処理量,つまり円柱の断面積を設定する。そし
て、ステップST3で、データベースから所望の機能を
有するコアを抜き出してこれを要素として選択する。次
に、ステップST4で、バスの接続面やバスから要素へ
の接続部の設定などを行なって、バスと各要素との接続
関係を決定する。これによって、シミュレーションが可
能になるので、ステップST5で、時間的シミュレーシ
ョンを行なう。この時間的シミュレーションによって、
各要素の処理時間が算出できる。また、処理時間が求ま
ると各要素を表現する円柱の形状が定まる。次に、ステ
ップST6で、性能解析を行なって、選択した各要素の
レイアウト面積,消費電力,処理速度などを評価する。
【0038】そして、ステップST7,ST8の判別処
理により、ステップST2〜ST6の処理を繰り返した
後、ステップST9で、最適解の決定を行なう。
【0039】ここで、バスの単位時間当たりの処理量つ
まり断面積の形状は、基本的には外部機器とのインター
フェース構造に応じて定まるべきである。つまり、外部
のシステムにどのくらいのデータ量を毎秒送るかは、必
ず外部システムの仕様(例えばTVなど)に基づいて定
まっているからである。そして、この仕様に基づいて、
外部システムからデータを取り込んだり、外部システム
にデータを転送したりしている。しかし、外部システム
との入出力とは無関係の内部の部分では、外部とのイン
ターフェースに拘束されることなく、自由にデータ幅な
どを変更することは可能である。例えば、外部システム
からデータ幅36bitでデータが入寮される場合に、
内部ではデータ幅を18bitに落としてもよい。その
結果、36bitでは2サイクルで終了していた処理が
4サイクル要することになるが、レイアウト面積は小さ
くなる。また、外部から36bitのデータ幅で入力さ
れていたデータを72bitのデータ幅で処理すると、
サイクル数が少なくなることから消費電力の低減が期待
できる。
【0040】以下、以上の各ステップの具体的な処理内
容について説明する。
【0041】−動作・仕様レベル1の設計− 図3は、動作・仕様レベル1において選択された要素の
関係を表す図である。動作・仕様レベル1の設計におい
て、プロセス(P2)は、要素(C2,M2,A2,B
2)によって構成される。例えば、M2はメモリであ
り、A2は演算器であり、C2は制御回路であり、B2
はバスである。そして、図3に示すように、B2は、各
要素M2,C2,A2を接続する経路として現れてい
る。これらの各要素について、データベースに登録され
ているハードウェア資源を探し出して、以下の手順で、
それらを各要素として選択することにより、動作・仕様
レベル1の設計を行なう。
【0042】そして、この選び出した要素M2,C2,
A2を用いて、機能シミュレーションを実行する。図4
は、動作・仕様レベル1における各要素の動作順序を示
す図である。上述のように、データベースには、要素と
なるハードウェア資源(コア)が格納されているので、
所望の要素の仕様に適合すると思われるコアC2,M
2,A2,B2)をデータベースから選択しこれを各要
素とする。そして、選択した各要素(C2,M2,A
2)をバスB2に接続して、各要素の機能及び接続関係
を確認するために、例えば図4に示すような作用順序に
よる機能シミュレーションを実行する。
【0043】−動作・仕様レベル2の設計− 図5は、動作・仕様レベル2におけるバスと各要素との
接続関係を立体的なイメージとして示す立体図である。
同図に示すように、バス・プレート,要素・プレートと
いう概念を設ける。バス・プレートとはバスの単位時間
当たりのデータ処理量を断面積の大きさで表したもの
で、各要素間を接続する伸縮自在のプレートと考えるこ
とができる。要素・プレートとは、バス・プレートから
分岐して要素に延びる小プレートであって、バス・プレ
ートと要素とを接続する接続面を有している。つまり、
システムの入出力で扱う単位時間当たりのデータ処理量
をデフォルト処理量として、デフォルト処理量を表す要
素・プレートを定義する。このような“単位時間当たり
データ処理量”(以下、バスの“接続面面積”又は円柱
などの“底面積”と呼ぶ)というパラメータを媒介とし
て、図5に示すように、バスと各要素との接続関係を構
築するのである。以上の処理は、図2におけるステップ
ST2〜ST4の処理である。
【0044】ただし、バス・プレートの接続面面積と、
要素である円柱の底面積とが一致しない場合もある。そ
こで、図6に示すように、円柱の底面積のとバスの接続
面面積とが互いに異なる場合には、要素・プレートと要
素とを円滑に接続するために、“処理量変換錘”を付加
する。この処理変換錘は、要素同士の間、及び要素−要
素・プレート間を互いに接続し、これによって接続され
るもの同士の単位時間当たりのデータ処理量を調整する
ものであって、具体的にはFIFO回路によって構成さ
れている。この場合、断面積又は底面積が小さいものか
ら断面積又は底面積が大きいものに変換する場合は、小
面積分のデータが大面積になるまでデータを蓄積してか
ら大面積に送り出すことができる。あるいは、断面積又
は底面積が大きいものから小さいものに変換する場合に
は、大面積分のデータを小面積相当に分割し転送する。
面積が小−大に変換する場合は、小面積部に接続する要
素あるいはバスよりも、大面積部に接続する要素あるい
はバスのほうが低速動作で処理可能であり、面積が大−
小に変換する場合は、大面積部に接続する要素あるいは
バスよりも、小面積部に接続する要素あるいはバスのほ
うが高速で処理可能である必要がある。
【0045】すなわち、円柱の底面積,バス・プレート
の接続面面積というデフォルト処理量を導入したが、バ
スと要素との接続がデフォルト処理量という単一の媒介
では円滑に行なえない事態も生じうる。そこで、円柱の
底面積,バス・プレートの接続面面積というデフォルト
処理量を基本としつつも、両者のデフォルト処理量が食
い違う場合には、処理量変換錘を付加することにより、
バスと要素との接続を柔軟に行なうことができるのであ
る。この処理量変換錘を付加することによる具体的な効
果は、次に説明する時間的シミュレーションの際に明ら
かになる。
【0046】−時間的シミュレーション− ここでは、図2に示すステップST5の処理について説
明する。
【0047】図7(a)は、処理量変換錘が必要でない
場合、つまり、バスの“単位時間当たりのデータ処理
量”に一致する各要素を選択した場合のプロセスP2a
の時間的シミュレーションを模擬的に示す図である。こ
の場合には、各要素を表す円柱が共通の底面積を持って
いるので、各円柱をそのまま直列に接続することができ
る。例えば、図4に示す機能シミュレーションに対応す
る要素に対する時間的シミュレーションは、図7(a)
に示すように、円柱で表される要素C2,M2,C2,
A2,M2を順に接続したものとして表現される。そし
て、各要素における処理に要する時間は、“処理量/円
柱の底面積”であることから、各要素C2,M2,C
2,A2,M2を表す円柱の軸方向長さを加算した値が
プロセスP2aのトータルの処理時間となる。
【0048】一方、図7(b)は、処理量変換錘が必要
な場合、つまり、バスの“単位時間当たりのデータ処理
量”に一致しない要素をも選択した場合のプロセスP2
bの時間的シミュレーションを模擬的に示す図である。
このようなケースとしては、ある必要な機能を持った要
素として利用できるハードウェア資源(コア)を探した
ときに、バス・プレートの接続面面積に一致する底面積
を有するコアが見つからなかった場合と、それに一致す
る底面積を有するコアはあるが、別のパラメータからよ
り有利なコアを選択したい場合とがある。この場合に
は、例えば演算器について底面積の小さなコアしか見つ
からなかったとすると、要素A2と要素C2との間、要
素A2と要素M2との間に、それぞれバス・プレート及
び要素・プレートを介して処理量変換錘を付加する必要
がある。例えば、図4に示す機能シミュレーションに対
応する要素に対する時間的シミュレーションは、図7
(b)に示すように、要素(円柱)C2,M2,C2,
A2,M2を順に接続したものに2つの処理量変換錘を
介在させたものとして表現される。そして、各要素(円
柱)C2,M2,C2,A2,M2の軸方向長さを加算
した値にさらに2つの処理量変換錘の軸方向長さをが加
算した値がトータルの処理時間となる。このとき、図7
(b)に示す要素A2の円柱は、図7(a)に示す要素
A2の円柱に比べて、処理量は同じでも、底面積が小さ
い分だけその円柱の軸方向長さが長い。その結果、プロ
セスP2bのトータルの処理時間は、要素A2(円柱)
の軸方向長さが長くなったことに加えて、処理量変換錘
の軸方向長さを付加した分だけ長くなる。
【0049】−性能解析− 次に、図2におけるステップST6の処理である性能解
析の内容について説明する。性能解析は、最適な要素を
選択する際の最も重要な判断基準となる指標を提供する
ものである。上述の“単位時間当たりのデータ処理量”
というデフォルト処理量は、バスに接続される要素とし
て利用できるハードウェア資源(コア)を探し出す際の
目安となるが、最も重要な性能が必要条件を満たしてい
なければ、所望の機能を発揮できる集積回路装置を設計
することができない。そこで、上述の処理によって選び
出された各要素を組み込んだシステムがどのような性能
を有するかを確認する性能解析が必要である。
【0050】図8(a)は、プロセスの性能を評価する
パラメータとして、例えば速度(cycle),(回
路)面積(unit),消費電力(mV)を選んだとし
た場合に、性能を3次元座標系によって表すことを示し
ている。ここで、速度は、上記時間的シミュレーション
によって算出された処理時間から求められる。面積は、
各要素として選びだされた各コアの占有面積と、バス・
プレート及び要素・プレートの占有面積と、処理量変換
錘の占有面積とを加算したものである。消費電力は、各
要素の消費電力を加算したものであるが、平均の消費電
力とピークの消費電力とがありいずれも重要なパラメー
タとなりうる。
【0051】図8(b),(c)は、図7(a),
(b)に示す時間的シミュレーションを行なったプロセ
スP2a,P2bについて性能解析を行なった結果を示
す図である。図8(b)に示すように、処理量変換錘を
必要としないプロセスP2aを選択した場合の速度は4
(cycle)、(回路)面積は140(unit)、
消費電力は1867(mW)である。一方、図8(c)
に示すように、処理量変換錘を必要とするプロセスP2
bを選択した場合の速度は5(cycle)、(回路)
面積は100(unit)、消費電力は800(mW)
である。つまり、この結果だけからみると、プロセスP
2bのほうが有利であることになる。
【0052】一方、データベースには、各要素の性能情
報が格納されている。例えば、各要素の性能情報に、性
能を評価するパラメータとして、レイアウト面積A,ト
グル数(信号の遷移確率)T,消費電力Pに関する記述
が含まれている場合、これらの各パラメータの間には、
以下の関係式(1) P=T・q・A・V2 ・F (1) が成立する。ただし、qは定数、Fは周波数,Vは電圧
である。
【0053】また、処理量をMとすると、レイアウト面
積A,トグル数Tについては、それぞれ下記の関数関係
式(2),(3) A=α・M+β (2) T=γ・M+Θ (3) がそれぞれデータベースに登録されている。ただし、
α,β,γ,Θはいずれも定数である。つまり、レイア
ウト面積A,トグル数T共に処理量Mの一次関数とな
る。
【0054】図9は、面積A,トグル数Tの処理量Mに
対する関数関係を示す図である。データベースには、こ
れらの関数関係式(1),(2),(3)が性能情報と
して登録されている。
【0055】図10は、これらの関数関係式から、レイ
アウト面積A,トグル数T,消費電力Pを求めた値を示
す。同図に示すように、同じ演算器についての要素C2
を用いる場合でも、処理量Mが多くなると、式(2),
(3)からレイアウト面積A,トグル数Tが増大するの
で、式(1)から消費電力が増大する。このように、設
計しようとするプロセスP2,P3に用いる各要素C
2,A2,M2,C3,M3について、性能を評価する
ために必要なパラメータが、データベースに登録された
情報やこれを利用した計算から求まることになる。
【0056】そして、これらの各要素の性能解析から、
その集積回路装置でもっとも重視されるパラメータなど
を考慮して、動作・仕様レベル2における最適解が決定
されることになる。
【0057】なお、バス構造を設定する際の“単位時間
当たりのデータ処理量”は、一応当初適正な値に設定す
るが、何種類かについてもシミュレーションや性能解析
を行ないたいときがあるので、図2に示すステップST
8の判断を行なってから、最適解を決定する。
【0058】−動作・仕様最適化設計− 次に、上述の流れに沿った設計のなかで、動作・仕様層
における設計の最適化を図るための処理の例について説
明する。
【0059】図11(a)〜(c)は、複数のプロセス
P2,P3について、すでに説明した設計手順を示す図
である。図11(a)〜(c)には、バスは表示されて
いないが、すでに説明したように、プロセスP2におけ
る各要素(C2,M2,A21)間を接続するバスB2
や、プロセスP3における各要素(C3,M3,A2
2)間を接続するバスB3が存在していることはいうま
でもない。
【0060】まず、動作・仕様レベル1の設計の最初の
段階において、図11(a)に示すように、プロセスP
2に必要な要素(C2,M2,A21,B2)と、プロ
セスP3に必要な要素(C3,M3,A22,B3)と
を選び出す。次に、図11(b)に示すように、機能シ
ミュレーションを行なって、各要素の動作順序を設定す
る。次に、バス・プレート,要素・プレートなどを作成
し、これを媒介として円柱状の要素をバスに接続してか
ら、図11(c)に示すように、時間的シミュレーショ
ンを行なう。なお、図11(c)は、時間的シミュレー
ションの際の各要素の接続関係を例示するにすぎず、
“単位時間当たりのデータ処理量”というデフォルト処
理量は、ここには定量的に表現されていない。
【0061】そして、この時間的シミュレーションにお
いて、複数のプロセスP2,P3間において、同一機能
を有する要素があれば、その機能と共有要素を管理する
共有情報テーブルを作成する。図12は、共有情報テー
ブルの一例を示す図である。同図に示すように、同一の
機能A2f を満たす要素A21,A22が存在する場合
には、その機能A2f と要素A21,A22とを、デー
タベース内の共有情報テーブルに登録しておく。
【0062】図13は、共有リソースを使用する場合の
具体的な時間的シミュレーションの方法を示す図であ
る。同図に示すように、プロセスP2cとプロセスP3
aとについて、時間的シミュレーションを行なう際に
は、共有要素である要素A21,A22が時間的に重な
らないように、単位時間当たりの処理量(円柱の底面
積)の最適化を行った結果を示す図である。
【0063】次に、図14(a)〜(d)は、複数のプ
ロセスP2,P3について最適解を選択するための方法
を示す図である。
【0064】まず、共有化処理として、プロセスP2の
要素A21の底面積(A21−T1と、プロセスP3の
要素A22の底面積(A22−T2)とを比較して、大
きい方の底面積(この例では、A22−T2)を有する
要素A22を共有資源とする。
【0065】そこで、プロセスP2を変形しなければな
らないが、その方法としては、例えば第1の方法と第2
の方法とがある。
【0066】第1の方法は、図14(b)に示すよう
に、要素A21の処理量を保持しつつ円柱の底面積をA
22−T2に拡大したプロセスP2dを最適解として選
択する方法である。このとき、処理量変換錘を付加する
必要があるが、要素A21の軸方向長さを短縮すること
ができる。第2の方法は、要素A22の底面積A22−
T2で表される単位時間当たりのデータ処理量のうち不
要な部分を削除して、底面積A21−T1を有する要素
A21を有するプロセスP2eを最適解として選択する
方法である。このときには、各要素の底面積がバスの断
面積に一致しているので、処理量変換錘は不要である。
そして、プロセスP2eの動作時には、共有要素として
利用される要素A22の底面積A22−T2のうち,不
必要な部分の動作が停止されることになる。
【0067】一方、プロセスP3を、図14(d)に示
すように、P3aに変形する。つまり、要素A22をプ
ロセスP2と共有するように、プロセスP3aを選択す
る。この例では、要素A22の円柱の形状は結果的に変
形しなくてもよい。
【0068】その後、上述の性能解析を行なってから、
最適解を決定する。
【0069】本実施形態によると、共有化を目的とした
設計を効率よく行なうことができる。また、資源を共有
化することによって面積の削減が可能になり、面積削減
に伴う低電圧化も望める。また、下流側の設計を行なう
際に、動作・仕様レベル2で選択された要素がさらに具
体化されていくつかの要素に分岐することになるが、そ
の分岐する組合せの数が大幅に少なくなるので、設計の
効率化を図ることができる。
【0070】(第2の実施形態)次に、集積回路装置の
設計におけるRTレベルの設計に関する第2の実施形態
について説明する。
【0071】図15は、集積回路装置のRTレベルの設
計の手順を示すフローチャートである。
【0072】まず、ステップST11で、バスの単位時
間当たりのデータ処理量,つまり四角柱の断面積を設定
する。そして、ステップST12で、データベースから
所望の機能を有するコアを抜き出してこれを要素として
選択する。次に、ステップST13で、バスの接続面や
バスから要素への接続部の設定などを行なって、バスと
各要素との接続関係を決定する。これによって、シミュ
レーションが可能になるので、ステップST14で、時
間的シミュレーションを行なう。この時間的シミュレー
ションによって、各要素の処理時間が算出できる。ま
た、処理時間が求まると各要素を表現する四角柱の形状
が定まる。次に、ステップST15で、性能解析を行な
って、選択した各要素のレイアウト面積,消費電力,処
理速度などを評価する。
【0073】そして、ステップST16,ST17の判
別処理により、ステップST11〜ST15の処理を繰
り返した後、ステップST18で、最適解の決定を行な
う。
【0074】ここで、バスの単位時間当たりの処理量つ
まり断面積の形状は、基本的には外部機器とのインター
フェース構造に応じて定まるべきであるである点は、す
でに第1の実施形態において(図2の説明において)説
明したとおりである。したがって、外部システムとの入
出力とは無関係の内部の部分では、外部とのインターフ
ェースに拘束されることなく、自由にデータ幅などを変
更することが可能であることも第1の実施形態と同様で
ある。
【0075】そこで、ステップST17の判断で、単位
時間当たりの処理量を所望の種類だけ変更して、時間的
シミュレーションや性能解析を行なう。
【0076】また、最適解の決定においては、レイアウ
ト面積,消費電力,処理時間等を総合的に判断すること
により行なうのが一般的である。その場合、特定のパラ
メータに着目して、そのパラメータについての要求を満
足するものだけを抜き出してから、他のパラメータがも
っとも有利になる要素の組合せを最適解として決定する
方法がある。また、レイアウト面積,消費電力,処理時
間等を主パラメータとし、この主パラメータに影響を与
える副パラメータをさらに抜き出して、まず、各主パラ
メータを最適化する副パラメータを有する要素群を選ん
でから、さらに、このようにした選ばれた主パラメータ
についての最適解を求める方法も採ることができる。
【0077】以下、以上の各ステップの具体的な処理内
容について説明する。
【0078】−RTレベルの要素の形状− 図16(a)〜(c)は、動作・仕様レベル2の設計か
らRTレベルの設計に移行する際の要素の変化を説明す
るための図である。図16(a)は、すでに説明した動
作・仕様レベル2における要素のイメージを表す図であ
る。この段階では、要素は、“単位時間当たりのデータ
処理量”を底面積(断面積)とし軸方向を時間とする円
柱として表現することができた。図16(b)は、RT
レベルにおける要素のイメージを、互いに形状の異なる
3通りの例に分けて示す図である。図16(b)に示す
ように、RTレベルにおいては、要素が円柱に代わって
四角柱で表される。すなわち、RTレベルにおいても、
具体的な時系列に沿った処理を行なう機能を要素として
いるので、“単位時間当たりのデータ処理量”を底面積
とする立体が要素となることに変わりはないが、“単位
時間のデータ処理量”を具体的に示すパラメータ(デー
タ幅,周波数)が現れるからである。例えば、図16
(c)に示すように、同じ面積4に対して、これを満足
するデータ幅と周波数との組合せは3通りある。その結
果、要素は、データ幅(bit)及び周波数(1/cy
cle)を辺とする四角形で表される底面を有する四角
柱として表現される。
【0079】−バスと要素との接続関係− 図17(a)〜(c)は、それぞれ順に、RTレベルに
おけるバスと要素との接続イメージを示す上面図,斜視
図,側面図である。
【0080】RTレベルでは、データ幅と周波数とが定
まっているので、バス・プレートは断面の縦寸法がデー
タ幅で横寸法が周波数に相当する平板として表現するこ
とができる。そして、バス・プレートと各要素とを接続
する部分として、平板状の要素・プレートが設けられて
いる。このようなバス構造とすることで、RTレベルに
おける設計を円滑に行なうことが可能になる。
【0081】−要素の最適解の決定− 図18(a),(b)及び図19(a),(b)は、R
Tレベルにおける要素の性能を評価する手順を示す図で
ある。動作・仕様レベル2におけるシミュレーションや
最適解の決定のための処理によって、選択されている要
素の“単位時間当たりのデータ処理量(円柱の底面積)
と処理時間(円柱の軸方向長さ)とはすでに決定されて
いる。一方、図18(a)及び図19(a)に示すよう
に、RTレベルの設計においては、データ幅と処理速度
(周波数)という底面積を決定するための組合せが何通
りか存在しており、処理速度(周波数)とデータ幅とを
座標軸とする二次元座標において、各要素はその組合せ
の数だけ点として存在している。図18(a),図19
(a)には、例として、各要素が大,中,小の3つの点
で示されているが、図18(a)と図19(a)とにお
ける大,中,小の点が互いに対応しているわけではな
い。
【0082】そこで、これらの要素のうちどの要素を最
適解として選択するかを判断するために、要素の性能を
判断する指標を、例えばレイアウト面積と消費電力とす
る。まず、図18(b)に示すように、3つの要素につ
いてレイアウト面積を性能テーブルから求める。この例
では、3つの点のうち小,中,大の順にレイアウト面積
が小さい。次に、図19(b)に示すように、消費電力
についても同様に、3つの要素について性能テーブルか
ら消費電力を求める。そして、レイアウト面積と消費電
力とのトレードオフから要素の最適解を決定する。
【0083】−RTレベルにおける最適化設計1− 次に、RTレベルにおける複数の要素がある場合に、こ
れを共通の要素で置き換える最適化設計について説明す
る。
【0084】図20(a),(b)に示すように、動作
・仕様レベル2で選択された要素A21−T1に対し
て、底面積は同じでデータ幅,周波数が相異なるRTレ
ベルの要素A21−T1aと、要素A21−T1b(T
は面積を示す)とが選択されたとする。そして、各要素
A21−T1a,A21−T1bが同時刻に動作しない
ものとする。このとき、図20(c)に示すように、要
素A21−T1aの周波数を要素A21−T1bの周波
数に等しくする処理を行なう一方、要素A21−T1b
のデータ幅を要素A21−T1aのデータ幅に等しくす
る処理を行なう。その結果、図20(d)に示すよう
に、周波数,データ幅が共に等しい共有の要素A23−
T1が生成される。そこで、この共通の要素A23−T
1によって各要素A21−T1a,A21−T1bを置
換できるか否かを性能テーブルから求めたレイアウト面
積,消費電力に基づいて検討する。
【0085】その結果、各要素A21−T1a,A21
−T1bを共通の要素A23−T1によって置き換える
ことができると判断すれば、これらを共有化しておく。
この共有化によって、レイアウト面積の削減が可能にな
り、面積削減に伴い電力の削減も可能になる。
【0086】図21(a),(b)は、共通の要素A2
3−T1によって各要素A21−T1a,A21−T1
bを置換する前の動作と、共通の要素A23−T1によ
って各要素A21−T1a,A21−T1bを置換した
ときの動作とをそれぞれ示す図である。図21(a)に
示すように、各要素A21−T1a,A21−T1bが
同時刻に動作しない場合には、図21(b)に示すよう
に、各要素A21−T1a,A21−T1bを共通の要
素A23−T1によって置換することができる。しか
し、図21(b)に示すように、置換された要素A23
−T1は、要素A21−T1aや要素A21−T1bに
対して、それぞれ本来使用しない部分がある。そこで、
不要な部分の作動は停止させる。このことによって、消
費電力を削減することができる。
【0087】−RTレベルにおける最適化設計2− ここでは、RTレベルの設計において、要素の共有化を
より柔軟に行なうための処理について説明する。
【0088】図22(a)〜(d)は、3つの要素につ
いて変形を伴った共有化をおこなす処理を説明するため
の図である。図22(a)は、要素M11−T1の動作
の時間変化を示し、図22(b)は要素M12−T1の
動作の時間変化を示し、図22(c)は要素M12−T
2の動作の時間変化を示す。ここで、要素M11−T1
と要素M12−T1とは、同じ断面積を有している。
【0089】まず、同じ機能を有する要素に着目して、
共有できる要素を検索する。原則としては、同時刻に作
動していないものが共有化に適しているが、メモリのよ
うに同じ時刻に作動している複数の要素でも共有化が可
能なものもある。図22(a)〜(c)に示す場合に
は、メモリとして機能する要素M11−T1,M12−
T1,M12−T2が共有候補として探し出された。
【0090】次に、共有候補となった要素の中で、時間
当たりのデータ処理量が最大の要素(この例では、要素
M12−T2)を共有要素とする。
【0091】次に、図22(d)に示すように、底面積
が最大の要素M12−T2によって要素M11−T1,
M12−T1を置換する。
【0092】このとき、要素M11−T1と要素M12
−T1とは同時刻に動作する場合があるので、同時動作
を回避することが可能かどうかを検討する。そして、時
間軸を移動することができるのであれば、図22(d)
に示すように、要素M11−T1,M12−T1をいず
れも共通の要素M12−T2で置換して、この共通の要
素M12−T2の動作のうち,要素M12−T1に相当
する動作を先に行なわせ、要素M11−T1に相当する
動作をその後に行なわせる。あるいは、動作を行なわせ
る順序を逆にする。
【0093】以上のように、要素の変形を伴った共有化
によって、処理量(四角柱の体積)を増やすことなく要
素の共有化を図ることが可能になるとともに、同時刻に
動作している要素の共有化も可能になる。
【0094】−システムの統合− 次に、以上のような各種の共有化処理を利用して、複数
のシステムを統合する場合の処理例について説明する。
【0095】図23は、すでに設計されたシステムS
1,S2とがある場合に、これらを統合した新たなシス
テムS3を生成する場合の手順を説明するための図であ
る。ここで、このような統合をしたい例としては、例え
ばシステムS1が読み出し専用のシステムであり、シス
テムS2が書き込み専用のシステムである場合に、読み
出し,書き込みの双方の動作を行なうシステムS3を設
計したい場合がある。
【0096】図23に示す例においては、システムS1
は、要素C1(制御回路),P1(演算器),M1a及
びM1b(いずれもメモリ)により構成されている。シ
ステムS2は、要素C2(制御回路),P2(演算
器),M2(メモリ)により構成されている。ここで、
2つのシステムS1,S2の各要素のうちで同じ機能を
有しているもので共有化できないものがないかを調べて
みると、メモリと演算器とが共有できる可能性があるこ
とがわかる。
【0097】そこで、メモリ機能という共通の機能を有
する要素M1a,M1b,M2を同じ時間軸の上に、演
算機能という共通の機能を有する要素P1,P2を同じ
時間軸に並べてみて、上述のような、最大の断面積を有
する要素への置き換えや、変形などを行ない、共有化を
図る。
【0098】その結果、制御回路として要素C1,C2
を有し、メモリとして2つの要素M1b,M2を有し、
演算器としてP2のみを有する読み書きが可能なシステ
ムS3が得られることになる。
【0099】以上の説明においては、データベースのコ
アの構造には触れていないが、本発明は、データベース
内の各コアのデータが例えば仕様層,動作層,RT層な
どに階層化された状態で格納されているコア(VCクラ
スタとも呼ばれる)についても適用することができる。
【0100】
【発明の効果】本発明の集積回路装置の設計方法によれ
ば、データの処理量を媒介として、バスの構造と要素の
構造とが適合するように、バスと要素との接続関係を生
成しながらシステムの設計を行なうようにしたので、設
計の上流側から下流側のレベルに亘ってバスと各要素と
の接続関係を統一的に設定することができ、レイアウト
面積の低減や設計効率の向上を図ることができる。
【図面の簡単な説明】
【図1】(a)〜(c)は、本発明の集積回路装置の設
計において取り扱うハードウェア資源のイメージを形状
によって表現する図である。
【図2】第1の実施形態における集積回路装置の動作・
仕様レベルにおける設計の手順を示すフローチャート図
である。
【図3】第1の実施形態の集積回路装置の動作・仕様レ
ベル1の設計において選択された要素の関係を表す図で
ある。
【図4】第1の実施形態の集積回路装置の動作・仕様レ
ベル1の設計における各要素の動作順序を示す図であ
る。
【図5】第1の実施形態の集積回路装置の動作・仕様レ
ベル2の設計におけるバスと各要素との接続関係を立体
的なイメージとして示す立体図である。
【図6】第1の実施形態の集積回路装置の動作・仕様レ
ベル2の設計における要素・プレートと要素とを円滑に
接続するための処理量変換錘を付加した状態を示す図で
ある。
【図7】(a),(b)は、処理量変換錘が必要でない
場合と必要な場合とにおけるプロセスの時間的シミュレ
ーションを模擬的に示す図である。
【図8】(a),(b),(c)は、性能を3次元座標
系によって表しながら、時間的シミュレーションを行な
ったプロセスについて性能解析を行なった結果を示す図
である。
【図9】性能解析における面積A,トグル数Tの処理量
Mに対する関数関係を示す図である。
【図10】性能解析において、関数関係式からレイアウ
ト面積A,トグル数T,消費電力Pを求めた値を示す図
である。
【図11】(a)〜(c)は、動作・仕様最適化設計に
おける複数のプロセスについて、設計手順を示す図であ
る。
【図12】動作・仕様最適化設計における共有情報テー
ブルの一例を示す図である。
【図13】動作・仕様最適化設計における共有リソース
を使用する場合の具体的な時間的シミュレーションの方
法を示す図である。
【図14】(a)〜(d)は、動作・仕様最適化設計に
おける複数のプロセスについて最適解を選択するための
方法を示す図である。
【図15】第2の実施形態における集積回路装置のRT
レベルの設計の手順を示すフローチャートである。
【図16】(a)〜(c)は、動作・仕様レベル2の設
計からRTレベルの設計に移行する際の要素の変化を説
明するための図である。
【図17】(a)〜(c)は、それぞれ順に、RTレベ
ルにおけるバスと要素との接続イメージを示す上面図,
斜視図,側面図である。
【図18】(a),(b)は、RTレベルにおける要素
の性能であるレイアウト面積について評価する手順を示
す図である。
【図19】(a),(b)は、RTレベルにおける要素
の性能である消費電力について評価する手順を示す図で
ある。
【図20】RTレベルにおける要素の共有化のために各
要素の断面積の最大化処理を示す図である。
【図21】(a),(b)は、共通の要素によって各要
素を置換する前の動作と、共通の要素によって各要素を
置換したときの動作とをそれぞれ示す図である。
【図22】(a)〜(d)は、3つの要素について変形
を伴った共有化をおこなす処理を説明するための図であ
る。
【図23】すでに設計されたシステムを統合した新たな
システムを生成する場合の手順を説明するための図であ
る。
【図24】(a),(b)は、動作・仕様層及びRT層
における設計対象となるプロセスの状態を表すブロック
図である。
【符号の説明】 A 演算器 M メモリ C 制御回路 P プロセス

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】 バスと該バスに接続される複数の要素と
    を有する集積回路装置の設計方法であって、 データの処理量を媒介として、バスの構造と上記要素の
    構造とが適合するように、上記バスと要素との接続関係
    を生成しながらシステムの設計を行なうことを特徴とす
    る集積回路装置の設計方法。
  2. 【請求項2】 請求項1記載の集積回路装置の設計方法
    において、 動作・仕様レベルの下流側の設計において、上記要素の
    形状を単位時間当たりのデータ処理量が断面積に一致す
    る円柱で模擬し、上記バスの形状を単位時間当たりのデ
    ータ処理量が断面積に一致するバス・プレートで模擬し
    て、バスと要素との接続構造を生成することを特徴とす
    る集積回路装置の設計方法。
  3. 【請求項3】 請求項2記載の集積回路装置の設計方法
    において、 上記バス・プレートに付設され、上記要素の底面と一致
    した断面を有して要素に接続される要素・プレートを生
    成することを特徴とする集積回路装置の設計方法。
  4. 【請求項4】 請求項2又は3記載の集積回路装置の設
    計方法において、 上記要素同士の底面積、又は上記要素・プレートの断面
    積と上記要素の底面積とが互いに異なる場合には、要素
    の底面積又は要素・プレートの断面積に等しい面積を有
    する下面と、要素の底面積に等しい面積を有する上面
    と、上面−下面間を接続する円錐面とにより構成される
    処理量変換錘をさらに生成することを特徴とする集積回
    路装置の設計方法。
  5. 【請求項5】 請求項2〜4のうちいずれか1つに記載
    の集積回路装置の設計方法において、 動作・仕様レベルの上流側の設計を行なった後、動作・
    仕様の下流側の設計でバスの断面積を設定するステップ
    (a)と、 上記データベースのコアからデータを取りだして、これ
    を要素として選択するステップ(b)と、 上記要素とバスとの接続関係を設定するステップ(c)
    と、 上記バスに接続された要素の時間的シミュレーションを
    行なって、要素を特定するためのパラメータを求めるス
    テップ(d)と、 上記ステップ(d)において求められた要素のパラメー
    タを用いて性能解析を行なうステップ(e)と、 上記ステップ(b)〜(e)を繰り返して、各要素の最
    適解を決定するステップ(f)とを含むことを特徴とす
    る集積回路装置の設計方法。
  6. 【請求項6】 請求項5記載の集積回路装置の設計方法
    において、 上記ステップ(b)において、同じ機能を有する複数の
    要素がある時には、該複数の要素に関する情報をデータ
    ベース内に格納することを特徴とする集積回路装置の設
    計方法。
  7. 【請求項7】 請求項5又は6記載の集積回路装置の設
    計方法において、 上記ステップ(d)において、同じ機能を有する複数の
    要素をある共有要素に単一化するための処理を行なうこ
    とを特徴とする集積回路装置の設計方法。
  8. 【請求項8】 請求項7記載の集積回路装置の設計方法
    において、 上記ステップ(d)において、上記共有化のための処理
    は、上記複数の要素のうち断面積が最大のものを共有要
    素として決定することを特徴とする集積回路装置の設計
    方法。
  9. 【請求項9】 請求項8記載の集積回路装置の設計方法
    において、 上記ステップ(e)又は(f)において、上記要素を上
    記共有要素で置換して用いる場合には、上記共有要素の
    断面のうち,置換される要素の断面からはみ出る部分は
    使用しないことを特徴とする集積回路装置の設計方法。
  10. 【請求項10】 請求項1記載の集積回路装置の設計方
    法において、 RTレベルの設計において、上記要素の形状を単位時間
    当たりのデータ処理量が断面積に、データ幅・周波数が
    断面の各辺に一致する四角柱で模擬し、上記バスの形状
    を単位時間当たりのデータ処理量が断面積に、データ幅
    ・周波数が断面の各辺に一致するバス・プレートで模擬
    して、バスと要素との接続構造を生成することを特徴と
    する集積回路装置の設計方法。
  11. 【請求項11】 請求項10記載の集積回路装置の設計
    方法において、 上記バス・プレートに付設され、上記要素の底面形状と
    一致した断面形状を有して要素に接続される要素・プレ
    ートを生成することを特徴とする集積回路装置の設計方
    法。
  12. 【請求項12】 請求項10又は11記載の集積回路装
    置の設計方法において、 バスの断面形状を設定するステップ(a)と、 上記データベースのコアからデータを取りだして、これ
    を要素として選択するステップ(b)と、 上記要素とバスとの接続関係を設定するステップ(c)
    と、 上記バスに接続された要素の時間的シミュレーションを
    行なって、要素を特定するためのパラメータを求めるス
    テップ(d)と、 上記ステップ(d)において求められた要素のパラメー
    タを用いて性能解析を行なうステップ(e)と、 上記ステップ(b)〜(e)を繰り返して、各要素の最
    適解を決定するステップ(f)とを含むことを特徴とす
    る集積回路装置の設計方法。
  13. 【請求項13】 請求項12記載の集積回路装置の設計
    方法において、 上記ステップ(d)において、同じ機能を有する複数の
    要素をある共有要素に単一化するための処理を行なうこ
    とを特徴とする集積回路装置の設計方法。
  14. 【請求項14】 請求項13記載の集積回路装置の設計
    方法において、 上記ステップ(d)において、上記共有化のための処理
    は、上記複数の要素のデータ幅の最大値,周波数の最大
    値にそれぞれ一致するデータ幅及び周波数を有するもの
    を共有要素として決定することを特徴とする集積回路装
    置の設計方法。
  15. 【請求項15】 請求項14記載の集積回路装置の設計
    方法において、 上記ステップ(d)において、上記ステップ(e)又は
    (f)において、上記要素を上記共有要素で置換して用
    いる場合には、上記共有要素の断面のうち置換される要
    素の断面からはみ出る部分は使用しないことを特徴とす
    る集積回路装置の設計方法。
  16. 【請求項16】 請求項7又は13記載の集積回路装置
    の設計方法において、 同じ機能を有する複数の要素で同時に動作しないものを
    上記共有要素に単一化することを特徴とする集積回路装
    置の設計方法。
  17. 【請求項17】 請求項7又は13記載の集積回路装置
    の設計方法において、 同じ機能を有する複数の要素で同時に動作するものがあ
    る場合は、断面積を増大させることにより、上記各要素
    が同時に動作しないように変形したものを共有要素にす
    ることを特徴とする集積回路装置の設計方法。
JP11231140A 1999-08-18 1999-08-18 集積回路装置の設計方法 Pending JP2001056827A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP11231140A JP2001056827A (ja) 1999-08-18 1999-08-18 集積回路装置の設計方法
US09/638,397 US6671857B1 (en) 1999-08-18 2000-08-15 Method of designing integrated circuit device using common parameter at different design levels, and database thereof
US10/642,187 US20040054976A1 (en) 1999-08-18 2003-08-18 Method of designing integrated circuit device and database

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11231140A JP2001056827A (ja) 1999-08-18 1999-08-18 集積回路装置の設計方法

Publications (1)

Publication Number Publication Date
JP2001056827A true JP2001056827A (ja) 2001-02-27

Family

ID=16918922

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11231140A Pending JP2001056827A (ja) 1999-08-18 1999-08-18 集積回路装置の設計方法

Country Status (1)

Country Link
JP (1) JP2001056827A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8095353B2 (en) 2007-12-03 2012-01-10 Fujitsu Limited Power index computing apparatus, method of computing power index, and computer product
JP2012164316A (ja) * 2011-02-08 2012-08-30 Maxeler Technologies Ltd ハードウェアストリームプロセッサデザインを生成するための方法、装置およびソフトウェアコード
JP2014067196A (ja) * 2012-09-25 2014-04-17 Fujitsu Ltd 電力見積支援プログラム、電力見積支援装置および電力見積支援方法
WO2022230106A1 (ja) * 2021-04-28 2022-11-03 日本電信電話株式会社 計算リソース制御装置および制御方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8095353B2 (en) 2007-12-03 2012-01-10 Fujitsu Limited Power index computing apparatus, method of computing power index, and computer product
JP2012164316A (ja) * 2011-02-08 2012-08-30 Maxeler Technologies Ltd ハードウェアストリームプロセッサデザインを生成するための方法、装置およびソフトウェアコード
JP2014067196A (ja) * 2012-09-25 2014-04-17 Fujitsu Ltd 電力見積支援プログラム、電力見積支援装置および電力見積支援方法
WO2022230106A1 (ja) * 2021-04-28 2022-11-03 日本電信電話株式会社 計算リソース制御装置および制御方法

Similar Documents

Publication Publication Date Title
JP7413580B2 (ja) ニューラルネットワークを使用した集積回路フロアプランの生成
US7324363B2 (en) SPICE optimized for arrays
US6304790B1 (en) System design/evaluation CAD system and program storage medium
US7930673B2 (en) Method for automatic clock gating to save power
US6145117A (en) Creating optimized physical implementations from high-level descriptions of electronic design using placement based information
JP2002123563A (ja) コンパイル方法および合成装置ならびに記録媒体
US11055463B1 (en) Systems and methods for gate array with partial common inputs
JP6503072B2 (ja) 半導体システムおよび計算方法
CN116384312B (zh) 一种基于并行异构计算的电路良率分析方法
EP1267287A2 (en) High-level synthesis apparatus and method, method for producing logic circuit using the high-level synthesis method, and recording medium
US6671857B1 (en) Method of designing integrated circuit device using common parameter at different design levels, and database thereof
US8711160B1 (en) System and method for efficient resource management of a signal flow programmed digital signal processor code
CN112257368B (zh) 时钟布局方法、装置、eda工具及计算机可读存储介质
US9047434B2 (en) Clustering for processing of circuit design data
Ziegler et al. POWER8 design methodology innovations for improving productivity and reducing power
JP2001056827A (ja) 集積回路装置の設計方法
Du et al. FPGA-based computational fluid dynamics simulation architecture via high-level synthesis design method
Fanni et al. Hardware design methodology using lightweight dataflow and its integration with low power techniques
Frey et al. SEAMS: simulation environment for VHDL-AMS
CN115577662A (zh) 一种基于多fanout逻辑的时序器件资源优化方法
CN112131813B (zh) 基于端口交换技术的用于提升布线速度的fpga布线方法
Lin et al. An incremental placement flow for advanced FPGAs with timing awareness
Hsiung et al. Perfecto: A SystemC-based performance evaluation framework for dynamically partially reconfigurable systems
Oelmann et al. Automatic FSM Synthesis for Low‐power Mixed Synchronous/Asynchronous Implementation
US20120226890A1 (en) Accelerator and data processing method