ARM7各种指令的周期数

发布者:RainbowPromise最新更新时间:2011-12-10 关键字:ARM7 手机看文章 扫描二维码
随时随地手机看文章

ARM7具有3级流水线结构(取指、译码、执行),对大多数指令来说每条流水线的处理都是单周期的,不过某些情况下,取指和执行的周期数会延长,导致流水线进入stall状态,指令执行时间超过1个周期。
经过在LPC213x/214x(NXP ARM7TDMI-S)上的试验,得出各类指令的执行周期数如下:
1、大部分算术运算和逻辑运算指令都是单周期的(乘法例外)。
2、STR指令需要增加1个总线周期。如果地址位于内部SRAM,则是2个周期;如果地址位于AHB、VPB等外设总线上(例如访问外设的寄存器),由于局部总线和外设总线桥接还有额外延时,因此需要再增加一些周期数,在LPC213x/214x上,当VPB和主频相同时,需要再增加5个周期额外延时,即用STR指令访问外设寄存器需要7个期。
3、LDR指令需要增加2个总线周期。同理,如果地址位于内部SRAM,则是3个周期;如果地址在外设总线上,同样需要再增加一些周期数,在LPC213x/214x上,当VPB和主频相同时,LDR指令需要8个周期。
4、对于一次操作多个寄存器的STM、LDM类指令,指令周期数与STR、LDR类似,但每增加一个寄存器需要增加一个总线周期,例如当地址位于内部SRAM、寄存器个数为N时,执行周期数为1+N(STM)和2+N(LDM)。
5、无条件跳转语句和跳转语句成功跳转,需要重新填充流水线,因此至少需要3个周期(假设访问程序存储空间是单周期的)。
6、LDR指令的目标寄存器为R15(PC)时,相当于读总线+跳转,至少需要5个周期(假设访问程序存储空间是单周期的)。
7、乘法指令根据操作数位数的不同,从2-5个周期都有可能。
8、对于所有的带条件的指令,如果条件不满足,指令不被执行,都只需要花1个周期来跳过该指令。
9、实际应用时,还需考虑程序存储器的访问速度(影响流水线取指阶段的周期数)以及Cache的命中情况。

关键字:ARM7 引用地址:ARM7各种指令的周期数

上一篇:基于ARM7处理器LPC2138的LCD显示电压示波系统的设计
下一篇:ADμC812内部ADC的应用

推荐阅读最新更新时间:2024-03-16 12:48

基于ARM7微处理器的中文液晶显示技术
1 引言 液晶显示屏LCD作为一种功耗低、体积小、无辐射的显示器件,近几年被广泛应用于各式各样的嵌入式电子产品中,LCD可分为段位式、字符式和点阵式三种,其中,段位式LCD和字符式LCD只能用于字符和数字的简单显示,不能满足图形曲线和汉字显示的要求,而点阵式LCD不仅可以显示字符、数字,还可以显示各种图形、曲线及汉字,并且可以实现屏幕上下左右滚动动画功能,分区开窗口、反转、闪烁等功能,用途十分广泛,为了简化液晶 显示电路的设计和应用,生产厂家通常将液晶显示单元、显示控制器,显示内存和显示驱动电路等装配在一起,做成液晶显示模块LCD Module(LCM) 。LCM对外提供标准数据和控制接口以及控制指令,本文以ATM12864C为例,
[应用]
ARM7单片机+RTL8019嵌入式TCP_IP协议栈使用分析
一、 总则 本文件是嵌入式TCP/IP协议栈的说明文件,嵌入式TCP/IP应用开发人员可通过阅读本文件,掌握在嵌入式TCP/IP协议栈的基础上开发服务器和客户端应用程序,如FTP服务器,WEB服务器,串口服务器等等。 二、 参考文件 1) TCP_IP详解卷1,2,3 2) RFC 959 (rfc959) - File Transfer Protocol.htm 3) rfc1945- Hypertext Transfer Protocol -- HTTP/1.0 三、 技术说明 1) 用户应用协议栈则需要编写以太网的数据报收发驱动,就可以使用协议栈提供的标准SOCKET API,完成服务器和客户端应用程序的开发。 2) 协议栈运
[单片机]
ARM7&ARM9双核平台的技术分析
嵌入式系统教学平台市场上的主导产品都是基于ARM7或ARM9架构的,一般都认为ARM7属于低端产品、ARM9属于高端产品,也出现了所谓的“ARM7&ARM9覆盖高端&低端的教学平台”。宣传“两套 CPU 子板都是可以自由插拔,一套实验系统变化为两套, ARM7 的实验系统可以实现基础的 ARM 嵌入式教学,主要包括指令实验,基础接口实验, UCOS-II 操作系统实验和 uCLinux 操作系统实验; ARM9 的实验系统可以实现高端的 ARM 嵌入式教学,主要包括扩展接口实验, Linux 操作系统实验和 WinCE 操作系统实验。” 这种观点有误导用户的嫌疑。因为ARM9和ARM7同属于ARMv41,是属于中低端系列的ARM
[单片机]
基于ARM7的实时时钟显示设计
简介:把该工程应用于基于LPC2294的开发板外部存储器后,能够脱机运行,VFD实时时钟全部点亮,并且显示时间正确。LPC2294适用于开发税控设备。税控设备上有较多的模块,VFD客显模块是其中之一,可用来显示时间。 ARM(Advarlced RISC Machine)是设计这种处理器内核的公司的名字,ARM核并非芯片。ARM核与其他部件,如RAM、ROM、片内外设,组合在一起才构成现实的芯片。ARM作为一类微处理器的通称,作为一种低功耗、高性能的32位嵌入式微处理器,现在已经被广泛应用在各个领域中。 ARM应用的开发工具主要包括集成开发环境IDE、评估板和JTAG仿真器等。国内使用较多的IDE为ARM公司的SDT、AD
[单片机]
基于<font color='red'>ARM7</font>的实时时钟显示设计
ARM7与ARM9的区别以及ARM,FPGA,DSP的特点和区别是什么?
一.谈谈ARM7与ARM9的区别: 本文是写给准备学习ARM技术,而又没想好要学ARM7还是ARM9或者对ARM7与ARM9的区别不是很了解的初学者。希望本文对你们有点用处。 由于职业的关系,经常会回答一些ARM初学者的问题,虽然问题千奇百怪,但以下两个问题绝对很有代表性。 ARM7和ARM9的都有些什么区别? 我准备学ARM,但不知是选ARM7还是ARM9好? 也许这些问题在大虾们的眼里已不是问题,但对于初学者确实很具必要弄清楚。先说下:ARM7和ARM9的区别。 1.时钟频率的提高 虽然ARM7和ARM9内核架构相同,但ARM7处理器采用3级流水线的冯·诺伊曼结构;,而ARM9采用5级流水线的哈佛结构。增加的流水线设计提高了
[单片机]
基于ARM7的畜牧养殖智能消毒机器人控制系统设计
1 总体方案设计 畜牧养殖智能消毒机器人控制系统由机器人智能控制模块、监视模块、及无线网络通讯模块等三大部分组成。工作过程是通过接入互联网的手机或者微型计算机客户端通过无线网络向远程的机器人发送控制指令代码,期间传输信号由发送端使用加密狗加密。当信号经互联网发送到接收终端时,智能消毒机器人网络模块把接收的指令传送到处理器,处理器指示驱动模块驱动智能消毒机器人执行动作。运动的同时监视模块把采集到的图像通过无线互联网传输到客户机端,其整体结构如图1所示。 1.1 智能控制模块 此模块是智能消毒机器人的核心部分。采用的是嵌入式系统设计,可以准确高效地运行及处理数据。控制器通过网络组件WIFI或者GPRS与外部网络进行数据通讯,
[单片机]
基于<font color='red'>ARM7</font>的畜牧养殖智能消毒机器人控制系统设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved