AN2094 Freescale Semiconductor / Motorola, AN2094 Datasheet - Page 36

no-image

AN2094

Manufacturer Part Number
AN2094
Description
ITU-T G.729 Implementation on StarCore SC140
Manufacturer
Freescale Semiconductor / Motorola
Datasheet
References
Appendix A
Selected C and Pseudocode Listings
A.1 Norm_Corr() prototype
A.2 Norm_Corr() pseudocode
36
void Norm_Corr(Word16 exc[], Word16 xn[], Word16 h[], Word16 L_subfr,
{
#pragma align *exc 8
#pragma align *xn 8
#pragma align *h 8
#pragma align excf 8
#pragma align scaled_excf 8
#pragma align *s_excf 8
#pragma align factor 8
}
{
k=-t_min;
/* compute the filtered excitation for the first delay t_min */
Convolve(&exc[k],h,excf);
/* Compute energy of excf[] for danger of overflow */
E=0;
for(j=0;j<40;j++)
h_fac=3;
scaling=0;
s_excf=excf;
if(E>2^26)
{
Word16 i,j,k,exv;
Word32 s0, s1;
Word32 sa, sb, sc;
Word16 excf[L_SUBFR];
Word16 scaling, h_fac, *s_excf, scaled_excf[L_SUBFR];
Word16 factor[L_SUBFR];
h_fac-=2;
scaling+=2;
s_excf=scaled_excf;
E = E + excf[j] * excf[j];
ITU-T G.729 Implementation on the StarCore™ SC140/SC1400 Cores, Rev. 1
Word16 t_min, Word16 t_max, Word16 corr_norm[])
Example 10. Norm_Corr() pseudo-code
Example 9. Norm_Corr() prototype
Freescale Semiconductor

Related parts for AN2094