From 2628932a40d769d8d0180ba6fed1e7b9b2718982 Mon Sep 17 00:00:00 2001 From: jaseg Date: Sun, 3 May 2020 19:53:02 +0200 Subject: minkbd: repo restructure --- .../DSP/DSP_Lib_TestSuite/Common/inc/all_tests.h | 9 - .../inc/basic_math_tests/basic_math_templates.h | 267 ------------ .../inc/basic_math_tests/basic_math_test_data.h | 46 --- .../inc/basic_math_tests/basic_math_test_group.h | 9 - .../Common/inc/basic_math_tests/basic_math_tests.h | 17 - .../complex_math_tests/complex_math_templates.h | 222 ---------- .../complex_math_tests/complex_math_test_data.h | 50 --- .../complex_math_tests/complex_math_test_group.h | 9 - .../inc/complex_math_tests/complex_math_tests.h | 14 - .../inc/controller_tests/controller_templates.h | 46 --- .../inc/controller_tests/controller_test_data.h | 33 -- .../inc/controller_tests/controller_test_group.h | 9 - .../Common/inc/controller_tests/controller_tests.h | 11 - .../inc/fast_math_tests/fast_math_templates.h | 102 ----- .../inc/fast_math_tests/fast_math_test_data.h | 29 -- .../inc/fast_math_tests/fast_math_test_group.h | 9 - .../inc/filtering_tests/filtering_templates.h | 91 ---- .../inc/filtering_tests/filtering_test_data.h | 81 ---- .../inc/filtering_tests/filtering_test_group.h | 9 - .../Common/inc/filtering_tests/filtering_tests.h | 15 - .../inc/intrinsics_tests/intrinsics_templates.h | 166 -------- .../inc/intrinsics_tests/intrinsics_test_data.h | 27 -- .../inc/intrinsics_tests/intrinsics_test_group.h | 9 - .../DSP/DSP_Lib_TestSuite/Common/inc/math_helper.h | 52 --- .../Common/inc/matrix_tests/matrix_templates.h | 370 ----------------- .../Common/inc/matrix_tests/matrix_test_data.h | 54 --- .../Common/inc/matrix_tests/matrix_test_group.h | 9 - .../Common/inc/matrix_tests/matrix_tests.h | 17 - .../inc/statistics_tests/statistics_templates.h | 157 ------- .../inc/statistics_tests/statistics_test_data.h | 44 -- .../inc/statistics_tests/statistics_test_group.h | 9 - .../Common/inc/statistics_tests/statistics_tests.h | 15 - .../Common/inc/support_tests/support_templates.h | 120 ------ .../Common/inc/support_tests/support_test_data.h | 31 -- .../Common/inc/support_tests/support_test_group.h | 9 - .../Common/inc/support_tests/support_tests.h | 11 - .../Common/inc/templates/template.h | 88 ---- .../Common/inc/templates/test_templates.h | 458 --------------------- .../inc/transform_tests/transform_templates.h | 181 -------- .../inc/transform_tests/transform_test_data.h | 48 --- .../inc/transform_tests/transform_test_group.h | 9 - .../Common/inc/transform_tests/transform_tests.h | 13 - .../DSP/DSP_Lib_TestSuite/Common/inc/type_abbrev.h | 37 -- 43 files changed, 3012 deletions(-) delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/all_tests.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/basic_math_tests/basic_math_templates.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/basic_math_tests/basic_math_test_data.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/basic_math_tests/basic_math_test_group.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/basic_math_tests/basic_math_tests.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/complex_math_tests/complex_math_templates.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/complex_math_tests/complex_math_test_data.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/complex_math_tests/complex_math_test_group.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/complex_math_tests/complex_math_tests.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/controller_tests/controller_templates.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/controller_tests/controller_test_data.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/controller_tests/controller_test_group.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/controller_tests/controller_tests.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/fast_math_tests/fast_math_templates.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/fast_math_tests/fast_math_test_data.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/fast_math_tests/fast_math_test_group.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/filtering_tests/filtering_templates.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/filtering_tests/filtering_test_data.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/filtering_tests/filtering_test_group.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/filtering_tests/filtering_tests.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/intrinsics_tests/intrinsics_templates.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/intrinsics_tests/intrinsics_test_data.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/intrinsics_tests/intrinsics_test_group.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/math_helper.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/matrix_tests/matrix_templates.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/matrix_tests/matrix_test_data.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/matrix_tests/matrix_test_group.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/matrix_tests/matrix_tests.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/statistics_tests/statistics_templates.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/statistics_tests/statistics_test_data.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/statistics_tests/statistics_test_group.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/statistics_tests/statistics_tests.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/support_tests/support_templates.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/support_tests/support_test_data.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/support_tests/support_test_group.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/support_tests/support_tests.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/templates/template.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/templates/test_templates.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/transform_tests/transform_templates.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/transform_tests/transform_test_data.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/transform_tests/transform_test_group.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/transform_tests/transform_tests.h delete mode 100644 Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/type_abbrev.h (limited to 'Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc') diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/all_tests.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/all_tests.h deleted file mode 100644 index df1e998..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/all_tests.h +++ /dev/null @@ -1,9 +0,0 @@ -#ifndef _ALL_TESTS_H_ -#define _ALL_TESTS_H_ - -/*--------------------------------------------------------------------------------*/ -/* Declare Test Groups */ -/*--------------------------------------------------------------------------------*/ -JTEST_DECLARE_GROUP(all_tests); - -#endif /* _ALL_TESTS_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/basic_math_tests/basic_math_templates.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/basic_math_tests/basic_math_templates.h deleted file mode 100644 index 958ef78..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/basic_math_tests/basic_math_templates.h +++ /dev/null @@ -1,267 +0,0 @@ -#ifndef _BASIC_MATH_TEMPLATES_H_ -#define _BASIC_MATH_TEMPLATES_H_ - -/*--------------------------------------------------------------------------------*/ -/* Includes */ -/*--------------------------------------------------------------------------------*/ -#include "test_templates.h" - -/*--------------------------------------------------------------------------------*/ -/* Group Specific Templates */ -/*--------------------------------------------------------------------------------*/ - -/** - * Compare the outputs used by basic math tests for the function under test and - * the reference function. - */ -#define BASIC_MATH_COMPARE_INTERFACE(block_size, output_type) \ - TEST_ASSERT_BUFFERS_EQUAL( \ - basic_math_output_ref.data_ptr, \ - basic_math_output_fut.data_ptr, \ - block_size * sizeof(output_type)) - -/* - * Comparison SNR thresholds for the data types used in basic_math_tests. - */ -#define BASIC_MATH_SNR_THRESHOLD_float32_t 120 -#define BASIC_MATH_SNR_THRESHOLD_q31_t 100 -#define BASIC_MATH_SNR_THRESHOLD_q15_t 75 -#define BASIC_MATH_SNR_THRESHOLD_q7_t 25 - -/** - * Compare reference and fut outputs using SNR. - * - * @note The outputs are converted to float32_t before comparison. - */ -#define BASIC_MATH_SNR_COMPARE_INTERFACE(block_size, output_type) \ - do \ - { \ - TEST_CONVERT_AND_ASSERT_SNR( \ - basic_math_output_f32_ref, \ - basic_math_output_ref.data_ptr, \ - basic_math_output_f32_fut, \ - basic_math_output_fut.data_ptr, \ - block_size, \ - output_type, \ - BASIC_MATH_SNR_THRESHOLD_##output_type \ - ); \ - } while (0) - - -/** - * Compare reference and fut outputs using SNR. - * - * @note The outputs are converted to float32_t before comparison. - */ -#define BASIC_MATH_SNR_ELT1_COMPARE_INTERFACE(block_size, output_type) \ - do \ - { \ - TEST_CONVERT_AND_ASSERT_SNR( \ - basic_math_output_f32_ref, \ - basic_math_output_ref.data_ptr, \ - basic_math_output_f32_fut, \ - basic_math_output_fut.data_ptr, \ - 1, \ - output_type, \ - BASIC_MATH_SNR_THRESHOLD_##output_type \ - ); \ - } while (0) - - - -/*--------------------------------------------------------------------------------*/ -/* Input Interfaces */ -/*--------------------------------------------------------------------------------*/ -/* - * General: - * Input interfaces provide inputs to functions inside test templates. They - * ONLY provide the inputs. The output variables should be hard coded. - * - * The input interfaces must have the following format: - * - * ARM_xxx_INPUT_INTERFACE() or - * REF_xxx_INPUT_INTERFACE() - * - * The xxx must be lowercase, and is intended to be the indentifying substring - * in the function's name. Acceptable values are 'sub' or 'add' from the - * functions arm_add_q31. - */ - -#define ARM_abs_INPUT_INTERFACE(input, block_size) \ - PAREN(input, basic_math_output_fut.data_ptr, block_size) - -#define REF_abs_INPUT_INTERFACE(input, block_size) \ - PAREN(input, basic_math_output_ref.data_ptr, block_size) - -#define ARM_add_INPUT_INTERFACE(input_a, input_b, block_size) \ - PAREN(input_a, input_b, basic_math_output_fut.data_ptr, block_size) \ - -#define REF_add_INPUT_INTERFACE(input_a, input_b, block_size) \ - PAREN(input_a, input_b, basic_math_output_ref.data_ptr, block_size) \ - -#define ARM_dot_prod_INPUT_INTERFACE(input_a, input_b, block_size) \ - PAREN(input_a, input_b, block_size, basic_math_output_fut.data_ptr) \ - -#define REF_dot_prod_INPUT_INTERFACE(input_a, input_b, block_size) \ - PAREN(input_a, input_b, block_size, basic_math_output_ref.data_ptr) \ - -#define ARM_mult_INPUT_INTERFACE(input_a, input_b, block_size) \ - PAREN(input_a, input_b, basic_math_output_fut.data_ptr, block_size) \ - -#define REF_mult_INPUT_INTERFACE(input_a, input_b, block_size) \ - PAREN(input_a, input_b, basic_math_output_ref.data_ptr, block_size) \ - -#define ARM_negate_INPUT_INTERFACE(input, block_size) \ - PAREN(input, basic_math_output_fut.data_ptr, block_size) - -#define REF_negate_INPUT_INTERFACE(input, block_size) \ - PAREN(input, basic_math_output_ref.data_ptr, block_size) - -#define ARM_offset_INPUT_INTERFACE(input, elt, block_size) \ - PAREN(input, elt, basic_math_output_fut.data_ptr, block_size) \ - -#define REF_offset_INPUT_INTERFACE(input, elt, block_size) \ - PAREN(input, elt, basic_math_output_ref.data_ptr, block_size) \ - -#define ARM_shift_INPUT_INTERFACE(input, elt, block_size) \ - PAREN(input, elt, basic_math_output_fut.data_ptr, block_size) \ - -#define REF_shift_INPUT_INTERFACE(input, elt, block_size) \ - PAREN(input, elt, basic_math_output_ref.data_ptr, block_size) \ - -#define ARM_scale_float_INPUT_INTERFACE(input, elt, block_size) \ - PAREN(input, elt, basic_math_output_fut.data_ptr, block_size) \ - -#define REF_scale_float_INPUT_INTERFACE(input, elt, block_size) \ - PAREN(input, elt, basic_math_output_ref.data_ptr, block_size) \ - -/* These two are for the fixed point functions */ -#define ARM_scale_INPUT_INTERFACE(input, elt1, elt2, block_size) \ - PAREN(input, elt1, elt2, basic_math_output_fut.data_ptr, block_size) \ - -#define REF_scale_INPUT_INTERFACE(input, elt1, elt2, block_size) \ - PAREN(input, elt1, elt2, basic_math_output_ref.data_ptr, block_size) \ - -#define ARM_sub_INPUT_INTERFACE(input_a, input_b, block_size) \ - PAREN(input_a, input_b, basic_math_output_fut.data_ptr, block_size) \ - -#define REF_sub_INPUT_INTERFACE(input_a, input_b, block_size) \ - PAREN(input_a, input_b, basic_math_output_ref.data_ptr, block_size) \ - - -/*--------------------------------------------------------------------------------*/ -/* Test Templates */ -/*--------------------------------------------------------------------------------*/ - -/** - * Specialization of #TEST_TEMPLATE_BUF1_BLK() for basic math tests. - * - * @note This macro relies on the existance of ARM_xxx_INPUT_INTERFACE and - * REF_xxx_INPUT_INTERFACEs. - */ -#define BASIC_MATH_DEFINE_TEST_TEMPLATE_BUF1_BLK(fn_name, \ - suffix, \ - input_type, \ - output_type) \ - JTEST_DEFINE_TEST(arm_##fn_name##_##suffix##_test, \ - arm_##fn_name##_##suffix) \ - { \ - TEST_TEMPLATE_BUF1_BLK( \ - basic_math_f_all, \ - basic_math_block_sizes, \ - input_type, \ - output_type, \ - arm_##fn_name##_##suffix, \ - ARM_##fn_name##_INPUT_INTERFACE, \ - ref_##fn_name##_##suffix, \ - REF_##fn_name##_INPUT_INTERFACE, \ - BASIC_MATH_COMPARE_INTERFACE); \ - } - -/** - * Specialization of #TEST_TEMPLATE_BUF2_BLK() for basic math tests. - * - * @note This macro relies on the existance of ARM_xxx_INPUT_INTERFACE and - * REF_xxx_INPUT_INTERFACEs. - */ -#define BASIC_MATH_DEFINE_TEST_TEMPLATE_BUF2_BLK(fn_name, \ - suffix, \ - input_type, \ - output_type, \ - comparison_interface) \ - JTEST_DEFINE_TEST(arm_##fn_name##_##suffix##_test, \ - arm_##fn_name##_##suffix) \ - { \ - TEST_TEMPLATE_BUF2_BLK( \ - basic_math_f_all, \ - basic_math_f_all, \ - basic_math_block_sizes, \ - input_type, \ - output_type, \ - arm_##fn_name##_##suffix, \ - ARM_##fn_name##_INPUT_INTERFACE, \ - ref_##fn_name##_##suffix, \ - REF_##fn_name##_INPUT_INTERFACE, \ - comparison_interface); \ - } - -/** - * Specialization of #TEST_TEMPLATE_BUF1_ELT1_BLK() for basic math tests. - * - * @note This macro relies on the existance of ARM_xxx_INPUT_INTERFACE and - * REF_xxx_INPUT_INTERFACEs. - */ -#define BASIC_MATH_DEFINE_TEST_TEMPLATE_BUF1_ELT1_BLK(fn_name, \ - suffix, \ - input_type, \ - elt_type, \ - output_type) \ - JTEST_DEFINE_TEST(arm_##fn_name##_##suffix##_test, \ - arm_##fn_name##_##suffix) \ - { \ - TEST_TEMPLATE_BUF1_ELT1_BLK( \ - basic_math_f_all, \ - basic_math_elts, \ - basic_math_block_sizes, \ - input_type, \ - elt_type, \ - output_type, \ - arm_##fn_name##_##suffix, \ - ARM_##fn_name##_INPUT_INTERFACE, \ - ref_##fn_name##_##suffix, \ - REF_##fn_name##_INPUT_INTERFACE, \ - BASIC_MATH_COMPARE_INTERFACE); \ - } - -/** - * Specialization of #TEST_TEMPLATE_BUF1_ELT2_BLK() for basic math tests. - * - * @note This macro relies on the existance of ARM_xxx_INPUT_INTERFACE and - * REF_xxx_INPUT_INTERFACEs. - */ -#define BASIC_MATH_DEFINE_TEST_TEMPLATE_BUF1_ELT2_BLK(fn_name, \ - suffix, \ - input_type, \ - elt1_type, \ - elt2_type, \ - output_type) \ - JTEST_DEFINE_TEST(arm_##fn_name##_##suffix##_test, \ - arm_##fn_name##_##suffix) \ - { \ - TEST_TEMPLATE_BUF1_ELT2_BLK( \ - basic_math_f_all, \ - basic_math_elts, \ - basic_math_elts2, \ - basic_math_block_sizes, \ - input_type, \ - elt1_type, \ - elt2_type, \ - output_type, \ - arm_##fn_name##_##suffix, \ - ARM_##fn_name##_INPUT_INTERFACE, \ - ref_##fn_name##_##suffix, \ - REF_##fn_name##_INPUT_INTERFACE, \ - BASIC_MATH_COMPARE_INTERFACE); \ - } - -#endif /* _BASIC_MATH_TEMPLATES_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/basic_math_tests/basic_math_test_data.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/basic_math_tests/basic_math_test_data.h deleted file mode 100644 index 2f0b239..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/basic_math_tests/basic_math_test_data.h +++ /dev/null @@ -1,46 +0,0 @@ -#ifndef ARM_BASIC_MATH_TEST_DATA_H -#define ARM_BASIC_MATH_TEST_DATA_H - -/*--------------------------------------------------------------------------------*/ -/* Includes */ -/*--------------------------------------------------------------------------------*/ - -#include "arr_desc.h" -#include "arm_math.h" - -/*--------------------------------------------------------------------------------*/ -/* Macros and Defines */ -/*--------------------------------------------------------------------------------*/ -#define BASIC_MATH_MAX_INPUT_ELEMENTS 32 -#define BASIC_MATH_BIGGEST_INPUT_TYPE float32_t - -/*--------------------------------------------------------------------------------*/ -/* Declare Variables */ -/*--------------------------------------------------------------------------------*/ - -/* Input/Output Buffers */ -ARR_DESC_DECLARE(basic_math_output_fut); -ARR_DESC_DECLARE(basic_math_output_ref); - -extern BASIC_MATH_BIGGEST_INPUT_TYPE -basic_math_output_f32_ref[BASIC_MATH_MAX_INPUT_ELEMENTS]; - -extern BASIC_MATH_BIGGEST_INPUT_TYPE -basic_math_output_f32_fut[BASIC_MATH_MAX_INPUT_ELEMENTS]; - -/* Block Sizes*/ -ARR_DESC_DECLARE(basic_math_block_sizes); - -/* Numbers */ -ARR_DESC_DECLARE(basic_math_elts); -ARR_DESC_DECLARE(basic_math_elts2); -ARR_DESC_DECLARE(basic_math_eltsf); - -/* Float Inputs */ -ARR_DESC_DECLARE(basic_math_zeros); -ARR_DESC_DECLARE(basic_math_f_2); -ARR_DESC_DECLARE(basic_math_f_15); -ARR_DESC_DECLARE(basic_math_f_32); -ARR_DESC_DECLARE(basic_math_f_all); - -#endif diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/basic_math_tests/basic_math_test_group.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/basic_math_tests/basic_math_test_group.h deleted file mode 100644 index ece92c7..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/basic_math_tests/basic_math_test_group.h +++ /dev/null @@ -1,9 +0,0 @@ -#ifndef _BASIC_MATH_TEST_GROUP_H_ -#define _BASIC_MATH_TEST_GROUP_H_ - -/*--------------------------------------------------------------------------------*/ -/* Declare Test Groups */ -/*--------------------------------------------------------------------------------*/ -JTEST_DECLARE_GROUP(basic_math_tests); - -#endif /* _BASIC_MATH_TEST_GROUP_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/basic_math_tests/basic_math_tests.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/basic_math_tests/basic_math_tests.h deleted file mode 100644 index 0550444..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/basic_math_tests/basic_math_tests.h +++ /dev/null @@ -1,17 +0,0 @@ -#ifndef _BASIC_MATH_TESTS_H_ -#define _BASIC_MATH_TESTS_H_ - -/*--------------------------------------------------------------------------------*/ -/* Test/Group Declarations */ -/*--------------------------------------------------------------------------------*/ -JTEST_DECLARE_GROUP(abs_tests); -JTEST_DECLARE_GROUP(add_tests); -JTEST_DECLARE_GROUP(dot_prod_tests); -JTEST_DECLARE_GROUP(mult_tests); -JTEST_DECLARE_GROUP(negate_tests); -JTEST_DECLARE_GROUP(offset_tests); -JTEST_DECLARE_GROUP(scale_tests); -JTEST_DECLARE_GROUP(shift_tests); -JTEST_DECLARE_GROUP(sub_tests); - -#endif /* _BASIC_MATH_TESTS_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/complex_math_tests/complex_math_templates.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/complex_math_tests/complex_math_templates.h deleted file mode 100644 index 3b7f22f..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/complex_math_tests/complex_math_templates.h +++ /dev/null @@ -1,222 +0,0 @@ -#ifndef _COMPLEX_MATH_TEMPLATES_H_ -#define _COMPLEX_MATH_TEMPLATES_H_ - -/*--------------------------------------------------------------------------------*/ -/* Includes */ -/*--------------------------------------------------------------------------------*/ -#include "test_templates.h" - -/*--------------------------------------------------------------------------------*/ -/* Group Specific Templates */ -/*--------------------------------------------------------------------------------*/ - -/** - * Compare the real outputs from the function under test and the reference - * function. - */ -#define COMPLEX_MATH_COMPARE_RE_INTERFACE(block_size, output_type) \ - TEST_ASSERT_BUFFERS_EQUAL( \ - complex_math_output_ref_a.data_ptr, \ - complex_math_output_fut_a.data_ptr, \ - block_size * sizeof(output_type)) - -/** - * Compare the real and imaginary outputs from the function under test and the - * reference function. - */ -#define COMPLEX_MATH_COMPARE_CMPLX_INTERFACE(block_size, output_type) \ - do \ - { \ - COMPLEX_MATH_COMPARE_RE_INTERFACE(block_size * 2, output_type); \ - } while (0) - - -/* - * Comparison SNR thresholds for the data types used in complex_math_tests. - */ -#define COMPLEX_MATH_SNR_THRESHOLD_float32_t 120 -#define COMPLEX_MATH_SNR_THRESHOLD_q31_t 100 -#define COMPLEX_MATH_SNR_THRESHOLD_q15_t 75 - -/** - * Compare reference and fut outputs using SNR. - * - * The output_suffix specifies which output buffers to use for the - * comparison. An output_suffix of 'a' expands to the following buffers: - * - * - complex_math_output_f32_ref_a - * - complex_math_output_f32_fut_a - * - complex_math_output_ref_a - * - complex_math_output_fut_a - * - * @note The outputs are converted to float32_t before comparison. - */ -#define COMPLEX_MATH_SNR_COMPARE_OUT_INTERFACE(block_size, \ - output_type, \ - output_suffix) \ - do \ - { \ - TEST_CONVERT_AND_ASSERT_SNR( \ - complex_math_output_f32_ref_##output_suffix, \ - complex_math_output_ref_##output_suffix.data_ptr, \ - complex_math_output_f32_fut_##output_suffix, \ - complex_math_output_fut_##output_suffix.data_ptr, \ - block_size, \ - output_type, \ - COMPLEX_MATH_SNR_THRESHOLD_##output_type \ - ); \ - } while (0) - -/** - * Specification of #COMPLEX_MATH_SNR_COMPARE_INTERFACE() for real outputs. - */ -#define COMPLEX_MATH_SNR_COMPARE_RE_INTERFACE(block_size, \ - output_type) \ - COMPLEX_MATH_SNR_COMPARE_OUT_INTERFACE(block_size, \ - output_type, \ - a) - -/** - * Specification of #COMPLEX_MATH_SNR_COMPARE_INTERFACE() for complex outputs. - */ -#define COMPLEX_MATH_SNR_COMPARE_CMPLX_INTERFACE(block_size, \ - output_type) \ - COMPLEX_MATH_SNR_COMPARE_OUT_INTERFACE(block_size * 2, \ - output_type, \ - a) - -/** - * Compare reference and fut split outputs using SNR. - * - * 'Split' refers to two separate output buffers; one for real and one for - * complex. - */ -#define COMPLEX_MATH_SNR_COMPARE_SPLIT_INTERFACE(block_size, \ - output_type) \ - do \ - { \ - COMPLEX_MATH_SNR_COMPARE_OUT_INTERFACE(block_size, \ - output_type, \ - a); \ - COMPLEX_MATH_SNR_COMPARE_OUT_INTERFACE(block_size, \ - output_type, \ - b); \ - } while (0) - - -/*--------------------------------------------------------------------------------*/ -/* Input Interfaces */ -/*--------------------------------------------------------------------------------*/ -/* - * General: - * Input interfaces provide inputs to functions inside test templates. They - * ONLY provide the inputs. The output variables should be hard coded. - * - * The input interfaces must have the following format: - * - * ARM_xxx_INPUT_INTERFACE() or - * REF_xxx_INPUT_INTERFACE() - * - * The xxx must be lowercase, and is intended to be the indentifying substring - * in the function's name. Acceptable values are 'sub' or 'add' from the - * functions arm_add_q31. - */ - -#define ARM_cmplx_conj_INPUT_INTERFACE(input, block_size) \ - PAREN(input, complex_math_output_fut_a.data_ptr, block_size) - -#define REF_cmplx_conj_INPUT_INTERFACE(input, block_size) \ - PAREN(input, complex_math_output_ref_a.data_ptr, block_size) - -#define ARM_cmplx_dot_prod_INPUT_INTERFACE(input_a, input_b, block_size) \ - PAREN(input_a, input_b, block_size, \ - complex_math_output_fut_a.data_ptr, \ - complex_math_output_fut_b.data_ptr) - -#define REF_cmplx_dot_prod_INPUT_INTERFACE(input_a, input_b, block_size) \ - PAREN(input_a, input_b, block_size, \ - complex_math_output_ref_a.data_ptr, \ - complex_math_output_ref_b.data_ptr) - -#define ARM_cmplx_mag_INPUT_INTERFACE(input, block_size) \ - PAREN(input, complex_math_output_fut_a.data_ptr, block_size) - -#define REF_cmplx_mag_INPUT_INTERFACE(input, block_size) \ - PAREN(input, complex_math_output_ref_a.data_ptr, block_size) - -#define ARM_cmplx_mag_squared_INPUT_INTERFACE(input, block_size) \ - PAREN(input, complex_math_output_fut_a.data_ptr, block_size) - -#define REF_cmplx_mag_squared_INPUT_INTERFACE(input, block_size) \ - PAREN(input, complex_math_output_ref_a.data_ptr, block_size) - -#define ARM_cmplx_mult_cmplx_INPUT_INTERFACE(input_a, input_b, block_size) \ - PAREN(input_a, input_b, complex_math_output_fut_a.data_ptr, block_size) - -#define REF_cmplx_mult_cmplx_INPUT_INTERFACE(input_a, input_b, block_size) \ - PAREN(input_a, input_b, complex_math_output_ref_a.data_ptr, block_size) - -#define ARM_cmplx_mult_real_INPUT_INTERFACE(input_a, input_b, block_size) \ - PAREN(input_a, input_b, complex_math_output_fut_a.data_ptr, block_size) - -#define REF_cmplx_mult_real_INPUT_INTERFACE(input_a, input_b, block_size) \ - PAREN(input_a, input_b, complex_math_output_ref_a.data_ptr, block_size) - -/*--------------------------------------------------------------------------------*/ -/* Test Templates */ -/*--------------------------------------------------------------------------------*/ - -/** - * Specialization of #TEST_TEMPLATE_BUF1_BLK() for complex math tests. - * - * @note This macro relies on the existance of ARM_xxx_INPUT_INTERFACE and - * REF_xxx_INPUT_INTERFACEs. - */ -#define COMPLEX_MATH_DEFINE_TEST_TEMPLATE_BUF1_BLK(fn_name, \ - suffix, \ - input_type, \ - output_type, \ - comparison_interface) \ - JTEST_DEFINE_TEST(arm_##fn_name##_##suffix##_test, \ - arm_##fn_name##_##suffix) \ - { \ - TEST_TEMPLATE_BUF1_BLK( \ - complex_math_f_all, \ - complex_math_block_sizes, \ - input_type, \ - output_type, \ - arm_##fn_name##_##suffix, \ - ARM_##fn_name##_INPUT_INTERFACE, \ - ref_##fn_name##_##suffix, \ - REF_##fn_name##_INPUT_INTERFACE, \ - comparison_interface); \ - } - -/** - * Specialization of #TEST_TEMPLATE_BUF2_BLK1() for complex math tests. - * - * @note This macro relies on the existance of ARM_xxx_INPUT_INTERFACE and - * REF_xxx_INPUT_INTERFACEs. - */ -#define COMPLEX_MATH_DEFINE_TEST_TEMPLATE_BUF2_BLK(fn_name, \ - suffix, \ - input_type, \ - output_type, \ - comparison_interface) \ - JTEST_DEFINE_TEST(arm_##fn_name##_##suffix##_test, \ - arm_##fn_name##_##suffix) \ - { \ - TEST_TEMPLATE_BUF2_BLK( \ - complex_math_f_all, \ - complex_math_f_all, \ - complex_math_block_sizes, \ - input_type, \ - output_type, \ - arm_##fn_name##_##suffix, \ - ARM_##fn_name##_INPUT_INTERFACE, \ - ref_##fn_name##_##suffix, \ - REF_##fn_name##_INPUT_INTERFACE, \ - comparison_interface); \ - } - -#endif /* _COMPLEX_MATH_TEMPLATES_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/complex_math_tests/complex_math_test_data.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/complex_math_tests/complex_math_test_data.h deleted file mode 100644 index df561b4..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/complex_math_tests/complex_math_test_data.h +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef _COMPLEX_MATH_TEST_DATA_H_ -#define _COMPLEX_MATH_TEST_DATA_H_ - -/*--------------------------------------------------------------------------------*/ -/* Includes */ -/*--------------------------------------------------------------------------------*/ - -#include "arr_desc.h" -#include "arm_math.h" - -/*--------------------------------------------------------------------------------*/ -/* Macros and Defines */ -/*--------------------------------------------------------------------------------*/ -#define COMPLEX_MATH_MAX_INPUT_ELEMENTS 32 -#define COMPLEX_MATH_BIGGEST_INPUT_TYPE float32_t - -/*--------------------------------------------------------------------------------*/ -/* Decalare Variables */ -/*--------------------------------------------------------------------------------*/ - -/* Input/Output Buffers */ -ARR_DESC_DECLARE(complex_math_output_fut_a); -ARR_DESC_DECLARE(complex_math_output_fut_b); -ARR_DESC_DECLARE(complex_math_output_ref_a); -ARR_DESC_DECLARE(complex_math_output_ref_b); - -extern COMPLEX_MATH_BIGGEST_INPUT_TYPE -complex_math_output_f32_ref_a[COMPLEX_MATH_MAX_INPUT_ELEMENTS * 2]; - -extern COMPLEX_MATH_BIGGEST_INPUT_TYPE -complex_math_output_f32_ref_b[COMPLEX_MATH_MAX_INPUT_ELEMENTS * 2]; - -extern COMPLEX_MATH_BIGGEST_INPUT_TYPE -complex_math_output_f32_fut_a[COMPLEX_MATH_MAX_INPUT_ELEMENTS * 2]; - -extern COMPLEX_MATH_BIGGEST_INPUT_TYPE -complex_math_output_f32_fut_b[COMPLEX_MATH_MAX_INPUT_ELEMENTS * 2]; - -/* Block Sizes*/ -ARR_DESC_DECLARE(complex_math_block_sizes); - -/* Float Inputs */ -ARR_DESC_DECLARE(complex_math_zeros); -ARR_DESC_DECLARE(complex_math_f_2); -ARR_DESC_DECLARE(complex_math_f_15); -ARR_DESC_DECLARE(complex_math_f_32); -ARR_DESC_DECLARE(complex_math_f_all); - - -#endif /* _COMPLEX_MATH_TEST_DATA_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/complex_math_tests/complex_math_test_group.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/complex_math_tests/complex_math_test_group.h deleted file mode 100644 index 5c2ea1f..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/complex_math_tests/complex_math_test_group.h +++ /dev/null @@ -1,9 +0,0 @@ -#ifndef _COMPLEX_MATH_TEST_GROUP_H_ -#define _COMPLEX_MATH_TEST_GROUP_H_ - -/*--------------------------------------------------------------------------------*/ -/* Declare Test Groups */ -/*--------------------------------------------------------------------------------*/ -JTEST_DECLARE_GROUP(complex_math_tests); - -#endif /* _COMPLEX_MATH_TEST_GROUP_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/complex_math_tests/complex_math_tests.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/complex_math_tests/complex_math_tests.h deleted file mode 100644 index ab4f0ae..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/complex_math_tests/complex_math_tests.h +++ /dev/null @@ -1,14 +0,0 @@ -#ifndef _COMPLEX_MATH_TESTS_H_ -#define _COMPLEX_MATH_TESTS_H_ - -/*--------------------------------------------------------------------------------*/ -/* Test/Group Declarations */ -/*--------------------------------------------------------------------------------*/ -JTEST_DECLARE_GROUP(cmplx_conj_tests); -JTEST_DECLARE_GROUP(cmplx_dot_prod_tests); -JTEST_DECLARE_GROUP(cmplx_mag_tests); -JTEST_DECLARE_GROUP(cmplx_mag_squared_tests); -JTEST_DECLARE_GROUP(cmplx_mult_cmplx_tests); -JTEST_DECLARE_GROUP(cmplx_mult_real_tests); - -#endif /* _COMPLEX_MATH_TESTS_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/controller_tests/controller_templates.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/controller_tests/controller_templates.h deleted file mode 100644 index f7956fb..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/controller_tests/controller_templates.h +++ /dev/null @@ -1,46 +0,0 @@ -#ifndef _CONTROLLER_TEMPLATES_H_ -#define _CONTROLLER_TEMPLATES_H_ - -/*--------------------------------------------------------------------------------*/ -/* Includes */ -/*--------------------------------------------------------------------------------*/ - -#include "test_templates.h" -#include /* memcpy() */ - -/*--------------------------------------------------------------------------------*/ -/* Group Specific Templates */ -/*--------------------------------------------------------------------------------*/ - -/** - * Comparison SNR thresholds for the data types used in transform_tests. - */ -#define CONTROLLER_SNR_THRESHOLD_float32_t 110 -#define CONTROLLER_SNR_THRESHOLD_q31_t 100 -#define CONTROLLER_SNR_THRESHOLD_q15_t 45 - -/** - * Compare the outputs from the function under test and the reference - * function using SNR. - */ -#define CONTROLLER_SNR_COMPARE_INTERFACE(block_size, \ - output_type) \ - do \ - { \ - TEST_CONVERT_AND_ASSERT_SNR( \ - controller_output_f32_ref, \ - (output_type *) controller_output_ref, \ - controller_output_f32_fut, \ - (output_type *) controller_output_fut, \ - block_size, \ - output_type, \ - CONTROLLER_SNR_THRESHOLD_##output_type \ - ); \ - } while (0) - - -/*--------------------------------------------------------------------------------*/ -/* TEST Templates */ -/*--------------------------------------------------------------------------------*/ - -#endif /* _CONTROLLER_TEMPLATES_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/controller_tests/controller_test_data.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/controller_tests/controller_test_data.h deleted file mode 100644 index 5aa63eb..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/controller_tests/controller_test_data.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef _CONTROLLER_TEST_DATA_H_ -#define _CONTROLLER_TEST_DATA_H_ - -/*--------------------------------------------------------------------------------*/ -/* Includes */ -/*--------------------------------------------------------------------------------*/ - -#include "arm_math.h" - -/*--------------------------------------------------------------------------------*/ -/* Macros and Defines */ -/*--------------------------------------------------------------------------------*/ - -#define CONTROLLER_MAX_LEN 1024 -#define CONTROLLER_MAX_COEFFS_LEN (12 * 3) -#define TRANFORM_BIGGEST_INPUT_TYPE float32_t - -/*--------------------------------------------------------------------------------*/ -/* Variable Declarations */ -/*--------------------------------------------------------------------------------*/ - -extern float32_t controller_output_fut[CONTROLLER_MAX_LEN]; -extern float32_t controller_output_ref[CONTROLLER_MAX_LEN]; -extern float32_t controller_output_f32_fut[CONTROLLER_MAX_LEN]; -extern float32_t controller_output_f32_ref[CONTROLLER_MAX_LEN]; -extern const float32_t controller_f32_inputs[CONTROLLER_MAX_LEN]; -extern const q31_t controller_q31_inputs[CONTROLLER_MAX_LEN]; -extern const q15_t * controller_q15_inputs; -extern const float32_t controller_f32_coeffs[CONTROLLER_MAX_COEFFS_LEN]; -extern const q31_t controller_q31_coeffs[CONTROLLER_MAX_COEFFS_LEN]; -extern const q15_t controller_q15_coeffs[CONTROLLER_MAX_COEFFS_LEN]; - -#endif /* _CONTROLLER_TEST_DATA_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/controller_tests/controller_test_group.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/controller_tests/controller_test_group.h deleted file mode 100644 index baead25..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/controller_tests/controller_test_group.h +++ /dev/null @@ -1,9 +0,0 @@ -#ifndef _CONTROLLER_TEST_GROUP_H_ -#define _CONTROLLER_TEST_GROUP_H_ - -/*--------------------------------------------------------------------------------*/ -/* Declare Test Group */ -/*--------------------------------------------------------------------------------*/ -JTEST_DECLARE_GROUP(controller_tests); - -#endif /* _CONTROLLER_TEST_GROUP_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/controller_tests/controller_tests.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/controller_tests/controller_tests.h deleted file mode 100644 index 41996a8..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/controller_tests/controller_tests.h +++ /dev/null @@ -1,11 +0,0 @@ -#ifndef _CONTROLLER_TESTS_H_ -#define _CONTROLLER_TESTS_H_ - -/*--------------------------------------------------------------------------------*/ -/* Test/Group Declarations */ -/*--------------------------------------------------------------------------------*/ -JTEST_DECLARE_GROUP(pid_reset_tests); -JTEST_DECLARE_GROUP(sin_cos_tests); -JTEST_DECLARE_GROUP(pid_tests); - -#endif /* _CONTROLLER_TESTS_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/fast_math_tests/fast_math_templates.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/fast_math_tests/fast_math_templates.h deleted file mode 100644 index 5b49512..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/fast_math_tests/fast_math_templates.h +++ /dev/null @@ -1,102 +0,0 @@ -#ifndef _FAST_MATH_TEMPLATES_H_ -#define _FAST_MATH_TEMPLATES_H_ - -/*--------------------------------------------------------------------------------*/ -/* Includes */ -/*--------------------------------------------------------------------------------*/ - -#include "test_templates.h" -#include /* memcpy() */ - -/*--------------------------------------------------------------------------------*/ -/* Group Specific Templates */ -/*--------------------------------------------------------------------------------*/ - -/** - * Comparison SNR thresholds for the data types used in transform_tests. - */ -#define FAST_MATH_SNR_THRESHOLD_float32_t 95 -#define FAST_MATH_SNR_THRESHOLD_q31_t 95 -#define FAST_MATH_SNR_THRESHOLD_q15_t 45 - -/** - * Compare the outputs from the function under test and the reference - * function using SNR. - */ -#define FAST_MATH_SNR_COMPARE_INTERFACE(block_size, \ - output_type) \ - do \ - { \ - TEST_CONVERT_AND_ASSERT_SNR( \ - fast_math_output_f32_ref, \ - (output_type *) fast_math_output_ref, \ - fast_math_output_f32_fut, \ - (output_type *) fast_math_output_fut, \ - block_size, \ - output_type, \ - FAST_MATH_SNR_THRESHOLD_##output_type \ - ); \ - } while (0) - - -/*--------------------------------------------------------------------------------*/ -/* TEST Templates */ -/*--------------------------------------------------------------------------------*/ - -#define SQRT_TEST_TEMPLATE_ELT1(suffix) \ - \ - JTEST_DEFINE_TEST(arm_sqrt_##suffix##_test, arm_sqrt_##suffix) \ - { \ - uint32_t i; \ - \ - JTEST_COUNT_CYCLES( \ - for(i=0;i /* memcpy() */ - -/*--------------------------------------------------------------------------------*/ -/* Group Specific Templates */ -/*--------------------------------------------------------------------------------*/ - -/** -* Comparison SNR thresholds for the data types used in transform_tests. -*/ -#define INTRINSICS_SNR_THRESHOLD_q63_t 120 -#define INTRINSICS_SNR_THRESHOLD_q31_t 95 - -/** -* Compare the outputs from the function under test and the reference -* function using SNR. -*/ -#define INTRINSICS_SNR_COMPARE_INTERFACE(block_size, \ - output_type) \ - do \ - { \ - TEST_CONVERT_AND_ASSERT_SNR( \ - intrinsics_output_f32_ref, \ - (output_type##_t *) intrinsics_output_ref, \ - intrinsics_output_f32_fut, \ - (output_type##_t *) intrinsics_output_fut, \ - block_size, \ - output_type, \ - INTRINSICS_SNR_THRESHOLD_##output_type##_t \ - ); \ - } while (0) - - -/*--------------------------------------------------------------------------------*/ -/* TEST Templates */ -/*--------------------------------------------------------------------------------*/ - -#define INTRINSICS_TEST_TEMPLATE_ELT1(functionName, dataType) \ - \ - JTEST_DEFINE_TEST(functionName##_test, functionName) \ - { \ - uint32_t i; \ - \ - JTEST_COUNT_CYCLES( \ - for(i=0;ipData, \ - ((output_type *) &matrix_output_fut)->pData, \ - ((output_type *) &matrix_output_fut)->numRows * \ - ((output_type *) &matrix_output_ref)->numCols * \ - sizeof(output_content_type)) - -/** - * Comparison SNR thresholds for the data types used in matrix_tests. - */ -#define MATRIX_SNR_THRESHOLD 120 - -/** - * Compare the outputs from the function under test and the reference - * function using SNR. - */ -#define MATRIX_SNR_COMPARE_INTERFACE(output_type, output_content_type) \ - do \ - { \ - TEST_CONVERT_AND_ASSERT_SNR( \ - (float32_t *)matrix_output_f32_ref, \ - ((output_type *) &matrix_output_ref)->pData, \ - (float32_t *)matrix_output_f32_fut, \ - ((output_type *) &matrix_output_ref)->pData, \ - ((output_type *) &matrix_output_fut)->numRows * \ - ((output_type *) &matrix_output_ref)->numCols, \ - output_content_type, \ - MATRIX_SNR_THRESHOLD \ - ); \ - } while (0) - -/** - * Compare the outputs from the function under test and the reference - * function using SNR. This is special for float64_t - */ -#define MATRIX_DBL_SNR_COMPARE_INTERFACE(output_type) \ - do \ - { \ - TEST_ASSERT_DBL_SNR( \ - (float64_t *)matrix_output_f32_ref, \ - (float64_t *)matrix_output_f32_fut, \ - ((output_type *) &matrix_output_fut)->numRows * \ - ((output_type *) &matrix_output_ref)->numCols, \ - MATRIX_SNR_THRESHOLD \ - ); \ - } while (0) - -/*--------------------------------------------------------------------------------*/ -/* Input Interfaces */ -/*--------------------------------------------------------------------------------*/ -/* - * General: - * Input interfaces provide inputs to functions inside test templates. They - * ONLY provide the inputs. The output variables should be hard coded. - * - * The input interfaces must have the following format: - * - * ARM_xxx_INPUT_INTERFACE() or - * REF_xxx_INPUT_INTERFACE() - * - * The xxx must be lowercase, and is intended to be the indentifying substring - * in the function's name. Acceptable values are 'sub' or 'add' from the - * functions arm_add_q31. - */ - -#define ARM_mat_add_INPUT_INTERFACE(input_a_ptr, input_b_ptr) \ - PAREN(input_a_ptr, input_b_ptr, (void *) &matrix_output_fut) - -#define REF_mat_add_INPUT_INTERFACE(input_a_ptr, input_b_ptr) \ - PAREN(input_a_ptr, input_b_ptr, (void *) &matrix_output_ref) - -#define ARM_mat_cmplx_mult_INPUT_INTERFACE(input_a_ptr, input_b_ptr) \ - PAREN(input_a_ptr, input_b_ptr, (void *) &matrix_output_fut) - -#define REF_mat_cmplx_mult_INPUT_INTERFACE(input_a_ptr, input_b_ptr) \ - PAREN(input_a_ptr, input_b_ptr, (void *) &matrix_output_ref) - -#define ARM_mat_inverse_INPUT_INTERFACE(input_ptr) \ - PAREN(input_ptr, (void *) &matrix_output_fut) - -#define REF_mat_inverse_INPUT_INTERFACE(input_ptr) \ - PAREN(input_ptr, (void *) &matrix_output_ref) - -#define ARM_mat_mult_INPUT_INTERFACE(input_a_ptr, input_b_ptr) \ - PAREN(input_a_ptr, input_b_ptr, (void *) &matrix_output_fut) - -#define REF_mat_mult_INPUT_INTERFACE(input_a_ptr, input_b_ptr) \ - PAREN(input_a_ptr, input_b_ptr, (void *) &matrix_output_ref) - -#define ARM_mat_mult_fast_INPUT_INTERFACE(input_a_ptr, input_b_ptr) \ - PAREN(input_a_ptr, input_b_ptr, (void *) &matrix_output_fut) - -#define REF_mat_mult_fast_INPUT_INTERFACE(input_a_ptr, input_b_ptr) \ - PAREN(input_a_ptr, input_b_ptr, (void *) &matrix_output_ref) - -#define ARM_mat_sub_INPUT_INTERFACE(input_a_ptr, input_b_ptr) \ - PAREN(input_a_ptr, input_b_ptr, (void *) &matrix_output_fut) - -#define REF_mat_sub_INPUT_INTERFACE(input_a_ptr, input_b_ptr) \ - PAREN(input_a_ptr, input_b_ptr, (void *) &matrix_output_ref) - -#define ARM_mat_trans_INPUT_INTERFACE(input_ptr) \ - PAREN(input_ptr, (void *) &matrix_output_fut) - -#define REF_mat_trans_INPUT_INTERFACE(input_ptr) \ - PAREN(input_ptr, (void *) &matrix_output_ref) - -/*--------------------------------------------------------------------------------*/ -/* Dimension Validation Interfaces */ -/*--------------------------------------------------------------------------------*/ - -#define MATRIX_TEST_VALID_ADDITIVE_DIMENSIONS(input_type, \ - matrix_a_ptr, \ - matrix_b_ptr) \ - ((((input_type) (matrix_a_ptr))->numRows == \ - ((input_type) (matrix_b_ptr))->numRows) && \ - (((input_type) (matrix_a_ptr))->numCols == \ - ((input_type) (matrix_b_ptr))->numCols)) - -#define MATRIX_TEST_VALID_MULTIPLICATIVE_DIMENSIONS(input_type, \ - matrix_a_ptr, \ - matrix_b_ptr) \ - (((input_type) (matrix_a_ptr))->numCols == \ - ((input_type) (matrix_b_ptr))->numRows) - -#define MATRIX_TEST_VALID_SQUARE_DIMENSIONS(input_type, \ - matrix_ptr) \ - (((input_type)(matrix_ptr))->numRows == \ - ((input_type)(matrix_ptr))->numCols) - -#define MATRIX_TEST_VALID_DIMENSIONS_ALWAYS(input_type, \ - matrix_ptr) \ - (1 == 1) \ - -/*--------------------------------------------------------------------------------*/ -/* Output Configuration Interfaces */ -/*--------------------------------------------------------------------------------*/ -/* The matrix tests assume the output matrix is always the correct size. These - * interfaces size the properly size the output matrices according to the input - * matrices and the operation at hand.*/ - -#define MATRIX_TEST_CONFIG_ADDITIVE_OUTPUT(input_type, \ - matrix_a_ptr, \ - matrix_b_ptr) \ - do \ - { \ - ((input_type) &matrix_output_fut)->numRows = \ - ((input_type)(matrix_a_ptr))->numRows; \ - ((input_type) &matrix_output_fut)->numCols = \ - ((input_type)(matrix_a_ptr))->numCols; \ - ((input_type) &matrix_output_ref)->numRows = \ - ((input_type)(matrix_a_ptr))->numRows; \ - ((input_type) &matrix_output_ref)->numCols = \ - ((input_type)(matrix_a_ptr))->numCols; \ - } while (0) - -#define MATRIX_TEST_CONFIG_MULTIPLICATIVE_OUTPUT(input_type, \ - matrix_a_ptr, \ - matrix_b_ptr) \ - do \ - { \ - ((input_type) &matrix_output_fut)->numRows = \ - ((input_type)(matrix_a_ptr))->numRows; \ - ((input_type) &matrix_output_fut)->numCols = \ - ((input_type)(matrix_b_ptr))->numCols; \ - ((input_type) &matrix_output_ref)->numRows = \ - ((input_type)(matrix_a_ptr))->numRows; \ - ((input_type) &matrix_output_ref)->numCols = \ - ((input_type)(matrix_b_ptr))->numCols; \ - } while (0) - -#define MATRIX_TEST_CONFIG_SAMESIZE_OUTPUT(input_type, \ - matrix_ptr) \ - do \ - { \ - ((input_type) &matrix_output_fut)->numRows = \ - ((input_type)(matrix_ptr))->numRows; \ - ((input_type) &matrix_output_fut)->numCols = \ - ((input_type)(matrix_ptr))->numCols; \ - ((input_type) &matrix_output_ref)->numRows = \ - ((input_type)(matrix_ptr))->numRows; \ - ((input_type) &matrix_output_ref)->numCols = \ - ((input_type)(matrix_ptr))->numCols; \ - } while (0) - -#define MATRIX_TEST_CONFIG_TRANSPOSE_OUTPUT(input_type, \ - matrix_ptr) \ - do \ - { \ - ((input_type) &matrix_output_fut)->numRows = \ - ((input_type)(matrix_ptr))->numCols; \ - ((input_type) &matrix_output_fut)->numCols = \ - ((input_type)(matrix_ptr))->numRows; \ - ((input_type) &matrix_output_ref)->numRows = \ - ((input_type)(matrix_ptr))->numCols; \ - ((input_type) &matrix_output_ref)->numCols = \ - ((input_type)(matrix_ptr))->numRows; \ - } while (0) - -/*--------------------------------------------------------------------------------*/ -/* TEST Templates */ -/*--------------------------------------------------------------------------------*/ - -#define MATRIX_TEST_TEMPLATE_ELT1(arr_desc_inputs, \ - input_type, \ - output_type, output_content_type, \ - fut, fut_arg_interface, \ - ref, ref_arg_interface, \ - output_config_interface, \ - dim_validation_interface, \ - compare_interface) \ - do \ - { \ - TEMPLATE_DO_ARR_DESC( \ - input_idx, input_type, input, arr_desc_inputs \ - , \ - JTEST_DUMP_STRF("Matrix Dimensions: %dx%d\n", \ - (int)input->numRows, \ - (int)input->numCols); \ - \ - if (dim_validation_interface(input_type, \ - input)) { \ - output_config_interface(input_type, \ - input); \ - TEST_CALL_FUT_AND_REF( \ - fut, fut_arg_interface(input), \ - ref, ref_arg_interface(input)); \ - compare_interface(output_type, \ - output_content_type); \ - } else { \ - arm_status matrix_test_retval; \ - TEST_CALL_FUT( \ - matrix_test_retval = fut, \ - fut_arg_interface(input)); \ - \ - /* If dimensions are known bad, the fut should */ \ - /* detect it. */ \ - if ( matrix_test_retval != ARM_MATH_SIZE_MISMATCH) { \ - return JTEST_TEST_FAILED; \ - } \ - }); \ - return JTEST_TEST_PASSED; \ - } while (0) - - -#define MATRIX_TEST_TEMPLATE_ELT2(arr_desc_inputs_a, \ - arr_desc_inputs_b, \ - input_type, \ - output_type, output_content_type, \ - fut, fut_arg_interface, \ - ref, ref_arg_interface, \ - output_config_interface, \ - dim_validation_interface, \ - compare_interface) \ - do \ - { \ - TEMPLATE_DO_ARR_DESC( \ - input_a_idx, input_type, input_a, arr_desc_inputs_a \ - , \ - input_type input_b = ARR_DESC_ELT( \ - input_type, input_a_idx, \ - &(arr_desc_inputs_b)); \ - \ - JTEST_DUMP_STRF("Matrix Dimensions: A %dx%d B %dx%d\n", \ - (int)input_a->numRows, \ - (int)input_a->numCols, \ - (int)input_b->numRows, \ - (int)input_b->numCols); \ - \ - if (dim_validation_interface(input_type, \ - input_a, \ - input_b)) { \ - \ - output_config_interface(input_type, \ - input_a, \ - input_b); \ - \ - TEST_CALL_FUT_AND_REF( \ - fut, fut_arg_interface(input_a, input_b), \ - ref, ref_arg_interface(input_a, input_b)); \ - \ - compare_interface(output_type, output_content_type); \ - \ - } else { \ - arm_status matrix_test_retval; \ - TEST_CALL_FUT( \ - matrix_test_retval = fut, fut_arg_interface(input_a, input_b)); \ - \ - /* If dimensions are known bad, the fut should */ \ - /* detect it. */ \ - if ( matrix_test_retval != ARM_MATH_SIZE_MISMATCH) { \ - return JTEST_TEST_FAILED; \ - } \ - }); \ - return JTEST_TEST_PASSED; \ - } while (0) - -/** - * Specialization of #MATRIX_TEST_TEMPLATE_ELT2() for matrix tests. - * - * @note This macro relies on the existance of ARM_xxx_INPUT_INTERFACE and - * REF_xxx_INPUT_INTERFACEs. - */ -#define MATRIX_DEFINE_TEST_TEMPLATE_ELT2(fn_name, suffix, \ - output_config_interface, \ - dim_validation_interface, \ - comparison_interface) \ - JTEST_DEFINE_TEST(arm_##fn_name##_##suffix##_test, \ - arm_##fn_name##_##suffix) \ - { \ - MATRIX_TEST_TEMPLATE_ELT2( \ - matrix_##suffix##_a_inputs, \ - matrix_##suffix##_b_inputs, \ - arm_matrix_instance_##suffix * , \ - arm_matrix_instance_##suffix, \ - TYPE_FROM_ABBREV(suffix), \ - arm_##fn_name##_##suffix, \ - ARM_##fn_name##_INPUT_INTERFACE, \ - ref_##fn_name##_##suffix, \ - REF_##fn_name##_INPUT_INTERFACE, \ - output_config_interface, \ - dim_validation_interface, \ - comparison_interface); \ - } \ - -/** - * Specialization of #MATRIX_TEST_TEMPLATE_ELT1() for matrix tests. - * - * @note This macro relies on the existance of ARM_xxx_INPUT_INTERFACE and - * REF_xxx_INPUT_INTERFACEs. - */ -#define MATRIX_DEFINE_TEST_TEMPLATE_ELT1(fn_name, suffix, \ - output_config_interface, \ - dim_validation_interface) \ - JTEST_DEFINE_TEST(arm_##fn_name##_##suffix##_test, \ - arm_##fn_name##_##suffix) \ - { \ - MATRIX_TEST_TEMPLATE_ELT1( \ - matrix_##suffix##_a_inputs, \ - arm_matrix_instance_##suffix * , \ - arm_matrix_instance_##suffix, \ - TYPE_FROM_ABBREV(suffix), \ - arm_##fn_name##_##suffix, \ - ARM_##fn_name##_INPUT_INTERFACE, \ - ref_##fn_name##_##suffix, \ - REF_##fn_name##_INPUT_INTERFACE, \ - output_config_interface, \ - dim_validation_interface, \ - MATRIX_COMPARE_INTERFACE); \ - } \ - - -#endif /* _MATRIX_TEMPLATES_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/matrix_tests/matrix_test_data.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/matrix_tests/matrix_test_data.h deleted file mode 100644 index 5940ae3..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/matrix_tests/matrix_test_data.h +++ /dev/null @@ -1,54 +0,0 @@ -#ifndef _MATRIX_TEST_DATA_H_ -#define _MATRIX_TEST_DATA_H_ - -/*--------------------------------------------------------------------------------*/ -/* Includes */ -/*--------------------------------------------------------------------------------*/ - -#include "arr_desc.h" -#include "arm_math.h" /* float32_t */ - -/*--------------------------------------------------------------------------------*/ -/* Macros and Defines */ -/*--------------------------------------------------------------------------------*/ -#define MATRIX_TEST_MAX_ROWS 4 -#define MATRIX_TEST_MAX_COLS 4 -#define MATRIX_TEST_BIGGEST_INPUT_TYPE float64_t -#define MATRIX_TEST_MAX_ELTS (MATRIX_TEST_MAX_ROWS * MATRIX_TEST_MAX_COLS) -#define MATRIX_MAX_COEFFS_LEN 16 -#define MATRIX_MAX_SHIFTS_LEN 5 - -/** - * Declare the matrix inputs defined by MATRIX_DEFINE_INPUTS. - */ -#define MATRIX_DECLARE_INPUTS(suffix) \ - ARR_DESC_DECLARE(matrix_##suffix##_a_inputs); \ - ARR_DESC_DECLARE(matrix_##suffix##_b_inputs); \ - ARR_DESC_DECLARE(matrix_##suffix##_invertible_inputs) - - -/*--------------------------------------------------------------------------------*/ -/* Declare Variables */ -/*--------------------------------------------------------------------------------*/ - -/* Input/Output Buffers */ -extern arm_matrix_instance_f32 matrix_output_fut; -extern arm_matrix_instance_f32 matrix_output_ref; -extern arm_matrix_instance_f64 matrix_output_fut64; -extern arm_matrix_instance_f64 matrix_output_ref64; -extern MATRIX_TEST_BIGGEST_INPUT_TYPE matrix_output_f32_fut[MATRIX_TEST_MAX_ELTS]; -extern MATRIX_TEST_BIGGEST_INPUT_TYPE matrix_output_f32_ref[MATRIX_TEST_MAX_ELTS]; -extern MATRIX_TEST_BIGGEST_INPUT_TYPE matrix_output_scratch[MATRIX_TEST_MAX_ELTS]; - -/* Matrix Inputs */ -MATRIX_DECLARE_INPUTS(f64); -MATRIX_DECLARE_INPUTS(f32); -MATRIX_DECLARE_INPUTS(q31); -MATRIX_DECLARE_INPUTS(q15); - -extern const float32_t matrix_f32_scale_values[MATRIX_MAX_COEFFS_LEN]; -extern const q31_t matrix_q31_scale_values[MATRIX_MAX_COEFFS_LEN]; -extern const q15_t matrix_q15_scale_values[MATRIX_MAX_COEFFS_LEN]; -extern const int32_t matrix_shift_values[MATRIX_MAX_SHIFTS_LEN]; - -#endif /* _MATRIX_TEST_DATA_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/matrix_tests/matrix_test_group.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/matrix_tests/matrix_test_group.h deleted file mode 100644 index 017b125..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/matrix_tests/matrix_test_group.h +++ /dev/null @@ -1,9 +0,0 @@ -#ifndef _MATRIX_TEST_GROUP_H_ -#define _MATRIX_TEST_GROUP_H_ - -/*--------------------------------------------------------------------------------*/ -/* Declare Test Groups */ -/*--------------------------------------------------------------------------------*/ -JTEST_DECLARE_GROUP(matrix_tests); - -#endif /* _MATRIX_TEST_GROUP_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/matrix_tests/matrix_tests.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/matrix_tests/matrix_tests.h deleted file mode 100644 index 9947c02..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/matrix_tests/matrix_tests.h +++ /dev/null @@ -1,17 +0,0 @@ -#ifndef _MATRIX_TESTS_H_ -#define _MATRIX_TESTS_H_ - -/*--------------------------------------------------------------------------------*/ -/* Test/Group Declarations */ -/*--------------------------------------------------------------------------------*/ -JTEST_DECLARE_GROUP(mat_add_tests); -JTEST_DECLARE_GROUP(mat_cmplx_mult_tests); -JTEST_DECLARE_GROUP(mat_init_tests); -JTEST_DECLARE_GROUP(mat_inverse_tests); -JTEST_DECLARE_GROUP(mat_mult_tests); -JTEST_DECLARE_GROUP(mat_mult_fast_tests); -JTEST_DECLARE_GROUP(mat_sub_tests); -JTEST_DECLARE_GROUP(mat_trans_tests); -JTEST_DECLARE_GROUP(mat_scale_tests); - -#endif /* _MATRIX_TESTS_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/statistics_tests/statistics_templates.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/statistics_tests/statistics_templates.h deleted file mode 100644 index ddca35c..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/statistics_tests/statistics_templates.h +++ /dev/null @@ -1,157 +0,0 @@ -#ifndef _STATISTICS_TEMPLATES_H_ -#define _STATISTICS_TEMPLATES_H_ - -/*--------------------------------------------------------------------------------*/ -/* Includes */ -/*--------------------------------------------------------------------------------*/ - -#include "test_templates.h" - -/*--------------------------------------------------------------------------------*/ -/* Group Specific Templates */ -/*--------------------------------------------------------------------------------*/ - -/** - * Compare the outputs from the function under test and the reference function. - */ -#define STATISTICS_COMPARE_INTERFACE(block_size, \ - output_type) \ - do \ - { \ - TEST_ASSERT_BUFFERS_EQUAL( \ - statistics_output_ref.data_ptr, \ - statistics_output_fut.data_ptr, \ - 1 * sizeof(output_type) /* All fns return one value*/ \ - ); \ - TEST_ASSERT_EQUAL( \ - statistics_idx_fut, \ - statistics_idx_ref); \ - } while (0) \ - -/* - * Comparison SNR thresholds for the data types used in statistics_tests. - */ -#define STATISTICS_SNR_THRESHOLD_float32_t 120 -#define STATISTICS_SNR_THRESHOLD_q31_t 100 -#define STATISTICS_SNR_THRESHOLD_q15_t 60 -#define STATISTICS_SNR_THRESHOLD_q7_t 30 - -/** - * Compare reference and fut outputs using SNR. - * - * @note The outputs are converted to float32_t before comparison. - */ -#define STATISTICS_SNR_COMPARE_INTERFACE(block_size, \ - output_type) \ - do \ - { \ - TEST_CONVERT_AND_ASSERT_SNR( \ - statistics_output_f32_ref, \ - statistics_output_ref.data_ptr, \ - statistics_output_f32_fut, \ - statistics_output_fut.data_ptr, \ - 1, /* All fns return one element*/ \ - output_type, \ - STATISTICS_SNR_THRESHOLD_##output_type \ - ); \ - } while (0) - - - -/*--------------------------------------------------------------------------------*/ -/* Input Interfaces */ -/*--------------------------------------------------------------------------------*/ -/* - * General: - * Input interfaces provide inputs to functions inside test templates. They - * ONLY provide the inputs. The output variables should be hard coded. - * - * The input interfaces must have the following format: - * - * ARM_xxx_INPUT_INTERFACE() or - * REF_xxx_INPUT_INTERFACE() - * - * The xxx must be lowercase, and is intended to be the indentifying substring - * in the function's name. Acceptable values are 'sub' or 'add' from the - * functions arm_add_q31. - */ - -#define ARM_max_INPUT_INTERFACE(input, block_size) \ - PAREN(input, block_size, \ - statistics_output_fut.data_ptr, &statistics_idx_fut) - -#define REF_max_INPUT_INTERFACE(input, block_size) \ - PAREN(input, block_size, \ - statistics_output_ref.data_ptr, &statistics_idx_ref) - -#define ARM_mean_INPUT_INTERFACE(input, block_size) \ - PAREN(input, block_size, statistics_output_fut.data_ptr) - -#define REF_mean_INPUT_INTERFACE(input, block_size) \ - PAREN(input, block_size, statistics_output_ref.data_ptr) - -#define ARM_min_INPUT_INTERFACE(input, block_size) \ - PAREN(input, block_size, \ - statistics_output_fut.data_ptr, &statistics_idx_fut) - -#define REF_min_INPUT_INTERFACE(input, block_size) \ - PAREN(input, block_size, \ - statistics_output_ref.data_ptr, &statistics_idx_ref) - -#define ARM_power_INPUT_INTERFACE(input, block_size) \ - PAREN(input, block_size, statistics_output_fut.data_ptr) - -#define REF_power_INPUT_INTERFACE(input, block_size) \ - PAREN(input, block_size, statistics_output_ref.data_ptr) - -#define ARM_rms_INPUT_INTERFACE(input, block_size) \ - PAREN(input, block_size, statistics_output_fut.data_ptr) - -#define REF_rms_INPUT_INTERFACE(input, block_size) \ - PAREN(input, block_size, statistics_output_ref.data_ptr) - -#define ARM_std_INPUT_INTERFACE(input, block_size) \ - PAREN(input, block_size, statistics_output_fut.data_ptr) - -#define REF_std_INPUT_INTERFACE(input, block_size) \ - PAREN(input, block_size, statistics_output_ref.data_ptr) - -#define ARM_var_INPUT_INTERFACE(input, block_size) \ - PAREN(input, block_size, statistics_output_fut.data_ptr) - -#define REF_var_INPUT_INTERFACE(input, block_size) \ - PAREN(input, block_size, statistics_output_ref.data_ptr) - - -/*--------------------------------------------------------------------------------*/ -/* Test Templates */ -/*--------------------------------------------------------------------------------*/ - -/** - * Specialization of #TEST_TEMPLATE_BUF1_BLK() for statistics tests. - * - * @note This macro relies on the existance of ARM_xxx_INPUT_INTERFACE and - * REF_xxx_INPUT_INTERFACEs. - */ -#define STATISTICS_DEFINE_TEST_TEMPLATE_BUF1_BLK(fn_name, \ - suffix, \ - input_type, \ - output_type, \ - comparison_interface) \ - JTEST_DEFINE_TEST(arm_##fn_name##_##suffix##_test, \ - arm_##fn_name##_##suffix) \ - { \ - TEST_TEMPLATE_BUF1_BLK( \ - statistics_f_all, \ - statistics_block_sizes, \ - input_type, \ - output_type, \ - arm_##fn_name##_##suffix, \ - ARM_##fn_name##_INPUT_INTERFACE, \ - ref_##fn_name##_##suffix, \ - REF_##fn_name##_INPUT_INTERFACE, \ - comparison_interface); \ - } - - -#endif /* _STATISTICS_TEMPLATES_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/statistics_tests/statistics_test_data.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/statistics_tests/statistics_test_data.h deleted file mode 100644 index 3e1ee09..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/statistics_tests/statistics_test_data.h +++ /dev/null @@ -1,44 +0,0 @@ -#ifndef _STATISTICS_TEST_DATA_H_ -#define _STATISTICS_TEST_DATA_H_ - -/*--------------------------------------------------------------------------------*/ -/* Includes */ -/*--------------------------------------------------------------------------------*/ - -#include "arr_desc.h" -#include "arm_math.h" - -/*--------------------------------------------------------------------------------*/ -/* Macros and Defines */ -/*--------------------------------------------------------------------------------*/ -#define STATISTICS_MAX_INPUT_ELEMENTS 32 -#define STATISTICS_BIGGEST_INPUT_TYPE float32_t - -/*--------------------------------------------------------------------------------*/ -/* Declare Variables */ -/*--------------------------------------------------------------------------------*/ - -/* Input/Output Buffers */ -ARR_DESC_DECLARE(statistics_output_fut); -ARR_DESC_DECLARE(statistics_output_ref); -extern uint32_t statistics_idx_fut; -extern uint32_t statistics_idx_ref; - -extern STATISTICS_BIGGEST_INPUT_TYPE -statistics_output_f32_ref[STATISTICS_MAX_INPUT_ELEMENTS]; - -extern STATISTICS_BIGGEST_INPUT_TYPE -statistics_output_f32_fut[STATISTICS_MAX_INPUT_ELEMENTS]; - - -/* Block Sizes */ -ARR_DESC_DECLARE(statistics_block_sizes); - -/* Float Inputs */ -ARR_DESC_DECLARE(statistics_zeros); -ARR_DESC_DECLARE(statistics_f_2); -ARR_DESC_DECLARE(statistics_f_15); -ARR_DESC_DECLARE(statistics_f_32); -ARR_DESC_DECLARE(statistics_f_all); - -#endif /* _STATISTICS_TEST_DATA_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/statistics_tests/statistics_test_group.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/statistics_tests/statistics_test_group.h deleted file mode 100644 index d1446ed..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/statistics_tests/statistics_test_group.h +++ /dev/null @@ -1,9 +0,0 @@ -#ifndef _STATISTICS_TEST_GROUP_H_ -#define _STATISTICS_TEST_GROUP_H_ - -/*--------------------------------------------------------------------------------*/ -/* Declare Test Groups */ -/*--------------------------------------------------------------------------------*/ -JTEST_DECLARE_GROUP(statistics_tests); - -#endif /* _STATISTICS_TEST_GROUP_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/statistics_tests/statistics_tests.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/statistics_tests/statistics_tests.h deleted file mode 100644 index 20df03e..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/statistics_tests/statistics_tests.h +++ /dev/null @@ -1,15 +0,0 @@ -#ifndef _STATISTICS_TESTS_H_ -#define _STATISTICS_TESTS_H_ - -/*--------------------------------------------------------------------------------*/ -/* Test/Group Declarations */ -/*--------------------------------------------------------------------------------*/ -JTEST_DECLARE_GROUP(max_tests); -JTEST_DECLARE_GROUP(mean_tests); -JTEST_DECLARE_GROUP(min_tests); -JTEST_DECLARE_GROUP(power_tests); -JTEST_DECLARE_GROUP(rms_tests); -JTEST_DECLARE_GROUP(std_tests); -JTEST_DECLARE_GROUP(var_tests); - -#endif /* _STATISTICS_TESTS_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/support_tests/support_templates.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/support_tests/support_templates.h deleted file mode 100644 index bc94791..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/support_tests/support_templates.h +++ /dev/null @@ -1,120 +0,0 @@ -#ifndef _SUPPORT_TEMPLATES_H_ -#define _SUPPORT_TEMPLATES_H_ - -/*--------------------------------------------------------------------------------*/ -/* Includes */ -/*--------------------------------------------------------------------------------*/ - -#include "test_templates.h" - -/*--------------------------------------------------------------------------------*/ -/* Group Specific Templates */ -/*--------------------------------------------------------------------------------*/ - -/** - * Compare the outputs from the function under test and the reference function. - */ -#define SUPPORT_COMPARE_INTERFACE(block_size, \ - output_type) \ - do \ - { \ - TEST_ASSERT_BUFFERS_EQUAL( \ - support_output_ref.data_ptr, \ - support_output_fut.data_ptr, \ - block_size * sizeof(output_type)); \ - } while (0) \ - -/*--------------------------------------------------------------------------------*/ -/* Input Interfaces */ -/*--------------------------------------------------------------------------------*/ -/* - * General: - * Input interfaces provide inputs to functions inside test templates. They - * ONLY provide the inputs. The output variables should be hard coded. - * - * The input interfaces must have the following format: - * - * ARM_xxx_INPUT_INTERFACE() or - * REF_xxx_INPUT_INTERFACE() - * - * The xxx must be lowercase, and is intended to be the indentifying substring - * in the function's name. Acceptable values are 'sub' or 'add' from the - * functions arm_add_q31. - */ - -#define ARM_copy_INPUT_INTERFACE(input, block_size) \ - PAREN(input, support_output_fut.data_ptr, block_size) - -#define REF_copy_INPUT_INTERFACE(input, block_size) \ - PAREN(input, support_output_ref.data_ptr, block_size) - -#define ARM_fill_INPUT_INTERFACE(elt, block_size) \ - PAREN(elt, support_output_fut.data_ptr, block_size) - -#define REF_fill_INPUT_INTERFACE(elt, block_size) \ - PAREN(elt, support_output_ref.data_ptr, block_size) - -#define ARM_x_to_y_INPUT_INTERFACE(input, block_size) \ - PAREN(input, support_output_fut.data_ptr, block_size) - -#define REF_x_to_y_INPUT_INTERFACE(input, block_size) \ - PAREN(input, support_output_ref.data_ptr, block_size) - -/*--------------------------------------------------------------------------------*/ -/* Test Templates */ -/*--------------------------------------------------------------------------------*/ - - -/** - * Specialization of #TEST_TEMPLATE_BUF1_BLK() for support tests. - * - * @note This macro relies on the existance of ARM_xxx_INPUT_INTERFACE and - * REF_xxx_INPUT_INTERFACEs. - */ -#define SUPPORT_DEFINE_TEST_TEMPLATE_BUF1_BLK(fn_name, \ - suffix, \ - input_type, \ - output_type, \ - comparison_interface) \ - JTEST_DEFINE_TEST(arm_##fn_name##_##suffix##_test, \ - arm_##fn_name##_##suffix) \ - { \ - TEST_TEMPLATE_BUF1_BLK( \ - support_f_all, \ - support_block_sizes, \ - input_type, \ - output_type, \ - arm_##fn_name##_##suffix, \ - ARM_##fn_name##_INPUT_INTERFACE, \ - ref_##fn_name##_##suffix, \ - REF_##fn_name##_INPUT_INTERFACE, \ - comparison_interface); \ - } - -/** - * Specialization of #TEST_TEMPLATE_ELT1_BLK() for support tests. - * - * @note This macro relies on the existance of ARM_xxx_INPUT_INTERFACE and - * REF_xxx_INPUT_INTERFACEs. - */ -#define SUPPORT_DEFINE_TEST_TEMPLATE_ELT1_BLK(fn_name, \ - suffix, \ - elt_type, \ - output_type, \ - comparison_interface) \ - JTEST_DEFINE_TEST(arm_##fn_name##_##suffix##_test, \ - arm_##fn_name##_##suffix) \ - { \ - TEST_TEMPLATE_ELT1_BLK( \ - support_elts, \ - support_block_sizes, \ - elt_type, \ - output_type, \ - arm_##fn_name##_##suffix, \ - ARM_##fn_name##_INPUT_INTERFACE, \ - ref_##fn_name##_##suffix, \ - REF_##fn_name##_INPUT_INTERFACE, \ - comparison_interface); \ - } - -#endif /* _SUPPORT_TEMPLATES_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/support_tests/support_test_data.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/support_tests/support_test_data.h deleted file mode 100644 index cc6c636..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/support_tests/support_test_data.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef ARM_SUPPORT_TEST_DATA_H -#define ARM_SUPPORT_TEST_DATA_H - -/*--------------------------------------------------------------------------------*/ -/* Includes */ -/*--------------------------------------------------------------------------------*/ - -#include "arr_desc.h" - -/*--------------------------------------------------------------------------------*/ -/* Declare Variables */ -/*--------------------------------------------------------------------------------*/ - -/* Input/Output Buffers */ -ARR_DESC_DECLARE(support_output_fut); -ARR_DESC_DECLARE(support_output_ref); - -/* Block Sizes*/ -ARR_DESC_DECLARE(support_block_sizes); - -/* Numbers */ -ARR_DESC_DECLARE(support_elts); - -/* Float Inputs */ -ARR_DESC_DECLARE(support_zeros); -ARR_DESC_DECLARE(support_f_2); -ARR_DESC_DECLARE(support_f_15); -ARR_DESC_DECLARE(support_f_32); -ARR_DESC_DECLARE(support_f_all); - -#endif diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/support_tests/support_test_group.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/support_tests/support_test_group.h deleted file mode 100644 index ef3a768..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/support_tests/support_test_group.h +++ /dev/null @@ -1,9 +0,0 @@ -#ifndef _SUPPORT_TEST_GROUP_H_ -#define _SUPPORT_TEST_GROUP_H_ - -/*--------------------------------------------------------------------------------*/ -/* Declare Test Groups */ -/*--------------------------------------------------------------------------------*/ -JTEST_DECLARE_GROUP(support_tests); - -#endif /* _SUPPORT_TEST_GROUP_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/support_tests/support_tests.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/support_tests/support_tests.h deleted file mode 100644 index 2eab273..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/support_tests/support_tests.h +++ /dev/null @@ -1,11 +0,0 @@ -#ifndef _SUPPORT_TESTS_H_ -#define _SUPPORT_TESTS_H_ - -/*--------------------------------------------------------------------------------*/ -/* Test/Group Declarations */ -/*--------------------------------------------------------------------------------*/ -JTEST_DECLARE_GROUP(copy_tests); -JTEST_DECLARE_GROUP(fill_tests); -JTEST_DECLARE_GROUP(x_to_y_tests); - -#endif /* _SUPPORT_TESTS_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/templates/template.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/templates/template.h deleted file mode 100644 index e4577d1..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/templates/template.h +++ /dev/null @@ -1,88 +0,0 @@ -#ifndef _TEMPLATE_H_ -#define _TEMPLATE_H_ - -/*--------------------------------------------------------------------------------*/ -/* Looping and Iteration */ -/*--------------------------------------------------------------------------------*/ - -/** - * Template for the general structure of a loop. - */ -#define TEMPLATE_LOOP(setup, loop_def, body) \ - do \ - { \ - setup; \ - loop_def { \ - body; \ - } \ - } while (0) - -/** - * Template for looping over an array-like sequence. - */ -#define TEMPLATE_DO_ARR_LIKE(iter_idx, type, \ - arr, arr_length, \ - iter_elem_setup, \ - body) \ - do \ - { \ - TEMPLATE_LOOP( \ - int iter_idx, \ - for(iter_idx = 0; iter_idx < (arr_length); ++iter_idx), \ - iter_elem_setup; \ - body); \ - } while (0) - -/** - * Template for looping over the contents of an array. - */ -#define TEMPLATE_DO_ARR(iter_idx, type, iter_elem, arr, arr_length, body) \ - do \ - { \ - TEMPLATE_DO_ARR_LIKE( \ - iter_idx, type, arr, arr_length, \ - type iter_elem = (arr)[iter_idx], \ - body); \ - } while (0) - -/** - * Template for looping over the contents of an #ARR_DESC. - */ -#define TEMPLATE_DO_ARR_DESC(iter_idx, type, iter_elem, arr_desc, body) \ - do \ - { \ - TEMPLATE_DO_ARR_LIKE( \ - iter_idx, type, arr_desc, (arr_desc).element_count, \ - type iter_elem = ARR_DESC_ELT(type, iter_idx, &(arr_desc)), \ - body); \ - } while (0) - -/*--------------------------------------------------------------------------------*/ -/* Test Definition */ -/*--------------------------------------------------------------------------------*/ - -/** - * Template for the general structure of a test. - */ -#define TEMPLATE_TEST(setup, body, teardown) \ - do \ - { \ - setup; \ - body; \ - teardown; \ - } while (0) - -/** - * Template for calling a function. - * - * @note Surround function arguments with the #PAREN() macro. - * - * @example - * void my_func(int arg1, int arg2); - * - * TEMPLATE_CALL_FN(my_func, PAREN(3, 7)); - */ -#define TEMPLATE_CALL_FN(fn, fn_args) \ - fn fn_args - -#endif /* _TEMPLATE_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/templates/test_templates.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/templates/test_templates.h deleted file mode 100644 index 700bbe1..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/templates/test_templates.h +++ /dev/null @@ -1,458 +0,0 @@ -#ifndef _TEST_TEMPLATES_H_ -#define _TEST_TEMPLATES_H_ - -/*--------------------------------------------------------------------------------*/ -/* Includes */ -/*--------------------------------------------------------------------------------*/ -#include "template.h" -#include /* memcmp() */ -#include /* PRIu32 */ -#include "math_helper.h" /* arm_snr_f32() */ - -/*--------------------------------------------------------------------------------*/ -/* Function Aliases for use in Templates. */ -/*--------------------------------------------------------------------------------*/ -#define ref_q31_t_to_float ref_q31_to_float -#define ref_q15_t_to_float ref_q15_to_float -#define ref_q7_t_to_float ref_q7_to_float -#define ref_float_to_q31_t ref_float_to_q31 -#define ref_float_to_q15_t ref_float_to_q15 -#define ref_float_to_q7_t ref_float_to_q7 -#define ref_float32_t_to_float ref_copy_f32 -#define ref_float_to_float32_t ref_copy_f32 - - -/*--------------------------------------------------------------------------------*/ -/* Macros and Defines */ -/*--------------------------------------------------------------------------------*/ - -/** - * Call the function-under-test. - */ -#define TEST_CALL_FUT(fut, fut_args) \ - JTEST_COUNT_CYCLES(TEMPLATE_CALL_FN(fut, fut_args)) - -/** - * Call the reference-function. - */ -#define TEST_CALL_REF(ref, ref_args) \ - TEMPLATE_CALL_FN(ref, ref_args) - -/** - * Call the function-under-test and the reference-function. - */ -#define TEST_CALL_FUT_AND_REF(fut, fut_args, ref, ref_args) \ - do { \ - TEST_CALL_FUT(fut, fut_args); \ - TEST_CALL_REF(ref, ref_args); \ - } while (0) - -/** - * This macro eats a variable number of arguments and evaluates to a null - * statement. - */ -#define TEST_NULL_STATEMENT(...) (void) "TEST_NULL_STATEMENT" - -/** - * A function name, Usable in any template where a fut or ref name is accepted, - * that evaluates to a #TEST_NULL_STATEMENT(). - */ -#define TEST_NULL_FN TEST_NULL_STATEMENT - -/** - * Assert that buffers A and B are byte-equivalent for a number of bytes. - */ -#define TEST_ASSERT_BUFFERS_EQUAL(buf_a, buf_b, bytes) \ - do \ - { \ - if (memcmp(buf_a, buf_b, bytes) != 0) \ - { \ - return JTEST_TEST_FAILED; \ - } \ - } while (0) - -/** - * Assert that the two entities are equal. - */ -#define TEST_ASSERT_EQUAL(a, b) \ - do \ - { \ - if ((a) != (b)) \ - { \ - return JTEST_TEST_FAILED; \ - } \ - } while (0) - -/** - * Convert elements to from src_type to float. - */ -#define TEST_CONVERT_TO_FLOAT(src_ptr, dst_ptr, block_size, src_type) \ - do \ - { \ - ref_##src_type##_to_float( \ - src_ptr, \ - dst_ptr, \ - block_size); \ - } while (0) \ - -/** - * Convert elements to from float to dst_type . - */ -#define TEST_CONVERT_FLOAT_TO(src_ptr, dst_ptr, block_size, dst_type) \ - do \ - { \ - ref_float_to_##dst_type( \ - src_ptr, \ - dst_ptr, \ - block_size); \ - } while (0) \ - -/** - * Assert that the SNR between a reference and test sample is above a given - * threshold. - */ -#define TEST_ASSERT_SNR(ref_ptr, tst_ptr, block_size, threshold) \ - do \ - { \ - float32_t snr = arm_snr_f32(ref_ptr, tst_ptr, block_size); \ - if ( snr <= threshold) \ - { \ - JTEST_DUMP_STRF("SNR: %f\n", snr); \ - return JTEST_TEST_FAILED; \ - } \ - } while (0) \ - -/** - * Assert that the SNR between a reference and test sample is above a given - * threshold. Special case for float64_t - */ -#define TEST_ASSERT_DBL_SNR(ref_ptr, tst_ptr, block_size, threshold) \ - do \ - { \ - float64_t snr = arm_snr_f64(ref_ptr, tst_ptr, block_size); \ - if ( snr <= threshold) \ - { \ - JTEST_DUMP_STRF("SNR: %f\n", snr); \ - return JTEST_TEST_FAILED; \ - } \ - } while (0) \ - -/** - * Compare test and reference elements by converting to float and - * calculating an SNR. - * - * This macro is a merger of the #TEST_CONVERT_TO_FLOAT() and - * #TEST_ASSERT_SNR() macros. - */ -#define TEST_CONVERT_AND_ASSERT_SNR(ref_dst_ptr, ref_src_ptr, \ - tst_dst_ptr, tst_src_ptr, \ - block_size, \ - tst_src_type, \ - threshold) \ - do \ - { \ - TEST_CONVERT_TO_FLOAT(ref_src_ptr, \ - ref_dst_ptr, \ - block_size, \ - tst_src_type); \ - TEST_CONVERT_TO_FLOAT(tst_src_ptr, \ - tst_dst_ptr, \ - block_size, \ - tst_src_type); \ - TEST_ASSERT_SNR(ref_dst_ptr, \ - tst_dst_ptr, \ - block_size, \ - threshold); \ - } while (0) - -/** - * Execute statements only if the combination of block size, function type - * specifier, and input ARR_DESC_t are valid. - * - * @example An ARR_DESC_t that contains 64 bytes cant service a 32 element - * block size if they are extracted in float32_t increments. - * - * 8 * 32 = 256 > 64. - */ -#define TEST_DO_VALID_BLOCKSIZE(block_size, fn_type_spec, \ - input_arr_desc, body) \ - do \ - { \ - if (block_size * sizeof(fn_type_spec) <= \ - ARR_DESC_BYTES(input_arr_desc)) \ - { \ - JTEST_DUMP_STRF("Block Size: %"PRIu32"\n", block_size); \ - body; \ - } \ - } while (0) \ - -/** - * Template for tests that rely on one input buffer and a blocksize parameter. - * - * The buffer is an #ARR_DESC_t. It is iterated over and it's values are - * passed to the function under test and reference functions through their - * appropriate argument interfaces. The argument interfaces this template to - * execute structurally similar functions. - * - */ -#define TEST_TEMPLATE_BUF1_BLK(arr_desc_inputs, \ - arr_desc_block_sizes, \ - input_type, output_type, \ - fut, fut_arg_interface, \ - ref, ref_arg_interface, \ - compare_interface) \ - do \ - { \ - TEMPLATE_DO_ARR_DESC( \ - input_idx, ARR_DESC_t *, input_ptr, arr_desc_inputs \ - , \ - TEMPLATE_DO_ARR_DESC( \ - block_size_idx, uint32_t, block_size, arr_desc_block_sizes \ - , \ - void * input_data_ptr = input_ptr->data_ptr; \ - \ - TEST_DO_VALID_BLOCKSIZE( \ - block_size, input_type, input_ptr \ - , \ - TEST_CALL_FUT_AND_REF( \ - fut, fut_arg_interface( \ - input_data_ptr, block_size), \ - ref, ref_arg_interface( \ - input_data_ptr, block_size)); \ - \ - compare_interface(block_size, output_type)))); \ - \ - return JTEST_TEST_PASSED; \ - \ - } while (0) - -/** - * Template for tests that rely on an input buffer and an element. - * - * An element can is any thing which doesn't walk and talk like a - * sequence. Examples include numbers, and structures. - */ -#define TEST_TEMPLATE_BUF1_ELT1(arr_desc_inputs, \ - arr_desc_elts, \ - input_type, elt_type, output_type, \ - fut, fut_arg_interface, \ - ref, ref_arg_interface, \ - compare_interface) \ - do \ - { \ - TEMPLATE_DO_ARR_DESC( \ - input_idx, ARR_DESC_t *, input_ptr, arr_desc_inputs \ - , \ - TEMPLATE_DO_ARR_DESC( \ - elt_idx, elt_type, elt, arr_desc_elts \ - , \ - void * input_data_ptr = input_ptr->data_ptr; \ - TEST_CALL_FUT_AND_REF( \ - fut, fut_arg_interface(input_data_ptr, elt), \ - ref, ref_arg_interface(input_data_ptr, elt)); \ - \ - compare_interface(output_type))); \ - return JTEST_TEST_PASSED; \ - } while (0) - -/** - * Template for tests that rely on an input buffer, an element, and a blocksize - * parameter. - */ -#define TEST_TEMPLATE_BUF1_ELT1_BLK(arr_desc_inputs, \ - arr_desc_elts, \ - arr_desc_block_sizes, \ - input_type, elt_type, output_type, \ - fut, fut_arg_interface, \ - ref, ref_arg_interface, \ - compare_interface); \ - do \ - { \ - TEMPLATE_DO_ARR_DESC( \ - inut_idx, ARR_DESC_t *, input_ptr, arr_desc_inputs \ - , \ - TEMPLATE_DO_ARR_DESC( \ - block_size_idx, uint32_t, block_size, \ - arr_desc_block_sizes \ - , \ - TEMPLATE_DO_ARR_DESC( \ - elt_idx, elt_type, elt, arr_desc_elts \ - , \ - void * input_data_ptr = input_ptr->data_ptr; \ - TEST_DO_VALID_BLOCKSIZE( \ - block_size, input_type, input_ptr, \ - \ - TEST_CALL_FUT_AND_REF( \ - fut, fut_arg_interface( \ - input_data_ptr, elt, block_size), \ - ref, ref_arg_interface( \ - input_data_ptr, elt, block_size)); \ - compare_interface(block_size, output_type))))); \ - return JTEST_TEST_PASSED; \ - } while (0) - -/** - * Template for tests that rely on an input buffer, two elements, and a blocksize - * parameter. - */ -#define TEST_TEMPLATE_BUF1_ELT2_BLK(arr_desc_inputs, \ - arr_desc_elt1s, \ - arr_desc_elt2s, \ - arr_desc_block_sizes, \ - input_type, elt1_type, \ - elt2_type, output_type, \ - fut, fut_arg_interface, \ - ref, ref_arg_interface, \ - compare_interface) \ - do \ - { \ - TEMPLATE_DO_ARR_DESC( \ - inut_idx, ARR_DESC_t *, input_ptr, arr_desc_inputs \ - , \ - TEMPLATE_DO_ARR_DESC( \ - block_size_idx, uint32_t, block_size, \ - arr_desc_block_sizes \ - , \ - TEMPLATE_DO_ARR_DESC( \ - elt1_idx, elt1_type, elt1, arr_desc_elt1s \ - , \ - TEMPLATE_DO_ARR_DESC( \ - elt2_idx, elt2_type, elt2, arr_desc_elt2s \ - , \ - void * input_data_ptr = input_ptr->data_ptr; \ - TEST_DO_VALID_BLOCKSIZE( \ - block_size, input_type, input_ptr, \ - TEST_CALL_FUT_AND_REF( \ - fut, fut_arg_interface( \ - input_data_ptr, elt1, elt2, block_size), \ - ref, ref_arg_interface( \ - input_data_ptr, elt1, elt2, block_size)); \ - compare_interface(block_size, output_type)))))); \ - return JTEST_TEST_PASSED; \ - } while (0) - -/** - * Template for tests that rely on two input buffers and a blocksize parameter. - * - * The two #ARR_DESC_t, input buffers are iterated through in parallel. The - * length of the first #ARR_DESC_t determines the length of the iteration. - */ -#define TEST_TEMPLATE_BUF2_BLK(arr_desc_inputs_a, \ - arr_desc_inputs_b, \ - arr_desc_block_sizes, \ - input_type, output_type, \ - fut, fut_arg_interface, \ - ref, ref_arg_interface, \ - compare_interface) \ - do \ - { \ - /* Iterate over two input arrays in parallel.*/ \ - TEMPLATE_DO_ARR_DESC( \ - input_idx, ARR_DESC_t *, input_ptr, arr_desc_inputs_a \ - , \ - TEMPLATE_DO_ARR_DESC( \ - block_size_idx, uint32_t, block_size, arr_desc_block_sizes, \ - void * input_a_ptr = input_ptr->data_ptr; \ - void * input_b_ptr = ARR_DESC_ELT( \ - ARR_DESC_t *, input_idx, \ - &(arr_desc_inputs_b))->data_ptr; \ - \ - TEST_DO_VALID_BLOCKSIZE( \ - block_size, input_type, input_ptr \ - , \ - TEST_CALL_FUT_AND_REF( \ - fut, fut_arg_interface( \ - input_a_ptr, input_b_ptr, block_size), \ - ref, ref_arg_interface( \ - input_a_ptr, input_b_ptr, block_size)); \ - \ - compare_interface(block_size, output_type)))); \ - return JTEST_TEST_PASSED; \ - } while (0) - -/** - * Test template that uses a single element. - */ -#define TEST_TEMPLATE_ELT1(arr_desc_elts, \ - elt_type, output_type, \ - fut, fut_arg_interface, \ - ref, ref_arg_interface, \ - compare_interface) \ - do \ - { \ - TEMPLATE_DO_ARR_DESC( \ - elt_idx, elt_type, elt, arr_desc_elts \ - , \ - TEST_CALL_FUT_AND_REF( \ - fut, fut_arg_interface( \ - elt), \ - ref, ref_arg_interface( \ - elt)); \ - /* Comparison interfaces typically accept */ \ - /* a block_size. Pass a dummy value 1.*/ \ - compare_interface(1, output_type)); \ - return JTEST_TEST_PASSED; \ - } while (0) - -/** - * Test template that iterates over two sets of elements in parallel. - * - * The length of the first set determines the number of iteratsions. - */ -#define TEST_TEMPLATE_ELT2(arr_desc_elts_a, \ - arr_desc_elts_b, \ - elt_a_type, elt_b_type, output_type, \ - fut, fut_arg_interface, \ - ref, ref_arg_interface, \ - compare_interface) \ - do \ - { \ - TEMPLATE_DO_ARR_DESC( \ - elt_a_idx, elt_a_type, elt_a, arr_desc_elts_a \ - , \ - elt_b_type * elt_b = ARR_DESC_ELT( \ - elt_b_type, \ - elt_a_idx, \ - arr_desc_elts_b); \ - \ - TEST_CALL_FUT_AND_REF( \ - fut, fut_arg_interface( \ - elt_a, elt_b), \ - ref, ref_arg_interface( \ - elt_a, elt_b)); \ - /* Comparison interfaces typically accept */ \ - /* a block_size. Pass a dummy value 1.*/ \ - compare_interface(1, output_type)); \ - return JTEST_TEST_PASSED; \ - } while (0) - -/** - * Test template that uses an element and a block size. - */ -#define TEST_TEMPLATE_ELT1_BLK(arr_desc_elts, \ - arr_desc_block_sizes, \ - elt_type, output_type, \ - fut, fut_arg_interface, \ - ref, ref_arg_interface, \ - compare_interface) \ - do \ - { \ - TEMPLATE_DO_ARR_DESC( \ - block_size_idx, uint32_t, block_size, \ - arr_desc_block_sizes \ - , \ - TEMPLATE_DO_ARR_DESC( \ - elt_idx, elt_type, elt, arr_desc_elts \ - , \ - JTEST_DUMP_STRF("Block Size: %d\n", \ - (int)block_size); \ - TEST_CALL_FUT_AND_REF( \ - fut, fut_arg_interface( \ - elt, block_size), \ - ref, ref_arg_interface( \ - elt, block_size)); \ - compare_interface(block_size, output_type))); \ - return JTEST_TEST_PASSED; \ - } while (0) - -#endif /* _TEST_TEMPLATES_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/transform_tests/transform_templates.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/transform_tests/transform_templates.h deleted file mode 100644 index c6314b5..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/transform_tests/transform_templates.h +++ /dev/null @@ -1,181 +0,0 @@ -#ifndef _TRANSFORM_TEMPLATES_H_ -#define _TRANSFORM_TEMPLATES_H_ - -/*--------------------------------------------------------------------------------*/ -/* Includes */ -/*--------------------------------------------------------------------------------*/ - -#include "test_templates.h" -#include /* memcpy() */ - -/*--------------------------------------------------------------------------------*/ -/* Group Specific Templates */ -/*--------------------------------------------------------------------------------*/ - -/** - * Comparison SNR thresholds for the data types used in transform_tests. - */ -#define TRANSFORM_SNR_THRESHOLD_float32_t 90 -#define TRANSFORM_SNR_THRESHOLD_q31_t 90 -#define TRANSFORM_SNR_THRESHOLD_q15_t 30 - -#define DCT4_TRANSFORM_SNR_THRESHOLD_float32_t 80 -#define DCT4_TRANSFORM_SNR_THRESHOLD_q31_t 75 -#define DCT4_TRANSFORM_SNR_THRESHOLD_q15_t 11 - -/** - * Compare the outputs from the function under test and the reference - * function using SNR. - */ -#define TRANSFORM_SNR_COMPARE_INTERFACE(block_size, \ - output_type) \ - do \ - { \ - TEST_CONVERT_AND_ASSERT_SNR( \ - transform_fft_output_f32_ref, \ - (output_type *) transform_fft_output_ref, \ - transform_fft_output_f32_fut, \ - (output_type *) transform_fft_output_fut, \ - block_size, \ - output_type, \ - TRANSFORM_SNR_THRESHOLD_##output_type \ - ); \ - } while (0) - -/** - * Compare the outputs from the function under test and the reference - * function using SNR. - */ -#define DCT_TRANSFORM_SNR_COMPARE_INTERFACE(block_size, \ - output_type) \ - do \ - { \ - TEST_CONVERT_AND_ASSERT_SNR( \ - transform_fft_output_f32_ref, \ - (output_type *) transform_fft_output_ref, \ - transform_fft_output_f32_fut, \ - (output_type *) transform_fft_output_fut, \ - block_size, \ - output_type, \ - DCT4_TRANSFORM_SNR_THRESHOLD_##output_type \ - ); \ - } while (0) \ - -/** - * Specialization on #TRANSFORM_SNR_COMPARE_INTERFACE() to fix the block_size - * for complex datasets. - */ -#define TRANSFORM_SNR_COMPARE_CMPLX_INTERFACE(block_size, output_type) \ - /* Complex numbers have two components*/ \ - TRANSFORM_SNR_COMPARE_INTERFACE(block_size * 2, output_type ) - -/** - * This macro copys data from the input_ptr into input arrays. - * - * Some functions modify their input data; in order to provide the same data to - * multiple tests, copies must be made so the changes from one function don't - * impact the others. - */ -#define TRANSFORM_COPY_INPUTS(input_ptr, \ - bytes) \ - do \ - { \ - memcpy( \ - transform_fft_input_fut, \ - input_ptr, \ - bytes); \ - memcpy( \ - transform_fft_input_ref, \ - input_ptr, \ - bytes); \ - } while (0) - -/** - * This macro copys data from the input_ptr into input arrays. It also creates - * symmetric input data for rfft inverse. - * - * The 4.534234f just makes the middle entry of the array semi random. It's - * actual value doesn't seem to matter much. - * - * Some functions modify their input data; in order to provide the same data to - * multiple tests, copies must be made so the changes from one function don't - * impact the others. - */ -#define TRANSFORM_PREPARE_INVERSE_INPUTS(input_ptr, \ - fftlen, input_type, bytes) \ - do \ - { \ - uint32_t i; \ - \ - memcpy( \ - transform_fft_input_fut, \ - input_ptr, \ - bytes); \ - \ - ((input_type*)transform_fft_input_fut)[1] = 0; \ - ((input_type*)transform_fft_input_fut)[fftlen + 0] = 0; \ - ((input_type*)transform_fft_input_fut)[fftlen + 1] = 0; \ - for(i=1;i>= 1; \ - *((type*)transform_fft_inplace_input_ref + i) >>= 1;} \ - } while (0) - -/** - * This macro copys data from the input_ptr into the in-place input arrays. - * - * Some functions modify their input data; in order to provide the same data to - * multiple tests, copies must be made so the changes from one function don't - * impact the others. - */ -#define TRANSFORM_PREPARE_INPLACE_INPUTS(input_ptr, \ - bytes) \ - do \ - { \ - memcpy( \ - transform_fft_inplace_input_fut, \ - input_ptr, \ - bytes); \ - memcpy( \ - transform_fft_inplace_input_ref, \ - input_ptr, \ - bytes); \ - } while (0) - - -#endif /* _TRANSFORM_TEMPLATES_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/transform_tests/transform_test_data.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/transform_tests/transform_test_data.h deleted file mode 100644 index bda5e12..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/transform_tests/transform_test_data.h +++ /dev/null @@ -1,48 +0,0 @@ -#ifndef _TRANSFORM_TEST_DATA_H_ -#define _TRANSFORM_TEST_DATA_H_ - -/*--------------------------------------------------------------------------------*/ -/* Includes */ -/*--------------------------------------------------------------------------------*/ - -#include "arr_desc.h" -#include "arm_math.h" - -/*--------------------------------------------------------------------------------*/ -/* Macros and Defines */ -/*--------------------------------------------------------------------------------*/ - -#define TRANSFORM_MAX_FFT_LEN 4096 -#define TRANFORM_BIGGEST_INPUT_TYPE float32_t - -/*--------------------------------------------------------------------------------*/ -/* Variable Declarations */ -/*--------------------------------------------------------------------------------*/ - -/* Lengths are multiplied by 2 to accomodate complex numbers*/ -extern float32_t transform_fft_output_fut[TRANSFORM_MAX_FFT_LEN * 2]; -extern float32_t transform_fft_output_ref[TRANSFORM_MAX_FFT_LEN * 2]; -extern float32_t transform_fft_input_fut[TRANSFORM_MAX_FFT_LEN * 2]; -extern float32_t transform_fft_input_ref[TRANSFORM_MAX_FFT_LEN * 2]; -extern float32_t transform_fft_output_f32_fut[TRANSFORM_MAX_FFT_LEN * 2]; -extern float32_t transform_fft_output_f32_ref[TRANSFORM_MAX_FFT_LEN * 2]; -extern float32_t * transform_fft_inplace_input_fut; -extern float32_t * transform_fft_inplace_input_ref; -extern float32_t transform_fft_f32_inputs[TRANSFORM_MAX_FFT_LEN * 2]; -extern q31_t transform_fft_q31_inputs[TRANSFORM_MAX_FFT_LEN * 2]; -extern q15_t * transform_fft_q15_inputs; -extern q15_t dct4_transform_fft_q15_inputs[TRANSFORM_MAX_FFT_LEN * 2]; - -/* FFT Lengths */ -ARR_DESC_DECLARE(transform_radix2_fftlens); -ARR_DESC_DECLARE(transform_radix4_fftlens); -ARR_DESC_DECLARE(transform_rfft_fftlens); -ARR_DESC_DECLARE(transform_rfft_fast_fftlens); -ARR_DESC_DECLARE(transform_dct_fftlens); - -/* CFFT Structs */ -ARR_DESC_DECLARE(transform_cfft_f32_structs); -ARR_DESC_DECLARE(transform_cfft_q31_structs); -ARR_DESC_DECLARE(transform_cfft_q15_structs); - -#endif /* _TRANSFORM_TEST_DATA_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/transform_tests/transform_test_group.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/transform_tests/transform_test_group.h deleted file mode 100644 index c1c7c9e..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/transform_tests/transform_test_group.h +++ /dev/null @@ -1,9 +0,0 @@ -#ifndef _TRANSFORM_TEST_GROUP_H_ -#define _TRANSFORM_TEST_GROUP_H_ - -/*--------------------------------------------------------------------------------*/ -/* Declare Test Groups */ -/*--------------------------------------------------------------------------------*/ -JTEST_DECLARE_GROUP(transform_tests); - -#endif /* _TRANSFORM_TEST_GROUP_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/transform_tests/transform_tests.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/transform_tests/transform_tests.h deleted file mode 100644 index 874c83f..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/transform_tests/transform_tests.h +++ /dev/null @@ -1,13 +0,0 @@ -#ifndef _TRANSFORM_TESTS_H_ -#define _TRANSFORM_TESTS_H_ - -/*--------------------------------------------------------------------------------*/ -/* Test/Group Declarations */ -/*--------------------------------------------------------------------------------*/ -JTEST_DECLARE_GROUP(cfft_tests); -JTEST_DECLARE_GROUP(cfft_family_tests); -JTEST_DECLARE_GROUP(dct4_tests); -JTEST_DECLARE_GROUP(rfft_tests); -JTEST_DECLARE_GROUP(rfft_fast_tests); - -#endif /* _TRANSFORM_TESTS_H_ */ diff --git a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/type_abbrev.h b/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/type_abbrev.h deleted file mode 100644 index 5909124..0000000 --- a/Blink/Drivers/CMSIS/DSP/DSP_Lib_TestSuite/Common/inc/type_abbrev.h +++ /dev/null @@ -1,37 +0,0 @@ -#ifndef _TYPE_ABBREV_H_ -#define _TYPE_ABBREV_H_ - -/*--------------------------------------------------------------------------------*/ -/* Macros and Defines */ -/*--------------------------------------------------------------------------------*/ - -/** - * Expand the abbreviation for a type into the type itself. - */ -#define TYPE_FROM_ABBREV(abbrev) \ - TYPE_ABBREV_##abbrev \ - -/** - * Expand the type to an abbreviation for that type. - * - * Inverse of #TYPE_FROM_ABBREV(). - * - * @note Should be able to get a type back by writing. - * TYPE_FROM_ABBREV(ABBREV_FROM_TYPE(type)) - */ -#define ABBREV_FROM_TYPE(type) \ - TYPE_SUFFIX_##type - -#define TYPE_ABBREV_f64 float64_t -#define TYPE_ABBREV_f32 float32_t -#define TYPE_ABBREV_q31 q31_t -#define TYPE_ABBREV_q15 q15_t -#define TYPE_ABBREV_q7 q7_t - -#define TYPE_SUFFIX_float64_t f64 -#define TYPE_SUFFIX_float32_t f32 -#define TYPE_SUFFIX_q31_t q31 -#define TYPE_SUFFIX_q15_t q15 -#define TYPE_SUFFIX_q7_t q7 - -#endif /* _TYPE_ABBREV_H_ */ -- cgit