Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
TASTE
taps
Commits
f5ffebba
Commit
f5ffebba
authored
Jul 20, 2017
by
TASTE User
Browse files
add cpdu data types
parent
e50659ed
Changes
3
Expand all
Hide whitespace changes
Inline
Side-by-side
DataView.aadl
View file @
f5ffebba
This diff is collapsed.
Click to expand it.
DataView.acn
View file @
f5ffebba
Distribute-CPDU-Commands-Generic DEFINITIONS ::= BEGIN
END
Taps DEFINITIONS ::= BEGIN
APID[encoding pos-int, encode-values, size 11]
APUserID[encoding pos-int, encode-values, size 16]
CPDU-output-line-ID[]
CPDU-Id[]
CPDU-Id
s
[]
Pulse-Instr-Instance[] {
output-line-id [],
reserved NULL [pattern '0'B],
duration-exp-value []
}
TC-2-4 []
TYPE8b-ID[encoding pos-int, size 8]
TC[]{
TCs <TYPE8b-ID: tc-type, TYPE8b-ID: tc-subtype> [] {
tc2-4 [present-when tc-type==2 tc-subtype==4]
}
Telecommand[]{
packet-version-no NULL [pattern '000'B],
packet-type NULL [pattern '1'B], -- 1 for TC, 0 for TM
has-secondary-hdr NULL [pattern '1'B], -- !!! 0 for cpdu packets
...
...
@@ -23,10 +32,13 @@ Taps DEFINITIONS ::= BEGIN
ack-successful-progress [],
ack-successful-start [],
ack-successful-acceptance [],
--
service-type-id TYPE8b-ID [],
--
service-subtype-id TYPE8b-ID [],
service-type-id TYPE8b-ID [],
service-subtype-id TYPE8b-ID [],
source-id []
}
},
application-data <secondary-header.service-type-id, secondary-header.service-subtype-id> [],
spare-tc NULL [pattern '00000000'B], -- TBD !!!
packet-error []
}
TM[]{
packet-version-no NULL [pattern '000'B],
...
...
DataView.asn
View file @
f5ffebba
PUS-Implicit-Knowledge DEFINITIONS ::=
BEGIN
TC-type {APID, APUserID} ::= SEQUENCE {
TC-type {APID, APUserID
, TCs
} ::= SEQUENCE {
dest-apid APID,
sequence-count INTEGER(0..16383),
packet-length INTEGER(0..65535),
secondary-header TC-Secondary-Header {APUserID}
secondary-header TC-Secondary-Header {APUserID},
application-data TCs,
packet-error INTEGER(0..65535)
}
TM-type {APID} ::= SEQUENCE {
...
...
@@ -30,13 +32,24 @@ BEGIN
Pulse-Instruction {CPDU-OUTPUT-IDENTIFIER} ::= SEQUENCE {
output-line-id CPDU-OUTPUT-IDENTIFIER,
duration-exp-value INTEGER (0..7) }
duration-exp-value INTEGER (0..7)
}
CPDU-Command {CPDU-Identifier, Pulse-Instruction, INTEGER: max-Instr-No} ::= SEQUENCE {
cpdu-id CPDU-Identifier OPTIONAL,
cmd-pulse-instr SEQUENCE (SIZE (1..max-Instr-No)) OF Pulse-Instruction
}
-- TC[2,4] application data
Distribute-CPDU-Commands { CPDU-Cmd, INTEGER:max-Cpdu-Cmds } ::= SEQUENCE (SIZE (1..max-Cpdu-Cmds)) OF CPDU-Cmd
END
Taps DEFINITIONS ::=
BEGIN
IMPORTS Pulse-Instruction
IMPORTS Pulse-Instruction,
CPDU-Command,
Distribute-CPDU-Commands
FROM Distribute-CPDU-Commands-Generic
TC-type,
TM-type
...
...
@@ -64,15 +77,29 @@ APUserID ::= ENUMERATED { --let ACN manage the "16 bits" constraint
-- CPDU output Identifier defined in 9.2.1d
CPDU-output-line-ID ::= INTEGER { cpdu-line1(1), cpdu-line2(2)} (0..4095)
CPDU-Id ::= ENUMERATED { cpdu-id-1, cpdu-id-2 }
CPDU-Id
s
::= ENUMERATED { cpdu-id-1, cpdu-id-2 }
Pulse-Instr-Instance ::= Pulse-Instruction { CPDU-output-line-ID }
-- Maximum number of command pulse instructions (project specific) (PUS-C, clause 9.2.1.g)
max-Instr-No INTEGER (12 .. 504) ::= 12
-- Maximum number of CPDU commands (!bounds constraints not found in PUS-C)
max-CPDU-Cmds INTEGER (1..128) ::= 2
CPDU-Cmd ::= CPDU-Command {CPDU-Ids, Pulse-Instr-Instance, max-Instr-No}
(WITH COMPONENTS {..., cpdu-id PRESENT})
-- Instantiate the TC-2-4
TC-2-4 ::= Distribute-CPDU-Commands {CPDU-Cmd, max-CPDU-Cmds}
-- Instantiate the project list of TC
TCs ::= CHOICE {
tc2-4 TC-2-4
}
-- Instantiate the generic TC-type
Telecommand ::= TC-type{APID, APUserID, TCs}
-- Instantiate the Telecommand type
TC ::= TC-type{APID, APUserID}
-- Instantiate the Telemetry type
TM ::= TM-type{APID}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment