trau_pcu_ericsson: add testvectors for MCS1-MCS8
The testvectors were obtained manually from the uplink of an Ericsson RBS RUS 02 B3. The TRAU frames were selected so that they contain valid MAC blocks from live GPRS traffic. Change-Id: I7e7e35930a373c9db74faef24f6c404eb5516278 Related: OS#5198
This commit is contained in:
parent
ac85f6069f
commit
122a66da2e
|
@ -1249,6 +1249,750 @@ void er_gprs_trau_frame_decode_64k_FT_DATA_test(void)
|
||||||
* the TRAU frame. */
|
* the TRAU frame. */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* TRAU frame with valid MCS1 block and correct CRC */
|
||||||
|
const ubit_t bits_mcs1[] = {
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 1, 0, 1, 1, 0, 0,
|
||||||
|
0, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 0, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
0, 0, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 0, 0,
|
||||||
|
1, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 1,
|
||||||
|
0, 0, 1, 0, 0, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 1, 0, 0, 0, 1,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 0,
|
||||||
|
1, 1, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
1, 0, 0, 0, 0, 0, 1, 0,
|
||||||
|
1, 1, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
0, 1, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
0, 1, 1, 0, 0, 0, 1, 1,
|
||||||
|
1, 0, 1, 0, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
/* [...] shortened since decode won't access filler bits after
|
||||||
|
* the TRAU frame. */
|
||||||
|
};
|
||||||
|
|
||||||
|
/* TRAU frame with valid MCS2 block */
|
||||||
|
const ubit_t bits_mcs2[] = {
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 1, 0, 1, 1, 0, 0,
|
||||||
|
0, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 0, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
0, 0, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 0, 0,
|
||||||
|
1, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 1, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 0, 1,
|
||||||
|
0, 0, 1, 0, 0, 1, 0, 1,
|
||||||
|
1, 1, 0, 1, 1, 0, 1, 1,
|
||||||
|
0, 1, 0, 0, 0, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 1, 0,
|
||||||
|
0, 0, 1, 0, 1, 0, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
0, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 0, 0, 1, 1, 0, 0,
|
||||||
|
1, 1, 0, 0, 1, 0, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
0, 1, 0, 1, 1, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 1, 1, 0, 0, 1,
|
||||||
|
1, 1, 1, 0, 1, 1, 1, 0,
|
||||||
|
1, 1, 0, 1, 1, 0, 1, 1,
|
||||||
|
1, 0, 0, 1, 1, 1, 1, 0,
|
||||||
|
1, 1, 1, 1, 0, 0, 1, 1,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
/* [...] shortened since decode won't access filler bits after
|
||||||
|
* the TRAU frame. */
|
||||||
|
};
|
||||||
|
|
||||||
|
/* TRAU frame with valid MCS3 block */
|
||||||
|
const ubit_t bits_mcs3[] = {
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 1, 0, 1, 1, 0, 0,
|
||||||
|
0, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 0, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
0, 0, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 0, 0,
|
||||||
|
0, 1, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 0,
|
||||||
|
0, 0, 1, 0, 0, 1, 0, 1,
|
||||||
|
1, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
0, 0, 0, 0, 0, 1, 1, 1,
|
||||||
|
0, 0, 1, 0, 0, 0, 1, 1,
|
||||||
|
0, 1, 0, 0, 1, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 1, 0, 1, 0, 0, 0, 1,
|
||||||
|
0, 1, 0, 0, 0, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
1, 1, 1, 1, 1, 0, 0, 0,
|
||||||
|
0, 0, 0, 1, 1, 1, 0, 1,
|
||||||
|
0, 1, 0, 1, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 0, 1,
|
||||||
|
0, 0, 0, 1, 0, 0, 0, 1,
|
||||||
|
0, 0, 1, 1, 1, 1, 1, 0,
|
||||||
|
1, 1, 1, 1, 0, 1, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 1, 0,
|
||||||
|
0, 0, 1, 0, 1, 0, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 1, 1, 1, 1,
|
||||||
|
0, 1, 1, 1, 1, 1, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
0, 1, 0, 1, 1, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
0, 1, 0, 0, 0, 1, 0, 1,
|
||||||
|
0, 0, 1, 0, 1, 1, 0, 1,
|
||||||
|
0, 0, 1, 1, 0, 1, 0, 0,
|
||||||
|
1, 0, 0, 0, 0, 1, 0, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
/* [...] shortened since decode won't access filler bits after
|
||||||
|
* the TRAU frame. */
|
||||||
|
};
|
||||||
|
|
||||||
|
/* TRAU frame with valid MCS4 block */
|
||||||
|
const ubit_t bits_mcs4[] = {
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 1, 0, 1, 1, 0, 0,
|
||||||
|
0, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 0, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
0, 0, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 1, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 0, 0,
|
||||||
|
0, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 1, 1, 0, 0, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 0, 0, 1, 0, 0, 0,
|
||||||
|
1, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
0, 0, 0, 1, 1, 0, 0, 1,
|
||||||
|
1, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
0, 1, 0, 0, 1, 1, 1, 0,
|
||||||
|
0, 0, 0, 0, 1, 1, 1, 0,
|
||||||
|
0, 1, 0, 1, 1, 0, 0, 0,
|
||||||
|
1, 0, 0, 1, 1, 0, 0, 0,
|
||||||
|
1, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 1, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 1, 0, 1, 0, 0,
|
||||||
|
0, 1, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 1, 1, 1, 0,
|
||||||
|
0, 0, 0, 0, 1, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 0, 1,
|
||||||
|
0, 1, 1, 1, 0, 1, 0, 1,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
0, 0, 1, 1, 1, 1, 0, 0,
|
||||||
|
0, 0, 1, 0, 1, 0, 1, 0,
|
||||||
|
0, 0, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
/* [...] shortened since decode won't access filler bits after
|
||||||
|
* the TRAU frame. */
|
||||||
|
};
|
||||||
|
|
||||||
|
/* TRAU frame with valid MCS5 block */
|
||||||
|
const ubit_t bits_mcs5[] = {
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 1, 0, 1, 1, 0, 0,
|
||||||
|
0, 1, 1, 1, 0, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 0, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
0, 0, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 0, 1, 1, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 1, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 1, 0, 1, 1,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
1, 0, 0, 0, 0, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 0, 1,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 1, 1,
|
||||||
|
0, 0, 0, 1, 1, 0, 0, 1,
|
||||||
|
1, 1, 0, 1, 1, 1, 0, 1,
|
||||||
|
0, 0, 0, 1, 1, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
/* [...] shortened since decode won't access filler bits after
|
||||||
|
* the TRAU frame. */
|
||||||
|
};
|
||||||
|
|
||||||
|
/* TRAU frame with valid MCS6 block */
|
||||||
|
const ubit_t bits_mcs6[] = {
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 1, 0, 1, 1, 0, 0,
|
||||||
|
0, 1, 1, 1, 0, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 0, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
0, 0, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 0, 1, 1, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 1, 0, 0, 1,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
1, 1, 1, 1, 0, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 1, 1, 1, 0, 0,
|
||||||
|
1, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 0, 0, 0, 1, 1, 0,
|
||||||
|
0, 1, 1, 1, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 0, 0,
|
||||||
|
0, 1, 1, 1, 1, 0, 0, 0,
|
||||||
|
0, 1, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 0, 1,
|
||||||
|
1, 1, 0, 0, 0, 1, 1, 0,
|
||||||
|
1, 1, 0, 0, 0, 1, 1, 0,
|
||||||
|
0, 1, 0, 1, 0, 1, 1, 0,
|
||||||
|
0, 0, 0, 1, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 1,
|
||||||
|
0, 1, 1, 0, 0, 1, 0, 1,
|
||||||
|
0, 1, 0, 0, 0, 0, 1, 1,
|
||||||
|
1, 1, 0, 0, 1, 1, 0, 0,
|
||||||
|
1, 1, 1, 1, 1, 1, 0, 0,
|
||||||
|
1, 0, 0, 0, 1, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 1, 1, 1, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 0, 1,
|
||||||
|
1, 0, 0, 0, 1, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 1, 0, 1, 1,
|
||||||
|
0, 0, 0, 1, 1, 1, 1, 0,
|
||||||
|
0, 1, 1, 0, 0, 0, 1, 0,
|
||||||
|
0, 1, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 1, 1, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 0, 0, 1, 1, 0,
|
||||||
|
0, 1, 1, 0, 1, 0, 0, 1,
|
||||||
|
1, 0, 1, 0, 0, 0, 1, 1,
|
||||||
|
0, 0, 1, 1, 0, 0, 0, 1,
|
||||||
|
0, 0, 1, 0, 0, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 1, 1, 0, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 0, 0, 1, 1, 1,
|
||||||
|
0, 1, 0, 0, 0, 1, 0, 1,
|
||||||
|
0, 0, 0, 0, 0, 1, 1, 1,
|
||||||
|
0, 0, 1, 0, 0, 0, 1, 0,
|
||||||
|
1, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 0, 0,
|
||||||
|
0, 1, 1, 0, 0, 1, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 0, 1,
|
||||||
|
0, 0, 1, 1, 1, 0, 0, 0,
|
||||||
|
0, 0, 1, 1, 1, 0, 0, 1,
|
||||||
|
0, 1, 1, 0, 0, 0, 1, 0,
|
||||||
|
0, 1, 1, 0, 0, 0, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 1, 0, 1,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
0, 1, 0, 0, 1, 1, 0, 0,
|
||||||
|
0, 1, 1, 1, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 1, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
/* [...] shortened since decode won't access filler bits after
|
||||||
|
* the TRAU frame. */
|
||||||
|
};
|
||||||
|
|
||||||
|
/* TRAU frame with valid MCS7 block */
|
||||||
|
const ubit_t bits_mcs7[] = {
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 1, 0, 1, 1, 0, 0,
|
||||||
|
0, 1, 1, 0, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 0, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
0, 0, 0, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 1, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 1, 1, 1, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 1, 0, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 1, 1, 1, 0,
|
||||||
|
1, 0, 0, 1, 0, 0, 0, 0,
|
||||||
|
0, 1, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 1, 0, 0, 0, 0, 1, 1,
|
||||||
|
0, 0, 1, 1, 1, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 0,
|
||||||
|
0, 0, 1, 1, 1, 1, 0, 0,
|
||||||
|
0, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 0,
|
||||||
|
1, 1, 1, 0, 0, 0, 1, 1,
|
||||||
|
0, 1, 1, 0, 0, 0, 1, 1,
|
||||||
|
0, 0, 1, 0, 1, 0, 1, 1,
|
||||||
|
0, 0, 0, 0, 1, 0, 1, 1,
|
||||||
|
0, 1, 0, 1, 0, 0, 1, 1,
|
||||||
|
1, 0, 1, 1, 0, 0, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 0, 0, 1,
|
||||||
|
1, 1, 1, 0, 0, 1, 1, 0,
|
||||||
|
0, 1, 1, 1, 1, 1, 1, 0,
|
||||||
|
0, 1, 0, 0, 0, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 1, 1, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 0,
|
||||||
|
1, 1, 0, 0, 0, 1, 1, 0,
|
||||||
|
0, 1, 1, 0, 1, 1, 0, 1,
|
||||||
|
1, 0, 0, 0, 1, 1, 1, 1,
|
||||||
|
0, 0, 1, 1, 0, 0, 0, 1,
|
||||||
|
0, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 1, 1, 1, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 0,
|
||||||
|
0, 1, 1, 0, 0, 0, 1, 1,
|
||||||
|
0, 0, 1, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 0, 0, 1,
|
||||||
|
1, 0, 0, 1, 1, 0, 0, 0,
|
||||||
|
1, 0, 0, 1, 0, 0, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 1, 1, 0, 1,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 1, 0, 0, 1, 1,
|
||||||
|
1, 0, 1, 0, 0, 0, 1, 0,
|
||||||
|
1, 0, 0, 0, 0, 0, 1, 1,
|
||||||
|
1, 0, 0, 1, 0, 0, 0, 1,
|
||||||
|
0, 1, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 0,
|
||||||
|
0, 0, 1, 1, 0, 0, 1, 1,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 0,
|
||||||
|
1, 0, 0, 1, 1, 1, 0, 0,
|
||||||
|
0, 0, 0, 1, 1, 1, 0, 0,
|
||||||
|
1, 0, 1, 1, 0, 0, 0, 1,
|
||||||
|
0, 0, 1, 1, 0, 0, 0, 1,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 1, 0, 0, 0, 0,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 0, 1, 1, 1, 0, 1, 0,
|
||||||
|
1, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 0, 0, 1, 0, 1,
|
||||||
|
0, 0, 0, 1, 0, 0, 0, 0,
|
||||||
|
1, 0, 0, 1, 1, 1, 1, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
/* [...] shortened since decode won't access filler bits after
|
||||||
|
* the TRAU frame. */
|
||||||
|
};
|
||||||
|
|
||||||
|
/* TRAU frame with valid MCS8 block */
|
||||||
|
const ubit_t bits_mcs8[] = {
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 1, 0, 1, 1, 0, 0,
|
||||||
|
0, 1, 1, 0, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 0, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
0, 0, 0, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1, 1, 1, 0, 0,
|
||||||
|
1, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 1, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 1,
|
||||||
|
1, 1, 0, 1, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 1, 0, 1, 1,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 1, 1, 1, 0,
|
||||||
|
1, 1, 0, 0, 0, 0, 1, 0,
|
||||||
|
1, 0, 0, 1, 1, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 1,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 0,
|
||||||
|
1, 0, 0, 0, 1, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 1,
|
||||||
|
1, 1, 1, 1, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 1, 1, 0, 1, 0,
|
||||||
|
1, 0, 0, 1, 0, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 1, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 1, 0, 1, 0,
|
||||||
|
0, 0, 1, 0, 0, 0, 1, 0,
|
||||||
|
0, 1, 1, 1, 1, 1, 0, 1,
|
||||||
|
0, 1, 0, 0, 1, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 1, 1, 0, 0,
|
||||||
|
0, 1, 0, 1, 0, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
1, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 1, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 1, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 1, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 1, 0, 0, 0, 0, 0, 1,
|
||||||
|
1, 1, 1, 1, 0, 0, 1, 0,
|
||||||
|
0, 1, 0, 0, 0, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 0,
|
||||||
|
1, 0, 1, 1, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 1,
|
||||||
|
0, 1, 0, 1, 0, 0, 0, 0,
|
||||||
|
1, 0, 1, 1, 0, 0, 0, 1,
|
||||||
|
0, 1, 0, 0, 0, 0, 1, 1,
|
||||||
|
1, 0, 0, 1, 1, 1, 1, 1,
|
||||||
|
0, 0, 0, 0, 1, 1, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 1,
|
||||||
|
1, 0, 0, 0, 0, 0, 1, 0,
|
||||||
|
1, 1, 0, 1, 1, 0, 0, 0,
|
||||||
|
1, 0, 1, 1, 1, 0, 1, 0,
|
||||||
|
0, 0, 0, 1, 1, 0, 0, 0,
|
||||||
|
1, 1, 0, 1, 1, 0, 1, 1,
|
||||||
|
0, 1, 0, 1, 1, 0, 0, 0,
|
||||||
|
1, 0, 1, 1, 0, 0, 0, 1,
|
||||||
|
1, 0, 0, 0, 0, 0, 1, 1,
|
||||||
|
1, 0, 0, 1, 1, 0, 1, 1,
|
||||||
|
1, 1, 0, 1, 1, 0, 1, 1,
|
||||||
|
1, 1, 0, 1, 1, 0, 1, 1,
|
||||||
|
1, 0, 0, 1, 1, 0, 0, 0,
|
||||||
|
1, 1, 0, 1, 1, 0, 1, 0,
|
||||||
|
1, 0, 0, 1, 1, 0, 1, 1,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 1,
|
||||||
|
0, 0, 0, 1, 1, 0, 1, 1,
|
||||||
|
1, 1, 0, 1, 1, 0, 1, 0,
|
||||||
|
1, 1, 0, 1, 1, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 1, 1, 0, 0, 1, 0, 1,
|
||||||
|
1, 0, 0, 1, 1, 0, 1, 0,
|
||||||
|
0, 1, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 1, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 1,
|
||||||
|
1, 0, 0, 0, 1, 0, 0, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 1, 0, 0, 0, 1, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 1, 1, 1, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 0, 1, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 0, 0, 0, 1, 0, 0, 0,
|
||||||
|
0, 1, 0, 1, 0, 1, 1, 1,
|
||||||
|
1, 0, 1, 1, 1, 0, 1, 1,
|
||||||
|
0, 0, 0, 0, 0, 0, 1, 1,
|
||||||
|
0, 0, 0, 1, 0, 1, 0, 1,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 1, 1, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 1, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 1, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 1, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 1, 0, 0, 0, 0,
|
||||||
|
0, 1, 1, 0, 0, 0, 0, 1,
|
||||||
|
0, 1, 1, 0, 1, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 1, 0, 1, 1, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 0, 1, 0, 1, 0, 0,
|
||||||
|
1, 1, 0, 1, 0, 1, 1, 1,
|
||||||
|
1, 1, 0, 0, 1, 0, 0, 1,
|
||||||
|
0, 1, 1, 1, 1, 0, 0, 0,
|
||||||
|
1, 1, 1, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 1, 0, 0, 0, 0, 0,
|
||||||
|
1, 1, 0, 0, 1, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 1, 1, 1, 0,
|
||||||
|
0, 0, 0, 0, 1, 1, 1, 0,
|
||||||
|
0, 0, 1, 1, 0, 1, 1, 0,
|
||||||
|
0, 1, 1, 0, 0, 0, 0, 0,
|
||||||
|
1, 1, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 1, 1, 1, 0, 1, 1, 0,
|
||||||
|
1, 1, 1, 1, 0, 1, 1, 0,
|
||||||
|
1, 1, 1, 0, 0, 1, 1, 0,
|
||||||
|
0, 0, 1, 1, 0, 1, 1, 0,
|
||||||
|
1, 0, 1, 0, 0, 1, 1, 0,
|
||||||
|
1, 1, 0, 0, 0, 0, 0, 0,
|
||||||
|
1, 1, 0, 0, 0, 1, 1, 0,
|
||||||
|
1, 1, 1, 1, 0, 1, 1, 0,
|
||||||
|
1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
};
|
||||||
|
|
||||||
/* TRAU frame with AB data (noise). */
|
/* TRAU frame with AB data (noise). */
|
||||||
const ubit_t bits_ab[] = {
|
const ubit_t bits_ab[] = {
|
||||||
0, 0, 0, 0, 0, 0, 0, 0,
|
0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
@ -1336,6 +2080,142 @@ void er_gprs_trau_frame_decode_64k_FT_DATA_test(void)
|
||||||
printf(" ccu_data_ind.u.data_len=%u\n", frame.u.ccu_data_ind.data_len);
|
printf(" ccu_data_ind.u.data_len=%u\n", frame.u.ccu_data_ind.data_len);
|
||||||
printf(" ccu_data_ind.data=%s\n", osmo_hexdump_nospc(frame.u.ccu_data_ind.data, frame.u.ccu_data_ind.data_len));
|
printf(" ccu_data_ind.data=%s\n", osmo_hexdump_nospc(frame.u.ccu_data_ind.data, frame.u.ccu_data_ind.data_len));
|
||||||
|
|
||||||
|
printf("\n==> %s (MCS1)\n", __func__);
|
||||||
|
rc = er_gprs_trau_frame_decode_64k(&frame, bits_mcs1);
|
||||||
|
OSMO_ASSERT(rc == 0);
|
||||||
|
OSMO_ASSERT(frame.type == ER_GPRS_TRAU_FT_DATA);
|
||||||
|
printf(" ccu_data_ind.tav=%02x\n", frame.u.ccu_data_ind.tav);
|
||||||
|
printf(" ccu_data_ind.dbe=%u\n", frame.u.ccu_data_ind.dbe);
|
||||||
|
printf(" ccu_data_ind.cs_hdr=%u\n", frame.u.ccu_data_ind.cs_hdr);
|
||||||
|
printf(" ccu_data_ind.gprs.rx_lev=%u\n", frame.u.ccu_data_ind.rx_lev);
|
||||||
|
printf(" ccu_data_ind.gprs.est_acc_del_dev=%d\n", frame.u.ccu_data_ind.est_acc_del_dev);
|
||||||
|
printf(" ccu_data_ind.u.egprs.mean_bep=%u\n", frame.u.ccu_data_ind.u.egprs.mean_bep);
|
||||||
|
printf(" ccu_data_ind.u.egprs.cv_bep=%u\n", frame.u.ccu_data_ind.u.egprs.cv_bep);
|
||||||
|
printf(" ccu_data_ind.u.egprs.hdr_good=%u\n", frame.u.ccu_data_ind.u.egprs.hdr_good);
|
||||||
|
printf(" ccu_data_ind.u.egprs.data_good[0]=%u\n", frame.u.ccu_data_ind.u.egprs.data_good[0]);
|
||||||
|
printf(" ccu_data_ind.u.egprs.data_good[1]=%u\n", frame.u.ccu_data_ind.u.egprs.data_good[1]);
|
||||||
|
printf(" ccu_data_ind.u.data_len=%u\n", frame.u.ccu_data_ind.data_len);
|
||||||
|
printf(" ccu_data_ind.data=%s\n", osmo_hexdump_nospc(frame.u.ccu_data_ind.data, frame.u.ccu_data_ind.data_len));
|
||||||
|
|
||||||
|
printf("\n==> %s (MCS2)\n", __func__);
|
||||||
|
rc = er_gprs_trau_frame_decode_64k(&frame, bits_mcs2);
|
||||||
|
OSMO_ASSERT(rc == 0);
|
||||||
|
OSMO_ASSERT(frame.type == ER_GPRS_TRAU_FT_DATA);
|
||||||
|
printf(" ccu_data_ind.tav=%02x\n", frame.u.ccu_data_ind.tav);
|
||||||
|
printf(" ccu_data_ind.dbe=%u\n", frame.u.ccu_data_ind.dbe);
|
||||||
|
printf(" ccu_data_ind.cs_hdr=%u\n", frame.u.ccu_data_ind.cs_hdr);
|
||||||
|
printf(" ccu_data_ind.gprs.rx_lev=%u\n", frame.u.ccu_data_ind.rx_lev);
|
||||||
|
printf(" ccu_data_ind.gprs.est_acc_del_dev=%d\n", frame.u.ccu_data_ind.est_acc_del_dev);
|
||||||
|
printf(" ccu_data_ind.u.egprs.mean_bep=%u\n", frame.u.ccu_data_ind.u.egprs.mean_bep);
|
||||||
|
printf(" ccu_data_ind.u.egprs.cv_bep=%u\n", frame.u.ccu_data_ind.u.egprs.cv_bep);
|
||||||
|
printf(" ccu_data_ind.u.egprs.hdr_good=%u\n", frame.u.ccu_data_ind.u.egprs.hdr_good);
|
||||||
|
printf(" ccu_data_ind.u.egprs.data_good[0]=%u\n", frame.u.ccu_data_ind.u.egprs.data_good[0]);
|
||||||
|
printf(" ccu_data_ind.u.egprs.data_good[1]=%u\n", frame.u.ccu_data_ind.u.egprs.data_good[1]);
|
||||||
|
printf(" ccu_data_ind.u.data_len=%u\n", frame.u.ccu_data_ind.data_len);
|
||||||
|
printf(" ccu_data_ind.data=%s\n", osmo_hexdump_nospc(frame.u.ccu_data_ind.data, frame.u.ccu_data_ind.data_len));
|
||||||
|
|
||||||
|
printf("\n==> %s (MCS3)\n", __func__);
|
||||||
|
rc = er_gprs_trau_frame_decode_64k(&frame, bits_mcs3);
|
||||||
|
OSMO_ASSERT(rc == 0);
|
||||||
|
OSMO_ASSERT(frame.type == ER_GPRS_TRAU_FT_DATA);
|
||||||
|
printf(" ccu_data_ind.tav=%02x\n", frame.u.ccu_data_ind.tav);
|
||||||
|
printf(" ccu_data_ind.dbe=%u\n", frame.u.ccu_data_ind.dbe);
|
||||||
|
printf(" ccu_data_ind.cs_hdr=%u\n", frame.u.ccu_data_ind.cs_hdr);
|
||||||
|
printf(" ccu_data_ind.gprs.rx_lev=%u\n", frame.u.ccu_data_ind.rx_lev);
|
||||||
|
printf(" ccu_data_ind.gprs.est_acc_del_dev=%d\n", frame.u.ccu_data_ind.est_acc_del_dev);
|
||||||
|
printf(" ccu_data_ind.u.egprs.mean_bep=%u\n", frame.u.ccu_data_ind.u.egprs.mean_bep);
|
||||||
|
printf(" ccu_data_ind.u.egprs.cv_bep=%u\n", frame.u.ccu_data_ind.u.egprs.cv_bep);
|
||||||
|
printf(" ccu_data_ind.u.egprs.hdr_good=%u\n", frame.u.ccu_data_ind.u.egprs.hdr_good);
|
||||||
|
printf(" ccu_data_ind.u.egprs.data_good[0]=%u\n", frame.u.ccu_data_ind.u.egprs.data_good[0]);
|
||||||
|
printf(" ccu_data_ind.u.egprs.data_good[1]=%u\n", frame.u.ccu_data_ind.u.egprs.data_good[1]);
|
||||||
|
printf(" ccu_data_ind.u.data_len=%u\n", frame.u.ccu_data_ind.data_len);
|
||||||
|
printf(" ccu_data_ind.data=%s\n", osmo_hexdump_nospc(frame.u.ccu_data_ind.data, frame.u.ccu_data_ind.data_len));
|
||||||
|
|
||||||
|
printf("\n==> %s (MCS4)\n", __func__);
|
||||||
|
rc = er_gprs_trau_frame_decode_64k(&frame, bits_mcs4);
|
||||||
|
OSMO_ASSERT(rc == 0);
|
||||||
|
OSMO_ASSERT(frame.type == ER_GPRS_TRAU_FT_DATA);
|
||||||
|
printf(" ccu_data_ind.tav=%02x\n", frame.u.ccu_data_ind.tav);
|
||||||
|
printf(" ccu_data_ind.dbe=%u\n", frame.u.ccu_data_ind.dbe);
|
||||||
|
printf(" ccu_data_ind.cs_hdr=%u\n", frame.u.ccu_data_ind.cs_hdr);
|
||||||
|
printf(" ccu_data_ind.gprs.rx_lev=%u\n", frame.u.ccu_data_ind.rx_lev);
|
||||||
|
printf(" ccu_data_ind.gprs.est_acc_del_dev=%d\n", frame.u.ccu_data_ind.est_acc_del_dev);
|
||||||
|
printf(" ccu_data_ind.u.egprs.mean_bep=%u\n", frame.u.ccu_data_ind.u.egprs.mean_bep);
|
||||||
|
printf(" ccu_data_ind.u.egprs.cv_bep=%u\n", frame.u.ccu_data_ind.u.egprs.cv_bep);
|
||||||
|
printf(" ccu_data_ind.u.egprs.hdr_good=%u\n", frame.u.ccu_data_ind.u.egprs.hdr_good);
|
||||||
|
printf(" ccu_data_ind.u.egprs.data_good[0]=%u\n", frame.u.ccu_data_ind.u.egprs.data_good[0]);
|
||||||
|
printf(" ccu_data_ind.u.egprs.data_good[1]=%u\n", frame.u.ccu_data_ind.u.egprs.data_good[1]);
|
||||||
|
printf(" ccu_data_ind.u.data_len=%u\n", frame.u.ccu_data_ind.data_len);
|
||||||
|
printf(" ccu_data_ind.data=%s\n", osmo_hexdump_nospc(frame.u.ccu_data_ind.data, frame.u.ccu_data_ind.data_len));
|
||||||
|
|
||||||
|
printf("\n==> %s (MCS5)\n", __func__);
|
||||||
|
rc = er_gprs_trau_frame_decode_64k(&frame, bits_mcs5);
|
||||||
|
OSMO_ASSERT(rc == 0);
|
||||||
|
OSMO_ASSERT(frame.type == ER_GPRS_TRAU_FT_DATA);
|
||||||
|
printf(" ccu_data_ind.tav=%02x\n", frame.u.ccu_data_ind.tav);
|
||||||
|
printf(" ccu_data_ind.dbe=%u\n", frame.u.ccu_data_ind.dbe);
|
||||||
|
printf(" ccu_data_ind.cs_hdr=%u\n", frame.u.ccu_data_ind.cs_hdr);
|
||||||
|
printf(" ccu_data_ind.gprs.rx_lev=%u\n", frame.u.ccu_data_ind.rx_lev);
|
||||||
|
printf(" ccu_data_ind.gprs.est_acc_del_dev=%d\n", frame.u.ccu_data_ind.est_acc_del_dev);
|
||||||
|
printf(" ccu_data_ind.u.egprs.mean_bep=%u\n", frame.u.ccu_data_ind.u.egprs.mean_bep);
|
||||||
|
printf(" ccu_data_ind.u.egprs.cv_bep=%u\n", frame.u.ccu_data_ind.u.egprs.cv_bep);
|
||||||
|
printf(" ccu_data_ind.u.egprs.hdr_good=%u\n", frame.u.ccu_data_ind.u.egprs.hdr_good);
|
||||||
|
printf(" ccu_data_ind.u.egprs.data_good[0]=%u\n", frame.u.ccu_data_ind.u.egprs.data_good[0]);
|
||||||
|
printf(" ccu_data_ind.u.egprs.data_good[1]=%u\n", frame.u.ccu_data_ind.u.egprs.data_good[1]);
|
||||||
|
printf(" ccu_data_ind.u.data_len=%u\n", frame.u.ccu_data_ind.data_len);
|
||||||
|
printf(" ccu_data_ind.data=%s\n", osmo_hexdump_nospc(frame.u.ccu_data_ind.data, frame.u.ccu_data_ind.data_len));
|
||||||
|
|
||||||
|
printf("\n==> %s (MCS6)\n", __func__);
|
||||||
|
rc = er_gprs_trau_frame_decode_64k(&frame, bits_mcs6);
|
||||||
|
OSMO_ASSERT(rc == 0);
|
||||||
|
OSMO_ASSERT(frame.type == ER_GPRS_TRAU_FT_DATA);
|
||||||
|
printf(" ccu_data_ind.tav=%02x\n", frame.u.ccu_data_ind.tav);
|
||||||
|
printf(" ccu_data_ind.dbe=%u\n", frame.u.ccu_data_ind.dbe);
|
||||||
|
printf(" ccu_data_ind.cs_hdr=%u\n", frame.u.ccu_data_ind.cs_hdr);
|
||||||
|
printf(" ccu_data_ind.gprs.rx_lev=%u\n", frame.u.ccu_data_ind.rx_lev);
|
||||||
|
printf(" ccu_data_ind.gprs.est_acc_del_dev=%d\n", frame.u.ccu_data_ind.est_acc_del_dev);
|
||||||
|
printf(" ccu_data_ind.u.egprs.mean_bep=%u\n", frame.u.ccu_data_ind.u.egprs.mean_bep);
|
||||||
|
printf(" ccu_data_ind.u.egprs.cv_bep=%u\n", frame.u.ccu_data_ind.u.egprs.cv_bep);
|
||||||
|
printf(" ccu_data_ind.u.egprs.hdr_good=%u\n", frame.u.ccu_data_ind.u.egprs.hdr_good);
|
||||||
|
printf(" ccu_data_ind.u.egprs.data_good[0]=%u\n", frame.u.ccu_data_ind.u.egprs.data_good[0]);
|
||||||
|
printf(" ccu_data_ind.u.egprs.data_good[1]=%u\n", frame.u.ccu_data_ind.u.egprs.data_good[1]);
|
||||||
|
printf(" ccu_data_ind.u.data_len=%u\n", frame.u.ccu_data_ind.data_len);
|
||||||
|
printf(" ccu_data_ind.data=%s\n", osmo_hexdump_nospc(frame.u.ccu_data_ind.data, frame.u.ccu_data_ind.data_len));
|
||||||
|
|
||||||
|
printf("\n==> %s (MCS7)\n", __func__);
|
||||||
|
rc = er_gprs_trau_frame_decode_64k(&frame, bits_mcs7);
|
||||||
|
OSMO_ASSERT(rc == 0);
|
||||||
|
OSMO_ASSERT(frame.type == ER_GPRS_TRAU_FT_DATA);
|
||||||
|
printf(" ccu_data_ind.tav=%02x\n", frame.u.ccu_data_ind.tav);
|
||||||
|
printf(" ccu_data_ind.dbe=%u\n", frame.u.ccu_data_ind.dbe);
|
||||||
|
printf(" ccu_data_ind.cs_hdr=%u\n", frame.u.ccu_data_ind.cs_hdr);
|
||||||
|
printf(" ccu_data_ind.gprs.rx_lev=%u\n", frame.u.ccu_data_ind.rx_lev);
|
||||||
|
printf(" ccu_data_ind.gprs.est_acc_del_dev=%d\n", frame.u.ccu_data_ind.est_acc_del_dev);
|
||||||
|
printf(" ccu_data_ind.u.egprs.mean_bep=%u\n", frame.u.ccu_data_ind.u.egprs.mean_bep);
|
||||||
|
printf(" ccu_data_ind.u.egprs.cv_bep=%u\n", frame.u.ccu_data_ind.u.egprs.cv_bep);
|
||||||
|
printf(" ccu_data_ind.u.egprs.hdr_good=%u\n", frame.u.ccu_data_ind.u.egprs.hdr_good);
|
||||||
|
printf(" ccu_data_ind.u.egprs.data_good[0]=%u\n", frame.u.ccu_data_ind.u.egprs.data_good[0]);
|
||||||
|
printf(" ccu_data_ind.u.egprs.data_good[1]=%u\n", frame.u.ccu_data_ind.u.egprs.data_good[1]);
|
||||||
|
printf(" ccu_data_ind.u.data_len=%u\n", frame.u.ccu_data_ind.data_len);
|
||||||
|
printf(" ccu_data_ind.data=%s\n", osmo_hexdump_nospc(frame.u.ccu_data_ind.data, frame.u.ccu_data_ind.data_len));
|
||||||
|
|
||||||
|
printf("\n==> %s (MCS8)\n", __func__);
|
||||||
|
rc = er_gprs_trau_frame_decode_64k(&frame, bits_mcs8);
|
||||||
|
OSMO_ASSERT(rc == 0);
|
||||||
|
OSMO_ASSERT(frame.type == ER_GPRS_TRAU_FT_DATA);
|
||||||
|
printf(" ccu_data_ind.tav=%02x\n", frame.u.ccu_data_ind.tav);
|
||||||
|
printf(" ccu_data_ind.dbe=%u\n", frame.u.ccu_data_ind.dbe);
|
||||||
|
printf(" ccu_data_ind.cs_hdr=%u\n", frame.u.ccu_data_ind.cs_hdr);
|
||||||
|
printf(" ccu_data_ind.gprs.rx_lev=%u\n", frame.u.ccu_data_ind.rx_lev);
|
||||||
|
printf(" ccu_data_ind.gprs.est_acc_del_dev=%d\n", frame.u.ccu_data_ind.est_acc_del_dev);
|
||||||
|
printf(" ccu_data_ind.u.egprs.mean_bep=%u\n", frame.u.ccu_data_ind.u.egprs.mean_bep);
|
||||||
|
printf(" ccu_data_ind.u.egprs.cv_bep=%u\n", frame.u.ccu_data_ind.u.egprs.cv_bep);
|
||||||
|
printf(" ccu_data_ind.u.egprs.hdr_good=%u\n", frame.u.ccu_data_ind.u.egprs.hdr_good);
|
||||||
|
printf(" ccu_data_ind.u.egprs.data_good[0]=%u\n", frame.u.ccu_data_ind.u.egprs.data_good[0]);
|
||||||
|
printf(" ccu_data_ind.u.egprs.data_good[1]=%u\n", frame.u.ccu_data_ind.u.egprs.data_good[1]);
|
||||||
|
printf(" ccu_data_ind.u.data_len=%u\n", frame.u.ccu_data_ind.data_len);
|
||||||
|
printf(" ccu_data_ind.data=%s\n", osmo_hexdump_nospc(frame.u.ccu_data_ind.data, frame.u.ccu_data_ind.data_len));
|
||||||
|
|
||||||
printf("\n==> %s (AB)\n", __func__);
|
printf("\n==> %s (AB)\n", __func__);
|
||||||
rc = er_gprs_trau_frame_decode_64k(&frame, bits_ab);
|
rc = er_gprs_trau_frame_decode_64k(&frame, bits_ab);
|
||||||
OSMO_ASSERT(rc == 0);
|
OSMO_ASSERT(rc == 0);
|
||||||
|
|
|
@ -2539,6 +2539,118 @@
|
||||||
ccu_data_ind.u.data_len=34
|
ccu_data_ind.u.data_len=34
|
||||||
ccu_data_ind.data=00010449d09d5c5e676f6f676c6503636f6d0000010001881c802b2b2b2b2b2b2b00
|
ccu_data_ind.data=00010449d09d5c5e676f6f676c6503636f6d0000010001881c802b2b2b2b2b2b2b00
|
||||||
|
|
||||||
|
==> er_gprs_trau_frame_decode_64k_FT_DATA_test (MCS1)
|
||||||
|
ccu_data_ind.tav=00
|
||||||
|
ccu_data_ind.dbe=0
|
||||||
|
ccu_data_ind.cs_hdr=7
|
||||||
|
ccu_data_ind.gprs.rx_lev=63
|
||||||
|
ccu_data_ind.gprs.est_acc_del_dev=0
|
||||||
|
ccu_data_ind.u.egprs.mean_bep=7
|
||||||
|
ccu_data_ind.u.egprs.cv_bep=0
|
||||||
|
ccu_data_ind.u.egprs.hdr_good=1
|
||||||
|
ccu_data_ind.u.egprs.data_good[0]=1
|
||||||
|
ccu_data_ind.u.egprs.data_good[1]=0
|
||||||
|
ccu_data_ind.u.data_len=27
|
||||||
|
ccu_data_ind.data=041000930020020d00000000060d00000000001a000014001ad701
|
||||||
|
|
||||||
|
==> er_gprs_trau_frame_decode_64k_FT_DATA_test (MCS2)
|
||||||
|
ccu_data_ind.tav=00
|
||||||
|
ccu_data_ind.dbe=0
|
||||||
|
ccu_data_ind.cs_hdr=7
|
||||||
|
ccu_data_ind.gprs.rx_lev=63
|
||||||
|
ccu_data_ind.gprs.est_acc_del_dev=0
|
||||||
|
ccu_data_ind.u.egprs.mean_bep=7
|
||||||
|
ccu_data_ind.u.egprs.cv_bep=0
|
||||||
|
ccu_data_ind.u.egprs.hdr_good=1
|
||||||
|
ccu_data_ind.u.egprs.data_good[0]=1
|
||||||
|
ccu_data_ind.u.egprs.data_good[1]=0
|
||||||
|
ccu_data_ind.u.data_len=33
|
||||||
|
ccu_data_ind.data=142080926e8b8051011210101010c44c016a0060de6de73d030000020000000000
|
||||||
|
|
||||||
|
==> er_gprs_trau_frame_decode_64k_FT_DATA_test (MCS3)
|
||||||
|
ccu_data_ind.tav=00
|
||||||
|
ccu_data_ind.dbe=0
|
||||||
|
ccu_data_ind.cs_hdr=7
|
||||||
|
ccu_data_ind.gprs.rx_lev=63
|
||||||
|
ccu_data_ind.gprs.est_acc_del_dev=0
|
||||||
|
ccu_data_ind.u.egprs.mean_bep=7
|
||||||
|
ccu_data_ind.u.egprs.cv_bep=0
|
||||||
|
ccu_data_ind.u.egprs.hdr_good=1
|
||||||
|
ccu_data_ind.u.egprs.data_good[0]=1
|
||||||
|
ccu_data_ind.u.egprs.data_good[1]=0
|
||||||
|
ccu_data_ind.u.data_len=42
|
||||||
|
ccu_data_ind.data=18000091068213cb0000288a00007ee02a80008022f2bd8151010410101010c0fb016a00568ad2b28400
|
||||||
|
|
||||||
|
==> er_gprs_trau_frame_decode_64k_FT_DATA_test (MCS4)
|
||||||
|
ccu_data_ind.tav=00
|
||||||
|
ccu_data_ind.dbe=0
|
||||||
|
ccu_data_ind.cs_hdr=7
|
||||||
|
ccu_data_ind.gprs.rx_lev=63
|
||||||
|
ccu_data_ind.gprs.est_acc_del_dev=0
|
||||||
|
ccu_data_ind.u.egprs.mean_bep=7
|
||||||
|
ccu_data_ind.u.egprs.cv_bep=0
|
||||||
|
ccu_data_ind.u.egprs.hdr_good=1
|
||||||
|
ccu_data_ind.u.egprs.data_good[0]=1
|
||||||
|
ccu_data_ind.u.egprs.data_good[1]=0
|
||||||
|
ccu_data_ind.u.data_len=49
|
||||||
|
ccu_data_ind.data=0008801060fe4f14006206cac16964044000b008c0c18081ba0200f250f157565656565656565656565656565656565600
|
||||||
|
|
||||||
|
==> er_gprs_trau_frame_decode_64k_FT_DATA_test (MCS5)
|
||||||
|
ccu_data_ind.tav=00
|
||||||
|
ccu_data_ind.dbe=0
|
||||||
|
ccu_data_ind.cs_hdr=6
|
||||||
|
ccu_data_ind.gprs.rx_lev=63
|
||||||
|
ccu_data_ind.gprs.est_acc_del_dev=0
|
||||||
|
ccu_data_ind.u.egprs.mean_bep=7
|
||||||
|
ccu_data_ind.u.egprs.cv_bep=0
|
||||||
|
ccu_data_ind.u.egprs.hdr_good=1
|
||||||
|
ccu_data_ind.u.egprs.data_good[0]=1
|
||||||
|
ccu_data_ind.u.egprs.data_good[1]=0
|
||||||
|
ccu_data_ind.u.data_len=61
|
||||||
|
ccu_data_ind.data=000840030086ffae008063eee2959595959595959595959595959595959595959595959595959595959595959595959595959595959595959595959515
|
||||||
|
|
||||||
|
==> er_gprs_trau_frame_decode_64k_FT_DATA_test (MCS6)
|
||||||
|
ccu_data_ind.tav=00
|
||||||
|
ccu_data_ind.dbe=0
|
||||||
|
ccu_data_ind.cs_hdr=6
|
||||||
|
ccu_data_ind.gprs.rx_lev=63
|
||||||
|
ccu_data_ind.gprs.est_acc_del_dev=0
|
||||||
|
ccu_data_ind.u.egprs.mean_bep=7
|
||||||
|
ccu_data_ind.u.egprs.cv_bep=0
|
||||||
|
ccu_data_ind.u.egprs.hdr_good=1
|
||||||
|
ccu_data_ind.u.egprs.data_good[0]=1
|
||||||
|
ccu_data_ind.u.egprs.data_good[1]=0
|
||||||
|
ccu_data_ind.u.data_len=79
|
||||||
|
ccu_data_ind.data=0000400200beff00e0140484398078088000808e8da9a1959b0acffc44003880c66ce3190900f0808c59163392006001908b82130580988172701a19011080ae0000ca38a095959595959595959515
|
||||||
|
|
||||||
|
==> er_gprs_trau_frame_decode_64k_FT_DATA_test (MCS7)
|
||||||
|
ccu_data_ind.tav=00
|
||||||
|
ccu_data_ind.dbe=0
|
||||||
|
ccu_data_ind.cs_hdr=5
|
||||||
|
ccu_data_ind.gprs.rx_lev=63
|
||||||
|
ccu_data_ind.gprs.est_acc_del_dev=0
|
||||||
|
ccu_data_ind.u.egprs.mean_bep=7
|
||||||
|
ccu_data_ind.u.egprs.cv_bep=0
|
||||||
|
ccu_data_ind.u.egprs.hdr_good=1
|
||||||
|
ccu_data_ind.u.egprs.data_good[0]=1
|
||||||
|
ccu_data_ind.u.egprs.data_good[1]=1
|
||||||
|
ccu_data_ind.u.data_len=119
|
||||||
|
ccu_data_ind.data=000040003c4001c02508087300f1100001001d1b53432b37159ef9890070008dd9c6331200e00119b32c662401c002201705270a003103e5e0343202000030fc7705009022e4adacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacac00
|
||||||
|
|
||||||
|
==> er_gprs_trau_frame_decode_64k_FT_DATA_test (MCS8)
|
||||||
|
ccu_data_ind.tav=00
|
||||||
|
ccu_data_ind.dbe=0
|
||||||
|
ccu_data_ind.cs_hdr=5
|
||||||
|
ccu_data_ind.gprs.rx_lev=63
|
||||||
|
ccu_data_ind.gprs.est_acc_del_dev=0
|
||||||
|
ccu_data_ind.u.egprs.mean_bep=7
|
||||||
|
ccu_data_ind.u.egprs.cv_bep=0
|
||||||
|
ccu_data_ind.u.egprs.hdr_good=1
|
||||||
|
ccu_data_ind.u.egprs.data_good[0]=1
|
||||||
|
ccu_data_ind.u.egprs.data_good[1]=1
|
||||||
|
ccu_data_ind.u.data_len=143
|
||||||
|
ccu_data_ind.data=040040002f4003c00d650000034500003f70a540004011f94ac0a80006080808083e890035002b340ae7c301000001000000000000066d74616c6b3406676f6f676c6503636f6d0000012c00049866990d004794010010140100f400500000fc47a87703a3021820202020185a00d400a4ac4f7a1c0400000400000000000010ccd5c1b1199cbdbd9db1950d8cbd01
|
||||||
|
|
||||||
==> er_gprs_trau_frame_decode_64k_FT_DATA_test (AB)
|
==> er_gprs_trau_frame_decode_64k_FT_DATA_test (AB)
|
||||||
ccu_data_ind.tav=01
|
ccu_data_ind.tav=01
|
||||||
ccu_data_ind.dbe=0
|
ccu_data_ind.dbe=0
|
||||||
|
|
Loading…
Reference in New Issue