JP3045286B2 - 回路設計方法および装置、情報記憶媒体 - Google Patents

回路設計方法および装置、情報記憶媒体

Info

Publication number
JP3045286B2
JP3045286B2 JP9351192A JP35119297A JP3045286B2 JP 3045286 B2 JP3045286 B2 JP 3045286B2 JP 9351192 A JP9351192 A JP 9351192A JP 35119297 A JP35119297 A JP 35119297A JP 3045286 B2 JP3045286 B2 JP 3045286B2
Authority
JP
Japan
Prior art keywords
data
graph
element data
control description
array
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
Application number
JP9351192A
Other languages
English (en)
Other versions
JPH11184895A (ja
Inventor
敦資 中村
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP9351192A priority Critical patent/JP3045286B2/ja
Publication of JPH11184895A publication Critical patent/JPH11184895A/ja
Application granted granted Critical
Publication of JP3045286B2 publication Critical patent/JP3045286B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、集積回路装置を設
計する回路設計方法および装置と、この回路設計装置の
回路設計方法をコンピュータに実行させるためのプログ
ラムが格納されている情報記憶媒体とに関する。
【0002】
【従来の技術】現在、各種の電子機器で集積回路装置が
利用されているが、このような集積回路装置は、集積度
が向上して構造が複雑化する一方であるため、集積回路
装置の設計を機械化することが要望されている。このよ
うに機械化された回路設計方法を実現する回路設計装置
としても各種の提案があり、例えば、特開平8−101
861号公報、特開平5−216957号公報、特開平
5−181931号公報、等がある。
【0003】ここで、特開平8−101861号公報に
開示された回路設計装置の回路設計方法を一従来例とし
て、図8ないし図11を参照して以下に簡単に説明す
る。なお、図8は動作記述言語を示す模式図、図9は制
御記述グラフであるCDFGを示す模式図、図10はス
ケジューリングおよびバインディングされたCDFGを
示す模式図、図11は回路構造データを示す模式図であ
る。
【0004】上記公報に開示された回路設計方法では、
動作記述言語から回路構造データを生成する。動作記述
言語1は、図8に示すように、設計する集積回路装置の
各種動作が配列変数などで記述されたアルゴリズム的な
プログラムであり、作業者の手作業によりハードウェア
を意識することなくC言語などで記述される。
【0005】このような動作記述言語1がデータ入力さ
れる回路設計装置(図示せず)では、データ入力された
動作記述言語1を構文解析し、制御記述グラフであるC
DFG2を生成する。このCDFG2は、動作記述言語
1からPADなどを介して既存のコンパイラ処理により
生成されるもので、図9に示すように、ハードウェア要
素の順序依存関係が二次元的に表現される。なお、図中
には表記されていないが、CDFG2にはDFGに付加
したコントロール部分である条件分岐も内包されてい
る。
【0006】集積回路装置は、演算器やレジスタなどの
各種のハードウェア要素で形成されるので、回路設計装
置のデータライブラリには、各種のハードウェア要素に
対応した多数の要素データが事前に登録されている。
【0007】そこで、上述のようにCDFG2を生成し
た回路設計装置は、図10に示すように、CDFG2を
動作ステップ3ごとにスケジューリングし、このスケジ
ューリングされたCDFG2に各種の要素データを動作
ステップ3ごとに選択的に割り付ける。このとき、CD
FG2には、動作ステップ3ごとに各種の演算器の要素
データ4が割り付けられるが、動作ステップ3が切り換
わるデータ転送の位置にはレジスタの要素データ5が割
り付けられることになる。
【0008】つぎに、CDFG2に割り付けられた各種
の要素データのうち、機能が同一で使用する時刻が相違
するものや、時刻が同一でも条件分岐が相反するものを
一つとし、その入出力部に選択回路を付加してハードウ
ェア要素の個数を削減する。このように最小化したCD
FG2から、集積回路装置の各種状態を順番に表現した
FSM(図示せず)と、要素データが二次元的に配列さ
れた要素配列データとが生成される。
【0009】そこで、この要素配列データの要素データ
をFSMに対応した構造に接続することにより、図11
に示すように、集積回路装置の構造を反映した回路構造
データ6が最終的に生成される。
【0010】
【発明が解決しようとする課題】上記公報に開示された
回路設計装置の回路設計方法では、事前に必要な要素デ
ータを登録しておけば、動作記述言語1から回路構造デ
ータを生成することができる。
【0011】しかし、図10に示すように、スケジュー
リングしたCDFG2に要素データを割り付けるとき、
動作ステップが切り換わるデータ転送の位置にはレジス
タの要素データ5が割り付けられる。このように割り付
けられたレジスタの要素データ5は、前述のように使用
時刻や条件分岐の相違により少数にまとめられるが、そ
れでも配列変数が多数の場合や変数の配列サイズが大き
い場合には、回路構造データ6には膨大な個数のレジス
タが使用されることになる。
【0012】本発明は上述のような課題に鑑みてなされ
たものであり、動作記述言語から生成する回路構造デー
タに膨大な個数のレジスタが設定されることがなく、デ
ータ転送が良好に実行される集積回路装置を設計する回
路設計方法および装置、この回路設計装置の回路設計方
法をコンピュータに実行させるためのプログラムが格納
されている情報記憶媒体、を提供することを目的とす
る。
【0013】
【課題を解決するための手段】請求項1ないし4記載の
発明の回路設計方法は、少なくとも一つが内部メモリで
ある各種のハードウェア要素が内部バスで相互に接続さ
れた内部構造の回路ブロックが、ハードウェア要素の一
つである外部メモリと外部バスで相互に接続された集積
回路装置を設計する回路設計方法であって、請求項1記
載の発明は、各種のハードウェア要素に対応した多数の
要素データを事前に登録しておき、設計する集積回路装
置の各種動作が配列変数などで記述された動作記述言語
を解析してハードウェア要素の順序依存関係が表現され
た制御記述グラフを生成し、この制御記述グラフから配
列変数ごとに被アクセスの局所性を検出し、制御記述グ
ラフを動作ステップごとにスケジューリングし、このス
ケジューリングされる制御記述グラフに各種の要素デー
タを動作ステップごとに選択的に割り付け、この要素デ
ータを制御記述グラフに割り付けるときに局所性が高い
配列変数の部分を内部メモリの要素データに割り付ける
とともに局所性が低い配列変数の部分を外部メモリの要
素データに割り付けるようにした。
【0014】従って、本発明の回路設計方法では、制御
記述グラフに膨大な個数のレジスタの要素データが割り
付けられることがない。また、このような制御記述グラ
フから設計される集積回路装置では、例えば、一部の回
路ブロックのみで利用される変数データは、その回路ブ
ロックの内部メモリに格納され、多数の回路ブロックで
利用される変数データは、多数の回路ブロックで共有す
る外部メモリに格納されることになる。
【0015】なお、制御記述グラフを動作ステップごと
にスケジューリングすることと、スケジューリングされ
る制御記述グラフに各種の要素データを割り付けること
とは、この順番で各々の処理を個々に実行することの
他、制御記述グラフをスケジューリングしながら要素デ
ータの割り付けを同時に実行することも可能である。ま
た、本発明で云うハードウェア要素とは、集積回路装置
に利用される演算器やメモリなどを意味しており、要素
データとは、各種のハードウェア要素に個々に対応して
制御記述グラフに対する割り付けや回路構造データの生
成に利用されるように設定されたデータセットを意味し
ている。また、内部メモリとは、ハードウェア要素の一
つであり、回路ブロックの内部に配置され、同様に回路
ブロックの内部に配置された各種のハードウェア要素と
内部バスで相互に接続されるものである。外部メモリ
も、ハードウェア要素の一つであるが、これは回路ブロ
ックの外部に配置され、回路ブロックと外部バスで相互
に接続されるものである。配列変数の被アクセスの局所
性とは、集積回路装置で保持データがアクセスされる場
合の頻度などを反映するもので、例えば、動作記述言語
では配列宣言ごとの配列変数の関数による使用回数とし
て検出される。
【0016】請求項2記載の発明は、各種のハードウェ
ア要素に対応した多数の要素データを事前に登録してお
き、設計する集積回路装置の各種動作が配列変数などで
記述された動作記述言語を解析してハードウェア要素の
順序依存関係が表現された制御記述グラフを生成し、こ
の制御記述グラフから配列変数ごとに被アクセスの局所
性を検出し、制御記述グラフを動作ステップごとにスケ
ジューリングし、このスケジューリングされる制御記述
グラフに各種の要素データを動作ステップごとに選択的
に割り付け、この要素データを制御記述グラフに割り付
けるときに局所性が高い配列変数の部分を内部メモリの
要素データに割り付けるとともに局所性が低い配列変数
の部分を外部メモリの要素データに割り付け、スケジュ
ーリングされた制御記述グラフから集積回路装置の各種
状態を順番に表現したFSMを生成し、要素データが割
り付けられた制御記述グラフから要素データが二次元的
に配列された要素配列データを生成し、この要素配列デ
ータの要素データをFSMに対応した構造に接続して集
積回路装置の構造を反映した回路構造データを生成する
ようにした。
【0017】従って、本発明の回路設計方法では、回路
構造データに膨大な個数のレジスタの要素データが設定
されることがない。また、このような回路構造データか
ら設計される集積回路装置では、例えば、一部の回路ブ
ロックのみで利用される変数データは、その回路ブロッ
クの内部メモリに格納され、多数の回路ブロックで利用
される変数データは、多数の回路ブロックで共有する外
部メモリに格納されることになる。
【0018】請求項3記載の発明は、各種のハードウェ
ア要素に対応した多数の要素データを事前に登録してお
き、設計する集積回路装置の各種動作が配列変数などで
記述された動作記述言語を解析してハードウェア要素の
順序依存関係が表現された制御記述グラフを生成し、こ
の制御記述グラフから配列変数ごとに被アクセスの局所
性を検出し、制御記述グラフを動作ステップごとにスケ
ジューリングし、このスケジューリングされる制御記述
グラフに各種の要素データを動作ステップごとに選択的
に割り付け、この要素データを制御記述グラフに割り付
けるときに局所性が高い配列変数の部分を内部メモリの
要素データに割り付けるとともに局所性が低い配列変数
の部分を外部メモリの要素データに割り付け、スケジュ
ーリングされた制御記述グラフから集積回路装置の各種
状態を順番に表現したFSMを生成し、要素データが割
り付けられた制御記述グラフから要素データが二次元的
に配列された要素配列データを生成し、この要素配列デ
ータの要素データをFSMに対応した構造に接続して集
積回路装置の構造を反映した回路構造データを生成し、
この回路構造データが複数の場合に各々の外部バスのト
ラヒックを評価し、このトラヒックの評価が最低の回路
構造データを選択するようにした。
【0019】従って、このように選択されて出力される
回路構造データは膨大な個数のレジスタの要素データが
設定されることがない。また、このような回路構造デー
タから設計される集積回路装置では、例えば、一部の回
路ブロックのみで利用される変数データは、その回路ブ
ロックの内部メモリに格納され、多数の回路ブロックで
利用される変数データは、多数の回路ブロックで共有す
る外部メモリに格納されることになる。特に、複数の回
路構造データから外部バスのトラヒックが最低の一つが
選択されるので、この回路構造データから設計される集
積回路装置では、多数の回路ブロックと外部メモリとを
接続する外部バスの輻輳が防止される。
【0020】なお、一つの回路構造データは一つのスケ
ジューリング結果から一対一に生成されるので、回路構
造データが複数となる場合とはスケジューリング結果が
複数の場合であり、一つのスケジューリング結果から複
数の回路構造データが生成されるわけではない。
【0021】請求項4記載の発明は、各種のハードウェ
ア要素に対応した多数の要素データとともに、外部バス
を使用した外部メモリのアクセスをハードウェア要素に
模擬した外部アクセスの要素データを事前に登録してお
き、設計する集積回路装置の各種動作が配列変数などで
記述された動作記述言語を解析してハードウェア要素の
順序依存関係が表現された制御記述グラフを生成し、こ
の制御記述グラフから配列変数ごとに被アクセスの局所
性を検出し、制御記述グラフを動作ステップごとにスケ
ジューリングし、このスケジューリングされる制御記述
グラフに各種の要素データを動作ステップごとに選択的
に割り付け、この要素データを制御記述グラフに割り付
けるときに局所性が高い配列変数の部分を内部メモリの
要素データに割り付けるとともに局所性が低い配列変数
の部分を前記外部アクセスの要素データに割り付け、ス
ケジューリングされた制御記述グラフが複数の場合に要
素データが割り付けられた制御記述グラフの外部アクセ
スの要素データにより外部バスのトラヒックを評価し、
このトラヒックが最低の制御記述グラフを選択するよう
にした。
【0022】従って、このように選択された制御記述グ
ラフには膨大な個数のレジスタの要素データが割り付け
られることがない。また、このような制御記述グラフか
ら設計される集積回路装置では、例えば、一部の回路ブ
ロックのみで利用される変数データは、その回路ブロッ
クの内部メモリに格納され、多数の回路ブロックで利用
される変数データは、多数の回路ブロックで共有する外
部メモリに格納されることになる。特に、スケジューリ
ングされるとともに要素データが割り付けられた複数の
制御記述グラフから外部バスのトラヒックが最低の一つ
が選択されるので、この制御記述グラフから設計される
集積回路装置では、多数の回路ブロックと外部メモリと
を接続する外部バスの輻輳が防止される。
【0023】なお、本発明の回路設計方法では、スケジ
ューリングされた制御記述グラフが複数の場合、外部バ
スのトラヒックが最低の一つを選択するので、スケジュ
ーリングされた制御記述グラフが一つの場合には、この
一つの制御記述グラフを直接出力すれば良く、トラヒッ
クの評価や制御記述グラフの選択の処理は省略すること
ができる。
【0024】請求項5ないし8記載の発明の回路設計装
置は、少なくとも一つが内部メモリである各種のハード
ウェア要素が内部バスで相互に接続された内部構造の回
路ブロックが、ハードウェア要素の一つである外部メモ
リと外部バスで相互に接続された集積回路装置を設計す
る回路設計装置であって、請求項5記載の発明は、各種
のハードウェア要素に対応した多数の要素データが事前
に登録されているデータ記憶手段と、設計する集積回路
装置の各種動作が配列変数などで記述された動作記述言
語がデータ入力される言語入力手段と、該言語入力手段
にデータ入力された動作記述言語を解析してハードウェ
ア要素の順序依存関係が表現された制御記述グラフを生
成するグラフ変換手段と、該グラフ変換手段により生成
された制御記述グラフから配列変数ごとに被アクセスの
局所性を検出する局所性検出手段と、前記グラフ変換手
段により生成された制御記述グラフを動作ステップごと
にスケジューリングするグラフスケジューリング手段
と、該グラフスケジューリング手段によりスケジューリ
ングされる制御記述グラフに前記データ記憶手段に登録
されている各種の要素データを動作ステップごとに選択
的に割り付ける要素割付手段と、制御記述グラフに要素
データが割り付けられるときに前記局所性検出手段によ
り検出された局所性が高い配列変数の部分が内部メモリ
の要素データに割り付けられるとともに局所性が低い配
列変数の部分が外部メモリの要素データに割り付けられ
るように前記要素割付手段を動作制御する割付制御手段
と、を具備している。
【0025】従って、本発明の回路設計装置では、各種
のハードウェア要素に対応した多数の要素データがデー
タ記憶手段に事前に登録された状態で、設計する集積回
路装置の各種動作が配列変数などで記述された動作記述
言語が言語入力手段にデータ入力される。すると、この
データ入力された動作記述言語がグラフ変換手段により
解析されてハードウェア要素の順序依存関係が表現され
た制御記述グラフが生成され、この制御記述グラフから
局所性検出手段により配列変数ごとに被アクセスの局所
性が検出される。また、制御記述グラフはグラフスケジ
ューリング手段により動作ステップごとにスケジューリ
ングされ、このスケジューリングされる制御記述グラフ
に要素割付手段によりデータ記憶手段に登録されている
各種の要素データが動作ステップごとに選択的に割り付
けられる。ただし、このように制御記述グラフに要素デ
ータが割り付けられるときに、割付制御手段により要素
割付手段が動作制御され、被アクセスの局所性が高い配
列変数の部分は内部メモリの要素データに割り付けら
れ、局所性が低い配列変数の部分は外部メモリの要素デ
ータに割り付けられるので、制御記述グラフに膨大な個
数のレジスタの要素データが割り付けられることがな
い。また、このような制御記述グラフから設計される集
積回路装置では、例えば、一部の回路ブロックのみで利
用される変数データは、その回路ブロックの内部メモリ
に格納され、多数の回路ブロックで利用される変数デー
タは、多数の回路ブロックで共有する外部メモリに格納
されることになる。
【0026】なお、本発明の各種手段は、その機能を実
現するように形成されていれば良く、例えば、専用のハ
ードウェア、適正な機能がプログラムにより付与された
コンピュータ、適正なプログラムによりコンピュータの
内部に実現された機能、これらの組み合わせ、等を許容
する。例えば、データ記憶手段とは、要素データを記憶
できるものであれば良く、RAM(Random Access
Memory)等の情報記憶媒体の記憶エリアなどを許容す
る。言語入力手段とは、各種データの入力を受け付ける
ものであれば良く、手動操作によるデータ入力を受け付
けるキーボード、信号受信によるデータ入力を受け付け
る通信インターフェイス、等を許容する。データ出力手
段とは、各種データを出力するものであれば良く、各種
データを表示出力するディスプレイ、各種データを印刷
出力するプリンタ、各種データを信号送信する通信イン
ターフェイス、等を許容する。
【0027】請求項6記載の発明は、各種のハードウェ
ア要素に対応した多数の要素データが事前に登録されて
いるデータ記憶手段と、設計する集積回路装置の各種動
作が配列変数などで記述された動作記述言語がデータ入
力される言語入力手段と、該言語入力手段にデータ入力
された動作記述言語を解析してハードウェア要素の順序
依存関係が表現された制御記述グラフを生成するグラフ
変換手段と、該グラフ変換手段により生成された制御記
述グラフから配列変数ごとに被アクセスの局所性を検出
する局所性検出手段と、前記グラフ変換手段により生成
された制御記述グラフを動作ステップごとにスケジュー
リングするグラフスケジューリング手段と、該グラフス
ケジューリング手段によりスケジューリングされる制御
記述グラフに前記データ記憶手段に登録されている各種
の要素データを動作ステップごとに選択的に割り付ける
要素割付手段と、制御記述グラフに要素データが割り付
けられるときに前記局所性検出手段により検出された局
所性が高い配列変数の部分が内部メモリの要素データに
割り付けられるとともに局所性が低い配列変数の部分が
外部メモリの要素データに割り付けられるように前記要
素割付手段を動作制御する割付制御手段と、前記グラフ
スケジューリング手段によりスケジューリングされた制
御記述グラフから集積回路装置の各種状態を順番に表現
したFSMを生成するFSM生成手段と、前記割付制御
手段により動作制御された前記要素割付手段により要素
データが割り付けられた制御記述グラフから要素データ
が二次元的に配列された要素配列データを生成する配列
生成手段と、該配列生成手段により生成された要素配列
データの要素データを前記FSM生成手段により生成さ
れたFSMに対応した構造に接続して集積回路装置の構
造を反映した回路構造データを生成する構造生成手段
と、を具備している。
【0028】従って、本発明の回路設計装置では、各種
のハードウェア要素に対応した多数の要素データがデー
タ記憶手段に事前に登録された状態で、設計する集積回
路装置の各種動作が配列変数などで記述された動作記述
言語が言語入力手段にデータ入力される。すると、この
データ入力された動作記述言語がグラフ変換手段により
解析されてハードウェア要素の順序依存関係が表現され
た制御記述グラフが生成され、この制御記述グラフから
局所性検出手段により配列変数ごとに被アクセスの局所
性が検出される。また、制御記述グラフはグラフスケジ
ューリング手段により動作ステップごとにスケジューリ
ングされ、このスケジューリングされる制御記述グラフ
に要素割付手段によりデータ記憶手段に登録されている
各種の要素データが動作ステップごとに選択的に割り付
けられる。ただし、このように制御記述グラフに要素デ
ータが割り付けられるときに、割付制御手段により要素
割付手段が動作制御されるので、被アクセスの局所性が
高い配列変数の部分は内部メモリの要素データに割り付
けられ、局所性が低い配列変数の部分は外部メモリの要
素データに割り付けられる。また、スケジューリングさ
れた制御記述グラフからFSM生成手段により集積回路
装置の各種状態を順番に表現したFSMが生成され、上
述のように要素データが割り付けられた制御記述グラフ
から配列生成手段により要素データが二次元的に配列さ
れた要素配列データが生成される。この要素配列データ
の要素データが構造生成手段によりFSMに対応した構
造に接続されて集積回路装置の構造を反映した回路構造
データが生成されるので、この回路構造データに膨大な
個数のレジスタの要素データが設定されることがない。
また、このような回路構造データから設計される集積回
路装置では、例えば、一部の回路ブロックのみで利用さ
れる変数データは、その回路ブロックの内部メモリに格
納され、多数の回路ブロックで利用される変数データ
は、多数の回路ブロックで共有する外部メモリに格納さ
れることになる。
【0029】請求項7記載の発明は、各種のハードウェ
ア要素に対応した多数の要素データが事前に登録されて
いるデータ記憶手段と、設計する集積回路装置の各種動
作が配列変数などで記述された動作記述言語がデータ入
力される言語入力手段と、該言語入力手段にデータ入力
された動作記述言語を解析してハードウェア要素の順序
依存関係が表現された制御記述グラフを生成するグラフ
変換手段と、該グラフ変換手段により生成された制御記
述グラフから配列変数ごとに被アクセスの局所性を検出
する局所性検出手段と、前記グラフ変換手段により生成
された制御記述グラフを動作ステップごとにスケジュー
リングするグラフスケジューリング手段と、該グラフス
ケジューリング手段によりスケジューリングされる制御
記述グラフに前記データ記憶手段に登録されている各種
の要素データを動作ステップごとに選択的に割り付ける
要素割付手段と、制御記述グラフに要素データが割り付
けられるときに前記局所性検出手段により検出された局
所性が高い配列変数の部分が内部メモリの要素データに
割り付けられるとともに局所性が低い配列変数の部分が
外部メモリの要素データに割り付けられるように前記要
素割付手段を動作制御する割付制御手段と、前記グラフ
スケジューリング手段によりスケジューリングされた制
御記述グラフから集積回路装置の各種状態を順番に表現
したFSMを生成するFSM生成手段と、前記割付制御
手段により動作制御された前記要素割付手段により要素
データが割り付けられた制御記述グラフから要素データ
が二次元的に配列された要素配列データを生成する配列
生成手段と、該配列生成手段により生成された要素配列
データの要素データを前記FSM生成手段により生成さ
れたFSMに対応した構造に接続して集積回路装置の構
造を反映した回路構造データを生成する構造生成手段
と、該構造生成手段により生成された回路構造データが
複数の場合に各々の外部バスのトラヒックを評価するト
ラヒック評価手段と、該トラヒック評価手段により評価
されたトラヒックが最低の回路構造データを選択するデ
ータ選択手段と、を具備している。
【0030】従って、本発明の回路設計装置では、各種
のハードウェア要素に対応した多数の要素データがデー
タ記憶手段に事前に登録された状態で、設計する集積回
路装置の各種動作が配列変数などで記述された動作記述
言語が言語入力手段にデータ入力される。すると、この
データ入力された動作記述言語がグラフ変換手段により
解析されてハードウェア要素の順序依存関係が表現され
た制御記述グラフが生成され、この制御記述グラフから
局所性検出手段により配列変数ごとに被アクセスの局所
性が検出される。また、制御記述グラフはグラフスケジ
ューリング手段により動作ステップごとにスケジューリ
ングされ、このスケジューリングされる制御記述グラフ
に要素割付手段によりデータ記憶手段に登録されている
各種の要素データが動作ステップごとに選択的に割り付
けられる。ただし、このように制御記述グラフに要素デ
ータが割り付けられるときに、割付制御手段により要素
割付手段が動作制御されるので、被アクセスの局所性が
高い配列変数の部分は内部メモリの要素データに割り付
けられ、局所性が低い配列変数の部分は外部メモリの要
素データに割り付けられる。また、スケジューリングさ
れた制御記述グラフからFSM生成手段により集積回路
装置の各種状態を順番に表現したFSMが生成され、上
述のように要素データが割り付けられた制御記述グラフ
から配列生成手段により要素データが二次元的に配列さ
れた要素配列データが生成される。この要素配列データ
の要素データが構造生成手段によりFSMに対応した構
造に接続されて集積回路装置の構造を反映した回路構造
データが生成され、このように生成された回路構造デー
タが複数の場合にトラヒック評価手段により各々の外部
バスのトラヒックが評価され、この評価されたトラヒッ
クが最低の回路構造データがデータ選択手段により選択
される。従って、このように選択されて出力される回路
構造データは膨大な個数のレジスタの要素データが設定
されることがない。また、このような回路構造データか
ら設計される集積回路装置では、例えば、一部の回路ブ
ロックのみで利用される変数データは、その回路ブロッ
クの内部メモリに格納され、多数の回路ブロックで利用
される変数データは、多数の回路ブロックで共有する外
部メモリに格納されることになる。特に、複数の回路構
造データから外部バスのトラヒックが最低の一つが選択
されるので、この回路構造データから設計される集積回
路装置では、多数の回路ブロックと外部メモリとを接続
する外部バスの輻輳が防止される。
【0031】請求項8記載の発明は、各種のハードウェ
ア要素に対応した多数の要素データとともに、外部バス
を使用した外部メモリのアクセスをハードウェア要素に
模擬した外部アクセスの要素データが事前に登録されて
いるデータ記憶手段と、設計する集積回路装置の各種動
作が配列変数などで記述された動作記述言語がデータ入
力される言語入力手段と、該言語入力手段にデータ入力
された動作記述言語を解析してハードウェア要素の順序
依存関係が表現された制御記述グラフを生成するグラフ
変換手段と、該グラフ変換手段により生成された制御記
述グラフから配列変数ごとに被アクセスの局所性を検出
する局所性検出手段と、前記グラフ変換手段により生成
された制御記述グラフを動作ステップごとにスケジュー
リングするグラフスケジューリング手段と、該グラフス
ケジューリング手段によりスケジューリングされる制御
記述グラフに前記データ記憶手段に登録されている各種
の要素データを動作ステップごとに選択的に割り付ける
要素割付手段と、制御記述グラフに要素データが割り付
けられるときに前記局所性検出手段により検出された局
所性が高い配列変数の部分が内部メモリの要素データに
割り付けられるとともに局所性が低い配列変数の部分が
前記外部アクセスの要素データに割り付けられるように
前記要素割付手段を動作制御する割付制御手段と、前記
グラフスケジューリング手段によりスケジューリングさ
れた制御記述グラフが複数の場合に前記割付制御手段に
より動作制御された前記要素割付手段により要素データ
が割り付けられた制御記述グラフの外部アクセスの要素
データにより外部バスのトラヒックを評価するトラヒッ
ク評価手段と、該トラヒック評価手段により評価された
トラヒックが最低の回路構造データを選択するデータ選
択手段と、を具備している。
【0032】従って、本発明の回路設計装置では、各種
のハードウェア要素に対応した多数の要素データととも
に、外部バスを使用した外部メモリのアクセスをハード
ウェア要素に模擬した外部アクセスの要素データがデー
タ記憶手段に事前に登録された状態で、設計する集積回
路装置の各種動作が配列変数などで記述された動作記述
言語が言語入力手段にデータ入力される。すると、この
データ入力された動作記述言語がグラフ変換手段により
解析されてハードウェア要素の順序依存関係が表現され
た制御記述グラフが生成され、この制御記述グラフから
局所性検出手段により配列変数ごとに被アクセスの局所
性が検出される。また、制御記述グラフはグラフスケジ
ューリング手段により動作ステップごとにスケジューリ
ングされ、このスケジューリングされる制御記述グラフ
に要素割付手段によりデータ記憶手段に登録されている
各種の要素データが動作ステップごとに選択的に割り付
けられる。ただし、このように制御記述グラフに要素デ
ータが割り付けられるときに、割付制御手段により要素
割付手段が動作制御されるので、被アクセスの局所性が
高い配列変数の部分が内部メモリの要素データに割り付
けられ、局所性が低い配列変数の部分が外部アクセスの
要素データに割り付けられる。また、スケジューリング
された制御記述グラフが複数の場合に、要素データが割
り付けられた制御記述グラフの外部アクセスの要素デー
タによりトラヒック評価手段により外部バスのトラヒッ
クを評価され、この評価されたトラヒックが最低の制御
記述グラフがデータ選択手段により選択される。従っ
て、このように選択された制御記述グラフには膨大な個
数のレジスタの要素データが設定されることがない。ま
た、このような制御記述グラフから設計される集積回路
装置では、例えば、一部の回路ブロックのみで利用され
る変数データは、その回路ブロックの内部メモリに格納
され、多数の回路ブロックで利用される変数データは、
多数の回路ブロックで共有する外部メモリに格納される
ことになる。特に、スケジューリングされるとともに要
素データが割り付けられた複数の制御記述グラフから、
外部バスのトラヒックが最低の一つが選択されるので、
この制御記述グラフから設計される集積回路装置では、
多数の回路ブロックと外部メモリとを接続する外部バス
の輻輳が防止される。
【0033】請求項9記載の発明は、請求項7記載の回
路設計装置であって、前記トラヒック評価手段は、外部
バスを使用しないハードウェア要素の個数と外部バスの
使用の待機時間とからトラヒックを評価する。従って、
外部バスのトラヒックがトラヒック評価手段により簡単
な処理で的確に評価される。
【0034】請求項10記載の発明は、請求項5ないし
9の何れか一記載の回路設計装置であって、前記グラフ
変換手段は、動作記述言語を構文解析して配列変数の順
序依存関係が木構造で表現された第一の制御記述グラフ
であるPADを生成してから、このPADを整理してハ
ードウェア要素の順序依存関係が二次元的に表現された
第二の制御記述グラフであるCDFGを生成し、前記局
所性検出手段は、前記グラフ変換手段により生成された
PADから配列変数ごとに被アクセスの局所性を検出
し、前記グラフスケジューリング手段は、前記グラフ変
換手段により生成されたCDFGを動作ステップごとに
スケジューリングする。
【0035】従って、動作記述言語からグラフ変換手段
により第一の制御記述グラフとしてPADが生成される
と、このPADから局所性検出手段により配列変数ごと
に被アクセスの局所性が検出され、PADからグラフ変
換手段により第二の制御記述グラフとしてCDFGが生
成されると、このCDFGがグラフスケジューリング手
段により動作ステップごとにスケジューリングされるの
で、被アクセスの局所性の検出やスケジューリングが簡
単な処理で的確に実行される。
【0036】請求項11記載の発明は、請求項10記載
の回路設計装置であって、前記局所性検出手段は、PA
Dから配列宣言ごとに配列変数を個々に探索し、この配
列変数の各々で関数に使用される回数を積算し、この回
数の多少を配列変数の被アクセスの局所性として検出す
る。従って、動作記述言語の配列変数の局所性が局所性
検出手段により簡単な処理で的確に検出される。
【0037】請求項12ないし15記載の発明の情報記
憶媒体は、コンピュータが読取自在なソフトウェアが格
納されている情報記憶媒体において、請求項12記載の
発明は、各種のハードウェア要素に対応した多数の要素
データを保存すること、設計する集積回路装置の各種動
作が配列変数などで記述された動作記述言語のデータ入
力を受け付けること、データ入力された動作記述言語を
解析してハードウェア要素の順序依存関係が表現された
制御記述グラフを生成すること、この制御記述グラフか
ら配列変数ごとに被アクセスの局所性を検出すること、
制御記述グラフを動作ステップごとにスケジューリング
すること、このスケジューリングされる制御記述グラフ
に各種の要素データを動作ステップごとに選択的に割り
付けること、この要素データを制御記述グラフに割り付
けるときに局所性が高い配列変数の部分を内部メモリの
要素データに割り付けるとともに局所性が低い配列変数
の部分を外部メモリの要素データに割り付けること、を
前記コンピュータに実行させるためのプログラムが格納
されている。
【0038】従って、本発明の情報記憶媒体のプログラ
ムをコンピュータに読み取らせて対応する処理動作を実
行させると、このコンピュータは、各種のハードウェア
要素に対応した多数の要素データを保存することがで
き、このような状態で設計する集積回路装置の各種動作
が配列変数などで記述された動作記述言語のデータ入力
を受け付ける。このように動作記述言語がデータ入力さ
れると、この動作記述言語を解析してハードウェア要素
の順序依存関係が表現された制御記述グラフを生成し、
この制御記述グラフから配列変数ごとに被アクセスの局
所性を検出する。また、制御記述グラフを動作ステップ
ごとにスケジューリングし、このスケジューリングされ
る制御記述グラフに各種の要素データを動作ステップご
とに選択的に割り付ける。ただし、このように要素デー
タを制御記述グラフに割り付けるときに、局所性が高い
配列変数の部分を内部メモリの要素データに割り付ける
とともに、局所性が低い配列変数の部分を外部メモリの
要素データに割り付けるので、この制御記述グラフに膨
大な個数のレジスタの要素データが割り付けられること
がない。また、このような制御記述グラフから設計され
る集積回路装置では、例えば、一部の回路ブロックのみ
で利用される変数データは、その回路ブロックの内部メ
モリに格納され、多数の回路ブロックで利用される変数
データは、多数の回路ブロックで共有する外部メモリに
格納されることになる。
【0039】なお、本発明で云う情報記憶媒体とは、コ
ンピュータに各種処理を実行させるためのプログラムが
ソフトウェアとして事前に格納されたものであれば良
く、例えば、コンピュータを一部とする装置に固定され
ているROM(Read OnlyMemory)やHDD(Hard
Disc Drive)、コンピュータを一部とする装置に着脱
自在に装填されるCD(Compact Disc)−ROMやF
D(Floppy Disc)、等を許容する。また、本発明で云
うコンピュータとは、ソフトウェアからなるプログラム
を読み取って対応する処理動作を実行できる装置であれ
ば良く、例えば、CPU(Central Processing Uni
t)を主体として、これにROMやRAMやI/F(Inte
rface)等の各種デバイスが必要により接続された装置な
どを許容する。なお、本発明でコンピュータに要素デー
タを保存させることは、例えば、コンピュータが事前に
接続されているRAM等の情報記憶媒体に各種データを
格納することや、コンピュータが一部として具備してい
る内部メモリに各種データを格納することや、本発明の
情報記憶媒体がFD等の場合に、そこにコンピュータが
各種データを格納すること、等を許容する。
【0040】請求項13記載の発明は、各種のハードウ
ェア要素に対応した多数の要素データを保存すること、
設計する集積回路装置の各種動作が配列変数などで記述
された動作記述言語のデータ入力を受け付けること、デ
ータ入力された動作記述言語を解析してハードウェア要
素の順序依存関係が表現された制御記述グラフを生成す
ること、この制御記述グラフから配列変数ごとに被アク
セスの局所性を検出すること、制御記述グラフを動作ス
テップごとにスケジューリングすること、このスケジュ
ーリングされる制御記述グラフに各種の要素データを動
作ステップごとに選択的に割り付けること、この要素デ
ータを制御記述グラフに割り付けるときに局所性が高い
配列変数の部分を内部メモリの要素データに割り付ける
とともに局所性が低い配列変数の部分を外部メモリの要
素データに割り付けること、スケジューリングされた制
御記述グラフから集積回路装置の各種状態を順番に表現
したFSMを生成すること、要素データが割り付けられ
た制御記述グラフから要素データが二次元的に配列され
た要素配列データを生成すること、この要素配列データ
の要素データをFSMに対応した構造に接続して集積回
路装置の構造を反映した回路構造データを生成するこ
と、を前記コンピュータに実行させるためのプログラム
が格納されている。
【0041】従って、本発明の情報記憶媒体のプログラ
ムをコンピュータに読み取らせて対応する処理動作を実
行させると、このコンピュータは、各種のハードウェア
要素に対応した多数の要素データを保存することがで
き、このような状態で設計する集積回路装置の各種動作
が配列変数などで記述された動作記述言語のデータ入力
を受け付ける。このように動作記述言語がデータ入力さ
れると、この動作記述言語を解析してハードウェア要素
の順序依存関係が表現された制御記述グラフを生成し、
この制御記述グラフから配列変数ごとに被アクセスの局
所性を検出する。また、制御記述グラフを動作ステップ
ごとにスケジューリングし、このスケジューリングされ
る制御記述グラフに各種の要素データを動作ステップご
とに選択的に割り付ける。ただし、このように要素デー
タを制御記述グラフに割り付けるときに、局所性が高い
配列変数の部分を内部メモリの要素データに割り付ける
とともに、局所性が低い配列変数の部分を外部メモリの
要素データに割り付ける。スケジューリングされた制御
記述グラフから集積回路装置の各種状態を順番に表現し
たFSMを生成し、要素データが割り付けられた制御記
述グラフから要素データが二次元的に配列された要素配
列データを生成する。この要素配列データの要素データ
をFSMに対応した構造に接続して集積回路装置の構造
を反映した回路構造データを生成するので、回路構造デ
ータに膨大な個数のレジスタの要素データが設定される
ことがない。また、このような回路構造データから設計
される集積回路装置では、例えば、一部の回路ブロック
のみで利用される変数データは、その回路ブロックの内
部メモリに格納され、多数の回路ブロックで利用される
変数データは、多数の回路ブロックで共有する外部メモ
リに格納されることになる。
【0042】請求項14記載の発明は、各種のハードウ
ェア要素に対応した多数の要素データを保存すること、
設計する集積回路装置の各種動作が配列変数などで記述
された動作記述言語のデータ入力を受け付けること、デ
ータ入力された動作記述言語を解析してハードウェア要
素の順序依存関係が表現された制御記述グラフを生成す
ること、この制御記述グラフから配列変数ごとに被アク
セスの局所性を検出すること、制御記述グラフを動作ス
テップごとにスケジューリングすること、このスケジュ
ーリングされる制御記述グラフに各種の要素データを動
作ステップごとに選択的に割り付けること、この要素デ
ータを制御記述グラフに割り付けるときに局所性が高い
配列変数の部分を内部メモリの要素データに割り付ける
とともに局所性が低い配列変数の部分を外部メモリの要
素データに割り付けること、スケジューリングされた制
御記述グラフから集積回路装置の各種状態を順番に表現
したFSMを生成すること、要素データが割り付けられ
た制御記述グラフから要素データが二次元的に配列され
た要素配列データを生成すること、この要素配列データ
の要素データをFSMに対応した構造に接続して集積回
路装置の構造を反映した回路構造データを生成するこ
と、この回路構造データが複数の場合に各々の外部バス
のトラヒックを評価すること、このトラヒックの評価が
最低の回路構造データを選択すること、を前記コンピュ
ータに実行させるためのプログラムが格納されている。
【0043】従って、本発明の情報記憶媒体のプログラ
ムをコンピュータに読み取らせて対応する処理動作を実
行させると、このコンピュータは、各種のハードウェア
要素に対応した多数の要素データを保存することがで
き、このような状態で設計する集積回路装置の各種動作
が配列変数などで記述された動作記述言語のデータ入力
を受け付ける。このように動作記述言語がデータ入力さ
れると、この動作記述言語を解析してハードウェア要素
の順序依存関係が表現された制御記述グラフを生成し、
この制御記述グラフから配列変数ごとに被アクセスの局
所性を検出する。また、制御記述グラフを動作ステップ
ごとにスケジューリングし、このスケジューリングされ
る制御記述グラフに各種の要素データを動作ステップご
とに選択的に割り付ける。ただし、このように要素デー
タを制御記述グラフに割り付けるときに、局所性が高い
配列変数の部分を内部メモリの要素データに割り付ける
とともに、局所性が低い配列変数の部分を外部メモリの
要素データに割り付ける。また、スケジューリングされ
た制御記述グラフから集積回路装置の各種状態を順番に
表現したFSMを生成し、要素データが割り付けられた
制御記述グラフから要素データが二次元的に配列された
要素配列データを生成し、この要素配列データの要素デ
ータをFSMに対応した構造に接続して集積回路装置の
構造を反映した回路構造データを生成する。この回路構
造データが複数の場合に各々の外部バスのトラヒックを
評価し、このトラヒックの評価が最低の回路構造データ
を選択する。このように選択されて出力される回路構造
データは膨大な個数のレジスタの要素データが設定され
ることがない。また、このような回路構造データから設
計される集積回路装置では、例えば、一部の回路ブロッ
クのみで利用される変数データは、その回路ブロックの
内部メモリに格納され、多数の回路ブロックで利用され
る変数データは、多数の回路ブロックで共有する外部メ
モリに格納されることになる。特に、複数の回路構造デ
ータから外部バスのトラヒックが最低の一つが選択され
るので、この回路構造データから設計される集積回路装
置では、多数の回路ブロックと外部メモリとを接続する
外部バスの輻輳が防止される。
【0044】請求項15記載の発明は、各種のハードウ
ェア要素に対応した多数の要素データとともに、外部バ
スを使用した外部メモリのアクセスをハードウェア要素
に模擬した外部アクセスの要素データを保存すること、
設計する集積回路装置の各種動作が配列変数などで記述
された動作記述言語のデータ入力を受け付けること、デ
ータ入力された動作記述言語を解析してハードウェア要
素の順序依存関係が表現された制御記述グラフを生成す
ること、この制御記述グラフから配列変数ごとに被アク
セスの局所性を検出すること、制御記述グラフを動作ス
テップごとにスケジューリングすること、このスケジュ
ーリングされる制御記述グラフに各種の要素データを動
作ステップごとに選択的に割り付けること、この要素デ
ータを制御記述グラフに割り付けるときに局所性が高い
配列変数の部分を内部メモリの要素データに割り付ける
とともに局所性が低い配列変数の部分を前記外部アクセ
スの要素データに割り付けること、スケジューリングさ
れた制御記述グラフが複数の場合に要素データが割り付
けられた制御記述グラフの外部アクセスの要素データに
より外部バスのトラヒックを評価すること、この評価さ
れたトラヒックが最低の制御記述グラフを選択するこ
と、を前記コンピュータに実行させるためのプログラム
が格納されている。
【0045】従って、本発明の情報記憶媒体のプログラ
ムをコンピュータに読み取らせて対応する処理動作を実
行させると、このコンピュータは、各種のハードウェア
要素に対応した多数の要素データとともに、外部バスを
使用した外部メモリのアクセスをハードウェア要素に模
擬した外部アクセスの要素データを保存することがで
き、このような状態で設計する集積回路装置の各種動作
が配列変数などで記述された動作記述言語のデータ入力
を受け付ける。このように動作記述言語がデータ入力さ
れると、この動作記述言語を解析してハードウェア要素
の順序依存関係が表現された制御記述グラフを生成し、
この制御記述グラフから配列変数ごとに被アクセスの局
所性を検出する。また、制御記述グラフを動作ステップ
ごとにスケジューリングし、このスケジューリングされ
る制御記述グラフに各種の要素データを動作ステップご
とに選択的に割り付ける。ただし、このように要素デー
タを制御記述グラフに割り付けるときに、局所性が高い
配列変数の部分を内部メモリの要素データに割り付ける
とともに、局所性が低い配列変数の部分を前記外部アク
セスの要素データに割り付ける。また、スケジューリン
グされた制御記述グラフが複数の場合に要素データが割
り付けられた制御記述グラフの外部アクセスの要素デー
タにより外部バスのトラヒックを評価し、この評価され
たトラヒックが最低の制御記述グラフを選択する。この
ように選択される制御記述グラフは膨大な個数のレジス
タの要素データが割り付けられることがない。また、こ
のような制御記述グラフから設計される集積回路装置で
は、例えば、一部の回路ブロックのみで利用される変数
データは、その回路ブロックの内部メモリに格納され、
多数の回路ブロックで利用される変数データは、多数の
回路ブロックで共有する外部メモリに格納されることに
なる。特に、スケジューリングされるとともに要素デー
タが割り付けられた制御記述グラフから、外部バスのト
ラヒックが最低の一つが選択されるので、この制御記述
グラフから設計される集積回路装置では、多数の回路ブ
ロックと外部メモリとを接続する外部バスの輻輳が防止
される。
【0046】
【発明の実施の形態】本発明の実施の一形態を図1ない
し図6を参照して以下に説明する。なお、本実施の形態
に関して前述した一従来例と同一の部分は、同一の名称
を使用して詳細な説明は省略する。
【0047】図1は本実施の形態の回路設計装置の論理
的構造を示す模式図であり、図2は物理的構造を示すブ
ロック図である。図3は動作記述言語を示す模式図であ
り、図4は第一の制御記述グラフであるPADを示す模
式図である。図5は回路構造データを示す模式図であ
り、図6は本実施の形態の回路設計方法を示すフローチ
ャートである。
【0048】本実施の形態の回路設計装置100は、図
2に示すように、コンピュータの主体となるハードウェ
アとしてCPU101を具備しており、このCPU10
1には、バスライン102により、ROM103、RA
M104、HDD105、FD106が装填されるFD
D(FD Drive)107、CD−ROM108が装填さ
れるCDドライブ109、キーボード110、マウス1
11、ディスプレイ112、通信I/F113、等が接
続されている。
【0049】本実施の形態の回路設計装置100では、
ROM103、RAM104、HDD105、FD10
6、CD−ROM108等が情報記憶媒体に相当し、こ
れらに各種動作に必要なプログラムやデータがソフトウ
ェアとして記憶されている。例えば、CPU101に各
種の処理動作を実行させる制御プログラムは、FD10
6やCD−ROM108に事前に格納されている。
【0050】このようなソフトウェアはHDD105に
事前にインストールされており、回路設計装置100の
起動時にRAM104に複写されてCPU101に読み
取られる。このようにCPU101が適正なプログラム
を読み取って各種の処理動作を実行することにより、本
実施の形態の回路設計装置100には、各種機能が各種
手段として実現されている。
【0051】つまり、上述のような各種手段として、本
実施の形態の回路設計装置100は、図1に示すよう
に、データ記憶手段11、言語入力手段12、第一のグ
ラフ変換手段であるPAD生成手段13、第二のグラフ
変換手段であるCDFG生成手段14、局所性検出手段
15、グラフスケジューリング手段16、要素割付手段
17、割付制御手段18、FSM生成手段19、配列生
成手段20、構造生成手段21、トラヒック評価手段2
2、データ選択手段23、データ出力手段24、等を論
理的に具備している。
【0052】データ記憶手段11は、RAM104やH
DD105等のデータ記憶媒体に確保された所定の記憶
エリアなどに相当し、各種のハードウェア要素に対応し
た多数の要素データが事前に登録されている。このよう
に登録される要素データは集積回路装置の設計に利用さ
れるので、例えば、回路設計装置100を利用するユー
ザにより設計する集積回路装置に対応して登録される。
【0053】言語入力手段12は、RAM104等に設
定された制御プログラムに対応して動作するCPU10
1が、キーボード110や通信I/F113によるデー
タ入力、HDD105やFDD107によるデータ読
込、等を動作制御することにより、図3に示すように、
設計する集積回路装置の各種動作が配列変数などで記述
された動作記述言語30のデータ入力を受け付ける。
【0054】PAD生成手段13は、RAM104等に
設定された制御プログラムに対応してCPU101が所
定のデータ処理を実行することにより、言語入力手段1
2にデータ入力された動作記述言語30を構文解析し、
ハードウェア要素の順序依存関係が表現された第一の制
御記述グラフとして、図4に示すように、配列変数の順
序依存関係が木構造で表現されたPAD31を生成す
る。
【0055】以下同様に、RAM104等に設定された
制御プログラムに対応してCPU101が所定のデータ
処理を実行することにより、CDFG生成手段14は、
PAD生成手段13により生成されたPAD31を整理
し、ハードウェア要素の順序依存関係が二次元的に表現
された第二の制御記述グラフとしてCDFGを生成す
る。
【0056】局所性検出手段15は、PAD生成手段1
3により生成されたPAD31から配列宣言ごとに配列
変数を個々に検索し、これらの配列変数の各々で関数に
使用される回数を積算することにより、配列変数ごとに
被アクセスの局所性を検出する。
【0057】グラフスケジューリング手段16は、CD
FG生成手段14により生成されたCDFG(図示せ
ず)を動作ステップごとにスケジューリングし、要素割
付手段17は、グラフスケジューリング手段16により
スケジューリングされる制御記述グラフに、データ記憶
手段11に登録されている各種の要素データを動作ステ
ップごとに選択的にバインディング(割り付け)される。
なお、これらの手段16,17によるスケジューリング
処理とバインディングとは、本実施の形態では相互に関
連しながら同時に実行される。
【0058】割付制御手段18は、上述のように制御記
述グラフに要素データがバインディングされるときに要
素割付手段17を動作制御し、局所性検出手段15によ
り検出された被アクセスの局所性が高い配列変数の部分
が内部メモリの要素データにバインディングされるとと
もに、局所性が低い配列変数の部分が外部メモリの要素
データにバインディングされるようにする。
【0059】なお、このように被アクセスの局所性の高
低で配列変数を区別するとき、この区別の手法は各種に
設定することが可能である。例えば、事前に各種条件を
考慮して作業者が所望の閾値を設定することも可能であ
り、一つの動作記述言語から抽出された多数の被アクセ
スの局所性の平均値を閾値として設定することも可能で
あり、内部メモリや外部メモリの容量に対応して局所性
の上位や下位から所定数を選択することも可能である。
【0060】FSM生成手段19は、グラフスケジュー
リング手段16によりスケジューリングされるとともに
要素割付手段17により要素データがバインディングさ
れた制御記述グラフから、集積回路装置の各種状態を順
番に表現したFSMを生成する。配列生成手段20は、
グラフスケジューリング手段16によりスケジューリン
グされるとともに要素割付手段17により要素データが
バインディングされた制御記述グラフから、要素データ
が二次元的に配列された要素配列データを生成する。
【0061】構造生成手段21は、配列生成手段20に
より生成された要素配列データの要素データを、FSM
生成手段19により生成されたFSMに対応した構造に
接続し、図5に示すように、集積回路装置の構造を反映
した回路構造データ32を生成する。
【0062】なお、本実施の形態で例示する回路構造デ
ータ32は、三つの回路ブロック33〜35と一つの外
部メモリである外部RAM36とが一つの外部バス37
で接続されており、回路ブロック33,35に内部メモ
リである内部メモリ38,39が内蔵されている。
【0063】トラヒック評価手段22は、同図(a)(b)
に示すように、構造生成手段21により生成された回路
構造データ32が複数の場合に、各々の外部バス37の
トラヒックを評価する。なお、一つの回路構造データ3
2は一つのスケジューリング結果から一対一に生成され
るので、回路構造データ32が複数となる場合とはスケ
ジューリング結果が複数の場合であり、一つのスケジュ
ーリング結果から複数の回路構造データ32が生成され
るわけではない。
【0064】データ選択手段23は、上述のようにトラ
ヒック評価手段22により複数の回路構造データ32の
トラヒックが評価されると、これが最低の回路構造デー
タ32を選択する。なお、構造生成手段21により生成
された回路構造データ32が一つの場合には、必然的に
トラヒック評価手段22による評価処理は省略されてデ
ータ選択手段23は一つの回路構造データ32をスルー
する。
【0065】データ出力手段24は、RAM104等に
設定された制御プログラムに対応して動作するCPU1
01が、ディスプレイ112や通信I/F113による
データ出力、HDD105やFDD107によるデータ
書込、などを動作制御することにより、構造生成手段2
1により生成されてデータ選択手段23により選択され
た回路構造データ32を出力する。
【0066】上述のような各種手段11〜24は、必要
により通信I/F113やFDD107等のハードウェ
アを利用して実現されるが、その主体はRAM104等
の情報記憶媒体に格納されたソフトウェアに対応して、
ハードウェアからなるコンピュータであるCPU101
が動作することにより実現されている。
【0067】このようなソフトウェアは、例えば、FD
D107やキーボード110等から入力される多数の要
素データをHDD105やRAM104等に保存するこ
と、FDD107やキーボード110等による動作記述
言語30のデータ入力を受け付けること、データ入力さ
れた動作記述言語30を構文解析してPAD31を生成
すること、PAD31を整理してCDFGを生成するこ
と、PAD31から配列宣言ごとに配列変数を個々に検
索して被アクセスの局所性を検出すること、CDFGを
動作ステップごとにスケジューリングするとともに、ス
ケジューリングされる制御記述グラフに各種の要素デー
タを動作ステップごとに選択的にバインディングするこ
と、このように制御記述グラフに要素データをバインデ
ィングするときに、被アクセスの局所性が高い配列変数
の部分が内部RAM38,39の要素データにバインデ
ィングされるとともに、局所性が低い配列変数の部分が
外部RAM36の要素データにバインディングされるよ
うにすること、スケジューリングされるとともに要素デ
ータがバインディングされた制御記述グラフから、FS
Mを生成するとともに要素配列データを生成すること、
要素配列データの要素データをFSMに対応した構造に
接続して回路構造データ32を生成すること、このよう
に生成された回路構造データ32が複数の場合に各々の
外部バス37のトラヒックを評価すること、このように
評価されたトラヒックが最低の回路構造データ32を選
択すること、選択された回路構造データ32を通信I/
F113やFDD107等によりデータ出力すること、
等の処理動作をCPU101等に実行させるための制御
プログラムとしてRAM104等の情報記憶媒体に格納
されている。
【0068】上述のような構成において、本実施の形態
の回路設計装置100による回路設計方法を、図6のフ
ローチャートを参照して以下に順番に説明する。まず、
本実施の形態の回路設計装置100は集積回路装置の設
計に利用されるので、作業者は設計する集積回路装置の
各種のハードウェア要素に対応した多数の要素データ
を、データ記憶手段11に事前に登録しておく。
【0069】このような状態で、図3に示すように、作
業者は設計する集積回路装置の各種動作が配列変数など
で記述された動作記述言語30を手作業で作成し、この
動作記述言語30を回路設計装置100のキーボード1
10やFDD107により言語入力手段12にデータ入
力する(ステップS1)。
【0070】すると、この回路設計装置100では、デ
ータ入力された動作記述言語30がPAD生成手段13
により解析され、ハードウェア要素の順序依存関係が木
構造で表現された第一の制御記述グラフとしてPAD3
1が生成され(ステップS2)、このPAD31から局所
性検出手段15により配列宣言ごとに配列変数が個々に
検索され、これらの配列変数の各々で関数に使用される
回数が積算されて被アクセスの局所性が検出される(ス
テップS3)。
【0071】また、上述のように生成されたPAD31
はCDFG生成手段14により整理され、ハードウェア
要素の順序依存関係が二次元的に表現された第二の制御
記述グラフとしてCDFGが生成される(ステップS
4)。なお、本実施の形態では上述のようにPAD31
から局所性を検出する処理動作と、PAD31からCD
FGを生成する処理動作とを、この順番で実行すること
を例示しているが、これらの処理動作は順番が反対でも
良く同時に並列処理しても良い。
【0072】つぎに、CDFGはグラフスケジューリン
グ手段16により動作ステップごとにスケジューリング
されるとともに、このスケジューリングされるCDFG
に要素割付手段17により各種の要素データが動作ステ
ップごとに選択的にバインディングされる(ステップS
5)。
【0073】ただし、このようにCDFGに要素データ
がバインディングされるとき、割付制御手段18により
要素割付手段17が動作制御されるので、被アクセスの
局所性が高い配列変数の部分は内部RAM38,39の
要素データにバインディングされ、局所性が低い配列変
数の部分は外部RAM36の要素データにバインディン
グされる。
【0074】つぎに、スケジューリングされるとともに
要素データがバインディングされたCDFGから、FS
M生成手段19により集積回路装置の各種状態を順番に
表現したFSMが生成され(ステップS6)、配列生成手
段20により要素データが二次元的に配列された要素配
列データが生成される(ステップS7)。なお、これらの
処理動作も順番は反対でも同時でも良い。
【0075】つぎに、要素配列データの要素データが構
造生成手段21によりFSMに対応した構造に接続さ
れ、集積回路装置の構造を反映した回路構造データ32
が生成され(ステップS8)、このように生成される回路
構造データ32が単数か複数かが判定される(ステップ
S9)。なお、この個数の判定はスケジューリングの処
理段階で実行することも可能である。
【0076】そして、判定された回路構造データ32の
個数が複数の場合、トラヒック評価手段22により複数
の回路構造データ32の各々で外部バス37のトラヒッ
クが評価され(ステップS10)、この評価されたトラヒ
ックが最低の回路構造データ32がデータ選択手段23
により選択される(ステップS11)。
【0077】このようにデータ選択手段23により選択
された一つの回路構造データ32や、構造生成手段21
により生成された時点で一つの回路構造データ32は、
データ出力手段24によりディスプレイ112やFDD
107にデータ出力される(ステップS12)。
【0078】このように回路構造データ32は作業者に
データ出力されるので、例えば、作業者は回路構造デー
タ32の内容を確認して所望により手作業で修正するよ
うなこともでき、回路構造データ32をCAD(Comput
er Aidid Design)データとしてCAM(Computer
Aidid Manufacturing)にデータ供給し、集積回路装
置を製造するようなことも可能である。
【0079】本実施の形態の回路設計装置100の回路
設計方法では、上述のように作業者が手作業で作成した
アルゴリズム的な動作記述言語30から集積回路装置の
構造を反映した回路構造データ32を自動的に作成でき
るので、集積回路装置を設計する作業者の負担を軽減す
ることができる。
【0080】その場合、本実施の形態の回路設計装置1
00の回路設計方法では、動作記述言語30から回路構
造データ32を生成する過程で、従来と同様にCDFG
に要素データをバインディングする。しかし、このとき
に配列変数の被アクセスの局所性を検出し、この局所性
が高い配列変数の部分を内部RAM38,39の要素デ
ータにバインディングし、局所性が低い配列変数の部分
は外部RAM36の要素データにバインディングする。
【0081】このため、本実施の形態の回路設計装置1
00の回路設計方法では、回路構造データ32に膨大な
個数のレジスタの要素データが設定されることがなく、
データ保存が的確に実行されるように内部RAM38,
39や外部RAM36の要素データが設定される。
【0082】従って、この回路構造データ32に基づい
て集積回路装置を製造した場合、この集積回路装置は膨
大な個数のレジスタが内蔵されることがなく、各種デー
タが内部RAM38,39や外部RAM36で的確に保
存されるので、必要最小限の回路規模で製造することが
可能である。
【0083】例えば、図1に示すように、データ保持の
配列変数として“arrayQ,arrayR”が存在し、被アク
セスの回数が“arrayQ=2,arrayR=1”の場合、図
5(a)に示すように、被アクセスの局所性が高い“arra
yR”の部分は内部RAM38,39にバインディング
され、局所性が低い“arrayQ”の部分は外部RAM3
6にバインディングされる。
【0084】さらに、本実施の形態の回路設計装置10
0の回路設計方法では、回路構造データ32が複数の場
合には外部バス37のトラヒックが最低の一つが選択さ
れるので、多数の回路ブロック33〜35と外部RAM
36とを接続する外部バス37の輻輳が防止された構造
の回路構造データ32を生成することができる。
【0085】例えば、図1に示すように、データ保持の
配列変数として“arrayP,arrayQ,arrayR”が存在
し、被アクセスの回数が“arrayP=1,arrayQ=2,
arrayR=1”であり、集積回路装置の制約として内部
RAM38,39が配列変数の一つ分しか使用できない
場合も想定できる。
【0086】このような場合、局所性が低い“array
Q”の部分は外部RAM36にバインディングされる
が、図5(a)(b)に示すように、局所性のみに着目する
と“arrayP,arrayR”を内部RAM38,39と外部
RAM36とに一つずつバインディングした二種類の回
路構造データ32a,32bが生成される。
【0087】しかし、このような場合でも、本実施の形
態の回路設計装置100の回路設計方法では、上述のよ
うに回路構造データ32が複数の場合には外部バス37
のトラヒックが最低の一つが選択されるので、作業者の
負担を増加させることなく最良の一つの回路構造データ
32を自動的に生成することができる。
【0088】特に、トラヒック評価手段22は、外部バ
ス37を使用しないハードウェア要素の個数と外部バス
37の使用の待機時間とからトラヒックを評価するの
で、外部バス37のトラヒックを簡単な処理で的確に評
価することができ、最良の回路構造データ32を容易に
選出することができる。
【0089】また、本実施の形態の回路設計装置100
の回路設計方法では、上述のように動作記述言語30か
ら第一第二の制御記述グラフとしてPAD31とCDF
Gとを順番に生成し、PAD31から配列変数の被アク
セスの局所性を検出し、CDFGに対してスケジューリ
ングやバインディングを実行するので、被アクセスの局
所性の検出やスケジューリングおよびバインディングな
どの処理を簡単かつ的確に実行することができる。
【0090】特に、本実施の形態の回路設計装置100
の回路設計方法では、PAD31から配列宣言ごとに配
列変数を個々に探索し、この配列変数の各々で関数に使
用される回数を積算し、この回数の多少を配列変数の被
アクセスの局所性として検出するので、被アクセスの局
所性を簡単な処理で的確に検出することができる。
【0091】なお、本発明は上記形態に限定されるもの
ではなく、その要旨を逸脱しない範囲で各種の変形を許
容する。例えば、上記形態では従来と同様な手法でCD
FGに要素データをバインディングして回路構造データ
32を生成し、この回路構造データ32で外部バス37
のトラヒックを評価することを例示した。
【0092】しかし、外部バス37を使用した外部RA
M36へのデータライトやデータリードなどのアクセス
を、ハードウェア要素に模擬して外部アクセスの要素デ
ータ40,41とし、これを一般的なハードウェア要素
に対応した要素データ42とともにデータ記憶手段11
に登録しておき、図7に示すように、CDFG43に要
素データ40〜42をバインディングした時点で外部バ
ス37のトラヒックを評価することも可能である。
【0093】この場合、回路構造データ32でトラヒッ
ク評価を実行する場合に比較して、要素データ40〜4
2の初期設定やバインディング処理の負担の増大は懸念
されるが、回路構造データ32は一つのみ生成すれば良
いので、この処理の負担を軽減することができる。つま
り、上述した二つの手法は相互に一長一短が存在するの
で、これらは装置の仕様などの各種条件を考慮して所望
の一方を選択することが好ましい。
【0094】また、上記形態ではグラフスケジューリン
グ手段16によるスケジューリング結果が複数の場合
に、構造生成手段21により複数の回路構造データ32
を完全な状態に生成し、各々のトラヒックをトラヒック
評価手段22により評価することを想定した。
【0095】しかし、グラフスケジューリング手段16
によるスケジューリング結果が複数の場合に、構造生成
手段21により生成する複数の回路構造データ32を、
トラヒック評価手段22によるトラヒック評価が可能な
程度に簡略化した形態とし、トラヒック評価が最低とし
て選択された一つの回路構造データ32を構造生成手段
21により完全な形態に完成させることも可能である。
【0096】また、上記形態ではRAM104等にソフ
トウェアとして格納されている制御プログラムに従って
CPU101が動作することにより、回路設計装置10
0の各種手段11〜24が論理的に実現されることを例
示した。しかし、このような各種手段11〜24の各々
を固有のハードウェアとして形成することも可能であ
り、一部をソフトウェアとしてRAM104等に格納す
るとともに一部をハードウェアとして形成することも可
能である。
【0097】また、上記形態では回路設計装置100の
起動時にHDD105に事前に格納されているソフトウ
ェアがRAM104に複写され、このようにRAM10
4に格納されたソフトウェアをCPU101が読み取る
ことを想定したが、このようなソフトウェアをHDD1
05に格納したままCPU101に利用させることや、
ROM103に事前に固定的に格納しておくことも可能
である。
【0098】さらに、単体で取り扱える情報記憶媒体で
あるFD106やCD−ROM108等にソフトウェア
を格納しておき、このFD106等からRAM104等
にソフトウェアをインストールすることも可能である
が、このようなインストールを実行することなくFD1
06等からCPU101がソフトウェアを直接に読み取
って処理動作を実行することも可能である。
【0099】つまり、本発明の回路設計装置100の各
種手段11〜24をソフトウェアにより実現する場合、
そのソフトウェアはCPU101が読み取って対応する
動作を実行できる状態に有れば良い。また、上述のよう
な各種手段11〜24を実現する制御プログラムを、複
数のソフトウェアの組み合わせで形成することも可能で
あり、その場合、単体の製品となる情報記憶媒体には、
本発明の回路設計装置100を実現するための必要最小
限のソフトウェアのみを格納しておけば良い。
【0100】例えば、既存のオペレーティングシステム
が実装されている回路設計装置100に、CD−ROM
108等の情報記憶媒体によりアプリケーションソフト
を提供するような場合、本発明の回路設計装置100の
各種手段を実現するソフトウェアは、アプリケーション
ソフトとオペレーティングシステムとの組み合わせで実
現されるので、オペレーティングシステムに依存する部
分のソフトウェアは情報記憶媒体のアプリケーションソ
フトから省略することができる。
【0101】また、このように情報記憶媒体に記述した
ソフトウェアをCPU101に供給する手法は、その情
報記憶媒体を回路設計装置100に直接に装填すること
に限定されない。例えば、上述のようなソフトウェアを
ホストコンピュータの情報記憶媒体に格納しておき、こ
のホストコンピュータを通信ネットワークで端末コンピ
ュータに接続し、ホストコンピュータから端末コンピュ
ータにデータ通信でソフトウェアを供給することも可能
である。
【0102】上述のような場合、端末コンピュータが自
信の情報記憶媒体にソフトウェアをダウンロードした状
態でスタンドアロンの処理動作を実行することも可能で
あるが、ソフトウェアをダウンロードすることなくホス
トコンピュータとのリアルタイムのデータ通信により処
理動作を実行することも可能である。この場合、ホスト
コンピュータと端末コンピュータとを通信ネットワーク
で接続したシステム全体が、本発明の回路設計装置10
0に相当することになる。
【0103】
【発明の効果】本発明は以上説明したように構成されて
いるので、以下に記載するような効果を奏する。
【0104】請求項1記載の発明の回路設計方法は、各
種のハードウェア要素に対応した多数の要素データを事
前に登録しておき、設計する集積回路装置の各種動作が
配列変数などで記述された動作記述言語を解析してハー
ドウェア要素の順序依存関係が表現された制御記述グラ
フを生成し、この制御記述グラフから配列変数ごとに被
アクセスの局所性を検出し、制御記述グラフを動作ステ
ップごとにスケジューリングし、このスケジューリング
される制御記述グラフに各種の要素データを動作ステッ
プごとに選択的に割り付け、この要素データを制御記述
グラフに割り付けるときに局所性が高い配列変数の部分
を内部メモリの要素データに割り付けるとともに局所性
が低い配列変数の部分を外部メモリの要素データに割り
付けるようにしたことにより、動作記述言語の配列変数
の被アクセスの局所性に対応して制御記述グラフに外部
メモリや内部メモリの要素データが割り付けられるの
で、集積回路装置が膨大な個数のレジスタを内蔵するこ
となく必要最小限の回路規模で形成されるように制御記
述グラフを生成することができ、集積回路装置のデータ
保持が回路ブロックの内部や外部のメモリで的確に実行
されるように制御記述グラフを生成することができる。
【0105】請求項2記載の発明の回路設計方法は、各
種のハードウェア要素に対応した多数の要素データを事
前に登録しておき、設計する集積回路装置の各種動作が
配列変数などで記述された動作記述言語を解析してハー
ドウェア要素の順序依存関係が表現された制御記述グラ
フを生成し、この制御記述グラフから配列変数ごとに被
アクセスの局所性を検出し、制御記述グラフを動作ステ
ップごとにスケジューリングし、このスケジューリング
される制御記述グラフに各種の要素データを動作ステッ
プごとに選択的に割り付け、この要素データを制御記述
グラフに割り付けるときに局所性が高い配列変数の部分
を内部メモリの要素データに割り付けるとともに局所性
が低い配列変数の部分を外部メモリの要素データに割り
付け、スケジューリングされた制御記述グラフから集積
回路装置の各種状態を順番に表現したFSMを生成し、
要素データが割り付けられた制御記述グラフから要素デ
ータが二次元的に配列された要素配列データを生成し、
この要素配列データの要素データをFSMに対応した構
造に接続して集積回路装置の構造を反映した回路構造デ
ータを生成するようにしたことにより、動作記述言語の
配列変数の被アクセスの局所性に対応して回路構造デー
タに外部メモリや内部メモリの要素データが設定される
ので、集積回路装置が膨大な個数のレジスタを内蔵する
ことなく必要最小限の回路規模で形成されるように回路
構造データを生成することができ、集積回路装置のデー
タ保持が回路ブロックの内部や外部のメモリで的確に実
行されるように回路構造データを生成することができ
る。
【0106】請求項3記載の発明の回路設計方法は、各
種のハードウェア要素に対応した多数の要素データを事
前に登録しておき、設計する集積回路装置の各種動作が
配列変数などで記述された動作記述言語を解析してハー
ドウェア要素の順序依存関係が表現された制御記述グラ
フを生成し、この制御記述グラフから配列変数ごとに被
アクセスの局所性を検出し、制御記述グラフを動作ステ
ップごとにスケジューリングし、このスケジューリング
される制御記述グラフに各種の要素データを動作ステッ
プごとに選択的に割り付け、この要素データを制御記述
グラフに割り付けるときに局所性が高い配列変数の部分
を内部メモリの要素データに割り付けるとともに局所性
が低い配列変数の部分を外部メモリの要素データに割り
付け、スケジューリングされた制御記述グラフから集積
回路装置の各種状態を順番に表現したFSMを生成し、
要素データが割り付けられた制御記述グラフから要素デ
ータが二次元的に配列された要素配列データを生成し、
この要素配列データの要素データをFSMに対応した構
造に接続して集積回路装置の構造を反映した回路構造デ
ータを生成し、この回路構造データが複数の場合に各々
の外部バスのトラヒックを評価し、このトラヒックの評
価が最低の回路構造データを選択するようにしたことに
より、動作記述言語の配列変数の被アクセスの局所性に
対応して回路構造データに外部メモリや内部メモリの要
素データが設定されるので、集積回路装置が膨大な個数
のレジスタを内蔵することなく必要最小限の回路規模で
形成されるように回路構造データを生成することがで
き、集積回路装置のデータ保持が回路ブロックの内部や
外部のメモリで的確に実行されるように回路構造データ
を生成することができ、特に、複数の回路構造データか
ら外部バスのトラヒックが最低の一つが選択されるの
で、集積回路装置の外部バスの輻輳が防止されるように
回路構造データを生成することができる。
【0107】請求項4記載の発明の回路設計方法は、各
種のハードウェア要素に対応した多数の要素データとと
もに、外部バスを使用した外部メモリのアクセスをハー
ドウェア要素に模擬した外部アクセスの要素データを事
前に登録しておき、設計する集積回路装置の各種動作が
配列変数などで記述された動作記述言語を解析してハー
ドウェア要素の順序依存関係が表現された制御記述グラ
フを生成し、この制御記述グラフから配列変数ごとに被
アクセスの局所性を検出し、制御記述グラフを動作ステ
ップごとにスケジューリングし、このスケジューリング
される制御記述グラフに各種の要素データを動作ステッ
プごとに選択的に割り付け、この要素データを制御記述
グラフに割り付けるときに局所性が高い配列変数の部分
を内部メモリの要素データに割り付けるとともに局所性
が低い配列変数の部分を前記外部アクセスの要素データ
に割り付け、スケジューリングされた制御記述グラフが
複数の場合に要素データが割り付けられた制御記述グラ
フの外部アクセスの要素データにより外部バスのトラヒ
ックを評価し、このトラヒックが最低の制御記述グラフ
を選択するようにしたことにより、動作記述言語の配列
変数の被アクセスの局所性に対応して制御記述グラフに
外部メモリや内部メモリの要素データが設定されるの
で、集積回路装置が膨大な個数のレジスタを内蔵するこ
となく必要最小限の回路規模で形成されるように制御記
述グラフを生成することができ、集積回路装置のデータ
保持が回路ブロックの内部や外部のメモリで的確に実行
されるように制御記述グラフを生成することができ、特
に、複数の制御記述グラフから外部バスのトラヒックが
最低の一つが選択されるので、集積回路装置の外部バス
の輻輳が防止されるように制御記述グラフを生成するこ
とができる。
【0108】請求項5記載の発明の回路設計装置は、各
種のハードウェア要素に対応した多数の要素データが事
前に登録されているデータ記憶手段と、設計する集積回
路装置の各種動作が配列変数などで記述された動作記述
言語がデータ入力される言語入力手段と、該言語入力手
段にデータ入力された動作記述言語を解析してハードウ
ェア要素の順序依存関係が表現された制御記述グラフを
生成するグラフ変換手段と、該グラフ変換手段により生
成された制御記述グラフから配列変数ごとに被アクセス
の局所性を検出する局所性検出手段と、前記グラフ変換
手段により生成された制御記述グラフを動作ステップご
とにスケジューリングするグラフスケジューリング手段
と、該グラフスケジューリング手段によりスケジューリ
ングされる制御記述グラフに前記データ記憶手段に登録
されている各種の要素データを動作ステップごとに選択
的に割り付ける要素割付手段と、制御記述グラフに要素
データが割り付けられるときに前記局所性検出手段によ
り検出された局所性が高い配列変数の部分が内部メモリ
の要素データに割り付けられるとともに局所性が低い配
列変数の部分が外部メモリの要素データに割り付けられ
るように前記要素割付手段を動作制御する割付制御手段
と、を具備していることにより、動作記述言語の配列変
数の被アクセスの局所性に対応して制御記述グラフに外
部メモリや内部メモリの要素データが割り付けられるの
で、集積回路装置が膨大な個数のレジスタを内蔵するこ
となく必要最小限の回路規模で形成されるように制御記
述グラフを生成することができ、集積回路装置のデータ
保持が回路ブロックの内部や外部のメモリで的確に実行
されるように制御記述グラフを生成することができる。
【0109】請求項6記載の発明の回路設計装置は、各
種のハードウェア要素に対応した多数の要素データが事
前に登録されているデータ記憶手段と、設計する集積回
路装置の各種動作が配列変数などで記述された動作記述
言語がデータ入力される言語入力手段と、該言語入力手
段にデータ入力された動作記述言語を解析してハードウ
ェア要素の順序依存関係が表現された制御記述グラフを
生成するグラフ変換手段と、該グラフ変換手段により生
成された制御記述グラフから配列変数ごとに被アクセス
の局所性を検出する局所性検出手段と、前記グラフ変換
手段により生成された制御記述グラフを動作ステップご
とにスケジューリングするグラフスケジューリング手段
と、該グラフスケジューリング手段によりスケジューリ
ングされる制御記述グラフに前記データ記憶手段に登録
されている各種の要素データを動作ステップごとに選択
的に割り付ける要素割付手段と、制御記述グラフに要素
データが割り付けられるときに前記局所性検出手段によ
り検出された局所性が高い配列変数の部分が内部メモリ
の要素データに割り付けられるとともに局所性が低い配
列変数の部分が外部メモリの要素データに割り付けられ
るように前記要素割付手段を動作制御する割付制御手段
と、前記グラフスケジューリング手段によりスケジュー
リングされた制御記述グラフから集積回路装置の各種状
態を順番に表現したFSMを生成するFSM生成手段
と、前記割付制御手段により動作制御された前記要素割
付手段により要素データが割り付けられた制御記述グラ
フから要素データが二次元的に配列された要素配列デー
タを生成する配列生成手段と、該配列生成手段により生
成された要素配列データの要素データを前記FSM生成
手段により生成されたFSMに対応した構造に接続して
集積回路装置の構造を反映した回路構造データを生成す
る構造生成手段と、を具備していることにより、動作記
述言語の配列変数の被アクセスの局所性に対応して回路
構造データに外部メモリや内部メモリの要素データが設
定されるので、集積回路装置が膨大な個数のレジスタを
内蔵することなく必要最小限の回路規模で形成されるよ
うに回路構造データを生成することができ、集積回路装
置のデータ保持が回路ブロックの内部や外部のメモリで
的確に実行されるように回路構造データを生成すること
ができる。
【0110】請求項7記載の発明の回路設計装置は、各
種のハードウェア要素に対応した多数の要素データが事
前に登録されているデータ記憶手段と、設計する集積回
路装置の各種動作が配列変数などで記述された動作記述
言語がデータ入力される言語入力手段と、該言語入力手
段にデータ入力された動作記述言語を解析してハードウ
ェア要素の順序依存関係が表現された制御記述グラフを
生成するグラフ変換手段と、該グラフ変換手段により生
成された制御記述グラフから配列変数ごとに被アクセス
の局所性を検出する局所性検出手段と、前記グラフ変換
手段により生成された制御記述グラフを動作ステップご
とにスケジューリングするグラフスケジューリング手段
と、該グラフスケジューリング手段によりスケジューリ
ングされる制御記述グラフに前記データ記憶手段に登録
されている各種の要素データを動作ステップごとに選択
的に割り付ける要素割付手段と、制御記述グラフに要素
データが割り付けられるときに前記局所性検出手段によ
り検出された局所性が高い配列変数の部分が内部メモリ
の要素データに割り付けられるとともに局所性が低い配
列変数の部分が外部メモリの要素データに割り付けられ
るように前記要素割付手段を動作制御する割付制御手段
と、前記グラフスケジューリング手段によりスケジュー
リングされた制御記述グラフから集積回路装置の各種状
態を順番に表現したFSMを生成するFSM生成手段
と、前記割付制御手段により動作制御された前記要素割
付手段により要素データが割り付けられた制御記述グラ
フから要素データが二次元的に配列された要素配列デー
タを生成する配列生成手段と、該配列生成手段により生
成された要素配列データの要素データを前記FSM生成
手段により生成されたFSMに対応した構造に接続して
集積回路装置の構造を反映した回路構造データを生成す
る構造生成手段と、該構造生成手段により生成された回
路構造データが複数の場合に各々の外部バスのトラヒッ
クを評価するトラヒック評価手段と、該トラヒック評価
手段により評価されたトラヒックが最低の回路構造デー
タを選択するデータ選択手段と、を具備していることに
より、動作記述言語の配列変数の被アクセスの局所性に
対応して回路構造データに外部メモリや内部メモリの要
素データが設定されるので、集積回路装置が膨大な個数
のレジスタを内蔵することなく必要最小限の回路規模で
形成されるように回路構造データを生成することがで
き、集積回路装置のデータ保持が回路ブロックの内部や
外部のメモリで的確に実行されるように回路構造データ
を生成することができ、特に、複数の回路構造データか
ら外部バスのトラヒックが最低の一つが選択されるの
で、集積回路装置の外部バスの輻輳が防止されるように
回路構造データを生成することができる。
【0111】請求項8記載の発明の回路設計装置は、各
種のハードウェア要素に対応した多数の要素データとと
もに、外部バスを使用した外部メモリのアクセスをハー
ドウェア要素に模擬した外部アクセスの要素データが事
前に登録されているデータ記憶手段と、設計する集積回
路装置の各種動作が配列変数などで記述された動作記述
言語がデータ入力される言語入力手段と、該言語入力手
段にデータ入力された動作記述言語を解析してハードウ
ェア要素の順序依存関係が表現された制御記述グラフを
生成するグラフ変換手段と、該グラフ変換手段により生
成された制御記述グラフから配列変数ごとに被アクセス
の局所性を検出する局所性検出手段と、前記グラフ変換
手段により生成された制御記述グラフを動作ステップご
とにスケジューリングするグラフスケジューリング手段
と、該グラフスケジューリング手段によりスケジューリ
ングされる制御記述グラフに前記データ記憶手段に登録
されている各種の要素データを動作ステップごとに選択
的に割り付ける要素割付手段と、制御記述グラフに要素
データが割り付けられるときに前記局所性検出手段によ
り検出された局所性が高い配列変数の部分が内部メモリ
の要素データに割り付けられるとともに局所性が低い配
列変数の部分が前記外部アクセスの要素データに割り付
けられるように前記要素割付手段を動作制御する割付制
御手段と、前記グラフスケジューリング手段によりスケ
ジューリングされた制御記述グラフが複数の場合に前記
割付制御手段により動作制御された前記要素割付手段に
より要素データが割り付けられた制御記述グラフの外部
アクセスの要素データにより外部バスのトラヒックを評
価するトラヒック評価手段と、該トラヒック評価手段に
より評価されたトラヒックが最低の回路構造データを選
択するデータ選択手段と、を具備していることにより、
動作記述言語の配列変数の被アクセスの局所性に対応し
て制御記述グラフに外部メモリや内部メモリの要素デー
タが割り付けられるので、集積回路装置が膨大な個数の
レジスタを内蔵することなく必要最小限の回路規模で形
成されるように制御記述グラフを生成することができ、
集積回路装置のデータ保持が回路ブロックの内部や外部
のメモリで的確に実行されるように制御記述グラフを生
成することができ、特に、複数の制御記述グラフから外
部バスのトラヒックが最低の一つが選択されるので、集
積回路装置の外部バスの輻輳が防止されるように制御記
述グラフを生成することができる。
【0112】請求項9記載の発明は、請求項7記載の回
路設計装置であって、前記トラヒック評価手段は、外部
バスを使用しないハードウェア要素の個数と外部バスの
使用の待機時間とからトラヒックを評価することによ
り、外部バスのトラヒックを簡単な処理で的確に評価す
ることができる。
【0113】請求項10記載の発明は、請求項5ないし
9の何れか一記載の回路設計装置であって、前記グラフ
変換手段は、動作記述言語を構文解析して配列変数の順
序依存関係が木構造で表現された第一の制御記述グラフ
であるPADを生成してから、このPADを整理してハ
ードウェア要素の順序依存関係が二次元的に表現された
第二の制御記述グラフであるCDFGを生成し、前記局
所性検出手段は、前記グラフ変換手段により生成された
PADから配列変数ごとに被アクセスの局所性を検出
し、前記グラフスケジューリング手段は、前記グラフ変
換手段により生成されたCDFGを動作ステップごとに
スケジューリングすることにより、被アクセスの局所性
の検出やスケジューリングを簡単な処理で的確に実行す
ることができる。
【0114】請求項11記載の発明は、請求項10記載
の回路設計装置であって、前記局所性検出手段は、PA
Dから配列宣言ごとに配列変数を個々に探索し、この配
列変数の各々で関数に使用される回数を積算し、この回
数の多少を配列変数の被アクセスの局所性として検出す
ることにより、動作記述言語の配列変数の局所性を簡単
な処理で的確に検出することができる。
【0115】請求項12記載の発明の情報記憶媒体は、
各種のハードウェア要素に対応した多数の要素データを
保存すること、設計する集積回路装置の各種動作が配列
変数などで記述された動作記述言語のデータ入力を受け
付けること、データ入力された動作記述言語を解析して
ハードウェア要素の順序依存関係が表現された制御記述
グラフを生成すること、この制御記述グラフから配列変
数ごとに被アクセスの局所性を検出すること、制御記述
グラフを動作ステップごとにスケジューリングするこ
と、このスケジューリングされる制御記述グラフに各種
の要素データを動作ステップごとに選択的に割り付ける
こと、この要素データを制御記述グラフに割り付けると
きに局所性が高い配列変数の部分を内部メモリの要素デ
ータに割り付けるとともに局所性が低い配列変数の部分
を外部メモリの要素データに割り付けること、を前記コ
ンピュータに実行させるためのプログラムが格納されて
いることにより、本発明の情報記憶媒体のプログラムを
コンピュータに読み取らせて対応する処理動作を実行さ
せると、動作記述言語の配列変数の被アクセスの局所性
に対応して制御記述グラフに外部メモリや内部メモリの
要素データが割り付けられるので、集積回路装置が膨大
な個数のレジスタを内蔵することなく必要最小限の回路
規模で形成されるように制御記述グラフを生成すること
ができ、集積回路装置のデータ保持が回路ブロックの内
部や外部のメモリで的確に実行されるように制御記述グ
ラフを生成することができる。
【0116】請求項13記載の発明の情報記憶媒体は、
各種のハードウェア要素に対応した多数の要素データを
保存すること、設計する集積回路装置の各種動作が配列
変数などで記述された動作記述言語のデータ入力を受け
付けること、データ入力された動作記述言語を解析して
ハードウェア要素の順序依存関係が表現された制御記述
グラフを生成すること、この制御記述グラフから配列変
数ごとに被アクセスの局所性を検出すること、制御記述
グラフを動作ステップごとにスケジューリングするこ
と、このスケジューリングされる制御記述グラフに各種
の要素データを動作ステップごとに選択的に割り付ける
こと、この要素データを制御記述グラフに割り付けると
きに局所性が高い配列変数の部分を内部メモリの要素デ
ータに割り付けるとともに局所性が低い配列変数の部分
を外部メモリの要素データに割り付けること、スケジュ
ーリングされた制御記述グラフから集積回路装置の各種
状態を順番に表現したFSMを生成すること、要素デー
タが割り付けられた制御記述グラフから要素データが二
次元的に配列された要素配列データを生成すること、こ
の要素配列データの要素データをFSMに対応した構造
に接続して集積回路装置の構造を反映した回路構造デー
タを生成すること、を前記コンピュータに実行させるた
めのプログラムが格納されていることにより、本発明の
情報記憶媒体のプログラムをコンピュータに読み取らせ
て対応する処理動作を実行させると、動作記述言語の配
列変数の被アクセスの局所性に対応して回路構造データ
に外部メモリや内部メモリの要素データが設定されるの
で、集積回路装置が膨大な個数のレジスタを内蔵するこ
となく必要最小限の回路規模で形成されるように回路構
造データを生成することができ、集積回路装置のデータ
保持が回路ブロックの内部や外部のメモリで的確に実行
されるように回路構造データを生成することができる。
【0117】請求項14記載の発明の情報記憶媒体は、
各種のハードウェア要素に対応した多数の要素データを
保存すること、設計する集積回路装置の各種動作が配列
変数などで記述された動作記述言語のデータ入力を受け
付けること、データ入力された動作記述言語を解析して
ハードウェア要素の順序依存関係が表現された制御記述
グラフを生成すること、この制御記述グラフから配列変
数ごとに被アクセスの局所性を検出すること、制御記述
グラフを動作ステップごとにスケジューリングするこ
と、このスケジューリングされる制御記述グラフに各種
の要素データを動作ステップごとに選択的に割り付ける
こと、この要素データを制御記述グラフに割り付けると
きに局所性が高い配列変数の部分を内部メモリの要素デ
ータに割り付けるとともに局所性が低い配列変数の部分
を外部メモリの要素データに割り付けること、スケジュ
ーリングされた制御記述グラフから集積回路装置の各種
状態を順番に表現したFSMを生成すること、要素デー
タが割り付けられた制御記述グラフから要素データが二
次元的に配列された要素配列データを生成すること、こ
の要素配列データの要素データをFSMに対応した構造
に接続して集積回路装置の構造を反映した回路構造デー
タを生成すること、この回路構造データが複数の場合に
各々の外部バスのトラヒックを評価すること、このトラ
ヒックの評価が最低の回路構造データを選択すること、
を前記コンピュータに実行させるためのプログラムが格
納されていることにより、本発明の情報記憶媒体のプロ
グラムをコンピュータに読み取らせて対応する処理動作
を実行させると、動作記述言語の配列変数の被アクセス
の局所性に対応して回路構造データに外部メモリや内部
メモリの要素データが設定されるので、集積回路装置が
膨大な個数のレジスタを内蔵することなく必要最小限の
回路規模で形成されるように回路構造データを生成する
ことができ、集積回路装置のデータ保持が回路ブロック
の内部や外部のメモリで的確に実行されるように回路構
造データを生成することができ、特に、複数の回路構造
データから外部バスのトラヒックが最低の一つが選択さ
れるので、集積回路装置の外部バスの輻輳が防止される
ように回路構造データを生成することができる。
【0118】請求項15記載の発明の情報記憶媒体は、
各種のハードウェア要素に対応した多数の要素データと
ともに、外部バスを使用した外部メモリのアクセスをハ
ードウェア要素に模擬した外部アクセスの要素データを
保存すること、設計する集積回路装置の各種動作が配列
変数などで記述された動作記述言語のデータ入力を受け
付けること、データ入力された動作記述言語を解析して
ハードウェア要素の順序依存関係が表現された制御記述
グラフを生成すること、この制御記述グラフから配列変
数ごとに被アクセスの局所性を検出すること、制御記述
グラフを動作ステップごとにスケジューリングするこ
と、このスケジューリングされる制御記述グラフに各種
の要素データを動作ステップごとに選択的に割り付ける
こと、この要素データを制御記述グラフに割り付けると
きに局所性が高い配列変数の部分を内部メモリの要素デ
ータに割り付けるとともに局所性が低い配列変数の部分
を前記外部アクセスの要素データに割り付けること、ス
ケジューリングされた制御記述グラフが複数の場合に要
素データが割り付けられた制御記述グラフの外部アクセ
スの要素データにより外部バスのトラヒックを評価する
こと、この評価されたトラヒックが最低の制御記述グラ
フを選択すること、を前記コンピュータに実行させるた
めのプログラムが格納されていることにより、本発明の
情報記憶媒体のプログラムをコンピュータに読み取らせ
て対応する処理動作を実行させると、動作記述言語の配
列変数の被アクセスの局所性に対応して制御記述グラフ
に外部メモリや内部メモリの要素データが設定されるの
で、集積回路装置が膨大な個数のレジスタを内蔵するこ
となく必要最小限の回路規模で形成されるように制御記
述グラフを生成することができ、集積回路装置のデータ
保持が回路ブロックの内部や外部のメモリで的確に実行
されるように制御記述グラフを生成することができ、特
に、複数の制御記述グラフから外部バスのトラヒックが
最低の一つが選択されるので、集積回路装置の外部バス
の輻輳が防止されるように制御記述グラフを生成するこ
とができる。
【図面の簡単な説明】
【図1】本発明の実施の一形態の回路設計装置の論理的
構造を示す模式図である。
【図2】回路設計装置の物理的構造を示すブロック図で
ある。
【図3】動作記述言語を示す模式図である。
【図4】第一の制御記述グラフであるPADを示す模式
図である。
【図5】回路構造データを示す模式図である。
【図6】回路設計装置による回路設計方法を示すフロー
チャートである。
【図7】一変形例の回路設計装置の回路設計方法による
第二の制御記述グラフであるCDFGを示す模式図であ
る。
【図8】一従来例での動作記述言語を示す模式図であ
る。
【図9】CDFGを示す模式図である。
【図10】スケジューリングされてバインディングされ
たCDFGを示す模式図である。
【図11】回路構造データを示す模式図である。
【符号の説明】
11 データ記憶手段 12 言語入力手段 13 第一のグラフ生成手段であるPAD生成手段 14 第二のグラフ生成手段であるCDFG生成手段 15 局所性検出手段 16 グラフスケジューリング手段 17 要素割付手段 18 割付制御手段 19 FSM生成手段 20 配列生成手段 21 構造生成手段 22 トラヒック評価手段 23 データ選択手段 24 データ出力手段 30 動作記述言語 31 第一の制御記述グラフであるPAD 32 回路構造データ 33〜35 回路ブロック 36 外部メモリ 37 外部バス 38,39 内部メモリ 40,41 外部アクセスの要素データ 42 ハードウェアの要素データ 43 第二の制御記述グラフであるCDFG 100 回路設計装置 101 コンピュータであるCPU 103 情報記憶媒体であるROM 104 情報記憶媒体であるRAM 105 情報記憶媒体であるHDD 106 情報記憶媒体であるFD 108 情報記憶媒体であるCD−ROM
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 17/50 G06F 9/44

Claims (15)

    (57)【特許請求の範囲】
  1. 【請求項1】 少なくとも一つが内部メモリである各種
    のハードウェア要素が内部バスで相互に接続された内部
    構造の回路ブロックが、ハードウェア要素の一つである
    外部メモリと外部バスで相互に接続された集積回路装置
    を設計する回路設計方法であって、 各種のハードウェア要素に対応した多数の要素データを
    事前に登録しておき、 設計する集積回路装置の各種動作が配列変数などで記述
    された動作記述言語を解析してハードウェア要素の順序
    依存関係が表現された制御記述グラフを生成し、 この制御記述グラフから配列変数ごとに被アクセスの局
    所性を検出し、 制御記述グラフを動作ステップごとにスケジューリング
    し、 このスケジューリングされる制御記述グラフに各種の要
    素データを動作ステップごとに選択的に割り付け、 この要素データを制御記述グラフに割り付けるときに局
    所性が高い配列変数の部分を内部メモリの要素データに
    割り付けるとともに局所性が低い配列変数の部分を外部
    メモリの要素データに割り付けるようにした回路設計方
    法。
  2. 【請求項2】 少なくとも一つが内部メモリである各種
    のハードウェア要素が内部バスで相互に接続された内部
    構造の回路ブロックが、ハードウェア要素の一つである
    外部メモリと外部バスで相互に接続された集積回路装置
    を設計する回路設計方法であって、 各種のハードウェア要素に対応した多数の要素データを
    事前に登録しておき、 設計する集積回路装置の各種動作が配列変数などで記述
    された動作記述言語を解析してハードウェア要素の順序
    依存関係が表現された制御記述グラフを生成し、 この制御記述グラフから配列変数ごとに被アクセスの局
    所性を検出し、 制御記述グラフを動作ステップごとにスケジューリング
    し、 このスケジューリングされる制御記述グラフに各種の要
    素データを動作ステップごとに選択的に割り付け、 この要素データを制御記述グラフに割り付けるときに局
    所性が高い配列変数の部分を内部メモリの要素データに
    割り付けるとともに局所性が低い配列変数の部分を外部
    メモリの要素データに割り付け、 スケジューリングされた制御記述グラフから集積回路装
    置の各種状態を順番に表現したFSM(Finite State
    Machine)を生成し、 要素データが割り付けられた制御記述グラフから要素デ
    ータが二次元的に配列された要素配列データを生成し、 この要素配列データの要素データをFSMに対応した構
    造に接続して集積回路装置の構造を反映した回路構造デ
    ータを生成するようにした回路設計方法。
  3. 【請求項3】 少なくとも一つが内部メモリである各種
    のハードウェア要素が内部バスで相互に接続された内部
    構造の回路ブロックが、ハードウェア要素の一つである
    外部メモリと外部バスで相互に接続された集積回路装置
    を設計する回路設計方法であって、 各種のハードウェア要素に対応した多数の要素データを
    事前に登録しておき、 設計する集積回路装置の各種動作が配列変数などで記述
    された動作記述言語を解析してハードウェア要素の順序
    依存関係が表現された制御記述グラフを生成し、 この制御記述グラフから配列変数ごとに被アクセスの局
    所性を検出し、 制御記述グラフを動作ステップごとにスケジューリング
    し、 このスケジューリングされる制御記述グラフに各種の要
    素データを動作ステップごとに選択的に割り付け、 この要素データを制御記述グラフに割り付けるときに局
    所性が高い配列変数の部分を内部メモリの要素データに
    割り付けるとともに局所性が低い配列変数の部分を外部
    メモリの要素データに割り付け、 スケジューリングされた制御記述グラフから集積回路装
    置の各種状態を順番に表現したFSMを生成し、 要素データが割り付けられた制御記述グラフから要素デ
    ータが二次元的に配列された要素配列データを生成し、 この要素配列データの要素データをFSMに対応した構
    造に接続して集積回路装置の構造を反映した回路構造デ
    ータを生成し、 この回路構造データが複数の場合に各々の外部バスのト
    ラヒックを評価し、 このトラヒックの評価が最低の回路構造データを選択す
    るようにした回路設計方法。
  4. 【請求項4】 少なくとも一つが内部メモリである各種
    のハードウェア要素が内部バスで相互に接続された内部
    構造の回路ブロックが、ハードウェア要素の一つである
    外部メモリと外部バスで相互に接続された集積回路装置
    を設計する回路設計方法であって、 各種のハードウェア要素に対応した多数の要素データと
    ともに、外部バスを使用した外部メモリのアクセスをハ
    ードウェア要素に模擬した外部アクセスの要素データを
    事前に登録しておき、 設計する集積回路装置の各種動作が配列変数などで記述
    された動作記述言語を解析してハードウェア要素の順序
    依存関係が表現された制御記述グラフを生成し、 この制御記述グラフから配列変数ごとに被アクセスの局
    所性を検出し、 制御記述グラフを動作ステップごとにスケジューリング
    し、 このスケジューリングされる制御記述グラフに各種の要
    素データを動作ステップごとに選択的に割り付け、 この要素データを制御記述グラフに割り付けるときに局
    所性が高い配列変数の部分を内部メモリの要素データに
    割り付けるとともに局所性が低い配列変数の部分を前記
    外部アクセスの要素データに割り付け、 スケジューリングされた制御記述グラフが複数の場合に
    要素データが割り付けられた制御記述グラフの外部アク
    セスの要素データにより外部バスのトラヒックを評価
    し、 この評価されたトラヒックが最低の制御記述グラフを選
    択するようにした回路設計方法。
  5. 【請求項5】 少なくとも一つが内部メモリである各種
    のハードウェア要素が内部バスで相互に接続された内部
    構造の回路ブロックが、ハードウェア要素の一つである
    外部メモリと外部バスで相互に接続された集積回路装置
    を設計する回路設計装置であって、 各種のハードウェア要素に対応した多数の要素データが
    事前に登録されているデータ記憶手段と、 設計する集積回路装置の各種動作が配列変数などで記述
    された動作記述言語がデータ入力される言語入力手段
    と、 該言語入力手段にデータ入力された動作記述言語を解析
    してハードウェア要素の順序依存関係が表現された制御
    記述グラフを生成するグラフ変換手段と、 該グラフ変換手段により生成された制御記述グラフから
    配列変数ごとに被アクセスの局所性を検出する局所性検
    出手段と、 前記グラフ変換手段により生成された制御記述グラフを
    動作ステップごとにスケジューリングするグラフスケジ
    ューリング手段と、 該グラフスケジューリング手段によりスケジューリング
    される制御記述グラフに前記データ記憶手段に登録され
    ている各種の要素データを動作ステップごとに選択的に
    割り付ける要素割付手段と、 制御記述グラフに要素データが割り付けられるときに前
    記局所性検出手段により検出された局所性が高い配列変
    数の部分が内部メモリの要素データに割り付けられると
    ともに局所性が低い配列変数の部分が外部メモリの要素
    データに割り付けられるように前記要素割付手段を動作
    制御する割付制御手段と、を具備している回路設計装
    置。
  6. 【請求項6】 少なくとも一つが内部メモリである各種
    のハードウェア要素が内部バスで相互に接続された内部
    構造の回路ブロックが、ハードウェア要素の一つである
    外部メモリと外部バスで相互に接続された集積回路装置
    を設計する回路設計装置であって、 各種のハードウェア要素に対応した多数の要素データが
    事前に登録されているデータ記憶手段と、 設計する集積回路装置の各種動作が配列変数などで記述
    された動作記述言語がデータ入力される言語入力手段
    と、 該言語入力手段にデータ入力された動作記述言語を解析
    してハードウェア要素の順序依存関係が表現された制御
    記述グラフを生成するグラフ変換手段と、 該グラフ変換手段により生成された制御記述グラフから
    配列変数ごとに被アクセスの局所性を検出する局所性検
    出手段と、 前記グラフ変換手段により生成された制御記述グラフを
    動作ステップごとにスケジューリングするグラフスケジ
    ューリング手段と、 該グラフスケジューリング手段によりスケジューリング
    される制御記述グラフに前記データ記憶手段に登録され
    ている各種の要素データを動作ステップごとに選択的に
    割り付ける要素割付手段と、 制御記述グラフに要素データが割り付けられるときに前
    記局所性検出手段により検出された局所性が高い配列変
    数の部分が内部メモリの要素データに割り付けられると
    ともに局所性が低い配列変数の部分が外部メモリの要素
    データに割り付けられるように前記要素割付手段を動作
    制御する割付制御手段と、 前記グラフスケジューリング手段によりスケジューリン
    グされた制御記述グラフから集積回路装置の各種状態を
    順番に表現したFSMを生成するFSM生成手段と、 前記割付制御手段により動作制御された前記要素割付手
    段により要素データが割り付けられた制御記述グラフか
    ら要素データが二次元的に配列された要素配列データを
    生成する配列生成手段と、 該配列生成手段により生成された要素配列データの要素
    データを前記FSM生成手段により生成されたFSMに
    対応した構造に接続して集積回路装置の構造を反映した
    回路構造データを生成する構造生成手段と、 を具備している回路設計装置。
  7. 【請求項7】 少なくとも一つが内部メモリである各種
    のハードウェア要素が内部バスで相互に接続された内部
    構造の回路ブロックが、ハードウェア要素の一つである
    外部メモリと外部バスで相互に接続された集積回路装置
    を設計する回路設計装置であって、 各種のハードウェア要素に対応した多数の要素データが
    事前に登録されているデータ記憶手段と、 設計する集積回路装置の各種動作が配列変数などで記述
    された動作記述言語がデータ入力される言語入力手段
    と、 該言語入力手段にデータ入力された動作記述言語を解析
    してハードウェア要素の順序依存関係が表現された制御
    記述グラフを生成するグラフ変換手段と、 該グラフ変換手段により生成された制御記述グラフから
    配列変数ごとに被アクセスの局所性を検出する局所性検
    出手段と、 前記グラフ変換手段により生成された制御記述グラフを
    動作ステップごとにスケジューリングするグラフスケジ
    ューリング手段と、 該グラフスケジューリング手段によりスケジューリング
    される制御記述グラフに前記データ記憶手段に登録され
    ている各種の要素データを動作ステップごとに選択的に
    割り付ける要素割付手段と、 制御記述グラフに要素データが割り付けられるときに前
    記局所性検出手段により検出された局所性が高い配列変
    数の部分が内部メモリの要素データに割り付けられると
    ともに局所性が低い配列変数の部分が外部メモリの要素
    データに割り付けられるように前記要素割付手段を動作
    制御する割付制御手段と、 前記グラフスケジューリング手段によりスケジューリン
    グされた制御記述グラフから集積回路装置の各種状態を
    順番に表現したFSMを生成するFSM生成手段と、 前記割付制御手段により動作制御された前記要素割付手
    段により要素データが割り付けられた制御記述グラフか
    ら要素データが二次元的に配列された要素配列データを
    生成する配列生成手段と、 該配列生成手段により生成された要素配列データの要素
    データを前記FSM生成手段により生成されたFSMに
    対応した構造に接続して集積回路装置の構造を反映した
    回路構造データを生成する構造生成手段と、 該構造生成手段により生成された回路構造データが複数
    の場合に各々の外部バスのトラヒックを評価するトラヒ
    ック評価手段と、 該トラヒック評価手段により評価されたトラヒックが最
    低の回路構造データを選択するデータ選択手段と、を具
    備している回路設計装置。
  8. 【請求項8】 少なくとも一つが内部メモリである各種
    のハードウェア要素が内部バスで相互に接続された内部
    構造の回路ブロックが、ハードウェア要素の一つである
    外部メモリと外部バスで相互に接続された集積回路装置
    を設計する回路設計装置であって、各種のハードウェア
    要素に対応した多数の要素データとともに、外部バスを
    使用した外部メモリのアクセスをハードウェア要素に模
    擬した外部アクセスの要素データが事前に登録されてい
    るデータ記憶手段と、設計する集積回路装置の各種動作
    が配列変数などで記述された動作記述言語がデータ入力
    される言語入力手段と、該言語入力手段にデータ入力さ
    れた動作記述言語を解析してハードウェア要素の順序依
    存関係が表現された制御記述グラフを生成するグラフ変
    換手段と、該グラフ変換手段により生成された制御記述
    グラフから配列変数ごとに被アクセスの局所性を検出す
    る局所性検出手段と、前記グラフ変換手段により生成さ
    れた制御記述グラフを動作ステップごとにスケジューリ
    ングするグラフスケジューリング手段と、該グラフスケ
    ジューリング手段によりスケジューリングされる制御記
    述グラフに前記データ記憶手段に登録されている各種の
    要素データを動作ステップごとに選択的に割り付ける要
    素割付手段と、制御記述グラフに要素データが割り付け
    られるときに前記局所性検出手段により検出された局所
    性が高い配列変数の部分が内部メモリの要素データに割
    り付けられるとともに局所性が低い配列変数の部分が前
    記外部アクセスの要素データに割り付けられるように前
    記要素割付手段を動作制御する割付制御手段と、前記グ
    ラフスケジューリング手段によりスケジューリングされ
    た制御記述グラフが複数の場合に前記割付制御手段によ
    り動作制御された前記要素割付手段により要素データが
    割り付けられた制御記述グラフの外部アクセスの要素デ
    ータにより外部バスのトラヒックを評価するトラヒック
    評価手段と、該トラヒック評価手段により評価されたト
    ラヒックが最低の制御記述グラフを選択するデータ選択
    手段と、を具備している回路設計装置。
  9. 【請求項9】 前記トラヒック評価手段は、外部バスを
    使用しないハードウェア要素の個数と外部バスの使用の
    待機時間とからトラヒックを評価する請求項7記載の回
    路設計装置。
  10. 【請求項10】 前記グラフ変換手段は、動作記述言語
    を構文解析して配列変数の順序依存関係が木構造で表現
    された第一の制御記述グラフであるPAD(Program
    Analysis Diagram)を生成してから、このPADを整
    理してハードウェア要素の順序依存関係が二次元的に表
    現された第二の制御記述グラフであるCDFG(Contro
    l Data Flor Graph)を生成し、 前記局所性検出手段は、前記グラフ変換手段により生成
    されたPADから配列変数ごとに被アクセスの局所性を
    検出し、 前記グラフスケジューリング手段は、前記グラフ変換手
    段により生成されたCDFGを動作ステップごとにスケ
    ジューリングする請求項5ないし9の何れか一記載の回
    路設計装置。
  11. 【請求項11】 前記局所性検出手段は、PADから配
    列宣言ごとに配列変数を個々に探索し、この配列変数の
    各々で関数に使用される回数を積算し、この回数の多少
    を配列変数の被アクセスの局所性として検出する請求項
    10記載の回路設計装置。
  12. 【請求項12】 コンピュータが読取自在なソフトウェ
    アが格納されている情報記憶媒体において、 各種のハードウェア要素に対応した多数の要素データを
    保存すること、 設計する集積回路装置の各種動作が配列変数などで記述
    された動作記述言語のデータ入力を受け付けること、 データ入力された動作記述言語を解析してハードウェア
    要素の順序依存関係が表現された制御記述グラフを生成
    すること、 この制御記述グラフから配列変数ごとに被アクセスの局
    所性を検出すること、 制御記述グラフを動作ステップごとにスケジューリング
    すること、 このスケジューリングされる制御記述グラフに各種の要
    素データを動作ステップごとに選択的に割り付けるこ
    と、 この要素データを制御記述グラフに割り付けるときに局
    所性が高い配列変数の部分を内部メモリの要素データに
    割り付けるとともに局所性が低い配列変数の部分を外部
    メモリの要素データに割り付けること、を前記コンピュ
    ータに実行させるためのプログラムが格納されているこ
    とを特徴とする情報記憶媒体。
  13. 【請求項13】 コンピュータが読取自在なソフトウェ
    アが格納されている情報記憶媒体において、 各種のハードウェア要素に対応した多数の要素データを
    保存すること、 設計する集積回路装置の各種動作が配列変数などで記述
    された動作記述言語のデータ入力を受け付けること、 データ入力された動作記述言語を解析してハードウェア
    要素の順序依存関係が表現された制御記述グラフを生成
    すること、 この制御記述グラフから配列変数ごとに被アクセスの局
    所性を検出すること、 制御記述グラフを動作ステップごとにスケジューリング
    すること、 このスケジューリングされる制御記述グラフに各種の要
    素データを動作ステップごとに選択的に割り付けるこ
    と、 この要素データを制御記述グラフに割り付けるときに局
    所性が高い配列変数の部分を内部メモリの要素データに
    割り付けるとともに局所性が低い配列変数の部分を外部
    メモリの要素データに割り付けること、 スケジューリングされた制御記述グラフから集積回路装
    置の各種状態を順番に表現したFSMを生成すること、 要素データが割り付けられた制御記述グラフから要素デ
    ータが二次元的に配列された要素配列データを生成する
    こと、 この要素配列データの要素データをFSMに対応した構
    造に接続して集積回路装置の構造を反映した回路構造デ
    ータを生成すること、 を前記コンピュータに実行させるためのプログラムが格
    納されていることを特徴とする情報記憶媒体。
  14. 【請求項14】 コンピュータが読取自在なソフトウェ
    アが格納されている情報記憶媒体において、 各種のハードウェア要素に対応した多数の要素データを
    保存すること、 設計する集積回路装置の各種動作が配列変数などで記述
    された動作記述言語のデータ入力を受け付けること、 データ入力された動作記述言語を解析してハードウェア
    要素の順序依存関係が表現された制御記述グラフを生成
    すること、 この制御記述グラフから配列変数ごとに被アクセスの局
    所性を検出すること、 制御記述グラフを動作ステップごとにスケジューリング
    すること、 このスケジューリングされる制御記述グラフに各種の要
    素データを動作ステップごとに選択的に割り付けるこ
    と、 この要素データを制御記述グラフに割り付けるときに局
    所性が高い配列変数の部分を内部メモリの要素データに
    割り付けるとともに局所性が低い配列変数の部分を外部
    メモリの要素データに割り付けること、 スケジューリングされた制御記述グラフから集積回路装
    置の各種状態を順番に表現したFSMを生成すること、 要素データが割り付けられた制御記述グラフから要素デ
    ータが二次元的に配列された要素配列データを生成する
    こと、 この要素配列データの要素データをFSMに対応した構
    造に接続して集積回路装置の構造を反映した回路構造デ
    ータを生成すること、 この回路構造データが複数の場合に各々の外部バスのト
    ラヒックを評価すること、 このトラヒックの評価が最低の回路構造データを選択す
    ること、 を前記コンピュータに実行させるためのプログラムが格
    納されていることを特徴とする情報記憶媒体。
  15. 【請求項15】 コンピュータが読取自在なソフトウェ
    アが格納されている情報記憶媒体において、 各種のハードウェア要素に対応した多数の要素データと
    ともに、外部バスを使用した外部メモリのアクセスをハ
    ードウェア要素に模擬した外部アクセスの要素データを
    保存すること、 設計する集積回路装置の各種動作が配列変数などで記述
    された動作記述言語のデータ入力を受け付けること、 データ入力された動作記述言語を解析してハードウェア
    要素の順序依存関係が表現された制御記述グラフを生成
    すること、 この制御記述グラフから配列変数ごとに被アクセスの局
    所性を検出すること、 制御記述グラフを動作ステップごとにスケジューリング
    すること、 このスケジューリングされる制御記述グラフに各種の要
    素データを動作ステップごとに選択的に割り付けるこ
    と、 この要素データを制御記述グラフに割り付けるときに局
    所性が高い配列変数の部分を内部メモリの要素データに
    割り付けるとともに局所性が低い配列変数の部分を前記
    外部アクセスの要素データに割り付けること、 スケジューリングされた制御記述グラフが複数の場合に
    要素データが割り付けられた制御記述グラフの外部アク
    セスの要素データにより外部バスのトラヒックを評価す
    ること、 この評価されたトラヒックが最低の制御記述グラフを選
    択すること、を前記コンピュータに実行させるためのプ
    ログラムが格納されていることを特徴とする情報記憶媒
    体。
JP9351192A 1997-12-19 1997-12-19 回路設計方法および装置、情報記憶媒体 Expired - Fee Related JP3045286B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9351192A JP3045286B2 (ja) 1997-12-19 1997-12-19 回路設計方法および装置、情報記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9351192A JP3045286B2 (ja) 1997-12-19 1997-12-19 回路設計方法および装置、情報記憶媒体

Publications (2)

Publication Number Publication Date
JPH11184895A JPH11184895A (ja) 1999-07-09
JP3045286B2 true JP3045286B2 (ja) 2000-05-29

Family

ID=18415683

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9351192A Expired - Fee Related JP3045286B2 (ja) 1997-12-19 1997-12-19 回路設計方法および装置、情報記憶媒体

Country Status (1)

Country Link
JP (1) JP3045286B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10303832B2 (en) 2015-09-18 2019-05-28 Mitsubishi Electric Corporation Architecture generating device

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5396923B2 (ja) * 2009-03-06 2014-01-22 株式会社リコー 組み込み用プログラム開発システム
JP5903814B2 (ja) * 2011-09-15 2016-04-13 日本電気株式会社 半導体回路性能見積装置、その方法及びそのプログラム
JP5979966B2 (ja) 2012-05-10 2016-08-31 三菱電機株式会社 回路設計支援装置及び回路設計支援方法及びプログラム
JP2014225200A (ja) * 2013-05-17 2014-12-04 株式会社半導体理工学研究センター 半導体装置の設計装置、設計方法、設計プログラム
JP2014225201A (ja) * 2013-05-17 2014-12-04 株式会社半導体理工学研究センター 半導体装置の設計装置、設計方法、設計プログラム
US10311188B2 (en) 2015-04-08 2019-06-04 Mitsubishi Electric Corporation Circuit design support apparatus, circuit design support method, and computer readable medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10303832B2 (en) 2015-09-18 2019-05-28 Mitsubishi Electric Corporation Architecture generating device

Also Published As

Publication number Publication date
JPH11184895A (ja) 1999-07-09

Similar Documents

Publication Publication Date Title
US5603043A (en) System for compiling algorithmic language source code for implementation in programmable hardware
US5535342A (en) Pld connector for module having configuration of either first PLD or second PLD and reconfigurable bus for communication of two different bus protocols
US7155708B2 (en) Debugging and performance profiling using control-dataflow graph representations with reconfigurable hardware emulation
Trinder et al. Algorithm+ strategy= parallelism
US8074201B2 (en) Deployment and execution of a program on an embedded device
US9141350B2 (en) Embedded system performance
US6964029B2 (en) System and method for partitioning control-dataflow graph representations
US7146300B2 (en) Method of co-simulating a digital circuit
US8639487B1 (en) Method for multiple processor system-on-a-chip hardware and software cogeneration
US20040088685A1 (en) Process for converting programs in high-level programming languages to a unified executable for hybrid computing platforms
EP2438545A2 (en) Improvements in embedded system development
US20080243462A1 (en) Instruction encoding in a hardware simulation accelerator
JP3045286B2 (ja) 回路設計方法および装置、情報記憶媒体
Wilsey et al. SAVANT/TyVIS/WARPED: Components for the analysis and simulation of VHDL
CN113377597B (zh) 仿真系统以及存储、读取仿真数据的方法
IL142342A (en) Method and apparatus for managing the configuration and functionality of a semiconductor design
CN116457789A (zh) 针对异构集成电路的基于模型的设计和分割
US7010666B1 (en) Methods and apparatus for memory map generation on a programmable chip
Leeman et al. Automated dynamic memory data type implementation exploration and optimization
US6243807B1 (en) Optimizing cache data load required for functions in loop routine by sequentially collecting data in external memory for single block fetch
CN116541066B (zh) 软件系统构建方法、装置、设备及计算机可读存储介质
Suvorova et al. System level modeling of dynamic reconfigurable system-on-chip
JP2729795B2 (ja) 並列計算機及びその制御方法
CN115828805A (zh) 分割逻辑系统设计的方法、设备及存储介质
Burkhart et al. The M/sup 3/multiprocessor laboratory

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees