21 Commits

Author SHA1 Message Date
Jared Boone
74ecff13ad GCC: Fixed __SIMD32 type punning warnings.
With help from https://github.com/ARM-software/CMSIS_5/issues/98

Using void* makes me really queasy though!
2017-08-08 10:24:49 -07:00
Jared Boone
dd0048db8d Remove broken simd32_t type. 2017-05-03 09:58:07 +01:00
Jared Boone
05eb694c0a Introduce simd32_t type.
Discontinue use of disagreeable __SIMD #define.
2017-01-06 16:57:36 -08:00
Jared Boone
a1b9f4aa1b Simplify, generalize, share int16_t taps copy function.
Also prevents compiler loop unrolling in non-critical code, for code size improvement.
2016-02-23 15:04:20 -08:00
Jared Boone
ac2320f0c5 Limit scope of some function variables. 2016-02-06 16:23:55 -08:00
Jared Boone
cff314cbc8 Convince compiler to not inline member constructors. 2016-02-03 19:59:41 -08:00
Jared Boone
f2dff16820 Use complex channel filter taps for AM/SSB. 2016-01-30 17:30:54 -08:00
Jared Boone
28e5b7e4af Remove some filter constructors, reset Z on configure(). 2016-01-29 17:06:22 -08:00
Jared Boone
e6f69c90f2 Reduce inlining of FIR configuration due to templating.
80 bytes!
2016-01-04 11:20:28 -08:00
Jared Boone
b0855b3c4d Pass buffers by reference to save significant text section code size.
752 bytes!
2016-01-03 23:09:06 -08:00
Jared Boone
e720bfb054 Use IFIR decimation for broadcast FM receiver. 2016-01-02 10:35:23 -08:00
Jared Boone
a02bfe55d0 Decimators for wider IFIR output bandwidth. 2016-01-02 10:34:17 -08:00
Jared Boone
549e5b9ddc Unrolled FIR filters for more flexible baseband filtering (using IFIR technique). 2015-12-29 10:48:29 -08:00
Jared Boone
49215c3ae6 Remove garbage DSP filter code. 2015-12-28 15:49:47 -08:00
Jared Boone
ccd64f3cd9 Add function for c8->c16 decimate by two without fs/4 shift. 2015-11-19 12:20:20 -08:00
Jared Boone
100761481e Fix inaccurate comment. 2015-11-06 09:40:05 -08:00
Jared Boone
86b068be62 Early calculation to reduce pressure on registers. 2015-11-06 09:40:04 -08:00
Jared Boone
424c0eac3f FIRAndDecimateBy2Complex: expose decimation_factor, bring work function into class. 2015-11-06 09:40:04 -08:00
Jared Boone
cde15e4271 Generalize fir_and_decimate_by_2_complex_fast.
Permit decimation_factors other than 2.
Permit tap counts != 64 (but still must be multiple of 8).
Half the amount of tap memory required.
Performance is significantly degraded due to greater flexibility -- most likely due to separate sample buffer shift phase, instead of performing shift during output sample calculation.
2015-11-06 09:40:04 -08:00
Jared Boone
0f73d6061a Remove old decimating FIR code. 2015-11-06 09:40:04 -08:00
Jared Boone
dc6fee8370 Initial firmware commit. 2015-07-08 08:39:24 -07:00