JP6958038B2 - シミュレーションプログラム、方法、及び装置 - Google Patents
シミュレーションプログラム、方法、及び装置 Download PDFInfo
- Publication number
- JP6958038B2 JP6958038B2 JP2017133099A JP2017133099A JP6958038B2 JP 6958038 B2 JP6958038 B2 JP 6958038B2 JP 2017133099 A JP2017133099 A JP 2017133099A JP 2017133099 A JP2017133099 A JP 2017133099A JP 6958038 B2 JP6958038 B2 JP 6958038B2
- Authority
- JP
- Japan
- Prior art keywords
- core
- address
- cores
- simulation
- resource access
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
- G06F9/30192—Instruction operation extension or modification according to data descriptor, e.g. dynamic data typing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/468—Specific access rights for resources, e.g. using capability register
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Description
0x0104+0x0000+0x1000×1=0x1104
0x0110+0x0000+0x1000×1=0x1110
0x0104+0x0000+0x1000×2=0x2104
0x0110+0x0000+0x1000×2=0x2110
)及びロードストアアドレスが記載された動作ファイル902(#2)を出力する。
0x0104+0x0000+0x1000×3=0x3104
0x0110+0x0000+0x1000×3=0x3110
)及びロードストアアドレスが記載された動作ファイル902(#3)を出力する。
データ1121は、アプリケーション1120で使用される各種データである。
図12は、図11の第1の実施形態のシミュレーション装置において、アドレス変換コピー生成部1112が参照するパラメータ1122(図11参照))の例を示すデータ構成図である。
行目に書き込む(ステップS1307)。
(付記1)
複数のコアの夫々に関するリソースアクセスの動作内容に基づいて前記複数のコア間のリソース競合のシミュレーションを実行するシミュレーションプログラムであって、
前記複数のコアのうちの少なくとも1つのコアに関するシミュレーションを実行して前記1つのコアに関するリソースアクセスの動作内容を抽出するステップと、
前記複数のコアに対する実行処理における互いの特定の関係の下で、前記1つのコアによってアクセスするリソースのアドレスと前記複数のコアのうちの前記1つのコア以外の他のコアによってアクセスするリソースのアドレスとのアドレス差を、前記1つのコアに関するリソースアクセスの動作内容に反映させることにより、前記他のコアに関するリソースアクセスの動作内容を生成するステップと、
をコンピュータに実行させるためのシミュレーションプログラム。
(付記2)
前記1つのコアに関するリソースアクセスの動作内容を抽出するステップにおいて、前記複数のコアのうちの2種類以上のコアに関するシミュレーションを実行して前記2種類以上のコアに関する2種類以上のリソースアクセスの動作内容を抽出し、
前記他のコアに関するリソースアクセスの動作内容を生成するステップにおいて、前記2種類以上のコアに関するリソースアクセスの動作内容の何れかに基づいて、前記他のコアに関するリソースアクセスの動作内容を生成する、
ことを特徴とする付記1に記載のシミュレーションプログラム。
(付記3)
前記他のコアに関するリソースアクセスの動作内容を生成するステップにおいて、記憶装置に記憶された前記他のコアに関するリソースアクセスの動作内容の生成数と、プログラムアドレスのオフセット値と、前記コア毎のプログラムサイズの上限を示すプログラムサイズ値と、ロードストアアドレスのオフセット値と、前記コア毎に利用するメモリアドレスの上限値を含むパラメータ情報に基づいて前記アドレス差を算出する、ことを特徴とする付記1又は2に記載のシミュレーションプログラム。
(付記4)
前記リソースアクセスの動作内容は、バスに接続されたメモリに対するロード命令又はストア命令である、ことを特徴とする付記1乃至3の何れかに記載のシミュレーションプログラム。
(付記5)
前記コアによってアクセスするリソースのアドレスは、前記ロード命令又はストア命令のプログラムアドレス又はロードストアアドレスである、ことを特徴とする付記4に記載のシミュレーションプログラム。
(付記6)
前記複数のコアに対する実行処理における互いの特定の関係は、前記コアのそれぞれが、同一の一連の命令群からなる繰返し処理を、同一又は異なるプログラムアドレス又はロードストアアドレスに対して実行する関係である、ことを特徴とする付記1乃至5の何れかに記載のシミュレーションプログラム。
(付記7)
複数のコアの夫々に関するリソースアクセスの動作内容に基づいて前記複数のコア間のリソース競合のシミュレーションを実行するシミュレーション実行方法であって、
前記複数のコアのうちの少なくとも1つのコアに関するシミュレーションを実行して前記1つのコアに関するリソースアクセスの動作内容を抽出し、
前記複数のコアに対する実行処理における互いの特定の関係の下で、前記1つのコアによってアクセスするリソースのアドレスと前記複数のコアのうちの前記1つのコア以外の他のコアによってアクセスするリソースのアドレスとのアドレス差を、前記1つのコアに関するリソースアクセスの動作内容に反映させることにより、前記他のコアに関するリソースアクセスの動作内容を生成する、
ことを特徴とするシミュレーション実行方法。
(付記8)
複数のコアの夫々に関するリソースアクセスの動作内容に基づいて前記複数のコア間のリソース競合のシミュレーションを実行するシミュレーション装置であって、
前記複数のコアのうちの少なくとも1つのコアに関するシミュレーションを実行するコアシミュレータ部と、
前記コアシミュレータ部における前記1つのコアに関する動作結果から前記1つのコアに関するリソースアクセスの動作内容を抽出する変換部と、
前記複数のコアに対する実行処理における互いの特定の関係の下で、前記1つのコアによってアクセスするリソースのアドレスと前記複数のコアのうちの前記1つのコア以外の他のコアによってアクセスするリソースのアドレスとのアドレス差を、前記1つのコアに関するリソースアクセスの動作内容に反映させることにより、前記他のコアに関するリソースアクセスの動作内容を生成するアドレス変換コピー生成部と、
前記変換部が抽出した前記1つのコアに関するリソースアクセスの動作内容と、前記アドレス変換コピー生成部が生成した前記他のコアに関するリソースアクセスの動作内容とに基づいて、前記複数のコア間のリソース競合のシミュレーションを実行するモデルシミュレート部と、
を備えることを特徴とするシミュレーション装置。
(付記9)
複数のコアの夫々に関するリソースアクセスの動作内容に基づいて前記複数のコア間のリソース競合のシミュレーションを実行するシミュレーションプログラムであって、
前記複数のコアのうちの少なくとも1つのコアに関するシミュレーションを実行して前記1つのコアに関するリソースアクセスの動作内容を抽出するステップと、
前記複数のコアに対する実行処理における互いの特定の関係の下で、前記1つのコアによってアクセスするリソースのアドレスと前記複数のコアのうちの前記1つのコア以外の他のコアによってアクセスするリソースのアドレスとのアドレス差を、前記1つのコアに関するリソースアクセスの動作内容に反映させることにより前記他のコアに関するリソースアクセスの動作内容を生成しながら、前記複数のコア間のリソース競合のシミュレーションを実行するステップと、
をコンピュータに実行させるためのシミュレーションプログラム。
502 SRAM
503 バス
601 アプリケーション
602 コア単体のシミュレータ
603 動作結果
604、902 動作ファイル
605 TG
901、1112、1601 アドレス変換コピー生成部
1101 処理部
1102 記憶部
1110 コアシミュレータ部
1111 変換部
1113、2101 モデルシミュレート部
1120 アプリケーション
1122 パラメータ
1125 シミュレーション結果
1126 モデル
1701 アプリケーション番号
Claims (8)
- 複数のコアの夫々に関するリソースアクセスの動作内容に基づいて前記複数のコア間の動作のシミュレーションを実行するシミュレーションプログラムであって、
前記複数のコアのうちの少なくとも1つのコアに関するシミュレーションを実行して前記1つのコアに関するリソースアクセスの動作内容を抽出するステップと、
前記複数のコアに対する実行処理における互いの特定の関係の下で、前記1つのコアによってアクセスするリソースのアドレスと前記複数のコアのうちの前記1つのコア以外の他のコアによってアクセスするリソースのアドレスとのアドレス差を、前記1つのコアに関するリソースアクセスの動作内容に反映させることにより、前記他のコアに関するリソースアクセスの動作内容を生成するステップと、
をコンピュータに実行させるためのシミュレーションプログラム。 - 前記1つのコアに関するリソースアクセスの動作内容を抽出するステップにおいて、前記複数のコアのうちの2種類以上のコアに関するシミュレーションを実行して前記2種類以上のコアに関する2種類以上のリソースアクセスの動作内容を抽出し、
前記他のコアに関するリソースアクセスの動作内容を生成するステップにおいて、前記2種類以上のコアに関するリソースアクセスの動作内容の何れかに基づいて、前記他のコアに関するリソースアクセスの動作内容を生成する、
ことを特徴とする請求項1に記載のシミュレーションプログラム。 - 前記他のコアに関するリソースアクセスの動作内容を生成するステップにおいて、記憶装置に記憶された前記他のコアに関するリソースアクセスの動作内容の生成数と、プログラムアドレスのオフセット値と、前記コア毎のプログラムサイズの上限を示すプログラムサイズ値と、ロードストアアドレスのオフセット値と、前記コア毎に利用するメモリアドレスの上限値を含むパラメータ情報に基づいて前記アドレス差を算出する、ことを特徴とする請求項1又は2に記載のシミュレーションプログラム。
- 前記リソースアクセスの動作内容は、バスに接続されたメモリに対するロード命令又はストア命令である、ことを特徴とする請求項1乃至3の何れかに記載のシミュレーションプログラム。
- 前記コアによってアクセスするリソースのアドレスは、前記ロード命令又はストア命令のプログラムアドレス又はロードストアアドレスである、ことを特徴とする請求項4に記載のシミュレーションプログラム。
- 前記複数のコアに対する実行処理における互いの特定の関係は、前記コアのそれぞれが、同一の一連の命令群からなる繰返し処理を、同一又は異なるプログラムアドレス又はロードストアアドレスに対して実行する関係である、ことを特徴とする請求項1乃至5の何れかに記載のシミュレーションプログラム。
- 複数のコアの夫々に関するリソースアクセスの動作内容に基づいて前記複数のコア間のリソース競合のシミュレーションをコンピュータが実行するシミュレーション実行方法であって、
前記複数のコアのうちの少なくとも1つのコアに関するシミュレーションを実行して前記1つのコアに関するリソースアクセスの動作内容を抽出し、
前記複数のコアに対する実行処理における互いの特定の関係の下で、前記1つのコアによってアクセスするリソースのアドレスと前記複数のコアのうちの前記1つのコア以外の他のコアによってアクセスするリソースのアドレスとのアドレス差を、前記1つのコアに関するリソースアクセスの動作内容に反映させることにより、前記他のコアに関するリソースアクセスの動作内容を生成する、
ことを特徴とするシミュレーション実行方法。 - 複数のコアの夫々に関するリソースアクセスの動作内容に基づいて前記複数のコア間のリソース競合のシミュレーションを実行するシミュレーション装置であって、
前記複数のコアのうちの少なくとも1つのコアに関するシミュレーションを実行するコアシミュレータ部と、
前記コアシミュレータ部における前記1つのコアに関する動作結果から前記1つのコアに関するリソースアクセスの動作内容を抽出する変換部と、
前記複数のコアに対する実行処理における互いの特定の関係の下で、前記1つのコアによってアクセスするリソースのアドレスと前記複数のコアのうちの前記1つのコア以外の他のコアによってアクセスするリソースのアドレスとのアドレス差を、前記1つのコアに関するリソースアクセスの動作内容に反映させることにより、前記他のコアに関するリソースアクセスの動作内容を生成するアドレス変換コピー生成部と、
前記変換部が抽出した前記1つのコアに関するリソースアクセスの動作内容と、前記アドレス変換コピー生成部が生成した前記他のコアに関するリソースアクセスの動作内容とに基づいて、前記複数のコア間のリソース競合のシミュレーションを実行するモデルシミュレート部と、
を備えることを特徴とするシミュレーション装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017133099A JP6958038B2 (ja) | 2017-07-06 | 2017-07-06 | シミュレーションプログラム、方法、及び装置 |
US16/026,459 US10908934B2 (en) | 2017-07-06 | 2018-07-03 | Simulation program, method, and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017133099A JP6958038B2 (ja) | 2017-07-06 | 2017-07-06 | シミュレーションプログラム、方法、及び装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019016167A JP2019016167A (ja) | 2019-01-31 |
JP6958038B2 true JP6958038B2 (ja) | 2021-11-02 |
Family
ID=64903185
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017133099A Active JP6958038B2 (ja) | 2017-07-06 | 2017-07-06 | シミュレーションプログラム、方法、及び装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10908934B2 (ja) |
JP (1) | JP6958038B2 (ja) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01314345A (ja) | 1988-06-14 | 1989-12-19 | Fujitsu Ltd | トレースメモリ装置 |
JP3348445B2 (ja) * | 1992-08-10 | 2002-11-20 | 富士通株式会社 | 並列計算機のシミュレーション方法およびシミュレータ |
JP3175675B2 (ja) * | 1997-12-04 | 2001-06-11 | 日本電気株式会社 | プリフェッチ制御装置 |
JP3608915B2 (ja) * | 1997-09-22 | 2005-01-12 | 富士通株式会社 | マルチプロセッシングシステムの性能評価方法および装置並びにマルチプロセッシングシステムの性能評価プログラムを格納した記憶媒体 |
JP2004021907A (ja) | 2002-06-20 | 2004-01-22 | Matsushita Electric Ind Co Ltd | 性能評価用シミュレーションシステム |
CN101256502B (zh) * | 2007-02-27 | 2011-02-09 | 国际商业机器公司 | 模拟多处理器系统的系统和方法 |
US7925489B2 (en) * | 2007-10-31 | 2011-04-12 | International Business Machines Corporation | Defining and recording threshold-qualified count events of a simulation by testcases |
TWI378356B (en) * | 2009-04-21 | 2012-12-01 | Nat Univ Tsing Hua | Method and device for multi-core instruction-set simulation |
JP2014215768A (ja) | 2013-04-24 | 2014-11-17 | 富士通セミコンダクター株式会社 | 性能評価用トランザクション生成プログラム及び性能評価用トランザクション生成装置 |
-
2017
- 2017-07-06 JP JP2017133099A patent/JP6958038B2/ja active Active
-
2018
- 2018-07-03 US US16/026,459 patent/US10908934B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US10908934B2 (en) | 2021-02-02 |
US20190012191A1 (en) | 2019-01-10 |
JP2019016167A (ja) | 2019-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4994393B2 (ja) | 単一のマスターモデルから異なる抽象化レベルの複数のモデルを生成するシステムと方法 | |
US11803404B2 (en) | Deep learning algorithm compiling method, device, and related product | |
US8458630B1 (en) | Supporting dynamic aspects of polymorphism in high-level synthesis of integrated circuit designs | |
US10586003B1 (en) | Circuit design using high level synthesis and linked hardware description language libraries | |
JP6289751B2 (ja) | プログラム生成装置、プログラム生成方法及びプログラム生成プログラム | |
JP7492830B2 (ja) | ベクトル要素内のビット値のテスト | |
CN114462338A (zh) | 一种集成电路的验证方法、装置、计算机设备及存储介质 | |
JP6345814B2 (ja) | 高位合成を用いて高効率のエントロピーデコーダを実装するための方法、hlsツール、および記憶媒体 | |
US20220114429A1 (en) | Method and device for generating operation data and related product | |
US7496869B1 (en) | Method and apparatus for implementing a program language description of a circuit design for an integrated circuit | |
US10331830B1 (en) | Heterogeneous logic gate simulation using SIMD instructions | |
CN109891395B (zh) | 调试系统和方法 | |
JP5157534B2 (ja) | 動作合成装置、および、プログラム | |
JP6958038B2 (ja) | シミュレーションプログラム、方法、及び装置 | |
Melnyk | Self-Configurable FPGA-Based Computer Systems: Basics and Proof of Concep | |
JP6859878B2 (ja) | シミュレーションプログラム、方法、及び装置 | |
US11635947B2 (en) | Instruction translation support method and information processing apparatus | |
US7113901B1 (en) | Reuse of hardware components | |
US11556317B2 (en) | Instruction translation support method and information processing apparatus | |
JP2014215768A (ja) | 性能評価用トランザクション生成プログラム及び性能評価用トランザクション生成装置 | |
JP2022102319A (ja) | ベクトル推定プログラム、ベクトル推定装置、及び、ベクトル推定方法 | |
JP6253048B2 (ja) | 不揮発性論理集積回路設計支援システム | |
JP6788249B2 (ja) | 生成装置、生成方法及びプログラム | |
JP2007018313A (ja) | 回路設計プログラム、回路設計装置、回路設計方法 | |
CN115989497A (zh) | 设计感知自适应混合信号仿真 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200409 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210517 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210601 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210702 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20210702 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20210702 |
|
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: 20210907 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210920 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6958038 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |