tests: lib: cmsis_dsp: statistics: Update Q15 tests for 1.9.0
This commit updates the statistics Q15 test patterns and implementations for the CMSIS-DSP 1.9.0. Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit is contained in:
parent
d50224f5c8
commit
fd9fe09d96
2 changed files with 109 additions and 4 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
|
||||
*/
|
||||
|
@ -59,6 +59,48 @@ DEFINE_TEST_VARIANT3(arm_min_q15, 7, in_com1, 0, 7);
|
|||
DEFINE_TEST_VARIANT3(arm_min_q15, 16, in_com1, 1, 16);
|
||||
DEFINE_TEST_VARIANT3(arm_min_q15, 23, in_com1, 2, 23);
|
||||
|
||||
static void test_arm_absmax_q15(
|
||||
const q15_t *input1, int ref_index, size_t length)
|
||||
{
|
||||
q15_t val;
|
||||
uint32_t index;
|
||||
|
||||
/* Run test function */
|
||||
arm_absmax_q15(input1, length, &val, &index);
|
||||
|
||||
/* Validate output */
|
||||
zassert_equal(val, ref_absmax_val[ref_index],
|
||||
ASSERT_MSG_INCORRECT_COMP_RESULT);
|
||||
|
||||
zassert_equal(index, ref_absmax_idx[ref_index],
|
||||
ASSERT_MSG_INCORRECT_COMP_RESULT);
|
||||
}
|
||||
|
||||
DEFINE_TEST_VARIANT3(arm_absmax_q15, 7, in_absminmax, 0, 7);
|
||||
DEFINE_TEST_VARIANT3(arm_absmax_q15, 16, in_absminmax, 1, 16);
|
||||
DEFINE_TEST_VARIANT3(arm_absmax_q15, 23, in_absminmax, 2, 23);
|
||||
|
||||
static void test_arm_absmin_q15(
|
||||
const q15_t *input1, int ref_index, size_t length)
|
||||
{
|
||||
q15_t val;
|
||||
uint32_t index;
|
||||
|
||||
/* Run test function */
|
||||
arm_absmin_q15(input1, length, &val, &index);
|
||||
|
||||
/* Validate output */
|
||||
zassert_equal(val, ref_absmin_val[ref_index],
|
||||
ASSERT_MSG_INCORRECT_COMP_RESULT);
|
||||
|
||||
zassert_equal(index, ref_absmin_idx[ref_index],
|
||||
ASSERT_MSG_INCORRECT_COMP_RESULT);
|
||||
}
|
||||
|
||||
DEFINE_TEST_VARIANT3(arm_absmin_q15, 7, in_absminmax, 0, 7);
|
||||
DEFINE_TEST_VARIANT3(arm_absmin_q15, 16, in_absminmax, 1, 16);
|
||||
DEFINE_TEST_VARIANT3(arm_absmin_q15, 23, in_absminmax, 2, 23);
|
||||
|
||||
static void test_arm_mean_q15(
|
||||
const q15_t *input1, int ref_index, size_t length)
|
||||
{
|
||||
|
@ -233,6 +275,12 @@ void test_statistics_q15(void)
|
|||
ztest_unit_test(test_arm_min_q15_7),
|
||||
ztest_unit_test(test_arm_min_q15_16),
|
||||
ztest_unit_test(test_arm_min_q15_23),
|
||||
ztest_unit_test(test_arm_absmax_q15_7),
|
||||
ztest_unit_test(test_arm_absmax_q15_16),
|
||||
ztest_unit_test(test_arm_absmax_q15_23),
|
||||
ztest_unit_test(test_arm_absmin_q15_7),
|
||||
ztest_unit_test(test_arm_absmin_q15_16),
|
||||
ztest_unit_test(test_arm_absmin_q15_23),
|
||||
ztest_unit_test(test_arm_mean_q15_7),
|
||||
ztest_unit_test(test_arm_mean_q15_16),
|
||||
ztest_unit_test(test_arm_mean_q15_23),
|
||||
|
|
61
tests/lib/cmsis_dsp/statistics/src/q15.pat
generated
61
tests/lib/cmsis_dsp/statistics/src/q15.pat
generated
|
@ -80,11 +80,52 @@ static const q15_t in_com2[300] = {
|
|||
0x1C64, 0x1441, 0x1CAC, 0x1155
|
||||
};
|
||||
|
||||
static const q15_t in_absminmax[300] = {
|
||||
0xDEEE, 0x26B1, 0x289F, 0x2227, 0x033B, 0xE000, 0xEA27, 0xFC9F,
|
||||
0x02B7, 0x1881, 0x02DF, 0xD076, 0x2186, 0xE12E, 0xE27A, 0x2C65,
|
||||
0x0F63, 0xD5EB, 0x5BBE, 0xFB7F, 0x525A, 0xD88E, 0xF583, 0x3C9B,
|
||||
0xCEA3, 0xF446, 0x4382, 0xDA61, 0x1FB7, 0xEA48, 0x3623, 0x4BD6,
|
||||
0x0A93, 0x0B1D, 0x0DE0, 0x0F89, 0xB6ED, 0x087E, 0x5A61, 0xD4C3,
|
||||
0x45A6, 0xCD0C, 0x0210, 0x1EE8, 0xFB48, 0x2104, 0xF8E3, 0x129B,
|
||||
0x09B4, 0xF0BA, 0xBB4C, 0xCEAC, 0xBF0A, 0x27C7, 0x0E6E, 0x1072,
|
||||
0x53AC, 0x0A15, 0xFB59, 0xDDF1, 0xB089, 0x275D, 0xE2FB, 0x1DE5,
|
||||
0x434C, 0x3AA7, 0xEA86, 0x8000, 0x41C6, 0x2857, 0xFFAC, 0x093D,
|
||||
0xDA55, 0xCA67, 0xF387, 0xE32D, 0x03C3, 0x0469, 0xEB02, 0x269B,
|
||||
0x17AC, 0x257A, 0x0E5C, 0x9860, 0x162A, 0x1AEF, 0xEF10, 0x4ECE,
|
||||
0x34ED, 0x61FE, 0xF2C6, 0xEE46, 0x195D, 0x429F, 0xF37A, 0xE194,
|
||||
0x5C5D, 0x1234, 0x0D37, 0x2935, 0x4670, 0xF2EF, 0x408B, 0x1F38,
|
||||
0x0FCA, 0xA277, 0x1EDE, 0x02FF, 0xC2C0, 0x0F27, 0x404A, 0xC651,
|
||||
0xDB58, 0xFC98, 0x183D, 0x2C7D, 0xE66C, 0xF184, 0xE4B2, 0xCA1B,
|
||||
0x0C65, 0x3A81, 0xE81F, 0xFE65, 0xB11D, 0xE23C, 0x0120, 0xEF25,
|
||||
0xC896, 0x0354, 0x04D6, 0x75D5, 0xE578, 0x1001, 0xEF89, 0x208C,
|
||||
0xF83A, 0x026E, 0x8789, 0x4064, 0x136A, 0x02AB, 0xFE65, 0xF10B,
|
||||
0xDFDD, 0xF15F, 0xDD10, 0xDB82, 0x1339, 0x15F5, 0xF6AA, 0xE8AD,
|
||||
0xF6F4, 0x2361, 0xAE65, 0xF0B4, 0x2454, 0x51D9, 0x1E70, 0x450F,
|
||||
0xCFA0, 0xD7DE, 0x3F61, 0xF974, 0xDD16, 0x2D3D, 0x0DA5, 0x2288,
|
||||
0xE5C7, 0xE762, 0xB16B, 0x308D, 0x03B2, 0xEEAB, 0x016B, 0x1FDA,
|
||||
0xC86B, 0xDBB7, 0x0ECB, 0x1755, 0xB552, 0x33BD, 0x2214, 0x13AA,
|
||||
0x3784, 0xC80A, 0x247E, 0xF1A8, 0x2683, 0x1AB4, 0xE151, 0x13EC,
|
||||
0x1D27, 0x4E8E, 0xFF2F, 0x1789, 0xD963, 0xEE9E, 0xF8C0, 0x1435,
|
||||
0xCC8F, 0x1EAF, 0xF1E9, 0xF43B, 0x0B57, 0xD0C5, 0x3188, 0xECA2,
|
||||
0x3A97, 0xFD2A, 0xFEEE, 0xBCF0, 0x1852, 0xDA62, 0x198A, 0xDA7D,
|
||||
0xD1CA, 0xA6C4, 0x0046, 0xE5CE, 0x1694, 0x0D7B, 0xF2A7, 0x246A,
|
||||
0xEBA3, 0x38FF, 0xF0C5, 0x4697, 0xCFF3, 0x2CD9, 0xC06D, 0x2B2F,
|
||||
0x2672, 0xD4B6, 0xCA48, 0xF855, 0xE918, 0xEE94, 0x13A3, 0x3F0C,
|
||||
0x1377, 0x02BA, 0xEDB6, 0x1D58, 0xDE73, 0x3E92, 0xDDE8, 0x0F1B,
|
||||
0x05BB, 0xED4C, 0xD20D, 0x071B, 0x34E4, 0x79A3, 0xD997, 0x3C03,
|
||||
0xF861, 0x2B30, 0x933B, 0xC32B, 0xDEEC, 0xED21, 0xE328, 0x3282,
|
||||
0x3E64, 0xD0BC, 0xF4E5, 0x097A, 0x3625, 0xF885, 0xEB67, 0xEC51,
|
||||
0xABC4, 0x513A, 0x24FD, 0x2ED4, 0xDFB4, 0xDEA5, 0xBE4F, 0x26A1,
|
||||
0x1F40, 0x0851, 0x0190, 0xDD84, 0x085A, 0xFE3C, 0xDB38, 0xD5FD,
|
||||
0x2573, 0xF659, 0x2A68, 0x0415, 0xCE22, 0x10BE, 0xB070, 0x1A6C,
|
||||
0xC460, 0xD33C, 0x2BDB, 0xD686
|
||||
};
|
||||
|
||||
static const q15_t ref_max_val[3] = {
|
||||
0x4CFA, 0x4CFA, 0x5D02
|
||||
};
|
||||
|
||||
static const q15_t ref_max_idx[3] = {
|
||||
static const uint16_t ref_max_idx[3] = {
|
||||
0x0004, 0x0004, 0x0012
|
||||
};
|
||||
|
||||
|
@ -92,10 +133,26 @@ static const q15_t ref_min_val[3] = {
|
|||
0xD108, 0xB149, 0xB149
|
||||
};
|
||||
|
||||
static const q15_t ref_min_idx[3] = {
|
||||
static const uint16_t ref_min_idx[3] = {
|
||||
0x0000, 0x0007, 0x0007
|
||||
};
|
||||
|
||||
static const q15_t ref_absmax_val[3] = {
|
||||
0x289F, 0x2F8A, 0x5BBE
|
||||
};
|
||||
|
||||
static const uint16_t ref_absmax_idx[3] = {
|
||||
0x0002, 0x000B, 0x0012
|
||||
};
|
||||
|
||||
static const q15_t ref_absmin_val[3] = {
|
||||
0x033B, 0x02B7, 0x02B7
|
||||
};
|
||||
|
||||
static const uint16_t ref_absmin_idx[3] = {
|
||||
0x0004, 0x0008, 0x0008
|
||||
};
|
||||
|
||||
static const q15_t ref_mean[4] = {
|
||||
0x2968, 0x26C9, 0x2A98, 0x2684
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue