-
Notifications
You must be signed in to change notification settings - Fork 74
Example for RT Blocks ? #2395
Hi,
what should one enter in these 3 Fields ?
<VarDeclaration Name="Tmin" Type="TIME" />
<VarDeclaration Name="Deadline" Type="TIME" />
<VarDeclaration Name="WCET" Type="TIME" />
All reactions
Replies: 9 comments 4 replies
All reactions
asking my Gemini:
is this RIGHT or Bullshit?
Conclusion: Configuring the RT_E_REND Parameters
To properly configure the RT_E_REND (Real-Time Event Rendezvous) block, you must align its timing parameters with both your hardware capabilities and the specific requirements of your physical process:
WCET(Worst-Case Execution Time): This depends entirely on your controller's processing power. Since the internal logic of a rendezvous block is very simple, this value should be set quite low (e.g., in the microseconds or low milliseconds range).Deadline: This is dictated by your application's physical needs. It defines the maximum acceptable delay between the synchronization of the input events and the triggering of the output event (EO). Fast, safety-critical processes require strict, short deadlines, while non-critical tasks can allow for longer ones. (Rule: Deadline > WCET).Tmin(Minimum Inter-Arrival Time): This parameter protects your system from "event storms" (CPU overload). It should be configured based on the maximum physical switching frequency of your sensors or inputs. (Rule: Tmin ≥ WCET).
In summary: There are no "one-size-fits-all" values. WCET is a hardware constraint, Deadline is a process requirement, and Tmin acts as a safety filter for your inputs.
All reactions
I would say half half. In general I would recommend not to use the RT_xx blocks unless you really need them. Therefore in the latest nightly builds there are not per default linked to a new project.
WCET is as written by Gemini the worst case execution time but the worst case execution time of everything triggered by the event output EO.
Deadline is the relative deadline by which the things triggered by EO shall be completed.
Tmin,Minimum Interarrival time is the minimum time between the events on the input.
These values are used so that the RT blocks can calculate a priority for the threads they contain. RT blocks execute their output events in a dedicate thread. Therefore they are to be treated with care.
All reactions
-
👍 1
is it correct that neither Tmin nor WCET is implemented,
just Deadline ?
the others now just placeholders from the IEC 61499 RT Extension Specification ?
All reactions
coming to our PR #2341 (comment) it would still make sense to have a Event-storm-brake like a E_D_FF for arbitrary Datatypes, without the need of using RT_EVENTS ?
Thanks
Franz
All reactions
i made such Blocks with PR #2460
All reactions
All reactions
I haen't used these blocks in a very long time. Looks like they need some fixes.
All reactions
-
👍 1
so, Found it:
after fixing some Bugs (PR here: eclipse-4diac/4diac-forte#861)
it works:
just the Monitoring not working:
image
All reactions
Monitoring working as well now:
see PR: eclipse-4diac/4diac-forte#862
image
All reactions
so, now we have all Monitorings running (with the latest 3-4 PRs)
imageAll reactions
I tried to improve the UI of the Blocks, giving more Hints for the User: #2459