diff options
author | erititan | 2017-10-09 09:49:26 +0000 |
---|---|---|
committer | erititan | 2017-10-09 09:49:26 +0000 |
commit | af9aca4fc28b8502892d7efccf1fa2356f06ead7 (patch) | |
tree | 3546b3eb78657ec710848a73334c2b18591b5769 | |
parent | 25476a0be1947805cca0acf2700e1d2e163bd27c (diff) | |
download | titan.ProtocolModules.SNDCP_v7.0.0-af9aca4fc28b8502892d7efccf1fa2356f06ead7.tar.gz titan.ProtocolModules.SNDCP_v7.0.0-af9aca4fc28b8502892d7efccf1fa2356f06ead7.tar.xz titan.ProtocolModules.SNDCP_v7.0.0-af9aca4fc28b8502892d7efccf1fa2356f06ead7.zip |
Initial commitR.2.A
-rw-r--r-- | doc/SNDCP_v7.0.0_CNL113576_FS.pdf | bin | 0 -> 178659 bytes | |||
-rw-r--r-- | doc/SNDCP_v7.0.0_CNL113576_UG.pdf | bin | 0 -> 193302 bytes | |||
-rw-r--r-- | doc/SNDCP_v7.0_PRI.pdf | bin | 0 -> 26196 bytes | |||
-rw-r--r-- | src/SNDCP_Types.ttcn | 94 |
4 files changed, 94 insertions, 0 deletions
diff --git a/doc/SNDCP_v7.0.0_CNL113576_FS.pdf b/doc/SNDCP_v7.0.0_CNL113576_FS.pdf Binary files differnew file mode 100644 index 0000000..7e7666d --- /dev/null +++ b/doc/SNDCP_v7.0.0_CNL113576_FS.pdf diff --git a/doc/SNDCP_v7.0.0_CNL113576_UG.pdf b/doc/SNDCP_v7.0.0_CNL113576_UG.pdf Binary files differnew file mode 100644 index 0000000..8444e9a --- /dev/null +++ b/doc/SNDCP_v7.0.0_CNL113576_UG.pdf diff --git a/doc/SNDCP_v7.0_PRI.pdf b/doc/SNDCP_v7.0_PRI.pdf Binary files differnew file mode 100644 index 0000000..27992d3 --- /dev/null +++ b/doc/SNDCP_v7.0_PRI.pdf diff --git a/src/SNDCP_Types.ttcn b/src/SNDCP_Types.ttcn new file mode 100644 index 0000000..9dfd84f --- /dev/null +++ b/src/SNDCP_Types.ttcn @@ -0,0 +1,94 @@ +/////////////////////////////////////////////////////////////////////////////// +// +// Copyright (c) 2000-2017 Ericsson Telecom AB +// +// All rights reserved. This program and the accompanying materials +// are made available under the terms of the Eclipse Public License v1.0 +// which accompanies this distribution, and is available at +// http://www.eclipse.org/legal/epl-v10.html +/////////////////////////////////////////////////////////////////////////////// +// +// File: SNDCP_Types.ttcn +// Rev: R2A +// Prodnr: CNL 113 576 +// Updated: 2008-01-21 +// Contact: http://ttcn.ericsson.se +// Reference: 3GPP TS 44.065 7.0.0 + +module SNDCP_Types +{ + +// This module contains the Subnetwork Dependent Convergence Protocol +// 44.065 v7.0.0 with attributes for RAW encoding/decoding. + +// According to 3GPP 04.64 - the maximum(!) length of the PDU_SN_UNITDATA and PDU_SN_DATA +// is minimum 140 and maximum 520 octets. +// The actual length of the PDU_SN_UNITDATA and PDU_SN_DATA is given in LLC ASPs or set to a parameter value. +// The possible maximum length of dataSegmentSnUnitdataPdu or dataSegmentSnDataPdu is therefore variable and +// will depend on this setting. +// The RAW decoder should have no problem decoding these fields when they are simply defined as octetstrings +// and stand at the end of the SNDPC PDUs. +// + +// + +import from General_Types all; + +external function enc_PDU_SN(in PDU_SN pdu ) return octetstring +with { extension "prototype(convert)" + extension "encode(RAW)" + } + +external function dec_PDU_SN(in octetstring stream) return PDU_SN +with { extension "prototype(convert)" + extension "decode(RAW)" + } + +type union PDU_SN +{ +PDU_SN_UNITDATA pDU_SN_UNITDATA, +PDU_SN_DATA pDU_SN_DATA +} with { variant "TAG ( + pDU_SN_UNITDATA, snPduType ='1'B; + pDU_SN_DATA, snPduType ='0'B + )" +}; + + +type record PDU_SN_UNITDATA +{ + BIT4 nsapi, + BIT1 moreBit, + BIT1 snPduType, + BIT1 firstSegmentIndicator, + BIT1 spareBit, // set to '0'B + BIT4 pcomp optional, + BIT4 dcomp optional, + BIT4 npduNumber, + BIT4 segmentNumber, + OCT1 npduNumberContinued, + octetstring dataSegmentSnUnitdataPdu +} with { variant (pcomp) "PRESENCE(firstSegmentIndicator = '1'B)"; + variant (dcomp) "PRESENCE(firstSegmentIndicator = '1'B)" + }; + + +type record PDU_SN_DATA +{ + BIT4 nsapi, + BIT1 moreBit, + BIT1 snPduType, + BIT1 firstSegmentIndicator, + BIT1 spareBit, // set to '0'B + BIT4 pcomp optional, + BIT4 dcomp optional, + OCT1 npduNumberAck optional, + octetstring dataSegmentSnDataPdu + +} with { variant (pcomp) "PRESENCE(firstSegmentIndicator = '1'B)"; + variant (dcomp) "PRESENCE(firstSegmentIndicator = '1'B)"; + variant (npduNumberAck) "PRESENCE(firstSegmentIndicator = '1'B)" + }; + + +}with{ encode "RAW"} // end of module |