JP2005293219A - ソフトウェア検証モデル生成方法 - Google Patents
ソフトウェア検証モデル生成方法 Download PDFInfo
- Publication number
- JP2005293219A JP2005293219A JP2004107207A JP2004107207A JP2005293219A JP 2005293219 A JP2005293219 A JP 2005293219A JP 2004107207 A JP2004107207 A JP 2004107207A JP 2004107207 A JP2004107207 A JP 2004107207A JP 2005293219 A JP2005293219 A JP 2005293219A
- Authority
- JP
- Japan
- Prior art keywords
- software
- execution time
- verification model
- integrated value
- basic block
- 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.)
- Granted
Links
Images
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
【解決手段】 ホストCPUにより半導体装置の協調検証を実行するためにソフトウェアの検証モデルを生成する場合に、ソフトウェア部品のBasic Block を認識して制御点を挿入し、制御点が挿入されたソフトウェア部品をコンパイルしてターゲットCPU用バイナリ・コードを生成し、Basic Block の制御点間の実行時間を算出し、当該実行時間を積算した積算値が指定値以上であると判定された場合に、当該積算値をパラメータとする実行時間挿入文をBasic Block の後の制御点に追加し、当該積算値をクリアして0にし、上記の一連の処理で得られたCベース言語のソフトウェア部品を検証モデルとして出力する。
【選択図】 図9
Description
一般に、半導体装置に搭載されるハードウェア及びソフトウェアの高速協調シミュレーションを実現するためには、基本部品、ハードウェア部品及びソフトウェア部品をモデル化することによって検証モデルを作成することが必要である。
kΣ[各命令のサイクル数]
なる演算式に基づいて行われる。ここで、係数kは、キャッシュ・メモリのミスヒットに起因するオーバヘッド係数であり、統計的処理による実行時間の補正を可能とするために導入されたものである。
ISSを使用した協調検証に関する先行技術文献としては、下記特許文献2〜4の他に、下記の非特許文献1及び2が存在する。なお、下記の非特許文献3は、前述の“Basic Block”に関するものであり、非特許文献4〜6は、前述の“Fixed I/O Behaviorモデル”に関するものであり、非特許文献7〜9は、Cベース言語の設計及び検証の技術動向に関するものである。
図5は、本発明に係るソフトウェア検証モデル生成方法を実施するためのハードウェア環境を例示するブロック図である。なお、これ以降、前述した構成要素と同様のものについては、同一の参照番号を付して表すこととする。
図6においては、半導体装置に搭載されるハードウェア及びソフトウェアの協調検証を実行するために、ソフトウェア部品(ここでは、説明の便宜上、基本部品のRTOSをソフトウェア部品に含ませている)40と、ハードウェア部品60とがモデル化されている。
さらに、図9は、図7に示されるような本発明に係るバジェット処理1の追加によるソフトウェア検証モデル生成方法を説明するための模式図であり、図10は、図8に示されるような本発明に係るバジェット処理2の追加によるソフトウェア検証モデル生成方法を説明するための模式図である。
kΣ[各命令のサイクル数]
なる演算式に基づいて行われる。ここで、係数kは、キャッシュ・メモリのミスヒットに起因するオーバヘッド係数であり、本実施形態においてはキャッシュ・メモリ・モデルを設けないことから、統計的処理による実行時間の補正を可能とするために導入されたものである。
さらに、ステップ150では、ステップ140で実行時間を積算して得られる積算値が予め定められた指定値以上であるか否かを判定する。
本発明に係る解決方法♯1は、例えば図7、図9及び図11に示したように、バジェット処理1を追加することによって、Cベース言語記述のソフトウェア部品のBasic Block に挿入された各々の制御点間の実行時間を算出すると共に、当該実行時間を積算して得られる積算値が指定値以上であると判定された場合にのみ当該積算値をパラメータとするwaitfor 文を上記ソフトウェア部品に追加する方法である。
12…中央処理装置(CPU)
14…主記憶装置(MS)
20…ディスプレイ
22…キーボード
24…マウス
30…外部記憶装置(ハードディスク装置)
40…ソフトウェア部品
41…タスク
42…割込みハンドラ
43…リアルタイム・オペレーティングシステム(RTOS)
44…ディスパッチャ
45…デバイス・ドライバ
50…キーボード
60…ハードウェア部品
70…Cベース・シミュレータ
Claims (5)
- ホストCPUを使用して、一つのターゲットCPU及び一つのOSが少なくとも搭載される半導体装置のハードウェア及びソフトウェアの協調検証を実行するために、ソフトウェアの検証モデルを生成するソフトウェア検証モデル生成方法であって、
Cベース言語記述のソフトウェア部品を入力してANSI−C記述部分を取り出し、Basic Block を認識し、制御点を挿入するステップと、
該制御点が挿入された前記ANSI−C記述部分をコンパイルしてターゲットCPU用バイナリ・コードを生成するステップと、
前記Basic Block の各々について、該Basic Block の制御点間の実行時間を算出するステップと、
算出された該実行時間を積算するステップと、
該実行時間を積算して得られる積算値が予め指定された指定値以上であるか否かを判定するステップと、
前記積算値が前記指定値以上であると判定された場合に、前記積算値をパラメータとする実行時間挿入文を該Basic Block の後の制御点に追加し、前記積算値をクリアして0にするステップと、
前記の一連のステップで得られたCベース言語記述のソフトウェア部品を前記検証モデルとして出力するステップとを有することを特徴とするソフトウェア検証モデル生成方法。 - ホストCPUを使用して、一つのターゲットCPU及び一つのOSが少なくとも搭載される半導体装置のハードウェア及びソフトウェアの協調検証を実行するために、ソフトウェアの検証モデルを生成するソフトウェア検証モデル生成方法であって、
Cベース言語記述のソフトウェア部品を入力してANSI−C記述部分を取り出し、Basic Block を認識し、制御点を挿入するステップと、
該制御点が挿入された前記ANSI−C記述部分をコンパイルしてターゲットCPU用バイナリ・コードを生成するステップと、
前記Basic Block の各々について、該Basic Block の制御点間の実行時間を算出するステップと、
算出された該実行時間を積算するステップと、
前記OSに関係するサービス・コールの発行時のイベント、又は、前記ハードウェアに関係するイベントが発生する箇所に、前記実行時間を積算して得られる積算値をパラメータとする実行時間挿入文を追加し、前記積算値をクリアして0にするステップと、
前記の一連のステップで得られたCベース言語記述のソフトウェア部品を前記検証モデルとして出力するステップとを有することを特徴とするソフトウェア検証モデル生成方法。 - ホストCPUを使用して、一つのターゲットCPU及び一つのOSが少なくとも搭載される半導体装置のハードウェア及びソフトウェアの協調検証を実行するために、ソフトウェアの検証モデルを生成するソフトウェア検証モデル生成方法であって、
Cベース言語記述のソフトウェア部品を入力してANSI−C記述部分を取り出し、Basic Block を認識し、制御点を挿入するステップと、
該制御点が挿入された前記ANSI−C記述部分をコンパイルしてターゲットCPU用バイナリ・コードを生成するステップと、
前記Basic Block の各々について、該Basic Block の制御点間の実行時間を算出するステップと、
算出された該実行時間を積算するステップと、
前記OSに関係するサービス・コールの受信時のイベント、又は、前記ハードウェアに関係するイベントが発生する箇所に、前記実行時間を積算して得られる積算値をパラメータとする実行時間挿入文を追加し、前記積算値をクリアして0にするステップと、
前記の一連のステップで得られたCベース言語記述のソフトウェア部品を前記検証モデルとして出力するステップとを有することを特徴とするソフトウェア検証モデル生成方法。 - ホストCPUを使用して、一つのターゲットCPU及び一つのOSが少なくとも搭載される半導体装置のハードウェア及びソフトウェアの協調検証を実行するために、ソフトウェアの検証モデルを生成するソフトウェア検証モデル生成方法であって、
Cベース言語記述のソフトウェア部品を入力してANSI−C記述部分を取り出し、Basic Block を認識し、制御点を挿入するステップと、
該制御点が挿入された前記ANSI−C記述部分をコンパイルしてターゲットCPU用バイナリ・コードを生成するステップと、
前記Basic Block の各々について、該Basic Block の制御点間の実行時間を算出するステップと、
算出された該実行時間を積算するステップと、
該実行時間を積算して得られる積算値が予め指定された指定値以上であるか否かを判定するステップと、
前記積算値が前記指定値以上であると判定された場合に、前記積算値をパラメータとする実行時間挿入文を該Basic Block の後の制御点に追加し、前記積算値をクリアして0にするステップと、
前記OSに関係するサービス・コールの発行時のイベント、又は、前記ハードウェアに関係するイベントが発生する箇所に、前記積算値をパラメータとする実行時間挿入文を追加し、前記積算値をクリアして0にするステップと、
前記の一連のステップで得られたCベース言語記述のソフトウェア部品を前記検証モデルとして出力するステップとを有することを特徴とするソフトウェア検証モデル生成方法。 - ホストCPUを使用して、一つのターゲットCPU及び一つのOSが少なくとも搭載される半導体装置のハードウェア及びソフトウェアの協調検証を実行するために、ソフトウェアの検証モデルを生成するソフトウェア検証モデル生成方法であって、
Cベース言語記述のソフトウェア部品を入力してANSI−C記述部分を取り出し、Basic Block を認識し、制御点を挿入するステップと、
該制御点が挿入された前記ANSI−C記述部分をコンパイルしてターゲットCPU用バイナリ・コードを生成するステップと、
前記Basic Block の各々について、該Basic Block の制御点間の実行時間を算出するステップと、
算出された該実行時間を積算するステップと、
該実行時間を積算して得られる積算値が予め指定された指定値以上であるか否かを判定するステップと、
前記積算値が前記指定値以上であると判定された場合に、前記積算値をパラメータとする実行時間挿入文を該Basic Block の後の制御点に追加し、前記積算値をクリアして0にするステップと、
前記OSに関係するサービス・コールの受信時のイベント、又は、前記ハードウェアに関係するイベントが発生する箇所に、前記積算値をパラメータとする実行時間挿入文を追加し、前記積算値をクリアして0にするステップと、
前記の一連のステップで得られたCベース言語記述のソフトウェア部品を前記検証モデルとして出力するステップとを有することを特徴とするソフトウェア検証モデル生成方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004107207A JP4271072B2 (ja) | 2004-03-31 | 2004-03-31 | ソフトウェア検証モデル生成方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004107207A JP4271072B2 (ja) | 2004-03-31 | 2004-03-31 | ソフトウェア検証モデル生成方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2005293219A true JP2005293219A (ja) | 2005-10-20 |
| JP4271072B2 JP4271072B2 (ja) | 2009-06-03 |
Family
ID=35326080
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2004107207A Expired - Fee Related JP4271072B2 (ja) | 2004-03-31 | 2004-03-31 | ソフトウェア検証モデル生成方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4271072B2 (ja) |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7957950B2 (en) | 2008-02-28 | 2011-06-07 | Oki Semiconductor Co., Ltd. | Hard/soft cooperative verifying simulator |
| CN102279768A (zh) * | 2010-06-10 | 2011-12-14 | 株式会社东芝 | 仿真装置、仿真程序以及仿真方法 |
| JP2012073759A (ja) * | 2010-09-28 | 2012-04-12 | Toshiba Corp | 設計記述書換装置およびその方法 |
| US8290764B2 (en) | 2007-12-27 | 2012-10-16 | Toshiba Solutions Corporation | Virtualization program, simulation apparatus and virtualization method |
| US8370797B2 (en) | 2008-06-20 | 2013-02-05 | Sony Corporation | Data processing apparatus, method therefor, and computer program |
| JP2015170081A (ja) * | 2014-03-06 | 2015-09-28 | 三菱電機株式会社 | シミュレーション装置及びシミュレーションプログラム |
-
2004
- 2004-03-31 JP JP2004107207A patent/JP4271072B2/ja not_active Expired - Fee Related
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8290764B2 (en) | 2007-12-27 | 2012-10-16 | Toshiba Solutions Corporation | Virtualization program, simulation apparatus and virtualization method |
| US7957950B2 (en) | 2008-02-28 | 2011-06-07 | Oki Semiconductor Co., Ltd. | Hard/soft cooperative verifying simulator |
| US8370797B2 (en) | 2008-06-20 | 2013-02-05 | Sony Corporation | Data processing apparatus, method therefor, and computer program |
| CN102279768A (zh) * | 2010-06-10 | 2011-12-14 | 株式会社东芝 | 仿真装置、仿真程序以及仿真方法 |
| US8744831B2 (en) | 2010-06-10 | 2014-06-03 | Kabushiki Kaisha Toshiba | Simulation apparatus, simulation method and recording medium for recording simulation program |
| CN102279768B (zh) * | 2010-06-10 | 2014-06-25 | 株式会社东芝 | 仿真装置以及仿真方法 |
| JP2012073759A (ja) * | 2010-09-28 | 2012-04-12 | Toshiba Corp | 設計記述書換装置およびその方法 |
| JP2015170081A (ja) * | 2014-03-06 | 2015-09-28 | 三菱電機株式会社 | シミュレーション装置及びシミュレーションプログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| JP4271072B2 (ja) | 2009-06-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3951925B2 (ja) | ハードウェア/ソフトウェア協調検証方法 | |
| Richter et al. | A formal approach to MpSoC performance verification | |
| Ernst | Codesign of embedded systems: Status and trends | |
| CN113901745A (zh) | 芯片测试方法、装置、电子设备及计算机可读存储介质 | |
| US6895524B2 (en) | Circuit reduction technique for improving clock net analysis performance | |
| US20200371843A1 (en) | Framework for application driven exploration and optimization of hardware engines | |
| Villarreal et al. | Improving software performance with configurable logic | |
| Posadas et al. | System-level performance analysis in SystemC | |
| Liang et al. | FlexCL: A model of performance and power for OpenCL workloads on FPGAs | |
| Beltrame et al. | Multi-accuracy power and performance transaction-level modeling | |
| JP4271072B2 (ja) | ソフトウェア検証モデル生成方法 | |
| US7992112B2 (en) | Hardware verification programming description generation apparatus, high-level synthesis apparatus, hardware verification programming description generation method, hardware verification program generation method, control program and computer-readable recording medium | |
| JP4342392B2 (ja) | ソフトウェア検証モデル生成方法 | |
| Bouchhima et al. | Generic discrete–continuous simulation model for accurate validation in heterogeneous systems design | |
| JP5447547B2 (ja) | マクロ遅延解析装置、マクロ境界パスの遅延解析方法、マクロ境界パスの遅延解析プログラム | |
| CN118468771A (zh) | 芯片问题定位方法、装置及相关设备 | |
| JP2000259445A (ja) | ソフトウェア/ハードウェア協調シミュレーション方法 | |
| JP2005321848A (ja) | システムシミュレーション実行プログラムおよびハードウェア記述変換プログラム | |
| Holzer et al. | Efficient design methods for embedded communication systems | |
| Centomo et al. | Automatic generation of cycle-accurate simulink blocks from hdl ips | |
| JP4264110B2 (ja) | 模擬実行装置、方法およびプログラム | |
| Dömer | Transaction level modeling of computation | |
| Ziegenbein et al. | Breaking down complexity for reliable system-level timing validation | |
| JP5390464B2 (ja) | シミュレーション装置、シミュレーション装置の制御方法およびプログラム | |
| JP2006011840A (ja) | 組み込みシステム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20061106 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20061106 |
|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20061106 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070305 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081119 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20081126 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090203 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090224 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120306 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 4271072 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130306 Year of fee payment: 4 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140306 Year of fee payment: 5 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| LAPS | Cancellation because of no payment of annual fees |