I'm looking into potential DSP chips for the first time (my only experience so far has been with 8051 processors), and I could need a little help deciding what device would be best for my application among TI's products.
The data I need to process is the IF signal from a radar transceiver (from RFBeam). The interesting frequency content would be limited to a few kHz, and algorithms to be experimented with would be from simple zero-crossing methods up to the Goertzel algorithm (DFT calculation of a single frequency). If possible, it could also be of interest to use the MCU as an initial filter at the same time as well. Other requirements would be low power, and be able to process the data fairly quickly (I know these inputs might sound a bit vague, but that's because this is an initial stage of the concept development, and exact requirements aren't available yet).
So I was wondering if perhaps the C2000 or C5000 family would be suitable. Since I'm not a programming wiz, it would also be very beneficial to have access to a DSP library that is easily callable. I looked at Microchip's website, and they have something in those lines:
I'm also wondering, since I couldn't really figure it out: if I buy a development kit, it says that the Code Composer Studio is included, but do I need to buy additional licenses to compile? Are there any restrictions to code size or other things?
Appreciating all input.
You're certainly looking in the right place. C2000 or C5000 would both make good choices for this application. The deciding factor will be the processing requirements of the algorithm you want to run. Without more information on this, I can't really make a recommendation either way.
We do provide dsp/math libraries for our parts. Try downloading controlsuite (ti.com/controlsuite) and look in the libs folder for the libraries and documentation.
CCS is typically free for most users of our boards. CCS will compile code without any restrictions if you are using an XDS100 emulator with your development board (almost all our boards have a built in XDS100). If you want to use a faster more capable emulator, then you'll need to buy a license of CCS.
Thank you for the feedback! I looked at the Piccolo controlStick, and it looks like a nifty little thing. The controlSuite seems at first glance to be very user friendly and a helpful tool. And if it's only $39, I guess a good option would be to buy the Piccolo controlStick and try it out (not much to lose there) (I assume this has a built in XDS100?)
I've never used JTAG before, and thus not too aware of its capabilities, but other development boards I have used have come with LCD displays, which makes it very handy for debugging purposes. For instance, for my application, I'd be interested in monitoring the power content of a sliding window Goertzel algorithm, - is this simply something I can read back to the computer through the USB port?
Also, a current consumption for the C2000 at 130-160 mA seems a bit large, but I guess this could decrease quite a bit when I get the code going and see how far down I can reduce the system clock. In general, how would you compare the current consumptions between the C5000 and C2000 for a "standard" application based on experience?
Yep, the controlstick is an excellent choice if you just want to get a feel for the capabilities of the Piccolo devices. Make sure you get the controlstick based on the 2806x devices as these have hardware floating point as well as the CLA.
JTAG is the interface used to program and debug the chip. You can view the entire memory map in CCS which should allow you to examine any aspect of your program. CCS also has a nice feature in that you can graph data from the target devices memory in a window on your PC. Might be useful for your application.
We are certainly not the lowest power processor out there, but in order to do the kind of math you want to you are going to have to burn some power. I don't have very much experience with the C5x devices, so I can't really comment on how C2x stacks up. I'd recommend looking at datasheet numbers and going from there.
Thanks! Just one last thing, - I noticed in the controlSUITE that the DSP Library for floating point, the function generation library and a few others specifically target the F2833x (haven't looked at the code yet, since I still need to install the Code Composer Studio). I assume it's no hassle to get it to work for the F2806x devices?
You are correct. All of our devices have the same core and same floating point unit, so code written for a floating point Delfino device will work on a floating point Piccolo device. Libraries like these should not require any modification whatsoever.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.