alloc/test: Go through all possible ms_classes for the allocation

Generate results for all possible classes.
This commit is contained in:
Holger Hans Peter Freyther 2013-12-25 19:25:10 +01:00
parent 4af30533f0
commit c7b998cc73
2 changed files with 955 additions and 9 deletions

View File

@ -106,9 +106,9 @@ static void dump_assignment(struct gprs_rlcmac_tbf *tbf, const char *dir)
printf("PDCH[%d] is first common for %s\n", tbf->first_common_ts, dir);
}
static void test_alloc_b()
static void test_alloc_b(int ms_class)
{
printf("Going to test multislot assignment.\n");
printf("Going to test multislot assignment MS_CLASS=%d\n", ms_class);
/*
* PDCH is on TS 6,7,8 and we start with a UL allocation and
* then follow two DL allocations (once single, once normal).
@ -136,17 +136,19 @@ static void test_alloc_b()
tfi = the_bts.tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
OSMO_ASSERT(tfi >= 0);
ul_tbf = tbf_alloc(bts, NULL, GPRS_RLCMAC_UL_TBF, tfi, trx_no, 0, 1);
ul_tbf = tbf_alloc(bts, NULL, GPRS_RLCMAC_UL_TBF, tfi, trx_no, ms_class, 1);
OSMO_ASSERT(ul_tbf);
dump_assignment(ul_tbf, "UL");
/* assume final ack has not been sent */
tfi = the_bts.tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
OSMO_ASSERT(tfi >= 0);
dl_tbf = tbf_alloc(bts, ul_tbf, GPRS_RLCMAC_DL_TBF, tfi, trx_no, 0, 0);
dl_tbf = tbf_alloc(bts, ul_tbf, GPRS_RLCMAC_DL_TBF, tfi, trx_no, ms_class, 0);
OSMO_ASSERT(dl_tbf);
dump_assignment(dl_tbf, "DL");
OSMO_ASSERT(dl_tbf->first_common_ts == ul_tbf->first_common_ts);
tbf_free(dl_tbf);
tbf_free(ul_tbf);
}
@ -175,7 +177,7 @@ static void test_alloc_b()
tfi = the_bts.tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
OSMO_ASSERT(tfi >= 0);
dl_tbf = tbf_alloc(bts, NULL, GPRS_RLCMAC_DL_TBF, tfi, trx_no, 0, 1);
dl_tbf = tbf_alloc(bts, NULL, GPRS_RLCMAC_DL_TBF, tfi, trx_no, ms_class, 1);
dl_tbf->m_tlli = 0x23;
dl_tbf->m_tlli_valid = true;
OSMO_ASSERT(dl_tbf);
@ -183,16 +185,19 @@ static void test_alloc_b()
tfi = the_bts.tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
OSMO_ASSERT(tfi >= 0);
ul_tbf = tbf_alloc(bts, dl_tbf, GPRS_RLCMAC_UL_TBF, tfi, trx_no, 0, 0);
ul_tbf = tbf_alloc(bts, dl_tbf, GPRS_RLCMAC_UL_TBF, tfi, trx_no, ms_class, 0);
ul_tbf->m_tlli = 0x23;
ul_tbf->m_tlli_valid = true;
ul_tbf->dir.ul.contention_resolution_done = 1;
OSMO_ASSERT(ul_tbf);
dump_assignment(ul_tbf, "UL");
OSMO_ASSERT(dl_tbf->first_common_ts == ul_tbf->first_common_ts);
/* now update the dl_tbf */
dl_tbf->update();
dump_assignment(dl_tbf, "DL");
OSMO_ASSERT(dl_tbf->first_common_ts == ul_tbf->first_common_ts);
tbf_free(dl_tbf);
tbf_free(ul_tbf);
@ -221,22 +226,30 @@ static void test_alloc_b()
tfi = the_bts.tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
OSMO_ASSERT(tfi >= 0);
ul_tbf = tbf_alloc(bts, NULL, GPRS_RLCMAC_UL_TBF, tfi, trx_no, 0, 0);
ul_tbf = tbf_alloc(bts, NULL, GPRS_RLCMAC_UL_TBF, tfi, trx_no, ms_class, 0);
OSMO_ASSERT(ul_tbf);
dump_assignment(ul_tbf, "UL");
/* assume final ack has not been sent */
tfi = the_bts.tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
OSMO_ASSERT(tfi >= 0);
dl_tbf = tbf_alloc(bts, ul_tbf, GPRS_RLCMAC_DL_TBF, tfi, trx_no, 0, 0);
dl_tbf = tbf_alloc(bts, ul_tbf, GPRS_RLCMAC_DL_TBF, tfi, trx_no, ms_class, 0);
OSMO_ASSERT(dl_tbf);
dump_assignment(dl_tbf, "DL");
OSMO_ASSERT(dl_tbf->first_common_ts == ul_tbf->first_common_ts);
tbf_free(dl_tbf);
tbf_free(ul_tbf);
}
}
static void test_alloc_b()
{
for (int i = 0; i < 30; ++i)
test_alloc_b(i);
}
int main(int argc, char **argv)
{
tall_pcu_ctx = talloc_named_const(NULL, 1, "moiji-mobile AllocTest context");

View File

@ -1,6 +1,6 @@
Testing alloc_a direction(0)
Testing alloc_a direction(1)
Going to test multislot assignment.
Going to test multislot assignment MS_CLASS=0
Testing UL then DL assignment.
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
@ -32,3 +32,936 @@ PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[3] is control_ts for DL
PDCH[3] is first common for DL
Going to test multislot assignment MS_CLASS=1
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[1] is used for UL
PDCH[1] is control_ts for UL
PDCH[1] is first common for UL
PDCH[1] is used for DL
PDCH[1] is control_ts for DL
PDCH[1] is first common for DL
Going to test multislot assignment MS_CLASS=2
Testing UL then DL assignment.
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing DL then UL assignment followed by update
PDCH[6] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL
Going to test multislot assignment MS_CLASS=3
Testing UL then DL assignment.
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing DL then UL assignment followed by update
PDCH[6] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL
Going to test multislot assignment MS_CLASS=4
Testing UL then DL assignment.
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing DL then UL assignment followed by update
PDCH[6] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL
Going to test multislot assignment MS_CLASS=5
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[1] is used for UL
PDCH[1] is control_ts for UL
PDCH[1] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[1] is control_ts for DL
PDCH[1] is first common for DL
Going to test multislot assignment MS_CLASS=6
Testing UL then DL assignment.
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing DL then UL assignment followed by update
PDCH[6] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL
Going to test multislot assignment MS_CLASS=7
Testing UL then DL assignment.
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing DL then UL assignment followed by update
PDCH[6] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL
Going to test multislot assignment MS_CLASS=8
Testing UL then DL assignment.
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing DL then UL assignment followed by update
PDCH[6] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing jolly example
PDCH[3] is used for UL
PDCH[3] is control_ts for UL
PDCH[3] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[3] is control_ts for DL
PDCH[3] is first common for DL
Going to test multislot assignment MS_CLASS=9
Testing UL then DL assignment.
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing DL then UL assignment followed by update
PDCH[6] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL
Going to test multislot assignment MS_CLASS=10
Testing UL then DL assignment.
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing DL then UL assignment followed by update
PDCH[6] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing jolly example
PDCH[3] is used for UL
PDCH[3] is control_ts for UL
PDCH[3] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[3] is control_ts for DL
PDCH[3] is first common for DL
Going to test multislot assignment MS_CLASS=11
Testing UL then DL assignment.
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing DL then UL assignment followed by update
PDCH[6] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing jolly example
PDCH[3] is used for UL
PDCH[3] is control_ts for UL
PDCH[3] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[3] is control_ts for DL
PDCH[3] is first common for DL
Going to test multislot assignment MS_CLASS=12
Testing UL then DL assignment.
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing DL then UL assignment followed by update
PDCH[6] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
PDCH[6] is used for UL
PDCH[6] is control_ts for UL
PDCH[6] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[6] is control_ts for DL
PDCH[6] is first common for DL
Testing jolly example
PDCH[3] is used for UL
PDCH[3] is control_ts for UL
PDCH[3] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[3] is control_ts for DL
PDCH[3] is first common for DL
Going to test multislot assignment MS_CLASS=13
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[6] is used for UL
PDCH[7] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[1] is used for UL
PDCH[2] is used for UL
PDCH[3] is used for UL
PDCH[1] is control_ts for UL
PDCH[1] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[1] is control_ts for DL
PDCH[1] is first common for DL
Going to test multislot assignment MS_CLASS=14
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[6] is used for UL
PDCH[7] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[1] is used for UL
PDCH[2] is used for UL
PDCH[3] is used for UL
PDCH[4] is used for UL
PDCH[1] is control_ts for UL
PDCH[1] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[1] is control_ts for DL
PDCH[1] is first common for DL
Going to test multislot assignment MS_CLASS=15
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[6] is used for UL
PDCH[7] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[1] is used for UL
PDCH[2] is used for UL
PDCH[3] is used for UL
PDCH[4] is used for UL
PDCH[1] is control_ts for UL
PDCH[1] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[1] is control_ts for DL
PDCH[1] is first common for DL
Going to test multislot assignment MS_CLASS=16
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[6] is used for UL
PDCH[7] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[1] is used for UL
PDCH[2] is used for UL
PDCH[3] is used for UL
PDCH[4] is used for UL
PDCH[1] is control_ts for UL
PDCH[1] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[1] is control_ts for DL
PDCH[1] is first common for DL
Going to test multislot assignment MS_CLASS=17
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[6] is used for UL
PDCH[7] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[1] is used for UL
PDCH[2] is used for UL
PDCH[3] is used for UL
PDCH[4] is used for UL
PDCH[1] is control_ts for UL
PDCH[1] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[1] is control_ts for DL
PDCH[1] is first common for DL
Going to test multislot assignment MS_CLASS=18
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[6] is used for UL
PDCH[7] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[1] is used for UL
PDCH[2] is used for UL
PDCH[3] is used for UL
PDCH[4] is used for UL
PDCH[1] is control_ts for UL
PDCH[1] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[1] is control_ts for DL
PDCH[1] is first common for DL
Going to test multislot assignment MS_CLASS=19
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL
Going to test multislot assignment MS_CLASS=20
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL
Going to test multislot assignment MS_CLASS=21
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL
Going to test multislot assignment MS_CLASS=22
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL
Going to test multislot assignment MS_CLASS=23
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL
Going to test multislot assignment MS_CLASS=24
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL
Going to test multislot assignment MS_CLASS=25
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL
Going to test multislot assignment MS_CLASS=26
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL
Going to test multislot assignment MS_CLASS=27
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL
Going to test multislot assignment MS_CLASS=28
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL
Going to test multislot assignment MS_CLASS=29
Testing UL then DL assignment.
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing DL then UL assignment followed by update
PDCH[5] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
PDCH[5] is used for UL
PDCH[5] is control_ts for UL
PDCH[5] is first common for UL
PDCH[5] is used for DL
PDCH[6] is used for DL
PDCH[7] is used for DL
PDCH[5] is control_ts for DL
PDCH[5] is first common for DL
Testing jolly example
PDCH[2] is used for UL
PDCH[2] is control_ts for UL
PDCH[2] is first common for UL
PDCH[1] is used for DL
PDCH[2] is used for DL
PDCH[3] is used for DL
PDCH[4] is used for DL
PDCH[2] is control_ts for DL
PDCH[2] is first common for DL