XCORE SDK
XCORE Software Development Kit
rand_frame.h
1 // Copyright 2021-2022 XMOS LIMITED.
2 // This Software is subject to the terms of the XMOS Public Licence: Version 1.
3 // XMOS Public License: Version 1
4 
5 #pragma once
6 
7 #include "bfp_math.h"
8 
9 
10 EXTERN_C
11 unsigned test_random_vect_s16(
12  int16_t vect[],
13  unsigned* seed,
14  const unsigned min_length,
15  const unsigned max_length,
16  const unsigned min_headroom,
17  const unsigned max_headroom);
18 
19 EXTERN_C
20 unsigned test_random_vect_s32(
21  int32_t vect[],
22  unsigned* seed,
23  const unsigned min_length,
24  const unsigned max_length,
25  const unsigned min_headroom,
26  const unsigned max_headroom);
27 
28 EXTERN_C
29 unsigned test_random_vect_complex_s32(
30  complex_s32_t vect[],
31  unsigned* seed,
32  const unsigned min_length,
33  const unsigned max_length,
34  const unsigned min_headroom,
35  const unsigned max_headroom);
36 
37 EXTERN_C
38 unsigned test_random_vect_complex_s16(
39  int16_t vect_re[],
40  int16_t vect_im[],
41  unsigned* seed,
42  const unsigned min_length,
43  const unsigned max_length,
44  const unsigned min_headroom,
45  const unsigned max_headroom);
46 
47 EXTERN_C
48 void test_random_bfp_s16(
49  bfp_s16_t* B,
50  unsigned max_len,
51  unsigned* seed,
52  bfp_s16_t* A,
53  int length);
54 
55 
56 EXTERN_C
57 void test_random_bfp_s32(
58  bfp_s32_t* B,
59  unsigned max_len,
60  unsigned* seed,
61  bfp_s32_t* A,
62  int length);
63 
64 EXTERN_C
65 void test_random_bfp_complex_s16(
67  unsigned max_len,
68  unsigned* seed,
70  int length);
71 
72 EXTERN_C
73 void test_random_bfp_complex_s32(
75  unsigned max_len,
76  unsigned* seed,
78  int length);
79 
80 EXTERN_C
81 void test_double_from_s16(
82  double* d_out,
83  bfp_s16_t* d_in);
84 
85 EXTERN_C
86 void test_double_from_s32(
87  double* d_out,
88  bfp_s32_t* d_in);
89 
90 EXTERN_C
91 void test_double_from_complex_s16(
92  double* d_out_real,
93  double* d_out_imag,
94  bfp_complex_s16_t* d_in);
95 
96 EXTERN_C
97 void test_double_from_complex_s32(
98  double* d_out_real,
99  double* d_out_imag,
100  bfp_complex_s32_t* d_in);
101 
102 
103 EXTERN_C
104 void test_s16_from_double(
105  int16_t* d_out,
106  double* d_in,
107  unsigned length,
108  exponent_t use_exp);
109 
110 
111 EXTERN_C
112 void test_s32_from_double(
113  int32_t* d_out,
114  double* d_in,
115  unsigned length,
116  exponent_t use_exp);
117 
118 
119 EXTERN_C
120 void test_complex_s16_from_double(
121  int16_t* d_out_real,
122  int16_t* d_out_imag,
123  double* d_in_real,
124  double* d_in_imag,
125  unsigned length,
126  exponent_t use_exp);
127 
128 
129 EXTERN_C
130 void test_complex_s32_from_double(
131  complex_s32_t* d_out,
132  double* d_in_real,
133  double* d_in_imag,
134  unsigned length,
135  exponent_t use_exp);
int exponent_t
An exponent.
Definition: xs3_math_types.h:76
[bfp_complex_s32_t]
Definition: xs3_math_types.h:371
[bfp_s16_t]
Definition: xs3_math_types.h:340
[bfp_s32_t]
Definition: xs3_math_types.h:309
A block floating-point vector of 32-bit elements.
Definition: xs3_math_types.h:276
A complex number with a 32-bit real part and 32-bit imaginary part.
Definition: xs3_math_types.h:49