JP2008015735A - タイミングチャート処理システム、タイミングチャート処理方法及びタイミングチャート処理プログラム - Google Patents

タイミングチャート処理システム、タイミングチャート処理方法及びタイミングチャート処理プログラム Download PDF

Info

Publication number
JP2008015735A
JP2008015735A JP2006185317A JP2006185317A JP2008015735A JP 2008015735 A JP2008015735 A JP 2008015735A JP 2006185317 A JP2006185317 A JP 2006185317A JP 2006185317 A JP2006185317 A JP 2006185317A JP 2008015735 A JP2008015735 A JP 2008015735A
Authority
JP
Japan
Prior art keywords
timing chart
information
conversion
resource
resource scheduling
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
Application number
JP2006185317A
Other languages
English (en)
Other versions
JP4229243B2 (ja
Inventor
Masahiko Watanabe
政彦 渡辺
Yukio Yoshino
由紀夫 吉野
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.)
Cats Co Ltd
Original Assignee
Cats Co 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 Cats Co Ltd filed Critical Cats Co Ltd
Priority to JP2006185317A priority Critical patent/JP4229243B2/ja
Publication of JP2008015735A publication Critical patent/JP2008015735A/ja
Application granted granted Critical
Publication of JP4229243B2 publication Critical patent/JP4229243B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】タイミングチャートを用いたリソーススケジューリング設計の効率化を図ったタイミングチャートの処理システム、タイミングチャート処理方法及びタイミングチャート処理プログラムを提供する。
【解決手段】タイミングチャート処理システム100は、複数のタスクが共通のリソースを排他的に確保するためのリソーススケジューリングの設計におけるタイミングチャートの処理を行うものであって、複数のタスクのそれぞれに対応するタイミングチャートを表現するための表現情報を取得するリソーススケジューリングモデル・制約条件取得部12と、表現情報から状態遷移情報への変換規則を取得し、当該変換規則に基づいて、表現情報を状態遷移情報に変換する変換部20とを有する。
【選択図】図2

Description

本発明は、複数のタスクが共通のリソースを排他的に確保するためのリソーススケジューリングの設計おけるタイミングチャートの処理システム、タイミングチャート処理方法、及び、コンピュータにて実行されるタイミングチャート処理プログラムに関する。
組込みシステムの複雑化、大規模化にともない、ネットワークやバスを用いて、各機能における処理を並列に実行するシステムが増加している。このため、分散化された各機能における処理がリソースを共有する場合に、制約の範囲内でリソース確保を競合することなくリソーススケジューリングの設計が行われること、更には、そのリソーススケジューリングの検証を行うことが重要となっている。
例えば、車載ネットワークに接続された自動車や、マルチメディア(HDD、DVD、ビデオテープ等)に対応したデジタル家電等において、複数のタスク(ここで、タスクとは、ソフトウェアでの処理単位の他、プロセス、ユニット等の様々な処理の単位を意味する)が画像処理用LSIを共有する場合を考える。この場合、各タスクは、画像処理用LSIのリソースを、他のタスクと競合せずに、且つ、制約を満たして確保することができるように、リソーススケジューリングの設計及び検証を行わなければならない。
リソーススケジューリングの設計には、一般にタイミングチャートが用いられる。入力情報に基づいてタイミングチャートを作成するシステムとしては、例えば特許文献1乃至3に記載されたシステムがある。
米国特許第5381524号明細書 米国特許第5576979号明細書 米国特許第5790435号明細書
ところで、リソーススケジューリング設計とリアルタイムスケジューリング設計とは、共通点と相違点がある。共通点は、両者とも制約が存在する点である。一方、相違点は、リアルタイムスケジューリング設計が、タスクの実行が制約条件を満たすことを主眼としているのに対し、リソーススケジューリング設計は、複数のタスクによるリソース確保が競合することなく、制約条件を満たして、リソース確保が行われることを主眼としている点、及び、開発手法において、リアルタイムスケジューリング設計は、参考とすべきリアルタイムスケジュール理論が存在するのに対して、リソーススケジューリング設計は、そのような理論が存在せず、属人的に試行錯誤を繰り返す必要がある点である。
このため、従来のリソーススケジューリング設計は、効率的な開発が困難であり、設計効率を向上させることが要求されていた。
本発明の目的は、上述した問題点を解決するものであり、タイミングチャートを用いたリソーススケジューリング設計の効率化を図ったタイミングチャートの処理システム、タイミングチャート処理方法及びタイミングチャート処理プログラムを提供するものである。
本発明は、複数のタスクが共通のリソースを排他的に確保するためのリソーススケジューリングの設計に用いられるタイミングチャートの処理システムであって、前記複数のタスクのそれぞれに対応するタイミングチャートを表現するための表現情報を取得する表現情報取得手段と、タイミングチャートを表現するための表現情報からリソースの確保に関する状態の移り変わりを表す状態遷移情報への変換規則を取得する変換規則取得手段と、前記変換規則取得手段によって取得された前記変換規則に基づいて、前記表現情報取得手段により取得された表現情報を状態遷移情報に変換する変換手段とを有することを特徴とする。
この構成によれば、タスクに対応するタイミングチャートを表現するための表現情報を変換規則に基づいて状態遷移情報に変換することで、プログラムへの変換が容易な状態遷移情報を得て、リソーススケジューリング設計の効率化を図ることが可能となる。ここで、タスクとは、ソフトウェアでの処理単位の他、プロセス、ユニット等の様々な処理の単位を意味する。
また、本発明のタイミングチャート処理システムは、前記表現情報が、前記タスクのリソーススケジューリングの繰り返しを表現するための情報、リソース確保期間を表現するための情報、リソース確保までの待機期間を表現するための情報、前記タスク間での同期を表現するための情報、時系列上の区切りを表現するための情報、及び、前記リソース確保の契機となる事象の優先度を表現するための情報を含むようにしてもよい。
この構成によれば、表現情報によって、多種多様なタイミングチャートの表現が可能となり、更には、多種多様なタイミングチャートに対応する状態遷移情報を得ることが可能となる。
また、本発明のタイミングチャート処理システムは、前記変換規則が、前記表現情報に対して階層的に定められる構造を有するようにしてもよい。
この構成によれば、例えば、下位の階層における変換規則を入れ替えることで、上位の変換規則に影響を与えることなく、簡易に変換規則を変更することができる。
また、本発明のタイミングチャート処理システムは、前記リソーススケジューリングの設計における制約条件を取得する制約条件取得手段と、前記変換手段による変換により得られた状態遷移情報が前記制約条件取得手段により取得された制約条件を満たすか否かを検証する検証手段とを有するようにしてもよい。
この構成によれば、タイミングチャートを表現するための表現情報を変換して得られる状態遷移情報が、制約条件を満たしているか否か、換言すれば、リソーススケジューリングの設計において制約条件が満たされているか否かを検証することができ、リソーススケジューリング設計の効率化を図ることが可能となる。
また、本発明のタイミングチャート処理システムは、前記制約条件取得手段により取得された制約条件に対応する論理式を生成する論理式生成手段を有し、前記検証手段が、前記変換手段による変換により得られた状態遷移情報が前記論理式生成手段により生成された論理式を満たすか否かを検証するようにしてもよい。
この構成によれば、制約条件に対応する論理式を用いて、状態遷移情報が制約条件を満たしているか否かを検証することができる。
また、本発明は、複数のタスクが共通のリソースを排他的に確保するためのリソーススケジューリングの設計に用いられるタイミングチャートの処理方法であって、前記複数のタスクのそれぞれに対応するタイミングチャートを表現するための表現情報を取得する表現情報取得ステップと、タイミングチャートを表現するための表現情報からリソースの確保に関する状態の移り変わりを表す状態遷移情報への変換規則を取得する変換規則取得ステップと、前記変換規則取得ステップによって取得された前記変換規則に基づいて、前記表現情報取得ステップにより取得された表現情報を状態遷移情報に変換する変換ステップとを有することを特徴とする。
また、本発明のタイミングチャート処理方法は、前記リソーススケジューリングの設計における制約条件を取得する制約条件取得ステップと、前記変換ステップによる変換により得られた状態遷移情報が前記制約条件取得ステップにより取得された制約条件を満たすか否かを検証する検証ステップとを有するようにしてもよい。
また、本発明は、複数のタスクが共通のリソースを排他的に確保するためのリソーススケジューリングの設計に用いられるタイミングチャートの処理を行うコンピュータにて実行されるプログラムであって、前記複数のタスクのそれぞれに対応するタイミングチャートを表現するための表現情報を取得する表現情報取得ステップと、タイミングチャートを表現するための表現情報からリソースの確保に関する状態の移り変わりを表す状態遷移情報への変換規則を取得する変換規則取得ステップと、前記変換規則取得ステップによって取得された前記変換規則に基づいて、前記表現情報取得ステップにより取得された表現情報を状態遷移情報に変換する変換ステップとを有することを特徴とする。
また、本発明のプログラムは、前記リソーススケジューリングの設計における制約条件を取得する制約条件取得ステップと、前記変換ステップによる変換により得られた状態遷移情報が前記制約条件取得ステップにより取得された制約条件を満たすか否かを検証する検証ステップとを有するようにしてもよい。
本発明によれば、タスクに対応するタイミングチャートを表現するための表現情報を変換規則に基づいて状態遷移情報に変換し、更には、その検証を行うことで、リソーススケジューリング設計の効率化を図ることが可能となる。
本発明の実施の形態について、図面を参照して具体的に説明する。
図1は、タイミングチャート処理システムのハードウェア構成を示す図である。図1に示すタイミングチャート処理システム100は、パーソナルコンピュータ(PC)であり、内部バス107に接続されたCPU101、メモリ102、ハードディスクドライブ(HDD)103、操作部105及びモニタ106によって構成される。
図2は、タイミングチャート処理システム100の機能ブロック図である。同図に示すタイミングチャート処理システム100は、複数のタスクが共通のリソースを排他的に確保するためのリソーススケジューリングの設計に用いられるタイミングチャートを処理するものであって、表現情報取得手段及び制約条件取得手段に対応するリソーススケジューリングモデル・制約条件取得部12と、変換規則取得手段、変換手段及び論理式生成手段に対応する変換部14と、変換規則保持部15と、時間付きオートマトンモデル保持部16と、分岐時間時相論理式保持部18と、検証手段に対応する検証部20とにより構成される。これら各機能ブロックは、図1のハードウェア構成においては、CPU101が操作部105の操作に応じて、HDD103から読み出してメモリ102に記憶させた所定のプログラムを実行することによって実現される。
図3は、リソーススケジューリング設計及びその検証の作業工程と、当該作業工程によって得られる成果物との対応関係を示す図である。第1の作業工程であるシステム構成設計では、リソーススケジューリングに従って作動するシステムの構成が得られる。図4は、システム構成図の一例を示す図である。図4では、タスクT1乃至T3のそれぞれが並列に動作する状況において、共通のリソースR1を他のタスクと競合することなく排他的に確保する場合のシステムの構成が表されている。
再び、図3に戻って説明する。第2の作業工程である制約条件設計では、各タスクの制約条件を表す制約条件表が得られる。図5は、制約条件表の一例を示す図である。図5に示す制約条件表は、タスクのそれぞれについて、満たすべき制約条件を表したものであり、定周期起動を行うタスクの起動周期(制御周期)、リソース確保の期間、リソース確保の周期の最大(最大間隔)、タスク間の時間同期のためのマルチキャストのメッセージの通信における送信時と受信時の時間差を表す通信遅延の最小及び最大、メッセージの種類を間接的に表す通信ビットからなる。
図5で表される制約条件によれば、タスクT1は、6msの制御周期で起動され、最大300ms毎にリソースR1を24ms確保する必要がある。また、タスクT2は、10msの制御周期で起動され、最大2000ms毎にリソースR1を20ms確保する必要があり、タスクT3は、16msの制御周期で起動され、最大300ms毎にリソースR1を128ms確保する必要がある。また、図5で表される制約条件によれば、通信ビットが1であるため、メッセージの種類は0と1の2種類である。また、例えば、タスクT1からタスクT2へのメッセージ通信における最小通信遅延時間は0ms、最大通信遅延時間は58msである。
なお、各タスクにおけるリソース確保期間は、制御周期の倍数となっており、各タスクは、当該タスクの起動回数をカウントしながらリソース確保期間を制御する。例えば、タスクT1は、制御周期である6ms毎に時間をカウントし、4回起動するまでの期間、リソースR1を確保すれば、24msだけリソースR1を確保することができる。
再び、図3に戻って説明する。第3の作業工程であるリソーススケジューリングモデル設計では、ユーザの作業等によって、タイミングチャートを表現するための表現情報としてのリソーススケジューリングモデルが得られる。次に、第4の作業工程である時間付きオートマトン変換では、リソーススケジューリングモデルが変換され、状態遷移情報としての時間付きオートマトンモデルが得られる。更に、第5の作業工程である時間付きオートマトンモデル検証では、論理式である分岐時間時相論理式が得られ、当該分岐時間時相論理式によって時間付きオートマトンモデルの検証、具体的には、時間付きオートマトンモデルが制約条件表で表される制約条件を満たすか否かが判断される。
そして、時間付きオートマトンモデルが制約条件表で表される制約条件を満たさないと判断される場合には、再度、第1の作業工程であるシステム構成設計、第2の作業工程である制約条件設計、あるいは、第3の作業工程以降が繰り返される。
本実施形態におけるタイミングチャート処理システム100は、上述した第1乃至第5の作業工程のうち、第4の作業工程である時間付きオートマトン変換と、第5の作業工程である時間付きオートマトンモデル検証とを行う。
以下、タイミングチャート処理システム100の動作を説明する。図6は、タイミングチャート処理システム100の動作を示すフローチャートである。
リソーススケジューリングモデル・制約条件取得部12は、リソーススケジューリングモデルと、当該リソーススケジューリングモデルに埋め込まれた、制約条件表に対応する制約条件を取得する(S101)。例えば、ユーザが操作部105を操作して、タイミングチャートを作成すると、そのタイミングチャートを表現するための表現情報をリソーススケジューリングモデルとして取得する。このリソーススケジューリングモデルのフォーマットは特に規定はしないが、具体例を含めて説明するために、タイミング図の標準フォーマットであるTDML(Timing Diagram Markup Language)で説明する。
図7は、リソーススケジューリングモデルによって表されるタイミングチャートの一例を示す図である。リソーススケジューリングモデルは、6つの表現情報を有している。具体的には、6つの表現情報は、タスクのリソーススケジューリングの繰返しを表現するための情報としてのループ、リソース確保期間を表現するための情報としてのリソース確保、リソース確保までの待機期間を表現するための情報としてのタイマ、タスク間での同期を表現するための情報としてのメッセージ、時系列上の区切りを表現するための情報としてのマーカ、及び、リソース確保の契機となる事象の優先度を表現するための情報としての優先の各表現情報である。図7では、表示51がタイマ表現情報に対応し、表示52がリソース確保表現情報に対応する。また、表示53がマーカ表現情報に、表示54がループ表現情報に、表示55がメッセージ表現情報に、表示56及び表示57が優先表現情報に、それぞれ対応するものである。
タイマ表現情報は、リソース確保タイミングまでの待機期間を表しており、例えば、表示51に対応するタイマ表現情報は、78msの間待機していることを表す。リソース確保表現情報は、リソースを確保している期間を表しており、例えば、表示52に対応するリソース確保表現情報は、タイマ表現情報で表される78msのタイマ終了後に24msだけリソースを確保することを表す。マーカ表現情報は、リソーススケジューリングにおける区切りのタイミング、具体的には、ループの区切りやタイマ終了前のメッセージ受信のタイミング等を表している。例えば、表示53に対応するマーカ表現情報は、176msのタイマ終了後にループの区切りとなり、更にメッセージをタスクT2及びT3にメッセージを送信して次のループに移ることを表す。
ループ表現情報は、リソーススケジューリングの繰り返しを表す。例えば、表示54に対応するループ表現情報は、タイマ表現情報で表される176msのタイマ終了後に0msとなって次のループが開始されることを表す。メッセージ表現情報は、タスク間でのメッセージの送受を表す。例えば、表示55に対応するメッセージ表現情報は、名称「C_t1」のメッセージにおける最小通信遅延時間が0ms、最大通信遅延時間が58msであることを表す。
優先表現情報は、リソース確保の契機となる事象の優先度を表している。例えば、表示56に対応する優先表現情報は、名称「c_t3」のメッセージを優先することを表しており(名称「c_t3」のメッセージが「First」と表されていることに対応)、タスクT2が「First」と表された名称「c_t3」のメッセージを名称「c_t1」のメッセージより先に受信した場合に20msリソースが確保され、名称「c_t1」のメッセージの後に名称「c_t3」のメッセージを受信した場合は、リソース確保は行われない。すなわち、図7では、タスクT2が名称「c_t3」のメッセージを受信した際にリソースを確保することができるタイミングは、タスクT3における128msのリソース確保完了から、タスクT1からの名称「c_t1」のメッセージを受信するまでの間となる。また、表示57に対応する優先表現情報は、128msのタイマと160msのタイマの双方を優先することを表しており(128msのタイマと160msのタイマの双方が「First」と表されていることに対応)、128msのタイマと160msのタイマのいずれか一方が先に終了した場合に、タスクT3においてリソースが確保される。
図8は、上述した表現情報を用いない従来のタイミングチャートの一例を示す図である。図7と図8は、同様の時間的遷移を表すものであるが、図7の方がリソーススケジューリングを直感的に把握することができる。
再び、図6に戻って説明する。変換部14は、リソーススケジューリングモデル及び制約条件を取得すると、リソーススケジューリングモデルから時間付きオートマトンモデルへの変換規則を、変換規則保持部15から取得する(S102)。なお、変換規則保持部15を有しない場合には、変換部14は、ネットワークを介して外部から変換規則を取得してもよい。次に、変換部14は、取得した変換規則に基づいて、リソーススケジューリングモデルを時間付きオートマトンモデルに変換する(S103)。
従来、リソーススケジューリング設計においては、リソーススケジュールモデルが制約条件を満足しているか否かを検証する際には、リソーススケジュールモデルをシミュレーションや実機上で動作させてテストを行うという動的な検証が考えられていた。しかし、このような検証方法では、制約条件を完全に満足することができるような網羅的なテストケースを作成することが求められ、膨大な工数を費やしており、現実的ではない。そこで、リソーススケジューリングモデルを時間付きオートマトンモデルに変換することで、いわゆるモデル検証を適用することができるようにする。このモデル検証により、網羅的に全てのパスを静的検証し、制約条件を満足しているか否かを検証することができる。
時間付きオートマトンモデルの検証は幾つかあるが、ここでは具体例を含めて説明するためにUPPAALというツールで説明する。UPPAALツールの時間付きオートマトンモデルの表記は、ロケーションと呼ばれる状態を表すものと、エッジと呼ばれる遷移を表すものとから構成され、エッジは、ロケーション間を接続する。図9は、時間付きオートマトンモデルの表記の一例を示す図である。この時間付きオートマトンモデルは、図7に示すタイミングチャートのうち、タスクT1のタイミングチャートが表すリソーススケジューリングモデルを変換したものである。
表記61は、ロケーションである。ロケーションは、Initial属性、Urgent属性、Committed属性を有する。ここでは、表記61のロケーションは、Initial属性を有し、当該ロケーションが初期状態であり、状態遷移がここから開始されることを示す。
表記62は、エッジであり、所定のロケーションから他のロケーションへの遷移を示す。エッジは、Guard属性、Sync属性、Update属性を有する。Guard属性には、他のロケーションに遷移するための条件式、Sync属性には、時間同期のためのメッセージの送受信、Update属性には、変数更新のための計算式がそれぞれ記述される。ロケーションは名前とInvariants属性を有する。Invariants属性には、ロケーションに対応する滞在期間の条件式が記述される。表記63は、表記62に対応するエッジのUpdate属性に、timer:=0の式が記述されているため、表記61のロケーションから表記65のロケーションに遷移するときにtimer変数に0が代入されることを表す。
表記64は、ロケーションの名称である。表記65は、対応するロケーションがCommitted属性であり、時間経過を伴わないロケーションであることを示す。表記66は、対応するエッジがSync属性に、時間同期のための名称「c_t1」のメッセージの送信が記述され、Update属性に、W1_clock:=0の式が記述されているため、表記65のロケーションから表記69のロケーションに遷移するときに、名称「c_t1」のメッセージを送信し、W1_clock変数に0が代入されることを表す。
表記67は、ロケーションのInvariants属性にW、1_clock<=78と記述されているため、このロケーションにはW1_clockが0〜78の範囲の時間滞在する可能性があることを示している。表記68は、対応するエッジについて、Guard属性にW1_clock==78が記述され、Update属性にR1_clock:=0の式が記述されているため、表記69のロケーションからw1_clock変数が78の値になったときに表記70のロケーションに遷移し、R1_clock変数に0が代入されることを表す。
以下、リソーススケジューリングモデルを時間付きオートマトンモデルに変換する際の具体例を説明する。変換対象は、タスクと通信である。図7のタイミングチャートに対応するリソーススケジューリングモデルを例とすると、3つのタスクT1乃至T3は、TDMLによって、以下のように定義される。すなわち、タスクT1は<conn.name id="TT7">T1</conn.name>、タスクT2は<conn.name id="TT54">T2</conn.name>、タスクT3は<conn.name id="TT64">T3</conn.name>である。
変換部14は、これらTDMLで定義された3つのタスクT1乃至T3のリソーススケジューリングモデルを、UPPAALのモデルに変換する。すなわち、上述したTDMLで定義された3つのタスクT1乃至T3のリソーススケジューリングモデルは、それぞれタスクT1は<name>T1</name>、タスクT2は<name>T2</name>、タスクT3は<name>T3</name>となる。
同様に、変換部14は、TDMLで定義されたリソーススケジューリングモデル<relationship.label label.type="minmax">c_t1</relationship.label>を、UPPAALのモデルの<name>C_T1</name>に変換し、2つの通信「C_T1」及び「C_T2」を抽出する。ここで、通信とは図4における各構成要素を接続する部分を意味し、具体的にはバスやネットワーク等である。この通信を、時間付きオートマトンモデルによって表すことで、通信遅延時間の可変性を実現することができる。
リソーススケジューリングモデルを時間付きオートマトンモデルに変換するための変換規則は、図10に示すように、リソーススケジューリングモデルに対して階層的に定められる構造を有し、基本ルールレイヤ、付属ルールレイヤ、UPPAALルールレイヤからなる3つのレイヤからなる。これにより、下位のレイヤであるUPPAALルールレイヤを他のシステムの固有のルールに入れ替えれば、当該他のシステムにおいても変換が可能となり、上位のレイヤに影響がなく、変換規則を簡易に変更することが可能となる。
基本ルールレイヤは、リソーススケジューリングモデルを時間付きオートマトンに変換するために必要な要素を抽出するためのルールである。抽出すべき必要な要素は「状態」、「遷移」、「事象」及び「メッセージ」である。
変換部14は、基本ルールレイヤにより、リソーススケジューリングモデルから「状態」を抽出し、その抽出した「状態」が、待機状態かそれ以外の状態かを分類する。待機状態である場合、変換部14は、付属ルールレイヤにより、タイマを設定する。更に変換部14は、UPPAALルールレイヤにより、タイマをUPPAALの「clock変数」と「invariants」に割り当てる。一方、タイマではない状態名称が付与された場合、変換部14は、付属ルールレイヤにより、「状態名称」を付与し、UPPAALルールレイヤにより、UPPAALの状態属性に状態名称を設定する。
また、変換部14は、リソーススケジューリングモデルから抽出した「遷移」に、「遷移条件」と「アクション」との関係を導き出し、Guard属性及びUpdate属性に設定する。同様に、変換部14は、リソーススケジューリングモデルから抽出した「事象」に「事象名称」を付与し、Sync変数、Sync属性に設定する。また、変換部14は、リソーススケジューリングモデルから抽出した「メッセージ」に、「メッセージ名称」を付与し、メッセージ変数を設定する。リソーススケジューリングモデルから「事象」と「メッセージ」が抽出された段階で、タスク間通信における名称の整理が行われ、タスクと通信とを結びつけ、同期通信に遅延機構が実現される。メッセージ通信が最後に配置されているのは、全てのタスクの事象に関して横断的に影響を与えるようにしているためである。
図11は、タスクが変換対象となる場合におけるリソーススケジューリングモデルを時間付きオートマトンモデルに変換する例を示す図である。ここで、図11(a)のリソーススケジューリングモデルに対応するタイミングチャートは、図8の一部である。変換部14は、基本ルールレイヤに基づいて、図11(a)のタイミングチャートに対応するリソーススケジューリングモデルから時間の早い順、すなわち図11(a)の左側から順に状態を抽出する。次に、変換部14は、抽出した状態が時間ゼロにあることから初期状態であると認識し、図11(b)の時間付きオートマトンモデルに示すように、付属ルールレイヤに基づいて、状態名称「Start」を付与し、更にUPPAALルールレイヤに基づいて、状態属性を「initial」に設定する(矢印71)。
また、変換部14は、図11(a)のタイミングチャートに対応するリソーススケジューリングモデルにおいてメッセージの送信を発見すると、メッセージ送信用の状態を確保し、図11(b)の時間付きオートマトンモデルに示すように、状態名称「S1」を付与し、状態属性を「Committed」に設定する(矢印72)。
また、変換部14は、図11(a)のタイミングチャートに対応するリソーススケジューリングモデルにおいて、タイマ待ち状態を発見すると、図11(b)の時間付きオートマトンモデルに示すように、状態名称「W1」を付与し、clock変数「W1_clock」定義を生成し、invariantsに「W1_clock<=78」を設定する(矢印73)。
また、変換部14は、図11(a)のタイミングチャートに対応するリソーススケジューリングモデルにおいて、リソース確保状態を発見すると、図11(b)の時間付きオートマトンモデルに示すように、状態名称「R1」を付与し、clock変数「R1_clock」定義を生成し、invariantsに「R1_clock<=24」を設定する(矢印74)。
このような手順によって全ての状態が抽出されると、変換部14は、遷移を抽出する。通常は時間経過に応じて遷移が抽出される。変換部14は、図11(a)のタイミングチャートに対応するリソーススケジューリングモデルにおいて、ループ(loop)を発見すると、ループ先に遷移を設定し、図11(b)の時間付きオートマトンモデルに示すように、遷移条件「W2_clock==176」をGuard属性に設定し、遷移に関連付けされたアクション「time=0」をUPPAALのUpdate属性として「time:=0」を設定する(矢印75)。
同様の手順によって、全ての遷移が抽出されると、変換部14は、事象を抽出する。ここでは、変換部14は、メッセージ送信用状態からの遷移に事象名称「c_t1」として、Sync属性「c_t1!」を設定し、Sync変数「chan c_t1」宣言を生成する(矢印76)。
図12は、通信が変換対象となる場合におけるリソーススケジューリングモデルを時間付きオートマトンモデルに変換する例を示す図である。ここで、図12(a)のリソーススケジューリングモデルに対応するタイミングチャートは、図8の一部である。変換部14は、タスクが変換対象である場合と同様に状態、遷移、事象を抽出する。しかし、全てのタスクからのメッセージは、一端、図示しない通信部に受信され、その後、目的のタスクに送信される。このような仕組みを実現することで、通信遅延時間の設定が可能となる。
変換部14は、既に検出している事象名称「c_t1」から、メッセージの内容を設定するためのメッセージ変数を、通信ビット数が1ビットであることに対応して、「int[0,1] c_t1_bit」として設定する。更に、変換部14は、メッセージ変数の初期化を初期状態「Start」からの遷移のUpdate属性に「c_t1_bit:=0」として設定する(表記81)。
「c_t1」メッセージは、図12(a)のタイミングチャートに対応するリソーススケジューリングモデルでは、マルチキャスト通信で送られるものであり、タスクT1からタスクT2へのメッセージとタスクT1からタスクT3へのメッセージの2つである。それぞれのメッセージは、図5の制約条件表で規定されるように、タスクT1からT2へのメッセージの通信遅延時間は0msから58msの間であり、タスクT1からタスクT3へのメッセージの通信遅延時間は3msから84msの間である。
変換部14は、「S2」のロケーションでのinvariantsを「S2_clock<=58」とし、「S2」のロケーションからの遷移のGuard属性を「S2_clock>=0」とすることによって、タスクT1からT2へのメッセージの通信遅延時間が0msから58msの間となるようにしている(表記82)。同様に、変換部14は、「S3」のロケーションでのinvariantsを「S2_clock<=84」とし、「S3」のロケーションからの遷移のGuard属性を「S2_clock>=3」とすることによって、タスクT1からT3へのメッセージの通信遅延時間が3msから84msの間となるようにしている(表記83)。
また、変換部14は、メッセージの到着順序を可変とするためには、「S2」のロケーションの状態から分岐する遷移を設定する。具体的には、変換部14は、タスクT1からタスクT3へのメッセージ送信「c_t1T3!」(表記84)を行い、その後、タスクT1からタスクT2へのメッセージ通信「c_t1T2!」(表記85)を行うというパスを生成する。「c_t1_bit=(c_t1_bit+1)&1」(表記85)は、タスクT3からタスクT2へのメッセージが1周回遅れとなることを避けるために、ビット反転を行っていることを表す。
再び、図6に戻って説明する。変換部14の変換によって得られた時間付きオートマトンモデルは、時間付きオートマトンモデル保持部16に保持される。検証部20は、この時間付きオートマトンモデルが制約条件を満たしているか否かを検証する(S104)。
この検証のためには、制約条件、すなわち、図5に示す制約条件表に対応し、リソーススケジューリングモデルから変換された時間オートマトンモデルをモデル検証するための分岐時間時相論理式を生成する必要がある。分岐時間時相論理式のフォーマットはテキストフォーマットである。変換部14は、この分岐時間時相論理式を生成する。
例えば、分岐時間時相論理式を用いた検証の際の項目は、全てのパスでデッドロックは起きないこと(第1の検証項目)、全てのタスクは全てのパスでリソース確保周期を守ること(第2の検証項目)、及び、全てのリソース確保は全てのパスで競合しないこと(第3の検証項目)の3つである。なお、制約条件に従ってリソースを確保しているか否かを検証することも可能であるが、タイミングチャートで一目瞭然となっているので、本実施形態では、検証項目から除外した。
図5の制約条件表に対応し、リソーススケジューリングモデルに埋め込まれた制約条件は、TDMLによって、以下のように定義される。すなわち、<user.defined><key>ResourceScheduler_IntervalTime</key>、<user.value>300</user.value></user.defined>、<user.defined><key>ResourceScheduler_ResourceSpanTime</key>、<user.value>24</user.value></user.defined>、<user.defined><key>ResourceScheduler_DutyTime</key>、
<user.value>6</user.value></user.defined>である。
変換部14は、この制約条件から分岐時間時相論理式を生成し、図13に示すように、分岐時間時相論理式保持部18に保持させる。上述した第2の検証項目の検証を行うためには、変換部14は、時間オートマトンモデルに周期時間を検査するためのclock変数を追加する。分岐時間時相論理式は4種類存在し、「E<>p」はやがてpが成立するパスがあるという制約条件、「A[]p」は全てのパスでpが常に成立するという制約条件、「E[]p」は常にpが成立するパスがあるという制約条件、「A<>p」は全てのパスでやがてpが成立するという制約条件にそれぞれ対応する。
図14は、分岐時間時相論理式を用いた時間付きオートマトンモデルの検証結果を示す図である。図14では、分岐時間時相論理式毎に、当該分岐時間時相論理式を用いた検証が成功、換言すれば、分岐時間時相論理式に対応する制約条件を満たす場合には白丸が付与され、当該分岐時間時相論理式を用いた検証が失敗、換言すれば、分岐時間時相論理式に対応する制約条件を満たさない場合には黒丸が付与されている。
例えば、図14によれば、タスクT2が必ず2000ms以内の周期でリソースを確保しなければならないという制約条件に対応する分岐時間時相論理式「A[] T2.timer <= 2000」を用いた検証は失敗である。これは、タスクT2が必ずしも2000ms以内の周期でリソースを確保することができないことを示している。また、図14によれば、タスクT1とタスクT2によるリソースR1の確保が重ならないという制約条件に対応する分岐時間時相論理式「A[] not (T1.R1 && T2.R1)」を用いた検証は失敗である。これは、タスクT1とタスクT2によるリソースR1の確保が重なる場合があることを示す。
図15は、タイミングチャート処理システム100の有効性を調査するための実験結果である。実験では、5名の被験者は、全てソフトウェア技術者であり、リソーススケジューリングモデルの設計経験者は3名(A、B、C)である。また、UPPAALを習熟している者は2名(A、B)で、他の被験者は簡単なレクチャにより、UPPAALを10分程度学習したにすぎない。
図15によれば、従来の手作業による作業工数とタイミングチャート処理システム100を使用した場合の作業工数を比較すると、UPPAALを習熟している者の場合、タイミングチャート処理システム100を使用することで、作業効率が大幅に改善している。また、UPPAALを習熟していない者の場合、手作業そのものが不可能であるが、タイミングチャート処理システム100を使用することで、作業が可能となった。
このように、タイミングチャート処理システム100は、複数のタスクのそれぞれに対応するタイミングチャートを表現するための表現情報を含んだリソーススケジューリングモデルを取得し、変換規則に基づいて時間付きオートマトンモデルに変換しており、プログラムへの変換が容易な時間付きオートマトンモデルを得ることで、リソーススケジューリング設計の効率化を図ることが可能となる。
また、タイミングチャート処理システム100は、リソーススケジューリングの設計における制約条件を取得し、時間付きオートマトンモデルがこの制約条件を満たしているか否か、換言すれば、リソーススケジューリング設計に用いたタイミングチャートが制約条件を満たしているか否かを検証することができ、検証の容易化によるリソーススケジューリング設計の効率化を図ることが可能となる。
以上、説明したように、本発明に係るタイミングチャート処理システム、タイミングチャート処理方法及びタイミングチャート処理プログラムによれば、リソーススケジューリング設計の効率化を図ることが可能となり、タイミングチャート処理システム等として有用である。
タイミングチャート処理システムのハードウェア構成を示す図である。 タイミングチャート処理システムの機能ブロック図である。 リソーススケジューリング設計及びその検証の作業工程と、当該作業工程によって得られる成果物との対応関係を示す図である。 リソーススケジューリングによって作動するシステムの構成の一例を示す図である。 制約条件表の一例を示す図である。 タイミングチャート処理システムの動作を示すフローチャートである。 リソーススケジューリングモデルによって表されるタイミングチャートの一例を示す図である。 従来のタイミングタイミングチャートの一例を示す図である。 時間付きオートマトンモデルの表記の一例を示す図である。 変換規則のレイヤ構造を示す図である。 リソーススケジューリングモデルを時間付きオートマトンモデルに変換する第1の例を示す図である。 リソーススケジューリングモデルを時間付きオートマトンモデルに変換する第2の例を示す図である。 分岐時間時相論理式の一例を示す図である。 分岐時間時相論理式を用いた時間付きオートマトンモデルの検証結果を示す図である。 タイミングチャート処理システム100の有効性を調査するための実験の結果を示す図である。
符号の説明
12 リソーススケジューリングモデル・制約条件取得部
14 変換部
15 変換規則保持部
16 時間付きオートマトンモデル保持部
18 分岐時間時相論理式保持部
20 検証部
100 タイミングチャート処理システム
101 CPU
102 メモリ
103 HDD
105 操作部
106 モニタ
107 内部バス

Claims (9)

  1. 複数のタスクが共通のリソースを排他的に確保するためのリソーススケジューリングの設計に用いられるタイミングチャートの処理システムであって、
    前記複数のタスクのそれぞれに対応するタイミングチャートを表現するための表現情報を取得する表現情報取得手段と、
    タイミングチャートを表現するための表現情報からリソースの確保に関する状態の移り変わりを表す状態遷移情報への変換規則を取得する変換規則取得手段と、
    前記変換規則取得手段によって取得された前記変換規則に基づいて、前記表現情報取得手段により取得された表現情報を状態遷移情報に変換する変換手段とを有することを特徴とするタイミングチャート処理システム。
  2. 前記表現情報は、前記タスクのリソーススケジューリングの繰り返しを表現するための情報、リソース確保期間を表現するための情報、リソース確保までの待機期間を表現するための情報、前記タスク間での同期を表現するための情報、時系列上の区切りを表現するための情報、及び、前記リソース確保の契機となる事象の優先度を表現するための情報を含むことを特徴とする請求項1に記載のタイミングチャート処理システム。
  3. 前記変換規則は、前記表現情報に対して階層的に定められる構造を有することを特徴とする請求項1又は2に記載のタイミングチャート処理システム。
  4. 前記リソーススケジューリングの設計における制約条件を取得する制約条件取得手段と、
    前記変換手段による変換により得られた状態遷移情報が前記制約条件取得手段により取得された制約条件を満たすか否かを検証する検証手段とを有することを特徴とする請求項1乃至3のいずれかに記載のタイミングチャート処理システム。
  5. 前記制約条件取得手段により取得された制約条件に対応する論理式を生成する論理式生成手段を有し、
    前記検証手段は、前記変換手段による変換により得られた状態遷移情報が前記論理式生成手段により生成された論理式を満たすか否かを検証することを特徴とする請求項4に記載のタイミングチャート処理システム。
  6. 複数のタスクが共通のリソースを排他的に確保するためのリソーススケジューリングの設計に用いられるタイミングチャートの処理方法であって、
    前記複数のタスクのそれぞれに対応するタイミングチャートを表現するための表現情報を取得する表現情報取得ステップと、
    タイミングチャートを表現するための表現情報からリソースの確保に関する状態の移り変わりを表す状態遷移情報への変換規則を取得する変換規則取得ステップと、
    前記変換規則取得ステップによって取得された前記変換規則に基づいて、前記表現情報取得ステップにより取得された表現情報を状態遷移情報に変換する変換ステップとを有することを特徴とするタイミングチャート処理方法。
  7. 前記リソーススケジューリングの設計における制約条件を取得する制約条件取得ステップと、
    前記変換ステップによる変換により得られた状態遷移情報が前記制約条件取得ステップにより取得された制約条件を満たすか否かを検証する検証ステップとを有することを特徴とする請求項6に記載のタイミングチャート処理方法。
  8. 複数のタスクが共通のリソースを排他的に確保するためのリソーススケジューリングの設計に用いられるタイミングチャートの処理を行うコンピュータにて実行されるプログラムであって、
    前記複数のタスクのそれぞれに対応するタイミングチャートを表現するための表現情報を取得する表現情報取得ステップと、
    タイミングチャートを表現するための表現情報からリソースの確保に関する状態の移り変わりを表す状態遷移情報への変換規則を取得する変換規則取得ステップと、
    前記変換規則取得ステップによって取得された前記変換規則に基づいて、前記表現情報取得ステップにより取得された表現情報を状態遷移情報に変換する変換ステップとを有することを特徴とするプログラム。
  9. 前記リソーススケジューリングの設計における制約条件を取得する制約条件取得ステップと、
    前記変換ステップによる変換により得られた状態遷移情報が前記制約条件取得ステップにより取得された制約条件を満たすか否かを検証する検証ステップとを有することを特徴とする請求項8に記載のプログラム。
JP2006185317A 2006-07-05 2006-07-05 タイミングチャート処理システム、タイミングチャート処理方法及びタイミングチャート処理プログラム Expired - Fee Related JP4229243B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006185317A JP4229243B2 (ja) 2006-07-05 2006-07-05 タイミングチャート処理システム、タイミングチャート処理方法及びタイミングチャート処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006185317A JP4229243B2 (ja) 2006-07-05 2006-07-05 タイミングチャート処理システム、タイミングチャート処理方法及びタイミングチャート処理プログラム

Publications (2)

Publication Number Publication Date
JP2008015735A true JP2008015735A (ja) 2008-01-24
JP4229243B2 JP4229243B2 (ja) 2009-02-25

Family

ID=39072695

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006185317A Expired - Fee Related JP4229243B2 (ja) 2006-07-05 2006-07-05 タイミングチャート処理システム、タイミングチャート処理方法及びタイミングチャート処理プログラム

Country Status (1)

Country Link
JP (1) JP4229243B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115410402A (zh) * 2022-08-08 2022-11-29 上海丰蕾信息科技有限公司 交通信号时序逻辑验证方法、装置及电子设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115410402A (zh) * 2022-08-08 2022-11-29 上海丰蕾信息科技有限公司 交通信号时序逻辑验证方法、装置及电子设备

Also Published As

Publication number Publication date
JP4229243B2 (ja) 2009-02-25

Similar Documents

Publication Publication Date Title
Courtiat et al. Experience with RT-LOTOS, a temporal extension of the LOTOS formal description technique
Henzinger et al. The discipline of embedded systems design
Dutertre et al. Timed systems in SAL
Lanz et al. Controllability of time-aware processes at run time
Larsen et al. 20 years of UPPAAL enabled industrial model-based validation and beyond
Verhoef Modeling and validating distributed embedded real-time control systems
Sun et al. A pre-order relation for exact schedulability test of sporadic tasks on multiprocessor Global Fixed-Priority scheduling
Alhroob et al. Transforming UML sequence diagram to high level Petri Net
Lynch Simulation techniques for proving properties of real-time systems
Le et al. Timed-automata based schedulability analysis for distributed firm real-time systems: a case study
Tivoli et al. Adaptor synthesis for real-time components
Glonina et al. On the correctness of real-time modular computer systems modeling with stopwatch automata networks
David et al. Schedulability of Herschel revisited using statistical model checking
JP4229243B2 (ja) タイミングチャート処理システム、タイミングチャート処理方法及びタイミングチャート処理プログラム
André et al. Modeling of immediate vs. delayed data communications: from AADL to UML MARTE
Anssi et al. AUTOSAR vs. MARTE for enabling timing analysis of automotive applications
Karamanolis et al. Formal verification of workflow schemas
Louati et al. Time properties verification of UML/MARTE real-time systems
Xu et al. Safety-Aware Implementation of Control Tasks via Scheduling with Period Boosting and Compressing
Adelt et al. Reusable formal models for concurrency and communication in custom real-time operating systems
Kim et al. DEVS framework for systems development: Unified specification for logical analysis, performance evaluation and implementation
Theelen et al. Using the SHE method for UML-based performance modeling
Jin et al. An approach to schedulability analysis of UML-based real-time systems design
Abdelli et al. Synchronized Transitions Preemptive Time Petri Nets: A new model towards specifying multimedia requirements
Belarbi et al. Temporal verification of real-time multitasking application properties based on communicating timed automata

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081106

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: 20081119

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: 20081125

R150 Certificate of patent or registration of utility model

Ref document number: 4229243

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121212

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: 20121212

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141212

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees