tests: lib: cmsis_dsp: support: Update F32 tests for 1.9.0
This commit updates the support F32 test patterns and implementations for the CMSIS-DSP 1.9.0. Note that the spline interpolation feature has been moved from the 'Support' module to the new 'Interpolation' module. Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit is contained in:
parent
5c8330767f
commit
58cecdad74
2 changed files with 260 additions and 406 deletions
|
@ -1,6 +1,6 @@
|
|||
/*
|
||||
* Copyright (c) 2020 Stephanos Ioannidis <root@stephanos.io>
|
||||
* Copyright (C) 2010-2020 ARM Limited or its affiliates. All rights reserved.
|
||||
* Copyright (c) 2021 Stephanos Ioannidis <root@stephanos.io>
|
||||
* Copyright (C) 2010-2021 ARM Limited or its affiliates. All rights reserved.
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
@ -401,59 +401,6 @@ static void test_arm_merge_sort_const(
|
|||
DEFINE_TEST_VARIANT4(arm_merge_sort_const, 16,
|
||||
in_sort_const, ref_sort_const, 16, ARM_SORT_ASCENDING);
|
||||
|
||||
static void test_arm_spline(
|
||||
const uint32_t *input_x, const uint32_t *input_y,
|
||||
const uint32_t *input_xq, const uint32_t *ref, size_t length,
|
||||
uint32_t n, arm_spline_type type)
|
||||
{
|
||||
float32_t *output;
|
||||
float32_t *scratch;
|
||||
float32_t *coeff;
|
||||
arm_spline_instance_f32 inst;
|
||||
|
||||
/* Allocate output buffer */
|
||||
output = malloc(length * sizeof(float32_t));
|
||||
zassert_not_null(output, ASSERT_MSG_BUFFER_ALLOC_FAILED);
|
||||
|
||||
/* Allocate scratch buffer */
|
||||
scratch = malloc(((n * 2) - 1) * sizeof(float32_t));
|
||||
zassert_not_null(scratch, ASSERT_MSG_BUFFER_ALLOC_FAILED);
|
||||
|
||||
/* Allocate coefficient buffer */
|
||||
coeff = malloc(((n - 1) * 3) * sizeof(float32_t));
|
||||
zassert_not_null(coeff, ASSERT_MSG_BUFFER_ALLOC_FAILED);
|
||||
|
||||
/* Initialise spline */
|
||||
arm_spline_init_f32(&inst, type,
|
||||
(float32_t *)input_x, (float32_t *)input_y, n, coeff, scratch);
|
||||
|
||||
/* Run test function */
|
||||
arm_spline_f32(&inst, (float32_t *)input_xq, output, length);
|
||||
|
||||
/* Validate output */
|
||||
zassert_true(
|
||||
test_snr_error_f32(length, output, (float32_t *)ref,
|
||||
SNR_ERROR_THRESH),
|
||||
ASSERT_MSG_SNR_LIMIT_EXCEED);
|
||||
|
||||
/* Free output buffer */
|
||||
free(output);
|
||||
free(scratch);
|
||||
free(coeff);
|
||||
}
|
||||
|
||||
DEFINE_TEST_VARIANT7(arm_spline, square_20,
|
||||
in_spline_squ_x, in_spline_squ_y, in_spline_squ_xq, ref_spline_squ, 20,
|
||||
4, ARM_SPLINE_PARABOLIC_RUNOUT);
|
||||
|
||||
DEFINE_TEST_VARIANT7(arm_spline, sine_33,
|
||||
in_spline_sin_x, in_spline_sin_y, in_spline_sin_xq, ref_spline_sin, 33,
|
||||
9, ARM_SPLINE_NATURAL);
|
||||
|
||||
DEFINE_TEST_VARIANT7(arm_spline, ramp_30,
|
||||
in_spline_ram_x, in_spline_ram_y, in_spline_ram_xq, ref_spline_ram, 30,
|
||||
3, ARM_SPLINE_PARABOLIC_RUNOUT);
|
||||
|
||||
void test_support_f32(void)
|
||||
{
|
||||
ztest_test_suite(support_f32,
|
||||
|
@ -495,10 +442,7 @@ void test_support_f32(void)
|
|||
ztest_unit_test(test_arm_sort_in_selection_11),
|
||||
ztest_unit_test(test_arm_sort_const_selection_16),
|
||||
ztest_unit_test(test_arm_merge_sort_out_11),
|
||||
ztest_unit_test(test_arm_merge_sort_const_16),
|
||||
ztest_unit_test(test_arm_spline_square_20),
|
||||
ztest_unit_test(test_arm_spline_sine_33),
|
||||
ztest_unit_test(test_arm_spline_ramp_30)
|
||||
ztest_unit_test(test_arm_merge_sort_const_16)
|
||||
);
|
||||
|
||||
ztest_run_test_suite(support_f32);
|
||||
|
|
604
tests/lib/cmsis_dsp/support/src/f32.pat
generated
604
tests/lib/cmsis_dsp/support/src/f32.pat
generated
|
@ -1,392 +1,302 @@
|
|||
static const uint32_t in_f32[256] = {
|
||||
0x3e9f783f, 0x3f507929, 0x3f76fc98, 0x3f3fe988,
|
||||
0x3f6ba888, 0x3f5c075c, 0x3f6530f7, 0x3eca2872,
|
||||
0x3e9ee131, 0x3f6f82e0, 0x3f6f16e5, 0x3de21e06,
|
||||
0x3d9e4d30, 0x3e27ea69, 0x3ce11c5c, 0x3f0ca2f9,
|
||||
0x3f634454, 0x3ecc306d, 0x3f6ccf0a, 0x3f41230e,
|
||||
0x3f418e1f, 0x3f755094, 0x3eee3b13, 0x3e90ac19,
|
||||
0x3ee8c7b6, 0x3ef3570d, 0x3f4ecab1, 0x3f4f8cd7,
|
||||
0x3f524528, 0x3f3d166f, 0x3ec032b2, 0x3ead983b,
|
||||
0x3e3a97d2, 0x3ecfea6a, 0x3d88864d, 0x3f796eb2,
|
||||
0x3eda5a2b, 0x3e30c4c2, 0x3e67febd, 0x3f7f446d,
|
||||
0x3f013d9f, 0x3e83b49d, 0x3f607999, 0x3f3e9502,
|
||||
0x3ecb28b6, 0x3f70831b, 0x3f5b18e3, 0x3dd1d17c,
|
||||
0x3f0343bd, 0x3eaa3f78, 0x3f006b49, 0x3ea2d104,
|
||||
0x3f7d56c7, 0x3f79297a, 0x3f4238ba, 0x3ed6b039,
|
||||
0x3f11b3ab, 0x3cd25eb2, 0x3f7ff4a9, 0x3f15a656,
|
||||
0x3f5989f6, 0x3eea474a, 0x3eb11775, 0x3f0f8d26,
|
||||
0x3ea62f37, 0x3e250fc9, 0x3eb36bab, 0x3e68c621,
|
||||
0x3f3654bd, 0x3f1277ab, 0x3f4af99b, 0x3f66550a,
|
||||
0x3f539c0f, 0x3f429962, 0x3bb37dbf, 0x3f71286c,
|
||||
0x3f6f5c53, 0x3e52c352, 0x3f36a5e0, 0x3dcb24ab,
|
||||
0x3e53943b, 0x3e15da21, 0x3f44c805, 0x3eff2f7a,
|
||||
0x3e9a7c30, 0x3f7e2a56, 0x3f006251, 0x3cbdf22c,
|
||||
0x3f1251fe, 0x3f2fd244, 0x3e868a17, 0x3f63c22a,
|
||||
0x3f0c9eee, 0x3f61a4cc, 0x3e3d1a77, 0x3ea6db4b,
|
||||
0x3ee112b5, 0x3f3109ae, 0x3f0255fd, 0x3f73b5f3,
|
||||
0x3ef82f09, 0x3efd2ee2, 0x3f418e36, 0x3e8c6bd0,
|
||||
0x3f720a35, 0x3da20232, 0x3e63d79e, 0x3f22c9fa,
|
||||
0x3de70abe, 0x3e2daedb, 0x3ec322c4, 0x3e08000f,
|
||||
0x3f4bb252, 0x3e8f1aee, 0x3ed4eec5, 0x3f17bd5f,
|
||||
0x3f06c369, 0x3efa1daf, 0x3e898bc4, 0x3f53e527,
|
||||
0x3e0d2ff2, 0x3eb99e19, 0x3ed83ca3, 0x3e3c336f,
|
||||
0x3d4a9619, 0x3e87a11c, 0x3ec434cb, 0x3e803d1f,
|
||||
0x3e188a3c, 0x3d6bee56, 0x3f576c59, 0x3f193141,
|
||||
0x3e531859, 0x3eca4978, 0x3d14144d, 0x3d12f59c,
|
||||
0x3f3493f8, 0x3ec0489d, 0x3e645e2c, 0x3f68184c,
|
||||
0x3f71dac0, 0x3e5f0153, 0x3f627fe9, 0x3e0046dc,
|
||||
0x3f39ceea, 0x3ee2f65e, 0x3f6b37d6, 0x3d97a672,
|
||||
0x3f21fbfa, 0x3f1823e9, 0x3f272365, 0x3e515a64,
|
||||
0x3f35ad59, 0x3ee732a1, 0x3e08bd5f, 0x3ec7543d,
|
||||
0x3e607efa, 0x3eafe3a6, 0x3f76c8b0, 0x3e2c61a8,
|
||||
0x3f190bde, 0x3dd67387, 0x3f1aaf85, 0x3f316be6,
|
||||
0x3f23cf2a, 0x3dc75e18, 0x3f10c40b, 0x3f2d3c1a,
|
||||
0x3f6fc629, 0x3d979cb4, 0x3de5c2c4, 0x3e200f92,
|
||||
0x3eeecaf2, 0x3f2a3723, 0x3e18406d, 0x3e386364,
|
||||
0x3e324448, 0x3f432273, 0x3f1bdeac, 0x3f472278,
|
||||
0x3e9d0342, 0x3f6ffa6d, 0x3dbf1f60, 0x3f175c89,
|
||||
0x3f1a536e, 0x3f372330, 0x3f0a7c29, 0x3efa4852,
|
||||
0x3e464849, 0x3ebe5056, 0x3ed635da, 0x3ed3873e,
|
||||
0x3da00b51, 0x3f0fa663, 0x3daf870b, 0x3d692367,
|
||||
0x3e045422, 0x3e1574d1, 0x3f5113f3, 0x3f66ff9f,
|
||||
0x3f2c3457, 0x3f5e2bac, 0x3ee398aa, 0x3ef7639c,
|
||||
0x3dee8e79, 0x3f656492, 0x3eee1156, 0x3e738622,
|
||||
0x3f0b6b70, 0x3e9de7aa, 0x3e87a892, 0x3f3a349c,
|
||||
0x3e734d83, 0x3f7fab0a, 0x3ec2b48d, 0x3e6d0449,
|
||||
0x3dafed24, 0x3f800000, 0x3f62f171, 0x3ea0c497,
|
||||
0x3bdb571a, 0x3e159f9d, 0x3f5651cd, 0x3f0a08f7,
|
||||
0x3d57e856, 0x3df5c6c1, 0x3ef05dc6, 0x3f2026d3,
|
||||
0x3f70d920, 0x3e9fe911, 0x3f7e21a6, 0x3e5dfeed,
|
||||
0x3f572a2a, 0x3f7bd10f, 0x3f240cf6, 0x3f45af22,
|
||||
0x3f11dd11, 0x3eca821c, 0x3f252c63, 0x3f009881,
|
||||
0x3e8b13e4, 0x3f215f48, 0x3f69a872, 0x3f13227a,
|
||||
0x3f73061b, 0x3e17b00c, 0x3f37b64b, 0x3f3c55aa,
|
||||
0x3f7fd6ad, 0x3f0d8b61, 0x3e4dfd7b, 0x3e9a2a5e,
|
||||
0x3e19753a, 0x3ccb1258, 0x3ea2a695, 0x3f7aa0d8
|
||||
0x3e7b9a11, 0x3f430e64, 0x3f7b61f8, 0x3f3e1a0a,
|
||||
0x3f10ac73, 0x3f4e4019, 0x3ecb6c1a, 0x3eb9d756,
|
||||
0x3edf6a04, 0x3e48703f, 0x3f0bd6e4, 0x3f338f5b,
|
||||
0x3f2ccba0, 0x3f7eed8c, 0x3f40b36d, 0x3f432aa2,
|
||||
0x3f3efcd1, 0x3ea25922, 0x3f14060b, 0x3f1de431,
|
||||
0x3f317a8d, 0x3ea3f0f8, 0x3f6b2154, 0x3ea3518a,
|
||||
0x3f0f769f, 0x3f373d6b, 0x3ea68f81, 0x3f601e8c,
|
||||
0x3f78b988, 0x3f52a5df, 0x3f15dd31, 0x3f4988ae,
|
||||
0x3e9837b4, 0x3f348f53, 0x3d8c8987, 0x3de61780,
|
||||
0x3cfebf74, 0x3f40a628, 0x3f54f32d, 0x3f22172a,
|
||||
0x3eb64b7b, 0x3ea6ee22, 0x3f1d5d84, 0x3e044e85,
|
||||
0x3ec0d710, 0x3da19337, 0x3e50157d, 0x3f0ddfcc,
|
||||
0x3ea2fa79, 0x3f1a6b2c, 0x3f7bf622, 0x3d293569,
|
||||
0x3f793192, 0x3f79e1e6, 0x3e133ea4, 0x3ee4d509,
|
||||
0x3f60dd33, 0x3e4da42e, 0x3f7f7220, 0x3f06ef6b,
|
||||
0x3d44b6c3, 0x3f27a083, 0x3f4a011d, 0x3f5f3bb8,
|
||||
0x3f246fea, 0x3f6d9eee, 0x3f3366da, 0x3ec6b168,
|
||||
0x3f1baf3f, 0x3f123fde, 0x3f640d40, 0x3f285823,
|
||||
0x3f69065c, 0x3f2a688d, 0x3f163881, 0x3f02f4c1,
|
||||
0x3d5b0d1c, 0x3f26cf42, 0x3baad7d3, 0x3f310aff,
|
||||
0x3f7ae54d, 0x3eaee2eb, 0x3f649a9b, 0x3f7899e8,
|
||||
0x3e14a802, 0x3df24408, 0x3e8b7772, 0x3f03ec48,
|
||||
0x3f0f1e48, 0x3f2cf012, 0x3e1ad83d, 0x3ebeb070,
|
||||
0x3f39cb89, 0x3e0f4811, 0x3f4a5631, 0x3debe2e7,
|
||||
0x3f3b9597, 0x3f13db6d, 0x3f2f2b0a, 0x3f27e4f3,
|
||||
0x3d04450a, 0x3f014ebb, 0x3f2f04aa, 0x3f77ed6b,
|
||||
0x3eab5ae1, 0x3f3e37b0, 0x3f59b5fe, 0x3de5e5a3,
|
||||
0x3de3b577, 0x3f201a9b, 0x3f6b9e07, 0x3f691c38,
|
||||
0x3f5b9f86, 0x3cdcd883, 0x3f6d8069, 0x3f27085a,
|
||||
0x3db6301f, 0x3f56c40d, 0x3ec3d730, 0x3f79473c,
|
||||
0x3f7e9340, 0x3f6a7909, 0x3f5bc938, 0x3f19eb93,
|
||||
0x3eb3694e, 0x3d73e79b, 0x3f4756ef, 0x3c3dc003,
|
||||
0x3f6ab939, 0x3ed84f90, 0x3f065672, 0x3f7616bf,
|
||||
0x3f568ecb, 0x3f22a281, 0x3f798544, 0x3e64d2de,
|
||||
0x3f0399d9, 0x3ed97b16, 0x3f2a617a, 0x3e89ddcd,
|
||||
0x3f5980f2, 0x3f1807f7, 0x3e2f1399, 0x3e29f0da,
|
||||
0x3f7b9281, 0x3f18ae83, 0x3ee60acc, 0x3f12640c,
|
||||
0x3e82ea80, 0x3e9fd222, 0x3f19ef56, 0x3f4c626d,
|
||||
0x3f005ff0, 0x3b8c6612, 0x3f7afd64, 0x3e22c7f8,
|
||||
0x3e44d9dc, 0x3da9476f, 0x3e093299, 0x3f73bea9,
|
||||
0x3f093dc1, 0x3f6c0ca4, 0x3e071409, 0x3e0c9b5c,
|
||||
0x3f666e66, 0x3f7d715b, 0x3eb8482d, 0x3ebcbb5e,
|
||||
0x3f75c74f, 0x3e1a0659, 0x3ef79d1d, 0x3ea20474,
|
||||
0x3f6f244f, 0x3f65bfe5, 0x3e8e9d43, 0x3dac62f5,
|
||||
0x3e73a68b, 0x3eb14bb9, 0x3f71d474, 0x3f73192c,
|
||||
0x3df514f1, 0x3f0eb020, 0x3e1802e3, 0x3e40fc53,
|
||||
0x3f6dcbf1, 0x3f3fe92d, 0x3f3088fc, 0x3e7908f9,
|
||||
0x3e9f0e3f, 0x3f59caaa, 0x3f71fc6b, 0x3e03fcb0,
|
||||
0x3e8d795a, 0x3ed6d370, 0x3e3d741b, 0x3f0665c5,
|
||||
0x3e03b8dc, 0x3ec36989, 0x3e41f5bc, 0x3f2c13bd,
|
||||
0x3f1055c4, 0x3e0ac5c1, 0x3f7ecb1f, 0x3f5f1c86,
|
||||
0x3f0c4517, 0x3bc9b4af, 0x3f4698a8, 0x3e60d888,
|
||||
0x3f4d360b, 0x3f7a6908, 0x3ea9e568, 0x3f542a35,
|
||||
0x3f571e54, 0x3f559ed1, 0x3e477e0f, 0x3dc2ae2c,
|
||||
0x3f095f6d, 0x3f6d6176, 0x3e871cd8, 0x3ef343da,
|
||||
0x3f162322, 0x3e979c68, 0x3f3b8387, 0x3e6b90ec,
|
||||
0x3f330b5d, 0x3f099ae2, 0x3f14ae97, 0x3f78e53d,
|
||||
0x3eca02ea, 0x3ec226f4, 0x3ec53384, 0x3f0092e6,
|
||||
0x3e0aa741, 0x3e30a639, 0x3ebfcd1f, 0x3f47ec72,
|
||||
0x3dd181e3, 0x3f501d2e, 0x3ec170d6, 0x3f350dac,
|
||||
0x3e84a472, 0x3f3823eb, 0x3f394286, 0x3d0ea782,
|
||||
0x3ec06bda, 0x3f737deb, 0x3f50494f, 0x3ec40d59,
|
||||
0x3dcaa663, 0x3f4676c9, 0x3ea46e6a, 0x3f1dc12a,
|
||||
0x3efe5066, 0x3f6cc34a, 0x3f228d22, 0x3f800000
|
||||
};
|
||||
|
||||
static const uint32_t in_weighted_sum_val[50] = {
|
||||
0x3f61a7da, 0x3f1d0ae1, 0x3e366135, 0x3eaf153c,
|
||||
0x3f2bb774, 0x3e60b549, 0x3baac1a7, 0x3f4513c6,
|
||||
0x3f556351, 0x3ca4ce0e, 0x3ea6e4ad, 0x3f0f17dc,
|
||||
0x3d832ac0, 0x3f78f9a1, 0x3f315e3b, 0x3e38bc16,
|
||||
0x3edb4024, 0x3f244369, 0x3f7cd3f8, 0x3e128b57,
|
||||
0x3e5bc646, 0x3f7e37cb, 0x3ec84d8f, 0x3eade552,
|
||||
0x3f2cceca, 0x3e4876a7, 0x3ef767b0, 0x3f63b358,
|
||||
0x3f5252ee, 0x3f35cc90, 0x3ea2e62a, 0x3ee32c8b,
|
||||
0x3d783e9f, 0x3c1d4308, 0x3f68c46a, 0x3ea96393,
|
||||
0x3def0a69, 0x3e8e79e3, 0x3f3efcae, 0x3e87c523,
|
||||
0x3e97151f, 0x3f6e2749, 0x3d6411c3, 0x3ead156c,
|
||||
0x3f4cd352, 0x3f53751e, 0x3eafeca7, 0x3f702cf6,
|
||||
0x3e9d501f, 0x3f52bfbc
|
||||
0x3ef59039, 0x3f4bf0c0, 0x3f281f89, 0x3d203758,
|
||||
0x3dd67aaa, 0x3f056b52, 0x3e088a37, 0x3f52369c,
|
||||
0x3d3ad5fc, 0x3f2c7b41, 0x3f1cf2ea, 0x3f40c0c5,
|
||||
0x3e86e548, 0x3e567964, 0x3e0b6eb2, 0x3e570544,
|
||||
0x3e982de8, 0x3f26609f, 0x3f71c824, 0x3d9e7eeb,
|
||||
0x3d4f374e, 0x3f361d6d, 0x3f43dc1a, 0x3e848bcc,
|
||||
0x3e233709, 0x3ee39772, 0x3e65d216, 0x3e8c78d9,
|
||||
0x3e4e7014, 0x3e04412c, 0x3f24dfc4, 0x3e888dc3,
|
||||
0x3c77dec8, 0x3f04bd53, 0x3f4982ef, 0x3f785484,
|
||||
0x3e5322d4, 0x3e923b13, 0x3f1a7fdd, 0x3f20e801,
|
||||
0x3f036403, 0x3e529443, 0x3f43e1f5, 0x3e8679c1,
|
||||
0x3f1ff6cd, 0x3efff938, 0x3ef8c3c2, 0x3f3bf153,
|
||||
0x3f2d605f, 0x3b88b868
|
||||
};
|
||||
|
||||
static const uint32_t in_weighted_sum_coeff[50] = {
|
||||
0x3eefb2a1, 0x3f7092f6, 0x3e57e1b2, 0x3e935a97,
|
||||
0x3f69e099, 0x3f35000f, 0x3eef6edd, 0x3eee3453,
|
||||
0x3e1d42d8, 0x3f3a8a98, 0x3e1c35d9, 0x3e3007cc,
|
||||
0x3e8619c5, 0x3f60f3c6, 0x3f40a355, 0x3eae62ae,
|
||||
0x3f08c9b9, 0x3e06dc73, 0x3f4799f5, 0x3ec2f376,
|
||||
0x3da81dc4, 0x3cff714f, 0x3f2a5a96, 0x3eb852f7,
|
||||
0x3f388d28, 0x3e43d02d, 0x3f51392b, 0x3f1f8e57,
|
||||
0x3daec1e6, 0x3eb7c159, 0x3f106c95, 0x3ec76c04,
|
||||
0x3ee12b28, 0x3eaced58, 0x3e907504, 0x3f7891e3,
|
||||
0x3ef32975, 0x3f4f56da, 0x3e3f3426, 0x3f486c1f,
|
||||
0x3f54d481, 0x3f6d556f, 0x3f2aab66, 0x3e67ef18,
|
||||
0x3f2529ae, 0x3f643d96, 0x3e60c27a, 0x3f118886,
|
||||
0x3f2c768a, 0x3f00cba2
|
||||
0x3f5c365d, 0x3ef5bcf3, 0x3f07c2f1, 0x3ec77fde,
|
||||
0x3f486f4c, 0x3f3b14d9, 0x3edf92dd, 0x3e040f3f,
|
||||
0x3da6d898, 0x3f64fc4b, 0x3ea6942e, 0x3ea8d19f,
|
||||
0x3f42aa22, 0x3f7af090, 0x3ea61c74, 0x3f16d69c,
|
||||
0x3f22d66d, 0x3f3eb358, 0x3edcc17a, 0x3d5cac41,
|
||||
0x3f6752c8, 0x3f30434e, 0x3f67dc39, 0x3f1f5f4d,
|
||||
0x3f55019b, 0x3e8e78c4, 0x3f1dc570, 0x3ea3619d,
|
||||
0x3e16932c, 0x3debb877, 0x3d04efe4, 0x3dda8cae,
|
||||
0x3f175d01, 0x3e613eca, 0x3f792ff1, 0x3f05cb9e,
|
||||
0x3efd21eb, 0x3f52d9bb, 0x3f635d8c, 0x3f3d78cc,
|
||||
0x3f75ca43, 0x3ed94cbd, 0x3f18cc07, 0x3f71cf57,
|
||||
0x3f1999e0, 0x3f3d7b64, 0x3eff331b, 0x3f09a083,
|
||||
0x3ec65238, 0x3e5daacc
|
||||
};
|
||||
|
||||
static const uint32_t in_sort[11] = {
|
||||
0x3e4939fb, 0xbe23ea22, 0x3e1e78b0, 0x3daea625,
|
||||
0x3f800000, 0x3e1cb268, 0xbf41dc56, 0x3f77973f,
|
||||
0xbe86db59, 0x3f4f0f2d, 0x3f58ebe8
|
||||
0x3e8b2005, 0xbe79828d, 0x3ec60533, 0xbecd84a4,
|
||||
0x3edef701, 0xbf020833, 0x3eae45f9, 0xbe23a0cf,
|
||||
0x3f5b587c, 0xbe77e106, 0xbf800000
|
||||
};
|
||||
|
||||
static const uint32_t in_sort_bitonic_16[16] = {
|
||||
0x3e8bbdf2, 0x3e86b1fc, 0x3e8d5f44, 0xbe0bbcb2,
|
||||
0xbd04aa5b, 0x3e6f9b30, 0x3e0614a0, 0x3f15c6df,
|
||||
0x3e4dd012, 0x3e7aa548, 0x3f73e0cd, 0xbf0fa47e,
|
||||
0xbf4810d2, 0xbf3defb2, 0xbf800000, 0xbd9e48bd
|
||||
0xbce9c2a9, 0xbe49aaa6, 0x3ed24897, 0x3ebe06f3,
|
||||
0xbde7297e, 0x3f0f81a4, 0x3daa5ff8, 0xbd74b8b1,
|
||||
0xbeb7404b, 0xbe0c8154, 0xbf800000, 0xbf1ac9af,
|
||||
0xbe7ebe48, 0xbe96e2f3, 0x3ea8d3ec, 0x3dcccc3f
|
||||
};
|
||||
|
||||
static const uint32_t in_sort_bitonic_32[32] = {
|
||||
0xbf2bcd3a, 0x3e212a25, 0xbe9a8ea5, 0x3de47310,
|
||||
0xbe86705a, 0xbcb6a09b, 0xbe9bd7a1, 0xbf800000,
|
||||
0xbe0f3050, 0x3d36c06f, 0x3eb8fc69, 0x3eb61331,
|
||||
0x3f612126, 0xbd88e263, 0xbf2bbd54, 0x3f3213c5,
|
||||
0xbdba2ac5, 0xbf242043, 0xbeae554d, 0x3e9947e0,
|
||||
0xbd044441, 0x3ef8b082, 0xbee44d50, 0x3d02f265,
|
||||
0xbf15c991, 0x3e4c9ce2, 0x3ea8f61b, 0xbf0e56f3,
|
||||
0x3e7b68a0, 0xbea597f8, 0xbcab90e5, 0xbeaa892f
|
||||
0x3de7ca48, 0x3e841924, 0xbf0ec9ee, 0xbd9234a0,
|
||||
0x3e57751c, 0x3d8ce6cb, 0xbed8c7f0, 0xbd2a8ea8,
|
||||
0x3e6e514e, 0xbefd1a2a, 0xbe972d7a, 0xbf800000,
|
||||
0x3dd11d1c, 0xbe3c1689, 0xbee8d12a, 0x3dc3dd48,
|
||||
0x3ece8f07, 0xbe4e84cb, 0x3e0db75f, 0x3cc96593,
|
||||
0xbf012b00, 0xbefeaa91, 0x3e506a2c, 0x3eb5a5a2,
|
||||
0xbf1abb67, 0x3e601f55, 0xbdf605d0, 0xbe81fc15,
|
||||
0xbf043534, 0x3d446123, 0xbf068a30, 0x3f2a6bfa
|
||||
};
|
||||
|
||||
static const uint32_t in_sort_const[16] = {
|
||||
0xbf800000, 0xbf800000, 0xbf800000, 0xbf800000,
|
||||
0xbf800000, 0xbf800000, 0xbf800000, 0xbf800000,
|
||||
0xbf800000, 0xbf800000, 0xbf800000, 0xbf800000,
|
||||
0xbf800000, 0xbf800000, 0xbf800000, 0xbf800000
|
||||
};
|
||||
|
||||
static const uint32_t in_spline_squ_x[4] = {
|
||||
0x0, 0x40400000, 0x41200000, 0x41a00000
|
||||
};
|
||||
|
||||
static const uint32_t in_spline_squ_y[4] = {
|
||||
0x0, 0x41100000, 0x42c80000, 0x43c80000
|
||||
};
|
||||
|
||||
static const uint32_t in_spline_squ_xq[20] = {
|
||||
0x0, 0x3f800000, 0x40000000, 0x40400000,
|
||||
0x40800000, 0x40a00000, 0x40c00000, 0x40e00000,
|
||||
0x41000000, 0x41100000, 0x41200000, 0x41300000,
|
||||
0x41400000, 0x41500000, 0x41600000, 0x41700000,
|
||||
0x41800000, 0x41880000, 0x41900000, 0x41980000
|
||||
};
|
||||
|
||||
static const uint32_t in_spline_sin_x[9] = {
|
||||
0x0, 0x3f490fdb, 0x3fc90fdb, 0x4016cbe4,
|
||||
0x40490fdb, 0x407b53d1, 0x4096cbe4, 0x40afeddf,
|
||||
0x40c90fdb
|
||||
};
|
||||
|
||||
static const uint32_t in_spline_sin_y[9] = {
|
||||
0x0, 0x3f3504f3, 0x3f800000, 0x3f3504f3,
|
||||
0x250d3132, 0xbf3504f3, 0xbf800000, 0xbf3504f3,
|
||||
0xa58d3132
|
||||
};
|
||||
|
||||
static const uint32_t in_spline_sin_xq[33] = {
|
||||
0x0, 0x3e490fdb, 0x3ec90fdb, 0x3f16cbe4,
|
||||
0x3f490fdb, 0x3f7b53d1, 0x3f96cbe4, 0x3fafeddf,
|
||||
0x3fc90fdb, 0x3fe231d6, 0x3ffb53d1, 0x400a3ae6,
|
||||
0x4016cbe4, 0x40235ce2, 0x402feddf, 0x403c7edd,
|
||||
0x40490fdb, 0x4055a0d8, 0x406231d6, 0x406ec2d4,
|
||||
0x407b53d1, 0x4083f267, 0x408a3ae6, 0x40908365,
|
||||
0x4096cbe4, 0x409d1463, 0x40a35ce2, 0x40a9a560,
|
||||
0x40afeddf, 0x40b6365e, 0x40bc7edd, 0x40c2c75c,
|
||||
0x40c90fdb
|
||||
};
|
||||
|
||||
static const uint32_t in_spline_ram_x[3] = {
|
||||
0x0, 0x40400000, 0x41200000
|
||||
};
|
||||
|
||||
static const uint32_t in_spline_ram_y[3] = {
|
||||
0x0, 0x40400000, 0x41200000
|
||||
};
|
||||
|
||||
static const uint32_t in_spline_ram_xq[30] = {
|
||||
0xc1200000, 0xc1100000, 0xc1000000, 0xc0e00000,
|
||||
0xc0c00000, 0xc0a00000, 0xc0800000, 0xc0400000,
|
||||
0xc0000000, 0xbf800000, 0x0, 0x3f800000,
|
||||
0x40000000, 0x40400000, 0x40800000, 0x40a00000,
|
||||
0x40c00000, 0x40e00000, 0x41000000, 0x41100000,
|
||||
0x41200000, 0x41300000, 0x41400000, 0x41500000,
|
||||
0x41600000, 0x41700000, 0x41800000, 0x41880000,
|
||||
0x41900000, 0x41980000
|
||||
0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000,
|
||||
0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000,
|
||||
0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000,
|
||||
0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000
|
||||
};
|
||||
|
||||
static const q31_t ref_q31[256] = {
|
||||
0x27DE0FCE, 0x683C9468, 0x7B7E4BEE, 0x5FF4C3D7,
|
||||
0x75D443C4, 0x6E03ADEF, 0x72987B80, 0x328A1C70,
|
||||
0x27B84C37, 0x77C16FE0, 0x778B7293, 0x0E21E060,
|
||||
0x09E4D304, 0x14FD4D26, 0x03847171, 0x46517C6A,
|
||||
0x71A229F3, 0x330C1B36, 0x76678531, 0x609186E3,
|
||||
0x60C70F92, 0x7AA849C5, 0x3B8EC4B1, 0x242B0622,
|
||||
0x3A31ED65, 0x3CD5C324, 0x67655882, 0x67C66BBF,
|
||||
0x692293C2, 0x5E8B3781, 0x300CAC64, 0x2B660ECD,
|
||||
0x1752FA47, 0x33FA9A88, 0x088864CB, 0x7CB758DA,
|
||||
0x36968AC0, 0x16189843, 0x1CFFD795, 0x7FA23671,
|
||||
0x409ECF8E, 0x20ED273B, 0x703CCC99, 0x5F4A80D2,
|
||||
0x32CA2D96, 0x78418D94, 0x6D8C7158, 0x0D1D17C2,
|
||||
0x41A1DEB3, 0x2A8FDE11, 0x4035A4AA, 0x28B44100,
|
||||
0x7EAB63A2, 0x7C94BCCA, 0x611C5D3E, 0x35AC0E23,
|
||||
0x48D9D54D, 0x03497AC7, 0x7FFA5468, 0x4AD32B2B,
|
||||
0x6CC4FB1C, 0x3A91D262, 0x2C45DD28, 0x47C6931F,
|
||||
0x298BCDB5, 0x14A1F920, 0x2CDAEAD1, 0x1D18C413,
|
||||
0x5B2A5E88, 0x493BD5A9, 0x657CCD64, 0x732A8533,
|
||||
0x69CE0761, 0x614CB0FE, 0x00B37DBF, 0x789435DA,
|
||||
0x77AE29BC, 0x1A586A44, 0x5B52F029, 0x0CB24AB3,
|
||||
0x1A728768, 0x12BB4430, 0x62640272, 0x3FCBDE7F,
|
||||
0x269F0BFA, 0x7F152B19, 0x40312882, 0x02F7C8B2,
|
||||
0x4928FF22, 0x57E921DB, 0x21A285D5, 0x71E11513,
|
||||
0x464F7737, 0x70D265EC, 0x17A34EE0, 0x29B6D2BE,
|
||||
0x3844AD4A, 0x5884D734, 0x412AFE7F, 0x79DAF95D,
|
||||
0x3E0BC247, 0x3F4BB891, 0x60C71B14, 0x231AF410,
|
||||
0x79051A58, 0x0A202325, 0x1C7AF3CE, 0x5164FD18,
|
||||
0x0E70ABDE, 0x15B5DB5F, 0x30C8B0EE, 0x110001E9,
|
||||
0x65D928FE, 0x23C6BB91, 0x353BB130, 0x4BDEAF7A,
|
||||
0x4361B470, 0x3E876BBB, 0x2262F0FE, 0x69F293A1,
|
||||
0x11A5FE48, 0x2E67863B, 0x360F28DE, 0x17866DD7,
|
||||
0x0654B0CA, 0x21E84711, 0x310D32A5, 0x200F47C8,
|
||||
0x13114774, 0x075F72B4, 0x6BB62C8A, 0x4C98A061,
|
||||
0x1A630B30, 0x32925DEC, 0x04A0A267, 0x0497ACDE,
|
||||
0x5A49FC16, 0x30122734, 0x1C8BC57C, 0x740C25EA,
|
||||
0x78ED6024, 0x1BE02A5B, 0x713FF4A2, 0x1008DB7B,
|
||||
0x5CE774D1, 0x38BD977C, 0x759BEB06, 0x097A6722,
|
||||
0x50FDFCD8, 0x4C11F4BE, 0x5391B25D, 0x1A2B4C89,
|
||||
0x5AD6AC56, 0x39CCA844, 0x1117ABE9, 0x31D50F57,
|
||||
0x1C0FDF40, 0x2BF8E961, 0x7B6457C0, 0x158C3507,
|
||||
0x4C85EF31, 0x0D67386C, 0x4D57C28C, 0x58B5F334,
|
||||
0x51E794E3, 0x0C75E178, 0x486205A5, 0x569E0CC1,
|
||||
0x77E31461, 0x0979CB41, 0x0E5C2C42, 0x1401F235,
|
||||
0x3BB2BC76, 0x551B9160, 0x13080DA1, 0x170C6C73,
|
||||
0x164888F1, 0x61913989, 0x4DEF5637, 0x63913C0D,
|
||||
0x2740D07A, 0x77FD3653, 0x0BF1F606, 0x4BAE448F,
|
||||
0x4D29B71C, 0x5B9197E8, 0x453E1463, 0x3E92149B,
|
||||
0x18C90928, 0x2F94158D, 0x358D7670, 0x34E1CF75,
|
||||
0x0A00B510, 0x47D331B4, 0x0AF870AD, 0x07491B35,
|
||||
0x108A843B, 0x12AE9A25, 0x6889F95A, 0x737FCF9F,
|
||||
0x561A2BBC, 0x6F15D5C5, 0x38E62A69, 0x3DD8E71F,
|
||||
0x0EE8E78E, 0x72B24913, 0x3B84559C, 0x1E70C44B,
|
||||
0x45B5B7D3, 0x2779EA69, 0x21EA2466, 0x5D1A4DCC,
|
||||
0x1E69B05D, 0x7FD584D8, 0x30AD233A, 0x1DA08922,
|
||||
0x0AFED23D, 0x7FFFFFFF, 0x7178B8BA, 0x283125AF,
|
||||
0x00DB571A, 0x12B3F39D, 0x6B28E665, 0x45047BB5,
|
||||
0x06BF42AE, 0x0F5C6C14, 0x3C177195, 0x50136970,
|
||||
0x786C8FEB, 0x27FA4443, 0x7F10D2D7, 0x1BBFDD9A,
|
||||
0x6B9514C0, 0x7DE88773, 0x52067AE2, 0x62D790F9,
|
||||
0x48EE8850, 0x32A0870C, 0x52963199, 0x404C4077,
|
||||
0x22C4F91E, 0x50AFA3FB, 0x74D43906, 0x49913D13,
|
||||
0x79830D45, 0x12F60187, 0x5BDB259F, 0x5E2AD4F3,
|
||||
0x7FEB56AC, 0x46C5B086, 0x19BFAF64, 0x268A976E,
|
||||
0x132EA745, 0x032C4960, 0x28A9A53C, 0x7D506BE8
|
||||
0x1F734226, 0x618731DC, 0x7DB0FBEB, 0x5F0D0508,
|
||||
0x48563944, 0x67200CAB, 0x32DB0685, 0x2E75D568,
|
||||
0x37DA80F9, 0x190E07DD, 0x45EB71ED, 0x59C7AD50,
|
||||
0x5665CFE0, 0x7F76C5C5, 0x6059B69C, 0x61955104,
|
||||
0x5F7E6885, 0x28964887, 0x4A03057F, 0x4EF21858,
|
||||
0x58BD469F, 0x28FC3DF2, 0x7590A9D6, 0x28D4628A,
|
||||
0x47BB4F53, 0x5B9EB56F, 0x29A3E03E, 0x700F45D1,
|
||||
0x7C5CC410, 0x6952EF47, 0x4AEE9857, 0x64C45711,
|
||||
0x260DECE5, 0x5A47A942, 0x08C89876, 0x0E6177FF,
|
||||
0x03FAFDD1, 0x605313C2, 0x6A79965A, 0x510B9535,
|
||||
0x2D92DEDE, 0x29BB8892, 0x4EAEC208, 0x1089D0AD,
|
||||
0x3035C40F, 0x0A193378, 0x1A02AF95, 0x46EFE5C6,
|
||||
0x28BE9E52, 0x4D3595D9, 0x7DFB1100, 0x0549AB47,
|
||||
0x7C98C90C, 0x7CF0F32D, 0x1267D482, 0x39354238,
|
||||
0x706E996D, 0x19B485B7, 0x7FB91033, 0x4377B598,
|
||||
0x0625B617, 0x53D04177, 0x65008E8E, 0x6F9DDC13,
|
||||
0x5237F50F, 0x76CF771D, 0x59B36D2E, 0x31AC5A11,
|
||||
0x4DD79FB6, 0x491FEECD, 0x7206A018, 0x542C1144,
|
||||
0x74832DFD, 0x55344642, 0x4B1C40A4, 0x417A6061,
|
||||
0x06D868E0, 0x5367A0C9, 0x00AAD7D3, 0x58857FBC,
|
||||
0x7D72A6B1, 0x2BB8BABD, 0x724D4DB7, 0x7C4CF3D4,
|
||||
0x12950030, 0x0F244080, 0x22DDDC99, 0x41F62434,
|
||||
0x478F2409, 0x567808C9, 0x135B079F, 0x2FAC1C0E,
|
||||
0x5CE5C4AC, 0x11E90218, 0x652B18A6, 0x0EBE2E6E,
|
||||
0x5DCACB8B, 0x49EDB6B6, 0x579584EF, 0x53F2794B,
|
||||
0x04222852, 0x40A75D90, 0x5782552A, 0x7BF6B5AC,
|
||||
0x2AD6B82D, 0x5F1BD83D, 0x6CDAFF3C, 0x0E5E5A38,
|
||||
0x0E3B576E, 0x500D4D67, 0x75CF0379, 0x748E1C24,
|
||||
0x6DCFC2C9, 0x0373620B, 0x76C034C0, 0x53842D09,
|
||||
0x0B6301EB, 0x6B620642, 0x30F5CC0B, 0x7CA39E36,
|
||||
0x7F49A009, 0x753C844A, 0x6DE49BEB, 0x4CF5C95D,
|
||||
0x2CDA5375, 0x079F3CD5, 0x63AB778A, 0x017B8006,
|
||||
0x755C9C83, 0x3613E404, 0x432B38DB, 0x7B0B5F84,
|
||||
0x6B47654B, 0x5151405B, 0x7CC2A1E3, 0x1C9A5BCE,
|
||||
0x41CCECBF, 0x365EC596, 0x5530BCF6, 0x22777328,
|
||||
0x6CC078F9, 0x4C03FB6B, 0x15E27321, 0x153E1B33,
|
||||
0x7DC9407B, 0x4C5741BE, 0x3982B31C, 0x493205F7,
|
||||
0x20BA9FF5, 0x27F48878, 0x4CF7AB2C, 0x66313680,
|
||||
0x402FF7E3, 0x008C6612, 0x7D7EB1D0, 0x1458FF0D,
|
||||
0x189B3B74, 0x0A9476F8, 0x11265313, 0x79DF544E,
|
||||
0x449EE08B, 0x76065204, 0x10E28120, 0x11936B78,
|
||||
0x7337331B, 0x7EB8AD6A, 0x2E120B25, 0x2F2ED77A,
|
||||
0x7AE3A75F, 0x1340CB2B, 0x3DE74739, 0x28811D15,
|
||||
0x77922783, 0x72DFF27A, 0x23A750C8, 0x0AC62F50,
|
||||
0x1E74D15D, 0x2C52EE5F, 0x78EA39F5, 0x798C95E8,
|
||||
0x0F514F0E, 0x47580FD2, 0x13005C5E, 0x181F8A54,
|
||||
0x76E5F877, 0x5FF4969A, 0x58447DF7, 0x1F211F1A,
|
||||
0x27C38FC4, 0x6CE554FA, 0x78FE359E, 0x107F9609,
|
||||
0x235E5687, 0x35B4DBF3, 0x17AE8359, 0x4332E29A,
|
||||
0x10771B86, 0x30DA6245, 0x183EB776, 0x5609DE89,
|
||||
0x482AE202, 0x1158B828, 0x7F658F85, 0x6F8E433B,
|
||||
0x46228BBC, 0x00C9B4AF, 0x634C540C, 0x1C1B1105,
|
||||
0x669B0540, 0x7D3483F9, 0x2A7959F1, 0x6A151A6E,
|
||||
0x6B8F29DF, 0x6ACF688C, 0x18EFC1D1, 0x0C2AE2BA,
|
||||
0x44AFB68A, 0x76B0BB16, 0x21C735EC, 0x3CD0F666,
|
||||
0x4B1190CF, 0x25E719F0, 0x5DC1C380, 0x1D721D77,
|
||||
0x5985AE6D, 0x44CD710A, 0x4A574B63, 0x7C729EA3,
|
||||
0x3280BA6D, 0x3089BD1E, 0x314CE10F, 0x4049731A,
|
||||
0x1154E82F, 0x1614C716, 0x2FF347BF, 0x63F638F3,
|
||||
0x0D181E32, 0x680E9733, 0x305C3594, 0x5A86D5EF,
|
||||
0x21291C9D, 0x5C11F548, 0x5CA142CB, 0x04753C0F,
|
||||
0x301AF688, 0x79BEF5A5, 0x6824A746, 0x31035622,
|
||||
0x0CAA662F, 0x633B6485, 0x291B9A63, 0x4EE094CA,
|
||||
0x3F94197C, 0x7661A4D6, 0x514690FE, 0x7FFFFFFF
|
||||
};
|
||||
|
||||
static const q15_t ref_q15[256] = {
|
||||
0x27DE, 0x683D, 0x7B7E, 0x5FF5, 0x75D4, 0x6E04, 0x7298, 0x328A,
|
||||
0x27B8, 0x77C1, 0x778B, 0x0E22, 0x09E5, 0x14FD, 0x0384, 0x4651,
|
||||
0x71A2, 0x330C, 0x7668, 0x6092, 0x60C7, 0x7AA8, 0x3B8F, 0x242B,
|
||||
0x3A32, 0x3CD6, 0x6765, 0x67C6, 0x6923, 0x5E8B, 0x300D, 0x2B66,
|
||||
0x1753, 0x33FB, 0x0888, 0x7CB7, 0x3697, 0x1619, 0x1D00, 0x7FA2,
|
||||
0x409F, 0x20ED, 0x703D, 0x5F4B, 0x32CA, 0x7842, 0x6D8C, 0x0D1D,
|
||||
0x41A2, 0x2A90, 0x4036, 0x28B4, 0x7EAB, 0x7C95, 0x611C, 0x35AC,
|
||||
0x48DA, 0x0349, 0x7FFA, 0x4AD3, 0x6CC5, 0x3A92, 0x2C46, 0x47C7,
|
||||
0x298C, 0x14A2, 0x2CDB, 0x1D19, 0x5B2A, 0x493C, 0x657D, 0x732B,
|
||||
0x69CE, 0x614D, 0x00B3, 0x7894, 0x77AE, 0x1A58, 0x5B53, 0x0CB2,
|
||||
0x1A73, 0x12BB, 0x6264, 0x3FCC, 0x269F, 0x7F15, 0x4031, 0x02F8,
|
||||
0x4929, 0x57E9, 0x21A3, 0x71E1, 0x464F, 0x70D2, 0x17A3, 0x29B7,
|
||||
0x3845, 0x5885, 0x412B, 0x79DB, 0x3E0C, 0x3F4C, 0x60C7, 0x231B,
|
||||
0x7905, 0x0A20, 0x1C7B, 0x5165, 0x0E71, 0x15B6, 0x30C9, 0x1100,
|
||||
0x65D9, 0x23C7, 0x353C, 0x4BDF, 0x4362, 0x3E87, 0x2263, 0x69F3,
|
||||
0x11A6, 0x2E68, 0x360F, 0x1786, 0x0655, 0x21E8, 0x310D, 0x200F,
|
||||
0x1311, 0x075F, 0x6BB6, 0x4C99, 0x1A63, 0x3292, 0x04A1, 0x0498,
|
||||
0x5A4A, 0x3012, 0x1C8C, 0x740C, 0x78ED, 0x1BE0, 0x7140, 0x1009,
|
||||
0x5CE7, 0x38BE, 0x759C, 0x097A, 0x50FE, 0x4C12, 0x5392, 0x1A2B,
|
||||
0x5AD7, 0x39CD, 0x1118, 0x31D5, 0x1C10, 0x2BF9, 0x7B64, 0x158C,
|
||||
0x4C86, 0x0D67, 0x4D58, 0x58B6, 0x51E8, 0x0C76, 0x4862, 0x569E,
|
||||
0x77E3, 0x097A, 0x0E5C, 0x1402, 0x3BB3, 0x551C, 0x1308, 0x170C,
|
||||
0x1649, 0x6191, 0x4DEF, 0x6391, 0x2741, 0x77FD, 0x0BF2, 0x4BAE,
|
||||
0x4D2A, 0x5B92, 0x453E, 0x3E92, 0x18C9, 0x2F94, 0x358D, 0x34E2,
|
||||
0x0A01, 0x47D3, 0x0AF8, 0x0749, 0x108B, 0x12AF, 0x688A, 0x7380,
|
||||
0x561A, 0x6F16, 0x38E6, 0x3DD9, 0x0EE9, 0x72B2, 0x3B84, 0x1E71,
|
||||
0x45B6, 0x277A, 0x21EA, 0x5D1A, 0x1E6A, 0x7FD6, 0x30AD, 0x1DA1,
|
||||
0x0AFF, 0x7FFF, 0x7179, 0x2831, 0x00DB, 0x12B4, 0x6B29, 0x4504,
|
||||
0x06BF, 0x0F5C, 0x3C17, 0x5013, 0x786D, 0x27FA, 0x7F11, 0x1BC0,
|
||||
0x6B95, 0x7DE9, 0x5206, 0x62D8, 0x48EF, 0x32A1, 0x5296, 0x404C,
|
||||
0x22C5, 0x50B0, 0x74D4, 0x4991, 0x7983, 0x12F6, 0x5BDB, 0x5E2B,
|
||||
0x7FEB, 0x46C6, 0x19C0, 0x268B, 0x132F, 0x032C, 0x28AA, 0x7D50
|
||||
0x1F73, 0x6187, 0x7DB1, 0x5F0D, 0x4856, 0x6720, 0x32DB, 0x2E76,
|
||||
0x37DB, 0x190E, 0x45EB, 0x59C8, 0x5666, 0x7F77, 0x605A, 0x6195,
|
||||
0x5F7E, 0x2896, 0x4A03, 0x4EF2, 0x58BD, 0x28FC, 0x7591, 0x28D4,
|
||||
0x47BB, 0x5B9F, 0x29A4, 0x700F, 0x7C5D, 0x6953, 0x4AEF, 0x64C4,
|
||||
0x260E, 0x5A48, 0x08C9, 0x0E61, 0x03FB, 0x6053, 0x6A7A, 0x510C,
|
||||
0x2D93, 0x29BC, 0x4EAF, 0x108A, 0x3036, 0x0A19, 0x1A03, 0x46F0,
|
||||
0x28BF, 0x4D36, 0x7DFB, 0x054A, 0x7C99, 0x7CF1, 0x1268, 0x3935,
|
||||
0x706F, 0x19B5, 0x7FB9, 0x4378, 0x0626, 0x53D0, 0x6501, 0x6F9E,
|
||||
0x5238, 0x76CF, 0x59B3, 0x31AC, 0x4DD8, 0x4920, 0x7207, 0x542C,
|
||||
0x7483, 0x5534, 0x4B1C, 0x417A, 0x06D8, 0x5368, 0x00AB, 0x5885,
|
||||
0x7D73, 0x2BB9, 0x724D, 0x7C4D, 0x1295, 0x0F24, 0x22DE, 0x41F6,
|
||||
0x478F, 0x5678, 0x135B, 0x2FAC, 0x5CE6, 0x11E9, 0x652B, 0x0EBE,
|
||||
0x5DCB, 0x49EE, 0x5796, 0x53F2, 0x0422, 0x40A7, 0x5782, 0x7BF7,
|
||||
0x2AD7, 0x5F1C, 0x6CDB, 0x0E5E, 0x0E3B, 0x500D, 0x75CF, 0x748E,
|
||||
0x6DD0, 0x0373, 0x76C0, 0x5384, 0x0B63, 0x6B62, 0x30F6, 0x7CA4,
|
||||
0x7F4A, 0x753D, 0x6DE5, 0x4CF6, 0x2CDA, 0x079F, 0x63AB, 0x017C,
|
||||
0x755D, 0x3614, 0x432B, 0x7B0B, 0x6B47, 0x5151, 0x7CC3, 0x1C9A,
|
||||
0x41CD, 0x365F, 0x5531, 0x2277, 0x6CC0, 0x4C04, 0x15E2, 0x153E,
|
||||
0x7DC9, 0x4C57, 0x3983, 0x4932, 0x20BB, 0x27F5, 0x4CF8, 0x6631,
|
||||
0x4030, 0x008C, 0x7D7F, 0x1459, 0x189B, 0x0A94, 0x1126, 0x79DF,
|
||||
0x449F, 0x7606, 0x10E3, 0x1193, 0x7337, 0x7EB9, 0x2E12, 0x2F2F,
|
||||
0x7AE4, 0x1341, 0x3DE7, 0x2881, 0x7792, 0x72E0, 0x23A7, 0x0AC6,
|
||||
0x1E75, 0x2C53, 0x78EA, 0x798D, 0x0F51, 0x4758, 0x1300, 0x1820,
|
||||
0x76E6, 0x5FF5, 0x5844, 0x1F21, 0x27C4, 0x6CE5, 0x78FE, 0x1080,
|
||||
0x235E, 0x35B5, 0x17AF, 0x4333, 0x1077, 0x30DA, 0x183F, 0x560A,
|
||||
0x482B, 0x1159, 0x7F66, 0x6F8E, 0x4623, 0x00CA, 0x634C, 0x1C1B,
|
||||
0x669B, 0x7D35, 0x2A79, 0x6A15, 0x6B8F, 0x6ACF, 0x18F0, 0x0C2B,
|
||||
0x44B0, 0x76B1, 0x21C7, 0x3CD1, 0x4B12, 0x25E7, 0x5DC2, 0x1D72,
|
||||
0x5986, 0x44CD, 0x4A57, 0x7C73, 0x3281, 0x308A, 0x314D, 0x4049,
|
||||
0x1155, 0x1615, 0x2FF3, 0x63F6, 0x0D18, 0x680F, 0x305C, 0x5A87,
|
||||
0x2129, 0x5C12, 0x5CA1, 0x0475, 0x301B, 0x79BF, 0x6825, 0x3103,
|
||||
0x0CAA, 0x633B, 0x291C, 0x4EE1, 0x3F94, 0x7662, 0x5147, 0x7FFF
|
||||
};
|
||||
|
||||
static const q7_t ref_q7[256] = {
|
||||
0x28, 0x68, 0x7B, 0x60, 0x76, 0x6E, 0x73, 0x33,
|
||||
0x28, 0x78, 0x78, 0x0E, 0x0A, 0x15, 0x04, 0x46,
|
||||
0x72, 0x33, 0x76, 0x61, 0x61, 0x7B, 0x3C, 0x24,
|
||||
0x3A, 0x3D, 0x67, 0x68, 0x69, 0x5F, 0x30, 0x2B,
|
||||
0x17, 0x34, 0x09, 0x7D, 0x37, 0x16, 0x1D, 0x7F,
|
||||
0x41, 0x21, 0x70, 0x5F, 0x33, 0x78, 0x6E, 0x0D,
|
||||
0x42, 0x2B, 0x40, 0x29, 0x7F, 0x7D, 0x61, 0x36,
|
||||
0x49, 0x03, 0x7F, 0x4B, 0x6D, 0x3B, 0x2C, 0x48,
|
||||
0x2A, 0x15, 0x2D, 0x1D, 0x5B, 0x49, 0x65, 0x73,
|
||||
0x6A, 0x61, 0x01, 0x79, 0x78, 0x1A, 0x5B, 0x0D,
|
||||
0x1A, 0x13, 0x62, 0x40, 0x27, 0x7F, 0x40, 0x03,
|
||||
0x49, 0x58, 0x22, 0x72, 0x46, 0x71, 0x18, 0x2A,
|
||||
0x38, 0x59, 0x41, 0x7A, 0x3E, 0x3F, 0x61, 0x23,
|
||||
0x79, 0x0A, 0x1C, 0x51, 0x0E, 0x16, 0x31, 0x11,
|
||||
0x66, 0x24, 0x35, 0x4C, 0x43, 0x3F, 0x22, 0x6A,
|
||||
0x12, 0x2E, 0x36, 0x18, 0x06, 0x22, 0x31, 0x20,
|
||||
0x13, 0x07, 0x6C, 0x4D, 0x1A, 0x33, 0x05, 0x05,
|
||||
0x5A, 0x30, 0x1D, 0x74, 0x79, 0x1C, 0x71, 0x10,
|
||||
0x5D, 0x39, 0x76, 0x09, 0x51, 0x4C, 0x54, 0x1A,
|
||||
0x5B, 0x3A, 0x11, 0x32, 0x1C, 0x2C, 0x7B, 0x16,
|
||||
0x4D, 0x0D, 0x4D, 0x59, 0x52, 0x0C, 0x48, 0x57,
|
||||
0x78, 0x09, 0x0E, 0x14, 0x3C, 0x55, 0x13, 0x17,
|
||||
0x16, 0x62, 0x4E, 0x64, 0x27, 0x78, 0x0C, 0x4C,
|
||||
0x4D, 0x5C, 0x45, 0x3F, 0x19, 0x30, 0x36, 0x35,
|
||||
0x0A, 0x48, 0x0B, 0x07, 0x11, 0x13, 0x69, 0x73,
|
||||
0x56, 0x6F, 0x39, 0x3E, 0x0F, 0x73, 0x3C, 0x1E,
|
||||
0x46, 0x27, 0x22, 0x5D, 0x1E, 0x7F, 0x31, 0x1E,
|
||||
0x0B, 0x7F, 0x71, 0x28, 0x01, 0x13, 0x6B, 0x45,
|
||||
0x07, 0x0F, 0x3C, 0x50, 0x78, 0x28, 0x7F, 0x1C,
|
||||
0x6C, 0x7E, 0x52, 0x63, 0x49, 0x33, 0x53, 0x40,
|
||||
0x23, 0x51, 0x75, 0x4A, 0x7A, 0x13, 0x5C, 0x5E,
|
||||
0x7F, 0x47, 0x1A, 0x27, 0x13, 0x03, 0x29, 0x7D
|
||||
0x1F, 0x62, 0x7E, 0x5F, 0x48, 0x67, 0x33, 0x2E,
|
||||
0x38, 0x19, 0x46, 0x5A, 0x56, 0x7F, 0x60, 0x62,
|
||||
0x5F, 0x29, 0x4A, 0x4F, 0x59, 0x29, 0x76, 0x29,
|
||||
0x48, 0x5C, 0x2A, 0x70, 0x7C, 0x69, 0x4B, 0x65,
|
||||
0x26, 0x5A, 0x09, 0x0E, 0x04, 0x60, 0x6A, 0x51,
|
||||
0x2E, 0x2A, 0x4F, 0x11, 0x30, 0x0A, 0x1A, 0x47,
|
||||
0x29, 0x4D, 0x7E, 0x05, 0x7D, 0x7D, 0x12, 0x39,
|
||||
0x70, 0x1A, 0x7F, 0x43, 0x06, 0x54, 0x65, 0x70,
|
||||
0x52, 0x77, 0x5A, 0x32, 0x4E, 0x49, 0x72, 0x54,
|
||||
0x75, 0x55, 0x4B, 0x41, 0x07, 0x53, 0x01, 0x59,
|
||||
0x7D, 0x2C, 0x72, 0x7C, 0x13, 0x0F, 0x23, 0x42,
|
||||
0x48, 0x56, 0x13, 0x30, 0x5D, 0x12, 0x65, 0x0F,
|
||||
0x5E, 0x4A, 0x58, 0x54, 0x04, 0x41, 0x58, 0x7C,
|
||||
0x2B, 0x5F, 0x6D, 0x0E, 0x0E, 0x50, 0x76, 0x75,
|
||||
0x6E, 0x03, 0x77, 0x54, 0x0B, 0x6B, 0x31, 0x7D,
|
||||
0x7F, 0x75, 0x6E, 0x4D, 0x2D, 0x08, 0x64, 0x01,
|
||||
0x75, 0x36, 0x43, 0x7B, 0x6B, 0x51, 0x7D, 0x1D,
|
||||
0x42, 0x36, 0x55, 0x22, 0x6D, 0x4C, 0x16, 0x15,
|
||||
0x7E, 0x4C, 0x3A, 0x49, 0x21, 0x28, 0x4D, 0x66,
|
||||
0x40, 0x01, 0x7D, 0x14, 0x19, 0x0B, 0x11, 0x7A,
|
||||
0x45, 0x76, 0x11, 0x12, 0x73, 0x7F, 0x2E, 0x2F,
|
||||
0x7B, 0x13, 0x3E, 0x29, 0x78, 0x73, 0x24, 0x0B,
|
||||
0x1E, 0x2C, 0x79, 0x7A, 0x0F, 0x47, 0x13, 0x18,
|
||||
0x77, 0x60, 0x58, 0x1F, 0x28, 0x6D, 0x79, 0x10,
|
||||
0x23, 0x36, 0x18, 0x43, 0x10, 0x31, 0x18, 0x56,
|
||||
0x48, 0x11, 0x7F, 0x70, 0x46, 0x01, 0x63, 0x1C,
|
||||
0x67, 0x7D, 0x2A, 0x6A, 0x6C, 0x6B, 0x19, 0x0C,
|
||||
0x45, 0x77, 0x22, 0x3D, 0x4B, 0x26, 0x5E, 0x1D,
|
||||
0x5A, 0x45, 0x4A, 0x7C, 0x33, 0x31, 0x31, 0x40,
|
||||
0x11, 0x16, 0x30, 0x64, 0x0D, 0x68, 0x30, 0x5B,
|
||||
0x21, 0x5C, 0x5D, 0x04, 0x30, 0x7A, 0x68, 0x31,
|
||||
0x0D, 0x63, 0x29, 0x4F, 0x40, 0x76, 0x51, 0x7F
|
||||
};
|
||||
|
||||
static const uint32_t ref_weighted_sum[3] = {
|
||||
0x3f225f21, 0x3f015b8e, 0x3ee3eba8
|
||||
0x3f1c763e, 0x3ed2a7ac, 0x3eeb33c8
|
||||
};
|
||||
|
||||
static const uint32_t ref_sort[11] = {
|
||||
0xbf41dc56, 0xbe86db59, 0xbe23ea22, 0x3daea625,
|
||||
0x3e1cb268, 0x3e1e78b0, 0x3e4939fb, 0x3f4f0f2d,
|
||||
0x3f58ebe8, 0x3f77973f, 0x3f800000
|
||||
0xbf800000, 0xbf020833, 0xbecd84a4, 0xbe79828d,
|
||||
0xbe77e106, 0xbe23a0cf, 0x3e8b2005, 0x3eae45f9,
|
||||
0x3ec60533, 0x3edef701, 0x3f5b587c
|
||||
};
|
||||
|
||||
static const uint32_t ref_sort_bitonic_16[16] = {
|
||||
0xbf800000, 0xbf4810d2, 0xbf3defb2, 0xbf0fa47e,
|
||||
0xbe0bbcb2, 0xbd9e48bd, 0xbd04aa5b, 0x3e0614a0,
|
||||
0x3e4dd012, 0x3e6f9b30, 0x3e7aa548, 0x3e86b1fc,
|
||||
0x3e8bbdf2, 0x3e8d5f44, 0x3f15c6df, 0x3f73e0cd
|
||||
0xbf800000, 0xbf1ac9af, 0xbeb7404b, 0xbe96e2f3,
|
||||
0xbe7ebe48, 0xbe49aaa6, 0xbe0c8154, 0xbde7297e,
|
||||
0xbd74b8b1, 0xbce9c2a9, 0x3daa5ff8, 0x3dcccc3f,
|
||||
0x3ea8d3ec, 0x3ebe06f3, 0x3ed24897, 0x3f0f81a4
|
||||
};
|
||||
|
||||
static const uint32_t ref_sort_bitonic_32[32] = {
|
||||
0xbf800000, 0xbf2bcd3a, 0xbf2bbd54, 0xbf242043,
|
||||
0xbf15c991, 0xbf0e56f3, 0xbee44d50, 0xbeae554d,
|
||||
0xbeaa892f, 0xbea597f8, 0xbe9bd7a1, 0xbe9a8ea5,
|
||||
0xbe86705a, 0xbe0f3050, 0xbdba2ac5, 0xbd88e263,
|
||||
0xbd044441, 0xbcb6a09b, 0xbcab90e5, 0x3d02f265,
|
||||
0x3d36c06f, 0x3de47310, 0x3e212a25, 0x3e4c9ce2,
|
||||
0x3e7b68a0, 0x3e9947e0, 0x3ea8f61b, 0x3eb61331,
|
||||
0x3eb8fc69, 0x3ef8b082, 0x3f3213c5, 0x3f612126
|
||||
0xbf800000, 0xbf1abb67, 0xbf0ec9ee, 0xbf068a30,
|
||||
0xbf043534, 0xbf012b00, 0xbefeaa91, 0xbefd1a2a,
|
||||
0xbee8d12a, 0xbed8c7f0, 0xbe972d7a, 0xbe81fc15,
|
||||
0xbe4e84cb, 0xbe3c1689, 0xbdf605d0, 0xbd9234a0,
|
||||
0xbd2a8ea8, 0x3cc96593, 0x3d446123, 0x3d8ce6cb,
|
||||
0x3dc3dd48, 0x3dd11d1c, 0x3de7ca48, 0x3e0db75f,
|
||||
0x3e506a2c, 0x3e57751c, 0x3e601f55, 0x3e6e514e,
|
||||
0x3e841924, 0x3eb5a5a2, 0x3ece8f07, 0x3f2a6bfa
|
||||
};
|
||||
|
||||
static const uint32_t ref_sort_const[16] = {
|
||||
0xbf800000, 0xbf800000, 0xbf800000, 0xbf800000,
|
||||
0xbf800000, 0xbf800000, 0xbf800000, 0xbf800000,
|
||||
0xbf800000, 0xbf800000, 0xbf800000, 0xbf800000,
|
||||
0xbf800000, 0xbf800000, 0xbf800000, 0xbf800000
|
||||
};
|
||||
|
||||
static const uint32_t ref_spline_squ[20] = {
|
||||
0x0, 0x3f800000, 0x40800000, 0x41100000,
|
||||
0x41800000, 0x41c80000, 0x42100000, 0x42440000,
|
||||
0x42800000, 0x42a20000, 0x42c80000, 0x42f20000,
|
||||
0x43100000, 0x43290000, 0x43440000, 0x43610000,
|
||||
0x43800000, 0x43908000, 0x43a20000, 0x43b48000
|
||||
};
|
||||
|
||||
static const uint32_t ref_spline_sin[33] = {
|
||||
0x0, 0x3e476168, 0x3ec3b551, 0x3f0e30df,
|
||||
0x3f3504f3, 0x3f54aebc, 0x3f6c3da3, 0x3f7aeef6,
|
||||
0x3f800000, 0x3f7aeef6, 0x3f6c3da3, 0x3f54aebc,
|
||||
0x3f3504f3, 0x3f0e30df, 0x3ec3b551, 0x3e476168,
|
||||
0x250d3132, 0xbe476168, 0xbec3b551, 0xbf0e30df,
|
||||
0xbf3504f3, 0xbf54aebc, 0xbf6c3da3, 0xbf7aeef6,
|
||||
0xbf800000, 0xbf7aeef6, 0xbf6c3da3, 0xbf54aebc,
|
||||
0xbf3504f3, 0xbf0e30df, 0xbec3b551, 0xbe476168,
|
||||
0xa5a00000
|
||||
};
|
||||
|
||||
static const uint32_t ref_spline_ram[30] = {
|
||||
0xc1200000, 0xc1100000, 0xc1000000, 0xc0e00000,
|
||||
0xc0c00000, 0xc0a00000, 0xc0800000, 0xc0400000,
|
||||
0xc0000000, 0xbf800000, 0x0, 0x3f800000,
|
||||
0x40000000, 0x40400000, 0x40800000, 0x40a00000,
|
||||
0x40c00000, 0x40e00000, 0x41000000, 0x41100000,
|
||||
0x41200000, 0x41300000, 0x41400000, 0x41500000,
|
||||
0x41600000, 0x41700000, 0x41800000, 0x41880000,
|
||||
0x41900000, 0x41980000
|
||||
0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000,
|
||||
0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000,
|
||||
0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000,
|
||||
0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue