谈谈ARM7与ARM9的区别

发布者:巳午未最新更新时间:2021-06-09 来源: eefocus关键字:ARM7  ARM9  内核架构 手机看文章 扫描二维码
随时随地手机看文章

由于职业的关系,经常会回答一些ARM初学者的问题,虽然问题千奇百怪,但以下两个问题绝对很有代表性。


ARM7和ARM9的都有些什么区别?

我准备学ARM,但不知是选ARM7还是ARM9好?

也许这些问题在大虾们的眼里已不是问题,但对于初学者确实很具必要弄清楚。先说下:ARM7和ARM9的区别。


1. 时钟频率的提高

虽然ARM7和ARM9内核架构相同,但ARM7处理器采用3级流水线的冯·诺伊曼结构;,而ARM9采用5级流水线的哈佛结构。增加的流水线设计提高了时钟频率和并行处理能力。5级流水线能够将每一个指令处理分配到5个时钟周期内,在每一个时钟周期内同时有5个指令在执行。在常用的芯片生产工艺下,ARM7一般运行在100MHz左右,而ARM9则至少在200MHz以上。


2 指令周期的改进

指令周期的改进对于处理器性能的提高有很大的帮助。性能提高的幅度依赖于代码执行时指令的重叠,这实际上是程序本身的问题。对于采用最高级的语言,一般来说,性能的提高在30%左右。


3.MMU(内存管理单元)

ARM7一般没有MMU(内存管理单元),(ARM720T有MMU)。

ARM9一般是有MMU的,ARM9940T只有MPU ,不是一个完整的MMU。

这一条很重要,MMU单元是大型操作系统必需的硬件支持,如LINUX;WINCE等。这就是说,ARM7一般只能运行小型的实时系统如UCOS-II,eCOS等,而ARM9无此限制,一般的操作系统都可以移植。其实即使ARM720T能支持LINUX;WINCE等系统,也鲜有人用,因为以ARM7的运行速度跑这种大型操作系统,实在有点吃力。再者两者的应用领域明显不同,也无此必要。


4. ARM7比ARM9提供了更好的性能-功耗比。它包含了THUMB指令集快速乘法指令和ICE调试技术的内核。


5. 在从ARM7到ARM9的平台转变过程中,有一件事情是非常值得庆幸的,即ARM9E能够完全地向后兼容ARM7上的软件;并且开发人员面对的编程模型和架构基础也保持一致。


二. 在来说一下初学者是选ARM7还是ARM9?

1)明确目的

学习为应用。你学ARM准备用在什么地方,如果是一般性控制系统或仅仅用来替换8获16位机,ARM7显然是首选;但如果用在网络通信或大型的音视频处理等,则ARM9较合适。

2)自身基础

学习ARM的一般有三类人:

一是计算机专业的:这类人对操作系统等软件知识了解较多,而对硬件知识知之甚少,显然这类人学ARM的话还是做软件好,可以基于LINUX;WINCE等操作系统的ARM9更能符合这类人的要求,当然也有很多计算机专业的人从事ARM7系统的应用软件编写的。但是搞底层的就很少了。


二是电子类专业的:这类人的硬件基础了相对较好,相反操作系统,数据库等软件知识则差强人意。因此人多电子专业的人员都熟悉单片机,用单片编写点小程序还不在话下,但要用ARM做较大型的软件则有点力不从心,尤其是LINUX;WINCE这种操作系统不是三两个月能轻松搞定的。建议这类人员如无特别需要还是从ARM7和小型操作系统学起。够用就好,不要盲目追求高端。有一点要注意并不是从事ARM9的就比ARM7工资高,反而ARM7的就业机会比ARM9多,这很好理解,好比金字塔,越往顶肯越小。


三是软硬件基础都不太好的:这类人员有确实需要的,也有赶时髦的,如无大的学习决心还是参加培训的好。当然也可曲线救国,搞懂单片机后,ARM7就不难了。


最后说一点关于开发板的,初学者买个开发板确实很有必要,但也要选择合适的,初学者合适的就是,资料齐全,有配套教程和学习指导,再加上较及时的技术支持。


关键字:ARM7  ARM9  内核架构 引用地址:谈谈ARM7与ARM9的区别

上一篇:一种基于ARM的多参数实时监护系统设计
下一篇:ARM9矿井风机设计方案

推荐阅读最新更新时间:2024-11-10 16:46

ARM7入门1,跑马灯实验
用keil uvision3和proteus做的程序。 主程序: /******************************************************************************/ /* This file is part of the uVision/ARM development tools */ /* Copyright KEIL ELEKTRONIK GmbH 2002-2004 */ /********************************************************************
[单片机]
<font color='red'>ARM7</font>入门1,跑马灯实验
关于ARM9的MMU重要理解
MMU给我感觉是个很复杂的东西,网上看了一些资料,勉强知道了一些表面的东西。它有两个作用:1、把虚拟地址映射到物理地址;2、对内存访问提供控制机制。 原文地址: http://blog.chinaunix.net/u1/58780/showart_468065.html 在ARM中,MMU另外提供了一张映射表(MVA),用于程序虚拟地址(VA)到物理地址(PA)的映射。MVA称为变换后的VA。在程序运行时,CPU只看到VA,而MMU和cache们只看到PA和MVA。应该说,在进程运行切换过程中,映射关系是动态变化的,因为不同进程和内存之间需要不同的映射关系,就需要不断的重做映射表,这个代价是很大的。所以,有必要让映射表中需要
[单片机]
ARM内核架构都是什么意思?内核架构的关系是什么?
ARM产品越来越丰富,命名也越来越多。很多朋友提问: ARM内核和架构都是什么意思?内核和架构的关系是什么?比如ARMv7架构,这个架构指的是什么?小编选给大家整理了几个专业的概念!希望对嵌友们在选择设计电路时有所帮助~ 1.ARM内核:从ARM7、ARM9到Cortex-A7、A8、A9、A12、A15再到Cortex-A53、A57等,总之不同版本 ARM 有不同的想法。比如为高速度设计的Cortex A8、A9都是ARMv7a 架构;Cortex M3、M4是ARMv7m架构;前者是内核,后者是指令集的架构。 2.ARM的架构都是基于RISC指令集而架构的,而其内核只是实现这一指令集的硬件架构的基础,Thumb-2指
[单片机]
ARM<font color='red'>内核</font>和<font color='red'>架构</font>都是什么意思?<font color='red'>内核</font>和<font color='red'>架构</font>的关系是什么?
ARM9 2410移植之ARM中断原理, 中断嵌套的误区,中断号的怎么来的
几天前一个学生问我ARM中断嵌套的问题,我才发现原在我心中理所当然的事对学生来说理解实属不易。 ARM有七种模式,我们这里只讨论SVC、IRQ和FIQ模式。 我们可以假设ARM核心有两根中断引脚(实际上是看不见的),一根叫 irq pin, 一根叫fiq pin. 在ARM的cpsr中,有一个I位和一个F位,分别用来禁止IRQ和FIQ的。 先不说中断控制器,只说ARM核心。正常情况下,ARM核都只是机械地随着pc的指示去做事情,当CPSR中的I和F位为1的时候,IRQ和FIQ全部处 于禁止状态。无论你在irq pin和fiq pin上面发什么样的中断信号,ARM是不会理你的,你根本不能打断他,因为他耳聋了,眼也瞎了
[单片机]
嵌入式气动打标机控制系统设计方案
引言 随着计算机技术、自动控制技术的发展,在成批、大量的现代化生产过程中,标记设备采用自动控制方式已成为主流。工业零部件的标记方式主要有字模冲压,电化学腐蚀,激光打标与气动打标。字模冲压速度快,工作过程简单,但是它灵活性差,刻印深度不够。电化学腐蚀精度高,不破坏工作的平整度,但是它对工件表面的平整度要求比较高,刻印深度较浅,并且需要使用模板,打标液等耗材。激光振镜打标精度高,速度快,美观,但价格昂贵,刻印深度浅,维护不方便,在某些场合不满足生产的实际要求。气动打标机成本低,加工速度快,精度较高,维护方便,抗干扰能力强以及打标的内容与深度均可以调节等优点得到了广泛使用,特别是在对标记速度有严格要求的流水线作业场合。 气动打标机控制系
[单片机]
嵌入式气动打标机控制系统设计方案
ARM7单片机(学习ing)—(三)、UART—02
总算是整好了~~ 基于LPC2106的Proteus仿真UART0~~ 重点就是频率的设置~~ 写程序是小事~~ 明白其中的PLL才是大事~~ 后面的程序里面有详细的介绍~~ 三、UART 三—(02)、向串口发送字符串(就是发送_Justin~~哈哈~~) 然后就是源代码: MDK3_1.c //------------------------------------------------------------------------------ //向串口发送字符串 //向串口UART0发送字符串“Designed by: _Justin //使用外部晶振12MHz;使用KEIL自带的启动代码Startu
[单片机]
<font color='red'>ARM7</font>单片机(学习ing)—(三)、UART—02
有关ARM9:Machine ID问题总结
最近在做一个Android for Linux内核的移植,准备其移植到S3C2440中。在网上多数遇到移植的都是S3C2410,就算是有S3C2440的,也都没能把所有的东西详尽说明一下,只是你看看我的移植,我看看你的移植。有的地方不对的。也没有做深入的研究。比如说在内核的配置上。很多网友们都提出来在配置内核的时候要选上: 要选择上S3C2410这个选项。说是如果不选择这个,编译会出错、或者不通过。可是大家有没有考虑这是为什么?我要做的是S3C2440的我为什么要选择2410的啊~带着这个疑问。我将其根源找到~~下面带大家来瞧瞧这个东西。 在启动代码我用的是uboot,在进行传参数给内核的时候,会把cpu的ID 传递
[单片机]
有关<font color='red'>ARM9</font>:Machine ID问题总结
arm7 力天电子lpc2148 PLL实验(二)之 PLL重新设定实验参考程序
此程序是我根据周立功课本里面的程序修改的, 程序设定KEY1连接外部中断0,设置外部中断唤醒掉电CPU. 在掉电前,LED1闪烁10次(注意闪烁频率),然后进入掉电模式。一旦被外部中断唤醒,第一次实验不进行PLL重设定,再次让LED1闪烁10次,观察LED1闪烁频率。第二次实验进行PLL重设定,恢复掉电前的PLL设定,再次观察LED1闪烁的频率。 从实验结果可以看出,如果不进行PLL重设定,唤醒后LED1闪烁频率会比掉电前慢许多;进行PLL重新设定后,唤醒后LED1闪烁频率和掉电前一样。 实验程序如下所示: #include NXP/iolpc2148.h typedef unsigned char uint3
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

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

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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