Hi Everyone, I'm developing an embedded controller application, but have no prior experience with DSP or OMAP. I'm seeking some advice from experienced engineers who have experience on both platforms to offer some heuristic advice on processor selection to get me started on the right foot.
Our application is 2-input 2-output control of a device with a sample rate of 10kHz. We'll be using a model predictive control algorithm, so there will be approximately 1000 multiplication operations and similar number of addition operations required per time-step. Thus, our processor needs to run at 10MHz at least; certainly more with other data management operations taken into account.
We are considering using a modified Beagleboard as the processor platform, or a custom layout of a TMS320c6748 DSP processor. My impression is that Beagleboard/OMAP is attractive because the hardware implementation for the processor is already done and we can do our boot-loading from the SD card, making software upgrades easier. However, I'm concerned that having the DSP hidden behind a layer of Linux may make developing and debugging the project difficult, and there may be possible problems in providing deterministic outputs. There certainly seems to be a lot of software issues listed on the Beagleboard/OMAP developer sites. But the processor has a lot of power which can't be overlooked.
On the contrary, a 6748 DSP may be more straightforward to program and offer deterministic output, but we have to consider more complex custom hardware develoment, boot-loading, hardware component availability issues etc.
We need to be able to stream the set-point data to the controller, presumably at this point via a USB link.
BTW, our application is not mission critical - nobody will be injured upon failure.
So which of these paths, or alternative path, should we pursue, in your opinion?
Thanks, justine.