JP2001109788A - シミュレーションモデル、その生成方法、シミュレーション方法及びその記録媒体 - Google Patents

シミュレーションモデル、その生成方法、シミュレーション方法及びその記録媒体

Info

Publication number
JP2001109788A
JP2001109788A JP29027699A JP29027699A JP2001109788A JP 2001109788 A JP2001109788 A JP 2001109788A JP 29027699 A JP29027699 A JP 29027699A JP 29027699 A JP29027699 A JP 29027699A JP 2001109788 A JP2001109788 A JP 2001109788A
Authority
JP
Japan
Prior art keywords
description
level
clock
simulation
algorithm
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
JP29027699A
Other languages
English (en)
Inventor
Hiroyuki Ikegami
裕之 池上
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 JP29027699A priority Critical patent/JP2001109788A/ja
Priority to US09/686,305 priority patent/US6782354B1/en
Publication of JP2001109788A publication Critical patent/JP2001109788A/ja
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
    • 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

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)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】アルゴリズム記述とRTレベル記述の中間のレ
ベルのシミュレーションを可能にする。その言語の提
供。 【解決手段】資源の制約下、アルゴリズム記述3をクロ
ックレベル記述8に低位化する。アルゴリズム記述3の
複数機能を単位クロックの中で動作が可能である部分機
能に分解し、その複数機能を回復するためにその部分機
能を組み立てる。複数機能は、クロックレベル記述であ
るクロックレベルシミュレータ8として、レジスタを変
数とする言語により表現されている。レジスタを変数と
する言語は、クロック単位で動作するプログラミングの
言語として最適であり、この言語は、アルゴリズムレベ
ルより下位であり、RTレベルよりも上位の未発見言語
であった。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、シミュレーション
方法、シミュレーションモデル、これらに対応する記録
媒体、それらの記述の生成方法に関し、特に、アルゴリ
ズム記述とRTレベル記述との間でシミュレーションを
適宜に切り換えて高速度で所望の段階でシミュレーショ
ンモデルを生成してアルゴリズムを高速に又は詳細にシ
ミュレートするシミュレーション方法、シミュレーショ
ンモデル、それらに対応する記録媒体、それらの記述の
生成方法に関する。
【0002】
【従来の技術】大規模回路は、自動設計装置により設計
される。自動設計装置の設計フローは、C言語のような
汎用プログラム言語、専用の動作レベル記述言語により
所望の動作フローが記述された最高位レベル記述をレジ
スタ、加算器のようなハードウエア資源を用いてよりハ
ードウエア化されるRTレベル記述のような低位レベル
記述に書き下すステップを有している。このようにレベ
ルが異なる抽象度の複数のシミュレーションモデルのシ
ミュレーションは、図13(a),(b)に示されるよ
うに、抽象度が高い動作レベルシミュレーションモデル
101では、初めから終わりまでこれだけがシミュレー
トされ、そのシミュレーションの途中で、RTレベルシ
ミュレーションモデル102のシミュレーションは行わ
れえず、また、抽象度が低いRTレベルシミュレーショ
ンモデル102では、初めから終わりまでこれだけがシ
ミュレートされ、そのシミュレーションの途中で、動作
レベルシミュレーションモデル101のシミュレーショ
ンは行われなかった。
【0003】このように、動作レベルシミュレーション
モデル101とRTレベルシミュレーションモデル10
2は、互いに独立していて別個のものとして扱われ、シ
ミュレーションの途中で一方のシステムシミュレーショ
ンから他方のシステムシミュレーションに切り換えるこ
とは不可能であった。一般的には、速度が重要な局面で
は高速な上位シミュレーションモデルが用いられ、精度
が重要な局面ではRTレベル、精度が更に細かく要求さ
れる局面ではレベルが更に低い他の低位シミュレーショ
ンモデルがそれぞれに用いられていた。
【0004】しかし、機能検証のシミュレーションを行
う場合、ある時刻t1から他のある時刻t2の間を特に
詳しく調べたいという要望がある。そのような場合にも
時刻t0から時刻t2までの検証のために高精度のシミ
ュレータを使用すると、機能検査に多大な時間がかかっ
てしまう。
【0005】このような問題を解決する技術として、異
なる抽象度の複数・シミュレーションモデルの間で切り
換えを行うようにしたミックス・シミュレーション技術
が、特開平5−61934号、論文「並列論理シミュレ
ータWIZDOM」(情報処理学会第57回全国大会、
1998)で知られている。ここで開示されている切り
換えは、命令レベルシミュレーションモデルとハードウ
エアシミュレータ、RTレベルシミュレーションモデル
のような抽象度が異なるシミュレーションモデルとの間
の切り換えである。このような切り換えが可能になって
いる根拠は、双方のモデルがレジスタ等で共通する構造
を持っていることにある。また、ゲートレベルと電子回
路レベルの間でのシミュレーション切り換えが行われる
技術が、特開平7−110826号で知られている。こ
の切り換えで双方の情報のトランスファーは、ゲート回
路の端子と電子回路の端子が1対1に対応していること
を利用することにより、回路端子のレベルのアナログ・
ディジタル変換によって行っている。また、特開平10
−261002号は、ある回路記述形式を用いてその回
路の動きを詳しい定義モデルと粗い定義モデルとで表現
し、そのモデルの間での切り換えを開示している。この
ような1対1対応の高低レベル間の切り換え、詳細度の
異なるものの共通の記述形式を用いた同一レベル間の切
り換えが知られている。
【0006】しかし、動作記述レベルといわれる最高位
のプログラム言語記述レベルと下位記述レベルであるR
Tレベルの間では、シミュレーション状態を保持する構
造が1対1に対応しておらず、両レベル間でデータの受
け渡しができないため、従来、これらのレベル間の切り
換えシミュレーションが不可能であった。シミュレーシ
ョンをより適正に高速化し且つ詳細化するために、この
ように1対1に対応する記述がなされていないレベル間
のシミュレーションモデルの切換技術の確立が特に望ま
れた。
【0007】本発明者は、そのような技術の確立のため
に、論理回路の処理フローを記述した動作レベル記述を
機能合成ツールによりRTレベル記述に変換し、その動
作レベル記述とRTレベル記述をそれぞれに対応するコ
ンパイラに入力して動作レベルシミュレーションモデル
構造とRTレベルシミュレーションモデル構造を生成
し、動作レベルシミュレーションモデル構造とRTレベ
ルシミュレーションモデル構造の対応手段を生成し、動
作レベルシミュレーションモデル構造とRTレベルシミ
ュレーションモデル構造に基づいて動作レベルシミュレ
ーションとRTレベルシミュレーションを対応手段を介
して切り換えて実行するように、両レベル間でレジスタ
の変数値を共有させるようにしたシミュレーション方法
を提案している(参照:特願平11−057040
号)。
【0008】このようなシミュレーション方法によるシ
ミュレーションの実行過程で、本発明者は、動作モデル
である最高位の抽象度を持つアルゴリズム記述から自動
生成される従来のRTレベル記述は、ソースであるアル
ゴリズム記述から遠くかけ離れ、両記述の間に大きな抽
象度の落差が存在していることに気づいた。両記述の間
に潜み両記述のそれぞれの抽象度の中間にある抽象度の
記述の発見が望まれ、その記述により、アルゴリズム記
述より抽象度が低くRTレベルより抽象度が高い言語レ
ベルでシミュレーションモデルを動作レベルより精細に
且つRTレベルより高速にシミュレートすることが望ま
れる。
【0009】
【発明が解決しようとする課題】本発明の課題は、アル
ゴリズムレベルより抽象度が高くRTレベルよりも抽象
度が低いレベルの言語を用いてそれに基づくシミュレー
ションモデル、その記述とその生成の方法を提供するこ
とにある。本発明の他の課題は、アルゴリズムレベルよ
り抽象度が高くRTレベルよりも抽象度が低い記述に基
づいて、アルゴリズム記述のシミュレーションよりもよ
り精細に、且つ、RTレベル記述のシミュレーションよ
りもより高速にシミュレートすることができるシミュレ
ーションモデル、その記述とその生成の方法を提供する
ことにある。
【0010】
【課題を解決するための手段】その課題を解決するため
の手段が、下記のように表現される。その表現中に現れ
る技術的事項には、括弧()つきで、番号、記号等が添
記されている。その番号、記号等は、本発明の実施の複
数・形態又は複数の実施例のうちの少なくとも1つの実
施の形態又は複数の実施例を構成する技術的事項、特
に、その実施の形態又は実施例に対応する図面に表現さ
れている技術的事項に付せられている参照番号、参照記
号等に一致している。このような参照番号、参照記号
は、請求項記載の技術的事項と実施の形態又は実施例の
技術的事項との対応・橋渡しを明確にしている。このよ
うな対応・橋渡しは、請求項記載の技術的事項が実施の
形態又は実施例の技術的事項に限定されて解釈されるこ
とを意味しない。
【0011】本発明によるシミュレーションモデルの記
述生成方法は、資源の制約の下で、アルゴリズム記述
(3)をクロックレベル記述(8)に低位化することを
含み、その低位化することは、アルゴリズム記述(3)
の複数機能を単位クロックの中で動作が可能である部分
機能に分解することと、その複数機能を回復するために
その部分機能を組み立てることとを備える。そのような
複数機能は、クロックレベル記述であるクロックレベル
シミュレータ(8)として、後述されるレジスタを変数
とする言語により表現されている。レジスタを変数とす
る言語は、本発明者により発見された低位プログラミン
グ記述言語である。
【0012】クロックレベル記述は、資源のうちの複数
レジスタの内のある1つのレジスタを異なる複数単位ク
ロックのうちで動作させる記述を備える。このようなク
ロック間でレジスタの共有化が行われ、レジスタが変数
として言語化される。
【0013】本発明によるシミュレーションモデルは、
更に、既述のこのようなシミュレーションモデルの記述
生成方法により記述されたクロックレベル記述(8)
と、そのクロックレベル記述に対応するアルゴリズム記
述(3)とが対応する対応表(22,23)とを含む。
【0014】本発明によるシミュレーション方法は、こ
のようなシミュレーションモデルを用いて単位クロック
で部分機能を動作させることにより複数機能をシミュレ
ートすることを含み、更に、そのようにシミュレートす
ることの結果に基づいて、アルゴリズム記述(3)をデ
バッグすることを含む。更には、シミュレーションモデ
ルに含まれるクロックレベル記述と対応表とを用いて、
アルゴリズム記述の行数とシミュレーションにより得ら
れる変数値の対応を表示することを含む。
【0015】本発明によるシミュレーションモデルの生
成方法は、資源の制約の下で、アルゴリズム記述(3)
をクロックレベル記述(8)に低位化することを含み、
その低位化することは、アルゴリズム記述(3)の複数
機能を単位クロックの中で動作が可能である部分機能に
分解することと、複数機能を回復するためにその部分機
能を組み立てることとを備え、クロックレベル記述
(8)は、その資源のうちの複数レジスタの内のある1
つのレジスタを異なるクロックのうちでそれぞれに動作
させる記述を備え、更に、クロックレベル記述(8)と
クロックレベル記述(8)のうちのレジスタ(Reg1
〜5)に関するレジスタ記述との対応表(22,23)
を作成することと、クロックレベル記述(8)のクロッ
ク単位の状態遷移が起こればその状態遷移が起こったア
ルゴリズム記述部分を表示することと、クロックレベル
記述(8)のクロック単位の状態遷移が起こればその状
態遷移が起こったレジスタ記述部分のレジスタ(Reg
1〜5)の変数値(R)を表示することとを含む。この
ような対応表の作成によって、両レベル間の移行が可能
である。このようなシミュレーションモデルの生成方法
に含まれる全記述がコンピュータにより読み取り可能で
あることは当然であり、それは記録媒体化されて利用に
供される。
【0016】本発明によるシミュレーションモデルは、
アルゴリズム記述(3)と、アルゴリズム記述(3)よ
りも抽象度が低いRTレベル記述(17)と、アルゴリ
ズム記述(3)よりも抽象度が低く、且つ、RTレベル
記述(17)よりも抽象度が高いクロックレベル記述
(8)を含み、クロックレベル記述(8)はアルゴリズ
ム記述(3)からクロック単位で自動生成される記述で
あり、アルゴリズム記述(3)と、クロックレベル記述
(8)と、RTレベル記述(17)とは、クロックレベ
ル記述(8)に含まれて記述されるレジスタ(Reg1
〜5)の変数値(R)を共有する。このような共有によ
り、3つのレベル間で移行が可能である。
【0017】更に、シミュレーションモデルは、アルゴ
リズム記述(3)と、アルゴリズム記述(3)よりも抽
象度が低いクロックレベル記述(8)を含み、クロック
レベル記述(8)は、時間軸に直交する単位クロックご
との断面上で記述されるレジスタの演算記述である。こ
こで、断面とは、1単位クロック内で同時的に動作が進
行する一連の記述の連鎖である。アルゴリズム記述より
も抽象度が低く、且つ、時間軸に直交する単位クロック
ごとの断面上でレジスタに関して記述される言語は、コ
ンピュータにより読み取り可能に表現されて記録媒体化
され得る。このような媒体をコピーすることにより、同
時並行的に多様なシミュレーションが可能である。アル
ゴリズム記述よりも抽象度が低く、且つ、時間軸に直交
する単位クロックごとの断面上でレジスタに関して記述
されるシミュレーションモデル用記述言語は、Reg1
+Reg2のように複数レジスタが用語として多変数化
されている。アルゴリズム記述(3)は数の演算を含ん
でいる場合には、その演算を時間軸上で進行するクロッ
クの単位の中で実行する関数の変数がレジスタになって
表現されている。
【0018】このように、中間レベルの抽象度の言語に
は、レジスタの動作がクロック単位で現れる変数が潜ん
でいる。
【0019】
【発明の実施の形態】図1に一致対応して、本発明によ
るシミュレーションモデルの実施の形態は、アルゴリズ
ム検証部とRTレベル検証部との間で、新たにクロック
レベル検証部が設けられていることを特徴としている。
そのアルゴリズム検証部1は、図1に示されるように、
アルゴリズムシステム2から形成されている。アルゴリ
ズムシステム2は、最も抽象度が高いH/Wモデルであ
るアルゴリズム記述3と、C言語で記述されS/Wモデ
ルであるC−プログラム4とを備えている。アルゴリズ
ムシステム2は、C−コンパイラによりアルゴリズムシ
ミュレータ5に変換される。アルゴリズムシステム2
は、アルゴリズムシミュレータ5によりシミュレートさ
れる。
【0020】そのクロックレベル検証部6は、クロック
レベルシステム7から形成されている。クロックレベル
システム7は、クロックレベル記述であるクロックレベ
ルシミュレーションモデル8と、クロックレベルCPU
モデル9とを備えている。クロックレベルシステム7
は、組込用Cコンパイラ11により自動生成されて記述
変換され、その記述変換には、慣用の機能合成ツール1
2が持つツールであるレジスタが用語(単語又は一次変
数)として用いられる。アルゴリズム記述3は、機能合
成ツール12で記述されるツールを持つモデル変換ツー
ル13によりクロックレベルシミュレーションモデル8
に記述変換される。クロックレベルCPUモデル9は、
組込用Cコンパイラ11によりC−プログラム4から自
動生成される。クロックベースシミュレータ14は、ク
ロックレベルシミュレーションモデル8とクロックレベ
ルCPUモデル9とから形成されている。
【0021】そのRTレベル検証部15は、RTレベル
システム16から形成されている。RTレベルシステム
16は、RTL−HDL17と、RTレベルCPUモデ
ル18とを備えている。RTL−HDL17は、機能合
成ツール12によりアルゴリズム記述3から自動生成さ
れる。HDLシミュレータ19は、RTL−HDL17
とRTレベルCPUモデル18とから形成されている。
【0022】図2は、クロックレベルシミュレーション
モデル8を自動生成するモデル作成のツール構成とその
作成フローを示している。機能合成ツール12は、定
数、変数の最適化機能と、スケジューリング機能と、ア
ロケーション機能と、レジスタシェアリング機能と、H
DL生成機能とを有している。レジスタシェアリング機
能は、下記3つの作成を実行する機能を有している: (1)資源制約下で用いられる複数レジスタ資源の状態
遷移の繰返しをデータパス制御により制御するFSM/
DataPathモデル21の作成 (2)変数とレジスタと状態位置との対応である変数/
レジスタ/状態位置対応表22の作成 (3)アルゴリズム記述のソース行とその状態位置との
対応であるソース行/状態位置対応表23の作成
【0023】モデルI/F情報24は、機能合成ツール
12とモデル変換ツール13に入力される。モデル変換
ツール13は、モデルI/F情報24とFSM/Dat
aPathモデル21と変数/レジスタ/状態位置対応
表22とに基づいて動作し、アルゴリズム記述3をクロ
ックレベルシミュレーションモデル8に記述変換して、
クロックレベルシミュレーションモデル8を自動生成す
る。モデル変換ツール13には、その自動生成のため
に、モデル機能ライブラリのデバッグ機能ライブラリ2
5とモデルI/Fライブラリ26からそれらのライブラ
リ情報が入力される。
【0024】図3は、クロックレベルシミュレーション
モデル8の記述構造を示している。クロックレベルシミ
ュレーションモデル8は、Busシミュレーションモデ
ル31を備えている。Busシミュレーションモデル3
1は、モジュールIO部32とデータパス記述部33と
から形成されている。モジュールIO部32には、複数
IOレジスタ34と複数IOメモリー35とが記述さ
れ、モデルI/F情報24から作成され、当該シミュレ
ーションモデルの入出力端子を通して組込ソフトウエア
から読み書きされるIOレジスタ構造と、IOメモリー
構造を有している。クロックレベルシミュレーションモ
デル8は、モジュールIO部を介して、他のモジュール
と信号伝達を行う。データパス記述部33は、後述され
るように、複数IOレジスタと複数演算子との関係を記
述するデータパスと、その演算のクロック単位の動作を
制御する制御構造とを有している。
【0025】データパス記述部33に、シミュレーショ
ンコントローラ36が接続している。シミュレーション
コントローラ36は、シミュレータ本体からクロック入
力37を受けてデータパス記述部33のクロックを1つ
ずつ進める演算動作遷移38の循環歩進制御(FSM制
御)を行う。シミュレーションコントローラ36から出
力されるFSM制御信号39は、データパス記述部33
に入力される。
【0026】データパス記述部33は、GUIコントロ
ーラ41に接続している。データパス記述部33は、レ
ジスタ値Rと演算遷移位置である状態位置値Sとを出力
する。レジスタ値Rと状態位置値Sとは、GUIコント
ローラ41に入力される。リセット信号がシミュレーシ
ョンコントローラ36に入力されると、データパス記述
部33のレジスタ値Rと状態位置値Sとは初期化され
る。
【0027】GUIコントローラ41は、現在の遷移状
態位置のレジスタとアルゴリズムレベル記述による変数
との対応を図2に示される変数/レジスタ/状態位置対
応表22から得ることができる。GUIコントローラ4
1は、更に、現在の遷移状態位置のアルゴリズムレベル
記述によるソース行をソース行/状態位置対応表23か
ら得ることができる。
【0028】GUIコントローラ41は、アルゴリズム
レベル記述変数値表示ウインドウ42と、アルゴリズム
レベル記述ソース実行行表示ウインドウ43に接続して
いる。アルゴリズムレベル記述変数値表示ウインドウ4
2には、レジスタのレジスタ値Rが、その遷移状態位置
で、アルゴリズムレベル記述変数値として変数/レジス
タ/状態位置対応表22に基づく対応関係が与えられて
表示される。複数レジスタが部分的に異なる遷移状態間
で共有されることにより一時的にレジスタとの対応が消
えてしまうアルゴリズムレベル記述変数の値は、GUI
コントローラ41に保持されることにより、アルゴリズ
ムレベル記述変数値表示ウインドウ42には、常に最新
の遷移状態の最新の変数値が表示される。
【0029】他方で、アルゴリズムレベル記述ソース実
行行表示ウインドウ43には、現在の状態遷移位置に対
応するアルゴリズムレベル記述のソース行位置値Sが、
現在の遷移状態位置で、ソース行/状態位置対応表23
に基づく対応関係が与えられて、ハイライト表示され
る。更に、GUIコントローラ41は、アルゴリズム記
述変数、及び、レジスタ、クロック単位の変化の回数、
状態遷移の各状態に遷移した回数、遷移元、遷移先が、
シミュレーション中に計測されることにより、変数、レ
ジスタ変化、状態変化の網羅率が測定される。このよう
な網羅率は、テストパタンによりどれ程網羅的な検証が
行われ得たかの指標になる。
【0030】アルゴリズム検証:システム内に含まれる
ハードウエアモデルとソフトウエアモデルは、共にプロ
グラミング言語で記述されている。そのハードウエアモ
デルは、ハードウエアのアルゴリズムを表現し、そのソ
フトウエアモデルは組み込みソフロウエアを表現してい
る。これらのプログラミング言語記述をCコンパイラに
かけることにより、アルゴリズムレベルのシミュレータ
が作成される。ハードウエアに関する情報がないアルゴ
リズムレベルで検証可能な項目は、下記(1),(2)
に示されるように、純粋に論理的な動作のみであるが、
そのシミュレーションは非常に高速である。 (1)各モジュールの論理的な動作の検証 (2)システムの論理的な動作の検証
【0031】クロックレベル検証:ハードウエアモデル
のアルゴリズム記述を機能合成ツール、モデル変換ツー
ルで処理することにより、クロックレベルのシミュレー
ションモデルが作成される。ソフトウエアモデルは、C
PUのシミュレーションモデル上に組込ソフトウエアと
して読み込まれ、実際のCPUと同等な動作タイミング
を実現する。これらのハードウエア、ソフトウエアモデ
ルは、クロックレベルで実際のLSIシステムと同等の
タイミング精度を持つため、クロックレベルシミュレー
タ上でシミュレーションを行うことにより、下記のよう
な項目の見積もり、検証が可能である。
【0032】(1)各モジュールのクロックレベルの動
作タイミング検証 (2)各モジュールのインターフェースの概略検証(I
Oレジスタ、IOメモリ、IO端子の構成、名称、ビッ
ト幅等) (3)各モジュール、バスの動作クロックの周波数見積
もり (4)キャッシュアクセスの見積もり(キャッシュヒッ
ト率、アクセス率、ライトバック回数等) (5)アクセスの見積もり(バスの占有率、バスのトラ
ンザクションごとのAdrs、Data、Maste
r、Slave、Read/Write、Comman
d、語数、占有時間等) (6)Bus、Arbiterのアルゴリズムの検証 (7)メモリ/IFのトラフィックの見積もり (8)データ処理のThrough Putの見積もり
(モジュール毎、バス毎、システム全体) (9)バッファ、スタックサイズの見積もり (10)画質、音質の見積もり (11)アドレスマップ、端子、bit幅等モジュール
間接続I/Fの整合性の検証 (12)浮動小数点を固定小数点に変換した場合の見積
もり (13)組み込みソフトウエアの開発、デバッグ (14)消費電力の概略見積もり
【0033】RTレベル検証:ハードウエアモデルは機
能合成ツールが作成するRTL−HDLモデルが用いら
れる。このモデルは、クロックレベルよりも詳細に非同
期的動作を含むタイミングの精度を持つ。ソフトウエア
モデルは、クロックレベルシミュレーションと同様にC
PUのシミュレーションモデル上に組み込みソフトウエ
アとして読み込まれる。これらのRTL−HDLモデル
とCPUモデルをHDLシミュレータ上でシミュレート
することにより、以下のような項目の検証と見積もりを
行うことができる。 (1)各モジュールのインターフェースの詳細検証(制
御、アドレス、データ端子のタイミング動作) (2)各モジュールの詳細タイミングの検証 (3)消費電力の詳細見積もり (4)テスタ向けパタン作成
【0034】
【実施例】図10は、本発明によるシミュレーションモ
デル作成方法の実施の形態を示している。図10に示す
フロー図にそって、図4に示されるアルゴリズム記述か
ら後述するFSM/DataPathモデル記述及び図
8に示される変数/レジスタ/状態位置対応表、図9に
示されるソース行/状態位置対応表を作成し、クロック
レベルシミュレーションモデルを作成する方法を以下に
述べる。
【0035】図4は、アルゴリズム記述3(図2参照)
を例示している。機能合成ツール12は、このアルゴリ
ズム記述及び回路を構成する資源の制約条件を入力とす
る。この場合の資源制約条件は、下記の通りとする。 レジスタ:5個 加算器 :1個 図4に示されるアルゴリズム記述中に、変数はa、b、
c、d、Xの5個、加算は3個が含まれる。資源制約条
件から同時に使うことができる加算器は1つであるた
め、演算処理は時分割され、図5に示されるようにな
る。図5のClock1ではaとbの加算を行い、その
結果をXに代入する。Clock2では、Clock1
と同じ加算器を用いて、cとdの加算を行い、その加算
結果を一時的に保持するために、変数t2を新たに作成
して代入する。更に、Clock3ではClock1,
2と同じ加算器を用いてX及びt2の加算を行い、その
加算結果をXに代入する。このような処理を演算器のス
ケジューリングと呼ぶ(ステップS2)。
【0036】演算器のスケジューリングにより図4のア
ルゴリズム記述で示される処理を加算器1個の制約下で
実現するためには、3クロックを要し、変数はa,b,
c,d,X,t2の6個を要することが分かる。レジス
タに関する資源制約によれば、同時に利用できるレジス
タは5個までとなっているため、レジスタについても共
有化を行う必要がある。レジスタ共有化では、まずCl
ock1の変数a,b及びClock2の変数X,c,
dにレジスタ制約で許されるReg1からReg5まで
を割り当てる。Clock3の変数t2については、R
eg1からReg5のうちのどれかを使い回す必要があ
る。Clock1で変数a,bに割り当てられていたR
eg1、Reg2は、Clock2のXが得られれば、
その内容を保持する必要がないため、Clock2以降
であれば使い回すことが可能である。ここでは、Clo
ck3の変数t2に割り当てるためReg2を用いるこ
とにする。最後の演算結果変数Xについても同様にCl
ock3以降で使い回しができるReg5を割り当て
る。このようにして与えられたレジスタ制約の元でレジ
スタの共有を行う(ステップS3)。図4のアルゴリズ
ム記述にステップS1、ステップS2、ステップS3の
処理を行った結果得られるモデルをプログラミング言語
で記述したものが下記に示されFSM/DataPat
hモデルとなる。
【0037】図8は、変数/レジスタ/状態位置対応表
22を示している。変数/レジスタ/状態位置対応表2
2は、図5に示される変数と、Clockの対応、及
び、図6に示されるレジスタとクロックの対応から作成
される。図5及び図6のClock1かClock3
は、図8の状態1〜3に対応する。図8の状態1即ち図
5、図6のClock1では、レジスタReg1は変数
aの値を持ち、レジスタReg2は変数bの値を持つ。
状態2では、レジスタReg3は変数X、レジスタRe
g4はc、レジスタReg5はdの値を持つ。状態3で
は、レジスタReg2はt2、レジスタReg3はX、
状態4では、レジスタReg5はXの値を持つ。更に、
初期状態として全てのレジスタに変数の割り当てがない
状態0を作成する。このように各状態(即ちCloc
k)における変数とレジスタの対応を示したのが変数/
レジスタ/状態位置対応表22である(ステップS
5)。
【0038】図9は、ソース行/状態位置対応表23を
示している。Clock1における変数aとbの加算
は、図4のアルゴリズム記述では3行目に当たる。Cl
ock2における変数cとdの加算は、図4のアルゴリ
ズム記述では4行目に当たる。Clock3における変
数Xとt2の加算も4行目に当たる。最終の演算結果X
が得られる状態は、図4のアルゴリズム記述の5行目に
当たる。図8と同様に図9の状態1〜3は、図5、図6
のClock1〜3に対応する。このようにして得られ
るアルゴリズム記述中の行位置と状態の対応関係を示し
たのが、ソース行/状態位置対応表23である。モデル
変換ツール13にモデルI/F情報24、FSM/Da
taPathモデル21、変数/レジスタ/状態位置対
応表22、ソース行/状態位置対応表23から、クロッ
クレベルシミュレーションモデル8が作成される(ステ
ップS7)。ここで、モデルI/F情報24は、アルゴ
リズム記述3で表現される回路モジュールと外部とのイ
ンターフェースを定義する情報を持つ。その内容として
はバスからアクセス可能なコマンドレジスタや状態レジ
スタ、データメモリの構成、更には、他のモジュールと
の間のデータ転送路のビット幅、同期方式などが含まれ
る。
【0039】公知慣用のRTレベルシステム16のRT
L−HDL17は、図7に示されるように、機能合成ツ
ール12により自動生成される。公知ツールによりこの
ように自動生成されるハードウエア構成は、5つのレジ
スタ1〜5と、7つのマルチプレクサ1〜7と、5つの
スイッチSW1〜5とから形成される。クロックレベル
記述モデルよりも抽象度が低いこのようなハードウエア
モデルでは、レジスタの値を保持するためにレジスタの
出力をデータ入力にフィードバックさせるフィードバッ
ク機能とマルチプレクサとが必要であり、更に、全ての
レジスタに常にクロック信号を供給するためのクロック
制御と、各マルチプレクサを制御する制御信号44とが
必要であり、更に、演算器の共有化のために入力となる
複数のレジスタから1つのレジスタを選択するためにも
マルチプレクサが必要である。ハードウエアモデルは、
後述されるように、その他の各種多様なハード部品とそ
れを制御する制御信号線が必要である。
【0040】クロックレベルシミュレーションモデル8
は、クロック単位で動作する言語として論理レベルの記
述言語であるクロックレベル記述が下記ようになされ
る。
【0041】 int DataPath (int a,b,c,d, rest) { static int FSM position; static int Reg1, Reg2, Reg3, Reg4, Reg5; if ( rest = = 1 ){ FSM position = 0; return (0); } switch (FSM position) { case 0: Reg1 = a; Reg2 = b; Reg3 = Reg1 + Reg2; FSM position = 1; break; case 1: Reg4 = c; Reg5 = d; Reg2 = Reg4 + Reg5; FSM position = 2; break; case 2: Reg5 = a; Reg3 + Reg2; FSM position = 3; break; case3: X = Reg5; FSM position = 0; break;
【0042】Case1はクロック1のステップに一致
し、Case2はクロック2のステップに一致し、Ca
se3はクロック3のステップに一致している。このよ
うにクロック単位で、レジスタ1〜5が分割されて使用
されるクロックレベル記述が生成される。このクロック
レベル記述は、図4に示されるアルゴリズム記述による
表現よりも表現がより詳細になっているが、後記される
RTレベル記述から見れば、簡素化されている。そのア
ルゴリズムの内容によるが、アルゴリズム記述のシミュ
レーション時間はクロックレベル記述のシミュレーショ
ン時間に比べて概ね500分の1であり、クロックレベ
ル記述の動作時間はRTレベル記述の動作時間に比べて
概ね500分の1であることが本発明者により確認され
ている。
【0043】図7に対応するVHDL記述が、参考のた
めに下記に記載される。RTハードウエア記述1:
【数1】
【0044】RTハードウエア記述2:
【数2】
【0045】RTハードウエア記述3:
【数3】
【0046】RTハードウエア記述4:
【数4】
【0047】RTハードウエア記述5:
【数5】
【0048】RTハードウエア記述6:
【数6】
【0049】RTハードウエア記述7:
【数7】
【0050】RTハードウエア記述8:
【数8】
【0051】RTハードウエア記述9:
【数9】
【0052】RTハードウエア記述10:
【数10】
【0053】RTハードウエア記述11:
【数11】
【0054】RTハードウエア記述12:
【数12】
【0055】RTハードウエア記述13:
【数13】
【0056】RTハードウエア記述14:
【数14】
【0057】このような記述には、コントローラに関す
る記述は含まれていない。RTハードウエア記述14の
最初の6行はFFレジスタに関する記述部分であり、そ
の次の6行はマルチプレクサに関する記述部分であり、
更にその次の記述はadderによる加算に関する記述
部分である。両レベルの記述の両分量は、概ね、両レベ
ルのシミュレーションにかかる時間の長さに対応してい
る。
【0058】図11は、アルゴリズムレベル記述ソース
実行行表示ウインドウ43にアルゴリズム記述ソースを
表示する方法を示している。状態遷移が起こる毎に(ス
テップS11)、GUIコントロール部41は、現在の
状態位置をFSM/DataPath部33に問い合わ
せる(ステップS12)。例えば、現在の状態位置が状
態2であった場合、ソース行/状態位置対応表23か
ら、対応するソースファイルがfile1.cで行数が
4行目であることが分かる(ステップS13)。このよ
うにして得られたソースファイルをGUI上で表示し、
更に現在の状態位置に対応する行をハイライト表示する
ことにより、ユーザーはアルゴリズムレベル記述上での
現在の実行位置を示すことができる(ステップS1
4)。
【0059】図12は、アルゴリズム記述中の変数をア
ルゴリズムレベル記述変数値表示ウインドウ42に表示
する方法を示している。状態遷移が起こる毎に(ステッ
プS21)、GUIコントロール部41は、現在の状態
位置をFSM/DataPath部33に問い合わせる
(ステップS22)。例えば、現在の状態位置が状態3
であった場合、変数/レジスタ/状態位置対応表22か
ら、状態3で使われる変数はt2とXであり、対応する
レジスタがそれぞれReg2とReg3であることが分
かる(ステップS23)。GUIコントローラ部41
は、Reg2とReg3の値をFSM/DataPat
h部33から得て、開けられている。アルゴリズム記述
変数表示ウインドウ42にはそれぞれt2及びXの値と
して表示する(ステップS24)。これにより、ユーザ
ーはレジスタ共有が行われていても、GUI上ではクロ
ックレベルシミュレーションモデル中のレジスタ値の変
化をアルゴリズムレベル記述上の変数の値の変化として
観測することが可能になる。
【0060】クロックレベルシミュレーションモデル
は、図7の構造を持つRTL−HDLモデルに比べて、
以下のシミュレーションが省略される。 (1)RTL−HDLモデルは、レジスタ値を保持して
それを出力するためのフィードバックとマルチプレクサ
が必要であるが、プログラミング言語で実現されるクロ
ックレベルシミュレーションモデルでは変数値の保持は
代入が起こらない限りにおいて、フィードバックとマル
チプレクサが不要である。
【0061】(2)RTL−HDLモデルは、全てのレ
ジスタに常にクロック信号が供給されるためレジスタ値
は新しいデータ入力値又はそのレジスタが保持していた
値に常に更新されるようになるが、クロックレベルシミ
ュレーションモデルでは新しいデータ入力があった変数
のみが更新されるため、不要な更新処理がなくシミュレ
ーションが高速化され得る。
【0062】(3)RTL−HDLモデルは、演算器の
共有が行われるため、入力となる複数のレジスタから1
つのレジスタを選択するマルチプレクサが必要である
が、クロックレベルシミュレーションモデルでは演算器
に制限がなくそのような共有化が不要であり、演算器の
入力を選択するマルチプレクサが不要である。 (4)クロックレベルシミュレーションモデルでは演算
器共有化のためのマルチプレクサが不要であるので、マ
ルチプレクサに必要であった制御入力を作成する回路が
不要である。
【0063】(5)RTL−HDLモデルは、全レジス
タに非同期リセット信号がつくが、クロックレベルシミ
ュレーションモデルではクロック周期単位の動作のみを
扱うので、非同期的な動作を行う必要がない。
【0064】(6)RTL−HDLモデルは、レジス
タ、マルチプレクサ、演算器等のサブモジュールを利用
した構造を持ち、そのサブモジュールは端子を持ち、そ
の内部には信号線、制御機構等も持っているが、クロッ
クレベルシミュレーションモデルでは、レジスタはプロ
グラミング言語の変数に、マルチプレクサは条件文に、
演算器は演算子で表現されるため、シミュレーション処
理は大幅に簡略化される。
【0065】(7)RTL−HDLモデルは、実際のハ
ードウエア通りに束線のビット位置の昇降順、符号のあ
りなし、整数型/ビットベクタ型等の信号型の区別、又
は、これらの間の変換を厳密に表現する必要があるが、
このような区別は、クロックレベルシミュレーションモ
デルでは厳密に行われない。
【0066】(8)RTL−HDLモデル内にある各サ
ブモジュール間の動作の並列性は厳密に表現されるが、
クロックレベルシミュレーションモデルでは各サブモジ
ュールの厳密な動作タイミングの差に基づいた検証は行
われないため、並列性を厳密に表現する必要がない。
【0067】(9)RTL−HDLモデルは、クロック
の変化タイミング以外にも例えばリセット信号が変化し
た時点の動作を厳密に表現するが、クロックレベルシミ
ュレーションモデルではクロック単位の動作のみを扱う
ので、非同期的な動作に対する処理を簡略化することが
できる。
【0068】
【発明の効果】本発明によるシミュレーションモデル、
その記述とその生成の方法は、アルゴリズムレベルより
抽象度が低くRTレベルよりも抽象度が高いレベルの言
語の発見により、中間レベルのシミュレーションが可能
になる。アルゴリズムレベルより抽象度が低くRTレベ
ルよりも抽象度が高い記述に基づいて、アルゴリズム記
述のシミュレーションよりもより精細に、且つ、RTレ
ベル記述のシミュレーションよりもより高速にシミュレ
ートすることができる。一般的には、より物理的であり
より詳細に記述されるハード部品のシミュレーション言
語を論理化してハード部品を変数とするプログラミング
言語を作成することが可能であり、公知の複数レベルの
記述の中間言語を作成することができる。
【図面の簡単な説明】
【図1】図1は、本発明による論理シミュレーションシ
ステムの実施の形態を示すシステム図である。
【図2】図2は、本発明によるシミュレーションモデル
生成方法の実施の形態を示すブロックフロー図である。
【図3】図3は、2レベル間の移行のための対応を示す
論理ブロック図である。
【図4】図4は、アルゴリズム記述の実施例を示す論理
式である。
【図5】図5は、クロックレベルのスケジューリングを
しめす動作時間表である。
【図6】図6は、クロックレベルのレジスタの動作を示
す動作時間表である。
【図7】図7は、公知のハードウエア記述を示す回路図
である。
【図8】図8は、状態遷移位置数とレジスタ変数値の対
応を示すテーブルである。
【図9】図9は、状態遷移位置数とソース行との対応を
示すテーブルである。
【図10】図10は、本発明による論理シミュレーショ
ン方法の動作の実施の形態を示すフローチャートであ
る。
【図11】図11は、本発明による論理シミュレーショ
ン方法の他の動作を示すフローチャートである。
【図12】図12は、本発明による論理シミュレーショ
ン方法の更に他の動作を示すフローチャートである。
【図13】図13は、公知の論理シミュレーション方法
を示すシステムフロー図である。
【符号の説明】
3…アルゴリズム記述 8…クロックレベル記述(クロックレベルシミュレーシ
ョンモデル) 22,23…対応表 22…変数/レジスタ/状態位置対応表 23…ソース行/状態位置対応表 17…RTレベル記述 R…変数値 Reg1〜5…レジスタ

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】資源の制約の下で、回路のアルゴリズム記
    述の複数機能を単位クロックの中で動作が可能である部
    分機能に分解することと、 前記複数機能を形成するために前記部分機能を組合わせ
    ることにより前記アルゴリズム記述からクロックレベル
    記述を生成することとを含むことを特徴とするシミュレ
    ーションモデルの生成方法。
  2. 【請求項2】前記クロックレベル記述は、 前記資源のうちのレジスタを異なる複数機能間で兼用さ
    せる記述を備える請求項1記載のシミュレーションモデ
    ルの生成方法。
  3. 【請求項3】請求項1又は2に記載されるシミュレーシ
    ョンモデルの生成方法により生成されたクロックレベル
    記述と、 前記クロックレベル記述に対応する前記アルゴリズム記
    述とを対応させ単位クロックに相当する状態毎の資源使
    用対応表とを含むことを特徴とするシミュレーションモ
    デル。
  4. 【請求項4】請求項3に記載されるシミュレーションモ
    デルを用いて前記単位クロックで前記部分機能を動作さ
    せることにより前記複数機能をシミュレートすることを
    含むシミュレーション方法。
  5. 【請求項5】前記シミュレートすることの結果に基づい
    て、状態と前記アルゴリズム記述行とを対応づけ、前記
    アルゴリズム記述行毎の資源使用状況を表示することを
    特徴とする請求項4記載のシミュレーション方法。
  6. 【請求項6】前記シミュレーションモデルに含まれるク
    ロックレベル記述と対応表とを用いて、前記アルゴリズ
    ム記述行と当該シミュレーションにより得られる変数値
    の対応を表示することを特徴とする請求項3記載のシミ
    ュレーション方法。
  7. 【請求項7】前記クロックレベル記述とクロックレベル
    記述のうちの前記レジスタに関するレジスタ記述との対
    応表を作成することと、 前記クロックレベル記述の前記クロック単位の状態遷移
    が起これば前記状態遷移が起こった前記アルゴリズム記
    述部分を表示し、又は、前記クロックレベル記述の前記
    クロック単位の状態遷移が起これば前記状態遷移が起こ
    った前記レジスタ記述部分の前記レジスタの変数値を表
    示することの少なくとも一方を実行することとを含むこ
    とを特徴とする請求項2記載のシミュレーションモデル
    の生成方法。
  8. 【請求項8】請求項3に記載するシミュレーションモデ
    ル記述を記録するシミュレーション用記録媒体。
  9. 【請求項9】アルゴリズム記述と、 前記アルゴリズム記述よりも抽象度が低いRTレベル記
    述と、 前記アルゴリズム記述よりも抽象度が低く、且つ、前記
    RTレベル記述よりも抽象度が高いクロックレベル記述
    を含み、 前記クロックレベル記述は前記アルゴリズム記述からク
    ロック単位で生成する記述であり、 前記アルゴリズム記述と、前記クロックレベル記述と、
    前記RTレベル記述とは、前記アルゴリズム記述に含ま
    れて記述されるレジスタの変数値を共有するシミュレー
    ションモデル。
  10. 【請求項10】前記クロックレベル記述は演算を含み、 時間軸上で進行するクロックの中で実行する前記演算の
    変数がレジスタである請求項3記載のシミュレーション
    モデル。
JP29027699A 1999-10-12 1999-10-12 シミュレーションモデル、その生成方法、シミュレーション方法及びその記録媒体 Pending JP2001109788A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP29027699A JP2001109788A (ja) 1999-10-12 1999-10-12 シミュレーションモデル、その生成方法、シミュレーション方法及びその記録媒体
US09/686,305 US6782354B1 (en) 1999-10-12 2000-10-11 Method for producing simulation models and simulation system using simulation models

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP29027699A JP2001109788A (ja) 1999-10-12 1999-10-12 シミュレーションモデル、その生成方法、シミュレーション方法及びその記録媒体

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2002182246A Division JP3779651B2 (ja) 2002-06-21 2002-06-21 シミュレーションモデルの生成方法及びシミュレーション方法及びその記録媒体

Publications (1)

Publication Number Publication Date
JP2001109788A true JP2001109788A (ja) 2001-04-20

Family

ID=17754057

Family Applications (1)

Application Number Title Priority Date Filing Date
JP29027699A Pending JP2001109788A (ja) 1999-10-12 1999-10-12 シミュレーションモデル、その生成方法、シミュレーション方法及びその記録媒体

Country Status (2)

Country Link
US (1) US6782354B1 (ja)
JP (1) JP2001109788A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7062728B2 (en) 2001-06-29 2006-06-13 Matsushita Electric Industrial Co., Ltd. Method of designing a logic circuit utilizing an algorithm based in C language
JP2006309666A (ja) * 2005-05-02 2006-11-09 Ricoh Co Ltd プログラム開発支援装置、プログラム動作比較方法および半導体集積回路製造方法
JP2006309667A (ja) * 2005-05-02 2006-11-09 Fujitsu Ltd 動作合成検証装置及び方法
US7331024B2 (en) 2004-03-31 2008-02-12 Nec Electronics Corporation Power-consumption calculation method and apparatus
JP2008299464A (ja) * 2007-05-30 2008-12-11 Nec Electronics Corp 消費電力計算方法、消費電力計算プログラムおよび消費電力計算装置
US7523030B2 (en) 2004-09-30 2009-04-21 Nec Electronics Corporation Simulation system and computer program
WO2011007640A1 (ja) * 2009-07-15 2011-01-20 日本電気株式会社 動作合成装置、動作合成方法、ならびに、記録媒体
CN114553454A (zh) * 2020-11-26 2022-05-27 中国南方电网有限责任公司 网络带宽仿真验证方法、装置、计算机设备和存储介质

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002096563A2 (en) * 2001-05-31 2002-12-05 Pall Corporation Well for processing and filtering a fluid
JP4082653B2 (ja) * 2001-11-15 2008-04-30 松下電器産業株式会社 高位合成方法および高位合成装置
JP2004054756A (ja) * 2002-07-23 2004-02-19 Nec Electronics Corp 消費電力見積り装置及び方法
JP2004054755A (ja) * 2002-07-23 2004-02-19 Nec Electronics Corp システムレベル設計方法及びシステムレベル設計装置
US7296054B2 (en) * 2003-01-24 2007-11-13 The Mathworks, Inc. Model simulation and calibration
US8639487B1 (en) * 2003-03-25 2014-01-28 Cadence Design Systems, Inc. Method for multiple processor system-on-a-chip hardware and software cogeneration
US20050047556A1 (en) * 2003-08-25 2005-03-03 Somerville Mark E. Media platform testing
US7783467B2 (en) * 2005-12-10 2010-08-24 Electronics And Telecommunications Research Institute Method for digital system modeling by using higher software simulator
JP2008171296A (ja) * 2007-01-15 2008-07-24 Fujitsu Ltd モデル作成プログラム、モデル作成装置、モデル作成方法
US7974827B2 (en) 2007-04-23 2011-07-05 Microsoft Corporation Resource model training
US7877250B2 (en) 2007-04-23 2011-01-25 John M Oslake Creation of resource models
US7996204B2 (en) * 2007-04-23 2011-08-09 Microsoft Corporation Simulation using resource models
WO2013075909A1 (de) * 2011-11-25 2013-05-30 Siemens Aktiengesellschaft Verfahren zur automatischen generierung von simulationsmodellen anhand von stromlaufplänen
US11537769B2 (en) * 2020-05-12 2022-12-27 Renesas Electronics Corporation Simulator and simulation method

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03134774A (ja) 1989-10-20 1991-06-07 Hitachi Ltd 論理シミユレーシヨン方法
US5544067A (en) * 1990-04-06 1996-08-06 Lsi Logic Corporation Method and system for creating, deriving and validating structural description of electronic system from higher level, behavior-oriented description, including interactive schematic design and simulation
US5572437A (en) 1990-04-06 1996-11-05 Lsi Logic Corporation Method and system for creating and verifying structural logic model of electronic design from behavioral description, including generation of logic and timing models
US5555201A (en) 1990-04-06 1996-09-10 Lsi Logic Corporation Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including interactive system for hierarchical display of control and dataflow information
US5598344A (en) * 1990-04-06 1997-01-28 Lsi Logic Corporation Method and system for creating, validating, and scaling structural description of electronic device
US5870308A (en) 1990-04-06 1999-02-09 Lsi Logic Corporation Method and system for creating and validating low-level description of electronic design
JPH04309178A (ja) 1991-04-08 1992-10-30 Fujitsu Ltd 論理シミュレーション方法
JPH0561934A (ja) 1991-09-05 1993-03-12 Nec Corp 論理シミユレーシヨン方式
JPH05108748A (ja) 1991-10-15 1993-04-30 Nec Corp 論理回路シミユレーシヨン方式
JPH05225277A (ja) 1992-02-10 1993-09-03 Matsushita Electric Ind Co Ltd 設計支援装置
JPH05258002A (ja) 1992-03-11 1993-10-08 Nec Corp 異種シミュレータの同期実行制御方式
US5701439A (en) * 1992-03-30 1997-12-23 Boeing North American, Inc. Combined discrete-event and continuous model simulation and analysis tool
JP3176482B2 (ja) 1993-07-07 2001-06-18 富士通株式会社 論理シミュレーション装置
JPH07110826A (ja) 1993-10-14 1995-04-25 Hitachi Ltd ミックスモードシミュレーション方法
US6044211A (en) 1994-03-14 2000-03-28 C.A.E. Plus, Inc. Method for graphically representing a digital device as a behavioral description with data and control flow elements, and for converting the behavioral description to a structural description
JP3144617B2 (ja) 1995-04-20 2001-03-12 株式会社日立製作所 論理回路の検証方法
US5910898A (en) 1995-12-14 1999-06-08 Viewlogic Systems, Inc. Circuit design methods and tools
JP3134774B2 (ja) 1996-05-29 2001-02-13 株式会社島津製作所 Icp質量分析装置
US6110223A (en) * 1996-10-28 2000-08-29 Altera Corporation Graphic editor for block diagram level design of circuits
JP3472067B2 (ja) 1997-03-18 2003-12-02 株式会社東芝 設計支援装置
JP3145340B2 (ja) 1997-08-28 2001-03-12 株式会社黒田製作所 光線治療器

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7062728B2 (en) 2001-06-29 2006-06-13 Matsushita Electric Industrial Co., Ltd. Method of designing a logic circuit utilizing an algorithm based in C language
US7331024B2 (en) 2004-03-31 2008-02-12 Nec Electronics Corporation Power-consumption calculation method and apparatus
US7523030B2 (en) 2004-09-30 2009-04-21 Nec Electronics Corporation Simulation system and computer program
JP2006309666A (ja) * 2005-05-02 2006-11-09 Ricoh Co Ltd プログラム開発支援装置、プログラム動作比較方法および半導体集積回路製造方法
JP2006309667A (ja) * 2005-05-02 2006-11-09 Fujitsu Ltd 動作合成検証装置及び方法
JP2008299464A (ja) * 2007-05-30 2008-12-11 Nec Electronics Corp 消費電力計算方法、消費電力計算プログラムおよび消費電力計算装置
WO2011007640A1 (ja) * 2009-07-15 2011-01-20 日本電気株式会社 動作合成装置、動作合成方法、ならびに、記録媒体
JP5110206B2 (ja) * 2009-07-15 2012-12-26 日本電気株式会社 動作合成装置、動作合成方法、ならびに、プログラム
CN114553454A (zh) * 2020-11-26 2022-05-27 中国南方电网有限责任公司 网络带宽仿真验证方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
US6782354B1 (en) 2004-08-24

Similar Documents

Publication Publication Date Title
JP2001109788A (ja) シミュレーションモデル、その生成方法、シミュレーション方法及びその記録媒体
US8527972B2 (en) Method for forming a parallel processing system
JP5842255B2 (ja) プログラミング言語による論理回路記述から論理回路を生成するための装置及び方法
US7418681B2 (en) Simulation system, simulation method and simulation program for verifying logic behavior of a semiconductor integrated circuit
KR100992025B1 (ko) 멀티-사이클 클록 게이팅 방법
US7035781B1 (en) Mixed language simulator
US7318213B2 (en) Apparatus, method and program for behavioral synthesis including loop processing
JP2002083001A (ja) 論理回路の設計方法及びそれに使用するセルライブラリ
JPH06208602A (ja) 可検査性設計規則の検証方法
JP3896177B2 (ja) エミュレーションシステム
US5912819A (en) Method for designing an architectural system
US6816828B1 (en) Logic simulation method in which simulation is dynamically switchable between models
JP2001249824A (ja) 論理エミュレーションプロセッサおよびそのモジュールユニット
US7228513B2 (en) Circuit operation verification device and method
JP3779651B2 (ja) シミュレーションモデルの生成方法及びシミュレーション方法及びその記録媒体
JPH05101141A (ja) 高位合成装置
US10318687B2 (en) Implementing a constant in FPGA code
US8234613B2 (en) Program, design apparatus, and design method for dynamic reconfigurable circuit
US6367066B1 (en) System for synthesizing a circuit by re-writing signed variables into unsigned variables and sharing resources for identical operations having different timing
Mooney et al. Synthesis from mixed specifications
Arnold et al. Behavior to structure: using Verilog and in-circuit emulation to teach how an algorithm becomes hardware
US8539415B2 (en) Reconfigurable circuit, its design method, and design apparatus
CN111338427B (zh) 一种实现SystemC半实物仿真时间同步的方法
JPH1021271A (ja) 論理回路設計支援装置
EP0991000A2 (en) Reuse of hardware components

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20020805

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041220