From 984d09fb2fff703fffad3e478d506fca3c66636b Mon Sep 17 00:00:00 2001 From: Pau Espin Pedrol Date: Tue, 19 May 2020 18:51:58 +0200 Subject: library/RLCMAC_CSN1_Types: Extend support for PacketDlAssignment Change-Id: I5788d9fffe768bb8ebbb3fc2d93ebf014648e9bf --- library/RLCMAC_CSN1_Types.ttcn | 48 ++++++++++++++++++++++++++++++++++++++++-- library/RLCMAC_Templates.ttcn | 27 +++++++++++++++++++++++- 2 files changed, 72 insertions(+), 3 deletions(-) diff --git a/library/RLCMAC_CSN1_Types.ttcn b/library/RLCMAC_CSN1_Types.ttcn index 1f1fb0a2..ee02a8a8 100644 --- a/library/RLCMAC_CSN1_Types.ttcn +++ b/library/RLCMAC_CSN1_Types.ttcn @@ -122,15 +122,59 @@ module RLCMAC_CSN1_Types { TenTlli tlli }; + type record PacketDlAssignmentRel1999SubStruct { + EgprsWindowSize window_size, + BIT2 link_quality_meas_mode, + BIT1 bep_period2_present, + BIT4 bep_period2 optional + } with { + variant (bep_period2) "PRESENCE(bep_period2_present = '1'B)" + }; /* 11.2.7 Packet Downlink Assignment */ type record PacketDlAssignment { PageMode page_mode, BIT1 pres1, PersistenceLevels persistence_levels optional, - GlobalTfiOrTlli tfi_or_tlli - /* TODO */ + GlobalTfiOrTlli tfi_or_tlli, + BIT1 egprs2('0'B), /* TODO: implement union with egprs2 */ + BIT2 mac_mode, + BIT2 rlc_mode, + BIT1 control_ack, + BIT8 timeslot_alloc, + PacketTimingAdvance pkt_ta, + BIT1 p0_present, + uint4_t p0 optional, + BIT1 reserved('0'B) optional, + BIT1 pr_mode optional, + BIT1 freq_par_present, + FrequencyParameters freq_par optional, + BIT1 dl_tfi_ass_present, + uint5_t dl_tfi_assignment optional, + BIT1 pwr_ctrl_present, + PowerControlParameters pwr_ctrl optional, + BIT1 tbf_starting_time_present, + StartingFnDesc tbf_starting_time optional, + BIT1 release1999('1'B), + BIT1 sub_present, + PacketDlAssignmentRel1999SubStruct sub optional, + BIT1 pkt_ext_ta_present, + BIT2 pkt_ext_ta optional, + BIT1 compact_reduced_ma_present, + COMPACTreducedMA compact_reduced_ma optional + /* TODO: Additions for REL-5 */ } with { variant (persistence_levels) "PRESENCE(pres1 = '1'B)" + variant (p0) "PRESENCE(p0_present = '1'B)" + variant (p0) "PRESENCE(p0_present = '1'B)" + variant (reserved) "PRESENCE(p0_present = '1'B)" + variant (pr_mode) "PRESENCE(p0_present = '1'B)" + variant (freq_par) "PRESENCE(freq_par_present = '1'B)" + variant (dl_tfi_assignment) "PRESENCE(dl_tfi_ass_present = '1'B)" + variant (pwr_ctrl) "PRESENCE(pwr_ctrl_present = '1'B)" + variant (tbf_starting_time) "PRESENCE(tbf_starting_time_present = '1'B)" + variant (sub) "PRESENCE(sub_present = '1'B)" + variant (pkt_ext_ta) "PRESENCE(pkt_ext_ta_present = '1'B)" + variant (compact_reduced_ma) "PRESENCE(compact_reduced_ma_present = '1'B)" }; /* 11.2.29 Packet Uplink Assignment */ diff --git a/library/RLCMAC_Templates.ttcn b/library/RLCMAC_Templates.ttcn index 0ffa840e..e2abd84a 100644 --- a/library/RLCMAC_Templates.ttcn +++ b/library/RLCMAC_Templates.ttcn @@ -444,7 +444,32 @@ module RLCMAC_Templates { page_mode := ?, pres1 := ?, persistence_levels := *, - tfi_or_tlli := ? + tfi_or_tlli := ?, + egprs2 := '0'B, + mac_mode := ?, + rlc_mode := ?, + control_ack := ?, + timeslot_alloc := ?, + pkt_ta := ?, + p0_present := ?, + p0 := *, + reserved := *, + pr_mode := *, + freq_par_present := ?, + freq_par := *, + dl_tfi_ass_present := ?, + dl_tfi_assignment := *, + pwr_ctrl_present := ?, + pwr_ctrl := *, + tbf_starting_time_present := ?, + tbf_starting_time := *, + release1999 := '1'B, + sub_present := ?, + sub := *, + pkt_ext_ta_present := ?, + pkt_ext_ta := *, + compact_reduced_ma_present := ?, + compact_reduced_ma := * } } } -- cgit v1.2.3