JP2000293396A - Method and device for estimating system performance - Google Patents

Method and device for estimating system performance

Info

Publication number
JP2000293396A
JP2000293396A JP11097326A JP9732699A JP2000293396A JP 2000293396 A JP2000293396 A JP 2000293396A JP 11097326 A JP11097326 A JP 11097326A JP 9732699 A JP9732699 A JP 9732699A JP 2000293396 A JP2000293396 A JP 2000293396A
Authority
JP
Japan
Prior art keywords
bus
information
performance
system performance
components
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
JP11097326A
Other languages
Japanese (ja)
Inventor
Yuichiro Matsuoka
雄一郎 松岡
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP11097326A priority Critical patent/JP2000293396A/en
Publication of JP2000293396A publication Critical patent/JP2000293396A/en
Pending legal-status Critical Current

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

PROBLEM TO BE SOLVED: To obtain a method and a device which estimate the performance of each system faster than to perform simulation in each of combinations of plural parts when there are plural parts for constituting each circuit block in a system where plural circuit blocks are connected through a bus. SOLUTION: This device estimates the system performance of a system in which plural circuit blocks are connected through a bus. In such a case, it has a bus information generating device generating bus information when software is carried out, a parts library 14 storing the information of bus operation which is held by parts with respect to each circuit block in the system and a system performance calculating device 15 calculating the system performance from the generated bus information 13 and the information of bus operation.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】 本発明は、複数の回路ブロ
ックがバスで接続されているシステムにおけるシステム
性能の見積もり方法及び装置に関し、特にプロセッサ、
メモリ、I/O、ASIC等で構成されるシステムを設
計するCAD分野におけるシステムの性能の見積もり方
法及び装置に関する。
[0001] 1. Field of the Invention [0002] The present invention relates to a method and an apparatus for estimating system performance in a system in which a plurality of circuit blocks are connected by a bus.
The present invention relates to a method and apparatus for estimating the performance of a system in a CAD field for designing a system including a memory, an I / O, an ASIC, and the like.

【0002】[0002]

【従来の技術】 従来、プロセッサ(CPU)、メモリ
(MEM)、I/O、ASIC等からなるシステムを設
計する際、システムのブロック構成とその上で実行する
ソフトウェアが決定し、各ブロックに対応する部品群が
ライブラリとして用意されている時に、ソフトウェア実
行時のシステムの性能を見積もるためには、各部品を接
続したモデルを作成してシミュレーションを行い、シミ
ュレーション結果からシステムの性能を算出していた。
第17図は従来のシステムモデルの構成を示すものであ
り、プロセッサ(CPU)(11a)、メモリ(MEM)(11b)、I/O
(11c)、ASIC(11d)等のブロックがバス(12)接続され
ており、このシステムで実行するソフトウェア(13)が決
定している。
2. Description of the Related Art Conventionally, when designing a system including a processor (CPU), a memory (MEM), an I / O, an ASIC, and the like, a block configuration of the system and software to be executed thereon are determined, and each block is handled. In order to estimate the system performance at the time of software execution when parts groups to be prepared are prepared as a library, a model connecting each part was created, simulation was performed, and the system performance was calculated from the simulation results .
FIG. 17 shows a configuration of a conventional system model, in which a processor (CPU) (11a), a memory (MEM) (11b), an I / O
Blocks such as (11c) and ASIC (11d) are connected to a bus (12), and software (13) to be executed in this system is determined.

【0003】[0003]

【発明が解決しようとする課題】 システムの性能を見
積もるためには、上述のように各部品を接続したモデル
を作成してシミュレーションを行うことにより算出する
ものであるが、ある部品を別の部品に変更した時のシス
テムの性能を見積もるためには、変更した部品によるシ
ステムモデルを再構築して、再度シミュレーションを行
ってシステムの性能を算出しなければならないという労
力が必要であった。また、シミュレーションには時間が
かかるため、各ブロックへの部品の割り当てが多数の組
み合わせに対するシステムの性能を調べることは困難で
あった。本発明は上記問題点に鑑みてなされたもので、
各回路ブロックを構成する部品が複数有るときに、夫々
の組み合わせ毎にシミュレーションするよりも高速に各
システムの性能を見積もる方法及び装置を提供すること
を目的とする。
In order to estimate the performance of the system, a model in which each component is connected is created and simulation is performed as described above, but a certain component is calculated by another component. In order to estimate the performance of the system when the system is changed to the above, it is necessary to reconstruct a system model using the changed parts and perform the simulation again to calculate the system performance. In addition, since it takes a long time to perform the simulation, it has been difficult to check the performance of the system for a large number of combinations of components assigned to each block. The present invention has been made in view of the above problems,
It is an object of the present invention to provide a method and an apparatus for estimating the performance of each system faster than performing a simulation for each combination when there are a plurality of components constituting each circuit block.

【0004】[0004]

【課題を解決するための手段】 上記目的を達成するた
めにの、本発明におけるシステム性能の見積もり方法
は、ソフトウェアを実行した際のバスの情報と、前記シ
ステムにおける前記各回路ブロックに対する部品がもつ
バスオペレーションの情報とからシステムの性能を算出
することを特徴とする。また、本発明におけるシステム
性能の見積もり装置は、ソフトウェアを実行した際のバ
スの情報を生成するバス情報生成装置と、前記システム
における前記各回路ブロックに対する部品が持つバスオ
ペレーションの情報を保持する部品ライブラリと、前記
バス情報と、前記バスオペレーションの情報とからシス
テムの性能を算出することを特徴とする。さらに、シス
テム性能の見積もり装置は、部品の組み合わせと、それ
ぞれの組み合わせにおけるシステムの性能の見積もり値
を保持する性能見積も値記憶装置と、部品の各組み合わ
せにおける性能の見積もり値を比較し、システムの性能
が最も良い組み合わせを求める性能比較装置とを有する
ことを特徴とする。さらに、システム性能の見積もり装
置のバス情報は、バスオペレーションの種別と、サイク
ル数と、割り込み発生サイクル数と、割り込み処理中か
否かを示すフラグとを含むことを特徴とする。
Means for Solving the Problems To achieve the above object, a method for estimating system performance according to the present invention has information on a bus at the time of executing software and components for each of the circuit blocks in the system. It is characterized in that the system performance is calculated from the bus operation information. In addition, the system performance estimating apparatus according to the present invention includes a bus information generating apparatus that generates bus information when software is executed, and a component library that holds information on bus operations of components for each circuit block in the system. And calculating the system performance from the bus information and the information on the bus operation. Further, the system performance estimating device compares the combination of components, a performance estimation value storage device that holds the estimated value of the system performance for each combination, and the estimated performance value of each combination of components, and And a performance comparison device for finding a combination having the best performance. Further, the bus information of the system performance estimating apparatus is characterized by including the type of bus operation, the number of cycles, the number of interrupt occurrence cycles, and a flag indicating whether or not an interrupt is being processed.

【0005】さらに、システム性能の見積もり装置は、
部品ライブラリに保持される部品の情報として、バスオ
ペレーション実行時間と、割り込み発生サイクル数とを
持つことを特徴とする。
[0005] Further, an apparatus for estimating system performance includes:
It is characterized in that the component information held in the component library includes a bus operation execution time and an interrupt generation cycle number.

【0006】[0006]

【発明の実施の形態】 以下、図面を参照し本発明の実
施例について説明する。ここでは、システムの性能とし
て、ソフトウェアの実行時間を見積もる場合について説
明する。図1は本発明の第1の実施例に関するシステム
性能見積もり装置の概略の構成を示すものである。シス
テム性能見積もり装置は、プロセッサ(CPU)、メモリ(ME
M)、I/O、ASIC等の回路ブロックがバスで接続さ
れたシステムのモデル(11)と、そのモデルをシミュレー
ションするシミュレーション装置(12)と、シミュレーシ
ョンによって得られる基本バス情報(13)と、各ブロック
に対する設計データが部品として用意されている部品ラ
イブラリ(14)と、基本バス情報(13)と部品の情報とから
その部品の組み合わせにおけるシステムにおけるソフト
ウェアの実行時間を算出するシステム性能算出装置(15)
とから構成される。システムモデル(11)は、図2に示す
ように、プロセッサ(CPU)(11a)、メモリ(MEM)(11b)、
I/O(11c)、ASIC(11d)等の回路ブロックがバス(2
2)で接続されている構成で、このシステムで実行するソ
フトウェア(23)が決定している。また、各ブロック(11a
−11d)に対して、そのブロックを実現するための部品(1
4a−14d)が部品ライブラリ(14)として用意されている。
シミュレーションのモデルとしては、バストランザクシ
ョンレベルや、RTL、サイクルベース、命令レベル等
のシミュレーションモデルを用いて、データバス/アド
レスバス、リード/ライト信号等の値からバスオペレー
ションを判定して、バスの利用状況を調べることができ
る。
Embodiments of the present invention will be described below with reference to the drawings. Here, a case where the execution time of software is estimated as the performance of the system will be described. FIG. 1 shows a schematic configuration of a system performance estimating apparatus according to a first embodiment of the present invention. The system performance estimation device consists of a processor (CPU), memory (ME
M), a model (11) of a system in which circuit blocks such as I / O and ASIC are connected by a bus, a simulation device (12) for simulating the model, basic bus information (13) obtained by the simulation, A system library (14) in which design data for each block is prepared as a component, and a system performance calculation device (calculated from the basic bus information (13) and component information) that calculates software execution time in a system of the combination of the components ( 15)
It is composed of As shown in FIG. 2, the system model (11) includes a processor (CPU) (11a), a memory (MEM) (11b),
Circuit blocks such as I / O (11c) and ASIC (11d)
In the configuration connected in 2), the software (23) to be executed in this system is determined. In addition, each block (11a
−11d), the parts (1
4a-14d) are prepared as the component library (14).
As a simulation model, a bus operation is determined from values of a data bus / address bus, a read / write signal, and the like by using a simulation model such as a bus transaction level, RTL, cycle base, and instruction level. You can check the situation.

【0007】各ブロックを実現する部品は既存のライブ
ラリとして用意されているか、または、ASICなどの
新規のブロックには、その仕様に合わせて新規に部品情
報を作成して用意する。部品情報としては、上記シミュ
レーションに必要な機能やバスオペレーションのサイク
ル数、消費電力、ASICの場合にはその機能を実行し
た場合のサイクル数などを備えている。図3に部品情報
の例を示す。プロセッサ(CPU1,CPU2)の情報
として周波数、メモリ(MEM1−MEM3)、I/O
(I/O1−I/O3)の情報としてアクセス時間、A
SIC(ASIC1,ASIC2)の情報としてアクセ
ス時間と機能を実行した場合の実行時間とを示してい
る。例えば、MEM1は、リードサイクル(Read)に2サ
イクル、ライトサイクル(Write)に2サイクル要する部
品である。 ASICとしては、新規に作成する物であ
るが、RTLのような詳細な設計データを作成する前
に、プロセッサとASIC間のバスオペレーション(Re
ad,Write)にはこのくらいの時間がかかり、ASICの
この機能(Exec)にはこのくらいの実行時間がかかるとい
う値を、仕様段階の概算値をもとに部品を作成する。
[0007] The components for realizing each block are prepared as an existing library, or for a new block such as an ASIC, new component information is created and prepared according to the specifications. The component information includes a function required for the simulation, the number of cycles of a bus operation, power consumption, and in the case of an ASIC, the number of cycles when the function is executed. FIG. 3 shows an example of the component information. Frequency, memory (MEM1-MEM3), I / O as information of processors (CPU1, CPU2)
(I / O1-I / O3) information as access time, A
The access time and the execution time when the function is executed are shown as information of the SIC (ASIC1, ASIC2). For example, MEM1 is a component that requires two cycles for a read cycle (Read) and two cycles for a write cycle (Write). Although an ASIC is newly created, a bus operation (Re-operation) between the processor and the ASIC is performed before detailed design data such as RTL is created.
Ad, Write) takes this much time, and the function (Exec) of the ASIC takes this long execution time, and a part is created based on the approximate value at the specification stage.

【0008】バス情報を生成するためには、まず、基本
となるシステムモデル(11)を作成する。例えば、各ブロ
ックの部品の中で最も高速な部品を選択して、それぞれ
のブロックに割り当てたモデルを作成する。基本となる
モデルが作成されると、既に決定しているソフトウェア
(23)とともに、シミュレーション装置(12)によりシミュ
レーションを実行する。システムモデル(11)をシミュレ
ーションすることにより、ソフトウェア(23)を実行した
際のバス情報を抽出する。図4は、バス情報の一例を示
すものであり、ソフトウェアを実行した際の各ブロック
のバスオペレーション(Read、IO−Read、Write)やバ
スが使われないサイクルを示すNOPの序列である。ま
た、図5は、シミュレーションを行った時の各ブロック
に用いた部品を示すテーブルである。この場合、部品と
してCPU1、MEM1、I/O1、ASIC1が使用
されることを示している。図6は、どのブロックとどの
バスオペレーションが対応するかを示すテーブルであ
る。更に、第7図は、ソフトウェア実行時の各バスオペ
レーションの回数である。シミュレーションを行ったシ
ステムモデルのある部品を別の部品に置き換えた場合の
システムの実行時間を求めるためには、第8図に示すフ
ローチャートを実行する。まず、変更する部品を指定し
(step31)、その部品が関連するバスオペレーションとサ
イクル数を取得する(step32)。次に、前記のシミュレー
ションで得られたバス情報が、第9図のようなデータ構
造で表わされているとする。このデータ構造では、リス
トの各要素が一つのバスオペレーションに対応し、要素
はバスオペレーションの種別やサイクル数の情報を持っ
ている。このリストの最初のオペレーションを取りだし
(step33、34)、そのバスオペレーションが変更する部品
が関連するバスオペレーションであれば(step35)、 st
ep32で取り出したサイクル数に更新する。リストの次の
バスオペレーションを取り出し(step38、34)、変更する
部品が関連するバスオペレーションであればstep32で取
り出したサイクル数に更新する。同様にして全リストを
調べて、変更する部品が関連するバスオペレーションを
全て更新する。リストの最後まで更新を終えるた後(ste
p37)、全リストのサイクル数の総和を取ることにより(s
tep39)、部品を変更した場合のソフトウェア実行時間を
算出することができる。
In order to generate bus information, first, a basic system model (11) is created. For example, the fastest part is selected from the parts of each block, and a model assigned to each block is created. When the basic model is created, the software that has already been determined
Simultaneously with (23), a simulation is performed by the simulation device (12). By simulating the system model (11), bus information when the software (23) is executed is extracted. FIG. 4 shows an example of bus information, which is a sequence of NOPs indicating bus operations (Read, IO-Read, Write) of each block and cycles in which the bus is not used when the software is executed. FIG. 5 is a table showing components used for each block when the simulation is performed. In this case, it is shown that CPU1, MEM1, I / O1, and ASIC1 are used as components. FIG. 6 is a table showing which blocks correspond to which bus operations. FIG. 7 shows the number of bus operations during software execution. In order to determine the execution time of the system when a certain part of the simulated system model is replaced with another part, the flowchart shown in FIG. 8 is executed. First, specify the part to be changed
(Step 31), the bus operation and the cycle number related to the component are acquired (Step 32). Next, it is assumed that the bus information obtained by the above simulation is represented by a data structure as shown in FIG. In this data structure, each element of the list corresponds to one bus operation, and each element has information on the type of bus operation and the number of cycles. Fetch the first operation in this list
(steps 33, 34), if the part to be changed by the bus operation is a related bus operation (step 35), st
Update to the number of cycles taken out by ep32. The next bus operation in the list is fetched (steps 38 and 34), and if the part to be changed is a related bus operation, the number of cycles is updated to the number of cycles fetched in step32. In the same manner, the entire list is examined, and all the bus operations related to the component to be changed are updated. After updating to the end of the list (ste
p37), by taking the sum of the number of cycles for all lists (s
tep39), software execution time when components are changed can be calculated.

【0009】具体例として、メモリを変更した例を示
す。最初の部品の組み合わせにおいて、メモリにリード
オペレーションが2サイクル、ライトオペレーションが
2サイクルかかる部品MEM1を選択していて、シミュ
レーションを行い、第10図に示すようなバス情報が得
られたとする。ここで、メモリを別の部品MEM2に変
更する。MEM2はリードオペレーションが3サイク
ル、ライトオペレーションが3サイクルかかる。このメ
モリに変更した場合のソフトウェアの実行時間は、ま
ず、部品とバスオペレーションとの対応関係から、リー
ドオペレーション、ライトオペレーションが影響される
事が分かる。次に、バスオペレーションの序列を先頭か
らたどり、リードオペレーション、ライトオペレーショ
ンの場合は、新規のバスオペレーションのサイクル数に
更新する。更新後のバス情報は第11図に示すような状
態となる。この更新されたバスオペレーションの序列の
サイクル数の総和を求めることにより、部品を変更した
後のソフトウェアの実行時間を算出する。このように本
実施例においては、部品の組み合わせ毎にシミュレーシ
ョンするよりも高速に、システムの性能を算出すること
ができる。また、部品の組み合わせ毎にモデルを再構築
したり、モデルの動作確認を行う作業が削減できる。
As a specific example, an example in which the memory is changed will be described. In the first combination of components, it is assumed that the component MEM1 that requires two cycles of read operation and two cycles of write operation in the memory is selected, and simulation is performed to obtain bus information as shown in FIG. Here, the memory is changed to another component MEM2. MEM2 requires three cycles for a read operation and three cycles for a write operation. First, it can be seen from the correspondence between the components and the bus operations that the read operation and the write operation are affected by the execution time of the software when the memory is changed. Next, the order of the bus operation is traced from the beginning, and in the case of a read operation or a write operation, the cycle number of the new bus operation is updated. The updated bus information is in a state as shown in FIG. The execution time of the software after changing the components is calculated by calculating the total number of cycles in the updated bus operation order. As described above, in the present embodiment, it is possible to calculate the performance of the system at a higher speed than when performing simulation for each combination of components. In addition, the operation of reconstructing a model for each combination of parts and checking the operation of the model can be reduced.

【0010】本実施例では、メモリを変更する場合につ
いて述べたが、プロセッサを変更する場合に、プロセッ
サの命令の実行時間が変化するような場合にも、各バス
オペレーションやNOPがプロセッサの何命令によるも
のかを示す情報を付加することによって、バス情報から
の見積もりを実現することができる。また、複数のバス
マスタ、例えばCPU、ASICなどがそれぞれ複数あ
る場合にも、どのブロックのバスオペレーションかを示
す情報を付加することにより、容易に実現することがで
きる。また、システムの性能として、消費電力を見積も
る場合にも、第1の実施例と同様に、基本となるシステ
ムのモデルを作成し、シミュレーションを行ってバス情
報を得る。部品情報としては、各バスオペレーションの
サイクル数とともに、そのバスオペレーションにおける
消費電力値が得られているとする。第1の実施例と同様
に、メモリ変更されるとすると、リード、ライトオペレ
ーションが増加する。この時のメモリ、その他のブロッ
ク、及びバスの消費電力をもとに、基本バス情報から、
消費電力を算出する。また、第1の実施例の図1での発
明の構成に加えて、図12に示すように、部品の組み合
わせを選択する部品選択装置(41)と、部品の組み合わせ
とその場合のシステムの性能とを保持する性能見積もり
値記憶装置(42)と、システムの性能が最も良い組み合わ
せを求める性能比較装置(43)を備えることにより、最適
な部品の組み合わせとその時の性能見積もり値(44)を求
めることができる。また、高速化にともない、部品の組
み合わせを数多く試行することができ、より最適な部品
の組み合わせを選択することで、高性能なシステムを設
計できる。
In this embodiment, the case where the memory is changed has been described. However, when the processor is changed, even when the execution time of the instruction of the processor changes, each bus operation or NOP can determine the instruction of the processor. By adding information indicating whether or not this is the case, estimation from the bus information can be realized. Further, even when there are a plurality of bus masters, for example, a plurality of CPUs and ASICs, it can be easily realized by adding information indicating a bus operation of which block. Also, when estimating the power consumption as the performance of the system, similarly to the first embodiment, a model of the basic system is created and simulation is performed to obtain bus information. As the component information, it is assumed that the power consumption value in the bus operation is obtained together with the number of cycles of each bus operation. As in the first embodiment, if the memory is changed, read and write operations increase. Based on the power consumption of the memory, other blocks, and the bus at this time,
Calculate power consumption. Further, in addition to the configuration of the invention in FIG. 1 of the first embodiment, as shown in FIG. 12, a component selection device (41) for selecting a combination of components, a combination of components and the performance of the system in that case By providing a performance estimation value storage device (42) that holds the data and a performance comparison device (43) that finds the combination with the best system performance, the optimum combination of components and the performance estimation value (44) at that time are obtained. be able to. Also, with the increase in speed, many combinations of components can be tried, and by selecting a more optimal combination of components, a high-performance system can be designed.

【0011】次に本発明の第2の実施例に関するシステ
ム性能見積もり方法、装置を図13乃至図16を参照し
説明する。第1の実施例では、システム性能算出装置(1
5)における処理として、バスオペレーションの序列が変
わらない場合の例をあげたが、ここでは、バスオペレー
ションの序列が変わる場合について説明する。例えば、
CPUからASICに何らかの処理をリクエストし、
ASICが何サイクルか処理を行い、CPUに割り込み
をかけるとする。説明を単純にするために、ASICの
処理は固定のサイクル数かかるとする。ASICの部品
であるASIC1では、CPUからのリクエスト、すな
わちライトオペレーションがあってから4サイクル処理
を行った後、CPUに割り込みをかける。また、ASI
C2では割り込みがかかるまでに7サイクルかかる。最
初のシミュレーションモデルでASIC1を用いていた
場合、基本バス情報は図13の様になる。ASIC-Writeオ
ペレーションが実行されると、ASICが処理を始め4
サイクル後に割り込みが発生する。そして、割り込み処
理を行った後、通常の処理に復帰する。ここで、部品を
ASIC2に変更したとき、図14に示すように、ASIC
-Writeオペレーションから7サイクルたって割り込みが
発生する。これを、図13のバス情報から求めるには、
図15のように、割り込み処理中のバスオペレーション
にはint(ASIC1)、通常処理のバスオペレーションにはin
t0のフラグを付けておく。また、割り込みを待つオペレ
ーションには、何サイクル後に割り込みが発生するかの
情報を持たせる。
Next, a method and an apparatus for estimating system performance according to a second embodiment of the present invention will be described with reference to FIGS. In the first embodiment, the system performance calculation device (1
As an example of the processing in 5), the case where the order of the bus operation does not change is described. Here, the case where the order of the bus operation changes will be described. For example,
The CPU requests some processing from the ASIC,
Assume that the ASIC performs processing for several cycles and interrupts the CPU. For simplicity, assume that the ASIC process takes a fixed number of cycles. The ASIC 1, which is a component of the ASIC, interrupts the CPU after performing a four-cycle process after a request from the CPU, that is, a write operation. Also, ASI
In C2, it takes seven cycles before an interrupt occurs. When ASIC1 is used in the first simulation model, the basic bus information is as shown in FIG. When the ASIC-Write operation is executed, the ASIC starts
An interrupt occurs after the cycle. Then, after performing the interrupt process, the process returns to the normal process. Here, when the part is changed to ASIC2, as shown in FIG.
-An interrupt occurs seven cycles after the Write operation. To find this from the bus information in FIG.
As shown in FIG. 15, int (ASIC1) is used for the bus operation during the interrupt processing, and in in the bus operation for the normal processing.
Add the t0 flag. In addition, the operation for waiting for an interrupt is provided with information on the number of cycles after which the interrupt occurs.

【0012】このようなデータ構造の基本バス情報を処
理するフローチャートを図16に示す。図16に示すフ
ローチャートは、図8のstep36にあたる処理で、図8、
図16一組で全体の処理となる。図8の部分は、第1の
実施例で説明したので、ここでは図16のみを説明す
る。まず、現在のバスオペレーションが割り込みを発生
するオペレーションであるかどうかを調べ(step51)、割
り込みを発生するオペレーションであれば、何サイクル
後に割り込みが発生するかを取得する(step52)。また、
部品を変更した場合の割り込み発生が何サイクル後か
を、その部品情報から取得する(step53)。次に、現在の
バスオペレーションから序列をたどり、このバスオペレ
ーションに対応する割り込み処理の先頭の要素を見つけ
る(step54)。この要素から割り込み処理フラグint(ASIC
1)がたっているので、このフラグを調べながらさらに序
列をたどり、割り込み処理の最後を見つける(step55)。
次に、この割り込み処理の序列を除いた序列を作成し、
割り込み処理の序列は一時保留しておく(step56)。次
に、現在のバスオペレーションから、step163で取得し
たサイクル数後のバスオペレーションを取得する(step5
7)。次に、 step57でのバスオペレーションを調べて、
割り込み発生のタイミングがメモリリード等のサイクル
の途中で有るかどうかを調べる(step58)。もし、バスオ
ペレーションの途中である場合は、割り込み発生のサイ
クル数をそのバスオペレーションが終了した時点のサイ
クル数に変更する(step59)。そして、step56で一時保留
しておいた割り込み処理をこのバスオペレーションの終
了後に挿入する(step60)。
FIG. 16 is a flowchart for processing basic bus information having such a data structure. The flowchart shown in FIG. 16 is a process corresponding to step 36 in FIG.
FIG. 16 shows a whole process. Since the portion of FIG. 8 has been described in the first embodiment, only FIG. 16 will be described here. First, it is determined whether or not the current bus operation is an operation that generates an interrupt (step 51). If the current bus operation is an operation that generates an interrupt, the number of cycles after which the interrupt is generated is obtained (step 52). Also,
The number of cycles after the interruption when the component is changed is obtained from the component information (step 53). Next, the order is traced from the current bus operation, and the first element of the interrupt processing corresponding to this bus operation is found (step 54). From this element, the interrupt processing flag int (ASIC
Since 1) is set, the order is further traced while checking this flag to find the end of the interrupt processing (step 55).
Next, create an order that excludes the order of this interrupt processing,
The order of the interrupt processing is temporarily suspended (step 56). Next, a bus operation after the number of cycles obtained in step 163 is obtained from the current bus operation (step 5).
7). Next, check the bus operation in step57,
It is checked whether or not the timing of occurrence of the interrupt is in the middle of a cycle such as a memory read (step 58). If it is in the middle of the bus operation, the number of cycles at which an interrupt occurs is changed to the number of cycles at the time when the bus operation ends (step 59). Then, the interrupt processing temporarily suspended in step 56 is inserted after the end of this bus operation (step 60).

【0013】この様にしてバスオペレーションの組み替
えを行い、更新する部品に関連するすべてのバスオペレ
ーションを処理して、更新されたバスオペレーションの
序列のサイクル数の総和を求めることにより、部品を変
更した後のソフトウェアの実行時間を算出する。このよ
うに本実施例においても、部品の組み合わせ毎にシミュ
レーションするよりも高速に、システムの性能を算出す
ることができる。また、部品の組み合わせ毎にモデルを
再構築したり、モデルの動作確認を行う作業が削減でき
る。上の説明では、ASICの実行サイクルを固定とし
たが、CPUからのデータにより、ASICの処理サイ
クルが変動する場合も、次のようにして実現することが
できる。まず、ASICの部品情報に、CPUからのデ
ータをもとに割り込み発生時間を算出できる関数を用意
しておく。そして、最初のシミュレーション時に、バス
情報の各ASIC-Writeオペレーションの情報としてCPU
からのデータを付加する。そして、部品を変更してバス
情報を更新する際、各ASIC-Writeオペレーションを調べ
る時には、そのCPUからのデータの情報とASIC部
品の処理内容とから、割り込みが発生するサイクルを算
出して、個々のASIC-Writeオペレーションに割り込み発
生時間を付加する。これにより、ASICの実行時間が
変動する場合にも、適用することができる。
In this manner, the bus operation is rearranged, all the bus operations related to the component to be updated are processed, and the total number of cycles of the updated bus operation is obtained to change the component. Calculate the execution time of later software. As described above, also in the present embodiment, it is possible to calculate the performance of the system faster than performing simulation for each combination of components. In addition, the operation of reconstructing a model for each combination of parts and checking the operation of the model can be reduced. In the above description, the execution cycle of the ASIC is fixed. However, the case where the processing cycle of the ASIC fluctuates due to data from the CPU can be realized as follows. First, a function capable of calculating an interrupt occurrence time based on data from the CPU is prepared in the component information of the ASIC. At the time of the first simulation, CPU information is used as information of each ASIC-Write operation of bus information.
Append data from. When updating the bus information by changing the component, when checking each ASIC-Write operation, the cycle in which an interrupt occurs is calculated from the information of the data from the CPU and the processing content of the ASIC component, and Adds the interrupt generation time to the ASIC-Write operation. Thus, the present invention can be applied even when the execution time of the ASIC varies.

【0014】[0014]

【発明の効果】 本発明においては、部品の組み合わせ
毎にシミュレーションするよりも高速に、システムの性
能を算出することができる。また、部品の組み合わせ毎
にモデルを再構築したり、モデルの動作確認を行う作業
が削減できる。さらに、上記高速化にともない、部品の
組み合わせを数多く試行することができ、より最適な部
品の組み合わせを選択することで、高性能なシステムを
設計できる。
According to the present invention, it is possible to calculate the performance of the system faster than performing simulation for each combination of parts. In addition, the operation of reconstructing a model for each combination of parts and checking the operation of the model can be reduced. Further, with the speeding-up, a number of combinations of parts can be tried, and a high-performance system can be designed by selecting a more optimal combination of parts.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の実施例に係わる性能見積もり装置の概
略の構成を示す図である。
FIG. 1 is a diagram showing a schematic configuration of a performance estimation device according to an embodiment of the present invention.

【図2】本発明の実施例に係わるシステムのブロック構
成と各ブロックの部品を示す図である。
FIG. 2 is a diagram showing a block configuration of a system according to an embodiment of the present invention and components of each block.

【図3】本発明の実施例に係わる各ブロックの部品と部
品のもつ情報を示す図である。
FIG. 3 is a diagram showing components of each block and information of the components according to the embodiment of the present invention.

【図4】本発明の実施例に係わるバスオペレーションの
序列を示す図である。
FIG. 4 is a diagram showing an order of a bus operation according to the embodiment of the present invention.

【図5】本発明の実施例に係わるシステムのブロックに
対する現在の部品の割り当てを示す図である。
FIG. 5 is a diagram showing the assignment of current components to blocks of the system according to the embodiment of the present invention.

【図6】本発明の実施例に係わる各ブロックとバスオペ
レーションとの対応を示す図である。
FIG. 6 is a diagram showing a correspondence between each block and a bus operation according to the embodiment of the present invention.

【図7】本発明の実施例に係わるバスオペレーションの
回数を示す図である。
FIG. 7 is a diagram showing the number of bus operations according to the embodiment of the present invention.

【図8】本発明の実施例に係わるバス情報と部品情報か
らシステムの性能を算出するフローチャートを示す図で
ある。
FIG. 8 is a diagram showing a flowchart for calculating system performance from bus information and component information according to the embodiment of the present invention.

【図9】本発明の実施例に係わるバスオペレーションの
序列を表わすデータ構造を示す図である。
FIG. 9 is a diagram showing a data structure representing an order of a bus operation according to the embodiment of the present invention.

【図10】本発明の実施例に係わるメモリ変更前のバス
オペレーションの序列を示す図である。
FIG. 10 is a diagram showing an order of a bus operation before a memory change according to the embodiment of the present invention.

【図11】本発明の実施例に係わるメモリ変更後のバス
オペレーションの序列を示す図である。
FIG. 11 is a diagram showing a sequence of bus operations after a memory change according to the embodiment of the present invention.

【図12】本発明の実施例に係わる最適な性能の部品の
組み合わせを求めるための構成を示す図である。
FIG. 12 is a diagram showing a configuration for obtaining a combination of parts having optimum performance according to the embodiment of the present invention.

【図13】本発明の実施例に係わる割り込み処理を含ん
だ基本バス情報を示す図である。
FIG. 13 is a diagram showing basic bus information including interrupt processing according to the embodiment of the present invention.

【図14】本発明の実施例に係わる部品の変更によりバ
スオペレーションの順序を組み替えたバス情報を示す図
である。
FIG. 14 is a diagram showing bus information in which the order of bus operations is rearranged by changing components according to the embodiment of the present invention.

【図15】本発明の実施例に係わるバスオペレーション
の組み替えを行うためのデータ構造を示す図である。
FIG. 15 is a diagram showing a data structure for rearranging bus operations according to the embodiment of the present invention.

【図16】本発明の実施例に係わるバスオペレーション
の組み替えを行うフローチャートを示す図である。
FIG. 16 is a diagram showing a flowchart for performing rearrangement of bus operations according to the embodiment of the present invention.

【図17】従来例に係わるシステムのブロック構成を示
す図である。
FIG. 17 is a diagram showing a block configuration of a system according to a conventional example.

【符号の説明】[Explanation of symbols]

101 システムモデル 102 シミュレーション装置 103 基本バス情報 104 部品ライブラリ 105 システム性能算出装置 106 性能見積もり値 Reference Signs List 101 system model 102 simulation device 103 basic bus information 104 component library 105 system performance calculation device 106 performance estimation value

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】 複数の回路ブロックがバスで接続され
ているシステムにおけるシステム性能の見積もり方法で
あって、 ソフトウェアを実行した際のバスの情報と、前記システ
ムにおける前記各回路ブロックに対する部品がもつバス
オペレーションの情報とからシステムの性能を算出する
ことを特徴とするシステム性能見積もり方法。
1. A method for estimating system performance in a system in which a plurality of circuit blocks are connected by a bus, comprising: information of a bus when software is executed; and a bus of a component for each of the circuit blocks in the system. A system performance estimation method comprising calculating system performance from operation information.
【請求項2】 複数の回路ブロックがバスで接続されて
いるシステムに対して、システム性能を見積もる装置あ
って、 ソフトウェアを実行した際のバスの情報を生成するバス
情報生成装置と、 前記システムにおける前記各回路ブロックに対する部品
が持つバスオペレーションの情報を保持する部品ライブ
ラリと、 前記バス情報と、前記バスオペレーションの情報とから
システムの性能を算出するシステム性能算出装置とを有
することを特徴とするシステム性能見積もり装置。
2. A device for estimating system performance for a system in which a plurality of circuit blocks are connected by a bus, wherein a bus information generating device for generating bus information when software is executed; A system comprising: a component library that holds information on bus operations of components for each of the circuit blocks; and a system performance calculation device that calculates system performance from the bus information and the information on the bus operations. Performance estimation device.
【請求項3】 前記部品の組み合わせと、それぞれの組
み合わせにおけるシステムの性能の見積もり値を保持す
る性能見積も値記憶装置と、 前記部品の各組み合わせにおける性能の見積もり値を比
較し、システムの性能が最も良い組み合わせを求める性
能比較装置とをさらに有することを特徴とする請求項2
記載のシステム性能見積もり装置。
3. The system according to claim 3, wherein the combination of the components, a performance estimation value storage device that holds an estimated value of the performance of the system in each combination, and an estimated performance value of the combination of the components are compared. 3. The apparatus according to claim 2, further comprising a performance comparison device for finding a best combination.
The described system performance estimator.
【請求項4】 前記バス情報は、バスオペレーションの
種別と、サイクル数と、割り込み発生サイクル数と、割
り込み処理中か否かを示すフラグとを含むことを特徴と
する請求項2記載のシステム性能見積もり装置。
4. The system performance according to claim 2, wherein said bus information includes a type of bus operation, a cycle number, an interrupt generation cycle number, and a flag indicating whether or not an interrupt is being processed. Estimating device.
【請求項5】 前記部品ライブラリに保持される前記
部品の情報として、バスオペレーション実行時間と、割
り込み発生サイクル数とを持つことを特徴とする請求項
2記載のシステム性能見積もり装置。
5. The system performance estimating apparatus according to claim 2, wherein the component information held in the component library includes a bus operation execution time and an interrupt generation cycle number.
JP11097326A 1999-04-05 1999-04-05 Method and device for estimating system performance Pending JP2000293396A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11097326A JP2000293396A (en) 1999-04-05 1999-04-05 Method and device for estimating system performance

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11097326A JP2000293396A (en) 1999-04-05 1999-04-05 Method and device for estimating system performance

Publications (1)

Publication Number Publication Date
JP2000293396A true JP2000293396A (en) 2000-10-20

Family

ID=14189373

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11097326A Pending JP2000293396A (en) 1999-04-05 1999-04-05 Method and device for estimating system performance

Country Status (1)

Country Link
JP (1) JP2000293396A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004510258A (en) * 2000-09-28 2004-04-02 ケイデンス デザイン システムズ,インコーポレイテッド Performance level modeling and simulation of electronic systems with hardware and software
JP2015102887A (en) * 2013-11-21 2015-06-04 日本電気株式会社 Data processing system, data processing method, and program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004510258A (en) * 2000-09-28 2004-04-02 ケイデンス デザイン システムズ,インコーポレイテッド Performance level modeling and simulation of electronic systems with hardware and software
JP2015102887A (en) * 2013-11-21 2015-06-04 日本電気株式会社 Data processing system, data processing method, and program

Similar Documents

Publication Publication Date Title
EP2629197B1 (en) Simulation device, method, and program
US20060130029A1 (en) Programming language model generating apparatus for hardware verification, programming language model generating method for hardware verification, computer system, hardware simulation method, control program and computer-readable storage medium
JPH1040144A (en) Method for estimating power consumption for microprocessor
US20120029900A1 (en) Simulation method and system for simulating a multi-core hardware platform
JP2009522652A (en) System and method for generating multiple models at different levels of abstraction from a single master model
JP2008210107A (en) Simulation method and simulation device
JP3608915B2 (en) Multiprocessing system performance evaluation method and apparatus, and storage medium storing multiprocessing system performance evaluation program
US10437949B1 (en) Scheduling events in hardware design language simulation
JP2008176453A (en) Simulation device
JPH04233040A (en) Simulation system for executing computer program
JP2002108958A (en) System and method for designing circuit and computer readable recording medium stored with circuit design program
JP2000293396A (en) Method and device for estimating system performance
JP3147851B2 (en) Simulation method, simulation device, and storage medium storing simulation program
JP2001290860A (en) Hardware/software cooperation simulator
JP2000293557A (en) Simulation method for power consumption
JP3214459B2 (en) Simulation method and apparatus
JP2633651B2 (en) Racing check method for simulation equipment
JPS62217325A (en) Optimization system for assembler code
JPH07253909A (en) Microprogram verifying method
JP2007207176A (en) Simulation method for semiconductor integrated circuit
CN113268436B (en) Multi-granularity computer simulation operation information acquisition method based on hook points
JP2002524795A (en) Method and apparatus for system simulation of microcontroller / microprocessor and associated peripheral modules
JP6264844B2 (en) Simulation method, simulation program, and simulation apparatus
JPH10187484A (en) Simulator
JPH11149489A (en) Simulation system

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050414

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20050606