aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2011-12-03 23:00:29 +0100
committerHarald Welte <laforge@gnumonks.org>2011-12-03 23:00:29 +0100
commitbba88236a1c7bc1c5f95f03c9d9ff1786eccd562 (patch)
treeee2670b9de57a77b1cbf865b38dd1d0fae1161b6
parent185ff212a9dcedbac0482476aab9076e7c87a3b5 (diff)
add CSN.1 specs with slight enhancements for use with Encodix
-rw-r--r--proto_desc/gprs/encodix/3gpp.src13
-rw-r--r--proto_desc/gprs/encodix/gsm_44_060_10_6_0_ies.src795
-rw-r--r--proto_desc/gprs/encodix/gsm_44_060_10_6_0_msgs.src3991
-rw-r--r--proto_desc/gprs/encodix/ies_fixes.diff124
-rw-r--r--proto_desc/gprs/encodix/msgs_fixes.diff487
5 files changed, 5410 insertions, 0 deletions
diff --git a/proto_desc/gprs/encodix/3gpp.src b/proto_desc/gprs/encodix/3gpp.src
new file mode 100644
index 0000000..03ed3ca
--- /dev/null
+++ b/proto_desc/gprs/encodix/3gpp.src
@@ -0,0 +1,13 @@
+# Basic ETSI/3GPP type definitions
+csn.1 {
+ <bit> ::= 0|1;
+ <bit string> ::= 0|1;
+ <spare L> ::= L;
+ <spare bits> ::= L|H;
+ <spare bit> ::= <bit>;
+ <octet> ::= bit*(8);
+ <spare padding> ::= L* ENCODE_EXPR: %{(8 - (CURPOS & 7)) & 7}% DECODE_INFINITE;
+ <no string> ::= null;
+ <padding bits> ::= <bit>**;
+ slave <A5 bits> ::= <A5/7: bit> <A5/6: bit> <A5/5: bit> <A5/4: bit>;
+}
diff --git a/proto_desc/gprs/encodix/gsm_44_060_10_6_0_ies.src b/proto_desc/gprs/encodix/gsm_44_060_10_6_0_ies.src
new file mode 100644
index 0000000..a9a2c8a
--- /dev/null
+++ b/proto_desc/gprs/encodix/gsm_44_060_10_6_0_ies.src
@@ -0,0 +1,795 @@
+`INCLUDE 3gpp.src`
+
+csn.1 slave {
+-- 3GPP TS 44.060 version 10.6.0 Release 10
+
+-- 12.3
+< Ack/Nack Description IE > ::=
+ < FINAL_ACK_INDICATION : bit (1) >
+ < STARTING_SEQUENCE_NUMBER : bit (7) >
+ < RECEIVED_BLOCK_BITMAP : bit (64) > ;
+
+-- 12.3.1
+< EGPRS Ack/Nack Description IE > ::=
+ 0 < EGPRS Ack/Nack Description struct > -- This IE fills rest of message
+ | 1 < Length L : bit (8) > -- Value part of this IE is of length L
+ { < bit (val(Length L)) > & < EGPRS Ack/Nack Description struct > } ;
+
+< EGPRS Ack/Nack Description struct > ::=
+ < FINAL_ACK_INDICATION : bit (1) >
+ < BEGINNING_OF_WINDOW : bit (1) >
+ < END_OF_WINDOW : bit (1) >
+ < STARTING_SEQUENCE_NUMBER : bit (11) >
+ { 0 | 1 < COMPRESSED_BITMAP_LENGTH: bit (7) >
+ < COMPRESSED_BITMAP_STARTING_COLOR_CODE: bit (1) >
+ < COMPRESSED_RECEIVED_BLOCK_BITMAP :
+ bit (val(COMPRESSED_BITMAP_LENGTH)) > }
+ < UNCOMPRESSED_RECEIVED_BLOCK_BITMAP: bit** > ;
+
+-- 12.3.2
+< FLO Ack/Nack Description IE > ::=
+ < FLO Ack/Nack Description struct > ;
+< FLO Ack/Nack Description struct > ::=
+ < BEGINNING_OF_WINDOW : bit (1) >
+ < END_OF_WINDOW : bit (1) >
+ < STARTING_SEQUENCE_NUMBER : bit (10) >
+ { 0 < COMPRESSED_BITMAP_LENGTH: bit (7) >
+ < COMPRESSED_BITMAP_STARTING_COLOR_CODE: bit (1) >
+ < COMPRESSED_RECEIVED_BLOCK_BITMAP: bit (val(COMPRESSED_BITMAP_LENGTH)) >
+ | 1 < UNCOMPRESSED_RECEIVED_BLOCK_BITMAP: bit** > } ;
+
+-- 12.5.1
+< EGPRS Channel Quality Report IE> ::=
+ < EGPRS BEP Link Quality Measurements : < EGPRS BEP Link Quality Measurements IE>>
+ < C_VALUE : bit (6) >
+ < EGPRS Timeslot Link Quality Measurements : <EGPRS Timeslot Link Quality Measurements IE >> ;
+
+-- 12.5.2
+< EGPRS Window Size IE > ::=
+ < bit (5) > ;
+
+-- 12.5.3
+<EGPRS BEP Link Quality Measurements IE> ::=
+ { 0 | 1 < GMSK_MEAN_BEP : bit (5) >
+ < GMSK_CV_BEP : bit (3) >}
+ { 0 | 1 < 8PSK_MEAN_BEP : bit (5) >
+ < 8PSK_CV_BEP : bit (3) > };
+
+-- 12.5.4
+<EGPRS Timeslot Link Quality Measurements IE> ::=
+{ 0 | 1< BEP_MEASUREMENTS : BEP Measurement Report Struct >}
+{ 0 | 1 < INTERFERENCE_MEASUREMENTS : Interference Measurement Report Struct >};
+
+< BEP Measurement Report Struct > ::=
+ { 0 | 1 { 0 <GMSK_MEAN_BEP _TN0 : bit (4) >
+ | 1 < 8PSK_MEAN_BEP _TN0 : bit (4) >}}
+ { 0 | 1 { 0 <GMSK_MEAN_BEP _TN1 : bit (4) >
+ | 1 < 8PSK_MEAN_BEP _TN1 : bit (4) >}}
+ { 0 | 1 { 0 <GMSK_MEAN_BEP _TN2 : bit (4) >
+ | 1 < 8PSK_MEAN_BEP _TN2 : bit (4) >}}
+ { 0 | 1 { 0 <GMSK_MEAN_BEP _TN3 : bit (4) >
+ | 1 < 8PSK_MEAN_BEP _TN3 : bit (4) >}}
+ { 0 | 1 { 0 <GMSK_MEAN_BEP _TN4 : bit (4) >
+ | 1 < 8PSK_MEAN_BEP _TN4 : bit (4) >}}
+ { 0 | 1 { 0 <GMSK_MEAN_BEP _TN5 : bit (4) >
+ | 1 < 8PSK_MEAN_BEP _TN5 : bit (4) >}}
+ { 0 | 1 { 0 <GMSK_MEAN_BEP _TN6 : bit (4) >
+ | 1 < 8PSK_MEAN_BEP _TN6 : bit (4) >}}
+ { 0 | 1 { 0 <GMSK_MEAN_BEP _TN7 : bit (4) >
+ | 1 < 8PSK_MEAN_BEP _TN7 : bit (4) >} };
+
+< Interference Measurement Report Struct > ::=
+{ 0 | 1 < I_LEVEL_TN0 : bit (4) > }
+{ 0 | 1 < I_LEVEL_TN1 : bit (4) > }
+{ 0 | 1 < I_LEVEL_TN2 : bit (4) > }
+{ 0 | 1 < I_LEVEL_TN3 : bit (4) > }
+{ 0 | 1 < I_LEVEL_TN4 : bit (4) > }
+{ 0 | 1 < I_LEVEL_TN5 : bit (4) > }
+{ 0 | 1 < I_LEVEL_TN6 : bit (4) > }
+{ 0 | 1 < I_LEVEL_TN7 : bit (4) > };
+
+-- 12.5.5
+< PDCH Pairs Description IE > ::=
+ {0 -- Single Carrier Assignment
+ { 00 -- Default PDCH pair configuration
+ | 01 -- Unchanged
+ | 10 -- Explicit PDCH pair configuration
+ < DOWNLINK_PDCH_PAIRS_C1 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C1 : bit (8) >
+ ! < PDCH pairs configuration error : { 1 1 } bit (*) = < no string > >
+ }
+ |1 -- Dual Carrier Assignment
+ { 00 -- Default PDCH pair configuration
+ | 01 -- Unchanged
+ | 10 -- Explicit PDCH pair configuration
+ < DOWNLINK_PDCH_PAIRS_C1 : bit (8) >
+ < DOWNLINK_PDCH_PAIRS_C2 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C1 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C2 : bit (8) >
+ ! < PDCH pairs configuration error : { 1 1 } bit (*) = < no string > >
+ }
+ };
+
+-- 12.5a.1
+< EGPRS Channel Quality Report Type 2 IE> ::=
+ < EGPRS BEP Link Quality Measurements Type 2 : < EGPRS BEP Link Quality Measurements Type 2 IE>>
+ < C_VALUE : bit (6) >
+ < EGPRS Timeslot Link Quality Measurements Type 2 : <EGPRS Timeslot Link Quality Measurements Type 2 IE
+>> ;
+
+-- 12.5a.2
+<EGPRS BEP Link Quality Measurements Type 2 IE> ::=
+ { 0 | 1 < GMSK_MEAN_BEP : bit (5) >
+ < GMSK_CV_BEP : bit (3) >}
+ { 0 | 1 < 8PSK_MEAN_BEP : bit (5) >
+ < 8PSK_CV_BEP : bit (3) > }
+ { 0 | 1 < QPSK_MEAN_BEP : bit (5) >
+ < QPSK_CV_BEP : bit (3) > }
+ { 0 | 1 < 16QAM_ NSR_MEAN_BEP : bit (5) >
+ < 16QAM_ NSR_CV_BEP : bit (3) > }
+ { 0 | 1 < 32QAM_ NSR_MEAN_BEP : bit (5) >
+ < 32QAM_ NSR_CV_BEP : bit (3) > }
+ { 0 | 1 < 16QAM_HSR_MEAN_BEP : bit (5) >
+ < 16QAM_HSR_CV_BEP : bit (3) > }
+ { 0 | 1 < 32QAM_HSR_MEAN_BEP : bit (5) >
+ < 32QAM_HSR_CV_BEP : bit (3) > };
+
+-- 12.5a.3
+<EGPRS Timeslot Link Quality Measurements Type 2 IE> ::=
+{ 0 | 1 < BEP_MEASUREMENTS : BEP Measurement Report Struct >}
+{ 0 | 1 < INTERFERENCE_MEASUREMENTS : Interference Measurement Report Struct >};
+
+< BEP Measurement Report Struct > ::=
+ {0
+ | 1 <REPORTED_MODULATION : bit (2) >
+ <MEAN_BEP_TN0 : bit (4) >
+ }
+ {0
+ | 1 < REPORTED_MODULATION : bit (2) >
+ <MEAN_BEP_TN1 : bit (4) >
+ }
+ {0
+ | 1 < REPORTED_MODULATION : bit (2) >
+ <MEAN_BEP_TN2 : bit (4) >
+ }
+ {0
+ | 1 < REPORTED_MODULATION : bit (2) >
+ <MEAN_BEP_TN3 : bit (4) >
+ }
+ {0
+ | 1 < REPORTED_MODULATION : bit (2) >
+ <MEAN_BEP_TN4 : bit (4) >
+ }
+ {0
+ | 1 < REPORTED_MODULATION : bit (2) >
+ <MEAN_BEP_TN5 : bit (4) >
+ }
+ {0
+ | 1 < REPORTED_MODULATION : bit (2) >
+ <MEAN_BEP_TN6 : bit (4) >
+ }
+ {0
+ | 1 < REPORTED_MODULATION : bit (2) >
+ <MEAN_BEP_TN7 : bit (4) >
+ };
+
+< Interference Measurement Report Struct > ::=
+{ 0 | 1 < I_LEVEL_TN0 : bit (4) > }
+{ 0 | 1 < I_LEVEL_TN1 : bit (4) > }
+{ 0 | 1 < I_LEVEL_TN2 : bit (4) > }
+{ 0 | 1 < I_LEVEL_TN3 : bit (4) > }
+{ 0 | 1 < I_LEVEL_TN4 : bit (4) > }
+{ 0 | 1 < I_LEVEL_TN5 : bit (4) > }
+{ 0 | 1 < I_LEVEL_TN6 : bit (4) > }
+{ 0 | 1 < I_LEVEL_TN7 : bit (4) > };
+
+-- 12.7
+< Channel Request Description IE > ::=
+ < PEAK_THROUGHPUT_CLASS : bit (4) >
+ < RADIO_PRIORITY : bit (2) >
+ < RLC_MODE : bit (1) >
+ < LLC_ PDU_TYPE : bit (1) >
+ < RLC_OCTET_COUNT : bit (16) > ;
+
+-- 12.7a
+< Iu mode Channel Request Description IE > ::=
+ < RB Id : bit (5) >
+ < RADIO_PRIORITY : bit (2) >
+ { 0 | 1 < RLC_BLOCK_COUNT : bit (8) > }
+ { 0 | 1 < Iu mode Channel Request Description IE > } ; -- IE to be repeated only when
+ -- in a Multiple TBF request message
+
+-- 12.7b
+< Extended Channel Request Description IE > ::=
+ < PFI : bit (7) >
+ < RADIO_PRIORITY : bit (2) >
+ < RLC_MODE : bit (1) >
+ { 0 | 1 < LLC_ PDU_TYPE : bit (1) > }
+ { 0 | 1 < Extended Channel Request Description IE > } ; -- IE to be repeated only when needed and
+ -- when included in a Multiple TBF request message
+
+-- 12.8
+< Frequency Parameters IE > ::=
+ < TSC : bit (3) >
+ { 00 < ARFCN : bit (10) >
+ | 01 < Indirect encoding : < Indirect encoding struct > >
+ | 10 < Direct encoding 1 : < Direct encoding 1 struct > >
+ | 11 < Direct encoding 2 : < Direct encoding 2 struct > > } ;
+
+< Indirect encoding struct > ::=
+ < MAIO : bit (6) >
+ < MA_NUMBER : bit (4) >
+ { 0 | 1 < CHANGE_MARK_1 : bit (2) >
+ { 0 | 1 < CHANGE_MARK_2 : bit (2) > } } ;
+
+< Direct encoding 1 struct > ::=
+ < MAIO : bit (6) >
+ < GPRS Mobile Allocation : < GPRS Mobile Allocation IE > > ;
+
+< Direct encoding 2 struct > ::=
+ < MAIO : bit (6) >
+ < HSN : bit (6) >
+ < Length of MA Frequency List contents : bit (4) >
+ < MA Frequency List contents : octet (val(Length of MA Frequency List contents) + 3) > ;
+
+-- 12.8.2
+< Dual Carrier Frequency Parameters IE > ::=
+ < TSC : bit (3) >
+ { 00
+ { 0 | 1 < ARFCN1 : bit (10) >
+ < ARFCN2 : bit (10) > }
+ | 01 < Indirect encoding : < Dual Carrier Indirect encoding struct > >
+ | 10 < Direct encoding 1 : < Dual Carrier Direct encoding 1 struct > >
+ | 11 < Direct encoding 2 : < Dual Carrier Direct encoding 2 struct > > } ;
+
+< Dual Carrier Direct encoding 1 struct > ::=
+ { 0 | 1 < MAIO1 : bit (6) > }
+ { 0 | 1 < MAIO2 : bit (6) > }
+ < GPRS Mobile Allocation : < GPRS Mobile Allocation IE > > ;
+
+< Dual Carrier Indirect encoding struct > ::=
+ { 0 | 1 < MAIO1 : bit (6) > }
+ { 0 | 1 < MAIO2 : bit (6) > }
+ < MA_NUMBER : bit (4) >
+ { 0 | 1 < CHANGE_MARK_1 : bit (2) >
+ { 0 | 1 < CHANGE_MARK_2 : bit (2) > } } ;
+
+< Dual Carrier Direct encoding 2 struct > ::=
+ { 0 | 1 < MAIO1 : bit (6) > }
+ { 0 | 1 < MAIO2 : bit (6) > }
+ < HSN : bit (6) >
+ < Length of MA Frequency List contents : bit (4) >
+ < MA Frequency List contents : octet (val(Length of MA Frequency List contents) + 3) > ;
+
+-- 12.8.3
+< Pulse Format IE > ::=
+ { 0 < Pulse Format Coding 1 : bit (3) >
+ | 1 < Pulse Format Coding 2 : < Pulse Format Coding 2 struct > > };
+
+< Pulse Format Coding 2 struct > ::=
+ { 0 < Pulse Format Bitmap Length: bit (7) >
+ < Pulse Format Bitmap:
+ bit (val (Pulse Format Bitmap Length) + 1)
+ & { { 1 | 01 | 00 } ** ! { bit** = <no string> } } >
+ | 1 < Non Hopping Carrier Pulse Format : 1 | 01 | 00 >
+ };
+
+-- 12.9
+< Global Power Control Parameters IE > ::=
+ < ALPHA : bit (4) >
+ < T_AVG_W : bit (5) >
+ < T_AVG_T : bit (5) >
+ < Pb : bit (4) >
+ < PC_MEAS_CHAN : bit (1) >
+ 0 -- The value '1' was allocated in an earlier version of the protocol and shall not be used.
+ < N_AVG_I : bit (4) > ;
+
+-- 12.9a
+< GPRS Power Control Parameters IE > ::=
+ < ALPHA : bit (4) >
+ < T_AVG_W : bit (5) >
+ < T_AVG_T : bit (5) >
+ < PC_MEAS_CHAN : bit >
+ < N_AVG_I : bit (4) > ;
+
+-- 12.10
+< Global TFI IE > ::=
+ { 0 < UPLINK_TFI : bit (5) >
+ | 1 < DOWNLINK_TFI : bit (5) > } ;
+
+-- 12.10a
+< GPRS Mobile Allocation IE > ::=
+ < HSN : bit (6) >
+ { 0 | 1 < RFL number list : < RFL number list struct > > }
+ { 0 < MA_LENGTH : bit (6) >
+ < MA_BITMAP : bit (val(MA_LENGTH) + 1) >
+ | 1 { 0 | 1 < ARFCN index list : < ARFCN index list struct > > } } ;
+
+< RFL number list struct > ::=
+ < RFL_NUMBER : bit (4) >
+ { 0 | 1 < RFL number list struct > } ;
+
+< ARFCN index list struct > ::=
+ < ARFCN_INDEX : bit (6) >
+ { 0 | 1 < ARFCN index list struct > } ;
+
+-- 12.12
+< Packet Timing Advance IE > ::=
+ { 0 | 1 < TIMING_ADVANCE_VALUE : bit (6) > }
+ { 0 | 1 < TIMING_ADVANCE_INDEX : bit (4) >
+ < TIMING_ADVANCE_TIMESLOT_NUMBER : bit (3) > } ;
+
+-- 12.12a
+< Global Packet Timing Advance IE > ::=
+ { 0 | 1 < TIMING_ADVANCE_VALUE : bit (6) > }
+ { 0 | 1 < UPLINK_TIMING_ADVANCE_INDEX : bit (4) >
+ < UPLINK_TIMING_ADVANCE_TIMESLOT_NUMBER : bit (3) > }
+ { 0 | 1 < DOWNLINK_TIMING_ADVANCE_INDEX : bit (4) >
+ < DOWNLINK_TIMING_ADVANCE_TIMESLOT_NUMBER : bit (3) > } ;
+
+-- 12.13
+< Power Control Parameters IE > ::=
+ < ALPHA : bit (4) >
+ { 0 | 1 < GAMMA_TN0 : bit (5) > }
+ { 0 | 1 < GAMMA_TN1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN3 : bit (5) > }
+ { 0 | 1 < GAMMA_TN4 : bit (5) > }
+ { 0 | 1 < GAMMA_TN5 : bit (5) > }
+ { 0 | 1 < GAMMA_TN6 : bit (5) > }
+ { 0 | 1 < GAMMA_TN7 : bit (5) > } ;
+
+-- 12.14
+< PRACH Control Parameters IE > ::=
+ < ACC_CONTR_CLASS : bit (16) >
+ < MAX_RETRANS : bit (2) > * 4
+ < S : bit (4) >
+ < TX_INT : bit (4) >
+ { 0 | 1 < PERSISTENCE_LEVEL : bit (4) > * 4 } ;
+
+-- 12.16a
+< G-RNTI IE > ::=
+ < S-RNTI : bit (20) >
+ < Serving BSC Identity : bit (12) > ;
+
+-- 12.21
+< Starting Frame Number Description IE > ::=
+ { 0 < Absolute Frame Number Encoding : bit(16) >
+ | 1 < Relative Frame Number Encoding : bit(13) > } ;
+
+-- 12.23
+< Cell Identification IE > ::=
+ < Location Area Identification IE : octet (5) > -- 3GPP TS 44.018
+ < RAC : bit (8) >
+ < Cell Identity IE : octet (2) > ; -- 3GPP TS 44.018
+
+-- 12.24
+< GPRS Cell Options IE > ::=
+ < NMO : bit (2) >
+ < T3168 : bit (3) >
+ < T3192 : bit (3) >
+ < DRX_TIMER_MAX : bit (3) >
+ < ACCESS_BURST_TYPE : bit >
+ < CONTROL_ACK_TYPE : bit >
+ < BS_CV_MAX : bit (4) >
+ { 0 | 1 < PAN_DEC : bit (3) >
+ < PAN_INC : bit (3) >
+ < PAN_MAX : bit (3) > }
+ -- Optional extension information:
+ { 0 | 1 < Extension Length : bit (6) >
+ { < bit (val(Extension Length) + 1) >
+ & <Extension Information > } ! { bit ** = <no string> } } ;
+
+< Extension Information > ::=
+ { { -- R99 extension:
+ { 0 | 1 -- EGPRS supported by the cell if the choice bit is set to '1'
+ < EGPRS_PACKET_CHANNEL_REQUEST : bit >
+ < BEP_PERIOD : bit (4) > }
+ < PFC_FEATURE_MODE: bit >
+ < DTM_SUPPORT: bit >
+ < BSS_PAGING_COORDINATION: bit > }
+ { -- REL-4 extension:
+ < CCN_ACTIVE : bit >
+ < NW_EXT_UTBF : bit > }
+ { -- REL 6 extension:
+ < MULTIPLE_TBF_CAPABILITY : bit >
+ < EXT_UTBF_NODATA : bit >
+ < DTM_ENHANCEMENTS_CAPABILITY : bit >
+ {0 -- MBMS procedures not supported by the cell if the choice bit is set to '0'
+ |1 -- MBMS procedures supported by the cell if the choice bit is set to '1'
+ < DEDICATED_MODE_MBMS_NOTIFICATION_SUPPORT: bit >
+ < MNCI_SUPPORT : bit > } }
+ { -- Rel-7 extension:
+ < REDUCED_LATENCY_ACCESS : bit > }
+ < spare bit > ** } // ; -- Extension information may be truncated between released versions of the protocol.
+ -- The receiver shall assume the value zero for any truncated bit.
+
+-- 12.25
+< PCCCH Organization Parameters IE > ::=
+ < BS_PCC_REL : bit >
+ < BS_PBCCH_BLKS : bit (2) >
+ < BS_PAG_BLKS_RES : bit (4) >
+ < BS_PRACH_BLKS : bit (4) > ;
+
+-- 12.26
+< Extension Bits IE > ::=
+ < extension length : bit (6) >
+ < spare bit (val(extension length)+1) > ;
+
+-- 12.27
+< Non GPRS Cell Options IE > ::=
+ < ATT : bit > -- Attach/Detach allowed
+ { 0 | 1 < T3212 : bit (8) > } -- Time-out value for periodic update
+ < NECI : bit > -- Half rate support
+ < PWRC : bit > -- Power Control indicator
+ < DTX : bit (2) > -- DTX indicator
+ < RADIO-LINK-TIMEOUT : bit (4) > -- Supervisory timer for RR connection
+ < BS-AG-BLKS-RES : bit (3) > -- number of blocks reserved for access grant
+ < CCCH-CONF : bit (3) > -- physical channel configuration for CCCH
+ < BS-PA-MFRMS : bit (3) > -- number of 51 multiframes between
+ -- transmission of paging messages
+ < MAX-RETRANS : bit (2) > -- maximum number of retransmissions
+ < TX-INTEGER : bit (4) > -- number of slots to spread transmission
+ < EC : bit > -- emergency call allowed
+ < MS-TXPWR-MAX-CCCH : bit (5) > -- maximum Tx power level
+ -- Optional extension information:
+ { 0 | 1 < Extension Length : bit (6) >
+ { < bit (val(Extension Length) + 1) >
+ & <Extension Information > } ! { bit ** = <no string> } } ;
+< Extension Information > ::=
+ < ECSC: bit > -- Early Classmark Sending Control
+ < 3G ECSR : bit > -- 3G Early Classmark Sending Restriction
+ < spare bit > ** ;
+
+-- 12.28
+< LSA Parameters IE > ::=
+ < NR_OF_FREQ_OR_CELLS : bit (5) >
+ { < LSA ID information : < LSA ID information struct >> * (val(NR_OF_FREQ_OR_CELLS)) };
+
+< LSA ID information struct > ::=
+ { 1 { 0 < LSA_ID : bit (24) >
+ |1 < ShortLSA_ID : bit (10) >} } ** 0 ;
+
+-- 12.29
+< COMPACT reduced MA IE > ::=
+ <Length of Reduced MA bitmap : bit (7) >
+ <Reduced MA bitmap : bit( val( Length of Reduced MA bitmap ) ) >
+ { 0 | 1 <MAIO_2 : bit(6) >};
+
+-- 12.30
+< MS Radio Access Capability 2 IE > ::=
+ < MS RA capability : < MS RA capability value part struct > > ;
+
+ -- From 24.008
+ slave <MS RA capability value part struct >::= --recursive structure allows any number of Access technologies
+ < Access Technology Type: bit (4) >
+ < Access capabilities : <Access capabilities struct> >
+ { 0 | 1 <MS RA capability value part struct> } ;
+
+ slave < Access capabilities struct > ::=
+ < Length : bit (7) > -- length in bits of Content and spare bits
+ ENCODE: %{PUSH_TAG (2, CURPOS);}%
+ DECODE: %{PUSH_TAG (1, (EDBitsToInt (BUFFER, CURPOS-7, 7)+CURPOS));}%
+ <Access capabilities : <Content>>
+ <spare bits>*ENCODE_EXPR: %{0}% DECODE_EXPR: %{(TAG(1)>(int)CURPOS? TAG(1)-CURPOS:(CURPOS=TAG(1),0))}% -- expands to the indicated length
+ ENCODE: %{EDIntToBits (BUFFER, TAG(2)-7, CURPOS-TAG(2), 7);}%
+ DECODE: %{}%;
+ -- may be used for future enhancements
+
+ slave < Content > ::=
+ < RF Power Capability : bit (3) >
+ { 0 | 1 <A5 bits : <A5 bits> > } -- zero means that the same values apply for parameters as in the immediately preceeding Access capabilities field within this IE
+ -- The presence of the A5 bits is mandatory in the 1st Access capabilities struct within this IE.
+ < ES IND : bit >
+ < PS : bit >
+ < VGCS : bit >
+ < VBS : bit >
+ { 0 | 1 < Multislot capability : Multislot capability struct > } -- zero means that the same values for multislot parameters as given in an earlier Access capabilities field within this IE apply also here
+ -- Additions in release 99
+ { 0 | 1 < m8PSK Power Capability : bit(2) >} -- ’1’ also means 8PSK modulation capability in uplink.
+ < COMPACT Interference Measurement Capability : bit >
+ < Revision Level Indicator : bit >
+ < UMTS FDD Radio Access Technology Capability : bit > -- 3G RAT
+ < UMTS 3.84 Mcps TDD Radio Access Technology Capability : bit > -- 3G RAT
+ < CDMA 2000 Radio Access Technology Capability : bit > -- 3G RAT
+ < UMTS 1.28 Mcps TDD Radio Access Technology Capability: bit > -- 3G RAT
+ < MS_EXT_UTBF : bit >;
+ -- error: struct too short, assume features do not exist
+ -- error: struct too long, ignore data and jump to next Access technology
+
+ slave < Multislot capability struct > ::=
+ { 0 | 1 < HSCSD multislot class : bit (5) > }
+ { 0 | 1 < GPRS multislot class : bit (5) > < GPRS Extended Dynamic Allocation Capability : bit > }
+ { 0 | 1 < SMS_VALUE : bit (4) > < SM_VALUE : bit (4) > }
+ -- Additions in release 99
+ { 0 | 1 < ECSD multislot class : bit (5) > }
+ { 0 | 1 < EGPRS multislot class : bit (5) > < EGPRS Extended Dynamic Allocation Capability : bit > }
+ {0 | 1 < DTM GPRS Multi Slot Sub-Class: bit(2)>
+ <MAC Mode Support : bit>
+ {0 | 1 <DTM EGPRS Multi Slot Sub-Class : bit(2)> }
+ };
+ -- error: struct too short, assume features do not exist
+
+-- 12.31
+< UTRAN FDD Target cell IE > ::=
+ < FDD-ARFCN : bit (14) >
+ < Diversity : bit >
+ { 0 | 1 < Bandwidth_FDD : bit (3) > }
+ < SCRAMBLING_CODE : bit (9) > ;
+
+-- 12.32
+< UTRAN TDD Target cell IE > ::=
+ < TDD-ARFCN : bit (14) >
+ < Diversity TDD : bit >
+ { 0 | 1 < Bandwidth_TDD : bit (3) > }
+ < Cell Parameter : bit (7) >
+ < Sync Case TSTD : bit > ;
+
+-- 12.33
+< TMGI IE > ::=
+ {0 -- without MCC and MNC parameters
+ < MBMS SERVICE ID : bit (24) >
+ |1 -- with MCC and MNC parameters
+ < MBMS SERVICE ID : bit (24) >
+ < MCC : bit (12) >
+ < MNC : bit (12) > } ;
+
+-- 12.36
+< MBMS Channel Parameters IE >::=
+ {0 -- counting is off
+ { 0 | 1 < MBMS p-t-m channel description : < MBMS p-t-m channel description IE > >
+ < MBMS Session Parameters List : < MBMS Session Parameters List IE >> }
+ |1 -- counting is on
+ { 0 | 1 < MPRACH description : < MPRACH description IE > > } };
+
+-- 12.37
+< MBMS p-t-m channel description IE > ::=
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ < DL_TIMESLOT_ALLOCATION : bit (8) >;
+
+-- 12.38
+< MPRACH description IE > ::=
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ < MPRACH_TIMESLOT NUMBER : bit (3) >
+ < USF : bit (3) >
+ {0|1 < MPRACH Control Parameters : < MPRACH Control Parameters IE > > } ;
+
+-- 12.39
+< MBMS Session List IE > ::=
+ { 1 < TMGI : < TMGI IE >>
+ { 0 | 1 < MBMS Session Identity : bit (8) > } } ** 0;
+
+-- 12.40
+< MBMS Session Parameters List IE > ::=
+ { 1 < Length of MBMS Bearer Identity : bit (3) > -- Configurations "000", "110" and "111" are reserved
+ < MBMS Bearer Identity : bit (val (Length of MBMS Bearer Identity)) >
+ < Estimated Session Duration : bit (8) >
+ { 0 | 1 < MBMS Radio Bearer Starting Time : bit (16) > }
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE >> }
+ { 0 | 1 < NPM Transfer Time : bit (5) > } } ** 0;
+
+-- 12.41
+< MPRACH Control Parameters IE > ::=
+ { 0 | 1< ACC_CONTR_CLASS : bit (16) > }
+ { 0 | 1< MAX_RETRANS : bit (2) > }
+ < S : bit (4) >
+ { 0 | 1 < TX_INT : bit (4) > }
+ { 0 | 1 < PERSISTENCE_LEVEL : bit (4) > } ;
+
+-- 12.43
+< NAS Container for PS Handover IE > ::=
+ < NAS_CONTAINER_LENGTH : bit (7) >
+< NAS_CONTAINER_DATA : octet (val(NAS_CONTAINER_LENGTH)) >
+< padding bits > ;
+
+-- 12.45
+< MBMS In-band Signalling Indicator IE > ::=
+ < MBMS In-band Signalling Indicator: bit (1) >;
+
+-- 12.45b
+< RRC Container IE > ::=
+ < RRC_CONTAINER_LENGTH : bit (8) >
+ < RRC_CONTAINER_DATA : octet (val(RRC_CONTAINER_LENGTH)) >
+ < padding bits > ;
+
+-- 12.47
+< CS Handover Radio Resources IE > ::=
+ < CS_HANDOVER_RADIO_RESOURCES_LENGTH : bit (7) >
+ < CS_HANDOVER_RADIO_RESOURCES_DATA : octet (val(CS_HANDOVER_RADIO_RESOURCES_LENGTH)) >
+ < padding bits > ;
+
+-- 12.49
+< E-UTRAN Target cell IE > ::=
+ < EARFCN : bit (16) >
+ { 0 | 1 < Measurement Bandwidth: bit (3) > }
+ < Physical Layer Cell Identity : bit (9) > ;
+
+-- 12.50
+< Individual priorities IE > ::=
+ {0| -- delete all stored individual priorities
+ 1 -- provide individual priorities
+ < GERAN_PRIORITY : bit(3) >
+ { 0 | 1 < 3G Individual Priority Parameters Description :
+ < 3G Individual Priority Parameters Description struct >> }
+ { 0 | 1 < E-UTRAN Individual Priority Parameters Description :
+ < E-UTRAN Individual Priority Parameters Description struct >> }
+ { 0 | 1 < T3230 timeout value : bit (3) > }
+};
+
+< 3G Individual Priority Parameters Description struct > ::=
+ { 0 | 1 < DEFAULT_UTRAN_PRIORITY : bit(3) > }
+ { 1 < Repeated Individual UTRAN Priority Parameters :
+ < Repeated Individual UTRAN Priority Parameters struct >> } ** 0 ;
+
+< Repeated Individual UTRAN Priority Parameters struct > ::=
+ { 0 { 1 < FDD-ARFCN : bit (14) > } ** 0 | 1 { 1 < TDD-ARFCN : bit (14) > } ** 0 }
+ < UTRAN_PRIORITY : bit(3) > ;
+
+< E-UTRAN Individual Priority Parameters Description struct > ::=
+ { 0 | 1 < DEFAULT_E-UTRAN_PRIORITY : bit(3) > }
+ { 1 < Repeated Individual E-UTRAN Priority Parameters :
+ < Repeated Individual E-UTRAN Priority Parameters struct >> } ** 0 ;
+
+< Repeated Individual E-UTRAN Priority Parameters struct > ::=
+ { 1 < EARFCN : bit (16) > } ** 0
+ < E-UTRAN_PRIORITY : bit(3) > ;
+
+-- 12.51
+< GSM Priority Parameters IE > ::=
+ < GERAN_PRIORITY : bit(3) >
+ < THRESH_Priority_Search : bit(4) >
+ < THRESH_GSM_low : bit(4) >
+ < H_PRIO : bit(2) >
+ < T_Reselection : bit(2) >;
+
+-- 12.52
+< 3G Priority Parameters IE > ::=
+ { 0 | 1 < DEFAULT_UTRAN_PRIORITY : bit(3) >
+ < DEFAULT_THRESH_UTRAN: bit(5) >
+ < DEFAULT_UTRAN_QRXLEVMIN: bit(5) > }
+ { 1 < Repeated UTRAN Priority Parameters : < Repeated UTRAN Priority Parameters struct >> } ** 0 ;
+
+< Repeated UTRAN Priority Parameters struct > ::=
+ { 1 < UTRAN_FREQUENCY_INDEX : bit (5) > } ** 0
+ { 0 | 1 < UTRAN_PRIORITY : bit(3) > }
+ < THRESH_UTRAN_high: bit(5) >
+ { 0 | 1 < THRESH_UTRAN_low: bit(5) > }
+ { 0 | 1 < UTRAN_QRXLEVMIN: bit(5) > } ;
+
+-- 12.53
+< E-UTRAN Parameters IE > ::=
+ < E-UTRAN_CCN_ACTIVE : bit >
+ { 0 | 1 < GPRS E-UTRAN Measurement Parameters :
+ < GPRS E-UTRAN Measurement Parameters struct >> }
+ { 1 < Repeated E-UTRAN Neighbour Cells : < Repeated E-UTRAN Neighbour Cells struct >> } ** 0
+ { 1 < Repeated E-UTRAN Not Allowed Cells : < Repeated E-UTRAN Not Allowed Cells struct >> } ** 0
+ { 1 < Repeated E-UTRAN PCID to TA mapping : < Repeated E-UTRAN PCID to TA mapping struct >> } ** 0 ;
+
+< GPRS E-UTRAN Measurement Parameters struct > ::=
+ < Qsearch_P_E-UTRAN : bit(4) >
+ < E-UTRAN_REP_QUANT : bit >
+ < E-UTRAN_MULTIRAT_REPORTING : bit(2) >
+ { 0 | 1 < E-UTRAN_FDD_REPORTING_THRESHOLD : bit(3) >
+ { 0 | 1 < E-UTRAN_FDD_REPORTING_THRESHOLD_2 : bit(6) > }
+ { 0 | 1 < E-UTRAN_FDD_REPORTING_OFFSET : bit(3) > } }
+ { 0 | 1 < E-UTRAN_TDD_REPORTING_THRESHOLD : bit(3) >
+ { 0 | 1 < E-UTRAN_TDD_REPORTING_THRESHOLD_2 : bit(6) > }
+ { 0 | 1 < E-UTRAN_TDD_REPORTING_OFFSET : bit(3) > } } ;
+
+< Repeated E-UTRAN Neighbour Cells struct > ::=
+ { 1 < EARFCN : bit (16) >
+ { 0 | 1 < Measurement Bandwidth : bit (3) > } } ** 0
+ { 0 | 1 < E-UTRAN_PRIORITY : bit(3) > }
+ < THRESH_E-UTRAN_high : bit(5) >
+ { 0 | 1 < THRESH_E-UTRAN_low : bit(5) > }
+ { 0 | 1 < E-UTRAN_QRXLEVMIN : bit(5) > } ;
+
+< Repeated E-UTRAN Not Allowed Cells struct > ::=
+ < Not Allowed Cells : < PCID Group IE >>
+ { 1 < E-UTRAN_FREQUENCY_INDEX : bit(3) > } ** 0 ;
+
+< Repeated E-UTRAN PCID to TA mapping struct > ::=
+ {1 -- each repetition corresponds to a different TA
+ < PCID to TA mapping : < PCID Group IE >> -- group of PCIDs belonging to the same TA
+ } ** 0
+ { 1 < E-UTRAN_FREQUENCY_INDEX : bit(3) > } ** 0 ;
+
+-- 12.54
+< 3G CSG Description IE > ::=
+ { 1 < CSG_PSC_SPLIT : < PSC Group IE >>
+ { 1 < UTRAN_FREQUENCY_INDEX : bit (5) > } ** 0 } ** 0 ;
+
+-- 12.55
+< E-UTRAN CSG Description IE > ::=
+ { 1 < CSG_PCI_SPLIT : < PCID Group IE >>
+ { 1 < E-UTRAN_FREQUENCY_INDEX : bit (3) > } ** 0 } ** 0 ;
+
+-- 12.56
+< Measurement Control Parameters Description> ::=
+ { 0 | 1 < Measurement_Control_E-UTRAN : bit(1) >
+ < E-UTRAN_FREQUENCY_INDEX : bit (3) >
+ { 1 < E-UTRAN_FREQUENCY_INDEX : bit (3) > } ** 0
+ }
+ { 0 | 1 < Measurement_Control_UTRAN : bit(1) >
+ < UTRAN_FREQUENCY_INDEX : bit (5) >
+ { 1 < UTRAN_FREQUENCY_INDEX : bit (5) > } ** 0
+ };
+
+-- 12.57
+< PCID Group IE > ::=
+ { 1 < PCID : bit (9) > } ** 0 -- explicit PCID coding
+ { 0 | 1 < PCID_BITMAP_GROUP : bit (6) > }
+ { 1 < PCID_Pattern_length : bit (3) >
+ < PCID_Pattern : bit (val(PCID_Pattern_length) + 1) >
+ < PCID_pattern_sense : bit (1) >
+ } ** 0 ;
+
+-- 12.58
+< PSC Group IE > ::=
+ { 1 < PSC : bit (9) > } ** 0 -- explicit PSC coding
+ { 1 < PSC_Pattern_length : bit (3) >
+ < PSC_Pattern : bit (val(PSC_Pattern_length) + 1) >
+ < PSC_pattern_sense : bit (1) >
+ } ** 0 ;
+
+-- 12.59
+< Enhanced Cell Reselection Parameters IE > ::=
+ { 1 < Repeated E-UTRAN Enhanced Cell Reselection Parameters :
+ < Repeated E-UTRAN Enhanced Cell Reselection Parameters struct >> } ** 0 ;
+
+< Repeated E-UTRAN Enhanced Cell Reselection Parameters struct > ::=
+ { 1 < E-UTRAN_FREQUENCY_INDEX : bit (3) > } ** 0
+ {0 -- reselection based on target cell RSRP (RSRQ checked for suitability)
+ < E-UTRAN_Qmin: bit(4) >
+ |1 -- reselection based on target cell RSRQ (RSRP checked for suitability)
+ < THRESH_E-UTRAN_high_Q: bit(5) >
+ { 0 | 1 < THRESH_E-UTRAN_low_Q: bit(5) > }
+ { 0 | 1 < E-UTRAN_QQUALMIN : bit(4) > }
+ { 0 | 1 < E-UTRAN_RSRPmin : bit(5) > }
+ };
+
+-- 12.60
+< E-UTRAN CSG Measurement Report IE > ::=
+ < E-UTRAN CI : bit (28) >
+ < Tracking Area Code : bit (16) >
+ { 0 | 1 < PLMN-ID : < PLMN-ID struct > > }
+ < CSG-ID : bit (27) >
+ < Access Mode : bit (1) >
+ < REPORTING_QUANTITY : bit (6) > ;
+
+< PLMN-ID struct > ::=
+ < MCC : bit (12) >
+ < MNC : bit (12) > ;
+
+-- 12.61
+< UTRAN CSG Measurement Report IE > ::=
+ < UTRAN CGI : bit (28) >
+ { 0 | 1 < PLMN-ID : < PLMN-ID struct > > }
+ < CSG-ID : bit (27) >
+ < Access Mode : bit (1) >
+ < REPORTING_QUANTITY : bit (6) > ;
+
+< PLMN-ID struct > ::=
+ < MCC : bit (12) >
+ < MNC : bit (12) > ;
+
+-- 12.62
+< E-UTRAN CSG Target cell IE > ::=
+ <E- UTRAN CI : bit (28) >
+ < Tracking Area Code : bit (16) >
+ { 0 | 1 < PLMN-ID : < PLMN-ID struct > > } ;
+
+< PLMN-ID struct > ::=
+ < MCC : bit (12) >
+ < MNC : bit (12) > ;
+
+-- 12.63
+< UTRAN CSG Target cell IE > ::=
+ < UTRAN CI : bit (28) >
+ { 0 | 1 < PLMN-ID : < PLMN-ID struct > > } ;
+
+< PLMN-ID struct > ::=
+ < MCC : bit (12) >
+ < MNC : bit (12) > ;
+
+}
diff --git a/proto_desc/gprs/encodix/gsm_44_060_10_6_0_msgs.src b/proto_desc/gprs/encodix/gsm_44_060_10_6_0_msgs.src
new file mode 100644
index 0000000..d32c6ff
--- /dev/null
+++ b/proto_desc/gprs/encodix/gsm_44_060_10_6_0_msgs.src
@@ -0,0 +1,3991 @@
+-- 3GPP TS 44.060 version 10.6.0 Release 10
+
+csn.1 {
+-- 11.2.0.1
+< Downlink RLC/MAC control message > ::=
+ < MESSAGE_TYPE : bit (6) == 1 00001 > < Packet Access Reject message content > |
+ < MESSAGE_TYPE : bit (6) == 0 00001 > < Packet Cell Change Order message content > |
+ < MESSAGE_TYPE : bit (6) == 0 00010 > < Packet Downlink Assignment message content > |
+ < MESSAGE_TYPE : bit (6) == 0 00011 > < Packet Measurement Order message content > |
+ < MESSAGE_TYPE : bit (6) == 1 00010 > < Packet Paging Request message content > |
+ < MESSAGE_TYPE : bit (6) == 1 00011 > < Packet PDCH Release message content > |
+ < MESSAGE_TYPE : bit (6) == 0 00100 > < Packet Polling Request message content > |
+ < MESSAGE_TYPE : bit (6) == 0 00101 > < Packet Power Control/Timing Advance message content > |
+ < MESSAGE_TYPE : bit (6) == 1 00100 > < Packet PRACH Parameters message content > |
+ < MESSAGE_TYPE : bit (6) == 0 00110 > < Packet Queueing Notification message content > |
+ < MESSAGE_TYPE : bit (6) == 0 00111 > < Packet Timeslot Reconfigure message content > |
+ < MESSAGE_TYPE : bit (6) == 0 01000 > < Packet TBF Release message content > |
+ < MESSAGE_TYPE : bit (6) == 0 01001 > < Packet Uplink Ack/Nack message content > | -- PACCH only
+ < MESSAGE_TYPE : bit (6) == 0 01010 > < Packet Uplink Assignment message content > |
+ < MESSAGE_TYPE : bit (6) == 0 01011 > < Packet Cell Change Continue message content > |
+ < MESSAGE_TYPE : bit (6) == 0 01100 > < Packet Neighbour Cell Data message content > |
+ < MESSAGE_TYPE : bit (6) == 0 01101 > < Packet Serving Cell Data message content > |
+ < MESSAGE_TYPE : bit (6) == 0 01110 > < Packet DBPSCH Assignment message content > |
+ < MESSAGE_TYPE : bit (6) == 0 01111 > < Multiple TBF Downlink Assignment message content > |
+ < MESSAGE_TYPE : bit (6) == 0 10000 > < Multiple TBF Uplink Assignment message content > |
+ < MESSAGE_TYPE : bit (6) == 0 10001 > < Multiple TBF Timeslot Reconfigure message content > |
+ < MESSAGE_TYPE : bit (6) == 0 10011 > < MBMS MS_ID Assignment message content > | -- PACCH only
+ < MESSAGE_TYPE : bit (6) == 0 10100 > < MBMS Assignment Non-distribution message content > |
+ < MESSAGE_TYPE : bit (6) == 0 10101 > < PS Handover Command message content > | -- PACCH only
+ < MESSAGE_TYPE : bit (6) == 0 10110 > < Packet Physical Information message content > | -- PACCH only
+ < MESSAGE_TYPE : bit (6) == 0 10111 > < DTM Handover Command message content > | -- PACCH only
+ < MESSAGE_TYPE : bit (6) == 1 00101 > < Packet Downlink Dummy Control Block message content > |
+ < MESSAGE_TYPE : bit (6) == 1 10001 > < PSI1 message content > |
+ < MESSAGE_TYPE : bit (6) == 1 10010 > < PSI2 message content > |
+ < MESSAGE_TYPE : bit (6) == 1 10011 > < PSI3 message content > |
+ < MESSAGE_TYPE : bit (6) == 1 10100 > < PSI3 bis message content > |
+ < MESSAGE_TYPE : bit (6) == 1 10101 > reserved | -- this value was allocated in an earlier
+ -- version of the protocol and shall not be used
+ < MESSAGE_TYPE : bit (6) == 1 10110 > < PSI5 message content > |
+ < MESSAGE_TYPE : bit (6) == 1 10000 > < PSI6 message content > |
+ < MESSAGE_TYPE : bit (6) == 1 11000 > < PSI7 message content > |
+ < MESSAGE_TYPE : bit (6) == 1 11001 > < PSI8 message content > |
+ < MESSAGE_TYPE : bit (6) == 1 10111 > < PSI13 message content > |
+ < MESSAGE_TYPE : bit (6) == 1 11010 > < PSI14 message content > |
+ < MESSAGE_TYPE : bit (6) == 1 11100 > < PSI3 ter message content > |
+ < MESSAGE_TYPE : bit (6) == 1 11101 > < PSI3 quater message content > |
+ < MESSAGE_TYPE : bit (6) == 1 11110 > < PSI15 message content > |
+ < MESSAGE_TYPE : bit (6) == 1 01000 > < PSI16 message content > |
+ < MESSAGE_TYPE : bit (6) == 1 00000 > < Packet Serving Cell SI message content > |
+ < MESSAGE_TYPE : bit (6) == 1 00111 > < Packet CS Command message content > |
+ < MESSAGE_TYPE : bit (6) == 1 01001 > < Packet CS Release Indication message content > |
+ < MESSAGE_TYPE : bit (6) == 1 01010 > < MBMS Assignment Distribution message content > |
+ < MESSAGE_TYPE : bit (6) == 1 01011 > < MBMS Neighbouring Cell Information message content >|
+ < MESSAGE_TYPE : bit (6) == 1 01100 > < Packet MBMS Announcement message content >
+ < MESSAGE_TYPE : bit (6) == 1 01101 > < Packet Application Information message content >
+ ! < Unknown message type : { bit (6) = < no string > } < Default downlink message content > > ;
+
+< Default downlink message content > ::=
+ < PAGE_MODE : bit (2) >
+ bit (*) = < no string > ;
+
+-- 11.1.0.2
+< Uplink RLC/MAC control message > ::=
+ < MESSAGE_TYPE : bit (6) == 000000 > < Packet Cell Change Failure message content > |
+ < MESSAGE_TYPE : bit (6) == 000001 > < Packet Control Acknowledgement message content > |
+ < MESSAGE_TYPE : bit (6) == 000010 > < Packet Downlink Ack/Nack message content > | -- PACCH only
+ < MESSAGE_TYPE : bit (6) == 000011 > < Packet Uplink Dummy Control Block message content > |
+ < MESSAGE_TYPE : bit (6) == 000100 > < Packet Measurement Report message content > |
+ < MESSAGE_TYPE : bit (6) == 001010 > < Packet Enhanced Measurement Report message content > |
+ < MESSAGE_TYPE : bit (6) == 000101 > < Packet Resource Request message content > |
+ < MESSAGE_TYPE : bit (6) == 000110 > < Packet Mobile TBF Status message content > |
+ < MESSAGE_TYPE : bit (6) == 000111 > < Packet PSI Status message content > |
+ < MESSAGE_TYPE : bit (6) == 001000 > < EGPRS Packet Downlink Ack/Nack message content > |
+ < MESSAGE_TYPE : bit (6) == 010001 > < EGPRS Packet Downlink Ack/Nack Type 2 message content > |
+ < MESSAGE_TYPE : bit (6) == 001001 > < Packet Pause message content > |
+ < MESSAGE_TYPE : bit (6) == 001011 > < Additional MS Radio Access Capabilities message content > |
+ < MESSAGE_TYPE : bit (6) == 001100 > < Packet Cell Change Notification message content > |
+ < MESSAGE_TYPE : bit (6) == 001101 > < Packet SI Status message content > |
+ < MESSAGE_TYPE : bit (6) == 001110 > < Packet CS Request message content > |
+ < MESSAGE_TYPE : bit (6) == 001111 > < MBMS Service Request message content > |
+ < MESSAGE_TYPE : bit (6) == 010000 > < MBMS Downlink Ack/Nack message content >;
+
+-- 11.2.1
+< Packet Access Reject message content > ::=
+ < PAGE_MODE : bit (2) >
+ < Reject : < Reject struct > >
+ { { 1 < Additional Reject: < Reject struct > > } ** 0
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier releases
+ |1 -- Additions in release 5
+ { 1 < Iu mode Reject: < Iu mode Reject struct > > } ** 0
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier releases
+ |1 -- Additions in release 6
+ { 1 < A/Gb mode Reject: < A/Gb mode Reject struct > > } ** 0 }
+ < padding bits > } } // -- truncation at end of message allowed, bits '0' assumed
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< Reject struct > ::=
+ { 0 < TLLI / G-RNTI : bit (32) >
+ | 1 { 0 < Packet Request Reference : < Packet Request Reference IE > >
+ | 1 < Global TFI : < Global TFI IE > > } }
+ { 0 | 1 < WAIT_INDICATION : bit (8) >
+ < WAIT _INDICATION_SIZE : bit (1) > }
+ ! < Ignore : bit (*) = <no string> > ;
+
+< Iu mode Reject struct > ::=
+ < G-RNTI_extension : bit (4) >
+ { 0 -- all TBF requests for the MS identified by the G-RNTI in the corresponding Reject structare rejected
+ | { 1 < RB Id : bit(5) > } ** 0 } ; -- TBF requests for these RB Ids are rejected
+
+< A/Gb mode Reject struct > ::=
+ { 0 -- all TBF requests for the MS identified by the TLLI in the corresponding Reject struct are rejected
+ | { 1 < PFI : bit (7) > } ** 0 } ; -- TBF requests for these PFIs are rejected
+
+-- 11.2.2
+< Packet Control Acknowledgement message content > ::= -- RLC/MAC control block format
+ < TLLI/G-RNTI : bit (32) >
+ < CTRL_ACK : bit (2) >
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version of the protocol
+ |1 -- Release 5 additions
+ { 0 | 1 < TN_RRBP : bit (3) > }
+ { 0 | 1 < G-RNTI extension : bit (4) > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version of the protocol
+ |1 -- Release 6 additions
+ { 0 | 1 < CTRL_ACK_EXTENSION : bit (9) > }
+ < padding bits > } } ;
+
+< Packet Control Acknowledgement 11 bit message > ::= -- 11-bit access burst format
+ < MESSAGE_TYPE : bit (9) == 1111 1100 1 >
+ | { < MESSAGE_TYPE : bit (6) == 110111 >
+ < TN_RRBP : bit (3) > }
+ < CTRL_ACK : bit (2) > ;
+
+< Packet Control Acknowledgement 8 bit message > ::= -- 8-bit access burst format
+ < MESSAGE_TYPE : bit (6) == 0111 11 >
+ | { < MESSAGE_TYPE : bit (3) == 000>
+ < TN_RRBP : bit (3) > }
+ < CTRL_ACK : bit (2) > ;
+
+-- 11.2.2a
+< Packet Cell Change Continue message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 < GLOBAL_TFI : Global TFI IE >
+ { { 0 | 1 < ARFCN : bit (10) >
+ < BSIC : bit (6) >
+ < CONTAINER_ID : bit (2) > }
+ < padding bits >
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Address information part error : bit (*) = < no string > > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+-- 11.2.3
+< Packet Cell Change Failure message content > ::=
+ < TLLI / G-RNTI : bit (32) >
+ < ARFCN : bit (10) >
+ < BSIC : bit (6) >
+ < CAUSE : bit (4) >
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in release 99 :
+ { 0 | 1 < UTRAN FDD Target cell: < UTRAN FDD Target cell IE > > }
+ { 0 | 1 < UTRAN TDD Target cell: < UTRAN TDD Target cell IE > > }
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-5 :
+ { 0 | 1 < G-RNTI extension : bit (4) > }
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-8 :
+ { 0 | 1 < E-UTRAN Target cell: < E-UTRAN Target cell IE > > }
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-9 :
+ { 0 | 1 < UTRAN CSG Target cell:
+ < UTRAN CSG Target cell IE > > }
+ { 0 | 1 < E-UTRAN CSG Target cell :
+ < E-UTRAN CSG Target cell IE > > }
+ < padding bits > } } } } ;
+
+-- 11.2.3a
+< Packet Cell Change Notification message content > ::=
+ < Global TFI : < Global TFI IE > >
+ { 0 < ARFCN : bit (10) >
+ < BSIC : bit (6) >
+ | 10 -- Extension in Rel-6 and an escape bit for future extensions of the message added:
+ < 3G Target Cell : < 3G Target Cell Struct >> } -- Re-selection with a 3G cell as the preferred target cell
+ | 110 -- Extension in Rel-8 for E-UTRAN and an escape bit for future extensions of the message
+ { 0 | 1 < ARFCN : bit (10) >
+ < BSIC : bit (6) > }
+ { 0 | 1 < 3G Target Cell : < 3G Target Cell Struct >> }
+ { 0 | 1 < E-UTRAN Target Cell : < E-UTRAN Target Cell Struct >> }
+ { 0 | 1 < E-UTRAN CCN Measurement Report : < E-UTRAN CCN Measurement Report struct > > }
+ | 1110 -- Extension in Rel-9 for CSG target cells and an escape bit for future extensions of the message
+ {0
+ < UTRAN CSG Target Cell Measurement Report : < UTRAN CSG Measurement Report IE > >
+ |1
+ < E-UTRAN CSG Target Cell Measurement Report : < E-UTRAN CSG Measurement Report IE > > }
+ { 0 | 1 < E-UTRAN CCN Measurement Report : < E-UTRAN CCN Measurement Report struct > > }
+ ! < Message escape : { 1111 } bit (*) = <no string> >
+ { 0< BA_USED : bit > | 1 < PSI3_CHANGE_MARK : bit(2) > }
+ < PMO_USED : bit >
+ < PCCN_SENDING : bit (1) >
+ < CCN Measurement Report : < CCN Measurement Report struct > >
+ { null | 0 bit** = < no string > -- Receiver compatible with earlier release
+ |1 -- Addition in Rel-6
+ { 0 | 1 < 3G_BA_USED : bit > }
+ < 3G CCN Measurement Report : < 3G CCN Measurement Report struct > >
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-10
+ < CSG Discriminator : bit (1) >
+ < padding bits > } } ;
+
+< CCN Measurement Report struct > ::=
+ < RXLEV_SERVING_CELL : bit (6) >
+ 0 -- The value '1' was allocated in an earlier version of the protocol and shall not be used.
+ < NUMBER_OF_NC_MEASUREMENTS : bit (3) >
+ { < FREQUENCY_N : bit (6) >
+ { 0 | 1 < BSIC_N : bit (6) > }
+ < RXLEV_N : bit (6) > } * (val(NUMBER_OF_NC_MEASUREMENTS)) ;
+
+< 3G Target Cell Struct > ::=
+ { 0 | 1 < FDD-ARFCN : bit (14) > -- 3G UTRAN FDD
+ { 0 | 1 < Bandwidth_FDD : bit (3) > }
+ < SCRAMBLING_CODE : bit (9) > }
+ { 0 | 1 < TDD-ARFCN : bit (14) > -- 3G UTRAN TDD
+ { 0 | 1 < Bandwidth_TDD : bit (3) > }
+ < Cell Parameter : bit (7) >
+ < Sync Case : bit > }
+ < REPORTING_QUANTITY : bit (6) > ; -- Measurement Report for 3G target cell
+
+< 3G CCN Measurement Report Struct > ::= -- Measurement Report for 3G neighbour cells
+ < N_3G: bit (3) >
+ { < 3G_CELL_LIST_INDEX : bit (7) >
+ < REPORTING_QUANTITY : bit (6) > } * (val(N_3G) + 1) ;
+
+< E-UTRAN Target Cell struct > ::=
+ < EARFCN : bit (16) >
+ { 0 | 1 < Measurement Bandwidth: bit (3) > }
+ < Physical Layer Cell Identity : bit (9) >
+ < REPORTING_QUANTITY : bit (6) > ; -- Measurement Report for E-UTRAN target cell
+
+< E-UTRAN CCN Measurement Report struct > ::= -- Measurement Report for E-UTRAN neighbour cells
+ < 3G_BA_USED : bit >
+ < N_E-UTRAN: bit (2) >
+ { < E-UTRAN_FREQUENCY_INDEX : bit (3) >
+ < CELL IDENTITY : bit (9) >
+ < REPORTING_QUANTITY : bit (6) > } * (val(N_E-UTRAN) + 1) ;
+
+-- 11.2.4
+< Packet Cell Change Order message content > ::=
+ < PAGE_MODE : bit (2) >
+ { { 0 < Global TFI : < Global TFI IE > >
+ | 10 < TLLI / G-RNTI : bit (32) > }
+ {0
+ { < IMMEDIATE_REL : bit >
+ < GSM target cell: < GSM target cell struct >>
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ |1
+ { 00 -- Message escape
+ { < IMMEDIATE_REL : bit >
+ { 0 | 1 < UTRAN FDD Target cell: < UTRAN FDD Target cell IE > > }
+ { 0 | 1 < UTRAN TDD Target cell: < UTRAN TDD Target cell IE > > }
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-5 :
+ { 0 | 1 < G-RNTI extension : bit (4) > }
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-8
+ { 0 | 1 < E-UTRAN Target cell : < E-UTRAN Target cell IE >> }
+ { 0 | 1 < Individual Priorities : < Individual Priorities IE >> }
+ < padding bits > } }
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Message escape : { 01 | 10 | 11} bit (*) = <no string> > } }
+ ! < Address information part error : bit (*) = < no string > > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< GSM target cell struct > ::=
+ < ARFCN : bit (10) >
+ < BSIC : bit (6) >
+ < NC Measurement Parameters : < NC Measurement Parameters struct > >
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in release 98 :
+ { 0 | 1 < LSA Parameters : < LSA Parameters IE >> }
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in release 99 :
+ < ENH Measurement parameters : < ENH Measurement parameters struct >>
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-4 :
+ < CCN_ACTIVE : bit (1) >
+ { 0 | 1 < CONTAINER_ID : bit (2) > }
+ { 0 | 1 < CCN Support Description : < CCN Support Description struct >> }
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-5 :
+ { 0 | 1 < G-RNTI extension : bit (4) > }
+ { 0 | 1 < Iu Mode Neighbour Cell Parameters : { 1 < Iu Mode Neighbour Cell params struct > } ** 0 >
+} --Supplementary information for dual Iu mode and A/Gb mode capable cells
+ { 0 | 1 < NC Iu MODE ONLY CAPABLE CELL LIST : NC Iu Mode Only Cell List struct > }
+ { 0 | 1 < GPRS 3G Additional Measurement Parameters Description 2 :
+ < GPRS 3G Additional Measurement Parameters Description 2 struct >>}
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-6 :
+ < 3G_CCN_ACTIVE : bit (1) >
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-7 :
+ { 0 | 1 < 700_REPORTING_OFFSET : bit (3) >
+ < 700_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < 810_REPORTING_OFFSET : bit (3) >
+ < 810_REPORTING_THRESHOLD : bit (3) > }
+ { null | 0 bit** = <no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-8
+ < E-UTRAN_CCN_ACTIVE : bit (1) >
+ { 0 | 1 < Individual Priorities : < Individual Priorities IE > > }
+ < padding bits > } } } } } } } ;
+
+< Measurement Parameters struct > ::=
+ < NETWORK_CONTROL_ORDER : bit (2) >
+ { 0 | 1 < NC_NON_DRX_PERIOD : bit (3) >
+ < NC_REPORTING_PERIOD_I : bit (3) >
+ < NC_REPORTING_PERIOD_T : bit (3) > }
+ { 0 | 1 < NC_FREQUENCY_LIST : NC Frequency list struct > } ;
+
+< NC Frequency list struct > ::=
+ { 0 | 1 < NR_OF_REMOVED_FREQ : bit (5) >
+ { < REMOVED_FREQ_INDEX : bit (6) > } * (1 + val(NR_OF_REMOVED_FREQ)) }
+ { 1 < List of added Frequency : < Add Frequency list struct > >} ** 0;
+
+< Add Frequency list struct > ::=
+ < START_FREQUENCY : bit (10) >
+ < BSIC : bit (6) >
+ { 0 | 1 < Cell selection params : < Cell Selection struct > > }
+ < NR_OF_FREQUENCIES : bit (5) >
+ < FREQ_DIFF_LENGTH : bit (3) >
+ { < FREQUENCY_DIFF : bit (val(FREQ_DIFF_LENGTH)) >
+ < BSIC : bit (6) >
+ { 0 | 1 < Cell selection params : < Cell Selection struct > > } } * (val(NR_OF_FREQUENCIES)) ;
+
+< Cell Selection struct > ::=
+ < CELL_BAR_ACCESS_2 : bit (1) >
+ < EXC_ACC : bit >
+ < SAME_RA_AS_SERVING_CELL : bit (1) >
+ { 0 | 1 < GPRS_RXLEV_ACCESS_MIN : bit (6) >
+ < GPRS_MS_TXPWR_MAX_CCH : bit (5) > }
+ { 0 | 1 < GPRS_TEMPORARY_OFFSET : bit (3) >
+ < GPRS_PENALTY_TIME : bit (5) > }
+ { 0 | 1 < GPRS_RESELECT_OFFSET : bit (5) > }
+ { 0 | 1 < HCS params : < HCS struct > > }
+ { 0 | 1 < SI13_PBCCH_LOCATION : < SI13_PBCCH_LOCATION struct > > } ;
+
+< SI13_PBCCH_LOCATION struct > ::=
+ { 0 < SI13_LOCATION : bit (1) >
+ | 1 < PBCCH_LOCATION : bit (2) >
+ < PSI1_REPEAT_PERIOD : bit (4) > } ;
+
+< HCS struct > ::=
+ < PRIORITY_CLASS : bit (3) >
+ < HCS_THR : bit (5) > ;
+
+< ENH Measurement parameters struct > ::=
+ { 0 < BA_IND : bit > < 3G_BA_IND : bit > | 1 < PSI3_CHANGE_MARK : bit(2) > }
+ < PMO_IND : bit >
+ < REPORT_TYPE : bit >
+ < REPORTING_RATE : bit >
+ < INVALID_BSIC_REPORTING : bit >
+ { 0 | 1 < 3G Neighbour Cell Description : < 3G Neighbour Cell Description struct >> }
+ { 0 | 1 < GPRS REP PRIORITY Description : < GPRS REP PRIORITY Description struct >> }
+ { 0 | 1 < GPRS MEASUREMENT Parameters Description :
+ < GPRS MEASUREMENT PARAMETERS Description struct >> }
+ { 0 | 1 < GPRS 3G MEASUREMENT Parameters Description :
+ < GPRS 3G MEASUREMENT PARAMETERS Description struct >> } ;
+
+< 3G Neighbour Cell Description struct > ::=
+ { 0 | 1 < Index_Start_3G : bit (7) > }
+ { 0 | 1 < Absolute_Index_Start_EMR : bit (7) > }
+ { 0 | 1 < UTRAN FDD Description : < UTRAN FDD Description struct >> }
+ { 0 | 1 < UTRAN TDD Description : < UTRAN TDD Description struct >> }
+ { 0 | 1 < REMOVED_3GCELL_Description : < REMOVED_3GCELL_Description struct >> } ;
+
+< REMOVED_3GCELL_Description struct > ::=
+ < N1 : bit (2) >
+ { < N2 : bit (5) >
+ { < REMOVED_3GCELL_INDEX : bit (7) >
+ < 3G_CELL_DIFF_LENGTH : bit (3) >
+ < 3GCELL_DIFF : bit (val(3G_CELL_DIFF_LENGTH)) >
+ } * (1+val(N2))
+ } * (1+val(N1)) ;
+
+< UTRAN FDD Description struct > ::=
+ { 0 | 1 < Bandwidth_FDD : bit (3) > }
+ { 1 < Repeated UTRAN FDD Neighbour Cells : < Repeated UTRAN FDD Neighbour Cells struct >> } ** 0 ;
+
+< Repeated UTRAN FDD Neighbour Cells struct > ::=
+ 0 < FDD-ARFCN : bit (14) > -- The value "1" was used in an earlier
+ -- version of the protocol and shall not be used.
+ < FDD_Indic0 : bit >
+ < NR_OF_FDD_CELLS : bit (5) >
+ < FDD_CELL_INFORMATION Field : bit(p(NR_OF_FDD_CELLS)) > ;
+ -- p(x) defined in table 11.2.9b.2.a/3GPP TS 44.060
+< UTRAN TDD Description struct > ::=
+ { 0 | 1 < Bandwidth_TDD : bit (3) > }
+ { 1 < Repeated UTRAN TDD Neighbour Cells : < Repeated UTRAN TDD Neighbour Cells struct >> } ** 0 ;
+
+< Repeated UTRAN TDD Neighbour Cells struct > ::=
+ 0 < TDD-ARFCN : bit (14) > -- The value "1" was used in an earlier
+ -- version of the protocol and shall not be used.
+ < TDD_Indic0 : bit >
+ < NR_OF_TDD_CELLS : bit (5) >
+ < TDD_CELL_INFORMATION Field : bit(q(NR_OF_TDD_CELLS)) > ;
+ -- q(x) defined in table 11.2.9b.2.b/3GPP TS 44.060.
+< GPRS REP PRIORITY Description struct > ::=
+ < Number_Cells : bit(7) >
+ { < REP_PRIORITY : bit > } * (val(Number_Cells)) ;
+
+< GPRS MEASUREMENT PARAMETERS Description struct > ::=
+ { 0 | 1 < MULTIBAND_REPORTING : bit (2) > }
+ { 0 | 1 < SERVING_BAND_REPORTING : bit (2) > }
+ < SCALE_ORD : bit(2) >
+ { 0 | 1 < 900_REPORTING_OFFSET : bit (3) >
+ < 900_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < 1800_REPORTING_OFFSET : bit (3) >
+ < 1800_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < 400_REPORTING_OFFSET : bit (3) >
+ < 400_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < 1900_REPORTING_OFFSET : bit (3) >
+ < 1900_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < 850_REPORTING_OFFSET : bit (3) >
+ < 850_REPORTING_THRESHOLD : bit (3) > } ;
+
+< GPRS 3G MEASUREMENT PARAMETERS Description struct > ::=
+ < Qsearch_P : bit (4) >
+ { 1 ! < Ignore : bit = < no string >> } -- this bit shall be ignored by the receiver
+ -- for backward compatibility with earlier releases
+ { 0 | 1 < FDD_REP_QUANT : bit > -- FDD Parameters
+ < FDD_MULTIRAT_REPORTING : bit (2) > }
+ { 0 | 1 < FDD_REPORTING_OFFSET : bit (3) >
+ < FDD_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < TDD_MULTIRAT_REPORTING : bit (2) > } -- TDD Parameters
+ { 0 | 1 < TDD_REPORTING_OFFSET : bit (3) >
+ < TDD_REPORTING_THRESHOLD : bit (3) > } ;
+
+< CCN Support Description struct > ::=
+ < Number_Cells : bit (7) >
+ < CCN_SUPPORTED : bit > * (val(Number_Cells)) ;
+
+< Iu Mode Neighbour Cell Params struct > ::=
+ { 0 | 1 < Iu Mode Cell Selection Params : <Iu Mode Cell Selection struct > > }
+ < NR_OF_FREQUENCIES : bit (5) >
+ { 0 | 1 < Iu Mode Cell Selection Params :
+ < Iu Mode Cell Selection struct > > } * (val(NR_OF_FREQUENCIES)) ;
+
+< Iu Mode Cell Selection struct > ::=
+ < CELL BAR QUALIFY 3 : bit (2) >
+ { 0 | 1 < SI13Alt PBCCH Location: < SI13 PBCCH Location struct > > } ;
+
+< NC Iu Mode Only Cell List struct > ::=
+ { 1 < List of added cells : < Add Iu Mode Only Cell List struct > >} ** 0;
+
+< Add Iu Mode Only Cell List struct > ::=
+ < START_FREQUENCY : bit (10) >
+ < BSIC : bit (6) >
+ { 0 | 1 < Cell selection params : < Iu Mode Only Cell Selection struct > > }
+ < NR_OF_FREQUENCIES : bit (5) >
+ < FREQ_DIFF_LENGTH : bit (3) >
+ { < FREQUENCY_DIFF : bit (val(FREQ_DIFF_LENGTH)) >
+ < BSIC : bit (6) >
+ { 0 | 1 < Cell selection params : < Iu Mode Only Cell Selection struct > > } } * (val(NR_OF_FREQUENCIES))
+;
+
+< Iu Mode Only Cell Selection struct > ::=
+ < CELL BAR QUALIFY 3 : bit (2) >
+ < SAME_RA_AS_SERVING_CELL : bit (1) >
+ { 0 | 1 < GPRS_RXLEV_ACCESS_MIN : bit (6) >
+ < GPRS_MS_TXPWR_MAX_CCH : bit (5) > }
+ { 0 | 1 < GPRS_TEMPORARY_OFFSET : bit (3) >
+ < GPRS_PENALTY_TIME : bit (5) > }
+ { 0 | 1 < GPRS_RESELECT_OFFSET : bit (5) > }
+ { 0 | 1 < HCS params : < HCS struct > > }
+ { 0 | 1 < SI13Alt_PBCCH_LOCATION : < SI13_PBCCH_LOCATION struct > > } ;
+
+< GPRS 3G Additional Measurement Parameters Description 2 struct > ::=
+ { 0 | 1 < FDD_REPORTING_THRESHOLD_2 : bit (6) > } ; -- FDD Parameters
+
+-- 11.2.5
+< Packet channel request 11 bit message content > ::=
+ < One Phase Access Request : 0 < MultislotClass : bit (5) >
+ < Priority : bit (2) >
+ < RandomBits : bit (3) > >
+ | < Short Access Request : 100 -- The value 100 was allocated in an earlier version of the protocol and shall not
+be used by the mobile station
+ < NumberOfBlocks : bit (3) >
+ < Priority : bit (2) >
+ < RandomBits : bit (3) > >
+ | < Two Phase Access Request : 110000 < Priority : bit (2) >
+ < RandomBits : bit (3) > >
+ | < Page Response : 110001 < RandomBits : bit (5) > >
+ | < Cell Update : 110010 < RandomBits : bit (5) > >
+ | < MM Procedure : 110011 < RandomBits : bit (5) > >
+ | < Single Block Without TBF Establishment : 110100 < RandomBits : bit (5) > >
+ | < One Phase Access Request in RLC unack mode : 110101 < RandomBits : bit (5) > >
+ | < Dedicated channel request : 110110 < RandomBits : bit (5) > >
+ | < Emergency call : 110111 < RandomBits : bit (5) > >
+ | < Single block MBMS access : 111000 < RandomBits : bit (5) > > ;
+
+< Packet channel request 8 bit message content > ::=
+ < One Phase Access Request : 1 < MultislotClass : bit (5) >
+ < RandomBits : bit (2) > >
+ | < Short Access Request : 00 -- The value 00 was allocated in an earlier version of the protocol and shall not be
+used by the mobile station
+ < NumberOfBlocks : bit (3) >
+ < RandomBits : bit (3) > >
+ | < Two Phase Access Request : 01000 < RandomBits : bit (3) > >
+ | < Page Response : 01001 < RandomBits : bit (3) > >
+ | < Cell Update : 01010 < RandomBits : bit (3) > >
+ | < MM Procedure : 01011 < RandomBits : bit (3) > >
+ | < Single Block Without TBF Establishment : 01100 < RandomBits : bit (3) > >
+ | < One phase Access Request in RLC unack mode : 011010 < RandomBits : bit (2) > >
+ | < Dedicated channel request : 011011 < RandomBits : bit (2) > >
+ | < Emergency call : 011100 < RandomBits : bit (2) > >
+ | < Single block MBMS access : 01111 < RandomBits : bit (3) > >;
+
+-- 11.2.5a
+< EGPRS Packet channel request message content > ::=
+ < One Phase Access Request : 0 < MultislotClass : bit (5) >
+ < Priority : bit (2) >
+ < RandomBits : bit (3) > >
+ | < Short Access Request : 100 -- The value 100 was allocated in an earlier version of the protocol and shall not
+be used by the mobile station
+ < NumberOfBlocks : bit (3) >
+ < Priority : bit (2) >
+ < RandomBits : bit (3) > >
+ | < One Phase Access Request by Reduced Latency MS: 101 < MultislotClassGroup : bit (3) >
+ < Priority : bit (2) >
+ < RandomBits : bit (3) > >
+ | < Two Phase Access Request : 110000 < Priority : bit (2) >
+ < RandomBits : bit (3) > >
+ | < Signalling : 110011 < RandomBits : bit (5) > >
+ | < One phase Access Request in RLC unack mode : 110101 < RandomBits : bit (5) > >
+ | < Dedicated Channel Request : 110110 < RandomBits : bit (5) > >
+ | < Emergency call : 110111 < RandomBits : bit (5) > >;
+
+
+-- 11.2.5b
+< Packet DBPSCH Assignment message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 | 1 <PERSISTENCE_LEVEL : bit (4) > * 4 }
+ { { 0 < Global TFI : < Global TFI IE > >
+ | 10 < G-RNTI : bit (32) >
+ | 11 < Packet Request Reference : < Packet Request Reference IE >> }
+ {0 -- Message escape
+ { < CHANNEL_DESCRIPTION : < Channel Description struct >>
+ { 0 | 1 < TIMING_ADVANCE_VALUE : bit (8) > }
+ < NETWORK_RESPONSE_TIMES : < Network Response Times struct >>
+ < padding bits > -- truncation at end of message allowed, bits '0' assumed
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Message escape : 1 bit (*) = <no string> > }
+ ! < Address information part error : bit (*) = < no string > > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< Channel Description struct > ::=
+ < CHANNEL_TYPE : bit (6) >
+ < DOWNLINK_TIMESLOT_ALLOCATION : bit (8) >
+ {0 -- Symmetric uplink and downlink timeslot allocation
+ | 1 < UPLINK_TIMESLOT_ALLOCATION : bit (8) > } -- Asymmetric uplink and downlink timeslot allocation
+ { 0 | 1 < USF : bit (3) >
+ < USF_GRANULARITY : bit (1) > }
+ < POWER_COMMAND : < Power Command struct > >
+ { 0 | 1 < CHANNEL_MODE : bit (8) > }
+ < TSC : bit (3) >
+ { 0 < MAIO : bit (6) >
+ < HSN : bit (6) >
+ | 1 < ARFCN : bit (10) > } ;
+
+< Network Response Times struct > ::=
+ { 0 -- Network's response times on SDCCH
+ < RESPONSE_TIME_SDCCH : < Response Time SDCCH struct > >
+ | 1 -- Network's reponse times on the assigned DBPSCH
+ < RESPONSE_TIME_SACCH : < Response Time SACCH struct >> -- Network's response time on SACCH
+ { 0 -- Network's response time on FACCH/F
+ -- i.e. between a request sent on TCH/F or FACCH/F and the corresponding response sent on FACCH/F
+ < RESPONSE_TIME_FACCH_F : < Response Time struct >>
+ | 1 < RESPONSE_TIME_FACCH_H : < Response Time struct >>}}; -- Network's reponse time on FACCH/H
+
+< Response Time SDCCH struct > ::=
+ < TRMIN_SDCCH : bit (1) > -- Network's minimum response time on SDCCH
+ < TRESP_SDCCH: bit (1) >; -- Network's maximum response time on SDCCH
+
+< Response Time SACCH struct > ::=
+ < TRMIN_SACCH : bit (1) > -- Network's minimum response time on SACCH
+ < TRESP_SACCH: bit (1) >; -- Network's maximum response time on SACCH
+
+< Response Time struct > ::=
+ < TRMIN : bit (6) >
+ < TRESP_MAC_DTM : bit (7) >
+ < TRESP_MAC_Dedicated : bit (7) >;
+
+< Power Command struct> ::= -- Provides the power level to be used by the mobile station
+ {0 -- Normal power control
+ | 1 < FPC_EPC : bit (1) > } -- Fast or Enhanced Power Control
+ < POWER_LEVEL : bit (8) >;
+
+-- 11.2.5c
+< MPRACH Packet channel request message content > ::=
+ < Single block MBMS access: 0000 < RandomBits: bit (7) > >;
+
+-- 11.2.6
+< Packet Downlink Ack/Nack message content > ::=
+ < DOWNLINK_TFI : bit (5) >
+ < Ack/Nack Description : < Ack/Nack Description IE > >
+ { 0 | 1 < Channel Request Description : < Channel Request Description IE > > }
+ < Channel Quality Report : < Channel Quality Report struct > >
+ { null | 0 bit** = <no string> -- Receiver backward compatible with earlier version
+ |1 -- Additional contents for Release 1999
+ { 0 | 1 < PFI : bit(7) > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for REL-5
+ { 0 | 1 < Iu mode Channel Request Description : < Iu mode Channel Request Description IE > > }
+ { 0 | 1 < RB Id : bit (5) > }
+ { 0 | 1 < Timeslot Number : bit (3) > }
+ { null | 0 bit** = <no string> -- Receiver backward compatible with earlier version
+ |1 -- Additional contents for Release 6
+ { 0 | 1 < Extended Channel Request Description : < Extended Channel Request Description IE > > } }
+ { null | 0 bit** = <no string> -- Receiver backward compatible with earlier version
+ |1 -- Additional contents for Release 7
+ < EARLY_TBF_ESTABLISHMENT : bit (1) >
+ < padding bits > } } };
+
+< Channel Quality Report struct > ::=
+ < C_VALUE : bit (6) >
+ < RXQUAL : bit (3) >
+ < SIGN_VAR : bit (6) >
+ { 0 | 1 < I_LEVEL_TN0 : bit (4) > }
+ { 0 | 1 < I_LEVEL_TN1 : bit (4) > }
+ { 0 | 1 < I_LEVEL_TN2 : bit (4) > }
+ { 0 | 1 < I_LEVEL_TN3 : bit (4) > }
+ { 0 | 1 < I_LEVEL_TN4 : bit (4) > }
+ { 0 | 1 < I_LEVEL_TN5 : bit (4) > }
+ { 0 | 1 < I_LEVEL_TN6 : bit (4) > }
+ { 0 | 1 < I_LEVEL_TN7 : bit (4) > } ;
+
+-- 11.2.6b
+< Packet DBPSCH Downlink Ack/Nack message > ::=
+ < MESSAGE_TYPE : bit (6) == 000010 >
+ < RB Id : bit (5) >
+ { 0 -- TCH TBF mode
+ { 0 -- All data blocks acknowledged, no retransmission requested
+ | 1 < STARTING_SEQUENCE_NUMBER : bit (8) >
+ < RECEIVED_BLOCK_BITMAP : bit (128) > }
+ | 1 -- DCCH TBF mode
+ { 0 -- All data blocks acknowledged, no retransmission requested
+ | 1 < STARTING_SEQUENCE_NUMBER : bit (4) >
+ < RECEIVED_BLOCK_BITMAP : bit (8) > } }
+ <padding bits > ;
+
+-- 11.2.6c
+< Packet DBPSCH Downlink Ack/Nack Type 2 message > ::=
+ < MESSAGE_TYPE : bit (6) == 000010 > -- The same message type as for Packet DBPSCH Downlink Ack/Nack is
+ -- used since these two messages are mutually exclusive
+ < RB Id : bit (5) >
+ < EGPRS Channel Quality Report : < EGPRS Channel Quality Report IE > >
+ { 0 -- UDCH TBF mode
+ { 0 -- All data blocks acknowledged, no retransmission requested
+ | 1 < FLO Ack/Nack Description : < FLO Ack/Nack Description IE > > }
+ | 1 -- CDCH TBF mode
+ { 0 -- All data blocks acknowledged, no retransmission requested
+ | 1 < STARTING_SEQUENCE_NUMBER : bit (4) >
+ < RECEIVED_BLOCK_BITMAP : bit (8) > } }
+ <padding bits > ;
+
+-- 11.2.6d
+< MBMS Downlink Ack/Nack message content > ::=
+ < DOWNLINK_TFI : bit (5) >
+ < MBMS Neighbouring Cell Report : < MBMS Neighbouring Cell Report struct > > -- Neighbouring cell reporting
+ < MS_ID Release Indication : bit (1) >
+ { 0 | 1 < Extension Bits : Extension Bits IE > } -- sub-clause 12.26
+ { 0 < Ack/Nack Description : < Ack/Nack Description IE > > -- Ack/Nack information
+ | 1 < MS_OUT_OF_MEMORY : bit (1) >
+ < EGPRS Ack/Nack Description : < EGPRS Ack/Nack Description IE > > }
+ <padding bits > ;
+
+< MBMS Neighbouring Cell Report struct > ::=
+ { 0 < BA_USED : bit (1) >
+ | 1 < PSI3_CHANGE_MARK : bit (2) > }
+ < Neighbouring Cell Report : < Neighbouring Cell Report struct > >;
+
+< Neighbouring Cell Report struct > ::=
+ < RXLEV_SERVING_CELL : bit (6) > -- Serving cell Rx level
+ < RESEL_CRITERIA_FULFILLED : bit (1) > -- If re-selection criteria are fulfilled, only the
+ -- corresponding neighbouring cell is reported
+ < NUMBER_OF_NEIGHBOURING_CELL_MEASUREMENTS : bit (3) >
+ { < NCELL_LIST_INDEX_N : bit (7) > -- Neighbouring cells Rx levels
+ { 0 | 1 < BSIC_N : bit (6) > }
+ < RXLEV_N : bit (6) >
+ < RESEL_PARAMS_ACQUIRED : bit (1) >
+ {0 -- No ptm parameters acquired for that session
+ -- in that cell
+ | 1 < MBMS_PTM_CHANGE_MARK : bit (2) > } -- Ptm parameters acquired for that session in
+ -- that cell
+ } * val (NUMBER_OF_NEIGHBOURING CELL_MEASUREMENTS) ;
+
+-- 11.2.6e
+< EGPRS Packet Downlink Ack/Nack Type 2 message content > ::=
+ < DOWNLINK_TFI : bit (5) >
+ < MS OUT OF MEMORY : bit(1)>
+ { 0 | 1 < EGPRS Channel Quality Report Type 2 : < EGPRS Channel Quality Report Type 2 IE > >}
+ { 0 | 1 < Channel Request Description : < Channel Request Description IE > >}
+ { 0 | 1 < PFI : bit(7) > }
+ { 0 | 1 < EPD A/N Type 2 Extension length : bit (8) >
+ { < bit (val(EPD A/N Type 2 Extension length) + 1) >
+ & < EPD A/N Type 2 Extension Info > } ! { bit** = <no string> } }
+ -- Truncation of the EGPRS Ack/Nack Description is allowed if the mobile station is assigned a downlink
+ -- dual carrier configuration and the available space in the message without EGPRS Ack/Nack Description IE
+ -- does not allow for the inclusion of a valid EGPRS Ack/Nack Description IE, i.e. is less than 16 bits.
+ -- In the same conditions, the receiver shall assume that no EGPRS Ack/Nack description IE is included.
+ { < EGPRS Ack/Nack Description : < EGPRS Ack/Nack Description IE >> } //
+ <padding bits > ;
+
+< EPD A/N Type 2 Extension Info > ::=
+ { 0 | 1 < Extended Channel Request Description : < Extended Channel Request Description IE > > }
+ < EARLY_TBF_ESTABLISHMENT : bit (1) >
+ { 0 | 1 < Secondary Dual Carrier Channel Report : < EGPRS Channel Quality Report Type 2 IE > > }
+ < spare bit >** // ; -- Truncation may occur between released versions of the protocol
+ -- The receiver shall assume the value zero of any truncated bits
+
+-- 11.2.7
+< Packet Downlink Assignment message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 | 1 <PERSISTENCE_LEVEL : bit (4) > * 4 }
+ { { 0 < Global TFI : < Global TFI IE > >
+ | 10 < TLLI/ G-RNTI : bit (32) > }
+ {0 -- Message escape
+ { < MAC_MODE : bit (2) >
+ < RLC_MODE : bit (1) >
+ < CONTROL_ACK : bit (1) >
+ < TIMESLOT_ALLOCATION : bit (8) >
+ < Packet Timing Advance : < Packet Timing Advance IE > >
+ { 0 | 1 < P0 : bit (4) >
+ 0 -- The value '1' was allocated in an earlier version of the protocol and shall not be used.
+ < PR_MODE : bit (1) > }
+ { { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ { 0 | 1 < DOWNLINK_TFI_ASSIGNMENT : bit (5) > }
+ { 0 | 1 < Power Control Parameters : < Power Control Parameters IE > > }
+ { 0 | 1 < TBF Starting Time : < Starting Frame Number Description IE > > }
+ 0 -- The value '1' was allocated in an earlier version of the protocol and shall not be used.
+ { null | 0 bit** = <no string> -- Receiver backward compatible with earlier version
+ |1 -- Additional contents for Release 1999
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE >>
+ < LINK_QUALITY_MEASUREMENT_MODE : bit (2) >
+ { 0 | 1 < BEP_PERIOD2 : bit(4) > }}
+ { 0 | 1 <Packet Extended Timing Advance : bit (2)> }
+ { 0 | 1 < COMPACT reduced MA : < COMPACT reduced MA IE >> }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for REL-5
+ { 0 | 1 < RB Id : bit (5) >
+ { 0 | 1 < G-RNTI extension : bit (4) > }
+ { 0 | 1 < Uplink Control Timeslot : bit (3) > }
+ { 0 | 1 < HFN_LSB : bit (1) > } }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for REL-6
+ { 0 | 1 < PFI : bit (7) > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for REL-7
+ { 0 | 1 < NPM Transfer Time : bit (5) > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for REL-9
+ < Indication of Upper Layer PDU Start for RLC UM : bit >
+ {0
+ | 1 < RLC Entity 2 : < RLC Entity Struct > > -- EMST is used
+ {0
+ | 1 < RLC Entity 3 : < RLC Entity Struct > > }
+ }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-10
+ { 1 < EMSR Additional PFCs 1 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 2 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 3 : < Additional PFCs struct > > } ** 0
+ < padding bits > } } } } } } }// -- truncation at end of message allowed, bits '0' assumed
+ ! < Non-distribution part error : bit (*) = < no string > > }
+|1 -- message escape for dual carrier, RTTI, BTTI with FANR activated, EGPRS2
+ { 00 { < RLC_MODE : bit (1) >
+ < CONTROL_ACK : bit (1) >
+ < Assignment Info : < Assignment Info struct > >
+ {0 -- BTTI mode
+ < TIMESLOT_ALLOCATION_C1: bit (8) >
+ { 0 | 1 < TIMESLOT_ALLOCATION_C2: bit (8) > }
+ |1 -- RTTI mode
+ {0 -- Single Carrier Assignment
+ { 00 -- Default PDCH pair configuration
+ | 01 -- Unchanged
+ | 10 -- Explicit PDCH pair configuration
+ < DOWNLINK_PDCH_PAIRS_C1 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C1 : bit (8) >
+ ! < PDCH pairs configuration error : { 1 1 } bit (*) = < no string > > -- reserved
+ }
+ < RTTI_DOWNLINK_PDCH_PAIR_ASSIGNMENT_SC : bit (4) >
+ |1 -- Dual Carrier Assignment
+ { 00 -- Default PDCH pair configuration
+ | 01 -- Unchanged
+ | 10 -- Explicit PDCH pair configuration
+ < DOWNLINK_PDCH_PAIRS_C1 : bit (8) >
+ < DOWNLINK_PDCH_PAIRS_C2 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C1 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C2 : bit (8) >
+ ! < PDCH pairs configuration error : { 1 1 } bit (*) = < no string > > -- reserved
+ }
+ < RTTI_DOWNLINK_PDCH_PAIR_ASSIGNMENT_DC : bit (8) >
+ }
+ }
+ < Packet Timing Advance : < Packet Timing Advance IE > >
+ { 00 -- No frequency parameters included
+ | 01 -- Legacy IEs used
+ { 0 | 1 < Frequency Parameters C1 : < Frequency Parameters IE > > }
+ { 0 | 1 < Frequency Parameters C2 : < Frequency Parameters IE > > }
+ | 10 -- Optimized Dual Carrier frequency parameters used
+ < Dual Carrier Frequency Parameters: < Dual Carrier Frequency Parameters IE > >
+ ! < Frequency Parameters error: { 11 } bit(*) = < no string> > } -- reserved for future used
+ { 0 | 1 < P0_C1 : bit (4) >
+ < PR_MODE_C1 : bit (1) >
+ { 0 | 1 < P0_C2 : bit (4) >
+ < PR_MODE_C2 : bit (1) > } }
+ { 0 | 1 < DOWNLINK_TFI_ASSIGNMENT : bit (5) > }
+ { 0 | 1 < Power Control Parameters C1 : < Power Control Parameters IE > > }
+ { 0 | 1 < Power Control Parameters C2 : < Power Control Parameters IE > > }
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE >>
+ < LINK_QUALITY_MEASUREMENT_MODE : bit (2) >
+ { 0 | 1 < BEP_PERIOD2 : bit(4) > } }
+ { 0 | 1 < Packet Extended Timing Advance : bit (2) > }
+ { 0 | 1 < PFI : bit (7) > }
+ { 0 | 1 < NPM Transfer Time : bit (5) > }
+ {0|1 -- '1' indicates Fast Ack/Nack Reporting is activated
+ < EVENT_BASED_FANR: bit (1) > }
+ <Downlink EGPRS Level: < EGPRS Level IE > >
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for REL-9
+ < Indication of Upper Layer PDU Start for RLC UM: bit >
+ {0
+ | 1 < RLC Entity 2 : < RLC Entity Struct > > -- EMST is used
+ {0
+ | 1 < RLC Entity 3 : < RLC Entity Struct > > }
+ }
+ { 0 | 1 < MTTI_DOWNLINK_ASSIGNMENT_C1 : bit (1) > }
+ { 0 | 1 < MTTI_DOWNLINK_ASSIGNMENT_C2 : bit (1) > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-10
+ { 1 < EMSR Additional PFCs 1 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 2 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 3 : < Additional PFCs struct > > } ** 0
+ < padding bits > } } }// -- truncation at end of message allowed, bits '0' assumed
+ ! < Message escape : { 01 | 10 | 11 } bit (*) = < no string > > }
+ }
+ ! < Address information part error : bit (*) = < no string > > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< Assignment Info struct > ::=
+ < Assignment Type : bit (2) >
+ < Carrier ID : bit (1) > ;
+
+< RLC Entity Struct > ::=
+ < DOWNLINK_TFI_ASSIGNMENT : bit (5) >
+ < RLC_MODE : bit (1) >
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+ < PFI : bit (7) >;
+
+< Additional PFCs struct > ::=
+ < DOWNLINK_TFI_ASSIGNMENT : bit (5) >
+ { 0 | 1 < NPM Transfer Time : bit (5) > }
+ < PFI : bit (7) >;
+
+-- 11.2.7a
+< Multiple TBF Downlink Assignment message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 | 1 <PERSISTENCE_LEVEL : bit (4) > * 4 }
+ { { 0 < Global TFI : < Global TFI IE > >
+ | 10 { < TLLI / G-RNTI : <TLLI / G-RNTI IE > > < G-RNTI extension : bit (4) > } }
+ {0 -- Message escape
+ { < Packet Timing Advance : < Packet Timing Advance IE > >
+ { 0 | 1 < P0 : bit (4) >
+ < PR_MODE : bit (1) > }
+ { { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ { 0 | 1 < Power Control Parameters : < Power Control Parameters IE > > }
+ { 0 | 1 < TBF Starting Time : < Starting Frame Number Description IE > > }
+ { 0 | 1 { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+ < LINK_QUALITY_MEASUREMENT_MODE : bit (2) >
+ { 0 | 1 < BEP_PERIOD2 : bit(4) > }}
+ { 0 | 1 <Packet Extended Timing Advance : bit (2) > }
+ { 0 | 1 < Uplink Control Timeslot : bit (3) > }
+ { 1 < Multiple Downlink TBF Assignment : < Multiple Downlink TBF Assignment struct > > } ** 0
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for REL-7
+ { 1 { 0 | 1< NPM Transfer Time : bit (5) > } ** 0
+ < padding bits > }} } // -- truncation at end of message allowed, bits '0' assumed
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ |1 -- Message escape for dual carrier, RTTI, BTTI with FANR activated, EGPRS2
+ { 00 { < Packet Timing Advance : < Packet Timing Advance IE > >
+ < Assignment Info : < Assignment Info struct > >
+ { 0 | 1 < P0_C1 : bit (4) >
+ < PR_MODE_C1 : bit (1) >
+ { 0 | 1 < P0_C2 : bit (4) >
+ < PR_MODE_C2 : bit (1) > } }
+ { { 00 -- No frequency parameters included
+ | 01 -- Legacy IEs used
+ { 0 | 1 < Frequency Parameters C1 : < Frequency Parameters IE > > }
+ { 0 | 1 < Frequency Parameters C2 : < Frequency Parameters IE > > }
+ | 10 -- Optimized Dual Carrier frequency parameters used
+ < Dual Carrier Frequency Parameters: < Dual Carrier Frequency Parameters IE > >
+ ! < Frequency Parameters error: { 11 } bit(*) = < no string> > } -- reserved for future use
+ { 0 | 1 < Power Control Parameters C1 : < Power Control Parameters IE > > }
+ { 0 | 1 < Power Control Parameters C2 : < Power Control Parameters IE > > }
+ { 0 | 1 { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+ < LINK_QUALITY_MEASUREMENT_MODE : bit (2) >
+ { 0 | 1 < BEP_PERIOD2 : bit(4) > }}
+ { 0 | 1 < Packet Extended Timing Advance : bit (2) > }
+ { 0 | 1 < Uplink Control Timeslot C1 : bit (3) > }
+ { 0 | 1 < Uplink Control Timeslot C2 : bit (3) > }
+ {0|1 -- BTTI mode
+ < FANR: bit (1) >
+ { 1 < BTTI Multiple Downlink Assignment :
+ < BTTI Multiple Downlink Assignment struct > > } ** 0
+ }
+ {0|1 -- RTTI mode
+ {0 -- Single Carrier Assignment
+ { 00 -- Default PDCH-pair configuration
+ | 01 -- Unchanged
+ | 10 -- Explicit PDCH pair configuration
+ < DOWNLINK_PDCH_PAIRS_C1 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C1 : bit (8) >
+ ! < PDCH pairs configuration error : { 1 1 } bit (*) = < no string > > -- reserved
+ }
+ { 1 < RTTI Multiple Downlink Assignment SC :
+ < RTTI Multiple Downlink Assignment SC struct > > } ** 0
+ |1 -- Dual Carrier Assignment
+ { 00 -- Default PDCH pair configuration
+ | 01 -- Unchanged
+ | 10 -- Explicit PDCH pair configuration
+ < DOWNLINK_PDCH_PAIRS_C1 : bit (8) >
+ < DOWNLINK_PDCH_PAIRS_C2 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C1 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C2 : bit (8) >
+ ! < PDCH pairs configuration error : { 1 1 } bit (*) = < no string > > -- reserved
+ }
+ { 1 < RTTI Multiple Downlink Assignment DC :
+ < RTTI Multiple Downlink Assignment DC struct > > } ** 0
+ }
+ }
+ <Downlink EGPRS Level: < EGPRS Level IE > >
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-9
+ { 1 < Indication of Upper Layer PDU Start for RLC UM : bit > } ** 0
+ < padding bits > } } // -- truncation at end of message allowed, bits '0' assumed
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Message escape : { 01 | 10 | 11 } bit (*) = < no string >> } }
+ ! < Address information part error : bit (*) = < no string > > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< Multiple Downlink TBF Assignment struct > ::=
+ < TIMESLOT_ALLOCATION : bit (8) >
+ { 1 < Downlink TBF assignment : < Downlink TBF assignment struct > > } ** 0 ;
+
+< BTTI Multiple Downlink Assignment struct > ::=
+ { 0 | 1 < TIMESLOT_ALLOCATION_C1 : bit (8) > }
+ { 0 | 1 < TIMESLOT_ALLOCATION_C2 : bit (8) > }
+ { 1 < Downlink TBF assignment : < Downlink TBF assignment 2 struct > > } ** 0 ;
+
+< RTTI Multiple Downlink Assignment SC struct > ::=
+ < RTTI_DOWNLINK_PDCH_PAIR_ASSIGNMENT_SC : bit (4) >
+ { 1 < Downlink TBF assignment : < Downlink TBF assignment 2 struct > > } ** 0 ;
+
+< RTTI Multiple Downlink Assignment DC struct > ::=
+ < RTTI_DOWNLINK_PDCH_PAIR_ASSIGNMENT_DC : bit (8) >
+ { 1 < Downlink TBF assignment : < Downlink TBF assignment 2 struct > > } ** 0 ;
+
+< Downlink TBF assignment struct > ::=
+ { 0 < RB Id : bit (5) >
+ | 1 < PFI : bit (7) >
+ < RLC_MODE : bit (1) > }
+ < TFI Assignment : bit (5) >
+ < CONTROL_ACK : bit (1) >
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+ { 0 | 1 < HFN_LSB : bit (1) > } ; -- HFN_LSB field used in Iu mode only
+
+< Downlink TBF assignment 2 struct > ::=
+ < PFI : bit (7) >
+ < RLC_MODE : bit (1) >
+ < TFI Assignment : bit (5) >
+ < CONTROL_ACK : bit (1) >
+ { 0 | 1 < NPM Transfer Time : bit (5) > }
+ < EVENT_BASED_FANR: bit (1) >
+ { 0 | 1 < Downlink EGPRS Window Size : < EGPRS Window Size IE > > } ;
+
+< Assignment Info struct > ::=
+ < Assignment Type : bit (2) >
+ < Carrier ID : bit (1) > ;
+
+-- 11.2.8
+< Packet Downlink Dummy Control Block message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 | 1 <PERSISTENCE_LEVEL : bit (4) > * 4 }
+ < padding bits >
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+-- 11.2.8b
+< Packet Uplink Dummy Control Block message content > ::=
+ < TLLI / G-RNTI : bit (32) >
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-5 :
+ { 0 | 1 < G-RNTI extension : bit (4) > }
+ < padding bits > } ;
+
+-- 11.2.9
+< Packet Measurement Report message content > ::=
+ < TLLI / G-RNTI : bit (32) >
+ { 0 | 1 < PSI5_CHANGE_MARK : bit (2) > }
+ 0 < NC Measurement Report : < NC Measurement Report struct > >
+ { null | 0 bit** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in release 99 :
+ { 0 | 1 { 0 < BA_USED : bit > < 3G_BA_USED : bit > | 1 < PSI3_CHANGE_MARK : bit(2) > }
+ < PMO_USED : bit > }
+ { 0 | 1 < 3G Measurement Report : < 3G Measurement Report struct > > }
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-5 :
+ { 0 | 1 < G-RNTI extension : bit (4) > }
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-8 :
+ { 0 | 1 < E-UTRAN Measurement Report : < E-UTRAN Measurement Report struct > > }
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-9 :
+ { 0 | 1 < UTRAN CSG Measurement Report : < UTRAN CSG Measurement Report IE > > }
+ { 0 | 1 < E-UTRAN CSG Measurement Report : < E-UTRAN CSG Measurement Report IE > > }
+ < padding bits > } } } } ;
+
+< NC Measurement Report struct > ::=
+ < NC_MODE : bit (1) >
+ < RXLEV_SERVING_CELL : bit (6) >
+ 0 -- The value '1' was allocated in an earlier version of the protocol and shall not be used.
+ < NUMBER_OF_NC_MEASUREMENTS : bit (3) >
+ { < FREQUENCY_N : bit (6) >
+ { 0 | 1 < BSIC_N : bit (6) > }
+ < RXLEV_N : bit (6) > } * (val(NUMBER_OF_NC_MEASUREMENTS)) ;
+
+< 3G Measurement Report struct > ::=
+ < N_3G: bit (3) >
+ { < 3G_CELL_LIST_INDEX : bit (7) >
+ < REPORTING_QUANTITY : bit (6) > } * (val(N_3G) + 1) ;
+
+< E-UTRAN Measurement Report struct > ::=
+ < N_E-UTRAN: bit (2) >
+ { < E-UTRAN_FREQUENCY_INDEX : bit (3) >
+ < CELL IDENTITY : bit (9) >
+ < REPORTING_QUANTITY : bit (6) > } * (val(N_E-UTRAN) + 1) ;
+
+-- 11.2.9b
+< Packet Measurement Order message content > ::=
+ < PAGE_MODE : bit (2) >
+ { { 0 < Global TFI : < Global TFI IE > >
+ | 10 < TLLI / G-RNTI : bit (32) > }
+ { < PMO_INDEX : bit (3) >
+ < PMO_COUNT : bit (3) >
+ { 0 | 1 < NC Measurement Parameters : < NC Measurement Parameters struct > > }
+ 0 -- The value '1' was allocated in an earlier version of the protocol and shall not be used.
+ { null | 0 bit** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in release 98 :
+ { 0 | 1 < LSA Parameters : < LSA Parameters IE >> }
+ { null | 0 bit** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in release 99 :
+ { 0 | 1 < ENH Measurement Parameters : < ENH Measurement Parameters struct >> }
+ { null | 0 bit** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-4 :
+ < CCN_ACTIVE : bit >
+ { 0 | 1 < CCN Support Description : < CCN Support Description struct >> }
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-5 :
+ { 0 | 1 < G-RNTI extension : bit (4) > }
+ { 0 | 1 < Iu Mode Neighbour Cell Parameters :
+ { 1 < Iu Mode Neighbour Cell params struct > } ** 0 > }
+ -- Supplementary information for dual Iu mode and A/Gb mode capable cells
+ { 0 | 1 < NC Iu MODE ONLY CAPABLE CELL LIST : NC Iu Mode Only Cell List struct > }
+ { 0 | 1 < GPRS 3G Additional Measurement Parameters Description 2 :
+ < GPRS 3G Additional Measurement Parameters Description 2 struct >> }
+ { null | 0 bit** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-6 :
+ < 3G_CCN_ACTIVE : bit >
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-7 :
+ { 0 | 1 < 700_REPORTING_OFFSET : bit (3) >
+ < 700_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < 810_REPORTING_OFFSET : bit (3) >
+ < 810_REPORTING_THRESHOLD : bit (3) > }
+ { null | 0 bit** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-8
+ { 0 | 1 < 3G_BA_IND : bit > < PMO_IND : bit > }
+ { 0 | 1 < Priority and E-UTRAN Parameters Description :
+ < Priority and E-UTRAN Parameters Description struct >> }
+ { 0 | 1 < Individual Priorities : < Individual Priorities IE >> }
+ { 0 | 1 < 3G CSG Description : < 3G CSG Description IE >> }
+ { 0 | 1 < E-UTRAN CSG Description : < E-UTRAN CSG Description IE >> }
+ { 0 | 1 < Measurement Control Parameters Description :
+ < Measurement Control Parameters Description IE >> }
+ { null | 0 bit** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-9
+ { 0 | 1 < Enhanced Cell Reselection Parameters Description :
+ < Enhanced Cell Reselection Parameters IE >> }
+ { 0 | 1 < CSG Cells Reporting Description :
+ < CSG Cells Reporting Description struct >> }
+ < padding bits > } } } } } } } }
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Address information part error : bit (*) = < no string > > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< NC Measurement Parameters struct > ::=
+ < NETWORK_CONTROL_ORDER : bit (2) >
+ { 0 | 1 < NC_ NON_DRX_PERIOD : bit (3) >
+ < NC_REPORTING_PERIOD_I : bit (3) >
+ < NC_REPORTING_PERIOD_T : bit (3) > }
+ { 0 | 1 < NC_FREQUENCY_LIST : < NC Frequency list struct > > } ;
+
+< NC Frequency list struct > ::=
+ { 0 | 1 { < NR_OF_REMOVED_FREQ : bit (5) >
+ { < REMOVED_FREQ_INDEX : bit (6) > } * (1 + val(NR_OF_REMOVED_FREQ)) } }
+ { 1 < List of added Frequency struct : < Add Frequency list struct > >} ** 0;
+
+< Add Frequency list struct > ::=
+ < START_FREQUENCY : bit (10) >
+ < BSIC : bit (6) >
+ { 0 | 1 < Cell selection params : < Cell Selection struct > > }
+ < NR_OF_FREQUENCIES : bit (5) >
+ < FREQ_DIFF_LENGTH : bit (3) >
+ { < FREQUENCY_DIFF : bit (1+val(FREQ_DIFF_LENGTH)) >
+ < BSIC : bit (6) >
+ { 0 | 1 < Cell selection params : < Cell Selection struct > > } } * (val(NR_OF_FREQUENCIES));
+
+< Cell Selection struct > ::=
+ < CELL_BAR_ACCESS_2 : bit (1) >
+ < EXC_ACC : bit >
+ < SAME_RA_AS_SERVING_CELL : bit (1) >
+ { 0 | 1 < GPRS_RXLEV_ACCESS_MIN : bit (6) >
+ < GPRS_MS_TXPWR_MAX_CCH : bit (5) > }
+ { 0 | 1 < GPRS_TEMPORARY_OFFSET : bit (3) >
+ < GPRS_PENALTY_TIME : bit (5) > }
+ { 0 | 1 < GPRS_RESELECT_OFFSET : bit (5) > }
+ { 0 | 1 < HCS params : < HCS struct > > }
+ { 0 | 1 < SI13_PBCCH_LOCATION : < SI13_PBCCH_LOCATION struct > > } ;
+
+< SI13_PBCCH_LOCATION struct > ::=
+ { 0 < SI13_LOCATION : bit (1) >
+ | 1 < PBCCH_LOCATION : bit (2) >
+ < PSI1_REPEAT_PERIOD : bit (4) > } ;
+
+< HCS struct > ::=
+ < PRIORITY_CLASS : bit (3) >
+ < HCS_THR : bit (5) > ;
+
+< ENH Measurement parameters struct > ::=
+ { 0 < BA_IND : bit > < 3G_BA_IND : bit > | 1 < PSI3_CHANGE_MARK : bit(2) > }
+ < PMO_IND : bit >
+ < REPORT_TYPE : bit >
+ < REPORTING_RATE : bit >
+ < INVALID_BSIC_REPORTING : bit >
+ { 0 | 1 < 3G Neighbour Cell Description : < 3G Neighbour Cell Description struct >> }
+ { 0 | 1 < GPRS REP PRIORITY Description : <GPRS REP PRIORITY Description struct >> }
+ { 0 | 1 < GPRS MEASUREMENT Parameters Description :
+ < GPRS MEASUREMENT PARAMETERS Description struct >> }
+ { 0 | 1 < GPRS 3G MEASUREMENT Parameters Description :
+ < GPRS 3G MEASUREMENT PARAMETERS BIS Description struct >> } ;
+
+< 3G Neighbour Cell Description struct> ::=
+ { 0 | 1 < Index_Start_3G : bit (7)> }
+ { 0 | 1 < Absolute_Index_Start_EMR : bit (7)> }
+ { 0 | 1 < UTRAN FDD Description : < UTRAN FDD Description struct > > }
+ { 0 | 1 < UTRAN TDD Description : < UTRAN TDD Description struct > > }
+ { 0 | 1 < CDMA2000 Description : < CDMA2000 Description struct > > }
+ { 0 | 1 < REMOVED_3GCELL_Description : < REMOVED_3GCELL_Description struct > > } ;
+
+< REMOVED_3GCELL_Description struct > ::=
+ < N1 : bit (2) >
+ { < N2 : bit (5) >
+ { < REMOVED_3GCELL_INDEX : bit (7) >
+ < 3G_CELL_DIFF_LENGTH : bit (3) >
+ < 3GCELL_DIFF : bit (val(3G_CELL_DIFF_LENGTH)) >
+ } * (1+val(N2))
+ } * (1+val(N1)) ;
+
+< UTRAN FDD Description struct> ::=
+ { 0 | 1 < Bandwidth_FDD : bit (3) > }
+ { 1 < Repeated UTRAN FDD Neighbour Cells : < Repeated UTRAN FDD Neighbour Cells struct >> } ** 0 ;
+< Repeated UTRAN FDD Neighbour Cells struct > ::=
+ 0 < FDD-ARFCN : bit (14) > -- The value "1" was used in an earlier
+ -- version of the protocol and shall not be used.
+ < FDD_Indic0 : bit >
+ < NR_OF_FDD_CELLS : bit (5) >
+ < FDD_CELL_INFORMATION Field : bit(p(NR_OF_FDD_CELLS)) > ;
+ -- p(x) defined in table 11.2.9b.2.a/3GPP TS 44.060
+< UTRAN TDD Description struct > ::=
+ { 0 | 1 < Bandwidth_TDD : bit (3) > }
+ { 1 < Repeated UTRAN TDD Neighbour Cells : < Repeated UTRAN TDD Neighbour Cells struct >> } ** 0 ;
+< Repeated UTRAN TDD Neighbour Cells struct > ::=
+ < TDD_Indic0 : bit >
+ 0 < TDD-ARFCN : bit (14) > -- The value "1" was used in an earlier
+ -- version of the protocol and shall not be used.
+ < NR_OF_TDD_CELLS : bit (5) >
+ < TDD_CELL_INFORMATION Field : bit(q(NR_OF_TDD_CELLS)) > ;
+ -- q(x) defined in table 11.2.9b.2.b/3GPP TS 44.060
+< CDMA 2000 Description struct> ::=
+ < cdma2000 frequency band : bit (5) >
+ < cdma2000 frequency : bit (11) >
+ < number_cdma2000_cells : bit (5) >
+ { < Pilot PN offset : bit (9) >
+ -- this information is enough for 1X Common Pilot
+ {0 | 1{ 000 { <TD_MODE : bit (2) > <TD_POWER_LEVEL : bit (3) >}
+ -- additional information for 1X Common Pilot with Transmit Diversity
+ | 001 { < QOF : bit (2) > <WALSH_LEN_A : bit (3) >
+ < AUX_PILOT_WALSH : bit(val(WALSH_LEN_A)+6)>}
+ -- additional information for 1X Auxiliary Pilot
+ | 010 { < QOF : bit (2) > <WALSH_LEN_B : bit (3) >
+ < AUX_TD_WALSH : bit(val(WALSH_LEN_B)+6)>
+ < AUX_TD_POWER_LEVEL : bit (2) > <TD_MODE : bit (2) >}
+ -- additional information for 1X Auxiliary Pilot with Transmit Diversity
+ | 011 { < SR3_PRIM_PILOT : bit (2) > <SR3_PILOT_POWER1 : bit (3) >
+ < SR3_PILOT_POWER2 : bit (3) >}
+ -- additional information for 3X Common Pilot
+ | 110 { < SR3_PRIM_PILOT : bit (2) > <SR3_PILOT_POWER1 : bit (3) >
+ < SR3_PILOT_POWER2 : bit (3) > <QOF : bit (2) >
+ < WALSH_LEN_C : bit (3) >
+ < AUX_WALSH_LEN : bit(val(WALSH_LEN_C)+6)>
+ { 0 | 1 < QOF1 : bit (2) > < WALSH_LENGTH1 : bit (3) >
+ < AUX_PILOT_WALSH1 : bit(val(WALSH_LENGTH1)+6)>}
+ { 0 | 1 < QOF2 : bit (2) > <WALSH_LENGTH2 : bit (3) >
+ <AUX_PILOT_WALSH2 : bit(val(WALSH_LENGTH2)+6)>}}
+ -- additional information for 3X Auxiliary Pilot
+ }
+ }
+ } * val(number_cdma2000_cells) ;
+
+< GPRS REP PRIORITY Description struct> ::=
+ < Number_Cells : bit(7) >
+ { < REP_PRIORITY : bit >} * (val(Number_Cells)) ;
+
+< GPRS MEASUREMENT PARAMETERS Description struct > ::=
+ { 0 | 1 < MULTIBAND_REPORTING : bit (2) > }
+ { 0 | 1 < SERVING_BAND_REPORTING : bit (2) > }
+ < SCALE_ORD : bit(2) >
+ { 0 | 1 < 900_REPORTING_OFFSET : bit (3) >
+ < 900_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < 1800_REPORTING_OFFSET : bit (3) >
+ < 1800_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < 400_REPORTING_OFFSET : bit (3) >
+ < 400_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < 1900_REPORTING_OFFSET : bit (3) >
+ < 1900_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < 850_REPORTING_OFFSET : bit (3) >
+ < 850_REPORTING_THRESHOLD : bit (3) > } ;
+
+< GPRS 3G MEASUREMENT PARAMETERS BIS Description struct > ::=
+ < Qsearch_P : bit (4) >
+ { 1 ! < Ignore : bit = < no string >> } -- this bit shall be ignored by the receiver
+ -- for backward compatibility with earlier releases
+ { 0 | 1 < FDD_REP_QUANT : bit > -- FDD Parameters
+ < FDD_MULTIRAT_REPORTING : bit (2) > }
+ { 0 | 1 < FDD_REPORTING_OFFSET : bit (3) >
+ < FDD_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < TDD_MULTIRAT_REPORTING : bit (2) > } -- TDD Parameters
+ { 0 | 1 < TDD_REPORTING_OFFSET : bit (3) >
+ < TDD_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < CDMA2000_MULTIRAT_REPORTING : bit (2) > } -- CDMA2000 Parameters
+ { 0 | 1 < CDMA2000_REPORTING_OFFSET : bit (3) >
+ < CDMA2000_REPORTING_THRESHOLD : bit (3) > } ;
+
+< CCN Support Description struct > ::=
+< Number_Cells : bit (7) >
+{ < CCN_SUPPORTED : bit > } * (val(Number_Cells)) ;
+
+< Iu Mode Neighbour Cell Params struct > ::=
+ { 0 | 1 < Iu Mode Cell Selection Params : < Iu Mode Cell Selection struct > > }
+ < NR_OF_FREQUENCIES : bit (5) >
+ { 0 | 1 < Iu Mode Cell Selection Params :
+ < Iu Mode Cell Selection struct > > } * (val(NR_OF_FREQUENCIES)) ;
+
+< Iu Mode Cell Selection struct > ::=
+ < CELL BAR QUALIFY 3 : bit (2) >
+ { 0 | 1 < SI13Alt PBCCH Location: < SI13 PBCCH Location struct > > } ;
+
+< NC Iu Mode Only Cell List struct > ::=
+ { 1 < List of added cells : < Add Iu Mode Only Cell List struct > >} ** 0;
+
+< Add Iu Mode Only Cell List struct > ::=
+ < START_FREQUENCY : bit (10) >
+ < BSIC : bit (6) >
+ { 0 | 1 < Cell selection params : < Iu Mode Only Cell Selection struct > > }
+ < NR_OF_FREQUENCIES : bit (5) >
+ < FREQ_DIFF_LENGTH : bit (3) >
+ { < FREQUENCY_DIFF : bit (val(FREQ_DIFF_LENGTH)) >
+ < BSIC : bit (6) >
+ { 0 | 1 < Cell selection params :
+ < Iu Mode Only Cell Selection struct > > } } * (val(NR_OF_FREQUENCIES)) ;
+
+< Iu Mode Only Cell Selection struct > ::=
+ < CELL BAR QUALIFY 3 : bit (2) >
+ < SAME_RA_AS_SERVING_CELL : bit (1) >
+ { 0 | 1 < GPRS_RXLEV_ACCESS_MIN : bit (6) >
+ < GPRS_MS_TXPWR_MAX_CCH : bit (5) > }
+ { 0 | 1 < GPRS_TEMPORARY_OFFSET : bit (3) >
+ < GPRS_PENALTY_TIME : bit (5) > }
+ { 0 | 1 < GPRS_RESELECT_OFFSET : bit (5) > }
+ { 0 | 1 < HCS params : < HCS struct > > }
+ { 0 | 1 < SI13Alt_PBCCH_LOCATION : < SI13_PBCCH_LOCATION struct > > } ;
+
+< GPRS 3G Additional Measurement Parameters Description 2 struct > ::=
+ { 0 | 1 < FDD_REPORTING_THRESHOLD_2 : bit (6) > } ; -- FDD Parameters
+
+< Priority and E-UTRAN Parameters Description struct > ::=
+ { 0 | 1 < Serving Cell Priority Parameters Description : < GSM Priority Parameters IE >> }
+ { 0 | 1 < 3G Priority Parameters Description : < 3G Priority Parameters IE >> }
+ { 0 | 1 < E-UTRAN Parameters Description : < E-UTRAN Parameters IE >> } ;
+
+< CSG Cells Reporting Description struct > ::=
+ { 0 | 1 < UTRAN CSG Cells Reporting Description : < UTRAN CSG Cells Reporting Description struct >> }
+ { 0 | 1 < E-UTRAN CSG Cells Reporting Description : <E-UTRAN CSG Cells Reporting Description struct >> } ;
+
+< UTRAN CSG Cells Reporting Description struct > ::=
+ { 0 | 1 < UTRAN_CSG_FDD_REPORTING_THRESHOLD : bit (3) >
+ < UTRAN_CSG_FDD_REPORTING_THRESHOLD_2 : bit (6) > }
+ { 0 | 1 < UTRAN_CSG_TDD_REPORTING_THRESHOLD : bit (3) > } ;
+
+< E-UTRAN CSG Cells Reporting Description struct > ::=
+ { 0 | 1 < E-UTRAN_CSG_FDD_REPORTING_THRESHOLD : bit (3) >
+ < E-UTRAN_CSG_FDD_REPORTING_THRESHOLD_2 : bit (6) > }
+ { 0 | 1 < E-UTRAN_CSG_TDD_REPORTING_THRESHOLD : bit (3) >
+ < E-UTRAN_CSG_TDD_REPORTING_THRESHOLD_2 : bit (6) > } ;
+
+-- 11.2.9c
+< Packet Mobile TBF Status message content > ::=
+ < GLOBAL TFI : < Global TFI IE > >
+ < TBF_CAUSE : bit (3) >
+ { 0 | 1 < STATUS_MESSAGE_TYPE : bit (6) > }
+ < padding bits > ;
+
+-- 11.2.9d
+< PACKET ENHANCED MEASUREMENT REPORT message content > ::=
+ < TLLI / G-RNTI : bit (32) >
+ { < NC Measurement Report : < NC Measurement Report struct > > }
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-5 :
+ { 0 | 1 < G-RNTI extension : bit (4) > }
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-8 :
+ < BITMAP_LENGTH : bit(7) >
+ { 0 | 1 < REPORTING_QUANTITY : bit (6) > } * (val(BITMAP_LENGTH) + 1)
+ { 0 | 1 < E-UTRAN Measurement Report : < E-UTRAN Measurement Report struct > > }
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-9 :
+ { 0 | 1 < UTRAN CSG Measurement Report : < UTRAN CSG Measurement Report IE > > }
+ { 0 | 1 < E-UTRAN CSG Measurement Report : < E-UTRAN CSG Measurement Report IE > > }
+ < padding bits > } } } ;
+
+< NC Measurement Report struct > ::=
+< NC_MODE : bit (1) >
+{ 0 < BA_USED : bit > < 3G_BA_USED : bit >
+| 1 < PSI3_CHANGE_MARK : bit(2) > }
+< PMO_USED : bit >
+< BSIC_Seen : bit >
+< SCALE : bit >
+{ 0 | 1 < Serving cell data : < Serving cell data struct >> }
+{ 1 < Repeated Invalid_BSIC_Information : < Repeated Invalid_BSIC_Information struct >> } ** 0
+{ 0 | 1 { 0 | 1 < REPORTING_QUANTITY : bit (6) > } ** } ; -- bitmap type reporting
+
+< Serving cell data struct > ::=
+< RXLEV_SERVING_CELL : bit (6) >
+0; -- The value '1' was allocated in an earlier version of the protocol and shall not be used.
+
+< Repeated Invalid_BSIC_Information struct > ::=
+< BCCH-FREQ-NCELL : bit (5) >
+< BSIC : bit (6) >
+< RXLEV-NCELL : bit (6) > ;
+
+< E-UTRAN Measurement Report struct > ::=
+ < N_E-UTRAN: bit (2) >
+ { < E-UTRAN_FREQUENCY_INDEX : bit (3) >
+ < CELL IDENTITY : bit (9) >
+ < REPORTING_QUANTITY : bit (6) > } * (val(N_E-UTRAN) + 1) ;
+
+-- 11.2.10
+< Packet Paging Request message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 | 1 < PERSISTENCE_LEVEL : bit (4) >* 4}
+ { 0 | 1 < NLN PPCH : bit (2) > }
+ { { 1 < Repeated Page info : < Repeated Page info struct > > } ** 0
+ { null
+ | 0 bit** = < no string > -- Receiver compatible with earlier release
+ |1 -- REL-5 additions:
+ { 1 < Repeated Iu Page info : < Repeated Iu Page info struct > > } ** 0
+ { null | 0 bit** = < no string > -- Receiver compatible with earlier release
+ |1 -- REL-6 additions:
+ { 0 | 1 < MBMS Information > }
+ { 0 | 1 < NLN status PPCH : bit (1) > }
+ { null | 0 bit** = < no string > -- Receiver compatible with earlier release
+ |1 -- REL-8 additions:
+ { 0 | 1 < ETWS Primary Notification : < ETWS Primary Notification struct > > }
+ < padding bits > } } } }// -- truncation at end of message allowed, bits '0' assumed
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< Repeated Page info struct > ::=
+ {0 -- Page request for TBF establishment
+ { 0 < PTMSI : bit (32) >
+ | 1 < Length of Mobile Identity contents : bit (4) >
+ < Mobile Identity : octet (val (Length of Mobile Identity contents)) > }
+ |1 -- Page request for RR conn. establishment
+ { 0 < TMSI : bit (32) >
+ | 1 < Length of Mobile Identity contents : bit (4) >
+ < Mobile Identity : octet (val (Length of Mobile Identity contents)) > }
+ < CHANNEL_NEEDED : bit (2) >
+ { 0 | 1 < eMLPP_PRIORITY : bit (3) > } }
+ ! < Ignore : bit (*) = <no string> > ;
+
+< Repeated Iu Page info struct > ::=
+ {
+ { 0 < G-RNTI: bit(32) > -- used for a CN page to an MS in RRC connected mode, or a GERAN initiated page
+ { 0 | 1 < Page info struct : < Page info struct > > } -- only included for a CN page
+ |1
+ { 00 < TMSI : bit (32) >
+ | 01 < PTMSI : bit (32) >
+ | 11 { < Length of Mobile Identity contents : bit (4) >
+ < Mobile Identity : octet (val (Length of Mobile Identity contents)) > }
+ < Page info struct : < Page info struct > > } }
+ { 0 | 1 < eMLPP_PRIORITY : bit (3) > } }
+ ! < Ignore : bit (*) = <no string> > ;
+
+< MBMS Information > ::=
+ {
+ -- Pre-notifications
+ < MBMS Sessions List : < MBMS Sessions List IE > >
+ -- Notifications: listed per MBMS Channel Parameters
+ { 1 < MBMS Channel Parameters : < MBMS Channel Parameters IE > >
+ < MBMS Sessions List : < MBMS Sessions List IE > > } ** 0 }
+ ! < Ignore : bit (*) = <no string> > ;
+
+< Page info struct > ::=
+ < PAGING CAUSE : bit (3) >
+ < CN DOMAIN IDENTITY : bit (2) >
+ { 0 | 1 < Paging Record Type Identifier : bit (2) > }; -- This field Is only included if the MS is paged using a G-RNTI
+
+< ETWS Primary Notification struct> ::=
+ {0 -- First segment of ETWS Primary Notification, number of segments included
+ < Total No Of Segments For ETWS Primary Notification : bit (4) >
+ |1 -- Not first segment, segment number included
+ < Segment Number : bit (4) >
+ }
+ < PNI: bit (1) > -- identifier for segments belonging to one and the same ETWS Primary Notification message
+ < Length Of Segment : bit (7) > -- length of segment in bits
+ < ETWS Primary Notification Data : bit (val(Length of segment)) >;
+
+-- 11.2.11
+< Packet PDCH Release message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 1 < TIMESLOTS_AVAILABLE : bit (8) > }
+ < padding bits >
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+-- 11.2.12
+< Packet Polling Request message content > ::=
+ < PAGE_MODE : bit (2) >
+ { { 0 < Global TFI : < Global TFI IE > >
+ | 10 < TLLI / G-RNTI : bit (32) >
+ | 110 < TQI : bit (16) > }
+ { < TYPE_OF_ACK : bit (1) >
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-5 :
+ { 0 | 1 < G-RNTI extension : bit (4) > }
+ < padding bits > }
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Address information part error : bit (*) = < no string > > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+-- 11.2.13
+< Packet Power Control/Timing Advance message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 < Global TFI : < Global TFI IE > >
+ { 0 -- Message escape
+ { { 0 | 1 < Global Power Control Parameters : < Global Power Control Parameters IE >> }
+ { 0 < Global Packet Timing Advance : < Global Packet Timing Advance IE > >
+ < Power Control Parameters : < Power Control Parameters IE > >
+ | 1 { 0 < Global Packet Timing Advance : < Global Packet Timing Advance IE > >
+ | 1 < Power Control Parameters : < Power Control parameters IE > > } }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for R99
+ { 0 | 1 < Packet Extended Timing Advance : bit (2)> }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for REL-7
+ { 0 | 1 < Carrier Identification : bit (2) > }
+ < padding bits > } }
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Message escape : 1 bit (*) = <no string> > }
+ ! < Address information part error : bit (*) = < no string > > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+-- 11.2.14
+< Packet PRACH Parameters message content > ::=
+ < PAGE_MODE : bit (2) >
+ < PRACH Control Parameters : < PRACH Control Parameters IE > >
+ < padding bits >
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+-- 11.2.15
+< Packet Queueing Notification message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 111 < Packet Request Reference : < Packet Request Reference IE > >
+ { < TQI : bit (16) >
+ < padding bits >
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Address information part error : bit (*) = < no string > > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+-- 11.2.16
+< Packet Resource Request message content > ::=
+ { 0 | 1 < ACCESS_TYPE : bit (2) > }
+ { 0 < Global TFI : < Global TFI IE > >
+ | 1 < TLLI / G-RNTI : < TLLI / G-RNTI IE > > }
+ { 0 | 1 < MS Radio Access Capability 2 : < MS Radio Access Capability 2 IE > > }
+ < Channel Request Description : < Channel Request Description IE > >
+ { 0 | 1 < CHANGE_MARK : bit (2) > }
+ < C_VALUE : bit (6) >
+ { 0 | 1 < SIGN_VAR : bit (6) > }
+ { 0 | 1 < I_LEVEL_TN0 : bit (4) > }
+ { 0 | 1 < I_LEVEL_TN1 : bit (4) > }
+ { 0 | 1 < I_LEVEL_TN2 : bit (4) > }
+ { 0 | 1 < I_LEVEL_TN3 : bit (4) > }
+ { 0 | 1 < I_LEVEL_TN4 : bit (4) > }
+ { 0 | 1 < I_LEVEL_TN5 : bit (4) > }
+ { 0 | 1 < I_LEVEL_TN6 : bit (4) > }
+ { 0 | 1 < I_LEVEL_TN7 : bit (4) > }
+ { null | 0 bit** = <no string> -- Receiver backward compatible with earlier version
+ |1 -- Additional contents for Release 1999
+ { 0 | 1 < EGPRS BEP Link Quality Measurements :
+ < EGPRS BEP Link Quality Measurements IE >> }
+ { 0 | 1 < EGPRS Timeslot Link Quality Measurements :
+ < EGPRS Timeslot Link Quality Measurements IE >>}
+ { 0 | 1 < PFI: bit(7) > }
+ < ADDITIONAL MS RAC INFORMATION AVAILABLE : bit (1) >
+ < RETRANSMISSION OF PRR : bit (1) >
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-5
+ { 0 | 1 { 0 | 1 < G-RNTI extension : bit (4) > }
+ < Iu mode Channel Request Description : < Iu mode Channel Request Description IE > > }
+ { 0 | 1 < HFN_LSB : bit (1) > }
+ { null | 0 bit** = <no string> -- Receiver backward compatible with earlier version
+ |1 -- Additional contents for Release 6
+ { 0 | 1 < Extended Channel Request Description :
+ < Extended Channel Request Description IE > > }
+ { null | 0 bit** = <no string> -- Receiver backward compatible with earlier version
+ |1 -- Additional contents for Release 7
+ < EARLY_TBF_ESTABLISHMENT : bit (1) >
+ { 0 | 1 < EGPRS BEP Link Quality Measurements Type 2 :
+ < EGPRS BEP Link Quality Measurements Type 2 IE > > }
+ { 0 | 1 < EGPRS Timeslot Link Quality Measurements Type 2 :
+ <EGPRS Timeslot Link Quality Measurements Type 2 IE > > }
+ { null | 0 bit** = <no string> -- Receiver backward compatible with earlier version
+ |1 -- Additional contents for Release 10
+ < Low Access Priority Signalling : bit (1) >
+ < padding bits > } } } } };
+
+-- 11.2.17
+< Packet PSI Status message content > ::=
+ < GLOBAL_TFI : < Global TFI IE > >
+ < PBCCH_CHANGE_MARK : bit (3) >
+ < Received PSI Message List : < PSI Message List struct > >
+ < Received Unknown PSI Message List : < Unknown PSI Message List struct > >
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for REL-6 :
+ < PS_REL_REQ : bit >
+ < padding bits > } ;
+
+< PSI Message List struct > ::=
+ { 1 < MESSAGE_TYPE : bit (6) >
+ < PSIX_CHANGE_MARK : bit (2) >
+ { 0 | 1 < PSIX_COUNT : bit (4) >
+ < Instance bitmap : bit (val(PSIX_COUNT) + 1) > } } ** 0
+ < ADDITIONAL_MSG_TYPE : bit > ;
+
+< Unknown PSI Message List struct > ::=
+ { 1 < MESSAGE_TYPE : bit (6) > } ** 0
+ < ADDITIONAL_MSG_TYPE : bit > ;
+
+-- 11.2.17a
+< Packet Serving Cell Data message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 < Global TFI : < Global TFI IE > >
+ { < spare : bit (4) >
+ < CONTAINER_INDEX : bit (5) >
+ < CONTAINER : < Container repetition struct > >
+ < padding bits >
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Address information part error : bit (*) = < no string > > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+< Container repetition struct > ::=
+ {
+ { < PD : bit (3) >
+ < CD_LENGTH : { bit (5) exclude 00000 exclude 11111 } >
+ < CONTAINER_DATA : octet (val(CD_LENGTH)) > -- Final container segment. Next container follows.
+ | < PD : bit (3) >
+ < CD_LENGTH : { bit (5) == 11111 } >
+ < CONTAINER_DATA : octet ** > } ** -- Container continued in next message.
+ { < spare bit (3) > -- Repetition continues until:
+ < CD_LENGTH : { bit (5) == 00000 } > } -- A) val(CD_LENGTH) = 0 or
+ } // ; -- B) end of PSCD message.
+
+
+-- 11.2.17b
+< Packet SI Status message content > ::=
+ < GLOBAL_TFI : < Global TFI IE > >
+ < BCCH_CHANGE_MARK : bit (3) >
+ < Received SI Message List : < SI Message List struct > >
+ < Received Unknown SI Message List : < Unknown SI Message List struct > >
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for REL-6 :
+ < PSCSI_SUPPORT : bit >
+ < PS_REL_REQ : bit >
+ < padding bits > } ;
+
+< SI Message List struct > ::=
+ { 1 < SI_MESSAGE_TYPE : bit (8) >
+ { < MESS_REC : bit (2) == 00 > < null > -- Message type supported but not received
+ | < MESS_REC : bit (2) == 01 > < null > -- Message type supported and received, single instance
+ | < MESS_REC : bit (2) == 10 > -- Message type supported and partially received, multiple instances
+ < SIX_CHANGE_MARK : bit (3) > }
+ } ** 0
+ < ADDITIONAL_MSG_TYPE : bit > ;
+
+< Unknown SI Message List struct > ::=
+ { 1 < SI_MESSAGE_TYPE : bit (8) > } ** 0
+ < ADDITIONAL_MSG_TYPE : bit > ;
+
+-- 11.2.17c
+< Packet Serving Cell SI message content > ::=
+ < PAGE_MODE : bit (2) >
+ < CONTAINER_DATA : octet ** >
+ < padding bits >z
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+-- 11.2.18
+< PSI1 message content > ::=
+ < PAGE_MODE : bit (2) >
+ < PBCCH_CHANGE_MARK : bit (3) >
+ < PSI_CHANGE_FIELD : bit (4) >
+ < PSI1_REPEAT_PERIOD : bit (4) >
+ < PSI_COUNT_LR : bit (6) >
+ { 0 | 1 < PSI_COUNT_HR : bit (4) > }
+ < MEASUREMENT_ORDER: bit (1) >
+ < GPRS Cell Options : < GPRS Cell Options IE > >
+ < PRACH Control Parameters : < PRACH Control Parameters IE > >
+ < PCCCH Organization Parameters : < PCCCH Organization Parameters IE > >
+ < Global Power Control Parameters : < Global Power Control Parameters IE > >
+ < PSI_STATUS_IND : bit >
+ { null | 0 -- Receiver backward compatible with earlier release
+ |1 -- Additions in release 99 :
+ < MSCR : bit >
+ < SGSNR : bit >
+ < BAND_INDICATOR : bit >
+ { null | 0 -- Receiver backward compatible with earlier release
+ |1 -- Additions in Rel-6 :
+ { 0 | 1 < LB_MS_TXPWR_MAX_CCH : bit (5) > }
+ < padding bits > } }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+-- 11.2.19
+< PSI2 message content > ::=
+ < PAGE_MODE : bit (2) >
+ < PSI2_CHANGE_MARK : bit (2) >
+ < PSI2_INDEX : bit (3) >
+ < PSI2_COUNT : bit (3) >
+ { { 0 | 1 < Cell Identification : < Cell Identification IE > > }
+ { 0 | 1 < Non GPRS Cell Options : < Non GPRS Cell Options IE > > }
+ < Reference Frequency Lists : < Reference Frequency Lists struct > >
+ < Cell Allocation : < Cell Allocation Lists struct > >
+ < GPRS Mobile Allocations : < GPRS Mobile Allocations Lists struct > >
+ < PCCCH Description : < PCCCH Description Lists struct > >
+ { null | 0 bit** = < no string >
+ |1 -- Release 1999 additions:
+ { 0 | 1 < COMPACT Control Information : < COMPACT Control Info struct > > }
+ { 0 | 1 < Additional PSI Messages : < Additional PSI Messages struct > > }
+ < padding bits > } } // -- truncation at end of message allowed, bits '0' assumed
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< Reference Frequency Lists struct > ::= { 1 < Reference Frequency struct > } ** 0;
+
+< Reference Frequency struct >::=
+ < RFL_NUMBER : bit (4) >
+ < Length of RFL contents : bit (4) >
+ < RFL contents : octet (val(Length of RFL contents) + 3) > ;
+
+< Cell Allocation Lists struct > ::= { 1 < Cell Allocation struct > } ** 0 ;
+
+< Cell Allocation struct > ::=
+ < RFL_NUMBER : bit (4) > ;
+
+< GPRS Mobile Allocations Lists struct > ::= { 1 < GPRS Mobile Allocations struct > } ** 0 ;
+
+< GPRS Mobile Allocations struct > ::=
+ < MA_NUMBER : bit (4) >
+
+ < GPRS Mobile Allocation : < GPRS Mobile Allocation IE > > ;
+< PCCCH Description Lists struct > ::= { 1 < PCCCH Description struct > } ** 0 ;
+
+< PCCCH Description struct > ::=
+ < TSC : bit (3) >
+ { 0 < Non-hopping PCCCH carriers : < Non-Hopping PCCCH Carriers Lists struct > >
+ | 1 < MA_NUMBER : bit (4) >
+ < Hopping PCCCH carriers : < Hopping PCCCH Carriers Lists struct > > } ;
+
+< Non-hopping PCCCH Carriers Lists struct > ::= { 1 < Non-Hopping PCCCH Carriers struct > } ** 0 ;
+
+< Non-Hopping PCCCH Carriers struct > ::=
+ < ARFCN : bit (10) >
+ < TIMESLOT_ALLOCATION : bit (8) > ;
+
+< Hopping PCCCH Carriers Lists struct > ::= { 1< Hopping PCCCH Carriers struct > } ** 0 ;
+
+< Hopping PCCCH Carriers struct > ::=
+ < MAIO : bit (6) >
+ < TIMESLOT_ALLOCATION : bit (8) > ;
+
+< COMPACT Control Info struct > ::=
+ < Large Cell Operation : bit (1) >
+ { 0 | 1 < Number of Idle Blocks : < Number of Idle Blocks struct > > }
+ { 0 | 1 < N_CCCH_NH : bit (4) > } ;
+
+<Number of Idle Blocks struct> ::=
+{ 0 | 1 { < NIB_CCCH_0 : bit (4) > } }
+{ 0 | 1 { < NIB_CCCH_1 : bit (4) > } }
+{ 0 | 1 { < NIB_CCCH_2 : bit (4) > } }
+{ 0 | 1 { < NIB_CCCH_3 : bit (4) > } } ;
+
+< Additional PSI Messages struct > ::=
+ < NON_GSM_INFORMATION : bit(2) >
+ < PSI8_BROADCAST : bit (1) >
+ < PSI3ter_BROADCAST : bit (1) >
+ < PSI3quater_BROADCAST : bit (1) > ;
+
+-- 11.2.20
+< PSI3 message content > ::=
+ < PAGE_MODE : bit (2) >
+ < PSI3_CHANGE_MARK : bit (2) >
+ < PSI3_BIS_COUNT : bit (4) >
+ < Serving Cell parameters : < Serving Cell params struct > >
+ < General Cell Selection parameter : < Gen Cell Sel struct > >
+ < Neighbour Cell parameters : { 1 < Neighbour Cell params struct > } ** 0 >
+ { null | 0 bit** = < no string >
+ |1 -- Release 1998 additions:
+ < Serving Cell LSA ID information : < LSA ID information struct > >
+ { 0 | 1 < LSA Parameters :< LSA Parameters IE >> }
+ { null | 0 bit** = < no string >
+ |1 -- Release 1999 additions:
+ 00 -- The values '01', '10' and '11' were allocated in an earlier version of the protocol
+ -- and shall not be used.
+ { 0 | 1 < COMPACT Information : < COMPACT Information struct > > }
+ 0 -- The value '1' was used in an earlier version of the protocol and shall not be used.
+ { null | 0 bit** = < no string >
+ |1 -- Rel-4 additions:
+ { 0 | 1 < CCN Support Description : < CCN Support Description struct >> }
+ { null | 0 bit** = < no string >
+ |1 -- Rel-5 additions:
+ < CELL BAR QUALIFY 3 : bit (2) > -- Serving cell barring status.
+ < Iu Mode Neighbour Cell Parameters : { 1 < Iu Mode Neighbour Cell params struct > } ** 0 >
+ --Supplementary information for dual Iu mode and A/Gb mode capable cells
+ < Iu mode Only Neighbour Cell Parameters :
+ { 1 < Iu mode Only Neighbour Cell params struct > } ** 0 >
+ < padding bits > } } } }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< Serving Cell params struct > ::=
+ < CELL_BAR_ACCESS_2 : bit >
+ < EXC_ACC : bit >
+ < GPRS_RXLEV_ACCESS_MIN : bit (6) >
+ < GPRS_MS_TXPWR_MAX_CCH : bit (5) >
+ { 0 | 1 < HCS Serving Cell parameters : < HCS struct > > }
+ < MULTIBAND_REPORTING : bit (2) >;
+
+< HCS struct > ::=
+ < PRIORITY_CLASS : bit (3) >
+ < HCS_THR : bit (5) > ;
+
+< Gen Cell Sel struct > ::=
+ < GPRS_CELL_RESELECT_HYSTERESIS : bit (3) >
+ < C31_HYST : bit (1) >
+ < C32_QUAL: bit (1) >
+ 1 -- The value '0' was used in an earlier version of the protocol and shall not be used.
+ { 0 | 1 < T_RESEL : bit (3) > }
+ { 0 | 1 < RA_RESELECT_HYSTERESIS : bit (3) > } ;
+
+< Neighbour Cell params struct > ::=
+ < START_FREQUENCY : bit (10) >
+ < Cell selection params : < Cell Selection struct > >
+ < NR_OF_REMAINING_CELLS : bit (4) >
+ < FREQ_DIFF_LENGTH : bit (3) >
+ { < FREQUENCY_DIFF : bit (1 + val(FREQ_DIFF_LENGTH)) >
+ < Cell Selection Params : <Cell Selection struct>> } * (val(NR_OF_REMAINING_CELLS)) ;
+
+< Cell Selection struct > ::=
+ < BSIC : bit (6) >
+ < CELL_BAR_ACCESS_2 : bit >
+ < EXC_ACC : bit >
+ < SAME_RA_AS_SERVING_CELL : bit (1) >
+ { 0 | 1 < GPRS_RXLEV_ACCESS_MIN : bit (6) >
+ < GPRS_MS_TXPWR_MAX_CCH : bit (5) > }
+ { 0 | 1 < GPRS_TEMPORARY_OFFSET : bit (3) >
+ < GPRS_PENALTY_TIME : bit (5) > }
+ { 0 | 1 < GPRS_RESELECT_OFFSET : bit (5) > }
+ { 0 | 1 < HCS params : < HCS struct > > }
+ { 0 | 1 < SI13 PBCCH Location : < SI13 PBCCH Location struct > > } ;
+
+< SI13 PBCCH Location struct > ::=
+ { 0 < SI13_LOCATION : bit (1) >
+ | 1 < PBCCH_LOCATION : bit (2) >
+ < PSI1_REPEAT_PERIOD : bit (4) > } ;
+
+< LSA ID information struct > ::=
+ { 1 { 0 < LSA_ID : bit (24) >
+ | 1 < ShortLSA_ID : bit (10) > } } ** 0 ;
+
+< COMPACT Information struct > ::=
+ < Cell Identification : Cell identification IE>
+ { 1 < COMPACT Neighbour Cell params struct > } ** 0 ;
+
+< COMPACT Neighbour Cell params struct > ::=
+ < START_FREQUENCY : bit (10) >
+ < COMPACT Cell selection params : < COMPACT Cell Selection struct > >
+ < NR_OF_REMAINING_CELLS : bit (4) >
+ < FREQ_DIFF_LENGTH : bit (3) >
+ { < FREQUENCY_DIFF : bit (1 + val(FREQ_DIFF_LENGTH)) >
+ < COMPACT Cell selection params :
+ < COMPACT Cell Selection struct > > } * (val(NR_OF_REMAINING_CELLS));
+
+< COMPACT Cell Selection struct > ::=
+ < BSIC : bit (6) >
+ < CELL_BAR_ACCESS_2 : bit >
+ < EXC_ACC : bit >
+ < SAME_RA_AS_SERVING_CELL : bit (1) >
+ { 0 | 1 < GPRS_RXLEV_ACCESS_MIN : bit (6) >
+ < GPRS_MS_TXPWR_MAX_CCH : bit (5) > }
+ { 0 | 1 < GPRS_TEMPORARY_OFFSET : bit (3) >
+ < GPRS_PENALTY_TIME : bit (5) > }
+ { 0 | 1 < GPRS_RESELECT_OFFSET : bit (5) > }
+ { 0 | 1 < HCS params : < HCS struct > > }
+ { 0 | 1 < TIME_GROUP : bit (2) > }
+ { 0 | 1 < GUAR_CONSTANT_PWR_BLKS : bit (2) >} ;
+
+< CCN Support Description struct > ::=
+< Number_Cells : bit (7) >
+< CCN_SUPPORTED : bit > * (val(Number_Cells)) ;
+< Iu Mode Neighbour Cell Params struct > ::=
+ < NR_OF_REMAINING_CELLS : bit (4) >
+ { 0 | 1 < Iu Mode Cell Selection Params :
+ <Iu Mode Cell Selection struct>> } * (val(NR_OF_REMAINING_CELLS));
+
+< Iu Mode Cell Selection struct > ::=
+ < CELL BAR QUALIFY 3 : bit (2) >
+ { 0 | 1 < SI13Alt PBCCH Location: < SI13 PBCCH Location struct > > };
+
+< Iu mode Only Neighbour Cell params struct > ::=
+ < START_FREQUENCY : bit (10) >
+ < Iu mode Only Cell selection params : < Iu mode Only Cell Selection struct > >
+ < NR_OF_REMAINING_CELLS : bit (4) >
+ < FREQ_DIFF_LENGTH : bit (3) >
+ { < FREQUENCY_DIFF : bit (1 + val(FREQ_DIFF_LENGTH)) >
+ < Iu mode Only Cell selection params :
+ < Iu mode Only Cell Selection struct > >} * (val(NR_OF_REMAINING_CELLS));
+
+< Iu Mode Only Cell Selection struct > ::=
+ < BSIC : bit (6) >
+ < CELL BAR QUALIFY 3 : bit (2) >
+ < SAME_RA_AS_SERVING_CELL : bit (1) >
+ { 0 | 1 < GPRS_RXLEV_ACCESS_MIN : bit (6) >
+ < GPRS_MS_TXPWR_MAX_CCH : bit (5) > }
+ { 0 | 1 < GPRS_TEMPORARY_OFFSET : bit (3) >
+ < GPRS_PENALTY_TIME : bit (5) > }
+ { 0 | 1 < GPRS_RESELECT_OFFSET : bit (5) > }
+ { 0 | 1 < HCS params : < HCS struct > > }
+ { 0 | 1 < SI13Alt PBCCH Location : < SI13 PBCCH Location struct > >};
+
+-- 11.2.21b
+< PSI3 quater message content > ::=
+ < PAGE_MODE : bit (2) >
+ < PSI3_CHANGE_MARK : bit (2) >
+ < PSI3_QUATER_INDEX : bit (4) >
+ < PSI3_QUATER_COUNT : bit (4) >
+ { { 0 | 1 < GPRS REP_PRIORITY Description : < GPRS REP PRIORITY Description struct >> }
+ { 0 | 1 < 3G Neighbour Cells Description : < 3G Neighbour Cells Description struct >> }
+ { 0 | 1 < 3G MEASUREMENT Parameters Description :
+ < 3G MEASUREMENT PARAMETERS Description struct >> }
+ { 0 | 1 < 3G Initial Dedicated Mode Reporting Description :
+ < 3G Initial Dedicated Mode Reporting Description struct >> }
+ { null | 0 bit** < no string> -- Receiver compatible with earlier release
+ |1 -- Additions in Release 5:
+ { 0 | 1 < GPRS 3G Additional Measurement Parameters Description :
+ < GPRS 3G Additional Measurement Parameters Description struct >> }
+ { 0 | 1 < GPRS 3G Additional Measurement Parameters Description 2:
+ < GPRS 3G Additional Measurement Parameters Description 2 struct >> }
+ { null | 0 bit** = < no string > --Receiver compatible with earlier release
+ |1 --Additions in Release 6:
+ < 3G_CCN_ACTIVE : bit >
+ < padding bits > } } }// -- truncation at end of message allowed, bits '0' assumed
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< GPRS REP PRIORITY Description struct > ::=
+ < Number_Cells : bit(7) >
+ { < REP_PRIORITY : bit > } * (val(Number_Cells)) ;
+
+< 3G Neighbour Cell Description struct > ::=
+ { 0 | 1 < Index_Start_3G : bit (7) > }
+ { 0 | 1 < Absolute_Index_Start_EMR : bit (7) > }
+ { 0 | 1 < UTRAN FDD Description : < UTRAN FDD Description struct >> }
+ { 0 | 1 < UTRAN TDD Description : < UTRAN TDD Description struct >> } ;
+
+< UTRAN FDD Description struct > ::=
+ { 0 | 1 < Bandwidth_FDD : bit (3) > }
+ { 1 < Repeated UTRAN FDD Neighbour Cells : < Repeated UTRAN FDD Neighbour Cells struct >> } ** 0 ;
+
+< Repeated UTRAN FDD Neighbour Cells struct > ::=
+ 0 < FDD-ARFCN : bit (14) > -- The value "1" was used in an earlier
+ -- version of the protocol and shall not be used.
+ < FDD_Indic0 : bit >
+ < NR_OF_FDD_CELLS : bit (5) >
+ < FDD _CELL_INFORMATION Field : bit(p(NR_OF_FDD_CELLS)) > ;
+ -- p(x) defined in table 11.2.9b.2.a/3GPP TS 44.060
+< UTRAN TDD Description struct > ::=
+ { 0 | 1 < Bandwidth_TDD : bit (3) > }
+ { 1 < Repeated UTRAN TDD Neighbour Cells : < Repeated UTRAN TDD Neighbour Cells struct >> } ** 0 ;
+
+< Repeated UTRAN TDD Neighbour Cells struct > ::=
+ 0 < TDD-ARFCN : bit (14) > -- The value "1" was used in an earlier
+ -- version of the protocol and shall not be used.
+ < TDD_Indic0 : bit >
+ < NR_OF_TDD_CELLS : bit (5) >
+ < TDD_CELL_INFORMATION Field : bit(q(NR_OF_TDD_CELLS)) > ;
+ -- q(x) defined in table 11.2.9b.2.b/3GPP TS 44.060
+< 3G MEASUREMENT PARAMETERS Description struct > ::=
+ < Qsearch_P : bit (4) >
+ { 1 ! < Ignore : bit = < no string >> } -- this bit shall be ignored by the receiver
+ -- for backward compatibility with earlier releases
+ { 0 | 1 < FDD_GPRS_Qoffset : bit (4) > -- FDD information
+ < FDD_Qmin : bit (3) > }
+ { 0 | 1 < TDD_GPRS_Qoffset : bit (4) > } ; -- TDD information
+
+< 3G Initial Dedicated Mode Reporting Description struct > ::=
+ < 3G_BA_IND : bit >
+ < Qsearch_I : bit (4) >
+ < Qsearch_C_Initial : bit (1) >
+ { 0 | 1 < FDD_Qoffset : bit (4) > -- FDD information
+ < FDD_REP_QUANT : bit (1) >
+ < FDD_MULTIRAT_REPORTING : bit (2) > }
+ { 0 | 1 < TDD_Qoffset : bit (4) > -- TDD information
+ < TDD_MULTIRAT_REPORTING : bit (2) > } ;
+
+< GPRS 3G Additional Measurement Parameters Description struct > ::=
+ < FDD_Qmin_Offset : bit (3) > -- FDD information
+ < FDD_RSCPmin : bit (4) > ;
+
+< GPRS 3G Additional Measurement Parameters Description 2 struct > ::=
+ { 0 | 1 < FDD_REPORTING_THRESHOLD_2 : bit (6) > } ; -- FDD information
+
+-- 11.2.23
+< PSI5 message content > ::=
+ < PAGE_MODE : bit (2) >
+ < PSI5_CHANGE_MARK : bit (2) >
+ < PSI5_INDEX : bit (3) >
+ < PSI5_COUNT : bit (3) >
+ { 0 | 1 < NC Measurement Parameters : < NC Measurement Parameters struct > > }
+ 0 -- The value '1' was allocated in an earlier version of the protocol and shall not be used.
+ { null | 0 bit** = <no string> -- Receiver backward compatible with earlier release
+ |1 -- Additional contents for R99
+ { 0 | 1 < ENH Reporting Parameters : < ENH Reporting Parameters struct >> }
+ { null | 0 bit** = <no string> -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-5:
+ { 0 | 1 < GPRS 3G Additional Measurement Parameters Description 2 :
+ < GPRS 3G Additional Measurement Parameters Description 2 struct >> }
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-7 :
+ { 0 | 1 < 700_REPORTING_OFFSET : bit (3) >
+ < 700_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < 810_REPORTING_OFFSET : bit (3) >
+ < 810_REPORTING_THRESHOLD : bit (3) > }
+ < padding bits > } } }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< NC Measurement Parameters struct > ::=
+ < NETWORK_CONTROL_ORDER : bit (2) >
+ { 0 | 1 < NC_ NON_DRX_PERIOD : bit (3) >
+ < NC_REPORTING_PERIOD_I : bit (3) >
+ < NC_REPORTING_PERIOD_T : bit (3) > } ;
+
+< ENH Reporting parameters struct > ::=
+ < Report_Type : bit >
+ < REPORTING_RATE : bit >
+ < INVALID_BSIC_REPORTING : bit >
+ { 0 | 1 < NCC_PERMITTED : bit (8) > }
+ { 0 | 1 < GPRS MEASUREMENT Parameters Description :
+ < GPRS MEASUREMENT Parameters Description struct >> }
+ { 0 | 1 < GPRS 3G MEASUREMENT Parameters Description :
+ < GPRS 3G MEASUREMENT Parameters Description struct>> } ;
+
+< GPRS MEASUREMENT PARAMETERS Description struct > ::=
+ { 0 | 1 < MULTIBAND_REPORTING : bit (2) > }
+ { 0 | 1 < SERVING_BAND_REPORTING : bit (2) > }
+ { 0 | 1 < SCALE_ORD : bit (2) > }
+ { 0 | 1 < 900_REPORTING_OFFSET : bit (3) >
+ < 900_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < 1800_REPORTING_OFFSET : bit (3) >
+ < 1800_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < 400_REPORTING_OFFSET : bit (3) >
+ < 400_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < 1900_REPORTING_OFFSET : bit (3) >
+ < 1900_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < 850_REPORTING_OFFSET : bit (3) >
+ < 850_REPORTING_THRESHOLD : bit (3) > } ;
+
+< GPRS 3G MEASUREMENT PARAMETERS Description struct > ::=
+ { 0 | 1 < FDD_REP_QUANT : bit > -- FDD Parameters
+ < FDD_MULTIRAT_REPORTING : bit (2) > }
+ { 0 | 1 < FDD_REPORTING_OFFSET : bit (3) >
+ < FDD_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < TDD_MULTIRAT_REPORTING : bit (2) > } -- TDD Parameters
+ { 0 | 1 < TDD_REPORTING_OFFSET : bit (3) >
+ < TDD_REPORTING_THRESHOLD : bit (3) > } ;
+
+< GPRS 3G Additional Measurement Parameters 2 struct > ::=
+ { 0 | 1 < FDD_REPORTING_THRESHOLD_2 : bit (6) > } ; -- FDD Parameters
+
+-- 11.2.23a
+< PSI6 message content > ::=
+ < PAGE_MODE : bit (2) >
+ < PSI6_CHANGE_MARK : bit (2) >
+ < PSI6_INDEX : bit (3) >
+ < PSI6_COUNT : bit (3) >
+ { < NonGSM Message : < Non-GSM Message struct > > **
+ -- The Non-GSM Message struct is repeated until:
+ { < spare bit > * 3 00000 } -- A) val(NR_OF_CONTAINER_OCTETS) = 0, or
+ < padding bits > } // -- B) the PSI message is fully used
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< NonGSM Message struct > ::=
+ < NonGSM Protocol Discriminator : bit(3) >
+ < NR_OF_CONTAINER_OCTETS : bit(5) exclude 00000 >
+ { < CONTAINER : bit(8) > } * (val(NR_OF_CONTAINER_OCTETS)) ;
+
+-- 11.2.24
+< PSI8 message content > ::=
+ < PAGE_MODE : bit (2) >
+ < PSI8_CHANGE_MARK : bit (2) >
+ < PSI8_INDEX : bit (3) >
+ < PSI8_COUNT : bit (3) >
+ { 0 | 1 < CBCH Channel Description : < CBCH Channel Description struct > > }
+ { null | 0 bit** = < no string >
+ |1 -- Release 4 additions:
+ { 0 | 1 < Dynamic ARFCN Mapping Description : < Dynamic ARFCN Mapping Description struct > > }
+ < padding bits > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< CBCH Channel Description struct > ::=
+ < Channel type and TDMA offset : bit (5) >
+ < TN : bit (3) >
+ < Frequency Parameters : < Frequency Parameters IE > > ;
+
+< Dynamic ARFCN Mapping Description struct > ::=
+ { 0 | 1 < DM_CHANGE_MARK : bit (4) > }
+ { 1 < DYNAMIC ARFCN MAPPING > } ** 0 ;
+
+< DYNAMIC ARFCN MAPPING >::=
+ < GSM_Band : bit (4) >
+ < ARFCN_FIRST : bit (10) > -- Dynamic ARFCN mapping parameters
+ < BAND_OFFSET: bit (10) >
+ < ARFCN_RANGE : bit (7) > ;
+
+-- 11.2.25
+< PSI13 message content > ::=
+ < PAGE_MODE : bit (2) >
+ < BCCH_CHANGE_MARK : bit (3) >
+ < SI_CHANGE_FIELD : bit (4) >
+ { 0 | 1 < SI13_CHANGE_MARK : bit (2) >
+ < GPRS Mobile Allocation : < GPRS Mobile Allocation IE > > }
+ { 0 -- PBCCH not present in cell (This shall always be indicated. See sub-clause 1.6):
+ < RAC : bit (8) >
+ < SPGC_CCCH_SUP : bit >
+ < PRIORITY_ACCESS_THR : bit (3) >
+ < NETWORK_CONTROL_ORDER : bit (2) >
+ < GPRS Cell Options : < GPRS Cell Options IE > >
+ < GPRS Power Control Parameters : < GPRS Power Control Parameters IE > >
+ |1 -- PBCCH present in cell (This shall never be indicated. See sub-clause 1.6):
+ < PSI1_REPEAT_PERIOD : bit (4) >
+ < PBCCH Description : < PBCCH Description struct > > }
+ { null | 0 bit** = < no string > -- Receiver compatible with ealier release
+ |1 -- Additions in release 99 :
+ < SGSNR : bit >
+ { null | 0 bit** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in release R4 :
+ < SI_STATUS_IND : bit >
+ { null | 0 bit** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-6:
+ { 0 | 1 < LB_MS_TXPWR_MAX_CCH : bit (5) > }
+ < SI2n_SUPPORT: bit (2) >
+ < padding bits > } } }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< PBCCH Description struct > ::=
+ < Pb : bit (4) >
+ < TSC : bit (3) >
+ < TN : bit (3) >
+ { 0 -- default to BCCH carrier
+ | 10 < ARFCN : bit (10) >
+ | 11 < MAIO : bit (6) > } ;
+
+-- 11.2.25a
+< PSI14 message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 < CCCH Access Information : < CCCH Access Information struct >> -- This information shall always be
+included. See sub-clause 1.6.
+ | 1 < PBCCH Description : < PBCCH Description struct 2 >> -- This information shall never be included. See
+sub-clause 1.6.
+ < padding bits > }
+ ! < Distribution part error : bit (*) = < no string >> ;
+
+< CCCH Access Information struct > ::=
+ < BCCH_CHANGE_MARK : bit (3) >
+ { 0 | 1 < SI13_CHANGE_MARK : bit (2) >
+ < SI13 Mobile Allocation : < GPRS Mobile Allocation IE >> }
+ < SPGC_CCCH_SUP : bit >
+ < PRIORITY_ACCESS_THR : bit (3) >
+ < NETWORK_CONTROL_ORDER : bit (2) >
+ < GPRS Cell Options : < GPRS Cell Options IE >>
+ < GPRS Power Control Parameters : < GPRS Power Control Parameters struct >>
+ < SGSNR : bit >
+ { null | 0 bit ** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Dual Transfer Mode
+ 0 -- compatible with earlier version
+ < RAC : bit (8) >
+ < SI_STATUS_IND : bit >
+ { null | 0 bit ** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-6
+ { 0 | 1 < LB_MS_TXPWR_MAX_CCH : bit (5) > }
+ < SI2n_SUPPORT : bit (2) >
+ }
+ };
+
+< PBCCH Description struct 2 > ::=
+ < PSI1_REPEAT_PERIOD : bit (4) >
+ < Pb : bit (4) >
+ < TN : bit (3) >
+ < PBCCH Frequency Description : < Frequency Parameters IE >>
+ { null | 0 bit ** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Dual Transfer Mode
+ 1 -- compatible with earlier version
+ < PSI_CHANGED_IND : bit >
+ };
+
+-- 11.2.25b
+< PSI15 message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 | 1 < UTRAN Frequency List : < UTRAN Frequency List Description struct >> }
+ < padding bits >
+ ! < Distribution part error : bit (*) = < no string >> ;
+
+< UTRAN Frequency List Description struct > ::=
+ { 1 < FDD_ARFCN : bit (14) > } ** 0 -- FDD frequencies
+ { 1 < TDD_ARFCN : bit (14) > } ** 0 ; -- TDD frequencies
+
+-- 11.2.25c
+< PSI16 message content > ::=
+ < PAGE_MODE : bit (2) >
+ < PSI16_CHANGE_MARK : bit (2) >
+ < PSI16_INDEX : bit (3) >
+ < PSI16_COUNT : bit (3) >
+ < GRA_ID_LIST : < GRA ID struct > >
+ < Iu_MODE_NMO_SUPPORT : bit (1) >
+ < CN_DOMAIN_LIST : bit (2) >
+ { < CN_DOMAIN_IDENTITY : < CN Domain Identity IE > >
+ < CN DOMAIN SPECIFIC DRX CYCLE LENGTH COEFFICIENT :
+ < CN Domain Specific DRX Cycle Length Coefficient IE > >
+ } * (1+val(CN_DOMAIN_LIST))
+ { 0 | 1 < 3G_LAC : bit (16) > }
+ { 0 | 1 < 3G_RAC : bit (8) > }
+ { 0 | 1 < GRA_AND CELL UPDATE TIMER : bit (3) > }
+ < padding bits >
+ ! < Distribution part error : bit (*) = < no string >> ;
+
+< GRA ID struct > ::=
+ < NUMBER_OF_GRA_IDs : bit (3) >
+ { < GRA_ID : bit (16) > } * (1 + val(NUMBER_OF_GRA_IDs));
+
+-- 11.2.26
+< Packet TBF Release message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 < GLOBAL_TFI : Global TFI IE >
+ { < UPLINK_RELEASE : bit (1) >
+ < DOWNLINK_RELEASE : bit (1) >
+ < TBF_RELEASE_CAUSE : bit (4) = { 0000 | 0010 } >
+ < padding bits >
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Address information part error : bit (*) = < no string > > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+-- 11.2.28
+< Packet Uplink Ack/Nack message content > ::=
+ < PAGE MODE : bit (2) >
+ { 00 < UPLINK_TFI : bit (5) >
+ {0 -- Message escape
+ { < CHANNEL_CODING_COMMAND : bit (2) >
+ < Ack/Nack Description : < Ack/Nack Description IE > >
+ { 0 | 1 < CONTENTION_RESOLUTION_TLLI : bit (32) > }
+ { 0 | 1 < Packet Timing Advance : < Packet Timing Advance IE > > }
+ { 0 | 1 < Power Control Parameters : < Power Control Parameters IE > > }
+ { 0 | 1 < Extension Bits : Extension Bits IE > } -- sub-clause 12.26
+ 0 -- The value '1' was allocated in an earlier version of the protocol and shall not be used.
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for R99
+ { 0 | 1 <Packet Extended Timing Advance : bit (2) >}
+ < TBF_EST : bit (1)>
+ { null | 0 bit** = <no string> -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-5
+ { 0 | 1 < CONTENTION_RESOLUTION Identifier extension : bit (4) > }
+ { 0 | 1 < RB Id : bit (5) > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-10
+ {0|1 -- DTR Information
+ < CI_DTR : bit (1) >
+ < TN_PDCH_pair_DTR : bit (3) >
+ < DTR Blks : bit (2) > }
+ < padding bits > } }
+ }
+ }
+ ! < Non-distribution part error : bit (*) = < no string > >
+ }
+ |1 -- Message escape bit used to define EGPRS message contents
+ { 00
+ { < EGPRS Channel Coding Command : < EGPRS Modulation and Coding Scheme IE >>
+ < RESEGMENT : bit (1) >
+ < PRE_EMPTIVE_TRANSMISSION : bit (1) >
+ < PRR RETRANSMISSION REQUEST : bit (1) >
+ < ARAC RETRANSMISSION REQUEST : bit (1) >
+ { 0 | 1 < CONTENTION_RESOLUTION_TLLI : bit (32) > }
+ < TBF_EST : bit (1) >
+ { 0 | 1 < Packet Timing Advance : < Packet Timing Advance IE > > }
+ { 0 | 1 < Packet Extended Timing Advance : bit (2) > }
+ { 0 | 1 < Power Control Parameters : < Power Control Parameters IE > > }
+ { 0 | 1 < Extension Bits : Extension Bits IE > } -- sub-clause 12.26
+ { < EGPRS Ack/Nack Description : < EGPRS Ack/Nack Description IE > >
+ 0 -- The value '1' was allocated in an earlier version of the protocol and shall not be used.
+ } //
+ { null | 0 bit** = <no string> -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-5
+ { 0 | 1 < CONTENTION_RESOLUTION Identifier extension : bit (4) > }
+ { 0 | 1 < RB Id : bit (5) > }
+ < padding bits > }
+ ! < Non-distribution part error : bit (*) = <no string> > }
+ ! < Message escape : { 01 | 10 | 11 } bit (*) = <no string> > } -- Extended for future changes
+ ! < Address information part error : bit (*) = <no string> > }
+ ! < Distribution part error : bit (*) = <no string> > ;
+
+-- 11.2.28a
+< Packet DBPSCH Uplink Ack/Nack message content > ::=
+ { < MESSAGE_TYPE : bit (6) == 001001 >
+ < RB Id : bit (5) >
+ { 0 | 1 < CONTENTION_RESOLUTION_TLLI : bit (32) >
+ { 0 | 1 < G-RNTI extension : bit (4) > } }
+ { 0 -- TCH TBF mode
+ { 0 -- All data blocks acknowledged, no retransmission requested
+ | 1 < STARTING_SEQUENCE_NUMBER : bit (8) >
+ < RECEIVED_BLOCK_BITMAP : bit (128) > }
+ | 1 -- DCCH TBF mode
+ { 0 - All data blocks acknowledged, no retransmission requested
+ | 1 < STARTING_SEQUENCE_NUMBER : bit (4) >
+ < RECEIVED_BLOCK_BITMAP : bit (8) > } }
+ < padding bits >
+ ! < DBPSCH message part error : bit (*) = < no string > > } ;
+
+-- 11.2.28b
+< Packet DBPSCH Uplink Ack/Nack message content > ::=
+ { < MESSAGE_TYPE : bit (6) == 001001 > -- The same message type as for Packet DBPSCH Uplink Ack/Nack is
+ -- used since these two messages are mutually exclusive.
+ < RB Id : bit (5) >
+ {0 -- UDCH TBF mode
+ {0 -- All data blocks acknowledged, no retransmission requested
+ | 1 < FLO Ack/Nack Description : < FLO Ack/Nack Description IE > > }
+ |1 -- CDCH TBF mode
+ {0 -- All data blocks acknowledged, no retransmission requested
+ | 1 < STARTING_SEQUENCE_NUMBER : bit (4) >
+ < RECEIVED_BLOCK_BITMAP : bit (8) > } }
+ < padding bits >
+ ! < DBPSCH message part error : bit (*) = < no string > > } ;
+
+-- 11.2.29
+< Packet Uplink Assignment message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 | 1 <PERSISTENCE_LEVEL : bit (4) > * 4 }
+ { { 0 < Global TFI : < Global TFI IE > >
+ | 10 < TLLI / G-RNTI : bit (32) >
+ | 110 < TQI : bit (16) >
+ | 111 < Packet Request Reference : < Packet Request Reference IE > > }
+ {0 -- Message escape
+ { < CHANNEL_CODING_COMMAND : bit (2) >
+ < TLLI_BLOCK_CHANNEL_CODING : bit (1) >
+ < Packet Timing Advance : < Packet Timing Advance IE > >
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ { 01 < Dynamic Allocation : < Dynamic Allocation struct > >
+ | 10 < Single Block Allocation : < Single Block Allocation struct > >
+ | 00 < extension >
+ } -- The value '11' was allocated in an earlier version of the protocol and shall not be used.
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for R99
+ { 0 | 1 < Packet Extended Timing Advance : bit (2) > }
+ { null | 0 bit** = <no string> -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-5
+ { 0 | 1 < G-RNTI extension : bit (4) > }
+ { 0 | 1 < RB Id : bit (5) > }
+ { null | 0 bit** = <no string> -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-6
+ { 0 | 1 < PFI : bit (7) > }
+ { 0 | 1 < RLC_MODE : bit (1) > }
+ < padding bits > } } }
+ ! < Non-distribution part error : bit (*) = < no string > > }
+|1 -- Message escape bit used to define EGPRS message contents
+ { 00 { { 0 | 1 < CONTENTION_RESOLUTION_TLLI : bit(32) > }
+ { 0 | 1 < COMPACT reduced MA : < COMPACT reduced MA IE >> }
+ < EGPRS Channel Coding Command : < EGPRS Modulation and Coding Scheme IE >>
+ < RESEGMENT : bit (1) >
+ < EGPRS Window Size : < EGPRS Window Size IE > >
+ { 0 | 1 < Access Technologies Request : Access Technologies Request struct >}
+ < ARAC RETRANSMISSION REQUEST : bit (1) >
+ < TLLI_BLOCK_CHANNEL_CODING : bit (1) >
+ { 0 | 1 < BEP_PERIOD2 : bit (4) > }
+ < Packet Timing Advance : < Packet Timing Advance IE > >
+ { 0 | 1 < Packet Extended Timing Advance : bit (2) > }
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ { 01 < Dynamic Allocation : < Dynamic Allocation struct > >
+ | 10 < Multi Block Allocation : < Multi Block Allocation struct > >
+ | 00 < extension >
+ } -- The value '11' was allocated in an earlier version of the protocol and shall not be used.
+ { null | 0 bit** = <no string> -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-5
+ { 0 | 1 < G-RNTI extension : bit (4) > }
+ { 0 | 1 < RB Id : bit (5) > }
+ { null | 0 bit** = <no string> -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-6
+ { 0 | 1 < PFI : bit (7) > }
+ { 0 | 1 < RLC_MODE : bit (1) > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-7
+ { 0 | 1 < NPM Transfer Time : bit (5) > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-9
+ < Indication of Upper Layer PDU Start for RLC UM: bit >
+ < Enhanced Flexible Timeslot Assignment : bit >
+ { 0 < EMST_NW_Capability : bit (1) > -- EMST is not used
+ | 1 < RLC Entity 2 : < RLC Entity Struct > > -- EMST is used
+ {0
+ | 1 < RLC Entity 3 : < RLC Entity Struct > > }
+ }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-10
+ { 1 < EMSR Additional PFCs 1 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 2 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 3 : < Additional PFCs struct > > } ** 0
+< padding bits > } } } } }
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ | 01 -- Message escape for dual carrier, RTTI, BTTI with FANR activated, EGPRS2
+ { { 0 | 1 < CONTENTION_RESOLUTION_TLLI : bit(32) > }
+ < RESEGMENT : bit (1) >
+ < Assignment Info : Assignment Info struct >
+ < EGPRS Window Size : < EGPRS Window Size IE > >
+ { 0 | 1 < Access Technologies Request : Access Technologies Request struct > }
+ < ARAC RETRANSMISSION REQUEST : bit (1) >
+ < TLLI_BLOCK_CHANNEL_CODING : bit (1) >
+ { 0 | 1 < BEP_PERIOD2 : bit (4) > }
+ < Packet Timing Advance : < Packet Timing Advance IE > >
+ { 0 | 1 < Packet Extended Timing Advance : bit (2) > }
+ {0 -- BTTI mode
+ |1 -- RTTI mode
+ < RTTI_USF_MODE : bit (1) >
+ < PDCH Pairs Description : < PDCH Pairs Description IE > > }
+ < Dynamic Allocation 2: < Dynamic Allocation 2 struct > >
+ < EGPRS Channel Coding Command : < EGPRS Modulation and Coding Scheme IE >>
+ { 00 -- No frequency parameters included
+ | 01 -- Legacy IEs used
+ { 0 | 1 < Frequency Parameters C1 : < Frequency Parameters IE > > }
+ { 0 | 1 < Frequency Parameters C2 : < Frequency Parameters IE > > }
+ | 10 -- Optimized Dual Carrier frequency parameters used
+ < Dual Carrier Frequency Parameters : < Dual Carrier Frequency Parameters IE > >
+ ! < Frequency Parameters error: { 11 } bit(*) = < no string> > -- reserved for future used
+ }
+ { 0 | 1 < PFI : bit (7) > }
+ { 0 | 1 < RLC_MODE : bit (1) > }
+ { 0 | 1 < NPM Transfer Time : bit (5) > }
+ { 0 | 1 -- '1' indicates that FANR is activated
+ {0 -- SSN-based encoding is selected
+ |1 -- Time-based encoding is selected
+ < REPORTED TIMESLOTS C1 : bit (8) > -- carrier 1 in Downlink Dual Carrier
+ --configuration
+ { 0 | 1 < REPORTED TIMESLOTS C2 : bit (8) > } -- carrier 2 in Downlink Dual Carrier
+ -- configuration
+ < TSH : bit (2) > } }
+ < Uplink EGPRS Level: < EGPRS Level IE > >
+ { 0 | 1 < Pulse Format: < Pulse Format IE > > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-9
+ < Indication of Upper Layer PDU Start for RLC UM: bit >
+ < Enhanced Flexible Timeslot Assignment : bit >
+ { 0 < EMST_NW_Capability : bit (1) > -- EMST is not used
+ | 1 < RLC Entity 2 : < RLC Entity Struct > > -- EMST is used
+ {0
+ | 1 < RLC Entity 3 : < RLC Entity Struct > > }
+ }
+ { 0 | 1 MTTI_UPLINK_ASSIGNMENT_C1 : bit (1) }
+ { 0 | 1 MTTI_UPLINK_ASSIGNMENT_C2 : bit (1) }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-10
+ { 1 < EMSR Additional PFCs 1 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 2 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 3 : < Additional PFCs struct > > } ** 0
+ < padding bits > } }
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Message escape : { 10 | 11 } bit (*) = <no string> > } } - Extended for future changes
+ ! < Address information part error : bit (*) = < no string > > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+<extension> ::= -- Future extension can be done by modifying this structure
+ null ;
+<Dynamic Allocation struct > ::=
+ < EXTENDED_DYNAMIC_ALLOCATION : bit (1) >
+ { 0 | 1 < P0 : bit (4) >
+ < PR_MODE : bit (1) > }
+ < USF_GRANULARITY : bit (1) >
+ { 0 | 1 < UPLINK_TFI_ASSIGNMENT : bit (5) > }
+ 0 -- The value '1' was allocated in an earlier version of the protocol and shall not be used.
+ { 0 | 1 < TBF Starting Time : < Starting Frame Number Description IE > > }
+ {0 -- Timeslot Allocation
+ { 0 | 1 < USF_TN0 : bit (3) > }
+ { 0 | 1 < USF_TN1 : bit (3) > }
+ { 0 | 1 < USF_TN2 : bit (3) > }
+ { 0 | 1 < USF_TN3 : bit (3) > }
+ { 0 | 1 < USF_TN4 : bit (3) > }
+ { 0 | 1 < USF_TN5 : bit (3) > }
+ { 0 | 1 < USF_TN6 : bit (3) > }
+ { 0 | 1 < USF_TN7 : bit (3) > }
+ |1 -- Timeslot Allocation with Power Control Parameters
+ < ALPHA : bit (4) >
+ { 0 | 1 < USF_TN0 : bit (3) >
+ < GAMMA_TN0 : bit (5) > }
+ { 0 | 1 < USF_TN1 : bit (3) >
+ < GAMMA_TN1 : bit (5) > }
+ { 0 | 1 < USF_TN2 : bit (3) >
+ < GAMMA_TN2 : bit (5) > }
+ { 0 | 1 < USF_TN3 : bit (3) >
+ < GAMMA_TN3 : bit (5) > }
+ { 0 | 1 < USF_TN4 : bit (3) >
+ < GAMMA_TN4 : bit (5) > }
+ { 0 | 1 < USF_TN5 : bit (3) >
+ < GAMMA_TN5 : bit (5) > }
+ { 0 | 1 < USF_TN6 : bit (3) >
+ < GAMMA_TN6 : bit (5) > }
+ { 0 | 1 < USF_TN7 : bit (3) >
+ < GAMMA_TN7 : bit (5) > } } ;
+
+<Single Block Allocation struct > ::=
+ < TIMESLOT_NUMBER : bit (3) >
+ { 0 | 1 < ALPHA : bit (4) >
+ < GAMMA_TN : bit (5) >}
+ { 0 | 1 < P0 : bit (4) >
+ 0 -- The value '1' was allocated in an earlier version of the protocol and shall not be used.
+ < PR_MODE : bit (1) > }
+ < TBF Starting Time : < Starting Frame Number Description IE > > ;
+
+< Multi Block Allocation struct > ::=
+ < TIMESLOT_NUMBER : bit (3) >
+ { 0 | 1 < ALPHA : bit (4) >
+ < GAMMA_TN : bit (5) >}
+ { 0 | 1 < P0 : bit (4) >
+ 0 -- The value '1' was allocated in an earlier version of the protocol and shall not be used.
+ < PR_MODE : bit (1) > }
+ < TBF Starting Time : < Starting Frame Number Description IE > >
+ < NUMBER OF RADIO BLOCKS ALLOCATED: bit (2) > ;
+
+< Access Technologies Request struct> ::= -- recursive structure allows any combination of Access technologies
+ <Access Technology Type : bit (4) >
+ { 0 | 1 < Access Technologies Request struct > } ;
+
+< Assignment Info struct > ::=
+ < ASSIGNMENT TYPE : bit (2) >
+ < Carrier ID : bit (1) >;
+
+< Dynamic Allocation 2 struct > ::=
+ < EXTENDED_DYNAMIC_ALLOCATION : bit (1) >
+ { 0 | 1 < P0_C1 : bit (4) >
+ < PR_MODE_C1 : bit (1) >
+ { 0 | 1 < P0_C2 : bit (4) >
+ < PR_MODE_C2 : bit (1) > } }
+ < USF_GRANULARITY : bit (1) >
+ { 0 | 1 < UPLINK_TFI_ASSIGNMENT : bit (5) > }
+ {0 -- Allocation without Power Control Parameters
+ < N_USF : bit (4) >
+ { 0 | 1 < USF : bit (3) > } *( val(N_USF) + 1)
+ |1 -- Allocation with Power Control Parameters
+ < ALPHA_C1: bit (4) >
+ { 0 | 1 < ALPHA_C2: bit (4) > }
+ {0 -- BTTI mode
+ < N_TS : bit (4) >
+ {0|1
+ < USF : bit (3) >
+ < GAMMA: bit (5) >
+ } * ( val(N_TS) + 1)
+ |1 -- RTTI mode
+ < N_PAIRS : bit (3) >
+ {0|1
+ < USF : bit (3) >
+ < GAMMA : bit (5) >
+ } * (val(N_PAIRS) + 1)
+ {0 -- RTTI USF
+ |1 -- BTTI USF
+ {0|1
+ < USF_2 : bit (3) >
+ { 0 | 1 < GAMMA : bit (5) > }
+ } * (val(N_PAIRS) + 1)
+ }
+ }
+ };
+
+< RLC Entity Struct > ::=
+ < UPLINK_TFI_ASSIGNMENT : bit (5) >
+ < RLC_MODE : bit (1) >
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+ PFI : bit (7) >;
+
+< Additional PFCs struct > ::=
+ < UPLINK TFI_ASSIGNMENT : bit (5) >
+ { 0 | 1 < NPM Transfer Time : bit (5) > }
+ < PFI : bit (7) >;
+
+-- 11.2.29a
+< Multiple TBF Uplink Assignment message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 | 1 < PERSISTENCE_LEVEL : bit (4) > * 4 }
+ { { 0 < Global TFI : < Global TFI IE > >
+ | 10 { < TLLI / G-RNTI : <TLLI / G-RNTI IE > > < G-RNTI extension : bit (4) > } }
+ {0 -- Message escape bit for GPRS mode TBFs
+ { { 0 | 1 < CHANNEL_CODING_COMMAND : bit (2) > }
+ < TLLI_BLOCK_CHANNEL_CODING : bit (1) >
+ < Packet Timing Advance : < Packet Timing Advance IE > >
+ { 0 | 1 < Packet Extended Timing Advance : bit (2) > }
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ { 0 | 1 < Uplink TBF Assignment : < Uplink Assignment struct > > }
+ < padding bits > }
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ | 1 -- Message escape bit for EGPRS mode TBFs
+ { 00
+ { { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+ { 0 | 1 < EGPRS Channel Coding Command : < EGPRS Modulation and Coding Scheme IE > > }
+ < Resegment : < RESEGMENT IE >>
+ < TLLI_BLOCK_CHANNEL_CODING : bit (1) >
+ { 0 | 1 < BEP_PERIOD2 : bit(4) > }
+ < Packet Timing Advance : < Packet Timing Advance IE > >
+ { 0 | 1 < Packet Extended Timing Advance : bit (2) > }
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ { 0 | 1 < Uplink TBF Assignment : < Uplink Assignment struct > > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-7
+ { 0 | 1< NPM Transfer Time : bit (5) > } ** 0
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-9
+ { 1 < Indication of Upper Layer PDU Start for RLC UM : bit > } ** 0
+ < Enhanced Flexible Timeslot Assignment : bit >
+ < padding bits > } } }
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ | 01 -- Message escape for dual carrier, RTTI, BTTI with FANR activated, EGPRS2
+ { { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+ { 0 | 1 < EGPRS Channel Coding Command : < EGPRS Modulation and Coding Scheme IE > > }
+ < Assignment Info : < Assignment Info struct > >
+ < RESEGMENT : bit (1) >
+ < TLLI_BLOCK_CHANNEL_CODING : bit (1) >
+ { 0 | 1 < BEP_PERIOD2 : bit (4) > }
+ < Packet Timing Advance : < Packet Timing Advance IE > >
+ { 0 | 1 < Packet Extended Timing Advance : bit (2) > }
+ { 00 -- No frequency parameters included
+ | 01 -- Legacy IEs used
+ { 0 | 1 < Frequency Parameters C1 : < Frequency Parameters IE > > }
+ { 0 | 1 < Frequency Parameters C2 : < Frequency Parameters IE > > }
+ | 10 -- Optimized Dual Carrier frequency parameters used
+ < Dual Carrier Frequency Parameters : < Dual Carrier Frequency Parameters IE > >
+ ! < Frequency Parameters error: { 11 } bit(*) = < no string> > } -- reserved for future used
+ { 0 | 1 < Uplink TBF Assignment 2 : < Uplink Assignment 2 struct > > }
+ <Uplink EGPRS Level: < EGPRS Level IE > >
+ { 0 | 1 < Pulse Format: < Pulse Format IE > > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-9
+ { 1 < Indication of Upper Layer PDU Start for RLC UM : bit > } ** 0
+ < Enhanced Flexible Timeslot Assignment : bit >
+ < padding bits > }
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Message escape : { 10 | 11 } bit (*) = < no string > > } } - Extended for future changes
+ ! < Address information part error : bit (*) = < no string > > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< Uplink Assignment struct > ::=
+ < EXTENDED_DYNAMIC_ALLOCATION : bit (1) >
+ { 0 | 1 < Uplink Control Timeslot : bit (3) > }
+ { 0 | 1 < P0 : bit (4) >
+ < PR_MODE : bit(1) > }
+ { 0 | 1 < TBF Starting Time : < Starting Frame Number Description IE > > }
+ { 0 | 1 < Global Timeslot description : < Timeslot description struct > >
+ { 1 < Uplink TBF Assignment : < Uplink TBF Assignment struct > > } ** 0 } ;
+
+< Uplink Assignment 2 struct > ::=
+ < EXTENDED_DYNAMIC_ALLOCATION : bit (1) >
+ { 0 | 1 < Uplink Control Timeslot C1 : bit (3) > }
+ { 0 | 1 < Uplink Control Timeslot C2 : bit (3) > }
+ { 0 | 1 < P0_C1 : bit (4) >
+ < PR_MODE_C1 : bit(1) >
+ { 0 | 1 < P0_C2 : bit (4) >
+ < PR_MODE_C2 : bit(1) > } }
+ {0|1 -- '1' indicates that FANR is activated
+ {0 -- SSN-based encoding is selected
+ |1 -- Time-based encoding is selected
+ < TSH : bit (2) > } }
+ {0|1
+ {0|1 -- BTTI mode
+ < Global Timeslot description : < Timeslot description 2 struct > >
+ { 1 < Uplink TBF Assignment 2: < Uplink TBF Assignment 2 IE > > } ** 0
+ }
+ {0|1 -- RTTI mode
+ < PDCH Pairs Description : < PDCH Pairs Description struct > >
+ {0 -- without power control parameters
+ |1 -- with power control parameters
+ < ALPHA_C1 : bit (4) >
+ { 0 | 1 < ALPHA_C2 : bit (4) > }
+ < N_PAIRS : bit (3) >
+ { 0 | 1 < GAMMA : bit (5) > } * (val(N_PAIRS) + 1)
+ {0 -- RTTI USF, or no second GAMMA values are given in case of RTTI mode with BTTI USF
+ |1 -- Second GAMMA values are given in case of RTTI mode with BTTI USF
+ { 0 | 1 < GAMMA : bit (5) > } * (val(N_PAIRS) + 1)
+ }
+ }
+ { 1 < Uplink TBF Assignment 2: < Uplink TBF Assignment 2 struct > >
+ < RTTI_USF_MODE : bit (1) > } ** 0
+ }
+ };
+
+< Timeslot description struct > ::=
+ {0 -- without power control params
+ < MS_TIMESLOT_ALLOCATION : bit (8) >
+ |1 -- with power control params
+ < ALPHA : bit (4) >
+ { 0 | 1 < GAMMA_TN0 : bit (5) > }
+ { 0 | 1 < GAMMA_TN1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN3 : bit (5) > }
+ { 0 | 1 < GAMMA_TN4 : bit (5) > }
+ { 0 | 1 < GAMMA_TN5 : bit (5) > }
+ { 0 | 1 < GAMMA_TN6 : bit (5) > }
+ { 0 | 1 < GAMMA_TN7 : bit (5) > } } ;
+
+< Timeslot description 2 struct > ::=
+ {0 -- without power control params
+ < MS_TIMESLOT_ALLOCATION_C1 : bit (8) >
+ { 0 | 1 < MS_TIMESLOT_ALLOCATION_C2 : bit (8) > }
+ |1 -- with power control params
+ < ALPHA_C1 : bit (4) >
+ { 0 | 1 < GAMMA_TN0_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN1_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN2_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN3_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN4_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN5_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN6_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN7_C1 : bit (5) > }
+ { 0 | 1 < ALPHA_C2 : bit (4) > }
+ { 0 | 1 < GAMMA_TN0_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN1_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN2_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN3_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN4_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN5_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN6_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN7_C2 : bit (5) > }
+};
+
+< Uplink TBF Assignment struct > ::= -- Recursive for multiple TBFs
+ { 0 < RB Id : bit (5) >
+ | 1 < PFI : bit (7) > }
+ < RLC_MODE : bit (1) > }
+ < TFI Assignment : bit (5) >
+ { 0 | 1 < CHANNEL_CODING_COMMAND : bit (2) > }
+ { 0 | 1 < EGPRS Channel Coding Command : < EGPRS Modulation and Coding Scheme IE > > }
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+ < USF_GRANULARITY : bit (1) >
+ {0 -- The timeslots assigned to the TBF are all the timeslots assigned
+ -- in the Global Timeslot description
+ | 1 < TBF_TIMESLOT_ALLOCATION : bit (N) > } -- The timeslots assigned to the TBF are a subset of all the
+ -- timeslots assigned in the Global Timeslot description. Where
+ -- N is the amount of timeslots assigned to the MS in the Global
+ -- Timeslot description
+ {0 < USF_ALLOCATION : bit (3) > -- The same USF is valid on all timeslots assigned to the TBF
+ |1 -- Different USF(s) assigned
+ < USF_ALLOCATION : bit (3) > -- USF assignment on the lowest numbered timeslot
+ -- assigned to the TBF
+ { 0 | 1 < USF_ALLOCATION : bit (3) > } * (M-1) } ; -- USFs on subsequent timeslots assigned to the TBF:
+ -- A "0" (respectively a "1" followed by a USF value)
+ -- means same (respectively different) USF value as the
+ -- USF on the next lower numbered timeslot assigned to
+ -- the TBF. Where M is the amount of timeslots assigned
+ -- to the TBF in the TBF_TIMESLOT_ALLOCATION if
+ -- present, else in the Global Timeslot description
+
+< Uplink TBF Assignment 2 struct > ::= -- Recursive for multiple TBFs
+ < PFI : bit (7) >
+ < RLC_MODE : bit (1) >
+ < TFI Assignment : bit (5) >
+ { 0 | 1 < EGPRS Channel Coding Command: < EGPRS Modulation and Coding Scheme IE > > }
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+ < USF_GRANULARITY : bit (1) >
+ { 0 | 1 < NPM Transfer Time : bit (5) > }
+ { 0 | 1 -- '1' indicates that time-based FANR is selected
+ < REPORTED TIMESLOTS C1: bit (8) > -- carrier 1 in Downlink Dual Carrier configuration
+ { 0 | 1 < REPORTED TIMESLOTS C2 : bit (8) > } -- carrier 2 in Downlink Dual Carrier configuration
+ }
+ {0 -- The timeslots/PDCH-pairs assigned to the TBF are all the timeslots assigned
+ -- in the Global Timeslot description or PDCH pair description
+ | 1 < TBF_TIMESLOT_ALLOCATION : bit (N) > } -- see description in Table 11.2.29a.2
+ { 0 < USF_ALLOCATION_C1 : bit (3) >
+ { 0 | 1 < USF_ALLOCATION_C2 : bit (3) > } -- The same USF is valid on all timeslots/PDCH-pairs assigned
+ -- to the TBF for each specified carrier
+ |1 -- Different USF(s) assigned; see description in Table 11.2.29a.2
+ < USF_ALLOCATION : bit (3) >
+ { 0 | 1 < USF_ALLOCATION : bit (3) > } * (M-1)
+ };
+
+< Assignment Info struct > ::=
+ < Assignment Type : bit (2) >
+ < Carrier ID : bit (1) > ;
+
+-- 11.2.30a
+< Packet pause message content > ::=
+ < TLLI : bit (32) >
+ < RAI : bit (48) >
+ < padding bits > ;
+
+-- 11.2.31
+< Packet Timeslot Reconfigure message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 < GLOBAL_TFI : < Global TFI IE > >
+ {0 -- Message escape
+ { < CHANNEL_CODING_COMMAND : bit (2) >
+ < Global Packet Timing Advance : < Global Packet Timing Advance IE > >
+ < DOWNLINK_RLC_MODE : bit (1) >
+ < CONTROL_ACK : bit (1) >
+ { 0 | 1 < DOWNLINK_TFI_ASSIGNMENT : bit (5) > }
+ { 0 | 1 < UPLINK_TFI_ASSIGNMENT : bit (5) > }
+ < DOWNLINK_TIMESLOT_ALLOCATION : bit (8) >
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ 0 -- The value '1' was allocated in an earlier version of the protocol and shall not be used.
+ < Dynamic Allocation : < Dynamic Allocation struct > >
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for R99
+ { 0 | 1 < Packet Extended Timing Advance : bit (2) > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-5
+ { 0 | 1 < RB Id of downlink TBF : bit (5) >
+ < RB Id of uplink TBF: bit (5) > }
+ { 0 | 1 < Uplink Control Timeslot : bit (3) > }
+ { null | 0 bit** = <no string> -- Receiver backward compatible
+ |1 -- Additions for Rel-6
+ { 0 | 1 < PFI of downlink TBF : bit (7) > }
+ { 0 | 1 < PFI of uplink TBF : bit (7) > }
+ { 0 | 1 < UPLINK_RLC_MODE : bit (1) > }
+ { 0 < EMST_NW_Capability : bit (1) > -- EMST is not used
+ |1 -- EMST is used
+ {0
+ | 1 < Downlink RLC Entity 2 : < RLC Entity Struct>
+ {0
+ | 1 < Downlink RLC Entity 3 : < RLC Entity Struct> }
+ }
+ {0
+ | 1 < Uplink RLC Entity 2 : < RLC Entity Struct>
+ {0
+ | 1 < Uplink RLC Entity 3 : < RLC Entity Struct> }
+ }
+ }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-10
+ {0 -- EMSR is not enabled in downlink
+ |1 -- EMSR is enabled in downlink
+ { 1 < EMSR Additional PFCs 1 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 2 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 3 : < Additional PFCs struct > > } ** 0
+ }
+ {0 -- EMSR is not enabled in uplink
+ |1 -- EMSR is enabled in uplink
+ { 1 < EMSR Additional PFCs 1 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 2 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 3 : < Additional PFCs struct > > } ** 0
+ } < padding bits > } } } }
+ ! < Non-distribution part error : bit (*) = < no string > > }
+|1 -- Message escape bit used to define EGPRS message contents
+ { 00 { { 0 | 1 < COMPACT reduced MA : < COMPACT reduced MA IE >> }
+ < EGPRS Channel Coding Command : < EGPRS Modulation and Coding Scheme IE >>
+ < RESEGMENT : bit (1) >
+ { 0 | 1 < DOWNLINK EGPRS Window Size : < EGPRS Window Size IE > > }
+ { 0 | 1 < UPLINK EGPRS Window Size : < EGPRS Window Size IE > > }
+ < LINK_QUALITY_MEASUREMENT_MODE : bit (2) >
+ < Global Packet Timing Advance : < Global Packet Timing Advance IE > >
+ { 0 | 1 < Packet Extended Timing Advance : bit (2) > }
+ < DOWNLINK_RLC_MODE : bit (1) >
+ < CONTROL_ACK : bit (1) >
+ { 0 | 1 < DOWNLINK_TFI_ASSIGNMENT : bit (5) > }
+ { 0 | 1 < UPLINK_TFI_ASSIGNMENT : bit (5) > }
+ < DOWNLINK_TIMESLOT_ALLOCATION : bit (8) >
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ 0 -- The value '1' was allocated in an earlier version of the protocol and shall not be used.
+ < Dynamic Allocation : < Dynamic Allocation struct > >
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-5
+ { 0 | 1 < RB Id of downlink TBF : bit (5) >
+ < RB Id of uplink TBF: bit (5) > }
+ { 0 | 1 < Uplink Control Timeslot : bit (3) > }
+ { null | 0 bit** = <no string> -- Receiver backward compatible
+ |1 -- Additions for Rel-6
+ { 0 | 1 < PFI of downlink TBF : bit (7) > }
+ { 0 | 1 < PFI of uplink TBF : bit (7) > }
+ { 0 | 1 < UPLINK_RLC_MODE : bit (1) > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-7
+ { 0 | 1 < Downlink NPM Transfer Time : bit (5) > }
+ { 0 | 1 < Uplink NPM Transfer Time : bit (5) > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-9
+ < Indication of Upper Layer PDU Start for RLC UM : bit >
+ < Enhanced Flexible Timeslot Assignment : bit >
+ < padding bits > } } } }
+ ! < Non-distribution part error : bit (*) = < no string > > }
+| 01 -- escape for Downlink Dual Carrier, BTTI using FANR, EGPRS2, RTTI
+ { < EGPRS Channel Coding Command : < EGPRS Modulation and Coding Scheme IE >>
+ < RESEGMENT : bit (1) >
+ < Assignment Info : Assignment Info struct >
+ { 0 | 1 < DOWNLINK EGPRS Window Size : < EGPRS Window Size IE > > }
+ { 0 | 1 < UPLINK EGPRS Window Size : < EGPRS Window Size IE > > }
+ < LINK_QUALITY_MEASUREMENT_MODE : bit (2) >
+ { 0 | 1 < BEP_PERIOD2 : bit(4) > }
+ < Global Packet Timing Advance : < Global Packet Timing Advance IE > >
+ { 0 | 1 < Packet Extended Timing Advance : bit (2) > }
+ < DOWNLINK_RLC_MODE : bit (1) >
+ < CONTROL_ACK : bit (1) >
+ { 0 | 1 < DOWNLINK_TFI_ASSIGNMENT : bit (5) > }
+{0 -- BTTI mode
+ < TIMESLOT_ALLOCATION_C1 : bit (8) >
+ { 0 | 1 < TIMESLOT_ALLOCATION_C2 : bit (8) > }
+|1 -- RTTI mode
+ < RTTI_USF_MODE : bit (1) >
+ {0 -- Single Carrier Assignment
+ { 00 -- Default PDCH pair configuration
+ | 01 -- Unchanged
+ | 10 -- Explicit PDCH pair configuration
+ < DOWNLINK_PDCH_PAIRS_C1 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C1 : bit (8) >
+ ! < PDCH pairs configuration error : { 1 1 } bit (*) = < no string > > -- reserved
+ }
+ < RTTI_DOWNLINK_PDCH_PAIR_ASSIGNMENT_SC : bit (4) >
+ |1 -- Dual Carrier Assignment
+ { 00 -- Default PDCH pair configuration
+ | 01 -- Unchanged
+ | 10 -- Explicit PDCH pair configuration
+ < DOWNLINK_PDCH_PAIRS_C1 : bit (8) >
+ < DOWNLINK_PDCH_PAIRS_C2 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C1 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C2 : bit (8) >
+ ! < PDCH pairs configuration error : { 1 1 } bit (*) = < no string > > -- reserved
+ }
+ < RTTI_DOWNLINK_PDCH_PAIR_ASSIGNMENT_DC : bit (8) >
+ }
+}
+{ 00 -- No frequency parameters included
+ | 01 -- Legacy IEs used
+ { 0 | 1 < Frequency Parameters C1 : < Frequency Parameters IE > > }
+ { 0 | 1 < Frequency Parameters C2 : < Frequency Parameters IE > > }
+ | 10 -- Optimized Dual Carrier frequency parameters used
+ < Dual Carrier Frequency Parameters : < Dual Carrier Frequency Parameters IE > >
+ ! < Frequency Parameters error: { 11 } bit(*) = < no string> > -- reserved for future used
+}
+ < Dynamic Allocation 2 : < Dynamic Allocation 2 struct > >
+ { 0 | 1 < Uplink Control Timeslot C1 : bit (3) > }
+ { 0 | 1 < Uplink Control Timeslot C2 : bit (3) > }
+ { 0 | 1 < PFI of downlink TBF : bit (7) > }
+ { 0 | 1 < PFI of uplink TBF : bit (7) > }
+ { 0 | 1 < UPLINK_RLC_MODE : bit (1) > }
+ { 0 | 1 < Downlink NPM Transfer Time : bit (5) > }
+ { 0 | 1 < Uplink NPM Transfer Time : bit (5) > }
+ {0 -- Fast Ack/Nack Reporting is not activated for the downlink TBF;
+ |1 -- Fast Ack/Nack Reporting is activated for the downlink TBF
+ < EVENT_BASED_FANR: bit (1) > }
+ {0 -- Fast Ack/Nack Reporting is not activated for the uplink TBF
+ |1 -- Fast Ack/Nack Reporting is activated for the uplink TBF
+ {0 -- SSN-based encoding is selected
+ |1 -- Time-based encoding is selected
+ < REPORTED TIMESLOTS C1 : bit (8) > -- carrier 1 in Downlink Dual Carrier
+ -- configuration
+ { 0 | 1 < REPORTED TIMESLOTS C2 : bit (8) > } -- carrier 2 in Downlink Dual Carrier
+ -- configuration
+ < TSH : bit (2) > } } -- This structure shall be considered only valid if
+ -- an uplink TBF is addressed
+ < Uplink EGPRS Level: < EGPRS Level IE > >
+ < Downlink EGPRS Level: < EGPRS Level IE > >
+ { 0 | 1 < Pulse Format: < Pulse Format IE > > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-9
+ < Indication of Upper Layer PDU Start for RLC UM: bit >
+ < Enhanced Flexible Timeslot Assignment : bit >
+ { 0 < EMST_NW_Capability : bit (1) > -- EMST is not used
+ -- EMST is used
+ |1
+ {0
+ | 1 < Downlink RLC Entity 2 : < RLC Entity Struct>
+ {0
+ | 1 < Downlink RLC Entity 3 : < RLC Entity Struct> }
+ }
+ {0
+ | 1 < Uplink RLC Entity 2 : < RLC Entity Struct>
+ {0
+ | 1 < Uplink RLC Entity 3 : < RLC Entity Struct> }
+ }
+ }
+ { 0 | 1 MTTI_DOWNLINK_ASSIGNMENT_C1 : bit (1) }
+ { 0 | 1 MTTI_DOWNLINK_ASSIGNMENT_C2 : bit (1) }
+ { 0 | 1 MTTI_UPLINK_ASSIGNMENT_C1 : bit(1) }
+ { 0 | 1 MTTI_UPLINK_ASSIGNMENT_C2 : bit(1) }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-10
+ {0 -- EMSR is not enabled in downlink
+ |1 -- EMSR is enabled in downlink
+ { 1 < EMSR Additional PFCs 1 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 2 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 3 : < Additional PFCs struct > > } ** 0
+ }
+ {0 -- EMSR is not enabled in uplink
+ |1 -- EMSR is enabled in uplink
+ { 1 < EMSR Additional PFCs 1 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 2 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 3 : < Additional PFCs struct > > } ** 0
+ } < padding bits > } }
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Message escape : { 10 | 11 } bit (*) = <no string> > } } -- Extended for future changes
+ ! < Address information part error : bit (*) = < no string > > }
+! < Distribution part error : bit (*) = < no string > > ;
+
+<Dynamic Allocation struct > ::=
+ < EXTENDED_DYNAMIC_ ALLOCATION : bit (1) >
+ { 0 | 1 < P0 : bit (4) >
+ < PR_MODE : bit (1) > }
+ < USF_GRANULARITY : bit (1) >
+ 0 -- The value '1' was allocated in an earlier version of the protocol and shall not be used.
+ { 0 | 1 < TBF Starting Time : < Starting Frame Number Description IE > > }
+ {0 -- Timeslot Allocation
+ { 0 | 1 < USF_TN0 : bit (3) > }
+ { 0 | 1 < USF_TN1 : bit (3) > }
+ { 0 | 1 < USF_TN2 : bit (3) > }
+ { 0 | 1 < USF_TN3 : bit (3) > }
+ { 0 | 1 < USF_TN4 : bit (3) > }
+ { 0 | 1 < USF_TN5 : bit (3) > }
+ { 0 | 1 < USF_TN6 : bit (3) > }
+ { 0 | 1 < USF_TN7 : bit (3) > }
+ |1 -- Timeslot Allocation with Power Control Parameters
+ < ALPHA : bit (4) >
+ { 0 | 1 < USF_TN0 : bit (3) >
+ < GAMMA_TN0 : bit (5) > }
+ { 0 | 1 < USF_TN1 : bit (3) >
+ < GAMMA_TN1 : bit (5) > }
+ { 0 | 1 < USF_TN2 : bit (3) >
+ < GAMMA_TN2 : bit (5) > }
+ { 0 | 1 < USF_TN3 : bit (3) >
+ < GAMMA_TN3 : bit (5) > }
+ { 0 | 1 < USF_TN4 : bit (3) >
+ < GAMMA_TN4 : bit (5) > }
+ { 0 | 1 < USF_TN5 : bit (3) >
+ < GAMMA_TN5 : bit (5) > }
+ { 0 | 1 < USF_TN6 : bit (3) >
+ < GAMMA_TN6 : bit (5) > }
+ { 0 | 1 < USF_TN7 : bit (3) >
+ < GAMMA_TN7 : bit (5) > } } ;
+
+< Dynamic Allocation 2 struct > ::=
+ < EXTENDED_DYNAMIC_ALLOCATION : bit (1) >
+ { 0 | 1 < P0_C1 : bit (4) >
+ < PR_MODE_C1 : bit (1) >
+ { 0 | 1 < P0_C2 : bit (4) >
+ < PR_MODE_C2 : bit (1) > } }
+ < USF_GRANULARITY : bit (1) >
+ { 0 | 1 < UPLINK_TFI_ASSIGNMENT : bit (5) > }
+ {0 -- Allocation without Power Control Parameters
+ < N_USF : bit (4) >
+ { 0 | 1 < USF : bit (3) > } *( val(N_USF) + 1)
+ |1 -- Allocation with Power Control Parameters
+ < ALPHA_C1: bit (4) >
+ { 0 | 1 < ALPHA_C2: bit (4) > }
+ {0 -- BTTI mode
+ < N_TS : bit (4) >
+ {0|1
+ < USF : bit (3) >
+ < GAMMA: bit (5) >
+ } * ( val(N_TS) + 1)
+ |1 -- RTTI mode
+ < N_PAIRS : bit (3) >
+ {0|1
+ < USF : bit (3) >
+ < GAMMA : bit (5) >
+ } * (val(N_PAIRS) + 1)
+ {0 -- RTTI USF
+ |1 -- BTTI USF
+ { 0 | 1 < USF_2 : bit (3) >
+ { 0 | 1 < GAMMA : bit (5) > }
+ } * (val(N_PAIRS) + 1)
+ }
+ }
+ };
+
+< Assignment Info struct > ::=
+ < Assignment Type : bit (2) >
+ < Carrier ID : bit (1) >;
+
+< RLC Entity Struct> ::=
+ < TFI : bit (5) >
+ < RLC_MODE : bit (1) >
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+ < PFI : bit (7) >;
+
+< Additional PFCs struct > ::=
+ < TFI : bit (5) >
+ { 0 | 1 < NPM Transfer Time : bit (5) > }
+ < PFI : bit (7) >;
+
+-- 11.2.31a
+< Multiple TBF Timeslot Reconfigure message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 < GLOBAL_TFI : < Global TFI IE > >
+ {0 -- Message escape for GPRS mode TBFs
+ { { 0 | 1 < CHANNEL_CODING_COMMAND : bit (2) > }
+ < Global Packet Timing Advance : < Global Packet Timing Advance IE > >
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ { 0 | 1 < Packet Extended Timing Advance : bit (2) > }
+ { 1 < Multiple Downlink Assignment : < Multiple Downlink Assignment struct > > } ** 0
+ < Multiple Uplink Assignment : < Multiple Uplink Assignment struct > >
+ < padding bits >
+ }
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ |1 -- Message escape bit for EGPRS mode TBFs
+ { 00 {
+ { 0 | 1 < EGPRS Channel Coding Command : < EGPRS Modulation and Coding Scheme IE > > }
+ < RESEGMENT : bit (1) >
+ { 0 | 1 < Downlink EGPRS Window Size : < EGPRS Window Size IE > }
+ { 0 | 1 { 0 | 1 < Uplink EGPRS Window Size : < EGPRS Window Size IE > > }
+ < LINK_QUALITY_MEASUREMENT_MODE : bit (2) >
+ { 0 | 1 < BEP_PERIOD2 : bit(4) > } }
+ < Global Packet Timing Advance : < Global Packet Timing Advance IE > >
+ { 0 | 1 < Packet Extended Timing Advance : bit (2) > }
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ { 1 < Multiple Downlink Assignment : < Multiple Downlink Assignment struct > > } ** 0
+ < Multiple Uplink Assignment : < Multiple Uplink Assignment struct > >
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-7
+ { 0 | 1 < NPM Transfer Time : bit (5) > } ** 0
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-9
+ { < Indication of Upper Layer PDU Start for RLC UM : bit > } ** 0
+ < Enhanced Flexible Timeslot Assignment : bit >
+ < padding bits > } }
+ }
+ ! < Non-distribution part error : bit (*) = < no string > >
+ }
+ { 01 { -- Message escape for dual carrier, BTTI with FANR activated, RTTI, EGPRS2
+ { 0 | 1 < EGPRS Channel Coding Command : < EGPRS Modulation and Coding Scheme IE > > }
+ < RESEGMENT : bit (1) >
+ { 0 | 1 < Downlink EGPRS Window Size : < EGPRS Window Size IE > }
+ { 0 | 1 { 0 | 1 < Uplink EGPRS Window Size : < EGPRS Window Size IE > > }
+ < LINK_QUALITY_MEASUREMENT_MODE : bit (2) >
+ { 0 | 1 < BEP_PERIOD2 : bit(4) > }
+ }
+ < Global Packet Timing Advance : < Global Packet Timing Advance IE > >
+ { 0 | 1 < Packet Extended Timing Advance : bit (2) > }
+ { 00 -- No frequency parameters included
+ | 01 -- Legacy IEs used
+ { 0 | 1 < Frequency Parameters C1 : < Frequency Parameters IE > > }
+ { 0 | 1 < Frequency Parameters C2 : < Frequency Parameters IE > > }
+ | 10 -- Optimized Dual Carrier frequency parameters used
+ < Dual Carrier Frequency Parameters : < Dual Carrier Frequency Parameters IE > >
+ ! < Frequency Parameters error: { 11 } bit(*) = < no string> > -- reserved for future use
+ }
+ {0 |1 -- BTTI mode
+ < FANR: bit (1) >
+ { 1 < BTTI Multiple Downlink Assignment : < BTTI Multiple Downlink Assignment struct > > } ** 0
+ }
+ {0|1 -- RTTI mode
+ {0 -- Single Carrier Assignment
+ { 00 -- Default PDCH-pair configuration
+ | 01 -- Unchanged
+ | 10 -- Explicit PDCH pair configuration
+ < DOWNLINK_PDCH_PAIRS_C1 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C1 : bit (8) >
+ ! < PDCH pairs configuration error : { 1 1 } bit (*) = < no string > > -- reserved
+ }
+ { 1 < RTTI Multiple Downlink Assignment SC :
+ < RTTI Multiple Downlink Assignment SC struct > > } ** 0
+ |1 -- Dual Carrier Assignment
+ { 00 -- Default PDCH pair configuration
+ | 01 -- Unchanged
+ | 10 -- Explicit PDCH pair configuration
+ < DOWNLINK_PDCH_PAIRS_C1 : bit (8) >
+ < DOWNLINK_PDCH_PAIRS_C2 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C1 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C2 : bit (8) >
+ ! < PDCH pairs configuration error : { 1 1 } bit (*) = < no string > > -- reserved
+ }
+ { 1 < RTTI Multiple Downlink Assignment DC :
+ < RTTI Multiple Downlink Assignment DC struct > > } ** 0
+ }
+ }
+ {0|1 -- BTTI and/or RTTI mode for uplink
+ < Multiple Uplink Assignment : < Multiple Uplink Assignment 2 struct > >
+ }
+ < Uplink EGPRS Level: < EGPRS Level IE > >
+ < Downlink EGPRS Level: < EGPRS Level IE > >
+ { 0 | 1 < Pulse Format: < Pulse Format IE > > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-9
+ { < Indication of Upper Layer PDU Start for RLC UM : bit > } ** 0
+ < Enhanced Flexible Timeslot Assignment : bit >
+ < padding bits > }
+ }
+ ! < Non-distribution part error : bit (*) = < no string > >
+ }
+ ! < Message escape : { 10 | 11} bit (*) = < no string > > --Extended for future changes
+ }
+ ! < Address information part error : bit (*) = < no string > >
+ }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< Multiple Downlink Assignment struct > ::=
+ < TIMESLOT_ALLOCATION : bit (8) >
+ { 0 | 1 < Uplink Control Timeslot : bit (3) > }
+ { 1 < Downlink TBF assignment : < Downlink TBF assignment struct > > } ** 0 ;
+
+< BTTI Multiple Downlink Assignment struct > ::=
+ { 0 | 1 < TIMESLOT_ALLOCATION_C1 : bit (8) > }
+ { 0 | 1 < TIMESLOT_ALLOCATION_C2 : bit (8) > }
+ { 0 | 1 < Uplink Control Timeslot C1 : bit (3) > }
+ { 0 | 1 < Uplink Control Timeslot C2 : bit (3) > }
+ { 1 < Downlink TBF assignment : < Downlink TBF assignment 2 struct > > } ** 0 ;
+
+< RTTI Multiple Downlink Assignment SC struct > ::=
+ < RTTI_DOWNLINK_PDCH_PAIR_ASSIGNMENT_SC : bit (4) >
+ { 0 | 1 < Uplink Control Timeslot C1 : bit (3) > }
+ { 1 < Downlink TBF assignment : < Downlink TBF assignment 2 struct > > } ** 0 ;
+
+< RTTI Multiple Downlink Assignment DC struct > ::=
+ < RTTI_DOWNLINK_PDCH_PAIR_ASSIGNMENT_DC : bit (8) >
+ { 0 | 1 < Uplink Control Timeslot C1 : bit (3) > }
+ { 0 | 1 < Uplink Control Timeslot C2 : bit (3) > }
+ { 1 < Downlink TBF assignment : < Downlink TBF assignment 2 struct > > } ** 0 ;
+
+< Downlink TBF assignment struct > ::=
+ { 0 < RB Id : bit (5) >
+ | 1 < PFI : bit (7) >
+ < RLC_MODE : bit (1) > }
+ { 0 | 1 < Uplink Control Timeslot : bit (3) > }
+ < TFI Assignment : bit (5) >
+ < CONTROL_ACK : bit (1) >
+ { 0 | 1 < Downlink EGPRS Window Size : < EGPRS Window Size IE > > } ;
+
+< Downlink TBF assignment 2 struct > ::=
+ < PFI : bit (7) >
+ < RLC_MODE : bit (1) >
+ { 0 | 1 < Uplink Control Timeslot C1 : bit (3) > }
+ { 0 | 1 < Uplink Control Timeslot C2 : bit (3) > }
+ < TFI Assignment : bit (5) >
+ < CONTROL_ACK : bit (1) >
+ { 0 | 1 < NPM Transfer Time : bit (5) > }
+ < EVENT_BASED_FANR: bit (1) >
+ { 0 | 1 < Downlink EGPRS Window Size : < EGPRS Window Size IE > > } ;
+
+< Multiple Uplink Assignment struct > ::=
+ < EXTENDED_DYNAMIC_ALLOCATION : bit (1) >
+ { 0 | 1 < P0 : bit (4) >
+ < PR_MODE : bit(1) > }
+ { 0 | 1 < TBF Starting Time : < Starting Frame Number Description IE > > }
+ { 0 | 1 < Global Timeslot description : < Timeslot description struct > >
+ { 1 < Uplink TBF Assignment : < Uplink TBF Assignment struct > > } ** 0 } ;
+
+< Multiple Uplink Assignment 2 struct > ::=
+ < EXTENDED_DYNAMIC_ALLOCATION : bit (1) >
+ { 0 | 1 < P0_C1 : bit (4) >
+ < PR_MODE_C1 : bit(1) >
+ { 0 | 1 < P0_C2 : bit (4) >
+ < PR_MODE_C2 : bit(1) > } }
+ { 0 | 1 -- '1' indicates that FANR is activated
+ {0 -- SSN-based encoding is selected
+ |1 -- Time-based encoding is selected
+ < TSH : bit (2) > } }
+ {0|1
+ {0|1 -- BTTI mode
+ < Global Timeslot description : < Timeslot description 2 struct > >
+{ 1 < Uplink TBF Assignment : < Uplink TBF Assignment 2 struct > > } ** 0
+}
+ {0|1 -- RTTI mode
+ {0 -- without power control parameters
+ |1 -- with power control parameters
+ < ALPHA_C1 : bit (4) >
+ { 0 | 1 < ALPHA_C2 : bit (4) > }
+ < N_PAIRS : bit (3) >
+ { 0 | 1 < GAMMA : bit (5) > } * (val(N_PAIRS) + 1)
+ {0 -- RTTI USF, or no second GAMMA values are given in case of RTTI mode with BTTI USF
+ |1 -- Second GAMMA values are given in case of RTTI mode with BTTI USF
+ { 0 | 1 < GAMMA : bit (5) > } * (val(N_PAIRS) + 1)
+ }
+ }
+ { 1 < Uplink TBF Assignment : < Uplink TBF Assignment 2 struct > >
+ < RTTI_USF_MODE : bit (1) > } ** 0
+ }
+ };
+
+< Timeslot description struct > ::=
+ {0 -- without power control params
+ < MS_TIMESLOT_ALLOCATION : bit (8) >
+ |1 -- with power control params
+ < ALPHA : bit (4) >
+ { 0 | 1 < GAMMA_TN0 : bit (5) > }
+ { 0 | 1 < GAMMA_TN1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN3 : bit (5) > }
+ { 0 | 1 < GAMMA_TN4 : bit (5) > }
+ { 0 | 1 < GAMMA_TN5 : bit (5) > }
+ { 0 | 1 < GAMMA_TN6 : bit (5) > }
+ { 0 | 1 < GAMMA_TN7 : bit (5) > } } ;
+
+< Timeslot description 2 struct > ::=
+ {0 -- without power control params
+ < MS_TIMESLOT_ALLOCATION_C1 : bit (8) >
+ { 0 | 1 < MS_TIMESLOT_ALLOCATION_C2 : bit (8) > }
+ |1 -- with power control params
+ < ALPHA_C1 : bit (4) >
+ { 0 | 1 < GAMMA_TN0_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN1_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN2_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN3_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN4_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN5_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN6_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN7_C1 : bit (5) > }
+ { 0 | 1 < ALPHA_C2 : bit (4) > }
+ { 0 | 1 < GAMMA_TN0_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN1_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN2_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN3_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN4_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN5_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN6_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN7_C2 : bit (5) > }
+};
+
+< Uplink TBF Assignment struct > ::= -- Recursive for multiple TBFs
+ { 0 < RB Id : bit (5) >
+ | 1 < PFI : bit (7) > }
+ < RLC_MODE : bit (1) > }
+ < TFI Assignment : bit (5) >
+ { 0 | 1 < CHANNEL_CODING_COMMAND : bit (2) > }
+ { 0 | 1 < EGPRS Channel Coding Command : < EGPRS Modulation and Coding Scheme IE > > }
+ { 0 | 1 < Uplink EGPRS Window Size : < EGPRS Window Size IE > > }
+ < USF_GRANULARITY : bit (1) >
+ {0 -- The timeslots assigned to the TBF are all the timeslots assigned
+ -- in the Global Timeslot description
+ | 1 < TBF_TIMESLOT_ALLOCATION : bit (N) > } -- The timeslots assigned to the TBF are a subset of all the
+ -- timeslots assigned in the Global Timeslot description. Where
+ -- N is the amount of timeslots assigned to the MS in the Global
+ -- Timeslot description
+ {0 < USF_ALLOCATION : bit (3) > -- The same USF is valid on all timeslots assigned to the TBF
+ |1 -- Different USF(s) assigned
+ < USF_ALLOCATION : bit (3) > -- USF assignment on the lowest numbered timeslot
+ -- assigned to the TBF
+ { 0 | 1 < USF_ALLOCATION : bit (3) > } * (M-1) } ; -- USFs on subsequent timeslots assigned to the TBF:
+ -- A "0" (respectively a "1" followed by a USF value)
+ -- means same (respectively different) USF value as the
+ -- USF on the next lower numbered timeslot assigned to
+ -- the TBF. Where M is the amount of timeslots assigned
+ -- to the TBF in the TBF_TIMESLOT_ALLOCATION if
+ -- present, else in the Global Timeslot description
+
+< Uplink TBF Assignment 2 struct > ::= -- Recursive for multiple TBFs
+ < PFI : bit (7) >
+ < RLC_MODE : bit (1) >
+ < TFI Assignment : bit (5) >
+ { 0 | 1 < EGPRS Channel Coding Command : < EGPRS Modulation and Coding Scheme IE > > }
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+ { 0 | 1 < NPM Transfer Time : bit (5) > }
+ { 0 | 1 < REPORTED TIMESLOTS C1 : bit (8) > -- carrier 1 in Downlink Dual Carrier configuration
+ { 0 | 1 < REPORTED TIMESLOTS C2 : bit (8) > } -- carrier 2 in Downlink Dual Carrier configuration
+ }
+ < USF_GRANULARITY : bit (1) >
+ { 0 | 1 < TBF_TIMESLOT_ALLOCATION : bit (N) > } -- The timeslots assigned to the TBF are all the timeslots
+ -- assigned in the Global Timeslot description
+ -- see description in Table 11.2.29a.2
+ { 0 < USF_ALLOCATION_C1 : bit (3) >
+ { 0 | 1 < USF_ALLOCATION_C2 : bit (3) } -- The same USF is valid on all timeslots assigned to the TBF
+ -- on the respective carriers
+ |1 -- Different USF(s) assigned; see description in Table 11.2.29a.2
+ < USF_ALLOCATION : bit (3) >
+ { 0 | 1 < USF_ALLOCATION : bit (3) > } * (M-1) } ;
+
+< Assignment Info struct > ::=
+ < Assignment Type : bit (2) >
+ < Carrier ID : bit (1) > ;
+
+-- 11.2.32
+< Additional MS Radio Access Capabilities message content > ::=
+ { 0 < Global TFI : < Global TFI IE > >
+ | 1 < TLLI : < TLLI IE > > }
+ < MS Radio Access Capability 2 : < MS Radio Access Capability 2 IE > >
+ < padding bits > ;
+
+-- 11.2.33
+< Handover Access 8 bit message > ::= -- 8-bit access burst format
+ < HANDOVER_REFERENCE_VALUE : bit (8) >;
+
+-- 11.2.34
+< Physical information message content > ::= -- RLC/MAC control block format
+ < MESSAGE_TYPE : bit (6) == 010010 >
+ < TIMING_ADVANCE_VALUE : bit (8) >
+ < padding bits > ; -- truncation at end of message allowed, bits '0' assumed
+
+-- 11.2.35
+< Packet CS Request message content > ::=
+ < GLOBAL TFI : < Global TFI IE > >
+ < ESTABLISHMENT CAUSE : bit (8) >
+ < padding bits > ;
+
+-- 11.2.36
+< Packet CS Command message content > ::=
+ < PAGE_MODE : bit (2) >
+ { < GLOBAL_TFI : < Global TFI IE > >
+ { < spare : bit (2) >
+ < CONTAINER_LENGTH : bit (8) >
+ < CONTAINER_DATA : octet ** >
+ < padding bits >
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Address information part error : bit (*) = < no string > > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+-- 11.2.37
+< Packet CS Release message content > ::=
+ < PAGE_MODE : bit (2) >
+ { < GLOBAL_TFI : < Global TFI IE > >
+ < ENHANCED_DTM_CS_RELEASE_INDICATION : bit >
+ < Global Packet Timing Advance : < Global Packet Timing Advance IE > >
+ { 00 -- RR connection is released and the MS maintains its DL and/or UL TBF(s)
+ | 01 -- When RR connection is released, PDTCH/H is converted to PDTCH/F
+ -- and the MS maintains its DL and/or UL TBF(s)
+ | 10 -- RR connection is released and DL and/or UL TBF(s) are reconfigured
+ {0 -- Message escape for GPRS mode TBFs
+ { { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ { 0 | 1 < PACKET_EXTENDED_TIMING_ADVANCE : bit (2) > }
+ {0|1 -- downlink TBF(s)
+ { 1 < Multiple Downlink Assignment :
+ < Multiple Downlink Assignment struct > > } ** 0
+ }
+ {0|1 -- uplink TBF(s)
+ { 0 | 1 < CHANNEL_CODING_COMMAND : bit (2) > }
+ < Multiple Uplink Assignment : < Multiple Uplink Assignment struct > >
+ }
+ < padding bits >
+ ! < Non-distribution part error : bit (*) = < no string > >
+ |1 -- Message escape bit for EGPRS mode TBFs
+ { 00 {
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ { 0 | 1 < PACKET_EXTENDED_TIMING_ADVANCE : bit (2) > }
+ { 0 | 1 < BEP_PERIOD2 : bit(4) > }
+ {0|1 -- downlink TBF(s)
+ { 0 | 1 < Downlink EGPRS Window Size : < EGPRS Window Size IE > > }
+ < LINK_QUALITY_MEASUREMENT_MODE : bit (2) >
+ { 1 < Multiple Downlink Assignment :
+ < Multiple Downlink Assignment struct > > } ** 0
+ {0|1 -- uplink TBF(s)
+ { 0 | 1 < EGPRS Channel Coding Command :
+ < EGPRS Modulation and Coding Scheme IE >> }
+ < RESEGMENT : bit (1) >
+ { 0 | 1 < Uplink EGPRS Window Size : < EGPRS Window Size IE > > }
+ < Multiple Uplink Assignment : < Multiple Uplink Assignment struct > > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-7
+ { 1 { 0 | 1< NPM Transfer Time : bit (5) > } }** 0
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-9
+ < Enhanced Flexible Timeslot Assignment : bit >
+ {0 -- EMST is not used in DL
+ |1 -- EMST is used in DL
+ < Downlink RLC Entity 2 : < RLC Entity Struct>
+ {0
+ | 1 < Downlink RLC Entity 3 : < RLC Entity Struct> }
+ }
+ {0 -- EMST is not used in UL
+ |1 -- EMST is used in UL
+ < Uplink RLC Entity 2 : < RLC Entity Struct>
+ {0
+ | 1 < Uplink RLC Entity 3 : < RLC Entity Struct> }
+ }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-10
+ {0 -- EMSR is not enabled in downlink
+ |1 -- EMSR is enabled in downlink
+ { 1 < EMSR Additional PFCs 1 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 2 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 3 : < Additional PFCs struct > > } ** 0
+ }
+ {0 -- EMSR is not enabled in uplink
+ |1 -- EMSR is enabled in uplink
+ { 1 < EMSR Additional PFCs 1 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 2 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 3 : < Additional PFCs struct > > } ** 0
+ }
+ < padding bits > } } }
+ ! < Non-distribution part error : bit (*) = < no string > >
+ }
+| 01 -- Message escape for Dual Carrier, BTTI with FANR activated, RTTI, EGPRS2
+ < Assignment Info : Assignment Info struct >
+ { 00 -- No frequency parameters included
+ | 01 -- Legacy IEs used
+ < Frequency Parameters C1: < Frequency Parameters IE > >
+ { 0 | 1 < Frequency Parameters C2: < Frequency Parameters IE > > }
+ | 10 -- Optimized Dual Carrier frequency parameters used
+ < Dual Carrier Frequency Parameters: < Dual Carrier Frequency Parameters IE > >
+ ! < Frequency parameters error: { 11 } bit (*) = <no string> > -- Reserved for future use
+ }
+ { 0 | 1 < PACKET_EXTENDED_TIMING_ADVANCE : bit (2) > }
+ { 0 | 1 < BEP_PERIOD2 : bit(4) > }
+{0|1 -- downlink TBF(s)
+ { 0 | 1 < Downlink EGPRS Window Size : < EGPRS Window Size IE > > }
+ < LINK_QUALITY_MEASUREMENT_MODE : bit (2) >
+ < Downlink EGPRS Level: < EGPRS Level IE > >
+ {0|1 -- BTTI mode
+ < FANR: bit (1) >
+ { 1 < BTTI Multiple Downlink Assignment :
+ < BTTI Multiple Downlink Assignment struct > > } ** 0
+ }
+ {0|1 -- RTTI mode
+ {0 -- Single Carrier Assignment
+ { 00 -- Default PDCH-pair configuration
+ | 01 -- Unchanged
+ | 10 -- Explicit PDCH pair configuration
+ < DOWNLINK_PDCH_PAIRS_C1 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C1 : bit (8) >
+ ! < PDCH pairs configuration error : { 1 1 } bit (*) = < no string > >
+ }
+ { 1 < RTTI Multiple Downlink Assignment SC :
+ < RTTI Multiple Downlink Assignment SC struct > > } ** 0
+ |1 -- Dual Carrier Assignment
+ { 00 -- Default PDCH pair configuration
+ | 01 -- Unchanged
+ | 10 -- Explicit PDCH pair configuration
+ < DOWNLINK_PDCH_PAIRS_C1 : bit (8) >
+ < DOWNLINK_PDCH_PAIRS_C2 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C1 : bit (8) >
+ < UPLINK_PDCH_PAIRS_C2 : bit (8) >
+ ! < PDCH pairs configuration error : { 1 1 } bit (*) = < no string > >
+ }
+ { 1 < RTTI Multiple Downlink Assignment DC :
+ < RTTI Multiple Downlink Assignment DC struct > > } ** 0
+ }
+ }
+}
+ {0|1 -- uplink TBF(s)
+ { 0 | 1 < EGPRS Channel Coding Command :
+ < EGPRS Modulation and Coding Scheme IE >> }
+ < RESEGMENT : bit (1) >
+ { 0 | 1 < Uplink EGPRS Window Size : < EGPRS Window Size IE > > }
+ < Multiple Uplink Assignment : < Multiple Uplink Assignment 2 struct > >
+ < Uplink EGPRS Level: < EGPRS Level IE > >
+ { 0 | 1 < Pulse Format: < Pulse Format IE > > }
+ }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-9
+ < Enhanced Flexible Timeslot Assignment : bit >
+ {0 -- EMST is not used in DL
+ | 1 < Downlink RLC Entity 2 : < RLC Entity Struct> -- EMST is used in DL
+ {0
+ | 1 < Downlink RLC Entity 3 : < RLC Entity Struct> }
+ }
+ {0 -- EMST is not used in UL
+ | 1 < Uplink RLC Entity 2 : < RLC Entity Struct> -- EMST is used in UL
+ {0
+ | 1 < Uplink RLC Entity 3 : < RLC Entity Struct> }
+ }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-10
+ {0 -- EMSR is not enabled in downlink
+ |1 -- EMSR is enabled in downlink
+ { 1 < EMSR Additional PFCs 1 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 2 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 3 : < Additional PFCs struct > > } ** 0
+ }
+ {0 -- EMSR is not enabled in uplink
+ |1 -- EMSR is enabled in uplink
+ { 1 < EMSR Additional PFCs 1 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 2 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 3 : < Additional PFCs struct > > } ** 0
+ } < padding bits > } }
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Message escape : { 10 | 11} bit (*) = < no string > > } -- Extended for future changes
+ }
+ | 11 -- Reserved for future use. When received it shall be interpreted as "00".
+ }
+ ! < Address information part error : bit (*) = < no string > >
+ }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< Multiple Downlink Assignment struct > ::=
+ < TIMESLOT_ALLOCATION : bit (8) >
+ { 0 | 1 < Uplink Control Timeslot : bit (3) > }
+ { 1 < Downlink TBF assignment : < Downlink TBF assignment struct > > } ** 0 ;
+
+< BTTI Multiple Downlink Assignment struct > ::=
+ < TIMESLOT_ALLOCATION_C1 : bit (8) >
+ { 0 | 1 < TIMESLOT_ALLOCATION_C2 : bit (8) > }
+ { 0 | 1 < Uplink Control Timeslot C1 : bit (3) > }
+ { 0 | 1 < Uplink Control Timeslot C2 : bit (3) > }
+ { 1 < Downlink TBF assignment : < Downlink TBF assignment 2 struct > > } ** 0 ;
+
+< RTTI Multiple Downlink Assignment SC struct > ::=
+ < RTTI_DOWNLINK_PDCH_PAIR_ASSIGNMENT_SC : bit (4) >
+ { 0 | 1 < Uplink Control Timeslot C1 : bit (3) > }
+ { 1 < Downlink TBF assignment : < Downlink TBF assignment 2 struct > > } ** 0 ;
+
+< RTTI Multiple Downlink Assignment DC struct > ::=
+ < RTTI_DOWNLINK_PDCH_PAIR_ASSIGNMENT_DC : bit (8) >
+ { 0 | 1 < Uplink Control Timeslot C1 : bit (3) > }
+ { 0 | 1 < Uplink Control Timeslot C2 : bit (3) > }
+ { 1 < Downlink TBF assignment : < Downlink TBF assignment 2 struct > > } ** 0 ;
+
+< Downlink TBF assignment struct > ::=
+ { 0 | 1 < PFI : bit (7) > }
+ < DOWNLINK_RLC_MODE : bit (1) >
+ { 0 | 1 < Uplink Control Timeslot : bit (3) > }
+ < TFI_ASSIGNMENT : bit (5) >
+ < CONTROL_ACK : bit (1) >
+ { 0 | 1 < Downlink EGPRS Window Size : < EGPRS Window Size IE > > } ;
+
+< Downlink TBF assignment 2 struct > ::=
+ { 0 | 1 < PFI : bit (7) > }
+ < RLC_MODE : bit (1) >
+ { 0 | 1 < Uplink Control Timeslot C1 : bit (3) > }
+ { 0 | 1 < Uplink Control Timeslot C2 : bit (3) > }
+ < TFI Assignment : bit (5) >
+ < CONTROL_ACK : bit (1) >
+ { 0 | 1 < NPM Transfer Time : bit (5) > }
+ < EVENT_BASED_FANR: bit (1) > -- '1' indicates that Fast Ack/Nack Reporting is activated for this TBF
+ { 0 | 1 < Downlink EGPRS Window Size : < EGPRS Window Size IE > > } ;
+
+< Multiple Uplink Assignment struct > ::=
+ < EXTENDED_DYNAMIC_ALLOCATION : bit (1) >
+ { 0 | 1 < P0 : bit (4) >
+ < PR_MODE : bit(1) > }
+ { 0 | 1 < Global Timeslot description : < Timeslot description struct > >
+ { 1 < Uplink TBF Assignment : < Uplink TBF Assignment struct > > } ** 0 } ;
+
+< Multiple Uplink Assignment 2 struct > ::=
+ < EXTENDED_DYNAMIC_ALLOCATION : bit (1) >
+ { 0 | 1 < P0_C1 : bit (4) >
+ < PR_MODE_C1 : bit(1) >
+ { 0 | 1 < P0_C2 : bit (4) >
+ < PR_MODE_C2 : bit(1) > } }
+ { 0 | 1 -- FANR is activated
+ {0 -- SSN-based encoding is selected
+ |1 -- Time-based encoding is selected
+ < TSH : bit (2) > } }
+ {0|1 -- BTTI mode
+ { 0 | 1 < Global Timeslot description : < Timeslot description 2 struct > > }
+ { 1 < Uplink TBF Assignment 2 : < Uplink TBF Assignment 2 struct > > } ** 0
+ }
+ {0|1 -- RTTI mode
+ { 0 | 1 < Uplink Assignment PDCH Pairs Description : < PDCH Pairs Description IE > > }
+ {0 -- without power control parameters
+ |1 -- with power control parameters
+ < ALPHA_C1 : bit (4) >
+ { 0 | 1 < ALPHA_C2 : bit (4) > }
+ < N_PAIRS : bit (3) >
+ { 0 | 1 < GAMMA : bit (5) > } * (val(N_PAIRS) + 1)
+ {0 -- RTTI USF, or no second GAMMA values are given in case of RTTI mode with BTTI USF
+ |1 -- Second GAMMA values are given in case of RTTI mode with BTTI USF
+ { 0 | 1 < GAMMA : bit (5) > } * (val(N_PAIRS) + 1)
+ }
+ }
+ { 1 < Uplink TBF Assignment 2 : < Uplink TBF Assignment 2 struct > >
+ < RTTI_USF_MODE : bit (1) > } ** 0
+ };
+
+< Timeslot description struct > ::=
+ {0 -- without power control params
+ < MS_TIMESLOT_ALLOCATION : bit (8) >
+ |1 -- with power control params
+ < ALPHA : bit (4) >
+ { 0 | 1 < GAMMA_TN0 : bit (5) > }
+ { 0 | 1 < GAMMA_TN1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN3 : bit (5) > }
+ { 0 | 1 < GAMMA_TN4 : bit (5) > }
+ { 0 | 1 < GAMMA_TN5 : bit (5) > }
+ { 0 | 1 < GAMMA_TN6 : bit (5) > }
+ { 0 | 1 < GAMMA_TN7 : bit (5) > } } ;
+
+< Timeslot description 2 struct > ::=
+ {0 -- without power control params
+ < MS_TIMESLOT_ALLOCATION_C1 : bit (8) >
+ { 0 | 1 < MS_TIMESLOT_ALLOCATION_C2 : bit (8) > }
+ |1 -- with power control params
+ < ALPHA_C1 : bit (4) >
+ { 0 | 1 < GAMMA_TN0_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN1_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN2_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN3_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN4_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN5_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN6_C1 : bit (5) > }
+ { 0 | 1 < GAMMA_TN7_C1 : bit (5) > }
+ { 0 | 1 < ALPHA_C2 : bit (4) > }
+ { 0 | 1 < GAMMA_TN0_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN1_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN2_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN3_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN4_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN5_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN6_C2 : bit (5) > }
+ { 0 | 1 < GAMMA_TN7_C2 : bit (5) > }
+};
+
+< Uplink TBF Assignment struct > ::= -- Recursive for multiple TBFs
+ { 0 | 1 < PFI : bit (7) > }
+ < TFI_ASSIGNMENT : bit (5) >
+ { 0 | 1 < CHANNEL_CODING_COMMAND : bit (2) > }
+ { 0 | 1 < EGPRS Channel Coding Command : < EGPRS Modulation and Coding Scheme IE > > }
+ { 0 | 1 < Uplink EGPRS Window Size : < EGPRS Window Size IE > > }
+ < USF_GRANULARITY : bit (1) >
+ {0 -- The timeslots assigned to the TBF are all the timeslots assigned
+ -- in the Global Timeslot description
+ | 1 < TBF_TIMESLOT_ALLOCATION : bit (N) > } -- The timeslots assigned to the TBF are a subset of all the
+ -- timeslots assigned in the Global Timeslot description. Where
+ -- N is the amount of timeslots assigned to the MS in the Global
+ -- Timeslot description
+ {0 < USF_ALLOCATION : bit (3) > -- The same USF is valid on all timeslots assigned to the TBF
+ |1 < USF_ALLOCATION : bit (3) > -- Different USF(s) assigned
+ -- USF assignment on the lowest numbered timeslot
+ -- assigned to the TBF
+ { 0 | 1 < USF_ALLOCATION : bit (3) > } * (M-1) } ; -- USFs on subsequent timeslots assigned to the TBF:
+ -- A "0" (respectively a "1" followed by a USF value)
+ -- means same (respectively different) USF value as the
+ -- USF on the next lower numbered timeslot assigned to
+ -- the TBF. Where M is the amount of timeslots assigned
+ -- to the TBF in the TBF_TIMESLOT_ALLOCATION if
+ -- present, else in the Global Timeslot description
+
+< Uplink TBF Assignment 2 struct > ::= -- Recursive for multiple TBFs
+ {0 | 1 < PFI : bit (7) > }
+ < RLC_MODE : bit (1) >
+ < TFI Assignment : bit (5) >
+ { 0 | 1 < EGPRS Channel Coding Command : < EGPRS Modulation and Coding Scheme IE > > }
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+ { 0 | 1 < NPM Transfer Time : bit (5) > }
+ { 0 | 1 -- FANR is activated
+ < REPORTED TIMESLOTS C1: bit (8) > -- carrier 1 in Downlink Dual Carrier configuration
+ { 0 | 1 < REPORTED TIMESLOTS C2 : bit (8) > } -- carrier 2 in Downlink Dual Carrier configuration
+ }
+ < USF_GRANULARITY : bit (1) >
+ { 0 | 1 < TBF_TIMESLOT_ALLOCATION : bit (N) > } -- The timeslots assigned to the TBF are all the timeslots
+ -- assigned in the Global Timeslot description
+ -- see description in Table 11.2.29a.2
+ { 0 < USF_ALLOCATION_C1 : bit (3) >
+ { 0 | 1 < USF_ALLOCATION_C2 : bit (3) > } -- The same USF is valid on all timeslots assigned to the TBF
+ -- for each specified carrier
+ |1 -- Different USF(s) assigned; see description in Table 11.2.29a.2
+ < USF_ALLOCATION : bit (3) >
+ { 0 | 1 < USF_ALLOCATION : bit (3) > } * (M-1)
+ };
+
+< Assignment Info struct > ::=
+ < Assignment Type : bit (2) >
+ < Carrier ID : bit (1) > ;
+
+< RLC Entity > ::=
+ < TFI_ASSIGNMENT : bit (5) >
+ < RLC_MODE : bit (1) >
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+ PFI : bit (7) >;
+
+< Additional PFCs struct > ::=
+ < TFI_ASSIGNMENT : bit (5) >
+ { 0 | 1 < NPM Transfer Time : bit (5) > }
+ < PFI : bit (7) >;
+
+-- 11.2.38
+< MBMS service request message content > ::=
+ < TLLI : bit (32) >
+ < TMGI : < TMGI struct > >
+ { 0 | 1 < MBMS Session Identity : bit (8) > }
+ < MS_ID Request Indication : bit (1) >
+ < padding bits > ;
+
+-- 11.2.39
+< MBMS Assignment Non-distribution message content > ::=
+ < PAGE_MODE : bit (2) >
+ { {0 < Global TFI : < Global TFI IE > >
+ | 10 < TLLI / G-RNTI : bit (32) > }
+ { 0 | 1 < Length Indicator of MS_ID : bit (2) >
+ < MS_ID : bit (val (Length Indicator of MS_ID)+1) >
+ < Packet Timing Advance : < Packet Timing Advance IE > >
+ { 0 | 1 < ALPHA : bit (4) >
+ { 0 | 1< GAMMA : bit (5) > }
+ }
+ }
+ { 0 | 1 < TMGI : < TMGI struct > > }
+ { 0 | 1 < MBMS Session Identity : bit (8) > }
+ { 00 -- Assignment reject. No point-to-multipoint channel is established for the MBMS session.
+ < Reject cause: bit (2) >
+ { 0 | 1 < Estimated Session Duration : bit (8) > }
+ | 01 -- A point-to-multipoint channel is established or reassigned for the MBMS session.
+ < MBMS bearer description : < MBMS bearer description struct > >
+ < Estimated Session Duration : bit (8) >
+ < MBMS In-band Signalling Indicator : < MBMS In-band Signalling Indicator IE > >
+ | 10 -- The MBMS Bearer Identity is reassigned for the MBMS radio bearer.
+ { 0 | 1 < MBMS Radio Bearer Starting Time : < bit (16) > }
+ < Length of MBMS Bearer Identity : bit (3) >
+ < MBMS Bearer Identity : bit (val (Length of MBMS Bearer Identity)) >
+ }
+ < padding bits >
+ ! < Non-distribution part error : bit (*) = < no string > >
+ ! < Address information part error : bit (*) = < no string > >
+ }
+ ! < Distribution part error : bit (*) = < no string > >;
+
+< MBMS bearer description struct > ::=
+ { 0 | 1 < MBMS Radio Bearer Starting Time : < bit (16) > }
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ < DOWNLINK_TIMESLOT_ALLOCATION : bit (8) >
+ < Length of MBMS Bearer Identity : bit (3) >
+ < MBMS Bearer Identity : bit (val (Length of MBMS Bearer Identity)) >
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE >> }
+ { 0 | 1 < TIMESLOT_ALLOCATION_UPLINK_FEEDBACK_CHANNEL : bit (3) > }
+ { 0 | 1 < NPM Transfer Time : bit (5) > } ;
+
+-- 11.2.39a
+< MBMS Assignment Distribution message content > ::=
+ < PAGE_MODE : bit (2) >
+{ < TMGI : < TMGI struct > >
+ { 0 | 1 < MBMS Session Identity : bit (8) > }
+ {0 -- Assignment reject. No point-to-multipoint channel is established for the MBMS session.
+ < Reject cause: bit (2) >
+ { 0 | 1 < Estimated Session Duration : bit (8) > }
+ |1 -- A point-to-multipoint channel is established for the MBMS session.
+ < MBMS bearer description : < MBMS bearer description struct > >
+ < Estimated Session Duration : bit (8) >
+ < MBMS In-band Signalling Indicator : < MBMS In-band Signalling Indicator IE > >
+ }
+ < padding bits >
+ ! < Distribution part error : bit (*) = < no string > > } ;
+
+< MBMS bearer description struct > ::=
+ { 0 | 1 < MBMS Radio Bearer Starting Time : < bit (16) > > }
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ < DOWNLINK_TIMESLOT_ALLOCATION : bit (8) >
+ < Length of MBMS Bearer Identity : bit (3) >
+ < MBMS Bearer Identity : bit (val (Length of MBMS Bearer Identity) ) >
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+ { 0 | 1 < TIMESLOT_ALLOCATION_UPLINK_FEEDBACK_CHANNEL : bit (3) > }
+ { 0 | 1 < NPM Transfer Time : bit (5) > } ;
+
+-- 11.2.40
+< MBMS Neighbouring Cell Information message content > ::=
+ < PAGE_MODE : bit (2) >
+ {1 < NEIGHBOUR_CELL_INDEX : bit (7) >
+ { 0 | 1 < BSIC : bit (6) > }
+ < MBMS_PTM_CHANGE_MARK : bit (2) >
+ {1
+ < Length of MBMS Bearer Identity : bit (3) >
+ < MBMS Bearer Identity : bit (val (Length of MBMS Bearer Identity)) >
+ < Absence cause: bit (2) >
+ } ** 0 -- End of list of MBMS bearers for which no p-t-m channel description is given in the neighbour cell
+ { 1 < MBMS Frequency List : < MBMS Frequency List struct > > } **0
+ { 1 < MBMS p-t-m Frequency Parameters : < MBMS p-t-m Frequency Parameters struct > >
+ < DOWNLINK_TIMESLOT_ALLOCATION : bit (8) > -- default value
+ { 1 < Length of Serving MBMS Bearer Identity : bit (3) >
+ < Serving MBMS Bearer Identity : bit (val (Length of Serving MBMS Bearer Identity)) >
+ < Length of Neighbour MBMS Bearer Identity : bit (3) >
+ < Neighbour MBMS Bearer Identity : bit (val (Length of Neighbour MBMS Bearer Identity)) >
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE >> }
+ { 0 | 1 < DOWNLINK_TIMESLOT_ALLOCATION : bit (8) > } -- specific value
+ { 0 | 1 < TIMESLOT_ALLOCATION_UPLINK_FEEDBACK_CHANNEL : bit (3) > }
+ { 0 | 1 < MBMS Radio Bearer Starting Time : < bit (16) > > }
+ < MBMS In-band Signalling Indicator : < MBMS In-band Signalling Indicator IE > >
+ { 0 | 1 < NPM Transfer Time : bit (5) > }
+ } ** 0 -- End of list of MBMS bearer descriptions sharing the same PDCH (frequency parameters)
+ } ** 0 -- End of list of PDCHs for this cell
+ { 0 | 1 < PBCCH information : < PBCCH information struct > > }
+ } ** 0 -- End of list of neighbouring cells
+ { null | 0 bit** = < no string > -- Receiver compatible with earlier release
+ |1 -- Rel-7 additions
+ { 1 { 0 | 1 < USF : bit (3) > -- choice bit indicates presence or not of parameters for the MBMS bearer
+ { 0 | 1 < MPRACH Control Parameters : < MPRACH Control Parameters IE > > }
+ }
+ } ** 0 -- End of list of MBMS bearers.
+ -- The list of MBMS bearers is ordered as described by the loops in the earlier releases part.
+ }
+ < padding bits >
+! < Distribution part error : bit (*) = < no string > > ;
+
+< PBCCH information struct > ::=
+ < Pb : bit (4) >
+ < TSC : bit (3) >
+ < TN : bit (3) >
+ { 00 -- non-hopping PBCCH on BCCH carrier
+ | 01 < ARFCN : bit (10) > -- non-hopping PBCCH
+ |1 -- hopping PBCCH, frequency parameters from an MBMS bearer description for this cell
+ < Length of Neighbour MBMS Bearer Identity : bit (3) >
+ < Neighbour MBMS Bearer Identity : bit (val (Length of Neighbour MBMS Bearer Identity)) >
+ };
+
+< MBMS Frequency List struct > ::=
+ < FREQ_LIST_NUMBER : bit (2) >
+ < Length of Frequency List contents : bit (4) >
+ < Frequency List contents : octet (val(Length of Frequency List contents) + 3) > ;
+
+< MBMS p-t-m Frequency Parameters struct > ::=
+ < TSC : bit (3) >
+ { 0 < ARFCN : bit (10 >
+ | 1 < MAIO : bit (6) >
+ < HSN : bit (6) >
+ < FREQ_LIST_NUMBER : bit (2) > } ;
+
+-- 11.2.41
+< MBMS MS_ID Assignment message content > ::=
+ < PAGE_MODE : bit (2) >
+ { { 0 < Global TFI : < Global TFI IE > >
+ | 10 < TLLI / G-RNTI : bit (32) > }
+ {0 -- MS_ID is assigned the first time.
+ < Length of MBMS Bearer Identity : bit (3) >
+ < MBMS Bearer Identity : bit (val (Length of MBMS Bearer Identity)) >
+ < MS_ID : bit (5 - val (Length of MBMS Bearer Identity)) >
+ < Packet Timing Advance : < Packet Timing Advance IE > >
+ { 0 | 1 < ALPHA : bit (4) >
+ { 0 | 1< GAMMA : bit (5) > }
+ }
+ |1 -- MS_ID is reassigned.
+ < Current MS_ID Expiry Time : bit (16) >
+ {0 -- MS_ID is not redefined.
+ |1 -- MS_ID is redefined.
+ < Length Indicator of MS_ID : bit (2) >
+ < MS_ID : bit (val (Length Indicator of MS_ID) + 1) > }
+ { 0 | 1 < Packet Timing Advance : < Packet Timing Advance IE > >
+ { 0 | 1 < ALPHA : bit (4) >
+ { 0 | 1< GAMMA : bit (5) > }
+ }
+ }
+ < padding bits >
+ ! < Non-distribution part error : bit (*) = < no string > > }
+ ! < Address information part error : bit (*) = < no string > > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+-- 11.2.42
+< PACKET MBMS ANNOUNCEMENT message content > ::=
+ < PAGE_MODE : bit (2) >
+ < TMGI : < TMGI IE > >
+ { 0 | 1 < MBMS Session Identity : bit (8) > }
+ {0 -- counting is off
+ { 0 | 1 < MBMS p-t-m channel description : < MBMS p-t-m channel description struct > > }
+ |1 -- counting is on
+ { 0 | 1 < MPRACH description : < MPRACH description struct > > }
+ }
+ { 0 | 1 < RESTRICTION_TIMER : bit (4) > }
+ < padding bits > } // -- truncation at end of message allowed, bits '0' assumed
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+< MBMS p-t-m channel description struct > ::=
+ < Estimated Session Duration : bit (8) >
+ { 0 | 1 < MBMS Radio Bearer Starting Time : bit (16) > }
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ < DL_TIMESLOT_ALLOCATION : bit (8) >
+ < Length of MBMS Bearer Identity : bit (3) >
+ < MBMS Bearer Identity : bit (val (Length of MBMS Bearer Identity)) >
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE >> }
+ { 0 | 1 < NPM Transfer Time : bit (5) > };
+
+< MPRACH description struct > ::=
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ < MPRACH_TIMESLOT : bit (3) >
+ < USF : bit (3) >
+ {0 -- no MPRACH access parameters present
+ |1 -- MPRACH access parameters present
+ < MPRACH Control Parameters : < MPRACH Control Parameters IE > > } ;
+
+-- 11.2.43
+< PS Handover Command message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 < Global TFI : < Global TFI IE > >
+ < CONTAINER_ID : bit(2) >
+ { 00 < PS Handover to A/Gb Mode Payload :
+ { 00 < PS Handover RR Info: < PS Handover Radio Resources IE > >
+ | 01 < PS Handover RR 2 Info: < PS Handover Radio Resources 2 IE > >
+ ! < RR Handover RR Info Error : { 10 | 11 } bit (*) = <no string> > } - Extended for future changes
+ { 0 | 1 < NAS Container for PS Handover IE > }
+ | 01 < PS Handover to UTRAN Payload :
+ < RRC Container IE > >
+ | 10 < PS Handover to E-UTRAN Payload :
+ < RRC Container IE > >
+ ! < Message escape : 11 bit (*) = < no string > > } -- Extended for future changes
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-8 :
+ { 0 | 1 < E-UTRAN_CCN_ACTIVE : bit (1) > }
+ { 0 | 1 < Measurement Control Parameters Description :
+ < MeasurementControl Parameters Description IE>>}
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-9
+ < Enhanced Flexible Timeslot Assignment : bit >
+ { 0 < EMST_NW_Capability : bit (1) > -- EMST is not used
+ |1 -- EMST is used
+ {0
+ | 1 < Downlink RLC Entity 2 : < RLC Entity Struct>
+ {0
+ | 1 < Downlink RLC Entity 3 : < RLC Entity Struct> }
+ }
+ {0
+ | 1 < Uplink RLC Entity 2 : < RLC Entity Struct>
+ {0
+ | 1 < Uplink RLC Entity 3 : < RLC Entity Struct> }
+ }
+ }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-10
+ {0 -- EMSR is not enabled in downlink
+ |1 -- EMSR is enabled in downlink
+ { 1 < EMSR Additional PFCs 1 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 2 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 3 : < Additional PFCs struct > > } ** 0
+ }
+ {0 -- EMSR is not enabled in uplink
+ |1 -- EMSR is enabled in uplink
+ { 1 < EMSR Additional PFCs 1 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 2 : < Additional PFCs struct > > } ** 0
+ { 1 < EMSR Additional PFCs 3 : < Additional PFCs struct > > } ** 0
+ }
+ < padding bits > } } }
+ ! < Non-distribution part error : bit (*) = < no string > >
+ ! < Address information part error : bit (*) = < no string > > }
+! < Distribution part error : bit (*) = < no string > > ;
+
+< RLC Entity Struct > ::=
+ < TFI : bit (5) >
+ < RLC_MODE : bit (1) >
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+ < PFI : bit (7) >;
+
+< Additional PFCs struct > ::=
+ < TFI : bit (5) >
+ { 0 | 1 < NPM Transfer Time : bit (5) > }
+ < PFI : bit (7) >;
+
+-- 11.2.44
+< PS Handover Access message content 8 bit message > ::= -- 8-bit access burst format
+ < Handover Reference : bit (8) >;
+< PS Handover Access message content 11 bit message > ::= -- 11-bit access burst format
+ < Handover Reference : bit (8) >
+ < spare : bit (3) > ;
+
+-- 11.2.45
+< Packet Physical information message content > ::= -- RLC/MAC control block format
+ < PAGE_MODE : bit (2) >
+ < Global TFI : < Global TFI IE > >
+
+< TIMING_ADVANCE_VALUE : bit (8) >
+ < padding bits >; -- truncation at end of message allowed, bits '0' assumed
+
+-- 11.2.46
+< DTM Handover Command message content > ::=
+ < PAGE_MODE : bit (2) >
+ { 0 < Global TFI : < Global TFI IE > >
+ { 00 < DTM Handover to A/Gb Mode Payload : < DTM Handover to A/Gb mode Payload description struct > >
+ | 01 < DTM Handover to UTRAN Payload : < RRC Container IE > > }
+ < padding bits >
+ ! < Non-distribution part error : bit (*) = < no string > > ;
+ ! < Address information part error : bit (*) = < no string > > }
+! < Non-distribution part error : bit (*) = < no string > > ;
+
+< DTM Handover to A/Gb mode Payload description struct > ::=
+ < DTM Handover CS RR Info: < DTM Handover CS Radio Resources IE > >
+ { 00 < DTM Handover PS RR Info: < DTM Handover PS Radio Resources IE > >
+ | 01 < DTM Handover PS RR 2 Info : < DTM Handover PS Radio Resources 2 IE > >
+ ! < Message escape : { 10 | 11 } bit (*) = <no string > > } -- reserved for future use
+ { 0 | 1 < NAS Container for PS Handover IE > };
+
+-- 11.2.47
+< Packet Application Information message content > ::=
+ < PAGE_MODE : bit (2) >
+ { < Application Type : bit (4) > -- type of Application
+ < Application Data : octet ** >
+ < padding bits >}
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+}
diff --git a/proto_desc/gprs/encodix/ies_fixes.diff b/proto_desc/gprs/encodix/ies_fixes.diff
new file mode 100644
index 0000000..962136f
--- /dev/null
+++ b/proto_desc/gprs/encodix/ies_fixes.diff
@@ -0,0 +1,124 @@
+--- foo 2011-12-03 21:17:19.000000000 +0100
++++ gsm_44_060_10_6_0_ies.src 2011-12-03 21:40:28.000000000 +0100
+@@ -41,6 +44,10 @@
+ < C_VALUE : bit (6) >
+ < EGPRS Timeslot Link Quality Measurements : <EGPRS Timeslot Link Quality Measurements IE >> ;
+
++-- 12.5.2
++< EGPRS Window Size IE > ::=
++ < bit (5) > ;
++
+ -- 12.5.3
+ <EGPRS BEP Link Quality Measurements IE> ::=
+ { 0 | 1 < GMSK_MEAN_BEP : bit (5) >
+@@ -318,7 +325,7 @@
+ { 0 | 1 < UPLINK_TIMING_ADVANCE_INDEX : bit (4) >
+ < UPLINK_TIMING_ADVANCE_TIMESLOT_NUMBER : bit (3) > }
+ { 0 | 1 < DOWNLINK_TIMING_ADVANCE_INDEX : bit (4) >
+- < DOWNLINK_TIMING_ADVANCE_TIMESLOT_NUMBER : bit (3) > }
++ < DOWNLINK_TIMING_ADVANCE_TIMESLOT_NUMBER : bit (3) > } ;
+
+ -- 12.13
+ < Power Control Parameters IE > ::=
+@@ -347,8 +354,8 @@
+
+ -- 12.21
+ < Starting Frame Number Description IE > ::=
+- { 0 < Absolute Frame Number Encoding >
+- | 1 < Relative Frame Number Encoding > } ;
++ { 0 < Absolute Frame Number Encoding : bit(16) >
++ | 1 < Relative Frame Number Encoding : bit(13) > } ;
+
+ -- 12.23
+ < Cell Identification IE > ::=
+@@ -369,13 +376,13 @@
+ < PAN_INC : bit (3) >
+ < PAN_MAX : bit (3) > }
+ -- Optional extension information:
+- { 0 | 1 <Extension Length : bit (6)>
+- < bit (val(Extension Length) + 1)
+- & { <Extension Information > ! { bit ** = <no string> } } > } ;
++ { 0 | 1 < Extension Length : bit (6) >
++ { < bit (val(Extension Length) + 1) >
++ & <Extension Information > } ! { bit ** = <no string> } } ;
+
+-< Extension Information> : : =
++< Extension Information > ::=
+ { { -- R99 extension:
+- { 0 | 1 - EGPRS supported by the cell if the choice bit is set to '1'
++ { 0 | 1 -- EGPRS supported by the cell if the choice bit is set to '1'
+ < EGPRS_PACKET_CHANNEL_REQUEST : bit >
+ < BEP_PERIOD : bit (4) > }
+ < PFC_FEATURE_MODE: bit >
+@@ -427,16 +434,16 @@
+ < MS-TXPWR-MAX-CCCH : bit (5) > -- maximum Tx power level
+ -- Optional extension information:
+ { 0 | 1 < Extension Length : bit (6) >
+- < bit (val(Extension Length) + 1)
+- & { <Extension Information > ! { bit ** = <no string> } } > } ;
++ { < bit (val(Extension Length) + 1) >
++ & <Extension Information > } ! { bit ** = <no string> } } ;
+ < Extension Information > ::=
+ < ECSC: bit > -- Early Classmark Sending Control
+- < 3G ECSR > -- 3G Early Classmark Sending Restriction
++ < 3G ECSR : bit > -- 3G Early Classmark Sending Restriction
+ < spare bit > ** ;
+
+ -- 12.28
+ < LSA Parameters IE > ::=
+- < NR_OF_FREQ_OR_CELLS : bit (5) >:
++ < NR_OF_FREQ_OR_CELLS : bit (5) >
+ { < LSA ID information : < LSA ID information struct >> * (val(NR_OF_FREQ_OR_CELLS)) };
+
+ < LSA ID information struct > ::=
+@@ -486,12 +543,12 @@
+ { 0 | 1 < MPRACH description : < MPRACH description IE > > } };
+
+ -- 12.37
+-< MBMS p-t-m channel description IE > :: =
++< MBMS p-t-m channel description IE > ::=
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ < DL_TIMESLOT_ALLOCATION : bit (8) >;
+
+ -- 12.38
+-< MPRACH description IE > :: =
++< MPRACH description IE > ::=
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ < MPRACH_TIMESLOT NUMBER : bit (3) >
+ < USF : bit (3) >
+@@ -1179,7 +646,7 @@
+ < 3G Priority Parameters IE > ::=
+ { 0 | 1 < DEFAULT_UTRAN_PRIORITY : bit(3) >
+ < DEFAULT_THRESH_UTRAN: bit(5) >
+- < DEFAULT_UTRAN_QRXLEVMIN: bit(5) }
++ < DEFAULT_UTRAN_QRXLEVMIN: bit(5) > }
+ { 1 < Repeated UTRAN Priority Parameters : < Repeated UTRAN Priority Parameters struct >> } ** 0 ;
+
+ < Repeated UTRAN Priority Parameters struct > ::=
+@@ -1238,7 +705,7 @@
+ { 1 < E-UTRAN_FREQUENCY_INDEX : bit (3) > } ** 0 } ** 0 ;
+
+ -- 12.56
+-< Measurement Control Parameters Description> :: =
++< Measurement Control Parameters Description> ::=
+ { 0 | 1 < Measurement_Control_E-UTRAN : bit(1) >
+ < E-UTRAN_FREQUENCY_INDEX : bit (3) >
+ { 1 < E-UTRAN_FREQUENCY_INDEX : bit (3) > } ** 0
+@@ -1253,7 +720,7 @@
+ { 1 < PCID : bit (9) > } ** 0 -- explicit PCID coding
+ { 0 | 1 < PCID_BITMAP_GROUP : bit (6) > }
+ { 1 < PCID_Pattern_length : bit (3) >
+- < PCID_Pattern : bit (val(PCID_Pattern_length + 1)) >
++ < PCID_Pattern : bit (val(PCID_Pattern_length) + 1) >
+ < PCID_pattern_sense : bit (1) >
+ } ** 0 ;
+
+@@ -1261,7 +728,7 @@
+ < PSC Group IE > ::=
+ { 1 < PSC : bit (9) > } ** 0 -- explicit PSC coding
+ { 1 < PSC_Pattern_length : bit (3) >
+- < PSC_Pattern : bit (val(PSC_Pattern_length + 1)) >
++ < PSC_Pattern : bit (val(PSC_Pattern_length) + 1) >
+ < PSC_pattern_sense : bit (1) >
+ } ** 0 ;
+
diff --git a/proto_desc/gprs/encodix/msgs_fixes.diff b/proto_desc/gprs/encodix/msgs_fixes.diff
new file mode 100644
index 0000000..7175b6f
--- /dev/null
+++ b/proto_desc/gprs/encodix/msgs_fixes.diff
@@ -0,0 +1,487 @@
+--- gsm_44_060_10_6_0_msgs.src.orig 2011-12-03 21:50:30.000000000 +0100
++++ gsm_44_060_10_6_0_msgs.src 2011-12-03 22:36:56.000000000 +0100
+@@ -25,7 +25,7 @@
+ < MESSAGE_TYPE : bit (6) == 0 10000 > < Multiple TBF Uplink Assignment message content > |
+ < MESSAGE_TYPE : bit (6) == 0 10001 > < Multiple TBF Timeslot Reconfigure message content > |
+ < MESSAGE_TYPE : bit (6) == 0 10011 > < MBMS MS_ID Assignment message content > | -- PACCH only
+- < MESSAGE_TYPE : bit (6) == 0 10100 > < MBMS Assignment (Non-distribution) message content > |
++ < MESSAGE_TYPE : bit (6) == 0 10100 > < MBMS Assignment Non-distribution message content > |
+ < MESSAGE_TYPE : bit (6) == 0 10101 > < PS Handover Command message content > | -- PACCH only
+ < MESSAGE_TYPE : bit (6) == 0 10110 > < Packet Physical Information message content > | -- PACCH only
+ < MESSAGE_TYPE : bit (6) == 0 10111 > < DTM Handover Command message content > | -- PACCH only
+@@ -49,7 +49,7 @@
+ < MESSAGE_TYPE : bit (6) == 1 00000 > < Packet Serving Cell SI message content > |
+ < MESSAGE_TYPE : bit (6) == 1 00111 > < Packet CS Command message content > |
+ < MESSAGE_TYPE : bit (6) == 1 01001 > < Packet CS Release Indication message content > |
+- < MESSAGE_TYPE : bit (6) == 1 01010 > < MBMS Assignment (Distribution) message content > |
++ < MESSAGE_TYPE : bit (6) == 1 01010 > < MBMS Assignment Distribution message content > |
+ < MESSAGE_TYPE : bit (6) == 1 01011 > < MBMS Neighbouring Cell Information message content >|
+ < MESSAGE_TYPE : bit (6) == 1 01100 > < Packet MBMS Announcement message content >
+ < MESSAGE_TYPE : bit (6) == 1 01101 > < Packet Application Information message content >
+@@ -191,7 +191,7 @@
+ |1
+ < E-UTRAN CSG Target Cell Measurement Report : < E-UTRAN CSG Measurement Report IE > > }
+ { 0 | 1 < E-UTRAN CCN Measurement Report : < E-UTRAN CCN Measurement Report struct > > }
+- ! < Message escape : { 1111 } bit (*) = <no string> > }
++ ! < Message escape : { 1111 } bit (*) = <no string> >
+ { 0< BA_USED : bit > | 1 < PSI3_CHANGE_MARK : bit(2) > }
+ < PMO_USED : bit >
+ < PCCN_SENDING : bit (1) >
+@@ -226,7 +226,7 @@
+ < 3G CCN Measurement Report Struct > ::= -- Measurement Report for 3G neighbour cells
+ < N_3G: bit (3) >
+ { < 3G_CELL_LIST_INDEX : bit (7) >
+- < REPORTING_QUANTITY : bit (6) > } * (val(N_3G + 1 )) ;
++ < REPORTING_QUANTITY : bit (6) > } * (val(N_3G) + 1) ;
+
+ < E-UTRAN Target Cell struct > ::=
+ < EARFCN : bit (16) >
+@@ -239,7 +239,7 @@
+ < N_E-UTRAN: bit (2) >
+ { < E-UTRAN_FREQUENCY_INDEX : bit (3) >
+ < CELL IDENTITY : bit (9) >
+- < REPORTING_QUANTITY : bit (6) > } * (val(N_E-UTRAN + 1 )) ;
++ < REPORTING_QUANTITY : bit (6) > } * (val(N_E-UTRAN) + 1) ;
+
+ -- 11.2.4
+ < Packet Cell Change Order message content > ::=
+@@ -347,7 +349,7 @@
+ < PRIORITY_CLASS : bit (3) >
+ < HCS_THR : bit (5) > ;
+
+-< ENH Measurement parameters struct > :: =
++< ENH Measurement parameters struct > ::=
+ { 0 < BA_IND : bit > < 3G_BA_IND : bit > | 1 < PSI3_CHANGE_MARK : bit(2) > }
+ < PMO_IND : bit >
+ < REPORT_TYPE : bit >
+@@ -432,7 +433,7 @@
+
+ < CCN Support Description struct > ::=
+ < Number_Cells : bit (7) >
+- { CCN_SUPPORTED : bit } * (val(Number_Cells)) ;
++ < CCN_SUPPORTED : bit > * (val(Number_Cells)) ;
+
+ < Iu Mode Neighbour Cell Params struct > ::=
+ { 0 | 1 < Iu Mode Cell Selection Params : <Iu Mode Cell Selection struct > > }
+@@ -723,19 +698,19 @@
+ { 0 | 1 < Channel Request Description : < Channel Request Description IE > >}
+ { 0 | 1 < PFI : bit(7) > }
+ { 0 | 1 < EPD A/N Type 2 Extension length : bit (8) >
+- < bit (val(EPD A/N Type 2 Extension length) + 1)
+- & { < EPD A/N Type 2 Extension Info > ! { bit** = <no string> }} > }
++ { < bit (val(EPD A/N Type 2 Extension length) + 1) >
++ & < EPD A/N Type 2 Extension Info > } ! { bit** = <no string> } }
+ -- Truncation of the EGPRS Ack/Nack Description is allowed if the mobile station is assigned a downlink
+ -- dual carrier configuration and the available space in the message without EGPRS Ack/Nack Description IE
+ -- does not allow for the inclusion of a valid EGPRS Ack/Nack Description IE, i.e. is less than 16 bits.
+ -- In the same conditions, the receiver shall assume that no EGPRS Ack/Nack description IE is included.
+ { < EGPRS Ack/Nack Description : < EGPRS Ack/Nack Description IE >> } //
+- <padding bits > } ;
++ <padding bits > ;
+
+ < EPD A/N Type 2 Extension Info > ::=
+ { 0 | 1 < Extended Channel Request Description : < Extended Channel Request Description IE > > }
+ < EARLY_TBF_ESTABLISHMENT : bit (1) >
+- { 0 | 1 < Secondary Dual Carrier Channel Report : < EGPRS Channel Quality Report Type 2 IE > }
++ { 0 | 1 < Secondary Dual Carrier Channel Report : < EGPRS Channel Quality Report Type 2 IE > > }
+ < spare bit >** // ; -- Truncation may occur between released versions of the protocol
+ -- The receiver shall assume the value zero of any truncated bits
+
+@@ -855,8 +830,8 @@
+ {0
+ | 1 < RLC Entity 3 : < RLC Entity Struct > > }
+ }
+- { 0 | 1 MTTI_DOWNLINK_ASSIGNMENT_C1 : bit (1) }
+- { 0 | 1 MTTI_DOWNLINK_ASSIGNMENT_C2 : bit (1) }
++ { 0 | 1 < MTTI_DOWNLINK_ASSIGNMENT_C1 : bit (1) > }
++ { 0 | 1 < MTTI_DOWNLINK_ASSIGNMENT_C2 : bit (1) > }
+ { null | 0 bit** = < no string > -- Receiver backward compatible with earlier version
+ |1 -- Additions for Rel-10
+ { 1 < EMSR Additional PFCs 1 : < Additional PFCs struct > > } ** 0
+@@ -870,7 +845,7 @@
+
+ < Assignment Info struct > ::=
+ < Assignment Type : bit (2) >
+- < Carrier ID : bit (1) >
++ < Carrier ID : bit (1) > ;
+
+ < RLC Entity Struct > ::=
+ < DOWNLINK_TFI_ASSIGNMENT : bit (5) >
+@@ -971,7 +946,9 @@
+
+ < Multiple Downlink TBF Assignment struct > ::=
+ < TIMESLOT_ALLOCATION : bit (8) >
+- Multiple Downlink Assignment struct > ::=
++ { 1 < Downlink TBF assignment : < Downlink TBF assignment struct > > } ** 0 ;
++
++< BTTI Multiple Downlink Assignment struct > ::=
+ { 0 | 1 < TIMESLOT_ALLOCATION_C1 : bit (8) > }
+ { 0 | 1 < TIMESLOT_ALLOCATION_C2 : bit (8) > }
+ { 1 < Downlink TBF assignment : < Downlink TBF assignment 2 struct > > } ** 0 ;
+@@ -984,7 +961,7 @@
+ < RTTI_DOWNLINK_PDCH_PAIR_ASSIGNMENT_DC : bit (8) >
+ { 1 < Downlink TBF assignment : < Downlink TBF assignment 2 struct > > } ** 0 ;
+
+-< Downlink TBF assignment struct > :: =
++< Downlink TBF assignment struct > ::=
+ { 0 < RB Id : bit (5) >
+ | 1 < PFI : bit (7) >
+ < RLC_MODE : bit (1) > }
+@@ -993,7 +970,7 @@
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+ { 0 | 1 < HFN_LSB : bit (1) > } ; -- HFN_LSB field used in Iu mode only
+
+-< Downlink TBF assignment 2 struct > :: =
++< Downlink TBF assignment 2 struct > ::=
+ < PFI : bit (7) >
+ < RLC_MODE : bit (1) >
+ < TFI Assignment : bit (5) >
+@@ -1002,11 +979,9 @@
+ < EVENT_BASED_FANR: bit (1) >
+ { 0 | 1 < Downlink EGPRS Window Size : < EGPRS Window Size IE > > } ;
+
+-< Assignment Info struct > :: =
++< Assignment Info struct > ::=
+ < Assignment Type : bit (2) >
+ < Carrier ID : bit (1) > ;
+-{ 1 < Downlink TBF assignment : < Downlink TBF assignment struct > > } ** 0 ;
+-
+
+ -- 11.2.8
+ < Packet Downlink Dummy Control Block message content > ::=
+@@ -1057,13 +1032,13 @@
+ < 3G Measurement Report struct > ::=
+ < N_3G: bit (3) >
+ { < 3G_CELL_LIST_INDEX : bit (7) >
+- < REPORTING_QUANTITY : bit (6) > } * (val(N_3G + 1 )) ;
++ < REPORTING_QUANTITY : bit (6) > } * (val(N_3G) + 1) ;
+
+ < E-UTRAN Measurement Report struct > ::=
+ < N_E-UTRAN: bit (2) >
+ { < E-UTRAN_FREQUENCY_INDEX : bit (3) >
+ < CELL IDENTITY : bit (9) >
+- < REPORTING_QUANTITY : bit (6) > } * (val(N_E-UTRAN + 1 )) ;
++ < REPORTING_QUANTITY : bit (6) > } * (val(N_E-UTRAN) + 1) ;
+
+ -- 11.2.9b
+ < Packet Measurement Order message content > ::=
+@@ -1182,10 +1157,10 @@
+ < 3G Neighbour Cell Description struct> ::=
+ { 0 | 1 < Index_Start_3G : bit (7)> }
+ { 0 | 1 < Absolute_Index_Start_EMR : bit (7)> }
+- { 0 | 1 < UTRAN FDD Description : < UTRAN FDD Description struct > }
+- { 0 | 1 < UTRAN TDD Description : < UTRAN TDD Description struct > }
+- { 0 | 1 < CDMA2000 Description : < CDMA2000 Description struct > }
+- { 0 | 1 < REMOVED_3GCELL_Description : < REMOVED_3GCELL_Description struct >> } ;
++ { 0 | 1 < UTRAN FDD Description : < UTRAN FDD Description struct > > }
++ { 0 | 1 < UTRAN TDD Description : < UTRAN TDD Description struct > > }
++ { 0 | 1 < CDMA2000 Description : < CDMA2000 Description struct > > }
++ { 0 | 1 < REMOVED_3GCELL_Description : < REMOVED_3GCELL_Description struct > > } ;
+
+ < REMOVED_3GCELL_Description struct > ::=
+ < N1 : bit (2) >
+@@ -1198,7 +1173,7 @@
+
+ < UTRAN FDD Description struct> ::=
+ { 0 | 1 < Bandwidth_FDD : bit (3) > }
+- { 1 < Repeated UTRAN FDD Neighbour Cells : Repeated UTRAN FDD Neighbour Cells struct >> } ** 0 ;
++ { 1 < Repeated UTRAN FDD Neighbour Cells : < Repeated UTRAN FDD Neighbour Cells struct >> } ** 0 ;
+ < Repeated UTRAN FDD Neighbour Cells struct > ::=
+ 0 < FDD-ARFCN : bit (14) > -- The value "1" was used in an earlier
+ -- version of the protocol and shall not be used.
+@@ -1283,7 +1258,7 @@
+
+ < CCN Support Description struct > ::=
+ < Number_Cells : bit (7) >
+-{ CCN_SUPPORTED : bit } * (val(Number_Cells)) ;
++{ < CCN_SUPPORTED : bit > } * (val(Number_Cells)) ;
+
+ < Iu Mode Neighbour Cell Params struct > ::=
+ { 0 | 1 < Iu Mode Cell Selection Params : < Iu Mode Cell Selection struct > > }
+@@ -1360,7 +1335,7 @@
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-8 :
+ < BITMAP_LENGTH : bit(7) >
+- { 0 | 1 < REPORTING_QUANTITY : bit (6) > } * (val(BITMAP_LENGTH + 1 ) )
++ { 0 | 1 < REPORTING_QUANTITY : bit (6) > } * (val(BITMAP_LENGTH) + 1)
+ { 0 | 1 < E-UTRAN Measurement Report : < E-UTRAN Measurement Report struct > > }
+ { null | 0 bit ** = < no string > -- Receiver compatible with earlier release
+ |1 -- Additions in Rel-9 :
+@@ -1434,7 +1382,7 @@
+ { null | 0 bit** = < no string > -- Receiver compatible with earlier release
+ |1 -- REL-6 additions:
+ { 0 | 1 < MBMS Information > }
+- { 0 | 1 < NLN status(PPCH) : bit (1) > }
++ { 0 | 1 < NLN status PPCH : bit (1) > }
+ { null | 0 bit** = < no string > -- Receiver compatible with earlier release
+ |1 -- REL-8 additions:
+ { 0 | 1 < ETWS Primary Notification : < ETWS Primary Notification struct > > }
+@@ -1463,7 +1411,7 @@
+ | 01 < PTMSI : bit (32) >
+ | 11 { < Length of Mobile Identity contents : bit (4) >
+ < Mobile Identity : octet (val (Length of Mobile Identity contents)) > }
+- < Page info struct : < Page info struct > > }
++ < Page info struct : < Page info struct > > } }
+ { 0 | 1 < eMLPP_PRIORITY : bit (3) > } }
+ ! < Ignore : bit (*) = <no string> > ;
+
+@@ -1473,10 +1421,10 @@
+ < MBMS Sessions List : < MBMS Sessions List IE > >
+ -- Notifications: listed per MBMS Channel Parameters
+ { 1 < MBMS Channel Parameters : < MBMS Channel Parameters IE > >
+- < MBMS Sessions List : < MBMS Sessions List IE > > } ** 0 } }
++ < MBMS Sessions List : < MBMS Sessions List IE > > } ** 0 }
+ ! < Ignore : bit (*) = <no string> > ;
+
+-< Page info struct > :: =
++< Page info struct > ::=
+ < PAGING CAUSE : bit (3) >
+ < CN DOMAIN IDENTITY : bit (2) >
+ { 0 | 1 < Paging Record Type Identifier : bit (2) > }; -- This field Is only included if the MS is paged using a G-RNTI
+@@ -1639,10 +1587,10 @@
+ < CD_LENGTH : { bit (5) exclude 00000 exclude 11111 } >
+ < CONTAINER_DATA : octet (val(CD_LENGTH)) > -- Final container segment. Next container follows.
+ | < PD : bit (3) >
+- < CD_LENGTH : { bit (5) := 11111 } >
++ < CD_LENGTH : { bit (5) == 11111 } >
+ < CONTAINER_DATA : octet ** > } ** -- Container continued in next message.
+ { < spare bit (3) > -- Repetition continues until:
+- < CD_LENGTH : { bit (5) := 00000 } > } -- A) val(CD_LENGTH) = 0 or
++ < CD_LENGTH : { bit (5) == 00000 } > } -- A) val(CD_LENGTH) = 0 or
+ } // ; -- B) end of PSCD message.
+
+
+@@ -1663,7 +1611,7 @@
+ { < MESS_REC : bit (2) == 00 > < null > -- Message type supported but not received
+ | < MESS_REC : bit (2) == 01 > < null > -- Message type supported and received, single instance
+ | < MESS_REC : bit (2) == 10 > -- Message type supported and partially received, multiple instances
+- < SIX_CHANGE_MARK : bit (3) >
++ < SIX_CHANGE_MARK : bit (3) > }
+ } ** 0
+ < ADDITIONAL_MSG_TYPE : bit > ;
+
+@@ -1858,7 +1806,7 @@
+ { 1 { 0 < LSA_ID : bit (24) >
+ | 1 < ShortLSA_ID : bit (10) > } } ** 0 ;
+
+-< COMPACT Information struct > : :=
++< COMPACT Information struct > ::=
+ < Cell Identification : Cell identification IE>
+ { 1 < COMPACT Neighbour Cell params struct > } ** 0 ;
+
+@@ -1887,7 +1835,7 @@
+
+ < CCN Support Description struct > ::=
+ < Number_Cells : bit (7) >
+-{ CCN_SUPPORTED : bit } * (val(Number_Cells)) ;
++< CCN_SUPPORTED : bit > * (val(Number_Cells)) ;
+ < Iu Mode Neighbour Cell Params struct > ::=
+ < NR_OF_REMAINING_CELLS : bit (4) >
+ { 0 | 1 < Iu Mode Cell Selection Params :
+@@ -2130,7 +1887,8 @@
+ { null | 0 bit** = < no string > --Receiver compatible with earlier release
+ |1 --Additions in Release 6:
+ < 3G_CCN_ACTIVE : bit >
+- < padding bits > } } }// -- truncation at end of message allowed, bits '0' assumed ! < Distribution part error : bit (*) = < no string > > ;
++ < padding bits > } } }// -- truncation at end of message allowed, bits '0' assumed
++ ! < Distribution part error : bit (*) = < no string > > ;
+
+ < GPRS REP PRIORITY Description struct > ::=
+ < Number_Cells : bit(7) >
+@@ -2210,7 +1968,7 @@
+ < 700_REPORTING_THRESHOLD : bit (3) > }
+ { 0 | 1 < 810_REPORTING_OFFSET : bit (3) >
+ < 810_REPORTING_THRESHOLD : bit (3) > }
+- < padding bits > } } } }
++ < padding bits > } } }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+ < NC Measurement Parameters struct > ::=
+@@ -2262,14 +2020,15 @@
+ < PSI6_CHANGE_MARK : bit (2) >
+ < PSI6_INDEX : bit (3) >
+ < PSI6_COUNT : bit (3) >
+- { { < NonGSM Message : < Non-GSM Message struct > > **
++ { < NonGSM Message : < Non-GSM Message struct > > **
+ -- The Non-GSM Message struct is repeated until:
+ { < spare bit > * 3 00000 } -- A) val(NR_OF_CONTAINER_OCTETS) = 0, or
+ < padding bits > } // -- B) the PSI message is fully used
+ ! < Distribution part error : bit (*) = < no string > > ;
++
+ < NonGSM Message struct > ::=
+ < NonGSM Protocol Discriminator : bit(3) >
+- < NR_OF_CONTAINER_OCTETS : bit(5) exclude 00000 } >
++ < NR_OF_CONTAINER_OCTETS : bit(5) exclude 00000 >
+ { < CONTAINER : bit(8) > } * (val(NR_OF_CONTAINER_OCTETS)) ;
+
+ -- 11.2.24
+@@ -2296,7 +2055,7 @@
+
+ < DYNAMIC ARFCN MAPPING >::=
+ < GSM_Band : bit (4) >
+- < ARFCN_FIRST : bit (10) > - - Dynamic ARFCN mapping parameters
++ < ARFCN_FIRST : bit (10) > -- Dynamic ARFCN mapping parameters
+ < BAND_OFFSET: bit (10) >
+ < ARFCN_RANGE : bit (7) > ;
+
+@@ -2389,8 +2148,8 @@
+ ! < Distribution part error : bit (*) = < no string >> ;
+
+ < UTRAN Frequency List Description struct > ::=
+- { 1 < FDD_ARFCN > : bit (14) } ** 0 -- FDD frequencies
+- { 1 < TDD_ARFCN > : bit (14) } ** 0 ; -- TDD frequencies
++ { 1 < FDD_ARFCN : bit (14) > } ** 0 -- FDD frequencies
++ { 1 < TDD_ARFCN : bit (14) > } ** 0 ; -- TDD frequencies
+
+ -- 11.2.25c
+ < PSI16 message content > ::=
+@@ -2480,7 +2239,7 @@
+ { 0 | 1 < RB Id : bit (5) > }
+ < padding bits > }
+ ! < Non-distribution part error : bit (*) = <no string> > }
+- ! < Message escape : { 01 | 10 | 11 } bit (*) = <no string> > } } -- Extended for future changes
++ ! < Message escape : { 01 | 10 | 11 } bit (*) = <no string> > } -- Extended for future changes
+ ! < Address information part error : bit (*) = <no string> > }
+ ! < Distribution part error : bit (*) = <no string> > ;
+
+@@ -2491,7 +2250,7 @@
+ { 0 | 1 < CONTENTION_RESOLUTION_TLLI : bit (32) >
+ { 0 | 1 < G-RNTI extension : bit (4) > } }
+ { 0 -- TCH TBF mode
+- { 0 - All data blocks acknowledged, no retransmission requested
++ { 0 -- All data blocks acknowledged, no retransmission requested
+ | 1 < STARTING_SEQUENCE_NUMBER : bit (8) >
+ < RECEIVED_BLOCK_BITMAP : bit (128) > }
+ | 1 -- DCCH TBF mode
+@@ -2959,7 +2718,7 @@
+ { 0 | 1 < USF_ALLOCATION : bit (3) > } * (M-1)
+ };
+
+-< Assignment Info struct > :: =
++< Assignment Info struct > ::=
+ < Assignment Type : bit (2) >
+ < Carrier ID : bit (1) > ;
+
+@@ -3250,7 +3009,7 @@
+ < Assignment Type : bit (2) >
+ < Carrier ID : bit (1) >;
+
+-< RLC Entity Struct> :: =
++< RLC Entity Struct> ::=
+ < TFI : bit (5) >
+ < RLC_MODE : bit (1) >
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+@@ -3389,7 +3148,7 @@
+ { 0 | 1 < Uplink Control Timeslot C2 : bit (3) > }
+ { 1 < Downlink TBF assignment : < Downlink TBF assignment 2 struct > > } ** 0 ;
+
+-< Downlink TBF assignment struct > :: =
++< Downlink TBF assignment struct > ::=
+ { 0 < RB Id : bit (5) >
+ | 1 < PFI : bit (7) >
+ < RLC_MODE : bit (1) > }
+@@ -3398,7 +3157,7 @@
+ < CONTROL_ACK : bit (1) >
+ { 0 | 1 < Downlink EGPRS Window Size : < EGPRS Window Size IE > > } ;
+
+-< Downlink TBF assignment 2 struct > :: =
++< Downlink TBF assignment 2 struct > ::=
+ < PFI : bit (7) >
+ < RLC_MODE : bit (1) >
+ { 0 | 1 < Uplink Control Timeslot C1 : bit (3) > }
+@@ -3764,7 +3523,7 @@
+ { 0 | 1 < Uplink Control Timeslot C2 : bit (3) > }
+ { 1 < Downlink TBF assignment : < Downlink TBF assignment 2 struct > > } ** 0 ;
+
+-< Downlink TBF assignment struct > :: =
++< Downlink TBF assignment struct > ::=
+ { 0 | 1 < PFI : bit (7) > }
+ < DOWNLINK_RLC_MODE : bit (1) >
+ { 0 | 1 < Uplink Control Timeslot : bit (3) > }
+@@ -3772,7 +3531,7 @@
+ < CONTROL_ACK : bit (1) >
+ { 0 | 1 < Downlink EGPRS Window Size : < EGPRS Window Size IE > > } ;
+
+-< Downlink TBF assignment 2 struct > :: =
++< Downlink TBF assignment 2 struct > ::=
+ { 0 | 1 < PFI : bit (7) > }
+ < RLC_MODE : bit (1) >
+ { 0 | 1 < Uplink Control Timeslot C1 : bit (3) > }
+@@ -3912,7 +3671,7 @@
+ < Assignment Type : bit (2) >
+ < Carrier ID : bit (1) > ;
+
+-< RLC Entity > :: =
++< RLC Entity > ::=
+ < TFI_ASSIGNMENT : bit (5) >
+ < RLC_MODE : bit (1) >
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }
+@@ -3963,7 +3722,7 @@
+ }
+ ! < Distribution part error : bit (*) = < no string > >;
+
+-< MBMS bearer description struct > :: =
++< MBMS bearer description struct > ::=
+ { 0 | 1 < MBMS Radio Bearer Starting Time : < bit (16) > }
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ < DOWNLINK_TIMESLOT_ALLOCATION : bit (8) >
+@@ -3989,7 +3748,7 @@
+ < padding bits >
+ ! < Distribution part error : bit (*) = < no string > > } ;
+
+-< MBMS bearer description struct > :: =
++< MBMS bearer description struct > ::=
+ { 0 | 1 < MBMS Radio Bearer Starting Time : < bit (16) > > }
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ < DOWNLINK_TIMESLOT_ALLOCATION : bit (8) >
+@@ -4038,7 +3797,7 @@
+ < padding bits >
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+-< PBCCH information struct > :: =
++< PBCCH information struct > ::=
+ < Pb : bit (4) >
+ < TSC : bit (3) >
+ < TN : bit (3) >
+@@ -4049,12 +3808,12 @@
+ < Neighbour MBMS Bearer Identity : bit (val (Length of Neighbour MBMS Bearer Identity)) >
+ };
+
+-< MBMS Frequency List struct > :: =
++< MBMS Frequency List struct > ::=
+ < FREQ_LIST_NUMBER : bit (2) >
+ < Length of Frequency List contents : bit (4) >
+ < Frequency List contents : octet (val(Length of Frequency List contents) + 3) > ;
+
+-< MBMS p-t-m Frequency Parameters struct > :: =
++< MBMS p-t-m Frequency Parameters struct > ::=
+ < TSC : bit (3) >
+ { 0 < ARFCN : bit (10 >
+ | 1 < MAIO : bit (6) >
+@@ -4104,7 +3863,7 @@
+ < padding bits > } // -- truncation at end of message allowed, bits '0' assumed
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+-< MBMS p-t-m channel description struct > :: =
++< MBMS p-t-m channel description struct > ::=
+ < Estimated Session Duration : bit (8) >
+ { 0 | 1 < MBMS Radio Bearer Starting Time : bit (16) > }
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+@@ -4114,7 +3873,7 @@
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE >> }
+ { 0 | 1 < NPM Transfer Time : bit (5) > };
+
+-< MPRACH description struct > :: =
++< MPRACH description struct > ::=
+ { 0 | 1 < Frequency Parameters : < Frequency Parameters IE > > }
+ < MPRACH_TIMESLOT : bit (3) >
+ < USF : bit (3) >
+@@ -4177,7 +3936,7 @@
+ ! < Address information part error : bit (*) = < no string > > }
+ ! < Distribution part error : bit (*) = < no string > > ;
+
+-< RLC Entity Struct > :: =
++< RLC Entity Struct > ::=
+ < TFI : bit (5) >
+ < RLC_MODE : bit (1) >
+ { 0 | 1 < EGPRS Window Size : < EGPRS Window Size IE > > }