第三节:学习的方向以及编程语言

来源:互联网 发布:淘宝延长收货多久 编辑:程序博客网 时间:2024/05/29 19:08
有人可能会说,从哪里开始入手呢,外设驱动还是算法优化?的确,如果真要分类,这两个分支确实是个分类的好方法。

请不要纠结于此。

      如果要学习算法优化,想学习的精通,可能会经过几个月的痛苦时期,理解其基于缓存的存储器体系(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.

原创粉丝点击