ARM7中文数据手册

合集下载

arm7 系列开发指南

arm7 系列开发指南

深圳2008AT91SAM7 系列开发指南Moise /杨策系统工程师香港百特上海技术中心内容提要AT91SAM7 系统结构介绍AT91SAM7 启动方式AT91SAM7 的时钟和电源管理AT91SAM7L 相关介绍开发所需软,硬件资源简介ISP代码烧写软件解决方式AT91SAM7产品系列In DevelopmentIn FabAvailableIn Spec 512k BLow Pin CountUSBExternal Bus Interface USBEthernet, CAN,USBCAN, MCI,USBUltra Low PowerEthernet, CAN AES/3DES, USB256k B 128K B 64K B 32K B 16K BSAM7S64SAM7A3SAM7L256SAM7XC256SAM7X256SAM7X128SAM7XC128SAM7X512SAM7XC512SAM7SE256SAM7S256SAM7S128SAM7S64SAM7S32SAM7S512SAM7S321SAM7SE512SAM7S161SAM7S16No QFN on SAM7S161SAM7SE32SAM7L128SAM7L64AT91SAM7S 系列结构APBICEAMBA BridgeAT91SAM7SARM7TDMIPIT Main OSC PLL PMC WDT Memory ControllerJTAGSRAM8K-64KBFlash32K-512KBROM8KB SAM-BAFFPI Peripheral DMA controllerAIC RC OSCRTT1.8V LDOBOD PORSSCUSART SPITimer x3PWM x4ADC x8UARTTWIUSB DevicePIO x32USARTAT91SAM7SE 系列结构AT91SAM7SEAPBICEAMBA BridgeARM7TDMIPIT Main OSC PLL PMC WDT Memory ControllerJTAGPeripheral DMA controllerAIC RC OSCRTT1.8V LDOBOD POREBIStatic Mem.CFNAND FlashECC SmartMedia SDRAMSSCUSARTSPI Timer x3PWM x4ADC x8Debug UARTTWIUSB DevicePIO x88SRAM8-32KBFlash32-512KBROM16KB SAM-BAFFPI USART MPUAT91SAM7X 系列结构APBICEAMBA BridgeAT91SAM7X(C)ARM7TDMIPIT Main OSC PLL PMC WDT Memory ControllerJTAGPeripheral DMA controllerAIC RC OSCRTTSSCUSART SPI Timer x3PWM x4ADC x8UARTTWIUSB DevicePIO x621.8V LDOBOD PORCAN 10/100EMACSPISRAM32K-128KBFlash128K-512KBROM12KB SAM-BAFFPI USARTDMAAT91SAM7 的启动方式AT91SAM7 boot 代码固化在片上的Rom 中Boot ROM memory 包含两个程序–SAM-BA Boot 恢复(SAM7S)–SAM-BA Boot (SAM7X/SE):通过USB或串口实现在系统编程(ISP)快速编程接口(FFPI)通过串行(JTAG)或并行方式提供的批量编程解决方法.芯片固化ROM 的重映射状况:–映射过(SAM7X/SE)–未映射(SAM7S):flash 地址为0SAM7S 的boot流程Power UpNoTST = 1YesPA0=PA1=1PA2 = 1YesNoPower Up with TST=0Yes从Flash 中运行应用程序从Flash 运行程序从而启动SAM-BA BootSAM-BA Boot Recovery≈10 secondsFFPIS e c u r i t y B i t 自动清除Boot From ROMSAM7S SAM-BA 恢复过程清除安全位,对扇区0 & 1解锁将ROM中的SAM-BA BootCopy 到FLASH设置允许用户复位位while(1);SAM7X/XC/SE的启动流程NoTST = 1YesPA0=PA1=1PA2 = 0YesPower UpGPNVM2 = 1NoYesFFPI从Flash 中运行用户程序运行ROM 中的SAM-BA Boot清除S e c u r i t yB i tSAM7 的boot与用户态转换YesGPNVM2 = 1NoPower UpPower UpPower Up执行用户应用程序Boot From ROM:SAM-BA Boot清除GPNVM2系统复位后从Rom运行boot设置GPNVM2以便系统复位后运行用户应用程序软件设置(E F C )软件清除(E F C )或E R AS E 脚上拉切换入ROM boot进入用户程序SAM-BA boot 的工作流程USB DBGU**:不支持外部时钟信号3 –20 MHz 主振&1 -50 MHz 外部时钟SAM7系列的remap实现Remap 的意义1:将存储器映射到芯片复位向量指向的位置(0x00)使程序可方便在不同的介质里运行.2:允许例外向量的动态处理Remap 的实现方式1:设置非易失性存储器的通用位(GPNVM2)—SAM7S无此位2:执行重映射命令存储器控制器的重映射寄存器MC_RCR置 1 ,使其Remap/Unmap. SAM7S系列存储器映射默认情况下,R O M 未映射到0地址SAM7X/SE系列存储器remap安排GPNVM2 = 0GPNVM2 = 1默认情况下R O M被影射到0地址软件或E R A SE软件设置E F C寄存器SAM7 的时钟结构安排SAM7的时钟结构1: MCK2: UDP可通过PMC禁止PCKPLL OutSAM7进入低功耗模式的方法控制着电压调节器的模式,通过设置PSTDBY位可使电压调节器进入待机模式或低功耗PSTDBY 即清零,从而使电压调节器进入正常模式。

MAGIC2103-ARM7开发板II用户手册_v1.00

MAGIC2103-ARM7开发板II用户手册_v1.00

MAGIC2103-ARM7开发板II 用 户 手册版 本 号: v1.00技术支持QQ : 571097167公 司 : 模数科技公 司 主 页 :日 期 : 2008.2.22目 录一、 MAGIC2103-ARM7开发板简介 (3)二、 套件清单 (3)三、 实例程序清单(拥有ADS1.2和Keil uVision3双环境例程) (4)四、 硬件资源 (4)五、 光盘内容 (5)六、 开发板资源分布图 (5)七、 接口说明 (6)八、 工具软件介绍 (6)< 一 > ADS1.2集成开发环境 (6)1、 简介 (6)2、 安装 (6)3、 使用 (6)< 二 > H-JTAG 调试助手 (6)1、 ARM7 JTAG下载线简介 (6)2、 H-JTAG安装 (7)3、 H-JTAG配置 (9)4、 H-JTAG使用方法 (12)< 三 > Keil uVision3集成开发环境 (13)< 四 > Flash Magic下载软件 (16)九、 后记 (17)一、M AGIC2103-ARM7开发板简介MAGIC2103-ARM7开发板II是在MAGIC2103-ARM7开发板的基础上升级而来,弥补了一下缺陷,外扩了I/O口和ADC输入接口。

它采用PHILIPS公司最新推出的基于ARM7TDMI-S 、LQFP48封装的LPC2103,最高工作速度可达70MHz(63MIP),8K的片内静态RAM和32KB的片内FLASH程序存储器。

通过ISP或JTAG实现程序下载和调试。

关于芯片的详细特性请见《LPC2101_2102_2103 ARM 微控制器数据手册》和《LPC2101_2102_2103 ARM微控制器使用指南》。

为适应广大用户的不同需求,MAGIC2103开发板提供了如今最流行的ADS1.2和Keil uVision3两种集成开发环境,并配备了20个经典的实例程序和详细的实例教程,使上手更加容易,快速完成51到ARM的过渡!二、套件清单◇ MAGIC2103-ARM7开发板一块◇ ARM JTAG下载线一个◇ 并口延长线一根◇ 串口延长线一根◇ USB电源线一根◇ 配套光盘一张三、实例程序清单(拥有ADS1.2和Keil uVision3双环境例程)实例01、GPIO实验-熟悉开发环境,以及程序下载和调试实例02、GPIO实验-流水灯与蜂鸣器演示实例03、高速GPIO实验-闪灯演示实例04、GPIO输入实验-按键控制实例05、PWM实验-LED控制实例06、定时器中断实验-向量中断实例07、定时器中断实验-非向量中断实例08、WDT看门狗实验实例09、电源管理之空闲模式实例10、电源管理之掉电模式实例11、UART1通信实验-查询方式接收实例12、UART0通信实验-中断方式接收实例13、IIC实验-EEPROM读写实例14、重映射实验实例15、GPIO模拟总线实验-LCD1602液晶显示实例16、ADC实验-千分之一精度电压表实例17、RTC实验-万年历电子钟实例18、EINT外部中断实验-PS/2键盘打字练习器实例19、基于uCOS-II 2.52的GPIO读写实验(基于ADS1.2集成开发环境)实例20、基于uCOS-II 2.52的ADC实验-千分之一精度电压表(基于ADS1.2集成开发环境)四、硬件资源◇ LPC2103(PHILIPS)ARM7TDMI-S,最高频率可达70MHz,片内8K SRAM,32K FLASH◇ EEPROM (24LC04)◇ 两个三线RS232接口,其中一个可用作ISP◇ 复位监控芯片SP708S◇ 3个独立按键◇ 1个蜂鸣器◇ LCD1602字符液晶◇ PS/2键盘接口◇ 可调电阻(ADC模拟信号输入)◇ 20芯ARM JTAG下载口◇ 3.3V、1.8V电源模块◇ 3个LED指示灯◇ USB电源接口◇ 系统晶振11.0592MHz◇ 11位I/O扩展口◇ 1位ADC输入口五、光盘内容◇ Keil uVision3集成开发环境◇ ADS1.2集成开发环境◇ H-JTAG 调试助手◇ Flash Magic下载软件◇ MAGIC2103-ARM7开发板ADS1.2实例包◇ MAGIC2103-ARM7开发板Keil uVision3实例包◇ MAGIC2103-ARM7开发板用户手册◇ MAGIC2103-ARM7开发板实例祥解◇ MAGIC2103-ARM7开发板原理图◇ MAGIC2103-ARM7开发板简介◇ LPC2103 LPC2101_2102_2103 ARM微控制器数据手册◇ LPC2101_2102_2103 ARM微控制器使用指南◇ ADS1.2中文教程◇ μCOS-II详解中文版◇ 其它芯片资料六、开发板资源分布图七、接口说明1、调试跳线:当使用JTAG调试时,需要短接此跳线,具体操作见用户手册和实例手册。

嵌入式开发ARM7试验手册下

嵌入式开发ARM7试验手册下

主程序流程/*************************************************************************** * 文件名:LEDCON.C* 功能:LED闪烁控制。

对发光二极管LED4进行控制,采用软件延时方法。

* 使用I/O口直接控制LED,采用灌电流方式。

* 说明:将跳线器JP4_LED4短接。

**************************************************************************** #include "config.h"#define LEDCON 0x02000000 /* P0.25引脚控制LED4,低电平点亮 *//*************************************************************************** * 名称:DelayNS()* 功能:长软件延时* 入口参数:dly 延时参数,值越大,延时越久* 出口参数:无**************************************************************************** void DelayNS(uint32 dly){ uint32 i;for(; dly>0; dly--)for(i=0; i<50000; i++);}/*************************************************************************** * 名称:main()* 功能:控制LED闪烁**************************************************************************** int main(void){ PINSEL0 = 0x00000000; // 设置所有管脚连接GPIOPINSEL1 = 0x00000000;IO0DIR = LEDCON; // 设置P0.9连接的LED4控制口为输出while(1){ IO0SET = LEDCON;DelayNS(30);(1) 仿照上册“Keil for ARM实例2:A/D程序设计与电路彷真”的例子创建工程LedCon。

ARM开发板使用手册

ARM开发板使用手册

ARM开发板使用手册PHILIP LPC2132ARM7TDMI第一章介绍LPC2132开发板是专门为arm 初学者开发的实验板,用户可以做基础的arm实验,也可以做基于ucos-ii的操作系统实验。

本系统的实验源代码全部开放,用户可以在此基础上开发产品,减少重复劳动。

由于LPC2132体积很小,并且功能强大,因此特别适合需要复杂智能控制的场合,其运行速度高于早期的80486计算机,而体积只有指甲大。

我们已经将LPC2132产品成功应用在干扰比较强的工业场合,经过6个月的运行,各项指标符合要求。

因此我们特别推荐这一款开发板作为ARM初学者入门。

由于此款开发板体积很小,非常适合直接应用在工业以及民用智能控制器的场合。

LPC2132 CPU介绍LPC2131/2132/2138 是基于一个支持实时仿真和跟踪的16/32 位ARM7TDMI-STM CPU,并带有32kB、64kB 和512kB 嵌入的高速Flash 存储器。

128 位宽度的存储器接口和独特的加速结构使32 位代码能够在最大时钟速率下运行。

对代码规模有严格控制的应用可使用16 位Thumb 模式将代码规模降低超过30%,而性能的损失却很小。

较小的封装和很低的功耗使LPC2131/2132/2138 特别适用于访问控制和POS 机等小型应用中;由于内置了宽范围的串行通信接口和8/16/32kB 的片内SRAM,它们也非常适合于通信网关、协议转换器、软件modem、语音识别、低端成像,为这些应用提供大规模的缓冲区和强大的处理功能。

多个32 位定时器、1个或2 个10 位8 路的ADC、10 位DAC、PWM 通道、47 个GPIO 以及多达9 个边沿或电平触发的外部中断使它们特别适用于工业控制应用以及医疗系统。

主要特性●●16/32 位ARM7TDMI-S 核,超小LQFP64 封装。

●●8/16/32kB 的片内静态RAM 和32/64/512kB 的片内Flash 程序存储器。

CG_ARM7 RMD 用户手册说明书

CG_ARM7 RMD 用户手册说明书
The device is configured via serial interface or via CAN. Due to the intuitive structure of the configuration file in ASCII format, programming and administration is very easy.
2.3 Configuration
The gateway configuration process consists of two steps: • Creating a configuration file • Loading the configuration into the device
2.3.1 Configuration File
1.3 Ordering Information
12­20­401­yy 12­20­402­yy
CG­ARM7/RMD CG­ARM7/RMD Version HS/LS
Note: yy denotes language of delivery:
10 german 20 english
EMS Dr. Thomas Wünsche
Example:
# 1st comment key = value # 2nd comment
version
version
The version number indicates the file format of the configuration file. It must be 1 for the actual version.
The configuration file is a text file with the extension *.gcf. This file contains all data needed by the gateway for operation. A complete sample configuration is located in chapter "4.1 Configuration file".

ARM7中文数据手册

ARM7中文数据手册

ARM7数据手册翻译:aufan序言:ARM7是一种低电压,通用32位RISC微处理器单元,可作一般应用或嵌入到ASIC或CSIC 中,其简洁一流的设计特别适用于电源敏感的应用中。

ARM7的小尺寸使它特别适合集成到比较大的客户芯片中,此芯片中也可以包含RAM,ROM,DSP,逻辑控制和其他代码。

增强特性:ARM7和ARM6有相似性,但增加了以下功能:基于亚微米的制程,增加了速度,减少了电源消耗3V操作,很小的电源消耗,并同5V系统兼容较高的时钟对所以程序执行较快。

特性总结:l32位的RISC结构处理器(包括32位地址线和数据线);l Little/Big Endian操作模式;l高性能RISC17MIPS sustained@25MHz(25MIPS peak)@3Vl较低的电压损耗0.6mA/MHz@3V fabricated in.8 m CMOS全静态操作l适用于对电源比较敏感的应用中l快速中断响应l适用于实时系统l支持虚拟内存l支持高级语言l简单但功能强大的指令系统应用ARM7适用于那些需要紧凑且功能强大的RISC处理器系统电讯GSM终端控制数据通信协议转换便携式计算机掌上电脑自动控制系统发动机管理单元信息存贮系统存储卡图像处理JOEG控制器目录1.0简介1.1ARM7模块图1.2ARM7功能图2.0信号描述3.0编程模式3.1硬件配置信号3.2操作模式选择3.3寄存器3.4异常3.5复位信号4.0指令系统4.1指令系统总述4.2条件代码4.3分支和分支连接指令4.4数据处理指令4.5PSR传输指令(MRS,MSR)4.6乘法和乘加指令(MUL,MLA)4.7单次数据传输(LDR,STR)4.8数据块传输(LDM,STM)4.9单次数据交换(SWP)4.10软件中断4.11协处理器数据操作(CDP)4.12协处理器数据传输(LDC,STC)4.13协处理器寄存器传输(MRC,MCR)4.14无定义指令4.15举例5.0存储器界面5.1周期类型5.2字节寻址5.3地址时序5.4存储器管理5.5锁操作5.6延续访问时间6.0微处理器接口6.1接口信号6.2数据传输周期6.3寄存器传输周期6.4特权指令6.5幂次访6.6无定义指令7.0指令周期操作7.1分支和分支连接7.2数据操作7.3乘法和乘加7.4加载寄存器7.5存储寄存器7.6加载乘数寄存器7.7存储乘数寄存器7.8数据交换7.9软件中断和故障入口7.10协处理器数据操作7.11协处理器数据传输(从存储器到协处理器)7.12协处理器数据传输(从协处理器到存储器)7.13协处理器寄存器传输(从协处理器加载)7.14协处理器寄存器传输(存储到协处理器)7.15无定义指令和协处理器空缺7.16不可执行的指令7.17指令速度总结8.0DC参数8.1Absolute Maximum Ratings8.2DC操作条件9.0AC参数9.1AC参数注释19.0附录—向下兼容性1.0简介ARM7是32位通用微处理器ARM(Advanced RISC Machines)家族中的一员,具有比较低的电源消耗和良好的性价比,基于(精简指令)RISC结构,指令集和相关的译码机制与微程序控制的复杂指令系统的计算机相比要相对简单,这使得它拥有比较高的指令处理能力和实时中断响应能力。

Armv7-M 架构参考手册(armv7m_arm)

Armv7-M 架构参考手册(armv7m_arm)

Proprietary Notice
This document is protected by copyright and other related rights and the practice or implementation of the information contained in this document may be protected by one or more patents or pending patent applications. No part of this document may be reproduced in any form by any means without the express prior written permission of Arm. No license, express or implied, by estoppel or otherwise to any intellectual property rights is granted by this document unless specifically stated.
Your access to the information in this document is conditional upon your acceptance that you will not use or permit others to use the information for the purposes of determining whether implementations infringe any third party patents.
Non-Confidential
Fourth release, adds DSP and Floating-point extensions, and extensive clarifications and reorganization.

ARM7 中文手册

ARM7 中文手册

ARM7数据手册翻译:aufan序言:ARM7是一种低电压,通用32位RISC微处理器单元,可作一般应用或嵌入到ASIC或CSIC 中,其简洁一流的设计特别适用于电源敏感的应用中。

ARM7的小尺寸使它特别适合集成到比较大的客户芯片中,此芯片中也可以包含RAM,ROM,DSP,逻辑控制和其他代码。

增强特性:ARM7和ARM6有相似性,但增加了以下功能:基于亚微米的制程,增加了速度,减少了电源消耗3V操作,很小的电源消耗,并同5V系统兼容较高的时钟对所以程序执行较快。

特性总结:l32位的RISC结构处理器(包括32位地址线和数据线);l Little/Big Endian操作模式;l高性能RISC17MIPS sustained@25MHz(25MIPS peak)@3Vl较低的电压损耗0.6mA/MHz@3V fabricated in.8 m CMOS全静态操作l适用于对电源比较敏感的应用中l快速中断响应l适用于实时系统l支持虚拟内存l支持高级语言l简单但功能强大的指令系统应用ARM7适用于那些需要紧凑且功能强大的RISC处理器系统电讯GSM终端控制数据通信协议转换便携式计算机掌上电脑自动控制系统发动机管理单元信息存贮系统存储卡图像处理JOEG控制器目录1.0简介1.1ARM7模块图1.2ARM7功能图2.0信号描述3.0编程模式3.1硬件配置信号3.2操作模式选择3.3寄存器3.4异常3.5复位信号4.0指令系统4.1指令系统总述4.2条件代码4.3分支和分支连接指令4.4数据处理指令4.5PSR传输指令(MRS,MSR)4.6乘法和乘加指令(MUL,MLA)4.7单次数据传输(LDR,STR)4.8数据块传输(LDM,STM)4.9单次数据交换(SWP)4.10软件中断4.11协处理器数据操作(CDP)4.12协处理器数据传输(LDC,STC)4.13协处理器寄存器传输(MRC,MCR)4.14无定义指令4.15举例5.0存储器界面5.1周期类型5.2字节寻址5.3地址时序5.4存储器管理5.5锁操作5.6延续访问时间6.0微处理器接口6.1接口信号6.2数据传输周期6.3寄存器传输周期6.4特权指令6.5幂次访6.6无定义指令7.0指令周期操作7.1分支和分支连接7.2数据操作7.3乘法和乘加7.4加载寄存器7.5存储寄存器7.6加载乘数寄存器7.7存储乘数寄存器7.8数据交换7.9软件中断和故障入口7.10协处理器数据操作7.11协处理器数据传输(从存储器到协处理器)7.12协处理器数据传输(从协处理器到存储器)7.13协处理器寄存器传输(从协处理器加载)7.14协处理器寄存器传输(存储到协处理器)7.15无定义指令和协处理器空缺7.16不可执行的指令7.17指令速度总结8.0DC参数8.1Absolute Maximum Ratings8.2DC操作条件9.0AC参数9.1AC参数注释19.0附录—向下兼容性1.0简介ARM7是32位通用微处理器ARM(Advanced RISC Machines)家族中的一员,具有比较低的电源消耗和良好的性价比,基于(精简指令)RISC结构,指令集和相关的译码机制与微程序控制的复杂指令系统的计算机相比要相对简单,这使得它拥有比较高的指令处理能力和实时中断响应能力。

ARM7TDMI-S(Rev 4)技术参考手册

ARM7TDMI-S(Rev 4)技术参考手册

ARM7TDMI-S(Rev 4)技术参考手册第1 章介绍这一章介绍ARMTDMI-S 处理器。

包含以下小节:* 关于ARM7TDMI-S 处理器* ARM7TDMI-S 结构* ARM7TDMI-S 模块内核和功能框图* ARM7TDMI-S 指令集汇总* Rev 3a 和Rev 4 之间的差异1.1 关于ARM7TDMI-S 处理器ARM7TDMI-S 处理器是ARM 通用32 位微处理器家族的成员之一。

ARM 处理器具有优异的性能,但功耗却很低,使用门的数量也很少。

ARM 结构是基于精简指令集计算机(RISC)原理而设计的。

指令集和相关的译码机制比复杂指令集计算机要简单得多。

这样的简化实现了:* 高的指令吞吐量* 出色的实时中断响应* 小的高性价比的处理器宏单元1.1.1 指令流水线ARM7TDMI-S 处理器使用流水线来增加处理器指令流的速度。

这样可使几个操作同时进行,并使处理和存储器系统连续操作。

流水线使用3 个阶段,因此指令分3 个阶段执行。

* 取指* 译码* 执行3 阶段流水线如图1-1 所示。

注:程序计数器(PC)指向被取指的指令,而不是指向正在执行的指令。

在正常操作过程中,在执行一条指令的同时对下一条指令进行译码,并将第三条指令从存储器中取出。

1.1.2 存储器访问ARM7TDMI-S 处理器使用了冯诺依曼(Von Neumann )结构,指令和数据共用一条32 位总线。

只有装载存储和交换指令可以对存储器中的数据进行访问。

数据可以是8 位字节16 位半字或者32 位字。

字必须分配为占用4 字节,而半字必须分配为占用2字节。

1.1.3 存储器接口ARM7TDMI-S 处理器的存储器接口可以使潜在的性能得到实现,这样减少了存储器的使用。

对速度有严格要求的控制信号使用流水线,这样使系统控制功能以标准的低功耗逻辑实现。

这些控制信号使许多片内和片外存储器技术所支持的“快速突发访问模式”得到充分利用。

ARM7体系结构详细说明

ARM7体系结构详细说明

922T:带有独立的8位 数据和指
多到35%;
令;
在0.13µm工艺下最高性能可达到300( 2.1
940T–包括更小数据和指令和一
测试标准);

集成了数据和指令;
32位总线接口的支持;
可在0.18µm、 0.15µm和0.13µm工艺的硅芯
片上实现。
3.1 简介
9E
926: 技术,有,可配置的数据和 9E是针对微控制器、和的单处理器解决方案;
公司开发了很多系列的处理器核,目前最新的 系列已经是11了,而6核以及更早的系列已经很罕 见了。目前应用比较广泛的系列是:
7
9
9E
10
11
3.1 简介
ARM7
预取
译码
执行
(Fetch) (Decode) (Execute)
ARM9
预取
译码
执行
访存
写入
(Fetch) (Decode) (Execute) (Memory) (Write)
3.1 简介
各体系结构版本
体系结构从最初开发到现在有了很大的改进, 并仍在完善和发展。为了清楚的表达每个应用实例 所使用的指令集,公司定义了6种主要的指令集体 系结构版本,以版本号V1~V6表示。
3.1 简介
各体系结构版本——V1
该版本的体系结构,只有26位的寻址空间,没 有商业化,其特点为: 基本的数据处理指令(不包括乘法); 字节、字和半字加载/存储指令; 具有分支指令,包括在子程序调用中使用的分支和 链接指令; 在操作系统调用中使用的软件中断指令。
ቤተ መጻሕፍቲ ባይዱ
预取
发送
译码
执行
访存
写入
ARM10 (Fetch) (Issue) (Decode) (Execute) (Memory) (Write)

ARM7TDMI-S(Rev 4)技术参考手册

ARM7TDMI-S(Rev 4)技术参考手册

ARM7TDMI-S(Rev 4)技术参考手册第1章介绍这一章介绍ARMTDMI-S处理器包含以下小节z 关于ARM7TDMI-S 处理器z ARM7TDMI-S结构z ARM7TDMI-S模块内核和功能框图z ARM7TDMI-S指令集汇总z Rev 3a和Rev 4之间的差异1.1 关于ARM7TDMI-S处理器ARM7TDMI-S处理器是ARM通用32位微处理器家族的成员之一ARM处理器具有优异的性能但功耗却很低使用门的数量也很少ARM结构是基于精简指令集计算机(RISC)原理而设计的指令集和相关的译码机制比复杂指令集计算机要简单得多这样的简化实现了z 高的指令吞吐量z 出色的实时中断响应z 小的高性价比的处理器宏单元1.1.1指令流水线ARM7TDMI-S处理器使用流水线来增加处理器指令流的速度这样可使几个操作同时进行并使处理和存储器系统连续操作流水线使用3个阶段因此指令分3个阶段执行z 取指z 译码z 执行3阶段流水线如图1-1所示ARM ThumbPC PC 指令从存储器中取出PC-4 PC-2 对指令使用的寄存器进行译码PC-8 PC-4 从寄存器组中读出寄存器执行移位和ALU操作寄存器写回到寄存器组图1-1 指令流水线注程序计数器(PC)指向被取指的指令而不是指向正在执行的指令在正常操作过程中在执行一条指令的同时对下一条指令进行译码并将第三条指令从存储器中取出1.1.2 存储器访问ARM7TDMI-S处理器使用了冯诺依曼Von Neumann结构指令和数据共用一条32位总线只有装载存储和交换指令可以对存储器中的数据进行访问数据可以是8位字节16位半字或者32位字字必须分配为占用4字节而半字必须分配为占用2字节1.1.3 存储器接口ARM7TDMI-S处理器的存储器接口可以使潜在的性能得到实现这样减少了存储器的使用对速度有严格要求的控制信号使用流水线这样使系统控制功能以标准的低功耗逻辑实现这些控制信号使许多片内和片外存储器技术所支持的快速突发访问模式得到充分利用ARM7TDMI-S处理器的存储器周期有4种基本类型z 内部周期z 非连续的周期z 连续的周期z 协处理器寄存器传输周期1.2 ARM7TDMI-S的结构ARM7TDMI-S处理器有两个指令集z 32位ARM指令集z 16位Thumb指令集ARM7TDMI-S处理器使用了ARM结构v4T关于ARM和Thumb指令集的详细信息请参阅ARM 体系结构参考手册1.2.1 指令压缩传统的微处理器结构对于指令和数据有相同的带宽因此和16位结构相比32位结构处理32位数据具有更高的性能并且在寻址更大的地址空间时要有效得多16位结构比32位结构具有更高的代码密度并且超过32位结构50%的性能Thumb在32位结构上实现了16位的指令集这样可提供z 比16位结构更高的性能z 比32位结构更高的代码密度1.2.2 Thumb指令集Thumb指令集是最通用的ARM指令的子集Thumb指令长度为16位每条指令都对应一条32位ARM 指令它对处理器模型有相同的效果Thumb指令使用标准的ARM寄存器配置进行操作这样ARM和Thumb状态之间具有极好的互用性在执行方面Thumb具有32位内核所有的优点z 32位地址空间z 32位寄存器z 32位移位器和算术逻辑单元(ALU)z 32位存储器传输Thumb因此提供了长的分支范围强大的算术操作和巨大的地址空间Thumb代码仅为ARM代码规模的65%但其性能却相当于连接到16位存储器系统的ARM处理器性能的160%因此Thumb使ARM7TDMI-S处理器非常适用于那些只有有限的存储器带宽并且代码密度很高的嵌入式应用16位Thumb和32位ARM指令集使设计者极大的灵活性使他们可以根据各自应用的需求在子程序一级上实现对性能或者代码规模的优化例如应用中的快速中断和DSP算法可使用完全的ARM指令集编写并使用Thumb代码连接1.3 ARM7TDMI-S 模块内核和功能框图ARM7TDMI-S 处理器结构内核和功能框图见下z ARM7TDMI-S 模块见图1-2 z ARM7TDMI-S 内核见图1-3z ARM7TDMI-S 功能框图见图1-4WDATA[31:RDATA[31:图1-2 ARM7TDMI-S 模块注数据总线上没有双向路径图1-2对这些作了简化C L KC L KE N C FG B IGEND nIRQ nF IQ nRE S E T AB O R T C P CPDBG DBG TRANS[1:0]PROT[1:0]S I ZE[1:0]WRITE LOCK WDAT A[31:0]RDAT A[31:0]ADDR [31:0]态寄存器地址增加器增加器总线筒形移位器指令管线读数据寄存器图1-3 ARM7TDMI-S 内核Embe de dICE-RT图1-4 ARM7TDMI-S功能框图1.4 ARM7TDMI-S指令集汇总该节提供了ARM和Thumb指令集的汇总z ARM指令汇总z Thumb指令汇总指令集详见ARM体系结构参考手册1.5 Rev 3a和Rev 4之间的差异ARM7TDMI-S(Rev 4)的变更见下面的章节z 增加的EmbeddedICE-RT逻辑z 改进的调试通信通道(DCC)带宽z 通过JTAG对DCC进行访问z TAP控制器ID寄存器z 更加有效的多路传输1.5.1 增加的EmbeddedICE-RT逻辑EmbeddedICE-RT对ARM7TDMI-S(Rev 3)当中的EmbeddedICE逻辑作了改进EmbeddedICE-RT可以使您在监控模式下执行调试在监控模式下内核在遇到断点或观察点时执行异常处理并不像在暂停模式中那样进入调试状态如果内核在遇到断点或观察点时不进入调试状态它仍然可以像正常情况下一样响应硬件中断请求如果内核构成了机械系统反馈环的一部分那么在监控模式下进行调试非常有用因为如果停止内核会导致系统运转中断更详细的信息请查阅第5章调试您的系统节电当DBGEN被拉低时大部分的EmbeddedICE-RT逻辑都被禁止以实现最低功耗程序员模式的改变程序员模式的改变如下调试控制寄存器增加了两个新的位Bit4 监控模式使能使用该位来控制器件对断点或观察点的反应z 置位时内核执行指令或数据的异常中止z 当清零时内核进入调试状态Bit5 EmbeddedICE-RT禁止在更改观察点和断点时使用该位z 置位时该位禁止断点和观察点断点或观察点寄存器可以编程为新的值z 清零时新的断点或观察点值生效协处理器寄存器映射协处理器寄存器映射中的一个新的寄存器R2指示处理器是因为一个真实的中止还是因为断点或观察点而进入预取指或数据异常中止更详细的信息请参阅第5章的中止状态寄存器1.5.2 改进的调试通信通道(DCC)带宽在ARM7TDMI-S处理器(Rev 3)中读取DCC数据需要对扫描链2进行两次访问第一次访问状态位第二次访问数据本身为了改进DCC带宽在ARM7TDMI-S处理器(Rev 4)中读取数据和状态位只需要一次访问状态位包含在扫描链所读取的地址区域的最低位当中DCC控制寄存器中的状态位保持不变以确保向下兼容性更多信息参考第5章的调试通信通道一节1.5.3 通过JTAG访问DCCDCC控制寄存器可通过ARM7TDMI-S处理器(Rev 4)中的JTAG接口进行控制处理器写操作清零bit0数据读控制位更多信息请参考第5章的调试通信通道一节1.5.4 TAP控制器ID寄存器TAP控制器ID寄存器值为0x7F1F0F0F更多信息请参考第5章的ARM7TDMI-S器件标识(ID)代码寄存器一节第2章编程模型这一章讲述ARM7TDMI-S处理器的编程模型包含以下小节z 关于编程模型z 处理器操作状态z 存储器格式z 指令长度z 数据类型z 操作模式z 寄存器z 程序状态寄存器z 异常z 状态延迟z 复位2.1 关于编程模型ARM7TDMI-S处理器内核使用ARM v4T结构实现该结构包含32位ARM指令集和16位Thumb指令集在ARM体系结构参考手册中详细讲述了编程模型2.2 处理器操作状态ARM7TDMI-S处理器有两种操作状态ARM状态32位这种状态下执行的是字方式的ARM指令Thumb状态 16位半字方式的Thumb指令在Thumb状态中程序计数器PC使用bit1来选择切换半字注ARM和Thumb状态间的切换并不影响处理器模式或寄存器内容2.2.1 状态切换您可以使用BX指令将ARM7TDMI-S内核的操作状态在ARM状态和Thumb状态之间进行切换详见ARM体系结构参考手册所有的异常处理都在ARM状态中执行如果异常发生在Thumb状态中处理器会返回ARM状态在异常处理返回时自动切换回Thumb状态2.3 存储器格式ARM7TDMI-S处理器将存储器看作是一个从0开始的线性递增的字节集合z 字节0到3保存第1个存储的字z 字节4到7保存第2个存储的字z 字节8到11保存第3个存储的字ARM7TDMI-S处理器可以将存储器中的字以下列格式存储z 大端Big-endian格式z 小端Little-endian格式2.3.1 大端格式在大端格式中ARM7TDMI-S 处理器将最高位字节保存在最低地址字节最低位字节保存在最高地址字节因此存储器系统字节0连接到数据线3124843124231615870低地址字地址图2-1 字内字节的大端地址2.3.2 小端格式在小端格式中一个字当中最低地址的字节被看作是最低位字节最高地址字节被看作是最高位字节因此存储器系统字节0连接到数据线70如图2-2所示843124231615870低地址字地址图2-2 字内字节的小端地址2.4 指令长度指令长度为下面两种之一z 32位长度在ARM状态中z 16位长度在Thumb状态中2.5 数据类型ARM7TDMI-S处理器支持下列数据类型z 字32位z 半字16位z 字节8位您必须这样进行分配z 字量必须分配为占用4个字节z 半字量必须分配为占用2个字节z 字节量可放置在任何一个字节内2.6 操作模式ARM7TDMI-S处理器具有7种操作模式z 用户模式这是ARM程序通常执行的状态用于执行大多数应用程序z 快速中断FIQ模式支持数据传输或通道处理z 中断IRQ模式用于通用中断处理z 超级用户模式是操作系统一种受保护的模式z 中止模式在数据或指令预取指中止时进入该模式z 系统模式是操作系统一种特许的用户模式z 未定义模式当执行未定义的指令时进入该模式除了用户模式之外其它模式都被归为特权模式特权模式用于服务中断异常或者访问受保护的资源2.7 寄存器ARM7TDMI-S处理器总共有37个寄存器z 31个通用32位寄存器z 6个状态寄存器这些寄存器并不是在同一时间全都可以被访问的处理器状态和操作模式决定了程序员可以访问哪些寄存器2.7.1 ARM状态寄存器集在ARM状态中16个通用寄存器和1个或2个状态寄存器可在任何时候同时被访问在特权模式中与模式相关的分组寄存器可以被访问图2-3所示为每种模式所能访问的寄存器ARM状态寄存器集包含16个可直接访问的寄存器r0r15一个附加的寄存器当前程序状态寄存器CPSR包含条件代码标志和当前模式位寄存器r0r13为保存数据或地址值的通用寄存器寄存器r14和r15具有下面的特殊功能连接寄存器寄存器14作为一个子程序连接寄存器LR当执行连接分支BL指令时r14接收r15的备份在其它时候可将r14当成一个通用寄存器对应的分组寄存器r14_svc, r14_irq, r14_fiq, r14_abt和r14_und与之相似当发生中断和异常或者当中断或异常子程序中的BL指令执行时用于保存r15的返回值程序计数器寄存器15用于保存程序计数器PC在ARM状态中r15中的bits[1:0]为0bits[31:2]包含PC值在Thumb状态中bit[0]为0bits[31:1]包含PC值在特权模式中另外一个寄存器被保存的程序状态寄存器SPSP可以被访问它包含了条件代码标志和作为异常的结果所保存的模式位此异常导致进入当前模式关于程序状态寄存器的描述见后面的章节分组寄存器有一个模式标识符用于指示它们被映射到哪个用户模式寄存器这些模式标识符如表2-1所示表2-1 寄存器模式标识符模式模式标识符用户 usr快速中断 fiq中断 irq超级用户 svc中止 abt系统 sys未定义 undFIQ 模式有7个分组寄存器分别映射到r8r14r8_fiqr14_fiq在ARM 状态中大多数FIQ 处理程序都不必保存任何寄存器用户IRQ 超级用户中止和未定义模式各有2个分组寄存器分别映射到r13和r14每种模式允许有一个专用的堆栈指针和LR图2-3所示为ARM状态寄存器ARM r0r1r2r3r4r5r6r7r8r9r10r11r12r13r14r15(PC)=状态通用寄存器和程序计数器系统和用户超级用户快速中断中断ARM 状态程序寄存器分组寄存器图2-3 ARM 状态中的寄存器结构2.7.2 Thumb 状态寄存器集Thumb 状态寄存器集时ARM 状态集的子集程序员可直接访问z 8个通用寄存器r0r7z PC z 堆栈指针SPz 连接寄存器LRz CPSR每个特权模式都有分组的SPLR 和SPSR该寄存器集如图2-4所示r0r1r2r3r4r5r6r7SP LR PC=状态通用寄存器和程序计数器系统和用户Thumb 状态程序寄存器分组寄存器Thumb图2-4 Thumb 状态中的寄存器结构2.7.3 ARM 状态寄存器和Thumb 状态寄存器之间的关系Thumb 状态寄存器与ARM 状态寄存器有如下的关系z Thumb 状态r0r7与ARM 状态r0r7相同z Thumb 状态CPSR 和SPSR 与ARM 状态CPSR 和SPSR 相同 z Thumb 状态SP 映射到ARM 状态r13 z Thumb 状态LR 映射到ARM 状态r14 z Thumb 状态PC 映射到ARM 状态PC(r15) 这些关系如图2-5所示图2-5 Thumb 寄存器在ARM 状态寄存器上的映射注寄存器r0r7为低寄存器寄存器r8r15为高寄存器2.7.4 在Thumb 状态中访问高寄存器在Thumb 状态中高寄存器r8r15不是标准寄存器集的一部分汇编语言程序员对它们的访问受到限制但可以将它们用于快速暂存可以使用MOV 指令的特殊变量将一个值从低寄存器r0r7转移到高寄存器或者从高寄存器到低寄存器CMP 指令可用于比较高寄存器和低寄存器的值ADD 指令可用于将高寄存器的值与低寄存器的值相加详细信息请参考ARM体系结构参考手册2.8 程序状态寄存器ARM7TDMI-S 内核包含1个CPSR 和5个SPSR 供异常处理程序使用程序状态寄存器z 保持条件代码标志 z 控制中断的使能和禁止 z 设置处理器操作模式 位的分配如图2-6所示图2-6 程序状态寄存器格式注为了保持与将来的ARM 处理器兼容并且作为一种良好的习惯在更改CPSR 时我们强烈建议您使用读写修改的方法2.8.1 条件代码标志N, Z, C 和V 位都是条件代码标志可以通过算术和逻辑操作来设置这些位这些标志还可通过MSR和LDM 指令进行设置ARM7TDMI-S 处理器对这些位进行测试以决定是否执行一条指令在ARM 状态中所有指令都可按条件来执行在Thumb 状态中只有分支指令可条件执行更详细的信息请参考ARM 体系结构参考手册2.8.2 控制位PSR 的最低8位为控制位它们分别是z 中断禁止位 z T 位 z 模式位 当发生异常时控制位改变当处理器在一个特权模式下操作时可用软件操作这些位中断禁止位I 和F 位都是中断禁止位z 当I 位置位时IRQ 中断被禁止 z 当F 位置位时FIQ 中断被禁止T位T位反映了正在操作的状态z 当T位置位时处理器正在Thumb状态下运行z 当T位清零时处理器正在ARM状态下运行操作状态通过CPTBIT外部信号反映警告绝对不要强制改变CPSR寄存器中的T位如果这样做处理器会进入一个无法预知的状态模式位M4, M3, M2, M1和M0位M[4:0]都是模式位这些位决定处理器的操作模式见表2-2不是所有模式位的组合都定义了有效的处理器模式因此请小心不要使用表中所没有列出的组合表2-2 PSR模式位值M[4:0] 模式可见的Thumb状态寄存器可见的ARM状态寄存器10000 用户r0~r7, SP, LR, PC, CPSR r0~r14,PC, CPSR10001 FIQ r0~r7,SP_fiq,LR_fiq,PC,CPSR, SPSR_fiq r0~r7,r8_fiq~r14_fiq,PC,CPSR, SPSR_fiq 10010 IRQ r0~r7,SP_irq,LR_irq,PC,CPSR,SPSR_fiqr0~r12,r13_irq,r14_irq,PC,CPSR,SPSR_irq10011 超级用户 r0~r7,SP_svc,LR_svc,PC,CPSR,SPSR_svc r0~r12,r13_svc,r14_svc,PC,CPSR, SPSR_svc10111 中止 r0~r7,SP_abt,LR_abt,PC,CPSR,SPSR_abtr0~r12,r13_abt,r14_abt,PC,CPSR,SPSR_abt11011 未定义 r0~r7,SP_und,LR_und,PC,CPSR,SPSR_und r0~r12,r13_und,r14_und,PC,CPSR, SPSR_und11111 系统 r0~r7,SP,LR,PC,CPSR注如果将非法值写入M[4:0]中处理器将进入一个无法恢复的模式2.8.3 保留位PSR中的保留位被保留将来使用当改变PSR标志和控制位时请确认没有改变这些保留位另外请确保您的程序不依赖于包含特定值的保留位因为将来的处理器可能会将这些位设置为1或者02.9 异常只要正常的程序流被暂时中止处理器就进入异常模式例如响应一个来自外设的中断在处理异常之前ARM7TDMI-S内核保存当前的处理器状态这样当处理程序结束时可以恢复执行原来的程序如果同时发生两个或更多异常那么将按照固定的顺序来处理异常见异常优先级一节该节将会详细讲述ARM7TDMI-S处理器的异常处理z 异常入口/出口汇总z 进入异常z 退出异常2.9.1 异常入口/出口汇总表2-3所示为异常入口处变量r14所保存的PC值以及退出异常处理程序所推荐使用的指令表2-3 异常入口/出口异常或入口 返回指令 之前的状态ARM r14_x Thumb r14_x 备注BL MOV PC,R14PC+4PC+2 SWIMOVS PC,R14_svcPC+4 PC+2 未定义的指令MOVS PC,R14_und PC+4PC+2 预取指中止 SUBS PC,R14_abt,#4 PC+4 PC+4 此处PC 为BL, SWI, 未定义的指令取指或者预取中止指令的地址FIQ SUBS PC,R14_fiq,#4 PC+4PC+4 IRQSUBS PC,R14_irq,#4 PC+4 PC+4 此处PC 为由于FIQ 或IRQ 占先而没有被执行的指令的地址数据中止SUBS PC,R14_abt,#4 PC+8PC+8此处PC 为产生数据中止的装载或保存指令的地址复位无复位时保存在r14_svc 中的值不可预知2.9.2 进入异常当处理异常时ARM7TDMI-S 内核会1.在适当的LR 中保存下一条指令的地址当异常入口来自ARM 状态ARM7TDMI-S 将下一条指令的地址复制到LR 中当前PC+4或PC+8取决于异常的类型Thumb状态ARM7TDMI-S 将PC 加偏移值PC+4或PC+8取决于异常的类型写入LR当进入异常时异常处理程序不必确定状态例如在SWI 情况下MOVS PC,r14_svc 总是返回到下一条指令而不管SWI 是在ARM 还是在Thumb 状态下执行2. 将CPSR 复制到适当的SPSR3. 根据异常将CPSR 模式强制设为某一值4. 强制PC 从相关的异常向量处对下一条指令取指ARM7TDMI-S 内核在中断异常时置位中断禁止标志这样可防止不受控制的异常嵌套注异常总是在ARM 状态中进行处理当处理器处于Thumb 状态时发生了异常在异常向量地址装入PC 时会自动切换到ARM 状态2.9.3 退出异常当异常结束时异常处理程序必须1. 将LR 中的值减去偏移量后移入PC 偏移量根据异常的类型而有所不同见表2-32. 将SPSR 的值复制回CPSR3. 清零在入口置位的中断禁止标志注恢复CPSR 的动作会将T, F 和I 位自动恢复为异常发生前的值2.9.4 快速中断请求快速中断请求(FIQ)异常支持数据转移或通道处理在ARM 状态中FIQ 模式有8个专用的寄存器可用来满足寄存器保护的需要这是上下文切换的最小开销将nFIQ 信号拉低可实现外部产生FIQ不管异常入口是来自ARM 状态还是Thumb 状态FIQ 处理程序都会通过执行下面的指令从中断返回 SUBS PC,R14_fiq,#4在一个特权模式中可通过置位CPSR 中的F 标志来禁止FIQ 异常当F 标志清零时ARM7TDMI-S 在每条指令结束时检测FIQ 同步器输出端的低电平2.9.5 中断请求中断请求IRQ异常是一个由nIRQ输入端的低电平所产生的正常中断IRQ的优先级低于FIQ对于FIQ序列它是被屏蔽的任何时候在一个特权模式下都可通过置位CPSR中的I 位来禁止IRQ,不管异常入口是来自ARM状态还是Thumb状态IRQ处理程序都会通过执行下面的指令从中断返回SUBS PC,R14_irq,#42.9.6 中止中止表示当前存储器访问不能被完成这是通过外部ABORT输入指示的不管异常入口是来自ARM 状态还是Thumb状态FIQ处理程序都会通过执行下面的指令从中断返回SUBS PC,R14_fiq,#4在存储器访问周期结束时检测中止异常有两种类型的中止z 预取指中止发生在指令预取指过程中z 数据中止发生在对数据访问时预取指中止当发生预取指中止时ARM7TDMI-S内核将预取的指令标记为无效但在指令到达流水线的执行阶段时才进入异常如果指令在流水线中因为发生分支而没有被执行中止将不会发生在处理中止的原因之后不管处于哪种处理器操作状态处理程序都会执行下面的指令SUBS PC,R14_abt,#4这个动作恢复了PC和CPSR并重试被中止的指令数据中止当发生数据中止时根据指令的类型产生不同的动作z 数据转移指令LDR,STR回写到被修改的基址寄存器中止处理程序必须注意这一点z 交还指令SWP中止好像没有被执行过一样中止必须发生在SWP指令进行读访问时z 块数据转移指令LDM,STM完成当回写被设置时基址寄存器被更新在指示出现中止后ARM7TDMI-S内核防止所有寄存器被覆盖这意味着ARM7TDMI-S内核总是会保护被中止的LDM指令中的r15总是最后一个被转移的寄存器中止的机制使指令分页的虚拟存储器系统能够被实现在这样一个系统中处理器允许产生仲裁地址当某一地址的数据无法访问时存储器管理单元MMU通知产生了中止中止处理程序必须找出中止的原因使请求的数据可以被访问并重新执行被中止的指令应用程序不必知道可用存储器的数量也不必知道它的被中止时所处的状态在修复产生中止的原因后不管处于哪种处理器操作状态处理程序都必须执行下面的返回指令SUBS PC,R14_abt,#8这个动作恢复了PC和CPSR并重试被中止的指令2.9.7 软件中断指令软件中断(SWI)用于进入超级用户模式通常用于请求一个特定的超级用户函数SWI处理程序通过执行下面的指令返回MOVS PC,R14_svc这个动作恢复了PC和CPSR并返回到SWI之后的指令SWI处理程序读取操作码以提取SWI函数编号2.9.8 未定义的指令当ARM7TDMI-S处理器遇到一条系统内任何协处理器都无法处理的指令时ARM7TDMI-S内核执行未定义指令陷阱软件可使用这一机制通过仿真未定义的协处理器指令来扩展ARM指令集注ARM7TDMI-S处理器完全遵循ARM结构v4T可以捕获所有分类未被定义的指令位格式在防止失败的指令后捕获处理器执行下面的指令MOVS PC,R14_und这个动作恢复了PC和CPSR并返回到未定义指令之后的指令关于未定义指令更详细的信息请参考ARM体系结构参考手册2.9.9 异常向量表2-4所示位异常向量地址在表中I和F表示先前的值表2-4 异常向量地址异常进入时的模式进入时I的状态进入时F的状态0x00000000 复位超级用户禁止禁止0x00000004 未定义指令未定义 I F 0x00000008 软件中断超级用户禁止 F 0x0000000C 中止预取指中止 I F 0x00000010 中止数据中止 I F 0x00000014 保留保留0x00000018 IRQ IRQ 禁止 F 0x0000001C FIQ FIQ 禁止禁止2.9.10 异常优先级当多个异常同时发生时一个固定的优先级系统决定它们被处理的顺序1. 复位最高优先级2. 数据中止3. FIQ4. IRQ5. 预取指中止6. 未定义指令7. SWI最低优先级有些异常不能一起发生z 未定义的指令和SWI异常互斥它们分别对应于当前指令的一个特定非重叠译码z 当FIQ使能并且在发生FIQ的同时产生了一个数据中止ARM7TDMI-S内核进入数据中止处理程序然后立即转到FIQ向量从FIQ的正常返回使数据中止处理程序恢复执行数据中止的优先级必须高于FIQ以确保数据转移错误不会被漏过必须将异常入口的时间增加到系统中最坏情况下FIQ的延迟时间2.10 中断延迟中断延迟被描述为z 最大中断延迟z 最小中断延迟2.10.1 最大中断延迟当FIQ使能时最坏情况下FIQ的延迟时间包含z Tsyncmax请求通过同步器的最长时间Tsyncmax为2个处理器周期z Tldm最长的指令执行需要的时间最长的指令是装载包括PC在内所有寄存器的LDM指令Tldm在零等待状态系统中的执行时间为20个周期z Texc数据中止入口的时间Texc为3个周期z Tfiq FIQ入口的时间Tfiq为2个周期因此总的延迟时间为27个周期在系统使用40MHz处理器时钟时略微小于0.7微妙在此时间结束后ARM7TDMI-S执行位于0x1c处的指令最大的IRQ延迟时间与之相似但必须考虑到这样一个事实即有更高优先级的FIQ可能会因为仲裁的时间而延迟IRQ处理程序的进入2.10.2 最小中断延迟最小中断延迟FIQ或IRQ的最小中断延迟是请求通过同步器的时间Tsyncmin加上Tfiq4个处理器周期2.11 复位当nRESET信号被拉低时ARM7TDMI-S处理器放弃正在执行的指令当nRESET信号再次变为高电平时nRESET处理器1. 强制M[4:0]变为b10011超级用户模式2. 置位CPSR中的I和F位3. 清零CPSR中的T位4. 强制PC从地址0x00开始对下一条指令进行取指5. 返回到ARM状态并恢复执行在复位后除PC和CPSR之外的所有寄存器的值都不确定。

ARM 指令集(中文版)

ARM 指令集(中文版)

ARM 指令集•寄存器和处理器模式(26-bit 体系)•寄存器和处理器模式(32-bit 体系)•程序状态寄存器和操纵它的指令•寄存器装载和存储指令•算术和逻辑指令•移位操作•乘法指令•比较指令•分支指令•条件执行•软件中断指令•APCS (ARM 过程调用标准)•编写安全的 32-bit 代码的基本规则•IEEE 浮点指令•汇编器伪指令•指令快速查找•ARM 指令格式寄存器和处理器模式ARM 处理器有二十七个寄存器,其中一些是在一定条件下使用的,所以一次只能使用十六个...•寄存器 0 到寄存器 7 是通用寄存器并可以用做任何目的。

不象 80x86 处理器那样要求特定寄存器被用做栈访问,或者象 6502 那样把数学计算的结果放置到一个累加器中,ARM 处理器在寄存器使用上是高度灵活的。

•寄存器 8 到 12 是通用寄存器,但是在切换到 FIQ 模式的时候,使用它们的影子(shadow)寄存器。

•寄存器 13 典型的用做 OS 栈指针,但可被用做一个通用寄存器。

这是一个操作系统问题,不是一个处理器问题,所以如果你不使用栈,只要你以后恢复它,你可以在你的代码中自由的占用(corrupt)它。

每个处理器模式都有这个寄存器的影子寄存器。

•寄存器 14 专职持有返回点的地址以便于写子例程。

当你执行带连接的分支的时候,把返回地址存储到 R14 中。

同样在程序第一次运行的时候,把退出地址保存在 R14 中。

R14 的所有实例必须被保存到其他寄存器中(不是实际上有效)或一个栈中。

这个寄存器在各个处理器模式下都有影子寄存器。

一旦已经保存了连接地址,这个寄存器就可以用做通用寄存器了。

•寄存器 15 是程序计数器。

它除了持有指示程序当前使用的地址的二十六位数之外,还持有处理器的状态。

为更清晰一些... 提供下列图表:User 模式 SVC 模式 IRQ 模式 FIQ 模式 APCSR0 ------- R0 ------- R0 ------- R0 a1R1 ------- R1 ------- R1 ------- R1 a2R2 ------- R2 ------- R2 ------- R2 a3R3 ------- R3 ------- R3 ------- R3 a4R4 ------- R4 ------- R4 ------- R4 v1R5 ------- R5 ------- R5 ------- R5 v2R6 ------- R6 ------- R6 ------- R6 v3R7 ------- R7 ------- R7 ------- R7 v4R8 ------- R8 ------- R8 R8_fiq v5R9 ------- R9 ------- R9 R9_fiq v6R10 ------ R10 ------ R10 R10_fiq slR11 ------ R11 ------ R11 R11_fiq fpR12 ------ R12 ------ R12 R12_fiq ipR13 R13_svc R13_irq R13_fiq spR14 R14_svc R14_irq R14_fiq lr------------- R15 / PC ------------- pc最右侧的列是 APCS 代码使用的名字,关于 APCS 的详情参见这里。

arm cortex m7 手册

arm cortex m7 手册

很高兴能为你撰写一篇关于 ARM Cortex-M7 手册的文章。

ARM Cortex-M7 是一款高性能、低功耗的处理器核,广泛应用于嵌入式系统、物联网设备等领域。

本文将从描述 ARM Cortex-M7 的架构和特性开始,逐步展开对其应用、优势以及未来发展趋势的探讨,以便你能全面地了解和深入地理解这一主题。

1. ARM Cortex-M7 的架构和特性ARM Cortex-M7 处理器核基于 ARMv7-M 架构,具有双精度浮点指令和高级数据处理能力。

其特点包括超标量执行、动态预测分支、乱序执行等,使其在性能和功耗的平衡上具有显著的优势。

它还支持多层次的保护机制和安全特性,适用于对安全性要求较高的应用场景。

2. ARM Cortex-M7 的应用在实际应用中,ARM Cortex-M7 可以广泛用于工业控制、自动化设备、汽车电子、物联网设备等领域。

由于其高性能和低功耗特性,它在实时控制、高精度数据处理等方面表现突出,因此备受市场青睐。

3. ARM Cortex-M7 的优势相对于其他嵌入式处理器核,ARM Cortex-M7 具有更强的计算性能和更低的功耗。

其先进的架构和特性使其能够应对复杂的应用场景,并在同类产品中脱颖而出。

4. ARM Cortex-M7 的未来发展趋势随着物联网、人工智能等新兴领域的兴起,对嵌入式处理器核的性能和功能要求也在不断提升。

ARM Cortex-M7 作为当前主流的嵌入式处理器核之一,将继续致力于提升性能、降低功耗,并适应不断变化的市场需求。

总结回顾:通过对 ARM Cortex-M7 的架构、特性、应用、优势以及未来发展趋势的全面探讨,我们对这一主题有了更深入的理解。

ARM Cortex-M7 作为一款先进的嵌入式处理器核,具有强大的计算性能和低功耗的优势,在未来的物联网、智能制造等领域有着广阔的应用前景。

个人观点和理解:我个人认为,ARM Cortex-M7 的出现为嵌入式系统的发展带来了新的机遇和挑战。

第三章 ARM的指令系统ARM7

第三章  ARM的指令系统ARM7
第三章 ARM的指令系统
一、ARM指令的寻址方式 二、ARM指令概述 三、ARM指令集 四、ARM汇编指令实战 五、本节附录
一、ARM指令的寻址方式
汇编指令由操作码字段和操作数字段两部分组成。 操作码字段指示处理器所要执行的操作; 操作数字段指出在指令执行操作的过程中所需要的操作数。 指令的一般格式:
例:S后缀举例
ADD R3,R5,R8 ADDS R3,R5,R8 ;R3 = R5 + R8,条件标志位不刷新 ;R3 = R5 + R8,条件标志位刷新
第1条指令不会引起状态寄存器中条件标志位的变化; 第2条指令将引起程序状态寄存器的条件标志位刷新。 比较指令不需要加S后缀,在执行时会自动刷新条件标志位。 S后缀的使用目的:需要把此次指令执行的结果反映到条件标志位时 候,就可以在这条指令的后面加上后缀S。
相应的ARM指令为:
CMP R0,R1 ADDCC R0,R0,R1 SUBHI R0,R0,R1 ;R0与R1比较 ;R0 < R1时,本指令执行 ;R0 > R1时,本指令执行
2、其他后缀
其他后缀包括S后缀、!后缀、字长后缀、索引后缀、堆栈后缀、T 后缀等等。 ① S后缀 使用S后缀时,指令执行后程序状态寄存器的条件标志位将刷新。
第3条指令的R2和第4条指令的#1都是第二操作数。 第二操作数可以是: ◎8位立即数,或者8位图立即数; ◎寄存器值,或者寄存器的值移位得到的新数值。
例:第二操作数举例
ADD R1,R1,R2,LSL #3 ; R1 + R2×8→R1
LSL是逻辑左移指令,第二操作数是R2左移3位得到的结果。
1.2 指令的后缀
后缀符号 B H SB SH 含义 传送的数据是无符号一字节(8位) 传送的数据是无符号一个半字(16位) 传送的数据是一个有符号字节 传送的数据是一个有符号半字

ARM7指令集.ppt

ARM7指令集.ppt

r3
r1
r2
ARM是三地址指令格式,指令的基本格式如下:
<opcode> {<cond>} {S} <Rd> ,<Rn>{,<operand2>}
其中<>号内的项是必须的,{}号内的项是可选的。 各项的说明如下: opcode:指令助记符; cond:执行条件;
S:是否影响CPSR寄存器的值;
Rd:目标寄存器;
0x00
0x00
0x00
0x12
8位常数
00000100100000000000000000000000
0x04
0x80
0x00
0x00
4.2 指令集介绍
arm数据处理指令指令编码opcode操作码功能表指令执行的条件码i用于区别立即数i为1和寄存器移位i为0opcode数据处理指令操作码第二操作数说明rd目标寄存器加法运算指令rn第一操作数寄存器带进位加法带进位减法指令s设置条件码与指令中的s位对应位测试指令adc0101sbc0110带进位逆向减法指令rsc0111tst1000相等测试指令teq1001比较指令cmp1010负数比较指令cmn1011逻辑或操作指令orr1100数据传送mov1101位清除指令bic1110数据非传送mvn1111add0100逆向减法指令rsb0011减法运算指令sub0010逻辑异或操作指令eor0001逻辑与操作指令and0000指令助记符操作码助记符说明操作条件码位置movrdoperand2数据传送rdoperand2movcondsmvnrdoperand2数据非传送rdoperand2mvncondsarm数据处理指令数据传送注
LDR R0,[R1,R2] ;R0=[R1+R2]

单片机ARM7 第4章-5-VIC

单片机ARM7 第4章-5-VIC
FIQ FIQ 向量IRQ
ARM7 TDMI
IRQ
VIC
非向量IRQ
FIQ中断硬件处理流程 FIQ中断硬件处理流程
发生FIQ异常事件
将当前的程序状态寄存器的内容备份 即,SPSR_fiq = CPSR 处理器切换到FIQ模式 模式 处理器切换到 禁止IRQ和FIQ中断,即,I = F = 1 和 中断, 禁止 中断 保存返回地址 LR_fiq = PC 设置FIQ异常入口地址 异常入口地址 设置 PC = 0x1C
4.9 向量中断控制器
向量中断控制器( 向量中断控制器(Vectored Interrupt VIC).ARM7TDMI内核具有两个 Controller, VIC).ARM7TDMI内核具有两个
中断输入,分别为IRQ中断和FIQ中断. IRQ中断和FIQ中断 中断输入,分别为IRQ中断和FIQ中断.向量中断 控制器(VIC) 控制器(VIC)负责管理芯片的外设部件的中断 信号,是外设中断源和CPU内核之间的桥梁. 信号,是外设中断源和CPU内核之间的桥梁. CPU内核之间的桥梁
LPC2000系列 系列ARM硬件结构 系列 硬件结构
1.LPC2000系列简介 2.引脚描述 3.存储器寻址 4.系统控制模块 5.存储器加速模块 (MAM) 6.外部存储器控制器 (EMC) 7.引脚连接模块 8. GPIO 9. 向量中断控制器 10.外部中断输入 11.定时器0和定时器1 12. SPI接口 2 13. I C C接口 14. UART(0,1) 15. A/D转换器 16. 看门狗 17. 脉宽调制器(PWM) 18. 实时时钟
软件处理
获取中断服务程序地址 执行中断服务程序 设置返回地址 恢复程序状态寄存器CPSR

单片机ARM7 第4章-2

单片机ARM7 第4章-2
• 概述 唤醒定时器能够确保振荡器和芯片内 部硬件电路在处理器开始执行指令之前有 足够的时间初始化 。
唤醒定时器
复位或掉电唤醒 激活唤醒定时器
启动
计数满4096个 周期后,控制 开关闭合
对输入时钟计数
时钟
时 为CPU提供时钟 钟 信Fra bibliotek号CPU
4.4.5 时钟部件-唤醒定时器
当给芯片加电或某个事件使芯片退出 掉电模式后,振荡器就开始工作,但是需 要一段时间来产生足够振幅的信号驱动时 钟逻辑。振荡的波形大致如下: 注:唤醒定时器就通过监测晶振状态 来判断是否能开始可靠的执行代码。 振幅(V)
X1 CX1 XTAL
X2 CX2
振荡模式
• 注意:如果使用了ISP下载功能或者连 接PLL提高频率,则输入的时钟频率范 围必须在10~25(MHz)之间。
X1
X2
X1 CX1
X2 XTAL CX2
CC
Clock
从属模式
振荡模式
4.4 系统控制模块
• 1.系统控制模块 功能汇总 • 2.系统时钟概述 • 3.时钟部件 -晶体振荡器 • 4.复位 • 5.时钟部件 -唤醒定时器
• 6.时钟部件 -PLL(锁相环) • 7.时钟部件 -VPB分频器 • 8.存储器映射控 制 • 9.功率控制
• 概述
4.4.2 时钟系统
时钟是计算机系统的脉搏,处理器核在一 拍接一拍的时钟驱动下完成指令执行、状态变 换等动作。
外设部件在时钟的驱动下进行着各种工作, 比如串口数据的收发、A/D转换、定时器计数等。 所以时钟对于一个计算机系统是至关重要 的,通常时钟系统出现问题也是最致命的,比 如振荡器不起振、振荡不稳、停振等。
4.4 系统控制模块
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ARM7数据手册翻译:aufan序言:ARM7是一种低电压,通用32位RISC微处理器单元,可作一般应用或嵌入到ASIC或CSIC 中,其简洁一流的设计特别适用于电源敏感的应用中。

ARM7的小尺寸使它特别适合集成到比较大的客户芯片中,此芯片中也可以包含RAM,ROM,DSP,逻辑控制和其他代码。

增强特性:ARM7和ARM6有相似性,但增加了以下功能:基于亚微米的制程,增加了速度,减少了电源消耗3V操作,很小的电源消耗,并同5V系统兼容较高的时钟对所以程序执行较快。

特性总结:l32位的RISC结构处理器(包括32位地址线和数据线);l Little/Big Endian操作模式;l高性能RISC17MIPS sustained@25MHz(25MIPS peak)@3Vl较低的电压损耗0.6mA/MHz@3V fabricated in.8 m CMOS全静态操作l适用于对电源比较敏感的应用中l快速中断响应l适用于实时系统l支持虚拟内存l支持高级语言l简单但功能强大的指令系统应用ARM7适用于那些需要紧凑且功能强大的RISC处理器系统电讯GSM终端控制数据通信协议转换便携式计算机掌上电脑自动控制系统发动机管理单元信息存贮系统存储卡图像处理JOEG控制器目录1.0简介1.1ARM7模块图1.2ARM7功能图2.0信号描述3.0编程模式3.1硬件配置信号3.2操作模式选择3.3寄存器3.4异常3.5复位信号4.0指令系统4.1指令系统总述4.2条件代码4.3分支和分支连接指令4.4数据处理指令4.5PSR传输指令(MRS,MSR)4.6乘法和乘加指令(MUL,MLA)4.7单次数据传输(LDR,STR)4.8数据块传输(LDM,STM)4.9单次数据交换(SWP)4.10软件中断4.11协处理器数据操作(CDP)4.12协处理器数据传输(LDC,STC)4.13协处理器寄存器传输(MRC,MCR)4.14无定义指令4.15举例5.0存储器界面5.1周期类型5.2字节寻址5.3地址时序5.4存储器管理5.5锁操作5.6延续访问时间6.0微处理器接口6.1接口信号6.2数据传输周期6.3寄存器传输周期6.4特权指令6.5幂次访6.6无定义指令7.0指令周期操作7.1分支和分支连接7.2数据操作7.3乘法和乘加7.4加载寄存器7.5存储寄存器7.6加载乘数寄存器7.7存储乘数寄存器7.8数据交换7.9软件中断和故障入口7.10协处理器数据操作7.11协处理器数据传输(从存储器到协处理器)7.12协处理器数据传输(从协处理器到存储器)7.13协处理器寄存器传输(从协处理器加载)7.14协处理器寄存器传输(存储到协处理器)7.15无定义指令和协处理器空缺7.16不可执行的指令7.17指令速度总结8.0DC参数8.1Absolute Maximum Ratings8.2DC操作条件9.0AC参数9.1AC参数注释19.0附录—向下兼容性1.0简介ARM7是32位通用微处理器ARM(Advanced RISC Machines)家族中的一员,具有比较低的电源消耗和良好的性价比,基于(精简指令)RISC结构,指令集和相关的译码机制与微程序控制的复杂指令系统的计算机相比要相对简单,这使得它拥有比较高的指令处理能力和实时中断响应能力。

指令集包含11种基本类型:两种类型用于偏上算术逻辑单元,桶式移位器和乘法器,在31个寄存器(32位)间执行高速操作;三种类型的指令控制数据在存储器和寄存器之间传送,一种用于弹性地址,一种用于高速内容切换,一种用于交换数据;三种类型的指令用于控制流程和特权级执行;三种专门用于控制外部的协处理器,此种协处理器允许指令集的功能以开放和统一的格式扩展到片外。

ARM指令集对不同高级语言的编译器来讲都比较适用,需要临界的代码段,汇编语言的编程也很简单,不像其它的微处理器,需要依靠复杂的编译器来管理指令。

由于应用了流水线技术,所以指令处理和存储系统的各个部分都可以连续运行。

典型的例子,一条指令正在执行,下一条指令正被译码,第三条指令同时从存储器中取出。

在存储系统中,存储接口的设计可以最大限度地发挥性能潜力而不需要花费很大的代价,速度敏感信号做成流水线方式,允许系统控制功能应用于标准的低电压逻辑,这些控制信号推动了由工业DRAM提供的快速局部访问模式。

ARM7有32位的地址总线,所有的ARM处理器共享同一个指令集,ARM7可以配制成26位地址线,向下兼容其它早期的处理器。

ARM7是全静态CMOS,允许时钟在周期的任意部分被停止,但不丢失状态。

注意:0x--十六进制BOLD--外部信号用黑体字显示2.0信号描述NAME TYPE DESCRIPTIONA[31:0]O处理器的地址总线,如果ALE(地址所存使能)为高,在要寻址的前一个周期的Phase2地址有效并保持至寻址周期的Phase1,保持时间由ALE控制。

ABORT I存储器异常。

这是一个输入信号,存储器系统发出此信号告诉处理器请求的访问不被允许。

ALE I地址锁存使能,用来控制地址输出锁存,通常地址在周期的Phase2变成下一个周期需要的值,但是对ROM的直接接口来讲,地址需要保持稳定至Phase2结束,所以ALE需要保持低电平至Phase2。

此信号对以下的信号有相同的影响,nB W,nR W,LOC K,Nopc和nTRAN S。

如果一个系统不需要地址线以这种方式工作,ALE必须拉高,地址锁存是静态的,所以ALE必须保持长时间低电平,以锁存地址。

BIGEND I Big Endian配置。

为高电平时,处理器认为存储器中数据为BigEndian模式,为低电平时,认为存储器中数据为Little Endian模式。

那些不可以选择Endianism的处理器(ARM2As,ARM3,ARM61)为Little Endian模式。

CPA I协处理器Absent。

可以处理ARM7请求的协处理器(通过nCP I))必须立即将CPA置为低电平。

如果在nCP I为低电平的周期的Phase1结束时,CPA仍为高电平,ARM7将中止与协处理器握手,启动无定义指令陷阱。

如果CPA为低电平,并且继续保持,ARM7将等待,直到CPB为低电平,然后完成协处理器指令。

CPB协处理器忙。

可以处理ARM7请求的协处理器(通过Ncp i),但不能立即开始响应,应该通过将CPB置高表明此情况。

当协处理器准备好时,置CPB为低电平。

当nCPI为低电平时,ARM7在每个周期的Phase1结尾采样CPB。

DATA[31:0]I数据输入总线。

在读周期(nRW=0),此数据输入线必须保证在传输周期的Phase2结尾之前保持有效。

DATA32I32位数据配置。

当此信号为高时,处理器可以访问32位地址空间(A[31:0])的数据,当此信号为低时,处理器可以访问26位地址空间(A[25:0])的数据。

在后一种配置中,地址线A[31:26]没有用到。

在改变此信号电平之前,要确保处理器在下一个周期不会访问到大于0X3FFFFFF的空间。

DBE I数据总线使能。

当DBE为低电平时,写数据BUFFER被禁止。

当DBE为高电平时,写数据BUFFER在下一个真正的写周期时可以被使能,DBE促进了数据总线共享(DMA或其它)。

DOUT[31:0]O数据输出总线,在写周期(when nRW=1)的Phase1数据有效,并保持至传输周期的Phase2结束。

LOCK O Lock操作。

当LOCK为高时,处理器执行一个Locked的MEM访问,MEM控制器必须等到LOCK为低时,才允许其它设备访问MEM。

当MCLK为高电平时,LOCK信号改变,并在被锁的MEM访问周期一直保持高电平。

只有执行数据交换指令(SWP)时,才被激活。

此信号的时序可以通过ALE改变,就像ALE改变地址一样。

驱动ABE为低电平,LOCK为高阻态。

MCLK I MEM时钟输入。

此信号定时ARM7所有MEM访问和内部操作。

此信号有两个不同的相位。

Phase1:MCLK为低,Phase2:MCLK(和Nwait)为高。

此信号可以在任何一相被任意延伸,用于访问比较慢的外设或MEM。

与此相似,Nwait输入也可以和一个正常运行的MCLK相与取得相同的效果。

nBW O字节或者字使能。

处理器输出此信号告诉外部MEM系统,当前数据传输为字节长度。

在读或者写周期,高电平表示字传输,低点平表示字节传输。

此信号在数据传输的前一个周期的Phase2有效,并在本次数据传输周期的整个Phase1有效。

此信号的时序像地址线一样可以通过ALE信号来改变。

当ABE信号位低时,此信号为高阻态。

nCPI O协处理器指令。

当ARM7执行一条协处理指令,此信号将被置为低电平,并等待协处理器响应。

ARM7将依据协处理器的CPA和CPB的不同状态,做出相应的反应。

nENOUT O数据输出使能。

处理器通过此信号表明写周期正在发生,DOUT[31:0]被送到外部的MEM系统。

如果系统需要双向数据总线,此信号可以使能三态Buffer,DOUT[31:0]通过三态Buffer送至DATA[31:0]nENIN I输入使能。

在写周期,此信号和nENOUT一起控制数据总线。

请参考第五章:MEM接口。

nFIQ I快速中断请求。

对处理器来讲,为异步中断请求,当此信号为低电平,并且处理器内部的相应的使能信号有效时,处理器被中断。

此信号为电平敏感,并且在处理器做出响应之前应保持低电平。

nIRQ I中断请求。

像nFIQ,但优先级较低。

当使能时,产生异步中断。

Nm[4:0]O处理器模式。

输出信号为内部状态位的反向,表示处理器的操作模式。

NMREQ O MEM请求。

此信号位低电平时,表示下一个周期,处理器请求MEM访问。

此信号在Phase1时有效,至访问周期的整个Phase2。

NOPC O OP代码取。

此信号位低时,表示处理器正从MEM中预取指令;为高时,表示数据正在传输(如果总线上有数据),此信号在前一个周期的Phase2有效,至访问周期的整个Phase1。

此信号的时序像地址线一样可以通过ALE信号来改变。

当ABE信号位低时,此信号位高阻态。

nRESET I复位。

此为电平敏感输入信号。

从一个已知地址启动处理器。

低电平将会导致正在执行的指令被异常中止。

nRESET为高电平至少一个周期之后,处理器将从地址0重新启动。

nRESET必须保持低电平(nWAIT必须为高)至少两个周期。

在低电平周期,处理器会执行虚拟的指令预取,地址为复位被激活时的地址增加,如果nRESET继续保持,地址超过最大限制时,溢出为0。

nRW O读/写。

高电平表示处理器写周期,地电平表示读周期。

此信号应该在前一个周期的Phase2有效,并保持到访问周期的Phase1结束。

相关文档
最新文档