请不要纠结于此。
如果要学习算法优化,想学习的精通,可能会经过几个月的痛苦时期,理解其基于缓存的存储器体系(cache based memory
architecture),以及在这个体系下的缓存一致性(cache coherence)的问题,往往还有DMA等独立于CPU的但是能
读写数据的设备存在。但是理解了这些,再结合一些例程。后面就轻松多了。
如果要学习外部设备的驱动开发,那就没有什么特别的了。跟单片机和ARM的外设开发类似。没有什么窍门,看DVSDK中的例程。
一般有两种类型的例程,一种是基于DVSDK的,TI开发了专门的API供用户开发,这些API使用起来很方面,但是需要花时间学习理解。
另一种是基于CSL的,即chip support layer,中文叫芯片支持库,这种例程直接操作寄存器,好理解。但是对于复杂的外设,也不容易
掌握。
需要说明的是,不管是算法优化,还是驱动开发,都可以选择在或者不在DSP/BIOS操作系统下开发。如果基于OS,由于OS提供了一些
API,还有一些具有OS特性的,比如信号量等等。对于需要多任务的场合,可能会有用。但是有些外设,比如网络设备,因为TI基于OS开发了一套协议栈,还是需要OS支持的。
关于编程语言,首选是C语言了。C++理论上可以,但是在数字信号处理的场合,还是用C.