Skip to content

Svc::CCSDS::SpacePacketDeframer

The Svc::CCSDS::SpacePacketDeframer is an implementation of the DeframerInterface for the CCSDS Space Packet Protocol.

It receives data containing a Space Packet on its input port and extracts the Space Packet. Please refer to the CCSDS Space Packet Protocol specification (CCSDS 133.0-B-2) for details on the packet format.

The Svc::CCSDS::SpacePacketDeframer is typically used downstream of a component that removes transfer frame headers, such as the Svc::CCSDS::TcDeframer. It validates the Space Packet header and extracts the payload.

Port Descriptions

Kind Name Port Type Description
Input (guarded) dataIn Svc.ComDataWithContext Port to receive data containing a Space Packet
Output dataOut Svc.ComDataWithContext Port to output the extracted Space Packet payload
Output dataReturnOut Svc.ComDataWithContext Port for returning ownership of received buffers
Input (sync) dataReturnIn Svc.ComDataWithContext Port receiving back ownership of sent buffers
Output validateApidSeqCount CCSDS.ApidSequenceCount Port to request validation of a sequence count for a given APID

Events

Name Severity Description
InvalidLength warning high Deframing received an invalid packet length

Requirements

Add requirements in the chart below | Name | Description | Validation | |---|---|---| | SPD-001 | The SpacePacketDeframer shall deframe CCSDS Space Packets according to the CCSDS 133.0-B-2 standard. | Unit Test, Inspection | | SPD-002 | The SpacePacketDeframer shall extract the user data field from valid Space Packets. | Unit Test | | SPD-003 | The SpacePacketDeframer shall validate the packet length of a Space Packet Primary Header. | Unit Test | | SPD-009 | The SpacePacketDeframer shall emit an InvalidLength event if the packet length token in the header is cannot fit in the received data, and drop the received packet. | Unit Test | | SPD-004 | The SpacePacketDeframer shall receive incoming data containing Space Packets via the dataIn port. | Unit Test | | SPD-005 | The SpacePacketDeframer shall output the extracted Space Packet user data via the dataOut port. | Unit Test | | SPD-006 | The SpacePacketDeframer shall manage buffer ownership using the dataReturnIn and dataReturnOut ports. | Unit Test, Inspection | | SPD-007 | The SpacePacketDeframer shall delegate sequence count validation to another component through the validateApidSeqCount port. | Unit Test | | SPD-008 | The SpacePacketDeframer shall perform sequence count validation for APIDs registered via validateApidSeqCount. | Unit Test |