【原创】TI C2833x介绍---(10)C28x Mode
0赞
发表于 2011/12/10 9:33:28
阅读(2472)
C2000系列里面包含从24x,240x,281x,280x,2823x,2833x,2834x,2801x,2802x等等各种不同频率、资源、价位的系列DSP。在2812刚推出来的时候,为了更方便进行代码的移植,比如与原来F240x的代码进行兼容(主要指汇编的代码,C语言代码的可移植性要更好)曾经引入了一种叫“C28x Mode”的CPU编译模式,通过OBJMODE与AMODE位的不同选择来改变其CPU对应的模式,这一模式在后面的28系列DSP中延续了下来,自然保护我们所用到的2833x系列了。这两个状态位的配制方法如表1所示。像-v28 –m20这样的编译器选项,主要是在CCS软件里面的配置-build options里面进行参数更改的,这个后面会详细提到。
表1 C28x Mode的选择
虽然提供了这样的一种代码兼容模式,但是新的更强大且单位性能/价格比不断上升的芯片不断出现,老的片子总是会慢慢退出主流市场的。关于C28x Mode的几个事实是:
- 绝大多数的用户都使用了C28x的原生模式。比如现在DSP的初学者就很少有机会接触到LF2406A这样的芯片了,在一些现有的产品里面可能才能找到。
- bootloader在上电复位之后,会自动地选择C28x的原生模式
- C24x兼容模式主要是用来与老的DSP芯片进行后向兼容使用的,TI不推荐在新的设计中使用。这里有个我自己的故事:5年前从LF2407A转向F2812的时候,刚开始想走捷径,想直接通过C24x兼容模式,把2407上的代码不做修改直接弄到2812上面跑,可是它们的汇编指令不太一样,经常会出现不稳定的问题。后来硬着头皮学习2812原生的那一套,反而很快就可以稳定地工作了。再后来随着片子性能越来越强大,大部分代码都用C语言了,再在不同型号的28x间移植就容易多了。这个学习真是偷不得懒啊!