armlyn的个人空间 https://blog.eetop.cn/211255 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

Arm7和arm9如何区别

已有 392 次阅读| 2008-9-6 10:31 |个人分类:arm7 arm9

 ARM7内核是0.9MIPS/MHz的三级流水线和冯·诺伊曼结构;
ARM9
内核是5级流水线,提供1.1MIPS/MHz的哈佛结构。
ARM7
没有MMU,ARM720TMMU ,ARM9主要包括ARM9TDMIARM9E-S等系列ARM9是有MMU,ARM940T只有Memory protection unit.不是一个完整的MMU
ARM9
的时钟频率比ARM7更高,采用哈佛结构区分了数据总线和指令总线, ARM7处理器采用3级流水线,而ARM9采用5级流水线, 5级流水线能够将每一个指令处理分配到5个时钟周期内,在每一个时钟周期内同时有5个指令在执行。在同样的加工工艺下,ARM9TDMI处理器的时钟频率是ARM7TDMI1822倍。指令周期的改进,
指令周期的改进:
2
1 loads 指令矛n stores指令
指令周期数的改进最明显的是loads指令和stores指令。从ARM7ARM9这两条指令的执行时间减少了30%。指令周期的减少是由于ARM7ARM9两种处理器内的两个基本的微处理结构不同所造成的。
(1)ARM9
有独立的指令和数据存储器接口,允许处理器同时进行取指和读写数据。这叫作改进型哈佛结构。而ARM7只有数据存储器接口,它同时用来取指令和数据访问。
(2)5
级流水线引入了独立的存储器和写回流水线,分别用来访问存储器和将结果写回寄存器。
以上两点实现了一个周期完成loads指令和stores指令。
2
2 互锁(interlocks)技术
当指令需要的数据因为以前的指令没有执行完而没有准备好就会产生管道互锁。当管道互锁发生时,硬件会停止这个指令的执行,直到数据准备好为止。虽然这种技术会增加代码执行时间,但是为初期的设计者提供了巨大的方便。编译器以及汇编程序员可以通过重新设计代码的顺序或者其他方法来减少管道互锁的数量。
2
3 分枝指令
ARM9ARM7
的分枝指令周期是相同的。而且ARM9TDMIARM9E-S并没有对分枝指令进行预测处理。
ARM9
结构及特点
ARM9E-S为例介绍ARM9处理器的主要结构及其特点。
(1)32bit
定点RISC处理器,改进型ARMThumb代码交织,增强性乘法器设计。支持实时(real-time)调试;
(2)
片内指令和数据SRAM,而且指令和数据的存储器容量可调;
(3)
片内指令和数据高速缓冲器(cache)容量从4K字节到1M字节;
(4)
设置保护单元(protcction unit),非常适合嵌入式应用中对存储器进行分段和保护;
(5)
采用AMBA AHB总线接口,为外设提供统一的地址和数据总线;
(6)
支持外部协处理器,指令和数据总线有简单的握手信令支持;
(7)
支持标准基本逻辑单元扫描测试方法学,而且支持BIST(built-in-self-test)
(8)
支持嵌入式跟踪宏单元,支持实时跟踪指令和数据


点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 1

    粉丝
  • 0

    好友
  • 0

    获赞
  • 4

    评论
  • 访问数
关闭

站长推荐 上一条 /1 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-5-9 01:42 , Processed in 0.022465 second(s), 18 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部