Skip to content

Commit 1b04bc6

Browse files
author
Vineeth K
committed
MCU16GITHUB-1278 - FFT Twid factor corrected.
1 parent ea0baf6 commit 1b04bc6

File tree

1 file changed

+56
-57
lines changed

1 file changed

+56
-57
lines changed

dspic33e-fft-dsplib/firmware/src/twiddle_factors.c

+56-57
Original file line numberDiff line numberDiff line change
@@ -44,72 +44,71 @@ SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
4444
#if (FFT_BLOCK_LENGTH == 64)
4545
const fractcomplex twiddleFactors[] __attribute__ ((space(auto_psv), aligned (FFT_BLOCK_LENGTH*2)))=
4646
{
47-
0x7FFF, 0x0000, 0x7F62, 0xF374, 0x7D8A, 0xE707, 0x7A7D, 0xDAD8,
48-
0x7642, 0xCF04, 0x70E3, 0xC3A9, 0x6A6E, 0xB8E3, 0x62F2, 0xAECC,
49-
0x5A82, 0xA57E, 0x5134, 0x9D0E, 0x471D, 0x9592, 0x3C57, 0x8F1D,
50-
0x30FC, 0x89BE, 0x2528, 0x8583, 0x18F9, 0x8276, 0x0C8C, 0x809E,
51-
0x0000, 0x8000, 0xF374, 0x809E, 0xE707, 0x8276, 0xDAD8, 0x8583,
52-
0xCF04, 0x89BE, 0xC3A9, 0x8F1D, 0xB8E3, 0x9592, 0xAECC, 0x9D0E,
53-
0xA57D, 0xA57D, 0x9D0E, 0xAECC, 0x9592, 0xB8E3, 0x8F1D, 0xC3A9,
54-
0x89BE, 0xCF04, 0x8583, 0xDAD8, 0x8276, 0xE707, 0x809E, 0xF374
47+
{ 0x7fff , 0x0000 }, { 0x7f62 , 0xf374 }, { 0x7d8a , 0xe707 }, { 0x7a7d , 0xdad8 },
48+
{ 0x7642 , 0xcf04 }, { 0x70e3 , 0xc3a9 }, { 0x6a6e , 0xb8e3 }, { 0x62f2 , 0xaecc },
49+
{ 0x5a82 , 0xa57e }, { 0x5134 , 0x9d0e }, { 0x471d , 0x9592 }, { 0x3c57 , 0x8f1d },
50+
{ 0x30fc , 0x89be }, { 0x2528 , 0x8583 }, { 0x18f9 , 0x8276 }, { 0x0c8c , 0x809e },
51+
{ 0x0000 , 0x8000 }, { 0xf374 , 0x809e }, { 0xe707 , 0x8276 }, { 0xdad8 , 0x8583 },
52+
{ 0xcf04 , 0x89be }, { 0xc3a9 , 0x8f1d }, { 0xb8e3 , 0x9592 }, { 0xaecc , 0x9d0e },
53+
{ 0xa57d , 0xa57d }, { 0x9d0e , 0xaecc }, { 0x9592 , 0xb8e3 }, { 0x8f1d , 0xc3a9 },
54+
{ 0x89be , 0xcf04 }, { 0x8583 , 0xdad8 }, { 0x8276 , 0xe707 }, { 0x809e , 0xf374 }
5555
} ;
5656
#endif
5757
#if (FFT_BLOCK_LENGTH == 128)
5858
const fractcomplex twiddleFactors[] __attribute__ ((space(auto_psv), aligned (FFT_BLOCK_LENGTH*2)))=
5959
{
60-
0x7FFF, 0x0000, 0x7FD9, 0xF9B8, 0x7F62, 0xF374, 0x7E9D, 0xED38,
61-
0x7D8A, 0xE707, 0x7C2A, 0xE0E6, 0x7A7D, 0xDAD8, 0x7885, 0xD4E1,
62-
0x7642, 0xCF04, 0x73B6, 0xC946, 0x70E3, 0xC3A9, 0x6DCA, 0xBE32,
63-
0x6A6E, 0xB8E3, 0x66D0, 0xB3C0, 0x62F2, 0xAECC, 0x5ED7, 0xAA0A,
64-
0x5A82, 0xA57E, 0x55F6, 0xA129, 0x5134, 0x9D0E, 0x4C40, 0x9930,
65-
0x471D, 0x9592, 0x41CE, 0x9236, 0x3C57, 0x8F1D, 0x36BA, 0x8C4A,
66-
0x30FC, 0x89BE, 0x2B1F, 0x877B, 0x2528, 0x8583, 0x1F1A, 0x83D6,
67-
0x18F9, 0x8276, 0x12C8, 0x8163, 0x0C8C, 0x809E, 0x0648, 0x8027,
68-
0x0000, 0x8000, 0xF9B8, 0x8027, 0xF374, 0x809E, 0xED38, 0x8163,
69-
0xE707, 0x8276, 0xE0E6, 0x83D6, 0xDAD8, 0x8583, 0xD4E1, 0x877C,
70-
0xCF04, 0x89BE, 0xC946, 0x8C4A, 0xC3A9, 0x8F1D, 0xBE32, 0x9236,
71-
0xB8E3, 0x9592, 0xB3C0, 0x9931, 0xAECC, 0x9D0E, 0xAA0A, 0xA129,
72-
0xA57E, 0xA57E, 0xA129, 0xAA0A, 0x9D0E, 0xAECC, 0x9931, 0xB3C0,
73-
0x9592, 0xB8E3, 0x9236, 0xBE32, 0x8F1D, 0xC3A9, 0x8C4A, 0xC946,
74-
0x89BE, 0xCF04, 0x877C, 0xD4E1, 0x8583, 0xDAD8, 0x83D6, 0xE0E6,
75-
0x8276, 0xE707, 0x8163, 0xED38, 0x809E, 0xF374, 0x8027, 0xF9B8
60+
{ 0x7fff , 0x0000 }, { 0x7fd9 , 0xf9b8 }, { 0x7f62 , 0xf374 }, { 0x7e9d , 0xed38 },
61+
{ 0x7d8a , 0xe707 }, { 0x7c2a , 0xe0e6 }, { 0x7a7d , 0xdad8 }, { 0x7885 , 0xd4e1 },
62+
{ 0x7642 , 0xcf04 }, { 0x73b6 , 0xc946 }, { 0x70e3 , 0xc3a9 }, { 0x6dca , 0xbe32 },
63+
{ 0x6a6e , 0xb8e3 }, { 0x66d0 , 0xb3c0 }, { 0x62f2 , 0xaecc }, { 0x5ed7 , 0xaa0a },
64+
{ 0x5a82 , 0xa57e }, { 0x55f6 , 0xa129 }, { 0x5134 , 0x9d0e }, { 0x4c40 , 0x9930 },
65+
{ 0x471d , 0x9592 }, { 0x41ce , 0x9236 }, { 0x3c57 , 0x8f1d }, { 0x36ba , 0x8c4a },
66+
{ 0x30fc , 0x89be }, { 0x2b1f , 0x877b }, { 0x2528 , 0x8583 }, { 0x1f1a , 0x83d6 },
67+
{ 0x18f9 , 0x8276 }, { 0x12c8 , 0x8163 }, { 0x0c8c , 0x809e }, { 0x0648 , 0x8027 },
68+
{ 0x0000 , 0x8000 }, { 0xf9b8 , 0x8027 }, { 0xf374 , 0x809e }, { 0xed38 , 0x8163 },
69+
{ 0xe707 , 0x8276 }, { 0xe0e6 , 0x83d6 }, { 0xdad8 , 0x8583 }, { 0xd4e1 , 0x877c },
70+
{ 0xcf04 , 0x89be }, { 0xc946 , 0x8c4a }, { 0xc3a9 , 0x8f1d }, { 0xbe32 , 0x9236 },
71+
{ 0xb8e3 , 0x9592 }, { 0xb3c0 , 0x9931 }, { 0xaecc , 0x9d0e }, { 0xaa0a , 0xa129 },
72+
{ 0xa57e , 0xa57e }, { 0xa129 , 0xaa0a }, { 0x9d0e , 0xaecc }, { 0x9931 , 0xb3c0 },
73+
{ 0x9592 , 0xb8e3 }, { 0x9236 , 0xbe32 }, { 0x8f1d , 0xc3a9 }, { 0x8c4a , 0xc946 },
74+
{ 0x89be , 0xcf04 }, { 0x877c , 0xd4e1 }, { 0x8583 , 0xdad8 }, { 0x83d6 , 0xe0e6 },
75+
{ 0x8276 , 0xe707 }, { 0x8163 , 0xed38 }, { 0x809e , 0xf374 }, { 0x8027 , 0xf9b8 }
7676
} ;
7777
#endif
7878
#if (FFT_BLOCK_LENGTH == 256)
7979
const fractcomplex twiddleFactors[] __attribute__ ((space(auto_psv), aligned (FFT_BLOCK_LENGTH*2))) =
80-
{
81-
0x7FFF, 0x0000, 0x7FF6, 0xFCDC, 0x7FD9, 0xF9B8, 0x7FA7, 0xF695,
82-
0x7F62, 0xF374, 0x7F0A, 0xF055, 0x7E9D, 0xED38, 0x7E1E, 0xEA1E,
83-
0x7D8A, 0xE707, 0x7CE4, 0xE3F4, 0x7C2A, 0xE0E6, 0x7B5D, 0xDDDC,
84-
0x7A7D, 0xDAD8, 0x798A, 0xD7D9, 0x7884, 0xD4E1, 0x776C, 0xD1EF,
85-
0x7642, 0xCF04, 0x7505, 0xCC21, 0x73B6, 0xC946, 0x7255, 0xC673,
86-
0x70E3, 0xC3A9, 0x6F5F, 0xC0E9, 0x6DCA, 0xBE32, 0x6C24, 0xBB85,
87-
0x6A6E, 0xB8E3, 0x68A7, 0xB64C, 0x66CF, 0xB3C0, 0x64E8, 0xB140,
88-
0x62F2, 0xAECC, 0x60EC, 0xAC65, 0x5ED7, 0xAA0A, 0x5CB4, 0xA7BD,
89-
0x5A82, 0xA57E, 0x5843, 0xA34C, 0x55F6, 0xA129, 0x539B, 0x9F14,
90-
0x5134, 0x9D0E, 0x4EC0, 0x9B18, 0x4C40, 0x9931, 0x49B4, 0x9759,
91-
0x471D, 0x9592, 0x447B, 0x93DC, 0x41CE, 0x9236, 0x3F17, 0x90A1,
92-
0x3C57, 0x8F1D, 0x398D, 0x8DAB, 0x36BA, 0x8C4A, 0x33DF, 0x8AFB,
93-
0x30FC, 0x89BE, 0x2E11, 0x8894, 0x2B1F, 0x877C, 0x2827, 0x8676,
94-
0x2528, 0x8583, 0x2224, 0x84A3, 0x1F1A, 0x83D6, 0x1C0B, 0x831C,
95-
0x18F9, 0x8276, 0x15E2, 0x81E3, 0x12C8, 0x8163, 0x0FAB, 0x80F7,
96-
0x0C8C, 0x809E, 0x096B, 0x8059, 0x0648, 0x8028, 0x0324, 0x800A,
97-
0x0000, 0x8000, 0xFCDC, 0x800A, 0xF9B8, 0x8028, 0xF695, 0x8059,
98-
0xF374, 0x809E, 0xF055, 0x80F7, 0xED38, 0x8163, 0xEA1E, 0x81E3,
99-
0xE707, 0x8276, 0xE3F5, 0x831C, 0xE0E6, 0x83D6, 0xDDDC, 0x84A3,
100-
0xDAD8, 0x8583, 0xD7D9, 0x8676, 0xD4E1, 0x877C, 0xD1EF, 0x8894,
101-
0xCF04, 0x89BE, 0xCC21, 0x8AFB, 0xC946, 0x8C4A, 0xC673, 0x8DAB,
102-
0xC3A9, 0x8F1D, 0xC0E9, 0x90A1, 0xBE32, 0x9236, 0xBB85, 0x93DC,
103-
0xB8E3, 0x9593, 0xB64C, 0x975A, 0xB3C0, 0x9931, 0xB140, 0x9B18,
104-
0xAECC, 0x9D0E, 0xAC65, 0x9F14, 0xAA0A, 0xA129, 0xA7BD, 0xA34C,
105-
0xA57E, 0xA57E, 0xA34C, 0xA7BD, 0xA129, 0xAA0A, 0x9F14, 0xAC65,
106-
0x9D0E, 0xAECC, 0x9B18, 0xB140, 0x9931, 0xB3C0, 0x975A, 0xB64C,
107-
0x9593, 0xB8E3, 0x93DC, 0xBB85, 0x9236, 0xBE32, 0x90A1, 0xC0E9,
108-
0x8F1D, 0xC3A9, 0x8DAB, 0xC673, 0x8C4A, 0xC946, 0x8AFB, 0xCC21,
109-
0x89BF, 0xCF04, 0x8894, 0xD1EF, 0x877C, 0xD4E1, 0x8676, 0xD7D9,
110-
0x8583, 0xDAD8, 0x84A3, 0xDDDC, 0x83D6, 0xE0E6, 0x831C, 0xE3F5,
111-
0x8276, 0xE707, 0x81E3, 0xEA1E, 0x8163, 0xED38, 0x80F7, 0xF055,
112-
0x809E, 0xF374, 0x8059, 0xF695, 0x8028, 0xF9B8, 0x800A, 0xFCDC
80+
{{ 0x7fff , 0x0 }, { 0x7ff6 , 0xfcdc }, { 0x7fd9 , 0xf9b8 }, { 0x7fa7 , 0xf695 },
81+
{ 0x7f62 , 0xf374 }, { 0x7f0a , 0xf055 }, { 0x7e9d , 0xed38 }, { 0x7e1e , 0xea1e },
82+
{ 0x7d8a , 0xe707 }, { 0x7ce4 , 0xe3f4 }, { 0x7c2a , 0xe0e6 }, { 0x7b5d , 0xdddc },
83+
{ 0x7a7d , 0xdad8 }, { 0x798a , 0xd7d9 }, { 0x7884 , 0xd4e1 }, { 0x776c , 0xd1ef },
84+
{ 0x7642 , 0xcf04 }, { 0x7505 , 0xcc21 }, { 0x73b6 , 0xc946 }, { 0x7255 , 0xc673 },
85+
{ 0x70e3 , 0xc3a9 }, { 0x6f5f , 0xc0e9 }, { 0x6dca , 0xbe32 }, { 0x6c24 , 0xbb85 },
86+
{ 0x6a6e , 0xb8e3 }, { 0x68a7 , 0xb64c }, { 0x66cf , 0xb3c0 }, { 0x64e8 , 0xb140 },
87+
{ 0x62f2 , 0xaecc }, { 0x60ec , 0xac65 }, { 0x5ed7 , 0xaa0a }, { 0x5cb4 , 0xa7bd },
88+
{ 0x5a82 , 0xa57e }, { 0x5843 , 0xa34c }, { 0x55f6 , 0xa129 }, { 0x539b , 0x9f14 },
89+
{ 0x5134 , 0x9d0e }, { 0x4ec0 , 0x9b18 }, { 0x4c40 , 0x9931 }, { 0x49b4 , 0x9759 },
90+
{ 0x471d , 0x9592 }, { 0x447b , 0x93dc }, { 0x41ce , 0x9236 }, { 0x3f17 , 0x90a1 },
91+
{ 0x3c57 , 0x8f1d }, { 0x398d , 0x8dab }, { 0x36ba , 0x8c4a }, { 0x33df , 0x8afb },
92+
{ 0x30fc , 0x89be }, { 0x2e11 , 0x8894 }, { 0x2b1f , 0x877c }, { 0x2827 , 0x8676 },
93+
{ 0x2528 , 0x8583 }, { 0x2224 , 0x84a3 }, { 0x1f1a , 0x83d6 }, { 0x1c0b , 0x831c },
94+
{ 0x18f9 , 0x8276 }, { 0x15e2 , 0x81e3 }, { 0x12c8 , 0x8163 }, { 0x0fab , 0x80f7 },
95+
{ 0x0c8c , 0x809e }, { 0x096b , 0x8059 }, { 0x0648 , 0x8028 }, { 0x0324 , 0x800a },
96+
{ 0x0000 , 0x8000 }, { 0xfcdc , 0x800a }, { 0xf9b8 , 0x8028 }, { 0xf695 , 0x8059 },
97+
{ 0xf374 , 0x809e }, { 0xf055 , 0x80f7 }, { 0xed38 , 0x8163 }, { 0xea1e , 0x81e3 },
98+
{ 0xe707 , 0x8276 }, { 0xe3f5 , 0x831c }, { 0xe0e6 , 0x83d6 }, { 0xdddc , 0x84a3 },
99+
{ 0xdad8 , 0x8583 }, { 0xd7d9 , 0x8676 }, { 0xd4e1 , 0x877c }, { 0xd1ef , 0x8894 },
100+
{ 0xcf04 , 0x89be }, { 0xcc21 , 0x8afb }, { 0xc946 , 0x8c4a }, { 0xc673 , 0x8dab },
101+
{ 0xc3a9 , 0x8f1d }, { 0xc0e9 , 0x90a1 }, { 0xbe32 , 0x9236 }, { 0xbb85 , 0x93dc },
102+
{ 0xb8e3 , 0x9593 }, { 0xb64c , 0x975a }, { 0xb3c0 , 0x9931 }, { 0xb140 , 0x9b18 },
103+
{ 0xaecc , 0x9d0e }, { 0xac65 , 0x9f14 }, { 0xaa0a , 0xa129 }, { 0xa7bd , 0xa34c },
104+
{ 0xa57e , 0xa57e }, { 0xa34c , 0xa7bd }, { 0xa129 , 0xaa0a }, { 0x9f14 , 0xac65 },
105+
{ 0x9d0e , 0xaecc }, { 0x9b18 , 0xb140 }, { 0x9931 , 0xb3c0 }, { 0x975a , 0xb64c },
106+
{ 0x9593 , 0xb8e3 }, { 0x93dc , 0xbb85 }, { 0x9236 , 0xbe32 }, { 0x90a1 , 0xc0e9 },
107+
{ 0x8f1d , 0xc3a9 }, { 0x8dab , 0xc673 }, { 0x8c4a , 0xc946 }, { 0x8afb , 0xcc21 },
108+
{ 0x89bf , 0xcf04 }, { 0x8894 , 0xd1ef }, { 0x877c , 0xd4e1 }, { 0x8676 , 0xd7d9 },
109+
{ 0x8583 , 0xdad8 }, { 0x84a3 , 0xdddc }, { 0x83d6 , 0xe0e6 }, { 0x831c , 0xe3f5 },
110+
{ 0x8276 , 0xe707 }, { 0x81e3 , 0xea1e }, { 0x8163 , 0xed38 }, { 0x80f7 , 0xf055 },
111+
{ 0x809e , 0xf374 }, { 0x8059 , 0xf695 }, { 0x8028 , 0xf9b8 }, { 0x800a , 0xfcdc }
113112
} ;
114113
#endif
115114
#if (FFT_BLOCK_LENGTH == 512 )

0 commit comments

Comments
 (0)