JP2001184204A - モジュール実行順序決定方法、電子システム及びそのための媒体 - Google Patents

モジュール実行順序決定方法、電子システム及びそのための媒体

Info

Publication number
JP2001184204A
JP2001184204A JP36907899A JP36907899A JP2001184204A JP 2001184204 A JP2001184204 A JP 2001184204A JP 36907899 A JP36907899 A JP 36907899A JP 36907899 A JP36907899 A JP 36907899A JP 2001184204 A JP2001184204 A JP 2001184204A
Authority
JP
Japan
Prior art keywords
module
execution
modules
information
time
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
JP36907899A
Other languages
English (en)
Inventor
Toshiyuki Aritsuka
俊之 在塚
Toshiyuki Odaka
俊之 小▲高▼
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP36907899A priority Critical patent/JP2001184204A/ja
Publication of JP2001184204A publication Critical patent/JP2001184204A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】複数のモジュールで構成される電子システムを
構築する際に、各モジュールの実行方法にあわせて最適
なモジュール実行順序を自動的に決定できるようにす
る。 【解決手段】各モジュールのCPUとの並列動作可能性
及び接続関係の情報をもとに複数のモジュール間の実行
順序の組み合わせを導出し、各モジュールの実行処理時
間及び復帰時間の情報をもとに上記導出された実行順序
の各組み合わせで動作させたときの全体プログラムの実
行時間を計算し、該全体プログラム実行時間が最短にな
るモジュール実行順序の組み合わせを選択することによ
ってモジュール実行順序を決定する方法。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、マイクロプロセッ
サ等の汎用演算処理回路や特定の処理を実行する専用演
算処理回路、及び周辺回路で構成される計算機システム
やシステムLSI等の電子システムを構築する際に、汎
用演算処理回路で実行されるソフトウエアモジュール及
び又は専用演算処理回路で実行されるハードウエアモジ
ュールで構成されるプログラムを用いて制御することに
よって特定の機能を実現するシステムを対象とし、各モ
ジュールの実行方法にあわせて最適なモジュール実行順
序を決定するモジュール実行順序決定方法、そのための
モジュール媒体、その手順を記憶した記憶媒体、及びそ
れによって作成されたモジュール実行制御プログラムが
組み込まれて動作する電子システムに関するものであ
る。
【0002】
【従来の技術】マイクロプロセッサ等の汎用演算処理回
路や、特定の処理を実行する専用演算処理回路、および
周辺回路で構成される計算機システムやシステムLSI等
の演算装置を制御するプログラムは、リアルタイム処理
や高速動作が必要であることが多く、一般に可能なかぎ
り実行時間を短くすることが要求される。
【0003】通常、一連の制御プログラムは、開発効率
やメンテナンス容易性、移植性等を考慮すると、機能毎
のモジュールに分割する構成をとることが有効である。
プログラムが単一のプロセッサで実行されるソフトウェ
アのみで構成される場合は、これらのモジュールは、逐
次処理の形式で呼び出された順に実行される。しかし、
実際にはモジュール間にデータ参照等の関係がなく、実
行順が前後しても実行結果に影響が表れない場合があ
る。このような場合では、プログラムの実行効率が最適
になるようにモジュール実行順を指定することによっ
て、全体プログラムの実行時間を短縮できることがあ
る。
【0004】一般に、ある処理を実行する際に、実行手
段として汎用演算処理用プロセッサ上でソフトウェア実
行するよりは、その処理に特化された専用ハードウェア
回路を用いた方が高速に実行可能である場合が多い。ま
た、マルチメディアデータの処理等に関しては、信号処
理専用プロセッサ(DSP:Digital Signal Processor)
上でのソフトウェア実行の方が実行速度が大きい場合も
ある。そこで、特に高速性が要求されるモジュールの実
行については、専用ハードウェアや、DSPソフトウェ
アとして実現することが考えられる。このような場合で
は、特定のモジュールの実行を制御するプログラムを汎
用プロセッサ上のソフトウェアで実現し、該制御プログ
ラムから専用ハードウェア回路を用いるモジュールや、
DSPを使用するモジュールを呼び出す構成がとられ
る。このとき、汎用プロセッサ自体で実行するモジュー
ルがあっても良い。
【0005】ところで、汎用プロセッサの他に、専用ハ
ードウェア回路やDSPを設けた制御装置では、ハード
ウェア構成を工夫することによって汎用プロセッサと専
用ハードウェア回路、DSPを並列に動作させることが
可能である。従って、専用ハードウェア回路やDSPを
用いて実行するモジュールが汎用プロセッサで実行する
モジュールと並列動作可能な構成にすれば、これらを同
時に実行するようにモジュール実行順をスケジューリン
グすることによって、さらに全体プログラムの実行時間
を短縮することが可能となる。これは、例えば汎用プロ
セッサを2つ以上用意し、汎用プロセッサ用ソフトウェ
アで実行するモジュールを並列に実行した場合でも同様
である。
【0006】
【発明が解決しようとする課題】上記技術を用いれば、
定められたハードウェア構成に対し実行時間を短縮する
ことが可能となる。
【0007】一方で、ある機能を実現するシステムを設
計開発する場合、実現される機能は同じでも、その要求
仕様によっては、最適なモジュール実行方法が異なる場
合がある。例えば、実行時間を短くしたい、消費電力を
少なくしたい、対象となる制御装置等のシステムがLS
Iの場合には半導体チップの面積をできるだけ小さくし
たい等、システムの目的や利用環境等によって優先項目
が異なるため、制御プログラムについても、上記優先項
目に対応してハードウェア化するモジュールの割合や、
DSP利用の有無等の実現手段を決定する必要がある。
また、メインで処理を行うプロセッサの性能によって
も、ソフトウェアとして実行可能なモジュールの割合が
変わる。
【0008】上記のような要求仕様に迅速に対応して、
効率良く制御装置等のシステムおよびそれを動作させる
制御プログラムを開発するためには、優先項目の変更に
合せて制御装置のハードウェア構成の変更や、モジュー
ルの実行方法の変更を速やかに行う必要がある。モジュ
ールの実行方法が変われば最適なモジュール実行順も変
わるため、その都度最適な実行順を見つける必要があっ
た。
【0009】上記の要求に対しこれまでは、それぞれの
要求仕様を満足する実現方法をヒューリスティック(he
uristic)な手法を用いて人手で決め、機能検証用の試
作装置でハードウェア実装部分をFPGA等で作成して実行
してみるか、或いはシミュレーション等を行って性能を
評価するという工程を何度か繰り返し、仕様を満足する
までソフトウェア/ハードウェアの設計修正を行う方法
がとられていた。
【0010】また、モジュールの実行順を決定する他の
方法としては、オブジェクト指向的なアプローチがとら
れる場合がある。オブジェクト指向のプログラムでは、
実行時にモジュールの実行状況を監視し、モジュールが
実行を終了したメッセージを受け取った段階で次に実行
するモジュールを決定するというイベント駆動型の制御
を行うことができる。このような方法は、実際にモジュ
ールの実行が終了した時点で次に実行すべき最適なモジ
ュールを判定できるが、常にメッセージを監視している
必要があるため実行時間のオーバーヘッドが大きくな
る。
【0011】汎用プロセッサと複数のモジュールで構成
されるLSIや制御処理装置等の電子システムを構築す
るために必要な制御プログラムを設計する際又は上記電
子システムを構築するための最適なモジュールを設計乃
至選定する際に、上に述べた各モジュールの実行方法や
各種要求に合わせて例えば、全体の実行時間を最短にす
るように、モジュールの実行順序を簡単に又は自動的に
決定乃至判断する手法の提供が求められている。
【0012】
【課題を解決するための手段】本発明の実施形態の一つ
によれば、各モジュールの汎用プロセッサ(CPU)と
の並列動作可能性及び接続関係の情報をもとに複数のモ
ジュール間の実行順序の組み合わせを導出し、各モジュ
ールの実行処理時間及び復帰時間の情報をもとに上記導
出された実行順序の各組み合わせで動作させたときの全
体プログラムの実行時間を計算してモジュール実行順序
が決定される。
【0013】また、このようにして決定されたモジュー
ル実行順序に従って複数のモジュールを実行するモジュ
ール実行制御プログラムを記述し、このモジュール実行
制御プログラムを実行可能な少なくとも1つの演算回路
を用いて処理モジュール及びモジュール実行制御プログ
ラムを逐次又は並列に実行させることによって、所望の
機能や特性を有するシステムを実現することができる。
【0014】
【発明の実施の形態】以下、本発明の実施の形態を図を
用いて説明する。
【0015】本発明で対象とするプログラムは、汎用演
算回路に相当する汎用プロセッサ(CPU)や、DSP
等の信号処理専用プロセッサ、特定の機能専用の演算を
行うハードウェア、およびその他の周辺回路で構成され
る計算機システムやシステムLSI等の制御装置(電子
システム)を制御するために用いられ、プログラム全体
を制御する制御プログラム、及びCPUやDSP上のソ
フトウェア、または専用ハードウェアとして実行される
機能単位の処理を実現する複数のモジュールで構成され
る。
【0016】図1に3種類のモジュールの構成を示す。
各モジュール1,2,3は、起動処理部101,10
4,107,実処理部102,105,108,および
終了処理部103,106,109で構成される。各起
動処理部および各終了処理部は、モジュール実行制御プ
ログラムとのインタフェース部分に相当し、他のモジュ
ールとのデータの授受などはこれらのインタフェースを
介して行われる。各実処理部は、それぞれのモジュール
の機能を実現するメインの処理を実行する部分である。
【0017】起動処理部101,104,107では、
インタフェースとして必要な種々のパラメータを取得す
る他、データ設定等の初期設定を行い実処理部102,
105,108を起動する。また、終了処理部103,
106,109は、実処理部の処理の終了を判定し、結
果をパラメータとして送出する他、使用したメモリの開
放等の終了処理を行う。従って、起動処理部および終了
処理部はモジュール実行制御プログラムと同じプロセッ
サ上で実行されるソフトウェアの形態をとる必要があ
る。
【0018】一方、モジュールの機能を実現する方法と
して、汎用プロセッサ(CPU)上のソフトウェアやDS
Pソフトウェア、専用ハードウェアを選択した場合に
は、実処理部がこれらの実行方法で実行される。従っ
て、各実現方法の間でCPUとの並列動作が可能な場合
は、実処理部のみが並列動作の対象となる。
【0019】図1の(a)は、実処理部の実行方法とし
て、モジュール実行制御プログラムと同じ汎用プロセッ
サ(CPU)上で実行するソフトウェアを選択した場合
(モジュール1)を表している。この時、モジュール1
はすべてソフトウェアの形態となるため、起動処理部1
01,実処理部102,終了処理部103は、この順番
で連続的に実行され、すべての処理が終了した後モジュ
ール実行制御プログラムに制御を戻す。
【0020】図1の(b)は、実処理部を専用ハードウ
ェアで実行する場合(モジュール2)である。この場合
は、起動処理部104によって実処理部105を実行す
る専用ハードウェアが起動され、該専用ハードウェアが
汎用プロセッサ(CPU)と並列動作可能な構成になっ
ている場合には、汎用プロセッサと独立に処理を行い、
モジュール実行制御プログラムに制御を戻す。モジュー
ル実行制御プログラムは、適当な時間経過後、モジュー
ル2の終了処理部106を起動し、実処理部が終了した
後、終了処理を行ってモジュール実行制御プログラムに
制御を戻す。CPUとの並列動作が不可能な構成の場合
は、実処理部の処理が終了するまで汎用プロセッサ上で
別の処理は行われない。なお、上記の適当な時間とは、
モジュール2を実行するハードウエアから、処理の終了
後に発信される割込み信号を検知するまでの時間、又は
予め予測しておいたモジュール2の実処理部実行時間等
を表わすものとする。
【0021】図1の(c)は、実処理部をDSP用のソ
フトウェアとして実行する場合(モジュール3)であ
る。この場合は、DSPが汎用プロセッサと並列動作可
能な構成になっていれば、(b)と同様の手順で実行さ
れる。
【0022】図2は、複数のモジュールで構成されるプ
ログラムの接続情報テーブルの例を示している。本テー
ブルには、各モジュールの実行方法を考慮して、モジュ
ールを実行する最適な順序を決定するために必要な情報
が示されている。これらの情報は、モジュールを実行す
る際の条件として、プログラムの構造設計時に設計者が
記述する。この例では、モジュールの数を6個とし、各
モジュールに対し、自モジュールが起動するまでに先行
して終了している必要があるモジュール名、CPUとの
並列動作可能性(並列性の有無)というモジュール間の
接続関係と実行条件(第1の情報)を記入する。
【0023】また、本テーブルには、各モジュールを対
象となるプロセッサや専用ハードウェアで実行した場合
の各処理部における実行時間及び復帰時間(第2の情
報)もあわせて記入する。
【0024】各モジュールの実行時間は、全体のプログ
ラムの実行時間を計算するために用いる。実行時間の導
出方法としては、実行環境に合わせてパラメータを設定
したシミュレータで、モジュールの各処理部ごとの実行
時間をシミュレーションする方法がある。また、CPUの
クロック数や各命令の実行サイクル、メモリ転送時間等
のパラメータを変数とする実行時間計算式を作成し、使
用するハードウェア構成のパラメータ値を代入すること
によって計算してもよい。各モジュールの実行時間導出
は、全体の実行時間を最短にするモジュールの実行順を
決定することが目的であるから、各モジュールの実行時
間の精度は、さほど厳密でなくてもよい。
【0025】図2の復帰時間は、各モジュールの各処理
部を実行した際にモジュール実行制御プログラムに制御
が戻る(復帰する)までの時間を表している。
【0026】図1の説明で述べたとおり、例えばCPU
と並列動作可能なモジュール3,4では、起動処理部は
実処理部を起動した段階で復帰するため、起動時の復帰
時間は起動処理部の実行時間になる。一方、CPUと並
列動作不可能なモジュール1,2,5,6では、起動処
理部を実行すると実処理部および終了処理部が終了する
まで復帰しないため、モジュール起動から復帰までの時
間は起動処理部、実処理部、終了処理部の各実行時間を
足した値となる。
【0027】また、図2に記述する情報はシステムの設
計者がモジュールの仕様に合わせて自ら設定しても良い
が、モジュールの設計者乃至供給者が予め各情報を設定
しモジュールの実体と組にしてIntellectual Property
(IP)或いはモジュ−ル媒体として提供することも可
能である。特に、各モジュールの内部を起動処理部、実
処理部及び終了処理部に区分した時のそれぞれの実行処
理時間と復帰時間の情報をコンピュータによって読み取
り可能にその内部に記憶したモジュール媒体を提供する
ことによって、後述するようにシステム設計者が適宜そ
れらの情報を電子的に読み出す(解読する)ことができ
効率的に所望のモジュール実行手順プログラムを作成で
きるようになる。
【0028】次に、図3に図2の接続情報に基づいたモ
ジュール間の接続関係図の例を示す。
【0029】例えば、図2においてモジュール2とモジ
ュール3は、モジュール1を先行モジュールとするが、
それぞれの間には接続関係がないため、図3では、モジ
ュール1(301)の後に並列に接続する関係となる。
また、モジュール3(303)は、専用ハードウェア等
で実行する並列動作可能なモジュールであるため、例え
ばモジュール2(302)と並列動作可能である。な
お、306は、モジュール6(307)がモジュール4
(304)とモジュール5(305)の両方を先行モジ
ュールとしていることを表している。
【0030】図4は、図3に示した6つのモジュール間
の接続関係を満足するモジュール実行順の全ての組み合
わせ候補を示す図である。図3に示すモジュール間の接
続関係とモジュールのCPUとの並列性とを考慮する
と、実行順として選択可能な組み合わせ候補は、この図
4に示すようになる。
【0031】但し、図4中のM#s、M#m、M#tはそれ
ぞれモジュール番号 # の起動処理部、実処理部、終了
処理部を実行することを表わしており、M#s+m+t
はモジュール番号 # の起動処理部、実処理部及び終了
処理部を同一方法で続けて実行することを表わしてい
る。
【0032】これらの実行順序の各組み合わせに対し、
それぞれモジュール1からモジュール6まで実行する時
間(即ち、図3のシステム全体の処理動作プログラムを
完遂するに要する時間)を計算し、最も実行時間が短い
パスを選択することにより、全体のプログラムを最短時
間で実行するモジュール実行順が決定される。
【0033】例えば、図4の太線で示した実行順にモジ
ュールを実行した場合の全体プログラムの実行時間Ttot
alは次の数式で表わされる。後述するように、予めプロ
グラムされた計算機を使用することによって簡単に自動
的に求めることができる。
【0034】
【数1】Ttotal = Ts1 + Tm1 + Tt1 + Ts3 + max(Tm
3;(Ts2 + Tm2 + Tt2)) + Tt3 +Ts4 + max(Tm4;(T
s5 + Tm5 + Tt5))+ Tt4 + Ts6 + Tm6 + Tt6 ここで、Ts#,Tm#,Tt#は、それぞれモジュール番号 #
における起動処理部の実行時間、実処理部の実行時間、
終了処理部の実行時間である。また、max(t1;t
2)は、t1とt2のうち時間の長い方を選択すること
を表している。これは、該当する二つのモジュールがこ
の実行順で並列動作するためである。図4では、丸で囲
んだ2つのモジュール即ちモジュール2と3及びモジュ
ール4と5が並列動作の対象となる。
【0035】同様にして全ての実行順のパスに対する全
体プログラムの実行時間を計算し、該実行時間が最短に
なるパスの実行順を決定し採用する。
【0036】なお、実際のモジュール実行制御プログラ
ムには、モジュール呼び出し以外の処理が含まれる場合
がある。そのような処理のうち、実行時間が十分短い処
理については全体プログラムの実行時間を計算する際に
無視してもモジュール実行順を決定する上で大きな誤差
は生じない。また、実行時間がある程度長い場合には、
その処理のブロックを一つのモジュールと見なして接続
関係を規定し、実行時間の計算を行えばよい。
【0037】上記のように複数のモジュールが並列動作
しない場合においても、実行順がプログラム全体の実行
時間に影響を与える場合がある。
【0038】例えば、図5は、複数のモジュールが共通
のデータにアクセスする場合である。図5において、2
つのモジュール1,2は、同じデータを読み込んで処理
を行っているとする。キャッシュメモリを持つCPUで
は、メインメモリのデータエリア上の使用されるデータ
領域を、より高速に動作するキャッシュメモリに展開す
ることによって高速なデータアクセスを可能にする。図
5の例のように、モジュール1でアクセスしているデー
タ501が、メインメモリ上の504に格納され、キャ
ッシュメモリのデータキャッシュ領域に503としてロ
ードされているとする。503は、次にアクセスされた
他のデータによって更新されない限りは、データキャッ
シュ内にとどまっている。メインメモリからキャッシュ
メモリへのデータ転送には時間がかかるため、データ5
03が書き換えられないうちにモジュール2が実行され
れば、モジュール2で使用するデータ502はすでにキ
ャッシュメモリ上にあるため、データ転送のオーバーヘ
ッドが生じず、より高速に処理を実行することが可能に
なる。したがって、このような場合には、2つのモジュ
ールを連続実行することによって全体の実行時間が短縮
される。
【0039】図6は、複数のモジュールが共通のサブモ
ジュールを使用している場合である。この場合も、図5
と同様に、共通のサブモジュールプログラムが命令キャ
ッシュに格納されている間に、実行することができれ
ば、より高速な処理が可能になるため、このような構成
のモジュールは連続して実行することによって全体のプ
ログラムの実行時間を短縮することが可能である。
【0040】したがって、2つ以上のモジュールを逐次
実行する場合は、図5や図6の条件も考慮して実行順を
決定することによって実行時間を短縮する。
【0041】図7に、上記で説明したモジュールの実行
順序を決定する手順をフローで示す。なお、図7の右側
に記したブロックはメモリ等の記憶手段を示しており、
また全体の手順フロー(手順プログラム)もデイスクや
半導体メモリ等の記録媒体に格納され、それで計算機を
稼動することによって持ち運び自在で誰でも簡単に又は
自動的に実行されるので、かかる電子システムを設計す
る際の設計ツールとして特に有用である。
【0042】同図に示すように、各種モジュールの汎用
プロセッサ(CPU)との並列動作の可能性又はその有
無及び先行するモジュールは何かという各モジュール間
の接続関係についての第1の情報、各モジュールにおけ
る起動処理部、実処理部、終了処理部の実行に要する時
間及び各モジュールにおける起動処理部、実処理部、終
了処理部が復帰するまでに要する時間についての第2の
情報をそれらを蓄積記憶したモジュール接続情報テーブ
ル等から読み出してモジュール間の接続関係及び並列動
作条件を解析してそのモジュール間の接続関係及び並列
動作条件を満足するモジュール実行順序の組み合わせ候
補を導出し、各実行順序の組み合わせ候補毎に全体プロ
グラムの実行時間を算出し、この算出された組み合わせ
候補毎の実行時間のデータを記憶させておき、その内例
えば、実行時間が最短となる実行順序の組み合わせを選
択抽出し、この抽出された実行順序に基づいてモジュー
ルを実際に実行するモジュール実行制御プログラムを作
成し、そのプログラムをメモリに記憶させる。
【0043】なお、決定されたモジュール実行順に基づ
いてモジュールを実行する上記モジュール実行制御プロ
グラムは、予め各モジュールの呼び出し処理プログラム
を用意しておき、決定された実行順に該各モジュールの
呼び出し処理プログラムを並べ、実際のコードに展開す
るスクリプトを任意のスクリプト記述言語で記述し、こ
れを実行することによって容易に自動作成することが可
能である。
【0044】図8は、上記で説明した方法で、複数モジ
ュールで構成されるプログラムを実行する対象となる制
御装置(電子システム)の構成例である。図8のシステ
ム全体は、例えば1枚の半導体基板に集積したシステム
LSIで実現することが可能である。図の制御装置を制御
するプログラムのソフトウェア実行部分は、ROMやフラ
ッシュメモリ等のストレージ806に格納されており、
実行時には、メインメモリ805にロードされて汎用プ
ロセッサ(CPU)801やDSP802で実行され
る。
【0045】また、専用ハードウェアで実行するモジュ
ールの実処理部は、例えば専用ハード1(803),専
用ハード2(804)として実装され、モジュール実行
制御プログラムから呼び出された起動処理部が該専用ハ
ード1(803)や専用ハード2(804)を起動す
る。
【0046】本発明によれば、マイクロプロセッサ等の
汎用演算処理回路や、特定の処理を実行する専用演算処
理回路、および周辺回路で構成される計算機システムや
システムLSI等の演算装置を、汎用演算処理回路で実行
されるソフトウェアモジュール、および/または専用演
算処理回路で実行されるハードウェアモジュールで構成
されるプログラムで効率よく設計することができ、また
その実行プログラムを用いて所望の機能や特性を有する
システムを実現することができる。
【0047】
【発明の効果】システムLSIや計算機システム等を複
数のモジュールで構成される制御プログラムを用いて制
御するシステムを開発する際に、各モジュールの実行方
法に合わせて最適になるように、上記実例では全体の実
行時間が最短になるように、複数のモジュールの実行順
序を簡単に又は自動的に決定することが可能になる。
【図面の簡単な説明】
【図1】モジュールの構成を説明する図。
【図2】モジュールの接続情報テーブルの例を表す図。
【図3】モジュールの接続関係の例を表す図。
【図4】モジュールの実行順の例を表す図。
【図5】複数のモジュールが共通のデータにアクセスす
る場合を示す図。
【図6】複数のモジュールが共通のサブモジュールを使
用する場合を示す図。
【図7】モジュール実行順序決定フローを示す図。
【図8】制御装置の構成例を示す図。
【符号の説明】
101,104,107…モジュールの起動処理部、1
02,105,108…モジュールの実処理部、10
3,106,109…モジュールの終了処理部、801
…汎用プロセッサ(CPU)、802…DSP,803,
804…モジュール実行専用ハードウェア、805…メ
インメモリ、806…ストレージ。

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】汎用プロセッサ及び複数の処理モジュール
    で構成される電子システムの動作プログラムを設計する
    際に、上記各モジュール同士の並列動作の可能性及びモ
    ジュール間の接続情報をもとに上記複数のモジュールの
    実行順序の複数の組み合わせを導出し、上記各モジュー
    ルの実行処理時間及び復帰時間の情報をもとに上記導出
    された上記複数のモジュールの実行順序の各組み合わせ
    で動作させたときの上記システムの動作プログラムの実
    行時間をそれぞれ計算して上記複数のモジュールの実行
    順序を決定することを特徴とするモジュール実行順序決
    定方法。
  2. 【請求項2】請求項1記載の方法によって決定された上
    記複数のモジュールの実行順序に基づいて記述されたモ
    ジュール実行制御プログラムを実行する演算回路を有
    し、上記演算回路を用いて上記複数のモジュールおよび
    上記モジュール実行制御プログラムを逐次又は並列に実
    行することを特徴とする電子システム。
  3. 【請求項3】汎用プロセッサ及び複数の処理モジュール
    で構成される電子システムにおいて、上記各モジュール
    同士の並列動作可能性の情報及び上記各モジュール間の
    接続情報をもとに実行処理時間が最短になる上記複数の
    モジュールの実行順序に基づいて記述されたモジュール
    実行制御プログラムを実行する演算回路を有することを
    特徴とする電子システム。
  4. 【請求項4】汎用プロセッサ及び複数の処理モジュール
    で構成される電子システムの動作プログラムを設計する
    ために、上記各モジュール同士の並列動作可能性の有無
    の情報及び上記各モジュールに先行するモジュールの第
    1情報及び上記モジュールの実行処理時間及び復帰時間
    の第2情報を取り込み、上記第1情報をもとに上記複数
    のモジュールの実行順序の複数の組み合わせを導出し、
    上記第2情報をもとに上記導出された実行順序の各組み
    合わせで動作させたときの上記電子システムの動作プロ
    グラムの実行時間をそれぞれ計算して上記複数のモジュ
    ールの実行順序を決定することからなる手順プログラム
    を記憶したことを特徴とする媒体。
  5. 【請求項5】電子システムを構築するためのモジュール
    を構成する情報をコンピュータによって読み取り可能に
    記憶したモジュール媒体であって、該モジュール内部を
    起動処理部、実処理部及び終了処理部に区分した時のそ
    れぞれの実行処理時間と復帰時間の情報をその内部に記
    憶したことを特徴とするモジュール媒体。
JP36907899A 1999-12-27 1999-12-27 モジュール実行順序決定方法、電子システム及びそのための媒体 Pending JP2001184204A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP36907899A JP2001184204A (ja) 1999-12-27 1999-12-27 モジュール実行順序決定方法、電子システム及びそのための媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP36907899A JP2001184204A (ja) 1999-12-27 1999-12-27 モジュール実行順序決定方法、電子システム及びそのための媒体

Publications (1)

Publication Number Publication Date
JP2001184204A true JP2001184204A (ja) 2001-07-06

Family

ID=18493510

Family Applications (1)

Application Number Title Priority Date Filing Date
JP36907899A Pending JP2001184204A (ja) 1999-12-27 1999-12-27 モジュール実行順序決定方法、電子システム及びそのための媒体

Country Status (1)

Country Link
JP (1) JP2001184204A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008250838A (ja) * 2007-03-30 2008-10-16 Kddi Corp ソフトウェア生成装置、方法、およびプログラム
WO2010001555A1 (ja) * 2008-06-30 2010-01-07 パナソニック株式会社 実行順序決定装置、実行順序決定プログラム、実行順序決定回路及び情報処理装置
JP2011175482A (ja) * 2010-02-24 2011-09-08 Nec Corp 情報処理装置、情報処理方法およびプログラム
JP2012181674A (ja) * 2011-03-01 2012-09-20 Nippon Steel Corp プログラム作成支援装置、プログラム作成支援方法およびコンピュータプログラム
JP2013025703A (ja) * 2011-07-25 2013-02-04 Hitachi Information & Communication Engineering Ltd ソフトウェアのハードウェア化の性能見積り方法、装置、プログラムおよびその記録媒体
JP2017142718A (ja) * 2016-02-12 2017-08-17 株式会社デンソー 電子制御装置およびコード生成プログラム

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008250838A (ja) * 2007-03-30 2008-10-16 Kddi Corp ソフトウェア生成装置、方法、およびプログラム
WO2010001555A1 (ja) * 2008-06-30 2010-01-07 パナソニック株式会社 実行順序決定装置、実行順序決定プログラム、実行順序決定回路及び情報処理装置
JP5259714B2 (ja) * 2008-06-30 2013-08-07 パナソニック株式会社 実行順序決定装置、実行順序決定プログラム、実行順序決定回路及び情報処理装置
US8544011B2 (en) 2008-06-30 2013-09-24 Panasonic Corporation Generation and concurrent execution of a virtual task in an execution order determining system
JP2011175482A (ja) * 2010-02-24 2011-09-08 Nec Corp 情報処理装置、情報処理方法およびプログラム
JP2012181674A (ja) * 2011-03-01 2012-09-20 Nippon Steel Corp プログラム作成支援装置、プログラム作成支援方法およびコンピュータプログラム
JP2013025703A (ja) * 2011-07-25 2013-02-04 Hitachi Information & Communication Engineering Ltd ソフトウェアのハードウェア化の性能見積り方法、装置、プログラムおよびその記録媒体
JP2017142718A (ja) * 2016-02-12 2017-08-17 株式会社デンソー 電子制御装置およびコード生成プログラム

Similar Documents

Publication Publication Date Title
US6219780B1 (en) Circuit arrangement and method of dispatching instructions to multiple execution units
De Michell et al. Hardware/software co-design
US8230408B2 (en) Execution of hardware description language (HDL) programs
US6487715B1 (en) Dynamic code motion optimization and path tracing
US20090106533A1 (en) Data processing apparatus
JP2001202397A (ja) システム・オン・チップのアーキテクチャ設計支援システム及びアーキテクチャ生成方法
KR101647817B1 (ko) 재구성 가능한 프로세서의 시뮬레이션 장치 및 방법
US20220121593A1 (en) Systems And Methods For Processor Circuits
JP2001184204A (ja) モジュール実行順序決定方法、電子システム及びそのための媒体
KR100873755B1 (ko) 멀티-프로세서 파이프라인 병렬 계산을 위한 방법들 및장치
JPH0850554A (ja) プロセッサの動作モデルと論理検証用試験命令列の自動生成方法及び装置
US6981130B2 (en) Forwarding the results of operations to dependent instructions more quickly via multiplexers working in parallel
Tahar et al. Formal verification of pipeline conflicts in RISC processors
JP2013161484A (ja) 再構成可能コンピューティング装置、その第1メモリ制御器及び第2メモリ制御器、並びにそのデバッギング用のトレースデータを処理する方法
JP2000268074A (ja) 検証プログラム自動生成装置および方法並びにプロパティ自動生成装置および方法
JP2000105759A (ja) 集積回路及び集積回路用のデータを記録した記録媒体
JP3776058B2 (ja) システムlsi、システムlsiの設計方法、及び、記録媒体
US11449347B1 (en) Time-multiplexed implementation of hardware accelerated functions in a programmable integrated circuit
Bouwens Power and performance optimization for adres
JP2000242684A (ja) 機能合成方法,機能合成装置およびその記録媒体
Paulino et al. Architecture for transparent binary acceleration of loops with memory accesses
DB et al. HDL Programming and Sequential Circuitry for Multi-Core RISC-V Processor
JPH0916642A (ja) データ処理装置のアーキテクチャ評価方法
Cong Hardware accelerated simulation and automatic design of heterogeneous architecture
CN118171707A (zh) 一种基于卷积神经网络微处理器的虚拟原型平台