ГОСТ Р 53556.3—2012
tt *= acb_frac_wb:
kt = acb_delay_wb
♦
tt / 6:
tt = tt% 6;
for (i = 0; i
<
kt && n <sbfrm_size:
/♦+,
r++)
{
for (к =-11: к
<=
11;
/C++
)
{
kk = (k*1)
*
6 -
tt;
acb[n]
+=
int_fil[abs(kk)] ’ pacb [306-(kt-i*k)J:
pacb[306+nj - acb[n]:
}
)
}
Т а б л и ц а 101 — Отображение между shape_delay и задержкой шага
acbjdx_wb
acb_delay_*rb
acb_(rac_wb
0, 1
32
{2‘(acbjdx_wb+1}%6
2 -7 7 7
32+2’(acbJdx_wb-2)l6
(2’(acb_idx_ wb-2 ))%6
778
0
0
5.7.4.3.4 Декодирование вектора фиксированной книги шифров 1
Вектор фиксированной книги шифров 1
fcb1[n]
получен преобразованием частоты дискретизации век
тора фиксированной книги шифров
nb_fcb[n),
используемой в инструменте
МРЕ
или инструменте
МРЕ
с
масштабируемой битовой скоростью следующим образом:
for (п =0;п< sbfrm_size/2: п++)
{
fcb1[2’n]
=
nb_fcb[n):
fcb1[2’n*1]
=
0:
}
5.7.4.3.5Декодирование вектора фиксированной книги шифров 2
Вектор фиксированной книги шифров 2 содержит несколько ненулевых импульсов и представлен
позицией импульса и амплитудами импульса. Позиции импульса
pul_pos[i]
получают из
shape_bwspositions.
Амплитуды импульса
pul_amp[i]
получают из
shape_bws_signs.
for (i
=
rum_pulse bv/s -1 , к = 0; i
>=
0; i- -)
{
for (j = 0:j
<
num_bit_pos[ij; j*+)
{
pos_idx[i]
|=
((shape_bws_positions » k ) & 0x1)
«
j;
/c++.
}
pul_amp[i] =1.0:
if(((shapo_bws_signs » (num_pulse bws-1-i)) & 0x1)
==
1)
{
pul_amp[i] =-1.0:
}
pul_pos[i]
=
pos_tbl[i][pos_idx[i]J
;
}
где
пит_pulse_bws —
число импульсов равно одному из вариантов 6. 8, 10. 12. Выбор зависит от
BWS_configuration.num_bit_posfi]
является числом битовдля кодирования позиции
гго
импульса.
pos_tbl[i][j}
является таблицей ограничения, которая указывает возможные позиции для каждого импульса. Таблица
102 указывает возможные позиции для каждого импульса.
60