×

ARM与AVR的区别及比较

消耗积分:10 | 格式:rar | 大小:344 | 2010-09-03

维生素B2

分享资料个

比较AVR和ARM,谈谈相同与区别
我看到hyloo的发问,本来想回答的,但一想,写了很多,倒算别人的酷贴,不太划算,所以决定自开一贴,顺便扬扬名^_^。
AVR我用过2个月,ARM我只看过2本书,所以,说的有错请各位指教。
这里我们讨论的AVR和ARM都是泛指,就是说,包括所有机器指令集和这两个体系的都通用的众多芯片,不单单指某项技术或者某
块芯片。
首先是相同点,两者都是现代的CPU设计范例,基于RISC的指导思想,在体系设计初期时就充分考虑到了CPU内核面积,速度,高级
语言支持等很多因素。又吸取了51、x86等20年前就商业化的体系所暴露出的问题,所以从现代眼光来看,都是非常先进的设计。最重
要,GCC对ARM和AVR都提供了相当好支持,而且可以免费使用。网上,特别是外国网上都有很多开放资源可以参考。两者在国内都
属于市场引入阶段。销售方面,各有两大著名国内MCU公司做代理,而且巧合的是都是来自广东的奸商(哈,开玩笑,勿当真)。
AVR和ARM的区别就比较多了:
ARM是IP核,可供各大芯片商集成到各自的设计中,好比是软件语言中的C++,如果你想换一家厂商或者某家的货太贵,都会有其它
的厂商来竞争,至少从理论上,你不会被一家厂商套住。
AVR这方面就差点,ATMEL一家,别无分号。你只能在他的系列中选一个型号,无法选厂家。好比是软件语言中的Java,虽然现在免
费(指Java的SDK,不是AVR)或价格低,但市场前景更多的掌握在厂商手中。
实际产品成本方面,AVR优于ARM,毕竟AVR是8位机,配什么外设都便宜,由于速度比ARM低,PCB版也好设计,20MHz的数字电
路基本上只要通就行了,不用过多考虑信号完整性什么的。而ARM的速度能轻易上100MIPS,32位的CPU也不是吹的,速度上AVR根本
没法比,不过带来的问题就多了,要4层PCB,而且外设也贵多了。
功能方面,ARM大大优于AVR,ARM可以做PDA,手机,AVR显然不行,最糟糕的是ARM上可以跑Linux,Linux可以做多少事啊,虽
说国内实际在ARM平台上跑出Linux而又愿意公开技术的人几乎没有(我正在努力朝这个方向发展),但前途绝对是光明的。功能上的
优势意味着ARM比AVR有着更广的应用范围,所以,双龙耿先生所说的“中学用AVR”如果是对的话,大学里就应该用ARM。
外设方面AVR稍强,实际上我们可以看到Atmel公司的基于ARM核的AT91M55800A包括了很多AVR的外设,但还缺TWI/I2C,可变增
益ADC,EEPROM等好用的部件。但毫无疑问,ARM的外扩外设能力比AVR强的多,所以外设方面算平手吧
操作系统和软件源码资源方面,ARM拜Linux之赐,比AVR有优势点。但AVR上的嵌入式操作系统也不是没有,uC/OS-II就不错,如
果能在Mega8515等便宜的芯片上跑起来的话,我看350元的ARM版也难卖,这一点双龙不知有没有计划?
调试手段方面,ARM应该优于AVR,AVR就一个JTAG接口的仿真器我个人还可以买一下,但所支持芯片有限,ARM方面书上有相当
多的方法调试,这里我不熟也缺经验,就不瞎说了。
最后来个有个性的结尾,鉴于GCC对AVR和ARM的支持都很好,所以我决定都好好学,这里顺便给GCC打个广告,大家也看得
出RISC的MCU最好还是直接使用C语言,GCC编译器显然是最明智的选择。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !