amoBBS 阿莫电子论坛

 找回密码
 注册
搜索
bottom↓
12
返回列表 发新帖
楼主: Tsiov

STC的性能有超AVR的可能?

  [复制链接]
发表于 2014-12-24 13:10:00 | 显示全部楼层
从使用体验看,STC 1T 30M 比不上AVR 的16M 速度快 STC的1T只是部分指令,很多指令不是1T  不知道现在提高到什么程度了,有段时间没用STC了
发表于 2014-12-26 13:23:09 | 显示全部楼层
可惜我多年不用AVR,没有下载线,否则整个程序来测试下,就来一个软解码DTMF的软件,用C语言写,我在STC上实现了,不错。不知道AVR如何,或者在用AVR的朋友可以测测,告诉结果。
发表于 2014-12-26 15:46:21 | 显示全部楼层
stc毕竟51 有熟悉感
发表于 2014-12-26 20:42:11 | 显示全部楼层
STC51只能在外设上做文章,内核架构定死了,AVR是新设计的内核,肯定要优秀一些
发表于 2014-12-26 21:28:20 | 显示全部楼层
确实,内核限制了,即使外设丰富了,但整体性能还是很难得到大的提升
发表于 2014-12-26 23:23:55 | 显示全部楼层
51系列内核还有提升空间,比如把2字节、3字节非跳转指令做到1个时钟周期,那么性能就会提高很多,内部程序总线可以采用32位,一次取4个字节指令码,STM8就是采用了32位的程序总线才使得很多多字节指令都是1个时钟周期。
发表于 2014-12-26 23:47:06 | 显示全部楼层
这是我以前做的C8051和AVR执行整数加法的比较:
51:
;R6R7=R2R3+R4R5
MOV A,R3
ADD A,R5
MOV R7,A
MOV A,R2
ADDC A,R4
MOV R6,A
6个时钟,6个字节
;----------------------------------------------------------
40H41H=42H43H+44H45H
MOV A,43H
ADD A,45H
MOV 41H,A
MOV A,42H
ADDC A,44H
MOV 41H,A
12个时钟,12个字节
;-----------------------------------------------------------
Var1=Var2+Var3
MOV DPTR,#Var2
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
MOV DPTR,#Var3
MOVX A,@DPTR
MOV R5,A
INC DPTR
MOVX A,@DPTR
XCH A,R3
MOV DPTR,#Var1
ADD A,R5
MOVX @DPTR,A
INC DPTR
MOV A,R2
ADDC A,R3
MOVX @DPTR,A
37个时钟,25个字节
;---------------------------------------------------------------

AVR:
;R6R7=R2R3+R4R5
MOV R7,R3
ADD R7,R5
MOV R6,R2
ADC R6,R4
4个时钟,8个字节
;----------------------------------------------------------
40H41H=42H43H+44H45H
LDS R3,0043H
LDS R2,0042H
LDS R5,0045H
LDS R4,0044H
ADD R3,R5
STS 0041H,R3
ADC R2,R4
STS 0040H,R2
14个时钟,28个字节
同频率下51在DATA区时速度快于AVR,在寄存器或XDATA区时慢于AVR,但考虑到51的最高主频经常是AVR的2到3倍,因此整体速度应该高于AVR,并且51可以把对速度要求快、使用频繁的变量定义的DATA区,而AVR就没这个特性了
发表于 2014-12-27 09:26:12 | 显示全部楼层
takashiki 发表于 2014-4-19 08:24
现在,这两种性价比都已经非常低了,选型时基本都不会考虑了。我认为一个单片机最核心的最基本的功能就是外 ...

STC的除法能甩M0 N条街怎么得出来的?
发表于 2014-12-27 09:38:06 | 显示全部楼层
AVR可以PLL倍频啊,和51内核完全不同啊。
用51做除法能让你生不如死,这货设计出来就是做普通控制的,运算不是他强项啊
Iphone虽然好,但是还是很多人用小米,没有可比性啊
发表于 2014-12-27 09:38:48 | 显示全部楼层
takashiki 发表于 2014-4-19 08:24
现在,这两种性价比都已经非常低了,选型时基本都不会考虑了。我认为一个单片机最核心的最基本的功能就是外 ...

除法怎么甩M0 N条街?
发表于 2014-12-27 12:27:46 | 显示全部楼层
Puppey 发表于 2014-12-27 09:38
除法怎么甩M0 N条街?

估计是8位除法。M0做8位和1位处理不一定比1T51快
发表于 2014-12-27 12:58:34 | 显示全部楼层
楼主一定没用过Xmega
发表于 2014-12-27 13:28:02 | 显示全部楼层
tsb0574 发表于 2014-12-24 12:15
这才是重点,51围着个A在转!架构决定跑不快

精辟!架构决定效率!
发表于 2014-12-27 15:39:47 | 显示全部楼层
modbus 发表于 2014-12-26 23:47
这是我以前做的C8051和AVR执行整数加法的比较:
51:
;R6R7=R2R3+R4R5

这个比较不错。

我用STC15系列的MCU跑32.768MHZ模拟做软件DDS,汇编,用24位累加字和24位频率字,做24位加法并查正弦表输出到一个8位口,为14个时钟。
发表于 2014-12-27 15:41:01 | 显示全部楼层
M0做除法真的蜗牛,用过的就会知道。M0没有除法指令。
发表于 2014-12-27 15:51:14 | 显示全部楼层
Puppey 发表于 2014-12-27 09:38
除法怎么甩M0 N条街?

M0没有硬件除法指令,STC有硬件除法指令,5T搞定。M0软件实现的除法你看看反汇编就知道有多慢了,洋洋洒洒好大篇幅。ARM并不是万能的,不是每一条指令都比别人优越的
发表于 2014-12-27 18:46:59 | 显示全部楼层
工程项目据说不都是看钱 看器件库存办事?
发表于 2014-12-27 20:33:13 来自手机 | 显示全部楼层
项目决定所使用的mcu,并没有绝对的好坏之分,与其一味争论mcu的好坏,不如多在一种mcu上下功夫,天下武功秘籍好的太多了,但是真正能在一种武功修炼到最高境界的有几人?
发表于 2014-12-27 21:38:50 | 显示全部楼层
takashiki 发表于 2014-12-27 15:51
M0没有硬件除法指令,STC有硬件除法指令,5T搞定。M0软件实现的除法你看看反汇编就知道有多慢了,洋洋洒 ...

比如说判断一个标记位是否有效并清0跳转,51肯定比M0效率高多了。
发表于 2014-12-27 23:20:36 来自手机 | 显示全部楼层
avr的ad速度落后了哦,其它还是可以
发表于 2014-12-27 23:34:03 来自手机 | 显示全部楼层
avr的ad速度落后了,其它还可以
发表于 2014-12-28 21:48:59 来自手机 | 显示全部楼层
还在讨论主频高下啊
发表于 2014-12-29 03:04:14 | 显示全部楼层
unifax001 发表于 2014-12-27 19:02
确实是!
入门单片机学的是AT89S51 当时还真没听说stc 后来有了 说是串口直接下载
说不用仿真器 不用编程 ...

10年前,仿真器卖5k以上,别人都不能isp下载的时候你宣传还是有用的。
现在功能强大的link让一切淡定
发表于 2014-12-29 08:21:31 | 显示全部楼层
如果AVR和STC在同量,同价,有多少人会选STC?
发表于 2015-1-1 20:46:38 来自手机 | 显示全部楼层
曾经用Tiny  做过条屏测试卡,8脚,很快,STC12的单点还可以,走花纹就太晃了。花纹是算法产生的,不是读字库w
发表于 2015-1-1 23:30:10 来自手机 | 显示全部楼层
如果avr核也可以想51那样公开,相信前景会好很多
友情提示:标题不合格、重复发帖,将会被封锁ID。详情请参考:论坛通告:封锁ID、获得注册邀请码、恢复被封ID、投诉必读
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|阿莫电子论坛(原ourAVR/ourDEV) ( 公安备案:44190002001997(交互式论坛) 工信部备案:粤ICP备09047143号 )

GMT+8, 2019-8-20 10:17

阿莫电子论坛, 原"中国电子开发网"

© 2004-2018 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表