[aadl-modeling]: Questions regarding subprograms/Input_/Output_Time/Paragraph 9.2.6 (57) and found errors during reading AS5506B

Thomas Driessen thomas.driessen at ds-lab.org
Thu Jan 19 10:38:58 EST 2017


Hello,

I was reading the standard AS5506B for the last weeks and stumbled upon 
some parts that are still not clear to me. Besides, I found some typo 
errors and inconsistencies that I listed below, where I'm sometimes not 
sure which part of the standard is right for a given fact.

But first my questions:

Regarding subprograms:
I understand a subprogram as a method or a function which is some text 
in any given programming language.
According to the standard subprograms may contain other subprogram 
subcomponents. As I'm mainly programming in Java I'm not familiar with a 
concept where a method can contain another method. So if I have a 
subprogram A containing another subprogram B does that mean that I'm 
making a method call from within A to B? Or is there another semantic 
meeaning for this containment relationship?

Regarding Input_Time/Output_Time:
As I get it I can use those two properties to define when exactly Input 
is frozen and Output ist sent [9.2.4 (30)/(31)]. Those properties 
actually allow me to define any given point in time, as they only take 
one of the lifecycle events of a thread as starting point (dispatch, 
start, completion, deadline) and a Offset that can also be negative.  
Doesn't that conflict with 9.2 (8), which states that "The inputs and 
outputs can be specified to occur at dispatch, any time during 
execution, at completion, or at deadline." and thus is restricting 
input/output to either be
dispatch with no offsetdeadline with no offsetstart with an offset 
between 0 .. (completion - start)completion with an offset between 0 .. 
(start - completion)
where we assume that start <= completion?

Regarding 9.2.6 (57):
I don't understand this paragraph.
Can you give me an example for what case this paragraph is needed?

Below you can find a List of typo errors and inconsistencies I found 
during my reading.

Kind regards,
Thomas
Typo Errors 1.6 (7): "for which another hybrid semantics diagram with 
an identically labeled oblong box" - this sentence is doubled 5.2 (C2): 
"calss" should be "calls"? 7.1 (L4): This paragraph talks about 
systems, but (L4) about thread groups. I'm not sure if that's intended? 
8.3.2 (19): "This allows users to specify that a subset of ports to 
provide input." - remove "that"? 8.3.2 (23): "The input of other ports 
that can trigger dispatch is not frozen." - this sentence is doubled 
8.4 (8): "Each provides subprogram access feature of a thread that 
represents an entrypoint to a remotely callable code sequence in the 
source text." - remove "that"? 9 (1): this point exists twice! 9.2.5 
(38): "sampling, oversampling, and undersampling may occur 
nondeterministically due concurrency and preemption" - "... due TO..."? 
I'm not sure about this one A.2 Synchronized Component: "In other 
words, the thread afects the hyperperiod for mode switching of the 
property value is true." - "if" instead of "of"? A.2 Resumption Policy: 
"applies to" contains "system" twice A.9 (10): "... who many elements 
..." - should be "how"? Page 98: In my copy this page is 
empty.Inconsistencies 5.1 (3) talks about data being local and thus not 
shareable if defined within a thread or subprogram. 5.1 (15) instead 
talks only about data in subprograms being local and thus not shareable. 
Which one is right? 8.3.2 (27): The first part mentions "Dispatch" to 
be a valid option for "Output Time" but doesn't include it in the 
following list. Is "Dispatch" a valid value or not? 5.4 (6) & 8.4 (8): 
5.4 (6) talks about calls to subprograms dispatching threads and 8.4 (8) 
about calls to subprograms requesting thread dispatch. Are those 
semantically equivalent? What if the subprogram is within a periodic 
thread? Is the call handled the next time the thread dispatches? 9.2 
(8): It states that "The inputs and outputs can be specified to occur 
at dispatch, any time during execution, at completion, or at deadline.", 
but I'm technically able to dene Input and Output to happen at any time 
between Dispatch and Deadline via Output Time and Input Time. Shouldn't 
then Output Time/Input Time somehow be restricted in order to this 
paragraph? 9.2 (L12) & 9.2 (L15): 9.2 (L12) is unnecessary because of 
9.2 (L15). A.1 Allowed Connection Type: can be applied to bus or 
device, but the explaining text only talks about its eect on busses?  
Is it intended that some properties do not define a default, but in 
their textual explanation a default is given? For example A.1 Preemptive 
Scheduler: the text states: "By default, if this property is not 
specfiied, the processor owns a preemptive scheduler.", which I would 
interpret as default value = true. A.2 Dispatch Able: Within the 
textual explanation Zero Compute Execution Time is mentioned, which I 
couldn't find anywhere. A.2 Subprogram Call Type: "In case of a 
semi-synchronous call the user of the result is may be suspended until 
the result is available." - "is" or "may"? A.3 Deadline: The default is 
per definition "Period" which is only mandatory for threads with a 
periodic dispatch. What if a thread is sporadic or aperiodic and no 
Period is given? A.4 Latency: Definition states that its type is "Time 
Range", explanatory text below states, that its type is "Time. Which one 
is right?" A.4 Queue Size: the explanatory text below states that this 
property "specifies the size of the queue for [...] a data component 
being shared via data access", but the "applies to" section doesn't 
contain "data". Which one is right? A.4 Transmission Type: The "applies 
to" section only contains "data port", but the explanatory text below 
also talks about event ports and event data ports. Which one is right? 
A.6 Activate Entrypoint Call Sequence: The "applies to" section only 
contains "thread" and "device", but the explanatory text below also 
talks about subprograms, event ports and event data ports. Which one is 
right?
-------------- next part --------------
HTML attachment scrubbed and removed


More information about the aadl-modeling mailing list