JP2000123061A - 集積回路装置の設計用データベース及び集積回路装置の設計方法 - Google Patents

集積回路装置の設計用データベース及び集積回路装置の設計方法

Info

Publication number
JP2000123061A
JP2000123061A JP10295511A JP29551198A JP2000123061A JP 2000123061 A JP2000123061 A JP 2000123061A JP 10295511 A JP10295511 A JP 10295511A JP 29551198 A JP29551198 A JP 29551198A JP 2000123061 A JP2000123061 A JP 2000123061A
Authority
JP
Japan
Prior art keywords
integrated circuit
circuit device
data
designing
database
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
JP10295511A
Other languages
English (en)
Inventor
Toshiyuki Yokoyama
敏之 横山
Masanobu Mizuno
雅信 水野
Mutsumi Fujiwara
睦 藤原
Miwaka Takahashi
美和夏 高橋
Michiaki Muraoka
道明 村岡
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 JP10295511A priority Critical patent/JP2000123061A/ja
Priority to US09/418,311 priority patent/US6526561B2/en
Publication of JP2000123061A publication Critical patent/JP2000123061A/ja
Priority to US10/196,952 priority patent/US20020184602A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/323Translation or migration, e.g. logic to logic, hardware description language [HDL] translation or netlist translation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】 【課題】 データをフレキシブルに利用しうる状態で格
納した集積回路装置の設計用データベース及びこれを利
用した集積回路装置の設計方法を提供する。 【解決手段】 設計データの格納層であるVCDB1
(VCデータベース)と、制御システムであるVCDB
MS2(VCDBマネージメントシステム)とを備えて
いる。VCDB1には、VCクラスタ3と、アーキテク
チャ情報4とが含まれ、VCクラスタ3には、仕様レベ
ルのデータを格納する仕様VC5と、動作レベルのデー
タを格納する動作VC6と、RTレベルのデータを格納
するバーチャル・コアであるRTL−VC7と、各VC
の性能を評価するための性能指標8とが存在する。各階
層にVCを備えることにより、各階層において、新たな
VCの生成,VC内のデータの改変,インスタンスの生
成などを行なうことができ、データの再利用を含めたフ
レキシブルな利用を行なうことができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、集積回路装置の設
計に用いられるデータベース及びそれを利用した設計方
法に係り、特に、システムオンチップ化に対応するため
の設計技術に関するものである。
【0002】
【従来の技術】従来より、電子機器内の半導体装置は、
例えばメモリ,プロセッサなどの種類ごとの個別のLS
Iとして半導体チップ上に形成された後、各チップをプ
リント配線基板などの母基板上に実装することにより製
造されてきた。
【0003】ところが、最近、電子機器のより広範な利
用を図るべく、電子機器に用いられる半導体装置は小型
化,軽量化,省電力化及びコストの削減を要求されてお
り、特に、デジタル情報家電分野はその傾向が強い。そ
して、このような電子機器産業界の要請に応じて、半導
体産業はその重心をメモリからシステムLSIに移行さ
せることを余儀なくされている。
【0004】かかるシステムLSIは、具体的には、メ
モリや各種の論理回路を1つのチップ上に設けることに
より実現される。システムオンチップ化のためには、異
なる構造を有するトランジスタ等の素子を共通の基板上
に形成するためのプロセス上の技術が必要であることは
いうまでもないが、設計技術においても大きな変革が要
求される。
【0005】そこで、このようなシステムオンチップ化
に対応した設計技術として、ある機能を実現する多くの
セルからなる1つのブロック(例えば機能ブロックと呼
ばれるもの)を設計するためのデータを予め用意してお
いて、このデータを利用して、各ブロックを組み合わせ
た所望のシステムLSIを設計することが提案されてい
る。その場合、各機能ブロックごとに機能を実現するた
めの構造が定められているので、半導体装置全体の設計
においては、各機能ブロック間の配線や周辺回路の設計
を行なうだけで済む。このようにして、設計効率の大幅
な向上を図ろうとするものである。
【0006】
【発明が解決しようとする課題】しかしながら、上記従
来の設計手法では、論理設計,レイアウト設計などの下
位側の設計において設計されたブロックのうち何を利用
し、それらをどのように配置,配線するなどの設計を行
なうだけなので、各ブロック内の一部の要素のみを利用
するなど、ブロックをフレキシブルに活用することがで
きない。そのために、システムLSIに対する小型化な
どの多彩な要求を十分満たすことができないおそれがあ
る。
【0007】本発明は、上記従来の設計手法の問題点に
鑑み、上記従来のようなブロックを用いた設計手法に変
わる新たな設計システムを構築することを目的として成
されたものであり、特に、1つのまとまったコアとして
把握される要素のデータをフレキシブルに利用しうる状
態で格納した集積回路装置の設計用データベース及びこ
れを利用した集積回路装置の設計方法を提供することを
目的とする。
【0008】
【課題を解決するための手段】本発明の第1の集積回路
装置の設計用データベースは、集積回路装置を設計する
ために必要なデータを格納する複数のVCクラスタを備
えたデータベースであって、上記各VCクラスタは、集
積回路装置を構成するために必要な仕様・動作レベルの
データを格納する仕様・動作VC(バーチャル・コア)
と、上記各仕様・動作VCが格納しているデータが示す
仕様・動作を満たすために必要なRTレベル(レジスタ
ー・トランスファレベル)のデータを格納するRTL−
VCとを備えている。
【0009】これにより、VCクラスタ内の各VCに格
納されているデータを、回路設計やレイアウト設計とい
う下流側ではなく、より上流側の仕様・動作レベル,R
Tレベルでフレキシブルに利用することが可能な設計環
境が得られる。
【0010】上記第1の集積回路装置の設計用データベ
ースにおいて、上記仕様・動作VCを、仕様レベルのデ
ータを格納する仕様VCと、該仕様VCが格納している
データが示す仕様を満たすために必要な動作レベルのデ
ータを格納する動作VCとに区分しておくことが好まし
い。
【0011】上記第1の記載の集積回路装置の設計用デ
ータベースにおいて、集積回路装置の性能を評価するた
めの複数のパラメータからなり、上記仕様・動作VCに
おいては上記複数のパラメータを座標とする多次元空間
内の第1の範囲として表される一方、上記RTL−VC
においては上記複数のパラメータを座標とする多次元空
間内の上記第1の範囲より狭い第2の範囲又は点として
表される性能指標をさらに備えることが好ましい。
【0012】本発明の第2の集積回路装置の設計用デー
タベースは、集積回路装置を設計するために必要なデー
タを格納する複数のVC(バーチャル・コア)を備えた
データベースであって、上記VCが格納しているデータ
の変数部分を定数化してなるインスタンスを管理するた
めのインスタンス管理部を備えている。
【0013】これにより、データベースの円滑な管理が
可能となる。
【0014】本発明の第3の集積回路装置の設計用デー
タベースは、集積回路装置を設計するために必要な仕様
レベルのデータを格納する仕様VC(バーチャル・コ
ア)を備えたデータベースであって、上記仕様VCは、
集積回路装置を構成するために必要な仕様を記述する設
計データと、上記設計データの仕様をチェックするため
の検証データと、集積回路装置の性能を評価するための
性能データとを備えている。
【0015】これにより、仕様レベルにおいても、VC
内に格納されている仕様に関するデータが、システムに
必要な性能の範囲からはずれていないことが確認できる
ので、後の下流側での無駄な設計,検証の発生を抑制す
ることができる。
【0016】本発明の第4の集積回路装置の設計用デー
タベースは、集積回路装置を設計するために必要な動作
レベルのデータを格納する動作VC(バーチャル・コ
ア)を備えたデータベースであって、上記動作VCは、
上記データをハードウェアで実現される動作とソフトウ
ェアで実現される動作とに分けて格納している。
【0017】これにより、動作レベルでのハードウェア
・ソフトウェア協調設計あるいは検証が可能になり、設
計の自動化に適したデータベースが得られる。
【0018】本発明の第5の集積回路装置の設計用デー
タベースは、集積回路装置を設計するために必要なデー
タを格納する複数のVCからなるVCクラスタを備えた
データベースであって、上記各VCクラスタ内の各VC
が格納しているデータのうち共通の特性あるいは共通の
機能を表す部分を指し示す管理テーブルを備えている。
【0019】これにより、インターフェイス,クロッ
ク,電源の共通化や、リソースの共有化などが可能かど
うかの検索を容易かつ迅速に行なうことが可能になる。
【0020】本発明の第1の集積回路装置の設計方法
は、集積回路装置の設計に必要なデータを格納する複数
のVC(バーチャル・コア)を有するデータベースを用
いた集積回路装置の設計方法であって、上記各VCが格
納しているデータの変数部分を定数化してなるインスタ
ンスを生成するステップを含んでいる。
【0021】この方法により、外部情報に適合したイン
スタンスの生成が可能となり、利便性や効率が向上す
る。
【0022】上記第1の集積回路装置の設計方法におい
て、上記インスタンスの生成を、上記VCが格納してい
るデータの変数部分のうちモジュール名を定数化するこ
とにより行なうことが好ましい。
【0023】本発明の第2の集積回路装置の設計方法
は、集積回路装置の設計に必要な仕様レベルのデータを
格納する仕様VC(バーチャル・コア)を有するデータ
ベースを用いた集積回路装置の設計方法であって、上記
各仕様VCが格納しているデータを具体化してなるイン
スタンスを生成するステップと、上記生成されたインス
タンスを上記データベースに格納するステップとを備え
ている。
【0024】この方法により、仕様レベルにおいて、外
部情報に適合したインスタンスの生成が可能になり、利
便性や効率が向上する。
【0025】本発明の第3の集積回路装置の設計方法
は、集積回路装置の設計に必要な仕様レベルのデータを
格納する仕様VC(バーチャル・コア)と、該仕様レベ
ルが格納しているデータの示す仕様を満たすために必要
な動作レベルのデータを格納する動作VCとを有するデ
ータベースを用いた集積回路装置の設計方法であって、
上記動作レベルのデータのうち不要な部分を削除するス
テップを含んでいる。
【0026】この方法により、集積回路装置の質の向上
を効率的に図ることができる。
【0027】本発明の第4の集積回路装置の設計方法
は、集積回路装置の設計に必要なデータを格納する複数
のVC(バーチャル・コア)を有するデータベースを用
いた集積回路装置の設計方法であって、上記複数のVC
が格納しているデータのうちVC間で互いに組み合わせ
が可能な部分を抜き出してなる関係情報を生成するステ
ップを含んでいる。
【0028】この方法により、設計の過程において、各
VC間の関係情報を利用してインターフェイス,クロッ
ク,電源の共通化や、リソースの共有化を進めていくこ
とができる。
【0029】本発明の第5の集積回路装置の設計方法
は、集積回路装置を設計するために必要な動作レベルの
データをハードウェアとソフトウェアとに分けて格納す
る動作VC(バーチャル・コア)を有するデータベース
を用いた集積回路装置の設計方法であって、ハードウェ
ア・ソフトウェア協調設計又は検証を行なうステップを
含んでいる。
【0030】この方法により、VCを利用しながら設計
の自動化が容易な設計方法が得られる。
【0031】本発明の第6の集積回路装置の設計方法
は、集積回路装置を構成するために必要な仕様・動作レ
ベルのデータを格納する仕様・動作VC(バーチャル・
コア)と、上記各仕様・動作VCが格納しているデータ
が示す仕様・動作を満たすために必要なRTレベル(レ
ジスター・トランスファレベル)のデータを格納するR
TL−VCとからなるVCクラスタを有するデータベー
スを用いた集積回路装置の設計方法であって、上記複数
のVCクラスタ内の各VCが格納しているデータを利用
して、新たな仕様を生成するステップを備えている。
【0032】この方法により、各VCクラスタ内のVC
の設計データをフレキシブルに再利用することができ
る。
【0033】
【発明の実施の形態】(VC,VCDS,VCDBの概
念)まず、本発明におけるVC及びVCDSの概念につ
いて説明する。
【0034】本発明におけるVC(バーチャル・コア)
とは、IP(機能ブロック)としばしば同義に使用され
るバーチャルコンポーネントとしての”VC”とは異な
る概念であって、1つのまとまったブロックで構成され
るシステムLSIの設計を対象としており、その中で
も、再利用が可能なハードウェア,ソフトウェアを含む
データを指すものとする。そして、VCDS(バーチャ
ル・コア・デザイン・システム)とは、このVCを利用
してシステムLSIのハード,ソフトを最適化するため
のシステム全体を指すものとする。また、VCDB(バ
ーチャル・コア・データベース)とは、VCを利用した
設計のために用いられるデータベースを指すものとす
る。
【0035】(VCDSの概略構成)図1は、本発明の
実施形態に係るシステムLSI設計のためのデザインシ
ステム(VCDS)の構成を概念的に示す図である。
【0036】図1に示すように、本実施形態に係るデザ
インシステムは、システムの設計のためのデータの格納
層であるVCDB1(VCデータベース)と、VCDB
1の最適化などを行うための制御システムであるVCD
BMS2(VCDBマネージメントシステム)とにより
構成されている。
【0037】VCDB1には、VCの集合体として捉え
られるVCクラスタ3と、このVCクラスタ3中のVC
の構造を決定するためのアーキテクチャ情報4とが含ま
れている。VCクラスタ3には、仕様で記述されるデー
タを格納するバーチャル・コアである仕様VC5と、動
作で記述されるデータを格納する動作VC6と、RTレ
ベル(レジスター・トランスファレベル)で記述される
データを格納するバーチャル・コアであるRTL−VC
7と、各VCの性能を評価するための性能指標8とが存
在する。
【0038】ここで、動作とは1つの仕様に対してソフ
トウェア,ハードウェアの割り当てを定めたものであっ
て、一般的には1つの仕様に対して複数の動作がある。
RT(レジスター・トランスファ)とは、動作に対して
ハードウェア的に実現できるものであって、一般的には
1つの動作に対して、重視するパラメータの相違などに
応じた何種類かの実現方法がある。すなわち、後に詳し
く説明するように、1つの仕様VCに対して複数の動作
VCを、1つの動作VCに対して複数のRTL−VCを
それぞれ階層的に有しているのが一般的である。ただ
し、仕様と動作とはいずれも機能的な概念を表すものと
もいえるので、その区別が困難な場合もあり、その場合
には、仕様・動作VCとしてデータベースを持っておく
ことも可能である。
【0039】また、性能指標8とは、例えば面積,スピ
ードなどのパラメータをいい、例えばRTレベルでは、
ある値をかなり正確に算出することができる。また、実
際にあるRTレベルでハードを実現したことがあれば、
その結果も性能指標8に組み込んでおくことができる。
性能指標8の詳細については後述する。
【0040】アーキテクチャ情報4には、実際にそれぞ
れのVCをどう使用するかということの情報が含まれて
いる。例えばあるタスクをソフトウェアで実現する場合
には、「それを実行するプロセッサはなにを使用するの
か」、「バス(インターフェイス)はなにを使用するの
か」、「電源,クロック供給方式はどうするか」、「論
理合成する際のテスト方式はなにを用いるか」、「命名
規則の制約(ツールの制約や重複防止のための規則)は
どうか」など、そのシステムLSIに必要な種々の情報
が含まれている。
【0041】一方、VCDBMS2は、VCDB1に対
する登録や、VCDB1の外方からの検索,インスタン
スの生成などを行なう。登録には、新たなコアとして登
録するほか、既存VCを参照して新たなVCを生成し、
そのVCの機能を改変したり、VC内のデータの追加登
録を行なったり,差分管理情報を格納したりすることが
含まれる。検索とは、どのレベルのVCでどういう種類
の情報が欲しいかということの検索である。これらの詳
細についても後述する。
【0042】図2は、本実施形態のVCDSにおける設
計の基本的な流れを示す図である。同図に示すように、
仕様レベル,動作レベル及びRTレベルのいずれにおい
ても、記述,検証,評価,合成の手順によりVCの生
成,改変などが行なわれる。例えば、仕様レベルにおい
ては、仕様VCであるS1,S2が選び出されたり、新
たなVCであるS3が生成されたりする。その際、図中
矢印に示す方向に沿ってデータが流れて、データの記
述,検証,評価が行なわれ、評価はフィードバックされ
る。動作レベルでは、各仕様VCであるS1,S2,S
3に対応した動作VCであるD1,D2,D3が生成さ
れるが、各VCはハードウェア,ソフトウェアに機能分
割される。また、RTレベルでは、各動作VCであるD
1,D2,D3に対応するRTL−VCであるR1,R
2,R3が生成されるとともに、これらを接続するバ
ス,CPU,メモリ等が生成される。つまり、より具体
化されることになる。
【0043】各々のタスクは、外部入出力部及び仕様V
Cと状態遷移などで記述されている。仕様VCは、状態
遷移,論理,真理値表などを表現できる言語あるいは図
形で記述されている。
【0044】このように、各階層にVCを配置してこれ
らを総合的に管理することにより、従来の機能ブロック
とは異なり、フレキシブルに利用できるデータベースの
提供を図ることができる。
【0045】−VCクラスタの構成− 次に、図3は、図1に示すシステムの機能部分を抜き出
して示すブロック回路図である。同図において、VCク
ラスタ3を格納しているデータベース格納層10に情報
を入力するための入力部11と、データベース格納層1
0からの出力情報を受ける出力部12と、データベース
格納層10,入力部11及び出力部12を制御する制御
部13とを有する。VCクラスタ3には、仕様VCを生
成する仕様層と動作VCを生成する動作層とを含む仕様
動作層14と、RTL−VCを生成するRT層15とい
う機能が存在する。このうち、仕様層と動作層とは必ず
しも明確に区分できない場合があるので、仕様動作層1
4と一括して示されている。
【0046】図4は、VCクラスタの機能を詳細に説明
する図である。同図に示すように、仕様層においてある
機能を表現する仕様VCがあると、その下流側の動作層
においてはそれを実現するための複数の動作VC1,動
作VC2が一般的には存在し、さらに下流側のRT層に
おいては各動作VC1,動作VC2を実現するためのそ
れぞれ複数のRTL−VC1a,RTL−VC1b,R
TL−VC2a,RTL−VC2bが一般的には存在す
る。例えば、”乗算”という1つの仕様に対し、”乗
算”を実現するための動作は複数の足し算とシフトなど
の動作の組み合わせからなるので、複数通りの動作が存
在するのが一般的である。もちろん、下流側に1つのV
Cしか存在しないこともあり得る。図4に示す例では、
例えば”乗算”という1つの仕様VCに対し、遅延を重
視した実現方法が動作層VC1であり、(占有)面積を
重視した実現方法が動作層VC2である。そして、各層
ごとにインスタンスVCを生成して付加する機能が備わ
っており、図4には、例としてRTL−VC1a,RT
L−VC1b,RTL−VC2a,RTL−VC2bに
おいて、それぞれ1又は複数のインスタンスVCを生成
する機能が表わされている。
【0047】図5は、本実施形態における各VCの構造
を示す図である。仕様層,動作層,RT層などの各階層
のVCには、後述する設計データ(図)と、テストベク
タなどの検証データと、面積,遅延(,消費電力)など
の性能情報と、対象VCの上位概念を持つ上位層VC,
下位概念を持つ下位層VCなどに関するリンク情報とな
る上下層(親子)情報と、VC作成時に参照した同一層
のVCや参照されたVCなどに関する派生情報と、同一
層(動作層など)に属するVC間で共有する情報があれ
ばその共有情報と、追加や修正があった場合にはその改
変内容と、例えばパラレル又はシリアル又はPCIパス
などのバスを生成するためのインターフェイス情報とが
備えられている。
【0048】(各層の詳細な構造)図6は、各層のVC
のデータ及び性能情報の関係を示す図であって、同図の
右側には、(占有)面積と遅延とを性能評価のパラメー
タとして採用したときの各層の性能情報の例が示されて
いるが、同図の左側には、後述する図7〜図9に例示す
るような各層の設計データや検証データが存在するが、
図6においては説明を簡単にするために図示を省略す
る。以下、各層の内容について説明する。
【0049】−仕様層− 仕様層は機能とでもいうべき基本的な入出力関係を規定
する部分であるので、仕様層内の設計データには、入出
力信号の種別や、テキストベースのデータ,プロトコル
などの規格、ある規格に合わせるための目標性能などの
性能、ドキュメントとして与えられている機能仕様があ
る。仕様検証モデルは、FSM(状態遷移),CFG
(コントロールフローグラフ),DFG(データフロー
グラフ)などで表現されている仕様記述(言語又は図)
である。具体的なフォーマットの例としては、例えばV
HDL,SDL,LOTOS,C/C++などというも
のである。図7は、SDLというフォーマットで記述さ
れたある設計データの例である。
【0050】−動作層− 動作層は、アーキテクチャ情報と、ハードウェア部と、
ソフトウェア部とに分かれている。アーキテクチャ情報
は、対象プロセッサ名、OS名、ハードウェア,ソフト
ウェアの通信方法などを含んでいる。例えば、プロセッ
サとOSとシミュレーションとを組み合わせる場合に
は、使用するプロセッサはSparc,Pentium
などで、使用するOSはUNIX,Windowsなど
で、使用するハードウェア,ソフトウェアの通信方法は
IPC,PLIなどであって、これらの適当な組み合わ
せを記述すると共に、必要な前提条件などを記述してお
く。ただし、CPUはなくてもよい場合がある。また、
ハードウェア部には、仕様層に対して具体化した機能が
ドキュメントとして残されており、具体的には、仕様に
なかった詳細な動作モードが記述されている。図8は、
ハードウェア部に格納されているデータの例を示す図で
ある。VerilogHDL,VHDLなどのハードウ
ェア記述言語で記述されている。ソフトウェア部の内容
は、ソースコード(例えばC/C++)により記述され
る。図9は、ソフトウェア部に格納されたデータの例を
示す図である。
【0051】図10は、動作層の検証の際に使用される
環境を示す図である。ハードウェア部(HW)と、ソフ
トウェア部(SW)と、CPUが存在する場合にはCP
Uと、これらを接続する通信手段(Communica
tion)とが存在している。場合によっては、通信手
段とソフトウェア部との間にOSが介在していることも
ある。つまり、この状態では、バスの接続は未定であ
る。
【0052】−RT層− 次に、RT層も基本的には、上述の動作層と同様に、ア
ーキテクチャ情報と、ハードウェア部と、ソフトウェア
部とを備えている。ただし、図11に示すように、RT
層においては、ハードウェア部(HW)と、CPUと、
メモリ(MEM)と、ソフトウェア部(SW),OSと
を接続するバスが形成されている。つまり、通信方法に
ついても、どのように接続するのかというレベルまで具
体化され、ハードウェアに確実に具現化できる,つまり
論理合成できるものになっている。そして、ハードウェ
ア部及びソフトウェア部の双方に、メタ層とインスタン
ス層とが存在する。ただし、インスタンス層とは、変数
をパラメータとして記述されているメタ層の変数を定数
で置き換えたものである。図12は、RT層におけるメ
タとインスタンスとの例を示す図である。
【0053】RT層内のアーキテクチャ情報としては、
以下のような情報がある。
【0054】まず、プロセッサ(CPU)情報として、
動作層及びRT層で使用する協調検証モデルがある。こ
れはプロセッサごとに存在する。
【0055】次に、バス(IF)情報として、バスの信
号の種別や幅などの情報や、バスのプロトコル(タイミ
ング)がある。これらは、プロセッサを各ハードウェア
を接続するための内容が含まれている。
【0056】テスト方式に関する情報として、テスト方
式と必要な機能・仕様(専用端子),付加回路)があ
る。例えばFull Scanの方式であれば、Sin
(スキャンイン),Sout(スキャンアウト),Sc
lk(スキャンクロック),TEの信号などの情報が必
要である。バウンダリースキャンテスト方式の1つであ
るJTAGを採用するのであれば、制御端子やTAPコ
ントローラ回路などの情報が必要である。外部から直接
それぞれのコアをテストする分離テストを行なうのであ
れば、テストモード端子,セレクタ回路などの情報が必
要である。命名規則としては、例えば「モジュール名は
英数字の小文字16字以下であること」などいう,生成
したインスタンスVCを処理するEDAツールごとの制
約や、「モジュール名の先頭に、”A981005 N
を付加すること」などという,同じ名称で異なるインス
タンスVCを生成しないための制約などがある。
【0057】−各層における性能情報− 仕様層において、図4に示す仕様VCがある場合、この
仕様VCの性能を面積と遅延で表すと図6の右上部に示
す範囲(ハッチング部)である。そして、この仕様VC
に対して、図4に示すような遅延を重視した実現方法で
ある動作VC1と、面積を重視した実現方法である動作
VC2とがあった。図6の右中央部に示すように、動作
VC1,動作VC2の範囲は、それぞれハッチングが施
された遅延の小さい領域及び面積の小さい領域である。
さらに、RT層には、図4に示すように、動作VC1に
対するRTL−VC1a,RTL−VC1bと、動作V
C2に対するRTL−VC2a及びRTL−VC2bと
があった。図6の右下部に示すように、各VCの面積及
び遅延は具体的な曲線状のある点として定まる。
【0058】ここで、性能情報には多数のパラメータが
あることから、各層の性能情報は実際には図6のような
平面座標系ではなく、多次元座標系で表されることにな
る。したがって、性能情報は、RT層においては多次元
空間内のある範囲又は点として、仕様層又は動作層にお
いては多次元空間内のある範囲として、それぞれ表され
ることになる。
【0059】(VCDBを利用した設計方法の詳細)次
に、上記図3に示す制御部13による制御内容について
説明する。
【0060】−インスタンスVCの生成− まず、RT層においてメタからインスタンスを生成す
る。図12は、RT層のメタ及びインスタンスのデータ
の一部を抜き出して具体的に示す図である。メタの中で
下線を施している部分が変数であって、その他の部分は
定数かあるいは変数であったがすでに定数化されている
部分である。メタには、設計データと検証データ(テス
トベクタ)とがあり、それぞれモジュール名が変数とな
っている。同図のメタの欄には、モジュール名(”%m
odule1”など)を変数としてタスクが記述されて
いる。インスタンスを生成する場合には、「設計規約
(仕様ツール,データベースなど)を遵守する」、「他
のVCと同じモジュール名,ピン名を重複して設定しな
い」などの出力条件を満たすように、モジュール名やピ
ン名などの変数を定数化する。例えば、同図のインスタ
ンスの欄に示すように、変数”%module1”を”
channel”に定数化するのである。
【0061】−検証データの変更− それに応じて検証データも変更する(モジュール名な
ど)。例えば、図12の検証データの欄に示すよう
に、”%module”が”channel”に定数化
されている。
【0062】−性能情報の生成− 次に、図3の制御部13により、性能情報の生成が行な
われる。まず、RT層において、図6の右下部に示すR
TL−VC(メタ層)の性能情報が生成される。RT層
において、インスタンスはメタと同じ性能情報を有して
いる。まず、RTL−VCの性能情報から図6の右中央
部に示すような動作VCの性能情報が生成される。次
に、動作VCの性能情報から図6の右上部に示すような
仕様VCの性能情報が生成される。なお、性能情報に
は、消費電力に関する性能情報もある。すなわち、この
システムのデータベースを使用する場合には、図6の右
上部に示される性能情報から下方の性能情報を順に参照
していくことになるが、データベースを構築する場合に
は、図6の右下部に示す性能情報から上方の性能情報を
順に生成してことになる。
【0063】−設計時のデータの流れ− 図13は、本実施形態のVCDBMS1による設計にお
ける設計データの流れを示す変形フロー図である。同図
において、各レベルの設計をステップST1〜ST3で
表示し、各ステップST1〜ST3の処理の例を図示し
ている部分をステップST1′〜ST3′と表示してい
る。また、図14は、VCDB1(データベース)の構
造を例示する図である。
【0064】まず、図中破線に示すシステムLSI要求
仕様が与えられると、ステップST1で、このシステム
LSI要求仕様を満足するためのシステム設計を行な
う。すなわち、システム動作の分割と各分割機能の各仕
様VCへの割り当てとを行なうのである。例えば、図1
3のST1′に示すように、システムLSI要求仕様に
適合する仕様VC(A)をVCDB1(データベース)
から選び、次に、システム全体の動作に適合するように
各仕様VC(B),(C)をVCDB1(データベー
ス)から選んでくる。ステップST1′に示す矢印は選
択した仕様VC間のデータの流れを示す。後述するステ
ップST2′,ST3′においても同様である。また、
図1に示すVCDBMS(VCデータベースマネージ
ャ)から、仕様VCのインスタンスVCの要求がある
と、仕様VCのパラメータを定数化することによりイン
スタンスVCを生成する。そして、このインスタンスV
CをVCDB1(データベース)のインスタンス部に登
録しておく(図14参照)。このようにインスタンスV
Cを生成して、これをデータベースであるVCDB1に
登録しておくことにより、このインスタンスVCを混乱
を生じることなく再利用することができる。
【0065】以上の処理は、設計者が行なうこともでき
るし、自動的に行なうことも可能である。例えばVC名
にしても、名称の付け方のルールを定めておくことによ
り、互いに重複しないようにVCの名称を付けることも
可能である。
【0066】次に、ステップST2では、ステップST
1におけるシステム設計の結果、出力される動作VCの
要求に従って、アーキテクチャ設計を行なう。すなわ
ち、必要な仕様VCがわかったので、どのような動作V
Cがあれば、上記必要な仕様VCの機能が満たされるか
がわかる。そこで、VCDB1に対して動作VCを要求
し、VCDB1から動作VCを選び出す。すでに説明し
たように、1つの仕様VCを満たす動作VCは複数個あ
るのが一般的である。ステップST2′には、1つの仕
様VC(A)に対応して、複数の構成要素(リソース)
を含む動作VCA′が選択される。その際、共通化でき
るリソースは共通化し、さらに、使用機能情報に基づき
不要な機能に関する部分は削除するなどの処理も行な
う。この段階では、各動作VC(A′)〜(C′)間の
接続情報であるインターフェイスに関するデータも具体
的な配線ではないが選び出される。また、ステップST
2′の処理においても、インスタンスVCが生成され
て、このインスタンスVCがVCDB1の動作レベルの
インスタンス部に登録される。そして、最終的に、互い
に矛盾することなく各動作VCが機能するかという整合
性を検証する。
【0067】このように、不要な機能を削除することに
より、余分な機能についてのタスクを省略できるので、
集積回路の質の向上を効率的に図ることができる。
【0068】不要な要素としては、例えば共有化されて
いる複数の要素がある場合の1つの要素以外の他の要素
に関する情報などがある。
【0069】次に、ステップST3では、RTレベルに
おける設計であるRTL設計が行なわれる。すなわち、
ステップST2での処理によって生成された動作VCを
実現するために必要なRTL−VC(A″),
(B″),(C″)などが選び出される。
【0070】−具体的なアクセス方法− 次に、図15は、VCDBのデータ構造とアクセス機能
との関係の例を示す図である。2つの仕様VCに対して
動作VC1〜VC5が生成されたとする。もちろん、他
の仕様VCに対しても動作VCが生成されるが、説明を
簡単にするために図15においては図示されていない。
また、各動作VCに対しても、それぞれ複数のRTL−
VCが生成されている。図15において、各VCのハッ
チングを施した部分はポインタを示し、VCクラスタの
構造をポインタを利用して実現した例を示している。
【0071】例えば動作VC1に対し、装置的な機能に
関する要素”機A”,”機B”,”機C”や、入力のイ
ンターフェイスに関する要素”IF(X)”及び出力イ
ンターフェイスに関する要素”IF(Y)”や、性能情
報などがある。例えば、”乗算”という仕様に対し、”
機A”は加算器に関する要素であり、”機B”はシフタ
ーに関する要素である場合などである。他の動作VC2
〜VC5についても同様である。
【0072】ここで、図15に示すアクセス方法におい
ては、以下のような特徴的な処理を行なっている。
【0073】第1に、仕様機能情報に基づき、不要な機
能は削除する。例えば、動作VC1において、”機A”
という要素が不要であれば、インスタンス化する際に削
除し、この要素を使わないでインスタンスVCを生成す
る。この削除も、人手で行なう場合もあれば、ツールで
自動的に行なうこともある。
【0074】第2に、インターフェイス,接続情報に基
づき、動作VC1のインターフェイスの要素”IF
(Y)”、動作VC4のインターフェイスの要素”IF
(V)”、動作VC5のインターフェイスの要素”IF
(Z)”などを抜き出して、インターフェイステーブル
を作成している。これは、ある一定の決まったインター
フェイスのモデル(又は仕様)のもとでは、各インター
フェイスの要素”IF(Y)”,”IF(V)”及び”
IF(Z)”が共通に接続できることを示す。例えば、
動作VC1に接続できるVCは何かということをこのイ
ンターフェイス上で検索することにより、動作VC1に
は、動作VC4と動作層VC5とを接続できることが即
座にわかる。つまり、このインターフェイステーブルを
作成しておくことにより、ある動作VCと別の動作VC
とが接続か否かを容易かつ迅速に確認することができ
る。
【0075】同様に、共通のクロック系統に属する要素
のみを各動作VCから抜き出してクロックテーブルを作
成したり、共通の電源系統に属する要素を各動作VCか
ら抜き出して電源テーブルを作成するなど、アーキテク
チャに関する情報のテーブルを作成することにより、整
合性のチェックや、共有化が可能な資源の検索などに利
用することができる。
【0076】第3に、共有可能なリソースは、リストア
ップされて、ポインタによって接続される。すなわち、
動作VC1の”機C”と動作VC4の”機C”とが双方
向のポインタによって接続され、動作VC4の”機C”
と動作VC3の”機C”とが双方向のポインタによって
接続されている。
【0077】ただし、共有化リソースに関する情報は、
ポインタによる接続の代わりに、テーブルとして作成し
ておいてもよい。
【0078】なお、RTL−VCを生成する際にも、同
様の共有化リソースをポインタで接続したり、インター
フェイステーブル,クロックテーブル,電源テーブルな
どを作成して、整合性のチェックなどを行なうことがで
きる。ただし、一般的には、ほとんどの場合、動作レベ
ルにおいて共有化リソースの接続やテーブルの作成が行
なわれていれば、RTレベルにおいてもその情報はその
まま生かせるので、RTレベルではこれらを改めて作成
する必要はないと考えられる。
【0079】−派生処理− 次に、派生処理の一例について説明する。
【0080】図16(a)〜(c)は、新規VCを生成
する派生処理の手順及びそのときの各VC内のデータの
変化を説明する図である。図16(a)に示すように、
仕様層,動作層,RT層,インスタンスRT層は、それ
ぞれ順に、21,22,23,24という番号で識別さ
れているものとする。そして、2つのVCクラスタ3
1,32があるものとする。VCクラスタ31におい
て、仕様層には仕様VCであるXが存在し、動作層には
動作VCであるXA,XBが存在し、RT層にはRTL
−VCであるXAA,XAB,XBAが存在し、インス
タンスRT層にはインスタンスVCであるXAA1,X
AB1,XBA1,XBA2が存在しているものとす
る。VCクラスタ32において、仕様層には仕様VCで
あるYが存在し、動作層には動作VCであるYCが存在
し、RT層にはRTL−VCであるYCD,YCE,Y
CFが存在し、インスタンスRT層にはインスタンスV
CであるYCD1,YCE1,YCF1,YCF2が存
在しているものとする。
【0081】図16(a)において、はX,Yをもと
に新たな仕様VCであるZを生成する手順を示し、は
XB,YCをもとに新たな動作VCであるZGを生成す
る手順を示している。
【0082】X,Yを元に新たな仕様VCであるZを生
成する場合には、図16(b)に示すように、Xのデー
タα,βが参照され、Yのデータγが参照されて、Zの
データであるデータα,γはそのまま利用するとともに
データβの内容を修正したデータτを生成する。その結
果、Zの内容はデータα,γ,τとなる。
【0083】XB,YCをもとに新たな動作VCである
ZGを生成する場合には、同様に、XBのデータα′,
β′が参照され、YCのデータγ′が参照されて、ZG
のデータであるデータα′,γ′はそのまま利用すると
ともにデータβ′の内容を修正したデータτ′を生成す
る。その結果、ZGの内容はデータα′,γ′,τ′と
なる。
【0084】以上の手順により、仕様VCであるZと、
動作VCであるZGとからなる新たなVCクラスタ33
が生成されることになる。なお、VCクラスタには、R
TL−VCも生成されるが、その手順については省略す
る、以下においても同様である。
【0085】図17(a)〜(d)は、各VC内の具体
的なデータの例を示す図である。例えば仕様VCである
Xには、その名前Xと、層情報として層番号21と、上
下層情報として上位にはVCがなく下位の階層である動
作層に存在する動作VCであるXA,XBと、派生情
報,改変情報として何も処理を行なっていないことが記
述されている。仕様VCであるYにも同様の情報が記述
されている。そして、新たに生成された仕様VCである
Zには、派生情報として、「Zが生成された元となった
VCがX,Yである」ことと、共有情報として、「Xと
はデータαをYとはデータγをそれぞれ共有している」
ことと、改変情報としてデータτを新規に作成したこと
とが記述されている。動作VCであるZGにも、同様の
派生情報と、共有情報と、改変情報とが記述されてい
る。
【0086】−改変処理(VCクラスタ内)− 次に、VCクラスタ内における改変処理の一例について
説明する。
【0087】図18(a)〜(e)は、改変処理の手順
及びそのときの各VC内のデータの変化を説明するため
の図である。図18(a)に示すように、仕様層,動作
層,RT層,インスタンスRT層は、それぞれ順に、2
1,22,23,24という番号で識別されているもの
とする。そして、VCクラスタ34において、仕様層に
は仕様VCであるXが存在し、動作層には動作VCであ
るXBが存在し、RT層にはRTL−VCであるXBA
が存在し、インスタンスRT層にはインスタンスVCで
あるXBA1,XBA2が存在しているものとする。
【0088】図18(a)において、はXからX′へ
の改変が、下位の階層の動作VCであるXAに影響を与
えない場合の手順を示し、はXからX′への改変が、
下位の階層の動作VCであるXBに影響を与える場合の
手順を示している。
【0089】改変は、以下の手順で行なわれる。まず、
Xの下位の階層にあるVC(XA,XB)を抽出する。
次に、XからX′への改変が、下位の階層のVC(X
A,XB)に影響を与えるか否かを検討する。なお、上
位の階層のVCについての影響は検討しなくてもよい。
【0090】下位の階層のVC(XA)に影響を与えな
い場合には、図18(b)に示すように、XをX′に改
変するとともに、XAの上位階層のVCをXからX′に
改変する。
【0091】そして、下位の階層のVC(XB)に影響
を与える場合には、図18(c)に示すように、Xを
X′に改変するとともに、XBをXB′に改変し,X
B′の上位階層のVCをX′に指定する。このとき、図
18(d),(e)に示すように、Xのデータα,βが
参照され、データγ,βを内容とする新たなVC
(X′)が生成されるとともに、XBのデータα′,
β′が参照され、データγ′,β′を内容とする新たな
動作VC(XB′)が生成される。
【0092】図19(a)は、XからX′への改変が下
位の階層のVC(XA)に影響を与えない場合のXA内
に記述される具体的なデータの例を示し、図19(b)
は、XからX′への改変が下位の階層のVC(XB)に
影響を与える場合のXB内に記述される具体的なデータ
の例を示している。
【0093】−改変処理(VCクラスタ間)− 次に、VCクラスタ間における改変処理の一例について
説明する。
【0094】図20は、VCクラスタ間における改変処
理を説明するための図である。また、図21(a)〜
(e)は、改変処理における各仕様VC内の具体的なデ
ータの例を示す図である。図22(a)〜(c)は、改
変処理における各VC内のデータの変化を示す図であ
る。
【0095】図20に示すように、仕様層,動作層,R
T層,インスタンスRT層は、それぞれ順に、21,2
2,23,24という番号で識別されているものとす
る。そして、VCクラスタ36と、このVCクラスタ3
6に対する派生関係を有するVCクラスタ37とがある
ものとする。VCクラスタ36において、仕様層には仕
様VCであるXが存在し、動作層には動作VCであるX
Bが存在し、RT層にはRTL−VCであるXBAが存
在し、インスタンスRT層にはインスタンスVCである
XBA1,XBA2が存在しているものとする。VCク
ラスタ37において、仕様層には仕様VCであるZが存
在し、動作層には動作VCであるXZGが存在している
ものとする。図20において、はXからX′への改変
が派生関係のあるVCクラスタ37内の仕様VCである
Zに影響を与える場合の手順を示し、はXからX′へ
の改変がZに影響を与えない場合の手順を示している。
【0096】改変は、以下の手順で行なわれる。まず、
VCDB中の仕様VCに、派生情報,元パラメータにX
が存在する仕様VC(Z)を抽出する。次に、Xから
X′への改変が、Zに影響を与えるか否かを検討する。
【0097】派生先の仕様VC(Z)が影響を受ける場
合には、図20のに示すように、VCクラスタ36に
おいて、派生元のXをX′に改変するとともに、XA,
XBの上位階層のVCをX′に改変する。また、VCク
ラスタ37において、ZをZ′に改変し、Z′の派生元
をX′に指定する。このとき、上記各VCのデータが参
照されるが、すでに説明した場合と同様に理解できるの
で、説明は省略する。
【0098】派生先の仕様VC(Z)が影響を受けない
場合には、図20のに示すように、XをX′に改変す
るとともに、Zの派生元のVCをXからX′に改変す
る。
【0099】例えば、図22(a)に示すように、改変
処理前において、Xのデータがα,βで、Zのデータが
α,τで、XBのデータがα′,β′で、ZGのデータ
がα′,τ′であるとすると、各仕様VC内の情報は図
21(a)〜(c)に示すようになっている。なお、本
実施形態では、仕様VC間の改変の有無による改変の相
違について説明するので、動作VCについての情報の説
明は省略する(上述のVCクラスタ内の改変処理と同様
に理解できる)。
【0100】次に、派生先の仕様VC(Z)が影響を受
ける場合、XからX′への改変によって、X′のデータ
が図22(b)に示すごとくδ,βになり、それにつれ
てZ′のデータもδ,τになったものとする。それに伴
い、動作VCであるXBがXB′に変化し、そのデータ
がδ′,τ′になったものとする。この場合、図21
(d)に示すように、新たな仕様VC(Z′)におい
て、上下層情報のうちの下層情報がZG′になり、共有
情報はX′(δ)になり、改変情報には、XがX′に改
変されたことと、Z(α,τ)がZ′(δ,τ)に改変
されたこととが記述されている。
【0101】一方、派生先の仕様VC(Z)が影響を受
けない場合、XからX′への改変によって、X′のデー
タが図22(b)に示すごとくα,γになっても、Zの
データは依然としてα,τである。この場合、図21
(e)に示すように、新たな仕様VC(Z′)におい
て、共有情報は0になり、改変情報にはXがX′に改変
されたことが記述される。
【0102】なお、上記VC内のデータやVCDBMS
の制御内容などは、半導体メモリや磁気記録媒体などの
記録媒体に記録しておくことができる。
【0103】
【発明の効果】本発明の集積路装置の設計用データベー
スによれば、集積回路装置を設計するために必要なハー
ドウェア,ソフトウェアを含むデータを格納するための
VCを各階層ごとに設けて、インスタンス,性能情報,
管理テーブルなどを付設できる構造としたので、各VC
に格納されたデータを再利用も含めてフレキシブルに利
用しうる新たな設計システムを実現することができ、よ
って、小型化や省電力化などの多様な要求を満足する集
積回路装置の製造に供することができる。
【0104】本発明の集積回路装置の設計方法によれ
ば、上述のような再利用が可能なデータベースであるV
Cを利用して、新たなVCの生成,データの改変を始
め、関連情報を参照した共有化や、インスタンスの生
成,格納など、フレキシブルな設計を行なうことができ
る。
【図面の簡単な説明】
【図1】本発明の実施形態に係るシステムLSI設計の
ためのデザインシステム(VCDS)の構成を概念的に
示す図である。
【図2】本発明の実施形態のVCDSにおけるタスクの
基本的な流れを示す図である。
【図3】図1に示すシステムの機能部分を抜き出して示
すブロック回路図である。
【図4】本発明の実施形態のVCクラスタの機能を詳細
に説明する図である。
【図5】本発明の実施形態における各VCの構造を示す
図である。
【図6】本発明の実施形態における各層のVCのデータ
及び性能情報の関係を示す図である。
【図7】本発明の実施形態におけるSDLというフォー
マットで記述されたある設計データの例である。
【図8】本発明の実施形態におけるハードウェア部に生
成されたデータの例を示す図である。
【図9】本発明の実施形態におけるソフトウェア部に生
成されたデータの例を示す図である。
【図10】本発明の実施形態における動作層の検証の際
に使用される環境を示す図である。
【図11】本発明の実施形態におけるRT層の検証の際
に使用される環境を示す図である。
【図12】本発明の実施形態におけるRT層内のメタと
インスタンスとの例を示す図である。
【図13】本発明の実施形態におけるVCDBMSによ
る設計における設計データの流れを示す変形フロー図で
ある。
【図14】本発明の実施形態におけるVCDB(データ
ベース)の構造を例示する図である。
【図15】本発明の実施形態におけるVCDBのデータ
構造とアクセス機能との関係の例を示す図である。
【図16】本発明の実施形態における新規VCを生成す
る派生処理の手順及びそのときの各VC内のデータの変
化を説明する図である。
【図17】本発明の実施形態における新規VCを生成す
る派生処理時の各VC内の具体的なデータの例を示す図
である。
【図18】本発明の実施形態におけるVCクラスタ内で
の改変処理の手順及びそのときの各VC内のデータの変
化を説明するための図である。
【図19】本発明の実施形態におけるVCクラスタ内で
の改変処理時の各VC内の具体的なデータの例を示す図
である。
【図20】本発明の実施形態におけるVCクラスタ間で
の改変処理の手順を説明するための図である。
【図21】本発明の実施形態におけるVCクラスタ間で
の改変処理時の各情報の内容の例を説明するための図で
ある。
【図22】本発明の実施形態におけるVCクラスタ間で
の改変処理時の各VC内のデータの変化を示す図であ
る。
【符号の説明】
1 VCDB(VCデータベース) 2 VCDBMS(VCデータベースマネージャ) 3 VCクラスタ 4 アーキテクチャ情報 5 仕様VC 6 動作VC 7 RTL−VC 10 データベース格納層 11 入力部 12 出力部 13 制御部 14 仕様動作層 15 RT層 31〜37 クラスタ
フロントページの続き (72)発明者 藤原 睦 大阪府門真市大字門真1006番地 松下電器 産業株式会社内 (72)発明者 高橋 美和夏 大阪府門真市大字門真1006番地 松下電器 産業株式会社内 (72)発明者 村岡 道明 大阪府門真市大字門真1006番地 松下電器 産業株式会社内 Fターム(参考) 5B046 AA08 BA02 JA01 KA03 KA05 KA08 5F064 DD34 EE52 HH03 HH10 HH11 HH12

Claims (16)

    【特許請求の範囲】
  1. 【請求項1】 集積回路装置を設計するために必要なデ
    ータを格納する複数のVCクラスタを備えたデータベー
    スであって、 上記各VCクラスタは、 集積回路装置を構成するために必要な仕様・動作レベル
    のデータを格納する仕様・動作VC(バーチャル・コ
    ア)と、 上記各仕様・動作VCが格納しているデータが示す仕様
    ・動作を満たすために必要なRTレベル(レジスター・
    トランスファレベル)のデータを格納するRTL−VC
    とを備えていることを特徴とする集積回路装置の設計用
    データベース。
  2. 【請求項2】 請求項1に記載の集積回路装置の設計用
    データベースにおいて、 上記仕様・動作VCは、仕様レベルのデータを格納する
    仕様VCと、該仕様VCが格納しているデータが示す仕
    様を満たすために必要な動作レベルのデータを格納する
    動作VCとに区分されていることを特徴とする集積回路
    装置の設計用データベース。
  3. 【請求項3】 請求項1又は2に記載の集積回路装置の
    設計用データベースにおいて、 集積回路装置の性能を評価するための複数のパラメータ
    からなり、上記仕様・動作VCにおいては上記複数のパ
    ラメータを座標とする多次元空間内の第1の範囲として
    表される一方、上記RTL−VCにおいては上記複数の
    パラメータを座標とする多次元空間内の上記第1の範囲
    より狭い第2の範囲又は点として表される性能指標をさ
    らに備えていることを特徴とする集積回路装置の設計用
    データベース。
  4. 【請求項4】 集積回路装置を設計するために必要なデ
    ータを格納する複数のVC(バーチャル・コア)を備え
    たデータベースであって、 上記VCが格納しているデータの変数部分を定数化して
    なるインスタンスを管理するためのインスタンス管理部
    を備えていることを特徴とする集積回路装置の設計用デ
    ータベース。
  5. 【請求項5】 集積回路装置を設計するために必要な仕
    様レベルのデータを格納する仕様VC(バーチャル・コ
    ア)を備えたデータベースであって、 上記仕様VCは、 集積回路装置を構成するために必要な仕様を記述する設
    計データと、 上記設計データの仕様をチェックするための検証データ
    と、 集積回路装置の性能を評価するための性能データとを備
    えていることを特徴とする集積回路装置の設計用データ
    ベース。
  6. 【請求項6】 集積回路装置を設計するために必要な動
    作レベルのデータを格納する動作VC(バーチャル・コ
    ア)を備えたデータベースであって、 上記動作VCは、 上記データをハードウェアで実現される動作とソフトウ
    ェアで実現される動作と分けて格納していることを特徴
    とする集積回路装置の設計用データベース。
  7. 【請求項7】 集積回路装置を設計するために必要なデ
    ータを格納する複数のVCからなるVCクラスタを備え
    たデータベースであって、 上記各VCクラスタ内の各VCが格納しているデータの
    うち共通の特性あるいは共通の機能を表す部分を指し示
    す管理テーブルを備えていることを特徴とする集積回路
    装置の設計用データベース。
  8. 【請求項8】 集積回路装置の設計に必要なデータを格
    納する複数のVC(バーチャル・コア)を有するデータ
    ベースを用いた集積回路装置の設計方法であって、 上記各VCが格納しているデータの変数部分を定数化し
    てなるインスタンスを生成するステップを含むことを特
    徴とする集積回路装置の設計方法。
  9. 【請求項9】 請求項8に記載の集積回路装置の設計方
    法において、 上記インスタンスの生成は、上記VCが格納しているデ
    ータの変数部分のうちモジュール名を定数化することに
    より行なわれることを特徴とする集積回路装置の設計方
    法。
  10. 【請求項10】 請求項8又は9記載の集積回路装置の
    設計方法において、 上記生成するインスタンスを上記データベースに格納す
    るステップをさらに含むことを特徴とする集積回路装置
    の設計方法。
  11. 【請求項11】 集積回路装置の設計に必要な仕様レベ
    ルのデータを格納する仕様VC(バーチャル・コア)を
    有するデータベースを用いた集積回路装置の設計方法で
    あって、 上記各仕様VCが格納しているデータを具体化してなる
    インスタンスを生成するステップと、 上記生成されたインスタンスを上記データベースに格納
    するステップとを備えていることを特徴とする集積回路
    装置の設計方法。
  12. 【請求項12】 請求項11記載の集積回路装置の設計
    方法において、 上記インスタンスの生成は、外部情報を利用して行なわ
    れることを特徴とする集積回路装置の設計方法。
  13. 【請求項13】 集積回路装置の設計に必要な仕様レベ
    ルのデータを格納する仕様VC(バーチャル・コア)
    と、該仕様レベルが格納しているデータの示す仕様を満
    たすために必要な動作レベルのデータを格納する動作V
    Cとを有するデータベースを用いた集積回路装置の設計
    方法であって、 上記動作レベルのデータのうち不要な部分を削除するス
    テップを含むことを特徴とする集積回路装置の設計方
    法。
  14. 【請求項14】 集積回路装置の設計に必要なデータを
    格納する複数のVC(バーチャル・コア)を有するデー
    タベースを用いた集積回路装置の設計方法であって、 上記複数のVCが格納しているデータのうちVC間で互
    いに組み合わせが可能な部分を抜き出してなる関係情報
    を生成するステップを含むことを特徴とする集積回路装
    置の設計方法。
  15. 【請求項15】 集積回路装置を設計するために必要
    な動作レベルのデータをハードウェアとソフトウェアと
    に分けて格納する動作VC(バーチャル・コア)を有す
    るデータベースを用いた集積回路装置の設計方法であっ
    て、 ハードウェア・ソフトウェア協調設計又は検証を行なう
    ステップを含むことを特徴とする集積回路装置の設計方
    法。
  16. 【請求項16】 集積回路装置を構成するために必要な
    仕様・動作レベルのデータを格納する仕様・動作VC
    (バーチャル・コア)と、上記各仕様・動作VCが格納
    しているデータが示す仕様・動作を満たすために必要な
    RTレベル(レジスター・トランスファレベル)のデー
    タを格納するRTL−VCとからなるVCクラスタを有
    するデータベースを用いた集積回路装置の設計方法であ
    って、 上記複数のVCクラスタ内の各VCが格納しているデー
    タを利用して、新たなVCを生成するステップを備えて
    いることを特徴とする集積回路装置の設計方法。
JP10295511A 1998-10-16 1998-10-16 集積回路装置の設計用データベース及び集積回路装置の設計方法 Pending JP2000123061A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP10295511A JP2000123061A (ja) 1998-10-16 1998-10-16 集積回路装置の設計用データベース及び集積回路装置の設計方法
US09/418,311 US6526561B2 (en) 1998-10-16 1999-10-14 Database for designing integrated circuit device, and method for designing integrated circuit device
US10/196,952 US20020184602A1 (en) 1998-10-16 2002-07-18 Database for designing integrated circuit device, and method for designing integrated circuit device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10295511A JP2000123061A (ja) 1998-10-16 1998-10-16 集積回路装置の設計用データベース及び集積回路装置の設計方法

Publications (1)

Publication Number Publication Date
JP2000123061A true JP2000123061A (ja) 2000-04-28

Family

ID=17821572

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10295511A Pending JP2000123061A (ja) 1998-10-16 1998-10-16 集積回路装置の設計用データベース及び集積回路装置の設計方法

Country Status (2)

Country Link
US (2) US6526561B2 (ja)
JP (1) JP2000123061A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7444602B2 (en) 2001-12-26 2008-10-28 Kabushiki Kaisha Toshiba Method of generating ASIC design database
JP5839379B1 (ja) * 2015-02-12 2016-01-06 アダプトIp株式会社 Ip自動生成システム

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6671857B1 (en) * 1999-08-18 2003-12-30 Matsushita Electric Industrial Co., Ltd. Method of designing integrated circuit device using common parameter at different design levels, and database thereof
US20030154465A1 (en) * 2000-07-21 2003-08-14 Gianmario Bollano Method and system for verifying modules destined for generating circuits
US6738955B2 (en) * 2000-11-30 2004-05-18 International Business Machines Corporation Method and system for formal characterization of average performance
JP2002288255A (ja) * 2001-03-26 2002-10-04 Toshiba Corp ハードウェア記述言語で記述されたシステムlsiの回路部品、及びその検証方法、検証支援回路、システムlsiの製造方法
US6957403B2 (en) 2001-03-30 2005-10-18 Syntest Technologies, Inc. Computer-aided design system to automate scan synthesis at register-transfer level
US6973630B1 (en) * 2003-04-07 2005-12-06 Lsi Logic Corporation System and method for reference-modeling a processor
US7643640B2 (en) * 2004-10-13 2010-01-05 Bose Corporation System and method for designing sound systems
US8516418B2 (en) * 2006-06-30 2013-08-20 Oracle America, Inc. Application of a relational database in integrated circuit design
US8229723B2 (en) * 2007-12-07 2012-07-24 Sonics, Inc. Performance software instrumentation and analysis for electronic design automation
US8073820B2 (en) * 2008-04-07 2011-12-06 Sonics, Inc. Method and system for a database to monitor and analyze performance of an electronic design
JP5251542B2 (ja) * 2009-01-27 2013-07-31 富士通株式会社 電源設計プログラム、方法並びに装置
US8429591B2 (en) * 2010-03-12 2013-04-23 Altera Corporation Methods and apparatus for single testing stimulus
US8276107B2 (en) * 2010-10-18 2012-09-25 Algotochip Corporation Integrated data model based framework for driving design convergence from architecture optimization to physical design closure
CN105740520A (zh) * 2016-01-25 2016-07-06 深圳市同创国芯电子有限公司 Fpga建模方法及装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL100987A (en) * 1991-02-27 1995-10-31 Digital Equipment Corp Method and device for encoding
US5603018A (en) * 1991-07-15 1997-02-11 Mitsubishi Denki Kabushiki Kaisha Program developing system allowing a specification definition to be represented by a plurality of different graphical, non-procedural representation formats
US5452239A (en) * 1993-01-29 1995-09-19 Quickturn Design Systems, Inc. Method of removing gated clocks from the clock nets of a netlist for timing sensitive implementation of the netlist in a hardware emulation system
US5726902A (en) 1995-06-07 1998-03-10 Vlsi Technology, Inc. Method and apparatus for characterizing timing behavior of datapaths for integrated circuit design and fabrication
US5903886A (en) * 1996-04-30 1999-05-11 Smartlynx, Inc. Hierarchical adaptive state machine for emulating and augmenting software
US5757655A (en) 1996-08-26 1998-05-26 Micron Technology, Inc. Method and system for producing dynamic property forms and compacting property databases
US5828579A (en) 1996-08-28 1998-10-27 Synopsys, Inc. Scan segment processing within hierarchical scan architecture for design for test applications
US5912819A (en) * 1996-12-03 1999-06-15 Motorola, Inc. Method for designing an architectural system
JP2954894B2 (ja) 1996-12-13 1999-09-27 株式会社半導体理工学研究センター 集積回路設計方法、集積回路設計のためのデータベース装置および集積回路設計支援装置
US5883814A (en) 1997-03-13 1999-03-16 International Business Machines Corporation System-on-chip layout compilation
US20050033777A1 (en) * 2003-08-04 2005-02-10 Moraes Mark A. Tracking, recording and organizing changes to data in computer systems

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7444602B2 (en) 2001-12-26 2008-10-28 Kabushiki Kaisha Toshiba Method of generating ASIC design database
JP5839379B1 (ja) * 2015-02-12 2016-01-06 アダプトIp株式会社 Ip自動生成システム
WO2016129332A1 (ja) * 2015-02-12 2016-08-18 アダプトIp株式会社 Ip自動生成システム
US10339615B2 (en) 2015-02-12 2019-07-02 Makoto Hayashi Automatic IP core generation system

Also Published As

Publication number Publication date
US20030014729A1 (en) 2003-01-16
US20020184602A1 (en) 2002-12-05
US6526561B2 (en) 2003-02-25

Similar Documents

Publication Publication Date Title
US5553002A (en) Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, using milestone matrix incorporated into user-interface
US5696694A (en) Method and apparatus for estimating internal power consumption of an electronic circuit represented as netlist
US5541849A (en) Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including estimation and comparison of timing parameters
US5572436A (en) Method and system for creating and validating low level description of electronic design
US8286108B2 (en) System and method for synthesis reuse
JP2000123061A (ja) 集積回路装置の設計用データベース及び集積回路装置の設計方法
US5737234A (en) Method of optimizing resource allocation starting from a high level block diagram
US20030101331A1 (en) ASIC design technique
US6113647A (en) Computer aided design system and method using hierarchical and flat netlist circuit representations
US20090228848A1 (en) Circuit verification apparatus, a method of circuit verification and circuit verification program
US6845489B1 (en) Database for design of integrated circuit device and method for designing integrated circuit device
US8281269B2 (en) Method of semiconductor integrated circuit device and program
WO1999009497A1 (fr) Procede d'extraction de caracteristiques de synchronisation de circuits a transistors, support de stockage stockant une bibliotheque de caracteristiques de synchronisation, procede de conception de lsi et procede d'extraction par grille
US6510541B1 (en) Database having a hierarchical structure utilized for designing system-on-chip integrated circuit devices and a method of designing the same
Darringer et al. Early analysis tools for system-on-a-chip design
US6536012B1 (en) Database for designing integrated circuit device, and method for designing integrated circuit device
JPH06274568A (ja) 階層図形データの展開方法
US6886150B2 (en) Method for designing integrated circuit device
JP2004102703A (ja) レジスタ転送レベル設計支援装置
US6701496B1 (en) Synthesis with automated placement information feedback
JPH0962726A (ja) Cadデータインタフェース方法
JP3476688B2 (ja) ネットリスト生成方法及びネットリスト生成装置
US8024681B2 (en) Hierarchical HDL processing method and non-transitory computer-readable storage medium
US6877140B1 (en) Method and system for generating a schematic representing bus structures
Robertson et al. Timing verification of dynamically reconfigurable logic for the Xilinx Virtex FPGA series