test: add board FFT validation and VCD capture
This commit is contained in:
@@ -18,6 +18,8 @@ unsigned long CORE_CLOCKS_PER_SEC = 33000000L;
|
||||
|
||||
const float PI = 3.14159265358979323846;
|
||||
|
||||
#define FFT_MAX_ABS_ERROR_LIMIT 8
|
||||
|
||||
// 软件FFT实现 (基2 DIT-FFT 算法)
|
||||
void sw_fft(float re[], float im[], int n) {
|
||||
int i, j, k, l;
|
||||
@@ -185,5 +187,13 @@ int main(int argc, char** argv)
|
||||
}
|
||||
printf("Max Abs Error : Re=%d, Im=%d\n", max_abs_err_re, max_abs_err_im);
|
||||
|
||||
return 0;
|
||||
int passed = max_abs_err_re <= FFT_MAX_ABS_ERROR_LIMIT &&
|
||||
max_abs_err_im <= FFT_MAX_ABS_ERROR_LIMIT;
|
||||
printf("FFT_DMA_MAX_ABS_ERROR_RE=%d\n", max_abs_err_re);
|
||||
printf("FFT_DMA_MAX_ABS_ERROR_IM=%d\n", max_abs_err_im);
|
||||
printf("FFT_DMA_ERROR_LIMIT=%d\n", FFT_MAX_ABS_ERROR_LIMIT);
|
||||
printf("FFT_DMA_RESULT=%s\n", passed ? "PASS" : "FAIL");
|
||||
printf("FFT_DMA_DONE\n");
|
||||
|
||||
return passed ? 0 : 1;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user