DSP

2407与2812的比较

2019-07-13 19:19发布

  昨天晚上有位刚学DSP的朋友问我2407与2812是否差别很大的时候,我只能回答他差别不大。今天,刚好看到这篇文章,便共享之,原文作者为:小申,很不错的工程师。 2407和2812是dsp2000系列性能最让人关注的两款芯片,在使用过两种芯片后,特将两款芯片的异同来作一比较。
都是对于电机控制开发使用。由此,在外设上的配备上有较多的相似之处。   相同点: 1 时间管理器,来管理定时器和pwm,及电机光电码盘的接口, 2 多路ad来接受传感器的信号 3  通讯接口 spi can sci 使得可以方便的通讯 4 程序存储器和内部ram都有一定的容量满足不同的需求 5 3。3V电压供电,突出了低功耗的节电功能 6 可以进行程序和数据空间的外扩 7 jtag接口相同 8 内核相同 ,方便程序移植 不同: 1 电压 2407 3。3V内核和IO供电,flash烧写电压5V     2812  1。8V或者1.9V内核和3。3VIO供电,flash烧写电压3.3V    上电次序,2407没有关系 ,2812 io先上电,核后上电 2 clk  2407最大40M              2812 最大150M(内核电压1.9V)或者 135M(内核电压     1.8V) 3 下载程序方式 2407 编程器下载            2812  编程器下载 串口 spi 4 cpu 2407为16位处理器      2812为32处理器 5 程序和数据空间 2407 flash32k ram2。5K可扩展196K       2812 flash 16×128K   ram 16×18K可扩展4M空间 6 时间管理器 2407 定时器16位 一个光电码盘接口      2812 定期器32位 有两个光电码盘接口 7 ad  2407 10位  2812 12位 8 sci 2407 1个 没有缓冲单元 2812 两个 具有缓冲单元 8 can 2407标准can符合2。0B协议 2812增强can和标准can 符合2。0B 9 mcbsp 2407 没有  2812 有 10 语言 2407 汇编 c    2812 汇编 c c++   11 TI支持  2407没有提供较多的例程支持 2812 提供完整的模块例程支持   12 编程风格 2407倾向于模块编程 2812 类编程,并且结构性更强   13 寄存器的保护。2407没有对系统寄存器的保护,2812提供了保护机制   14 在开发环境的帮助文件上看,2407比2812要好点,        2812的寄存器的设置和定 义帮助文件基本没有说明   对dsp及其开发环境及支持的一点建议:   1 dsp没有象arm一样把用于外扩的数据地址线和IO功能复用,这对io管脚使用较多的人来讲不方便,还要进行扩展,如果不需要外扩的话,这些线就浪费了   2 对于现在3。3V和5V共存的时期,如果管脚能和5V兼容,那是最好不过了   3 不明白为什么把管脚的电源和地总是放在相邻的位置上,焊不好很容易短路   4 用程序下载器,下载程序速度很慢,耽误时间   5 开发环境如果能实现软件仿真那就好了,不用非要硬件板了,调试起来那就方便多了   6 作为芯片开发商,最了解自己的芯片的功能,如果能够免费为大家提供各种芯片,尤其是处理器的外设例程,无论对于大家对芯片的上手速度和开发进度来讲都是好事,而且对于芯片的推销也是很好的事情。   大家有什么好的想法,尽可补充,共同进步!
实际上对开发带来最大影响的不同点是2812程序,数据,I/O空间统一编址,在同一个地址空间,并且带bootloader,2407程序,数据,I/O空间分开编址,不在同一个地址空间,不带bootloader,这导致了2812程序必须用一段汇编代码才能跳转到用户的c程序。而2407不需要这样做。