ГОСТ Р 53556.3—2012
pos_idx[i)
|=
((shape_positions»k) & 0x1)
« /:
/C++;
}
pul_amp[i] = 1.0;
if(((shape_signs » (num_pulse-1-i)) & 0x1)
==
1)
{
pul_amp[i]
=
-1.0;
}
pul_pos[i]
=
pos_tbl[i][pos_idx[i]J;
}
где
пит_puise—
число импульсов, устанавливается из
MPE_Configuratton
в зависимости от частоты
дискретизации.
num_bit_pos[iJ
— число битов для кодирования позиции /-го импульса.
pos_tbi[i][j]
является
таблицей ограничения, которая указывает возможные позиции для каждого импульса. Таблица 95 указыва ет
возможные позиции для каждого импульса. Таблица 96 устанавливается в соответствии с комбинацией
subfrm_sizo. num_pulse
и
num_bit_pos[]
следующим образом:
step
=
subfrm_size/ min_num_bit_pos;
for (i =0; i< num_pulse: i++)
{
m = 1« (num_bit_pos[i}-min_num_bit_pos);
for(j = 0. к
=
0: к < m)
{
ch(j]
=
i;
/C++;
j
♦=
(long)((fioat)step/m
+
0.5),
j ~ i% step;
}
)
for (i
=
0; i
<
num_pulse: i*+)
{
for (I
=
0. к
=
0; к < step;
/с++>
{
if (i
==
ch[k])
{
for
(j
=
0; j
<
min_num_bit_pos;
/++)
{
pos_tbl[i]p++) = к
♦
step “j:
}
}
}
Т а б л и ц а 95 — Число импульсов для частоты дискретизации 8 кГц
МР£_Con
figuration
num_pulse
0
1
2
3
4
5
6
7
8
9
3
4
5
5
6
7
6
7
8
9
UP£_Con-
figuration
num_pulse
10
10
11
12
13
14
15
16
17
18
19
11
12
4
5
6
7
8
9
10
MPE_Con-
figuration
num_pulse
20
21
22
23
24
25
26
11
12
8
9
10
11
12
27... 31
Зарезервировано
52