单片机每条语句的执行时间是多长?和总线频率有什么关...

2020-02-11 09:46发布

如题:单片机每条语句的执行时间是多长?和总线频率有什么关系?
不同语句,执行时间是否不同?请大神指点!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
tongdayusu
1楼-- · 2020-02-12 22:52
 精彩回答 2  元偷偷看……
大傻师
2楼-- · 2020-02-13 01:07
补充一下,涉及到流水线,分支预测什么的,这问题变得更复杂- -
qiangxiaochen
3楼-- · 2020-02-13 03:21
dykwai1 发表于 2017-8-30 09:37
楼主的回复太没有礼貌了,你提了问题,别人帮你解答,你却在这里扣字眼

??什么意思?我怎么扣字眼了?
hnzbding
4楼-- · 2020-02-13 08:32
单片机不同,指令周期不一定相同,查阅下所用单片机的手册
dykwai1
5楼-- · 2020-02-13 12:44
qiangxiaochen 发表于 2017-8-30 21:58
??什么意思?我怎么扣字眼了?

所谓   单周期语句一个hz执行一条,说的是 单周期指令一个cpu时钟周期执行一条
形象点说 一个100MHz主频的cpu,每个Hz执行一条指令,当然这种说法不严谨,但这里估计没有人会理解成一秒钟执行一条指令

再说楼主的问题
一般的cpu主要分两种架构cisc和risc
cisc,复杂指令集cpu,比如常用的X86,MCS51系列,一条指令的执行一般需要多个时钟周期
risc,简单指令集cpu,比如常用的AVR,   ARM系列,一条指令的执行一般需要一个时钟周期
一般cisc一条指令完成的事,risc需要多条指令完成,所以这两种也没什么谁好谁不好的,现代的cpu一般都是这两种的混合架构

通常的cpu频率指的都是cpu本身的频率,不包括外部存储
cpu的计算都是在内部寄存器进行的,就是说外存的指令和数据要先搬移到cpu内部的指令译码器及寄存器中再计算,计算结果再搬移回外部存储
cpu和外部存储是通过总线连接的,cpu快,总线慢,所以经常在cpu中集成一些指令和数据cache,cache的速度一般是和cpu一致的

外存用来包括指令空间和数据空间,根据cpu结构的不同可以在一个地址空间或者不同地址空间,但总之都是外存
外存的速度也不一样,比如sdram、sram、flash、IO外设、硬盘。。。。。。
所以有些cpu会有几条外总线,每条外总线的速度也不一样,比如计算机上会有pcie pci isa

所以,严格的说,cpu的指令执行速度只与cpu自己的时钟频率有关,但取指令和数据都要到外存,所以会受外存速度的限制
security
6楼-- · 2020-02-13 17:16
 精彩回答 2  元偷偷看……

一周热门 更多>