📄 main.cpp
字号:
S16 amp = abs(rand()) % 7354;
fill_rand(GaecDbC.asRbuf, GAEC_RBUF_SZ, amp);
memcpy(GaecDbA.asRbuf, GaecDbC.asRbuf, GAEC_RBUF_SZ);
GaecScC.sErleMax =
GaecScA.sErleMax =
(S16)((rand() *10000L)>>15);
GaecDbC.sErleAv =
GaecDbA.sErleAv =
(S16)((rand() *10000L)>>15);
GaecDbC.sErlAv =
GaecDbA.sErlAv =
(S16)((rand() *10000L)>>15);
GaecDbC.sExpectedErrEn =
GaecDbA.sExpectedErrEn =
GAEC_DB(-100) + (S16)((rand() *10000L)>>15);
gaec_dtd_exp_errC(&GaecDbC, &GaecScC);
gaec_dtd_exp_err (&GaecDbA, &GaecScA);
sErr += compare_sc();
sErr += compare_db();
if (sErr)
{
sTrap = gaec_utl_en2log(sErr);
// sErr = 0;
}
}
}
#elif (DBG_IT == 303)
{
int band;
void gaec_dtd_exp_err_sbC(GAEC_tDb *pDb,GAEC_tSc *pSc);
fill_rand(&GaecDbC.aasRoutEnHst[0][0],
GAEC_ADF_FRS*(GAEC_BANDS+1), GAEC_DB(30));
for (band = 0; band < (GAEC_BANDS+1); band++)
for (k = 0; k < GAEC_ADF_FRS; k++)
GaecDbC.aasRoutEnHst[band][k] -= GAEC_DB(45);
memcpy(GaecDbA.aasRoutEnHst, GaecDbC.aasRoutEnHst,
GAEC_ADF_FRS*(GAEC_BANDS+1));
for (band = 0; band < GAEC_BANDS+1; band++)
{
GaecDbC.asExpectedErrEn[band] =
GaecDbA.asExpectedErrEn[band] =
GAEC_DB(-100) + (S16)((rand() *10000L)>>15);
}
for (k = 0; k < 303; k++)
{
GaecScC.sErleMax =
GaecScA.sErleMax =
(S16)((rand() *10000L)>>15);
for (band = 0; band < GAEC_BANDS+1; band++)
{
GaecDbC.asErleAv[band] =
GaecDbA.asErleAv[band] =
(S16)((rand() *10000L)>>15);
GaecDbC.asErlAv[band] =
GaecDbA.asErlAv[band] =
(S16)((rand() *10000L)>>15);
GaecScC.asRcvEn[band] =
GaecScA.asRcvEn[band] =
GAEC_DB(-100) + (S16)((rand() *10000L)>>15);
}
gaec_dtd_exp_err_sbC(&GaecDbC, &GaecScC);
gaec_dtd_exp_err_sb (&GaecDbA, &GaecScA);
sErr += compare_sc();
sErr += compare_db();
if (sErr)
{
sTrap = gaec_utl_en2log(sErr);
// sErr = 0;
}
}
}
#elif (DBG_IT == 304)
{
void gaec_dtd_vad_errC(GAEC_tDb *pDb,GAEC_tSc *pSc);
GaecDbC.uAdfMode = GaecDbA.uAdfMode = 2;
GaecDbC.sVadRxNse = GaecDbA.sVadRxNse = GAEC_DB(-60);
GaecDbC.sVadRxCrit = GaecDbA.sVadRxCrit = GAEC_DB(-5);
for (k = 0; k < 304; k++)
{
GaecScC.sErrEn = GaecScA.sErrEn = GAEC_DB(-100) + (S16)((rand() *10000L)>>15);
GaecScC.sSinEn = GaecScA.sSinEn = GAEC_DB(-100) + (S16)((rand() *10000L)>>15);
gaec_dtd_vad_errC(&GaecDbA, &GaecScA);
gaec_dtd_vad_err (&GaecDbC, &GaecScC);
sErr += compare_sc();
sErr += compare_db();
if (sErr)
{
sTrap = gaec_utl_en2log(sErr);
// sErr = 0;
}
}
}
#elif (DBG_IT == 305)
{
void gaec_dtd_vad_err_sbC(GAEC_tDb *pDb,GAEC_tSc *pSc);
int band;
GaecDbC.uAdfMode = GaecDbA.uAdfMode = 2;
for (band = 0; band < GAEC_BANDS+1; band++)
{
GaecDbC.asVadRxNse[band] = GaecDbA.asVadRxNse[band] = GAEC_DB(-60);
GaecDbC.asVadRxCrit[band] = GaecDbA.asVadRxCrit[band] = GAEC_DB(5);
}
for (k = 0; k < 3050; k++)
{
for (band = 0; band < GAEC_BANDS+1; band++)
{
GaecScC.asErrEn[band] = GaecScA.asErrEn[band] =
// GAEC_DB(-55);
GAEC_DB(-100) + (S16)((rand() *10000L)>>15);
GaecScC.asSndEn[band] = GaecScA.asSndEn[band] =
// GAEC_DB(-55);
GAEC_DB(-100) + (S16)((rand() *10000L)>>15);
}
gaec_dtd_vad_err_sbC(&GaecDbC, &GaecScC);
gaec_dtd_vad_err_sb (&GaecDbA, &GaecScA);
sErr += compare_sc();
sErr += compare_db();
if (sErr)
{
sTrap = gaec_utl_en2log(sErr);
// sErr = 0;
}
// asHstC[k] = GaecDbC.asVadCrit[5];
}
}
#elif (DBG_IT == 306)
{
void gaec_dtd_erleC(GAEC_tDb *pDb,GAEC_tSc *pSc);
int band;
for (k = 0; k < 306; k++)
{
for (band = 0; band < GAEC_BANDS+1; band++)
{
GaecScC.asErrEn[band] = GaecScA.asErrEn[band] =
// GAEC_DB(-55-band);
GAEC_DB(-100) + (S16)((rand() *10000L)>>15);
GaecScC.asSndEn[band] = GaecScA.asSndEn[band] =
// GAEC_DB(-25-band);
GAEC_DB(-70) + (S16)((rand() *10000L)>>15);
}
gaec_dtd_erleC(&GaecDbC, &GaecScC);
gaec_dtd_erle (&GaecDbA, &GaecScA);
sErr += compare_sc();
sErr += compare_db();
if (sErr)
{
sTrap = gaec_utl_en2log(sErr);
// sErr = 0;
}
}
}
#elif (DBG_IT == 307)
{
void gaec_dtd_criteriaC(GAEC_tDb *pDb,GAEC_tSc *pSc);
GaecDbC.Cfg.sDtThr = GaecDbA.Cfg.sDtThr = GAEC_DB(3);
GaecDbC.sDtCrit = GaecDbA.sDtCrit = GAEC_DB(5);
GaecDbC.sErlCrit = GaecDbA.sErlCrit = GAEC_DB(5);
for (k = 0; k < 307; k++)
{
GaecDbC.sExpectedErrEn =
GaecDbA.sExpectedErrEn =
GAEC_DB(-80) + (S16)((rand() *6000L)>>15);
GaecScC.sErrEn =
GaecScA.sErrEn =
GAEC_DB(-55) + (S16)((rand() *6000L)>>15);
GaecDbC.sVadRxNse =
GaecDbA.sVadRxNse =
GAEC_DB(-90) + (S16)((rand() *6000L)>>15);
gaec_dtd_criteriaC(&GaecDbC, &GaecScC);
gaec_dtd_criteria (&GaecDbA, &GaecScA);
sErr += compare_sc();
sErr += compare_db();
if (sErr)
{
sTrap = gaec_utl_en2log(sErr);
// sErr = 0;
}
asHstC[k] = GaecDbC.sDtCrit;
}
}
#elif (DBG_IT == 308)
{
void gaec_dtd_criteria_sbC(GAEC_tDb *pDb,GAEC_tSc *pSc);
int band;
GaecDbC.Cfg.sDtThr = GaecDbA.Cfg.sDtThr = GAEC_DB(3);
for (band = 0; band < GAEC_BANDS+1; band++)
{
GaecDbC.asDtCrit[band] =
GaecDbA.asDtCrit[band] =
GAEC_DB(0);
GaecDbC.asErlCrit[band] =
GaecDbA.asErlCrit[band] =
GAEC_DB(0);
}
for (k = 0; k < 308; k++)
{
for (band = 0; band < GAEC_BANDS+1; band++)
{
GaecDbC.asExpectedErrEn[band] =
GaecDbA.asExpectedErrEn[band] =
// GAEC_DB(-60);
GAEC_DB(-80) + (S16)((rand() *(170*30L))>>15);
GaecDbC.asVadRxNse[band] =
GaecDbA.asVadRxNse[band] =
// GAEC_DB(-65);
GAEC_DB(-80) + (S16)((rand() *(170*30L))>>15);
GaecScC.asErrEn[band] =
GaecScA.asErrEn[band] =
// GAEC_DB(-55);
GAEC_DB(-100) + (S16)((rand() *(170*70L))>>15);
}
GaecScC.sErleMax =
GaecScA.sErleMax =
// GAEC_DB(-55-band);
GAEC_DB(5) + (S16)((rand() *(170*40L))>>15);
gaec_dtd_criteria_sbC(&GaecDbC, &GaecScC);
gaec_dtd_criteria_sb (&GaecDbA, &GaecScA);
sErr += compare_sc();
sErr += compare_db();
if (sErr)
{
sTrap = gaec_utl_en2log(sErr);
// sErr = 0;
}
asHstC[k] = GaecDbC.asDtCrit[5];
}
}
#elif (DBG_IT == 309)
{
void gaec_dtd_dec_criteriaC(GAEC_tDb *pDb,GAEC_tSc *pSc);
int band;
GaecDbC.uIsDT = GaecDbA.uIsDT = 1;
for (band = 0; band < GAEC_BANDS+1; band++)
{
GaecDbC.asDtCrit[band] = GaecDbA.asDtCrit[band] =
GAEC_DB((30-band/8));
}
GaecDbC.sDtCrit = GaecDbA.sDtCrit =
GAEC_DB(25);
for (k = 0; k < 309; k++)
{
gaec_dtd_dec_criteriaC(&GaecDbC, &GaecScC);
gaec_dtd_dec_criteria (&GaecDbA, &GaecScA);
sErr += compare_sc();
sErr += compare_db();
if (sErr)
{
sTrap = gaec_utl_en2log(sErr);
// sErr = 0;
}
asHstC[k] = GaecDbC.asDtCrit[3];
}
}
#elif (DBG_IT == 310)
{
void gaec_dtd_avrg_erle_sbC(GAEC_tDb *pDb,GAEC_tSc *pSc);
int band;
GaecDbC.Cfg.sErlMin = GaecDbA.Cfg.sErlMin = GAEC_DB(8);
for (band = 0; band < GAEC_BANDS+1; band++)
{
GaecDbC.asDtCrit[band] =
GaecDbA.asDtCrit[band] =
GAEC_DB(10.-band/4);
GaecDbC.asErleAv[band] =
GaecDbA.asErleAv[band] =
GAEC_DB(15.+band/4);
GaecDbC.asErlAv[band] =
GaecDbA.asErlAv[band] =
GAEC_DB(5.-band/2);
GaecDbC.asVadRxNse[band] =
GaecDbA.asVadRxNse[band] =
GAEC_DB(-70-band);
}
GaecDbC.sDtCrit =
GaecDbA.sDtCrit =
GAEC_DB(1);
GaecDbC.sErleAv =
GaecDbA.sErleAv =
0x1234;//GAEC_DB(-25);
GaecDbC.sErlAv =
GaecDbA.sErlAv =
0x1235;//GAEC_DB(5);
GaecDbC.sVadRxNse =
GaecDbA.sVadRxNse =
GAEC_DB(-65);
for (k = 0; k < 310; k++)
{
GaecDbC.uAdfMode =
GaecDbA.uAdfMode =
rand() % 5;
for (band = 0; band < GAEC_BANDS+1; band++)
{
GaecScC.asRcvEn[band] =
GaecScA.asRcvEn[band] =
// GAEC_DB(-15-band);
GAEC_DB(-40) + (S16)((rand() *(170*80L))>>15);
GaecScC.asSndEn[band] =
GaecScA.asSndEn[band] =
// GAEC_DB(-45-band);
GAEC_DB(-50) + (S16)((rand() *(170*80L))>>15);
GaecScC.asErle[band] = GaecScA.asErle[band] =
// GAEC_DB(35-band);
GAEC_DB(-10) + (S16)((rand() *(170*20L))>>15);
GaecScC.asErl[band] = GaecScA.asErl[band] =
// GAEC_DB(5+band);
GAEC_DB(-5) + (S16)((rand() *(170*20L))>>15);
}
GaecScC.sSinEn = GaecScA.sSinEn =
// GAEC_DB(-45);
GAEC_DB(-90) + (S16)((rand() *(170*80L))>>15);
GaecScC.sErle = GaecScA.sErle =
// GAEC_DB(35);
GAEC_DB(-10) + (S16)((rand() *(170*20L))>>15);
GaecScC.sErl = GaecScA.sErl =
// GAEC_DB(5);
GAEC_DB(-5) + (S16)((rand() *(170*20L))>>15);
gaec_dtd_avrg_erle_sbC(&GaecDbC, &GaecScC);
gaec_dtd_avrg_erle_sb (&GaecDbA, &GaecScA);
sErr += compare_sc();
sErr += compare_db();
if (sErr)
{
sTrap = gaec_utl_en2log(sErr);
// sErr = 0;
}
asHstC[k] = GaecDbC.sErleAv;
}
}
#elif (DBG_IT == 401)
{
void gaec_nlp_add_noise (S16 *psSeed,S16 *psTo,S16 sLevel);
void gaec_nlp_add_noiseC(S16 *psSeed,S16 *psTo,S16 sLevel);
for (k = 0; k < GAEC_ERR_SZ; k++)
{
asRxC[k] = asRxA[k] = 0;
}
for (k = 0; k < 1401; k++)
{
S16 sLevel = rand() & 4095;
sC = sA = rand();
gaec_nlp_add_noiseC((S16 *)&sC, asRxC, sLevel);
gaec_nlp_add_noise ((S16 *)&sA, asRxA, sLevel);
// sErr += compare_sc();
// sErr += compare_db();
if (sC != sA) sErr++;
sErr += compare(asRxC, asRxA, GAEC_ERR_SZ);
if (sErr)
{
sTrap = gaec_utl_en2log(sErr);
// sErr = 0;
}
}
}
#elif (DBG_IT == 402)
{
void gaec_nlp_mix_noiseC(GAEC_tDb *pDb,GAEC_tSc *pSc, U16 uUseDtCrit);
int band;
GaecDbC.uControl =
GaecDbA.uControl =
0;
// IGAEC_CMD_NSE_RED_OFF;
GaecDbC.sNseSav =
GaecDbA.sNseSav =
rand();
for (k = 0; k < 402; k++)
{
U16 uUseDtCrit = rand() & 1;
for (band = 0; band < GAEC_BANDS+1; band++)
{
GaecDbC.asVadRxNse[band] = GaecDbA.asVadRxNse[band] =
// GAEC_DB(5+band);
GAEC_DB(-60) + (S16)((rand() *(170*40L))>>15);
GaecScC.asAttRx[band] = GaecScA.asAttRx[band] =
rand() & 4095;
}
gaec_nlp_mix_noiseC(&GaecDbC, &GaecScC, uUseDtCrit);
gaec_nlp_mix_noise (&GaecDbA, &GaecScA, uUseDtCrit);
sErr += compare_sc();
sErr += compare_db();
if (sErr)
{
sTrap = gaec_utl_en2log(sErr);
// sErr = 0;
}
}
}
#elif (DBG_IT == 403)
{
void gaec_nlp_att_rxC(GAEC_tDb *pDb,GAEC_tSc *pSc);
int band;
for (k = 0; k < 403; k++)
{
fill_rand(&GaecDbC.aasErrSav[0][0], GAEC_ERR_SZ*2*GAEC_BANDS, 8400);
// memset(GaecDbC.aasErrSav, 256, GAEC_ERR_SZ*2*GAEC_BANDS);
memcpy(GaecDbA.aasErrSav, GaecDbC.aasErrSav, GAEC_ERR_SZ*2*GAEC_BANDS);
for (band = 0; band < GAEC_BANDS+1; band++)
{
GaecScC.asAttRx[band] =
GaecScA.asAttRx[band] =
rand() & 4095;
}
gaec_nlp_att_rxC(&GaecDbC, &GaecScC);
gaec_nlp_att_rx (&GaecDbA, &GaecScA);
sErr += compare_sc();
sErr += compare_db();
if (sErr)
{
sTrap = gaec_utl_en2log(sErr);
// sErr = 0;
}
}
}
#elif (DBG_IT == 404)
{
void gaec_nr_nrgC(GAEC_tDb *pDb,GAEC_tSc *pSc);
int band;
for (k = 0; k < 404; k++)
{
for (band = 0; band < GAEC_BANDS+1; band++)
{
GaecScC.asErrEn[band] =
GaecScA.asErrEn[band] =
GAEC_DB(-70) + (S16)((rand() *(170*70L))>>15);
GaecDbC.asVadRxNse[band] =
GaecDbA.asVadRxNse[band] =
GAEC_DB(-70) + (S16)((rand() *(170*40L))>>15);
GaecDbC.aslNrPrior[band] =
GaecDbA.aslNrPrior[band] =
labs(rand() * (S32) rand()) >> 25;
}
gaec_nr_nrgC(&GaecDbC, &GaecScC);
gaec_nr_nrg (&GaecDbA, &GaecScA);
sErr += compare_sc();
sErr += compare_db();
if (sErr)
{
sTrap = gaec_utl_en2log(sErr);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -