Choosing a processor for DSP - Page 1
Forum section: electronics / general

author: rheb1026
author_rank: Regular Contributor
timestamp: December 17, 2016, 07:08:32 pm
content: I hope this is the right place to post this...I've recently gotten into home brewing radio circuits and my ambitious project is to create a direct conversion receiver and do the demodulation in a DSP of some sort. The plan is to mix the RF down to baseband I and Q signals and sample with an ADC from there. I'm planning to do most of the learning in MATLAB until I feel comfortable enough with the algorithms to implement them on a stand alone controller. My question is which controller should I be looking at to implement this? I have experience with ST Cortex M4 processors and know that it has some DSP abilities, but I don't have any experience in what kind of processing power would be needed for this sort of thing. I'd just hate to start down the road and realize that I have to change paths.I would like to stick with what I know if possible rather than having to learn another processor, but I'm open to the idea. In the end I'd like to have a receiver with a rotary encoder and display to tune the local oscillator and be able to demodulate AM/SSB/CW signals in the HF range (0-30Mhz) with fixed filter widths for each signal type. I'd also like tonothave to write in assembler. So will the CM4 be suitable for this?Edit to add: Power consumption is not an issue, and I also want something that I can make at home (no BGA, etc.)

author: parasole
author_rank: Contributor
timestamp: December 17, 2016, 08:30:04 pm
content: Quote from: rheb1026 on December 17, 2016, 07:08:32 pmFrom the moment you know it, I beleive you should stick with ST family, there are similar projects based on ST32 and it is good enough for baseband processing as you want to do it, basically you will be working with audio frequencies.Good start is to check out ST guide for DSP processing in ST32F4 and F7:http://www.st.com/content/ccc/resource/technical/document/application_note/group0/c1/ee/18/7a/f9/45/45/3b/DM00273990/files/DM00273990.pdf/jcr:content/translations/en.DM00273990.pdf

author: Someone
author_rank: Super Contributor
timestamp: December 17, 2016, 09:05:40 pm
content: Quote from: evb149 on December 17, 2016, 08:09:15 pmA PC is a great place to start, doing offline processing to prove the idea and hone all the details. But MFLOPS/dollar is only really interesting if you're doing lots of floating point, most high performance DSP work is still done in fixed point which desktop PC's do not compete well on cost or power metrics. And more importantly desktop/laptop CPUs fit in a narrow window of capabilities which this project wont fit well with, just the ADC interfacing to a desktop computer could end up costing more than an entire embedded platform.The suggestion to look as prebuilt systems on board/module is the place to start, once you know what interfaces you need for the other parts of the system.

author: rheb1026
author_rank: Regular Contributor
timestamp: December 17, 2016, 09:44:49 pm
content: Thanks very much for all the replies! It's good to know that the M4/M7 will fit the bill just fine, and thanks for pointing out the discovery board. I didn't think to just build my RF board and attach it onto the header pins of the demo board. I think that'll definitely be the easiest way to goI guess I should have stated in the first post that I am a (young) engineer who's work involves embedded systems. I'm by no means an expert, but I do prototype/proof of concept firmware for work with some regularity. We use ST M4F processors in our products.I did take an FPGA class in school a few years back and would be interested in getting back to it at some point. Unfortunately I can't remember a darn thing about Verilog! But I still have the Digilent board. I'll have to take a look at the ZYNQ boards, too.