JP2019194847A - 分散したソフトウェアコンポーネント間の通信におけるエラー処理のための方法および装置 - Google Patents
分散したソフトウェアコンポーネント間の通信におけるエラー処理のための方法および装置 Download PDFInfo
- Publication number
- JP2019194847A JP2019194847A JP2019073937A JP2019073937A JP2019194847A JP 2019194847 A JP2019194847 A JP 2019194847A JP 2019073937 A JP2019073937 A JP 2019073937A JP 2019073937 A JP2019073937 A JP 2019073937A JP 2019194847 A JP2019194847 A JP 2019194847A
- Authority
- JP
- Japan
- Prior art keywords
- task
- interval
- execution
- communication
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 41
- 230000005540 biological transmission Effects 0.000 claims abstract description 76
- 238000013500 data storage Methods 0.000 claims abstract description 5
- 230000008569 process Effects 0.000 claims description 11
- 230000004913 activation Effects 0.000 claims description 8
- 230000001960 triggered effect Effects 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 2
- 230000002123 temporal effect Effects 0.000 claims 1
- 239000000872 buffer Substances 0.000 description 32
- 238000001994 activation Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 239000000725 suspension Substances 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000003213 activating effect Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0715—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a system implementing multitasking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/0757—Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
-
- 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/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0721—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3017—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3089—Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
- G06F11/3093—Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes
-
- 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- 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/54—Interprogram communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/805—Real-time
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
通信におけるエラー処理のための方法であって、通信すべきデータが、データ伝送間隔内で、一時的なデータ記憶のための第1のデータ領域からの読み取りおよび一時的なデータ記憶のための第2のデータ領域内での読み取られたデータの記憶により、第1のタスクと第2のタスクとの間で通信される、方法に関して、第1のタスクを実行するための時間間隔および第2のタスクを実行するための通信間隔が設定され、これに関し、
a)1つの通信間隔内の第1のタスクの時間的に最初の実行は、以下の場合にはスキップされ、すなわち、データ伝送間隔がこの通信間隔の時間的に直前に、この通信間隔の時間的にすぐ前の通信間隔の時間間隔の最後の時間間隔内で開始されており、かつこの最後の時間間隔の終了時点を過ぎても続いている場合には、スキップされ、または
b)1つの通信間隔内の第2のタスクの実行は、以下の場合にはスキップされ、すなわち、この第2のタスクの時間的にすぐ前の第2のタスクの実行が、この通信間隔の時間的にすぐ前の通信間隔内で開始されており、かつこのすぐ前の通信間隔の終了時点を過ぎても続いている場合には、スキップされる。
さらなる有利な形態は、以下の説明および図面から明らかである。
a)スケジュールが不完全であるかまたは決定論的でない。
b)タスクがアクティブになっていない(スキップされた)。
c)タスクが自発的にアクティブになっている。
d)チャネルのバッファがそれらの初期化前に使用される。
a)タスクの完了が超える(複数回のタスクアクティブ化の際)。
b)通信が最後のデータ伝送間隔内で完了しなかった。
c)通信が最後のデータ伝送間隔内で実行されなかった。
a)チャネル状態が損傷している。
スケジューリングエラーa)〜c)は、外部の時刻基準、例えば時計またはカウンタによってしか認識できない。
「Concurrency Level」のあり得るカテゴリーは、
Cooperative Core Local
通信に関与するタスクが、専ら協調スケジューリングを有しており、かつ同じ計算コア上で実行される。
通信に関与するタスクが、プリエンプティブスケジューリングを有しており、かつ同じ計算コア上で実行される。
タスクが、少なくとも2つの計算コア上で実行される。
Sequential Core Local
タスクが、順次的に同じ計算コア上で実行される。
タスクが、順次的に少なくとも2つの計算コア上で実行される。
カテゴリー「Cooperative Core Local」における通信のための通信方法を、図1に基づいて説明する。
関与するタスクの少なくとも1つが、バッファ内に準備されたデータを使用している。読み取りバッファの上書きは、整合性の理由から許可されない。
すべてのタスクが、1つの論理間隔内で(場合によってはあり得るエラーシナリオを考慮して)必要な数のアクティブ化を完了しており、準備されたデータはこの論理間隔内ではもう必要なくなっている。
個々のタスクの読み取りバッファを更新している。内包されているデータを用いた計算は、整合性の理由から許可されない。
バッファの更新が完了している。データを計算のために使用できる。ただしタスクはアクティブになっていない。
Tnは、タスクnの間隔を表している。論理間隔は、個々のタスクの周期に時間的に同期して動作するよう定義されている。タスクはスケジューラによってアクティブにされる。通信間隔l2の終了までに、すべてのタスクおよびデータ伝送間隔Kが動作していることが望ましい。タスクにはそれぞれデッドラインが割り当てられており、これらのデッドラインまでにタスクが完了していなければならない。タスクをアクティブ化した後、このタスクに割り当てられたデッドラインの前に適時にこのタスクの計算を完了できない場合、スケジューラによるこのタスクのその後のアクティブ化は行われない。タスクをアクティブ化した後、このタスクに割り当てられたデッドラインの前に適時にこのタスクの計算を完了はするが、この通信間隔l2内に規定されているデータ伝送間隔Kは終了しない場合、この通信のためのエラー処理が必要である。
l2=KGV(10ms、5ms)=10ms
が適用されている。
以下では図1に基づき、ステータス変数Sのフェーズがどのように順次進んでいくのかを説明する。ステータス変数Sは、第1のタスクの実行の第1の状態および第2のタスクの実行の第2の状態に応じて決定される。
ステータス変数Sは、例えば、第1の状態用の第1の状態カウンタZ1の第1のカウントおよび第2の状態用の第2の状態カウンタZ2の第2のカウントによって決定される。第1の状態カウンタは、図1に示したように状態2、1、0をとることができる。第2の状態カウンタは、図1に示したように状態1、0をとることができる。
第1の論理間隔l1の2番目および3番目の繰り返しも図1に示されている。2番目の繰り返しでは第1のタスクT1の3番目の実行が、第1の論理間隔l1の2番目の繰り返しと同期して時点t6で開始され、時点t7で完了する。第1のカウントが時点t7で2から1にセットされる。
ステータス変数Sは、第1の状態カウンタZ1も第1の状態値0を有し、第2の状態カウンタZ2も第2の状態値0を有する時点t4とt5との間では状態TRANS_ACTIVEを有している。
ステータス変数Sは、時点t6とt11との間では状態PROC_ACTIVEを有している。
通信はタスクのコンテキスト内で行われるので、このシナリオでのPROC_COMPLETEは、純粋な論理ステータスであり、PROC_ACTIVEからTRANS_ACTIVEに直接移行する場合は省略される。
それぞれの実行の抑制、つまりスキップにより、計算システムが決定的に負荷軽減される。実行中のタスクが論理間隔の境界を超えることを、以下にタスクデッドライン違反と言う。このようなタスクデッドライン違反への反応として、通信インフラにより、次の周期のタスク実行が中止される。
形式1
デッドライン違反が、タスクの最後の実行の際にデータ伝送間隔内で起こっている。
形式1A
デッドライン違反が、トランザクションのスタート前に既に起こっている。関与するタスクの1つが、新たな間隔内で既に計算を開始していた。PROC_ACTIVEからのステータス移行が、新たなデータ伝送間隔へ移行する。バッファの更新が省略される。
ここでは図2に示したように、バッファの更新が既に行われている。ステータスTRANS_ACTIVEがセットされており、その一方でデッドライン違反が起こっている。協調スケジューリングにより、新たな間隔内での最初のタスク実行が行われる前に通信が完全に完了していることが保証される。
デッドライン違反が、タスクの最後の実行の際にデータ伝送間隔内で起こっているのではない。
図4では、カテゴリー「Parallel Cross Core」に相当する通信のための通信方法を示している。符号が一致する要素に関しては、図1についての説明も参照されたい。
前述の例とは異なり、第2のタスクT2の最初の実行は、時点t31ではなく、時点t31の前で時点t30の後にある時点t61で既に続行される。これに加え、第2のタスクT2の最初の実行が時点t6で中断されない。これは、第1のタスクと第2のタスクがこの例では少なくとも一時的に並行して計算されることを意味している。
通信のための装置1000を図10に示している。装置1000は、プロセッサ1001および少なくとも1つの一時的なデータメモリ1002を含んでおり、これらは、通信すべきデータを、データ伝送間隔K内で、少なくとも1つの一時的なデータメモリ1002の第1のデータ領域B51、B52からの読み取りおよび少なくとも1つの一時的なデータメモリ1002の第2のデータ領域B101、B102内での読み取られたデータの記憶により、第1のタスクT1と第2のタスクT2との間で前述の方法に基づいて通信するように形成されている。
Claims (12)
- 通信におけるエラー処理のための方法であって、通信すべきデータが、データ伝送間隔(K)内で、一時的なデータ記憶のための第1のデータ領域からの読み取りおよび一時的なデータ記憶のための第2のデータ領域内での読み取られた前記データの記憶により、第1のタスク(T1)と第2のタスク(T2)との間で通信される、方法において、前記第1のタスク(T1)を実行するための時間間隔(l1)および前記第2のタスク(T2)を実行するための通信間隔(l2)が設定され、これに関し、
a)1つの通信間隔(l2)内の前記第1のタスク(T1)の時間的に最初の実行は、以下の場合にはスキップされ、すなわち、データ伝送間隔(K)が前記通信間隔(l2)の時間的に直前に、前記通信間隔(l2)の時間的にすぐ前の通信間隔(l2)の前記時間間隔(l1)の最後の時間間隔(l1)内で開始されており、かつ前記最後の時間間隔(l1)の終了時点(t6)を過ぎても続いている場合には、スキップされ、または
b)1つの通信間隔(l2)内の前記第2のタスク(T2)の実行は、以下の場合にはスキップされ、すなわち、前記第2のタスク(T2)の時間的にすぐ前の前記第2のタスク(T2)の実行が、前記通信間隔(l2)の時間的にすぐ前の通信間隔(l2)内で開始されており、かつ前記すぐ前の通信間隔(l2)の終了時点(t6)を過ぎても続いている場合には、スキップされることを特徴とする、方法。 - 前記第1のタスク(T1)の実行が前記第2のタスク(T2)の実行より遅く完了する場合は、前記データ伝送間隔(K)の前記開始が前記第1のタスク(T1)の前記実行の前記完了によって起動され(301、501)、または前記第2のタスク(T2)の実行が前記第1のタスク(T1)の実行より遅く完了する場合は、前記データ伝送間隔(K)の前記開始が前記第2のタスク(T2)の前記実行の前記完了によって起動される(302、601)ことを特徴とする、請求項1に記載の方法。
- 前記第1のタスク(T1)の実行が、前記第1のタスク(T1)の前記実行が開始された前記通信間隔(l2)の終了を過ぎても継続している場合で、前記データ伝送間隔(K)の前記開始が前記第1のタスク(T1)の前記実行の前記完了によって起動される(501)場合、前記第1のタスク(T1)の前記実行のすぐ後の前記第2のタスク(T2)の実行が、前記データ伝送間隔(K)の終了まで延期されることを特徴とする、請求項2に記載の方法。
- 前記第2のタスク(T2)の実行が、前記第2のタスク(T2)の前記実行が開始された前記通信間隔(l2)の終了を過ぎても継続している場合で、前記データ伝送間隔(K)の前記開始が前記第1のタスク(T1)の前記実行の前記完了によって起動される(601)場合、前記通信間隔内では前記データ伝送間隔(K)の起動がもはや起こらないことを特徴とする、請求項2に記載の方法。
- 前記通信すべきデータが、前記データ伝送間隔(K)内で、1つまたは複数のインスタンスにより、前記第1のタスク(T1)および前記第2のタスク(T2)を実行するためのハードウェアの外部で通信されることを特徴とする、請求項2〜4のいずれか一項に記載の方法。
- 前記通信間隔(l2)の期間が、前記時間間隔(l1)のための期間の整数倍であり、これに関し、1つの通信間隔(l2)が1つまたは複数の時間間隔(l1)を含んでおり、前記時間間隔(l1)の一番早い時間間隔(l1)が、前記通信間隔(l2)と同時に始まることを特徴とする、請求項1〜5のいずれか一項に記載の方法。
- 1つの通信間隔(l2)中に少なくとも1つの時間間隔(l1)が始まり、これに関し、時間間隔(l1)が時間的に重なり合っておらず、前記データ伝送間隔(K)が、前記時間間隔(l1)の一番早い時間間隔(l1)内の前記第1のタスク(T1)の最初の実行の前に終了しているか、または前記時間間隔(l1)の一番遅い時間間隔(l1)内の前記第1のタスク(T1)の最後の実行の完了後に開始されるかのいずれかであることを特徴とする、請求項1〜6のいずれか一項に記載の方法。
- ステータス変数(S)が、前記第1のタスク(T1)の前記実行の第1の状態および前記第2のタスク(T2)の前記実行の第2の状態に応じて決定され、これに関し、前記データ伝送間隔(K)が前記ステータス変数(S)の値に応じてスタートすることを特徴とする、請求項1〜7のいずれか一項に記載の方法。
- 1つの通信間隔(l2)内の前記第1のタスク(T1)の1つが中止される場合に、詳しくは、前記通信間隔(l2)中に動作すべき前記第1のプロセス(T1)の最後の前記第1のプロセス(T1)を除く、前記通信間隔(l2)中に動作すべき前記第1のタスク(T1)の1つが、前記通信間隔(l2)に割り当てられた最初の前記時間間隔(l1)の終了時に完了していないので、1つの第1のタスク(T1)の実行が中止される場合に、第1の状態カウンタ(Z1)が訂正され、その際、前記第1の状態カウンタ(Z1)が、前記中止された第1のタスク(T1)が実行された場合に前記第1の状態カウンタ(Z1)が有するであろう状態に訂正されることを特徴とする、請求項8に記載の方法。
- ステータス変数(S)が、前記第1のタスク(T1)および前記第2のタスク(T2)に割り当てられた優先度に応じて決定され、これに関し、一番低い優先度を割り当てられた前記タスクが、前記通信間隔(l2)の1つ内の最後のタスクとして実行される場合、前記一番低い優先度をもつ前記タスクが完了するすぐ後のデータ伝送間隔(K)の開始が、すぐ後に続く通信間隔(l2)内にずらされることを特徴とする、請求項1〜9のいずれか一項に記載の方法。
- プロセッサ(1001)および少なくとも1つの一時的なデータメモリ(1002)であって、通信すべきデータを、データ伝送間隔(K)内で、前記少なくとも1つの一時的なデータメモリ(1002)の第1のデータ領域(B51、B52)からの読み取りおよび前記少なくとも1つの一時的なデータメモリ(1002)の第2のデータ領域(B101、B102)内での読み取られた前記データの記憶により、第1のタスク(T1)と第2のタスク(T2)との間で請求項1から10のいずれか一項に記載の方法に基づいて通信するように形成されている、プロセッサ(1001)および少なくとも1つの一時的なデータメモリ(1002)を特徴とする、通信におけるエラー処理のための装置(1000)。
- 前記装置が、前記通信すべきデータをダイレクトメモリアクセス、DMAまたは割り込みサービスルーチンで通信するためのモジュール(1003)を含んでいることを特徴とする請求項11に記載の装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102018205390.1A DE102018205390A1 (de) | 2018-04-10 | 2018-04-10 | Verfahren und Vorrichtung zur Fehlerbehandlung in einer Kommunikation zwischen verteilten Software Komponenten |
DE102018205390.1 | 2018-04-10 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019194847A true JP2019194847A (ja) | 2019-11-07 |
JP7312002B2 JP7312002B2 (ja) | 2023-07-20 |
Family
ID=67991266
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019073937A Active JP7312002B2 (ja) | 2018-04-10 | 2019-04-09 | 分散したソフトウェアコンポーネント間の通信におけるエラー処理のための方法および装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11055163B2 (ja) |
JP (1) | JP7312002B2 (ja) |
KR (1) | KR20190118521A (ja) |
CN (1) | CN110362444A (ja) |
DE (1) | DE102018205390A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102384977B1 (ko) * | 2020-12-07 | 2022-04-07 | 현대오토에버 주식회사 | 멀티 코어 사이의 실시간성을 유지하는 동기화 시스템 및 방법 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002544621A (ja) * | 1999-05-14 | 2002-12-24 | ハネウェル・インコーポレーテッド | タスクスケジューリングおよびメッセージ受け渡し |
JP2005301812A (ja) * | 2004-04-14 | 2005-10-27 | Hitachi Ltd | デジタル制御装置およびこれを用いたエンジン制御装置 |
JP2011170619A (ja) * | 2010-02-18 | 2011-09-01 | Toyota Motor Corp | マルチスレッド処理装置 |
JP2016013782A (ja) * | 2014-07-02 | 2016-01-28 | 株式会社デンソー | 車載電子制御装置 |
WO2017140504A1 (de) * | 2016-02-16 | 2017-08-24 | Robert Bosch Gmbh | Verfahren und vorrichtung zum betreiben eines steuergeräts |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7310803B2 (en) * | 2001-10-19 | 2007-12-18 | 419638 Canada Inc. | Method and system for executing multiple tasks in a task set |
US7020877B2 (en) * | 2002-05-20 | 2006-03-28 | Dell Products L.P. | Method to distribute periodic task workload |
EP1870806A1 (en) * | 2006-06-19 | 2007-12-26 | Wolfgang Pree GmbH | System for executing distributed sofware |
JP2008046857A (ja) * | 2006-08-16 | 2008-02-28 | Seiko Epson Corp | 情報処理装置、情報処理方法及びそのプログラム |
JP5653431B2 (ja) * | 2010-07-02 | 2015-01-14 | パナソニックIpマネジメント株式会社 | マルチプロセッサシステム |
US8607247B2 (en) * | 2011-11-03 | 2013-12-10 | Advanced Micro Devices, Inc. | Method and system for workitem synchronization |
JP5810891B2 (ja) * | 2011-12-20 | 2015-11-11 | 富士通株式会社 | 情報処理装置及び動作状態監視方法 |
US9176872B2 (en) * | 2013-02-25 | 2015-11-03 | Barco N.V. | Wait-free algorithm for inter-core, inter-process, or inter-task communication |
US9519490B2 (en) * | 2013-03-07 | 2016-12-13 | Microsoft Technology Licensing, Llc | Adaptive data synchronization |
FR3004825B1 (fr) * | 2013-04-19 | 2015-04-24 | Krono Safe | Procede d'allocation temporelle de taches permettant une recuperation d'erreur deterministe en temps reel |
US10133602B2 (en) * | 2015-02-19 | 2018-11-20 | Oracle International Corporation | Adaptive contention-aware thread placement for parallel runtime systems |
US10157092B2 (en) * | 2015-04-27 | 2018-12-18 | Oracle International Corporation | Automatic targeted system suspension based upon downstream system failure detection |
US10776167B2 (en) * | 2016-09-19 | 2020-09-15 | Texas Instruments Incorporated | Bandwidth controlled data synchronization for image and vision processor |
JP6753278B2 (ja) * | 2016-11-22 | 2020-09-09 | オムロン株式会社 | 制御システムおよび制御装置 |
DE102017200669A1 (de) * | 2017-01-17 | 2018-07-19 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Betreiben eines Steuergeräts, Computerprogramm und Verfahren zum Generieren des Computerprogramms |
CN110998529B (zh) * | 2017-07-31 | 2021-08-20 | 三菱电机株式会社 | 信息处理装置以及信息处理方法 |
US10552215B1 (en) * | 2017-08-05 | 2020-02-04 | Jia Xu | System and method of handling real-time process overruns on a multiprocessor |
GB2569269B (en) * | 2017-10-20 | 2020-07-15 | Graphcore Ltd | Synchronization in a multi-tile processing arrangement |
GB2569273B (en) * | 2017-10-20 | 2020-01-01 | Graphcore Ltd | Synchronization in a multi-tile processing arrangement |
-
2018
- 2018-04-10 DE DE102018205390.1A patent/DE102018205390A1/de active Pending
-
2019
- 2019-04-08 KR KR1020190040560A patent/KR20190118521A/ko active Search and Examination
- 2019-04-09 US US16/379,131 patent/US11055163B2/en active Active
- 2019-04-09 JP JP2019073937A patent/JP7312002B2/ja active Active
- 2019-04-09 CN CN201910280624.6A patent/CN110362444A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002544621A (ja) * | 1999-05-14 | 2002-12-24 | ハネウェル・インコーポレーテッド | タスクスケジューリングおよびメッセージ受け渡し |
JP2005301812A (ja) * | 2004-04-14 | 2005-10-27 | Hitachi Ltd | デジタル制御装置およびこれを用いたエンジン制御装置 |
JP2011170619A (ja) * | 2010-02-18 | 2011-09-01 | Toyota Motor Corp | マルチスレッド処理装置 |
JP2016013782A (ja) * | 2014-07-02 | 2016-01-28 | 株式会社デンソー | 車載電子制御装置 |
WO2017140504A1 (de) * | 2016-02-16 | 2017-08-24 | Robert Bosch Gmbh | Verfahren und vorrichtung zum betreiben eines steuergeräts |
Also Published As
Publication number | Publication date |
---|---|
US11055163B2 (en) | 2021-07-06 |
DE102018205390A1 (de) | 2019-10-10 |
US20190310907A1 (en) | 2019-10-10 |
CN110362444A (zh) | 2019-10-22 |
KR20190118521A (ko) | 2019-10-18 |
JP7312002B2 (ja) | 2023-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109697186B (zh) | 时间确定性编译器 | |
WO2021000758A1 (zh) | 机器人资源任务周期管控方法及装置 | |
KR102178190B1 (ko) | 명령 세트 | |
EP2839370B1 (en) | Time slack pipeline balancing for multicore programmable logic controllers (plc) | |
CN103870327A (zh) | 一种实时多任务调度方法和装置 | |
Yalcinkaya et al. | An exact schedulability test for non-preemptive self-suspending real-time tasks | |
US11115232B2 (en) | Method and device for operating a control unit | |
CA2433379A1 (en) | Modulo scheduling of multiple instruction chains | |
US9274831B2 (en) | Information processing apparatus, information processing method, and storage medium | |
CN104008005B (zh) | 用于控制处理器的装置、方法和系统 | |
US9152454B2 (en) | Method for enabling sequential, non-blocking processing of statements in concurrent tasks in a control device | |
CN109656868B (zh) | 一种cpu与gpu之间的内存数据转移方法 | |
US9513969B2 (en) | Method for the management of task execution in a computer system | |
JP7312002B2 (ja) | 分散したソフトウェアコンポーネント間の通信におけるエラー処理のための方法および装置 | |
CN108958903B (zh) | 嵌入式多核中央处理器任务调度方法与装置 | |
JP5195408B2 (ja) | マルチコアシステム | |
JP2019194848A (ja) | 分散したソフトウェアコンポーネント間の通信におけるエラー処理のための方法および装置 | |
CN104142802A (zh) | 存储器控制设备和方法 | |
US11822960B2 (en) | Cascading of graph streaming processors | |
JP6368452B2 (ja) | 非同期のデバイスによって実行されるタスクのスケジューリングの向上 | |
CN108958904B (zh) | 嵌入式多核中央处理器的轻量级操作系统的驱动程序框架 | |
CN108958905B (zh) | 嵌入式多核中央处理器的轻量级操作系统 | |
WO2019188175A1 (ja) | デッドロック回避方法、デッドロック回避装置 | |
JP6217386B2 (ja) | マルチプロセッサ用プログラム生成方法 | |
CN118159946A (zh) | 用于在计算单元中至少处理第一和第二计算运算的方法和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20200219 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220310 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230215 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230307 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230530 |
|
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: 20230608 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230707 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7312002 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |