aboutsummaryrefslogtreecommitdiffstats
path: root/pcu/PCUIF_RAW_Components.ttcn
diff options
context:
space:
mode:
Diffstat (limited to 'pcu/PCUIF_RAW_Components.ttcn')
-rw-r--r--pcu/PCUIF_RAW_Components.ttcn31
1 files changed, 31 insertions, 0 deletions
diff --git a/pcu/PCUIF_RAW_Components.ttcn b/pcu/PCUIF_RAW_Components.ttcn
index 465e3980..ab8b3b75 100644
--- a/pcu/PCUIF_RAW_Components.ttcn
+++ b/pcu/PCUIF_RAW_Components.ttcn
@@ -133,6 +133,37 @@ type component RAW_PCU_ClckGen_CT {
var integer fn := 0;
}
+/* Derive PTCCH/U sub-slot from a given TDMA frame-number */
+function f_tdma_ptcch_fn2ss(integer fn) return integer
+{
+ var integer ss := -1;
+
+ /* See 3GPP TS 45.002, table 6 */
+ select (fn mod 416) {
+ case (12) { ss := 0; }
+ case (38) { ss := 1; }
+ case (64) { ss := 2; }
+ case (90) { ss := 3; }
+
+ case (116) { ss := 4; }
+ case (142) { ss := 5; }
+ case (168) { ss := 6; }
+ case (194) { ss := 7; }
+
+ case (220) { ss := 8; }
+ case (246) { ss := 9; }
+ case (272) { ss := 10; }
+ case (298) { ss := 11; }
+
+ case (324) { ss := 12; }
+ case (350) { ss := 13; }
+ case (376) { ss := 14; }
+ case (402) { ss := 15; }
+ }
+
+ return ss;
+}
+
function f_ClckGen_CT_handler()
runs on RAW_PCU_ClckGen_CT {
var integer fn104, fn52, fn13;