- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ARM2体系结构
第2章 ARM体系结构
本章Thumb状态的寄存器组织、存储器组织结构、异常以及协处理器接口等一些基本概念本章基础ARM微处理器的基本工作原理程序设计相关的基本技术细节。ARM的控制器设计完全采用硬布线。ARM把若干条指令在执行时间上重叠起来,使机器的执行速度大大加快。
I1取指令 I1译码 I1执行 I2取指令 I2译码 I2执行 I3取指令 I3译码 I3执行 图2.3 流水线执行过程
从图2.3可以看出,指令部件完成第1条指令取指后,交给指令译码部件;指令部件进行第2条指令的取指。同理,译码部件完成第1条指令译码后,交给指令执行部件;指令译码继续完成第2条指令的译码。指令的整个执行过程相当于工业生产线上的流水作业,这种指令的处理机制称作指令流水线。
到目前为止,ARM核处理器的流水机制分为三级流水线、五级流水线和六级流水线(ARM11为八级流水线)。ARM7采用三级流水线结构,分别是取指、译码和执行。ARM9采用的是五级流水线结构,分别是取指、译码、执行、存储和回写。ARM10采用的是六级流水线结构。
指令流水线遇到执行“跳转指令”时,指令流水线不能继续执行,自动清空指令流水线(如重新流水线2个指令周期)ARM在指令设计上基本每条指令都采用条件执行。执行含有条件的指令时,如条件不满足,相当指令一条NOP指令,指令流水线不清空。
ARM7TDMI执行使用 3 流水线第一从内存中取回的指令第二开始码,而第三实际执行。此,程序计数器总是超出当前执行的指令两个指令(在为分支指令计算偏移量时必须计算在内)。在分支时2个指令周期(因为流水要重新添满)。所以最好利用条件执行指令来避免浪费周期。例如:
...
CMP R0,#0
BEQ MOV R1,#1
MOV R2,#2
finish1
...
ARM7TDMI条件指令可以更为有效:
...
CMP R0,#0
MOVNE R1,#1
MOVNE R2,#2
...MCLK低电平定时信号,ALE须用MCLK的下降沿驱动成高电平信号,用MCLK的上升沿驱动成低电平信号。ALE可以简单地反向MCLK 信号得到,但是从MCLK得到ALE有延时,须特别注意。
(2)nWAIT(not wait)
nWAIT是由存储器或者外部设备给出的信号,可以用于延长总线周期。当访问低速存储器或设备时,处理器将把访问时间延长若干个时钟周期,以等待低速存储器和设备的响应。在ARM7TDMI内部,nWAIT与MCLK进行“与”操作,当nWAIT为高时,ARM7TDMI在MCLK的控制下运行。在任何的多周期存储器访问时,nWAIT低电平保持到最终得到数据锁存。
(3)ECLK(external clock)
ECLK是内核的输出信号,由MCLK扩展生成。当调试内核时,ECLK是由TCK产生的DCLK信号。
2.中断请求信号:
(1)nIRQ(not interrupt request)
低电平有效。如果nIRQ为低电平,将产生IRQ中断。
(2)nFIQ(not fast interrupt requests)
低电平有效。如果nFIQ为低电平将产生FIQ中断。
(3)ISYNC(synchronous interrupt)
如果nIRQ和nFIQ与ARM核时钟同步,ISYNC为低电平;如果ISYNC为高电平,要求nIRQ和nFIQ与ARM核时钟进行同步。
3.总线控制信号:
(1)nRESET(not reset)
nRESET为低电平导致正在执行的指令非正常执行。nRESET为低电平时,处理器在复位处执行指令的虚拟预取。如nRESET一直为低,处理器执行内部周期,同时地址自动从复位处增值,最终地址会产生溢出,地址为0。当nRESET在低电平保持2个或2个以上时钟周期后,恢复为高电平一个时钟周期,ARM7TDMI将从地址0×00重新开始执行。
(2)HIGHZ(high impedance)
HIGHZ信号为高电平表示HIGHZ指令被加载到TAP控制器。
(3)nENIN(not enable input)
在写周期,nENIN 与nENOUT共同控制数据总线。在简单的系统中,nENIN 为低,nENOUT 不定义。在一些较复杂的应用系统中,nENIN允许外部系统操纵。当外部设备驱动总线时,nENIN可用于信号延时。
(4)nENOUT( not enable output)
在数据写周期,nENOUT一直保持低电平。在共享总线应用中,nENOUT信号可用作辅助仲裁。
(5)ABE(address bus enable)
ABE输入为低电平,强迫地址总线进入高阻状态。MAS[1:0]、nRW、LOCK、 nOPC 和 nTRANS
您可能关注的文档
- 英语网上聊天必备.doc
- 新视野大学英语读写教程单词填空大2 结业.doc
- nor flash、nand flash 、sdram的区别.doc
- 如何在Keil4下通过J-Link下载文件数据到STM32外部的Nor Flash.doc
- 湖南省长沙市浏阳一中2015-2016学年高一英语第三次月考.docx
- 新时代交互英语视听说1级1-13单元对话短文.doc
- 六年级英语第一单元练习1.doc
- 新目标八上练习题新建 Microsoft Word 97 - 2003 Document.doc
- 2015-2016学年高中英语(外研版必修五)课时作业:Module2 Period Two.docx
- Python 指南4.doc
最近下载
- 牙齿健康和龋齿预防科普知识ppt(共67张PPT).pptx VIP
- 2024年10月 政法干警锻造新时代政法铁军专题研讨班发言材料.docx VIP
- 反恐验厂-危机管理和应急恢复计划.doc
- 2024.10 政法干警锻造新时代政法铁军专题研讨班发言材料.docx VIP
- 六年级上册快乐读书吧知识测试题及答案.pdf VIP
- 北京字节跳动科技有限公司运营模式分析及发展趋势预测研究报告.docx VIP
- 《财务风险管理—以乐视公司为例》10000字.docx
- 人教八年级上册物理《光的反射》PPT教学课件.pptx
- 信息资源管理专业毕业设计论文:信息资源管理在学校教育中的应用研究.docx VIP
- 网络安全项目网络建设方案.doc
文档评论(0)