单片机的执行速度与什么有关呢,当然对于初学者来说,第一时间想到的是晶振,没错,晶振算一个,但准确的来说应该是单片机的时钟源(再具体一点就是单片机的系统时钟)。单片机的时钟源来说有分为内部时钟和外部时钟,外部时钟源一般指的就是晶振了;内部时钟对于比较老的单片机是没有的(比如51单片机)。还有一点需要注意的是现在许多高级一点的单片机都会涉及到倍频和分频,n倍频即把单片机的时钟源乘以n作为单片机的系统时钟;分频与倍频恰好相反。
第二点,应该是执行一条指令需要多少个时钟周期,对于老一点的51单片机执行一条指令需要12个时钟周期,但现在大多数单片机执行一条指令仅需1个时钟周期(STC的 1 T 单片机),这样速度一下子就提高12倍。
第三点,就是常说的几位机,最初接触的51大多为8位机,而后来随着技术的发展有了16位机(飞思卡尔、AVR等)、32位机(stm32)。我们都知道所有的指令最后执行的都是一连串的2进制数,对于8位机一次可以执行8位,而16位机可以执行16位,32位机可以执行32位,这样32位的明显比8位的快。
最后一点也是比较难理解的一点,就是单片机的内部结构,正常情况下一条执行完成需要经过取指令、解密寻址、执行指令三个步骤,比较老的单片机在执行这三个步骤时需要按照执行顺序依次执行,而高级的单片机(stm32)具有三级流水线,通俗的理解就是可以同时执行三个步骤,这样也大大的增加了单片机的执行速度。
特别注意的是:所有的速度并不是成线性关系的,即在相同条件下,不是32位机的执行速度就是8位机的4倍,更不是具有三级流水线的单片机的执行速度是普通单片机的3倍。具体原因与其内部设计的局限性有关系,这里我也不太清楚,不做太多介绍了。
关键字:单片机 执行速度
引用地址:
单片机的执行速度
推荐阅读最新更新时间:2024-03-16 15:45
用单片机制作简单计算器的源程序
发一个用51单片机做的简单计算器的程序. /**********************按键处理*******************/ void KeyDeal(unsigned char Key) { //unsigned char n,p; if(Key!=0) //判断 有无按键按下。 { switch(Key) { //以下定义0~9的数字键。 case 0x11: K=0; break; case 0x21: K=1; break; case 0x41: K=2; break;
[单片机]
选择AVR单片机的24个为什么
(1) 为什么选用AVR单片机? Flash程序存储器可擦写1000次以上,不再有报废品产生。PIC 有的是OTP,只能烧录一次。AVR程序存储器数据为16位组织,也可按8位理解。PIC是12/14位程序 存储器,作寄存器转移和算术、逻辑运算带来不便。 (2) 为什么选用AVR单片机? 高速度(50ns)、低功耗!硬件应用Harward结构,具有预取指令功能, 使得指令可以在一个时钟周期内执行。PIC要4个时钟周期执行一条指令。MSC-51要12个时钟周期执行一条指令。 (3) 为什么选用AVR单片机? 超功能精简指令!具有32个通用工作寄存器(相当于8051中的32个累加器,克服了单一累加器数据处理造成的瓶颈现象
[单片机]
51单片机学习之陆 —— 1.2 第一个c51程序(点亮流水灯)
由于学校的板子跟我买的板子有些差异,为了大家的阅读,以后的所有程序编写烧录都以老师发的板子为主。 1 事先准备 a 驱动安装,注意群中已经发了,吧板子的驱动装好哦。 b 烧写软件(烧录器) stc - isp (这里说明下,板子上的芯片是stc的,你还能看到它的型号stc89c52RC,用stc的烧写软件就可以了) 提问:什么是烧写软件? 答:就是把你写好代码(C或者是汇编)专程的 机器语言 通过一定的方式下载到单片机中。称为烧写。(就先这样简单理解吧) c 编写软件 keil uVision 4 (我仅用它编译生成hex 文件) notpad++ (我用它写c51的代码,然
[单片机]
DSP与单片机通信的多种方案设计
将DSP和单片机构成双CPU处理器平台,可以充分利用DSP对大容量数据和复杂算法的处理能力,以及单片机接口的控制能力。而DSP与单片机之间快速正确的通信是构建双CPU处理器的关键问题。下面就此问题分别设计串行SCI、SPI和并行HPI三种连接方式。 1 串行通信设计与实现 1 1 SCI串行通信设计 1.1.1 多通道缓冲串行口McBSP原理 TMS320VC5402(简称VC5402)提供了2个支持高速、全双工、带缓冲、多种数据格式等优点的多通道缓冲串行口McBSP。MCESP分为数据通路和控制通路。①数据通路负责完成数据的收发。CPU或DMAC能够向数据发送寄存器DXR写入数据,DXR中的数据通过发送移位寄
[单片机]
51单片机BMP280气压和温度值测试程序
单片机源程序如下: #include bmp280.h unsigned short xdata dig_t1,dig_p1; //注意数据类型 signed short xdata dig_t2,dig_t3,dig_p2,dig_p3,dig_p4,dig_p5,dig_p6,dig_p7,dig_p8,dig_p9; long signed int xdata bmp280_ut,bmp280_up; long signed int xdata t_fine; void bmpreaddata()
[单片机]
基于单片机的高精度厚度测量系统设计
本课题所研究的智能厚度计是基于单片机的成套解决方案,由主控制器、测量传感器、AD转换模块、液晶显示模块以及相应配套硬件组成。通过对测量传感器的运用,对厚度参数进行精确地数据采集,然后通过AD转换模块将测量传感器采集到的模拟信号转换成数字信号,再通过主控制器对AD转换模块输出的数字信号进行相应的数据分析处理,最后通过液晶显示模块对厚度参数进行直观地显示,以完成整个系统的功能需求。 1 主控制器电路设计 STC89C52单片机最小系统具有体积小、质量轻、功能强、功耗低、性价比高等特点。STC89C52单片机最小系统由芯片、系统时钟、I/O端口设备及复位电路等构成。 STC89C52芯片内部结构框图 单片机最小系统电路
[单片机]
单片机的FLASH引导装载系统设计
前言 DSP系统的引导装载是指在系统加电时,由DSP将一段存储在外部非易失性存储器中的代码移植到内部高速存储器单元并执行的过程。这种方式即可利用外部存储单元扩展DSP本身有限的ROM资源,又能充分发挥DSP内部资源的高速效能。因此,引导装载系统的性能直接关系到整个DSP系统的可靠性和处理速度,是DSP系统设计中必不可少的重要环节。在装载系统中,外部非易失性存储器和DSP的性能尤为重要。FLASH是一种高密度、非易失性的电可擦写存储器,而且单位存储比特的价格比传统EPROM要低。为此,本文介绍了TMS320C6713浮点DSP芯片和SST公司提供的SST39VF400A FLASH存储器的基本特点,给出了使用该FLASH存储器设计
[单片机]
瑞萨推出集成STT-MRAM的MCU测试芯片,瞄准物联网与边缘智能
瑞萨电子最近宣布,他们已成功研发出自旋转移矩磁阻随机存取存储器(STT-MRAM)的测试芯片。这款芯片以其卓越的读写性能,有望为性能要求严苛的微控制器(MCU)提供传统闪存芯片的有力替代品。 随着物联网(IoT)和人工智能(AI)技术的飞速发展,端点设备中的MCU必须提供比以往更高的性能,以满足日益增长的需求。瑞萨电子在谈及他们在内存技术方面的工作时指出:“高性能MCU的CPU时钟频率已达到数百兆赫兹。为了进一步提升性能,我们需要提高嵌入式非易失性存储器的读取速度,以尽量缩小它们与CPU时钟频率之间的差距。” STT-MRAM,通常简称为MRAM,是一种新型存储器技术,旨在弥合非易失性但相对较慢的闪存与易失性但快速的动态
[单片机]