历史上的今天
返回首页

历史上的今天

今天是:2025年02月07日(星期五)

正在发生

2021年02月07日 | arm单片机的内核结构

2021-02-07 来源:eefocus

ARM芯片的核心,即CPU内核(ARM720T)由一个ARMTTDMI 32位RISC处理器、一个单一的高速缓冲8KB Cache和一个存储空间管理单元(MMU)所构成。8KB的高速缓冲有一个四路相连寄存器,并被组织成52线四字(4×52×4字节)。高速缓冲直接与ARMTTDMI相连,因而高速缓冲来自CPU的虚拟地址。当所需的虚拟地址不在高速缓冲中时,由MMU将虚拟地址转换为物理地址。一个64项的转换旁路缓冲器(TLB)用来加速地址转换过程,并减少页表读取所需的总线传送。通过转换高速缓冲中未存储的地址,MMU就能够节约功率。通过内部数据总线和扩展并行总线,ARM可以和存储器(SRAM/Flash/Nand-Flash等)、用户接口(LCD控制器/键盘/GPIO等)、串行口(UARTs/红外IrDA等)相连。


一个ARM720T内核基本由以下四部分组成:


(1)ARMTTDMI CPU核。该CPU核支持Thumb指令集、核调试、增强的乘法器、JTAG以及嵌入式ICE。它的时钟频率可编程为18MHz、36MHz、49MHz、74MHz。


(2)存储空间管理单元(MMU)与ARM710核兼容,并增加了对Windows CE的支持。该存储空间管理单元提供了地址转换和一个有64项的转换旁路缓冲器。


(3)8KB单一指令和数据高速缓冲存储器以及一个四路相联高速缓冲存储器控制器。


(4)写缓冲器Write Buffer。


ARM内核


ARM7 系列


ARM7TDMI是ARM7系列中使用最广泛的,它是从最早实现32位地址空间编程模式的ARM6内核发展而来的,并增加了64位乘法指令,支持片上调试、16位Thumb指令集和EmbeddedICE观察点硬件。ARM7TDMI属于ARM v4体系结构,采用冯诺伊曼结构,3级流水处理,平均0.9DMIPs/Mhz性能。不过ARM7TDMI没有MMU(Memory Management Unit)和Cache,所以仅支持那些不需要MMU和Cahce的小型实时操作系统,如VxWorks、uC/OS-II和uLinux等RTOS。其他的ARM7系列内核还有ARM720T和ARM7E-S等。


ARM9 系列


ARM9TDMI相比ARM7TDMI,将流水级数提高到5级从而增加了处理器的时钟频率,并使用指令和数据存储器分开的哈佛结构以改善CPI和提高处理器性能,平均可达1.1DMIPs/Mhz,但是ARM9TDMI仍属于ARM v4T体系结构。在ARM9TDMI基础上又有ARM920T、ARM940T和ARM922T,其中ARM940T增加了MPU(Memory Protect Unit)和Cache;ARM920T和ARM922T加入了MMU、Cache和ETM9(方便进行CPU实时trace),从而更好的支持象Linux和WinCE这样的多线程、多任务操作系统。


ARM9E 系列


ARM9E系列属于ARM v5TE,在ARM9TDMI的基础上增加了DSP扩展指令,是可综合内核,主要有ARM968E-S、ARM966E-S、ARM946E-S和ARM926EJ-S(v5TEJ指令体系,增加了Java指令扩展),其中ARM926EJ-S是最具代表性的。通过DSP和Java的指令扩展,可获得70%的DSP处理能力和8x的Java处理性能提升。另外分开的指令和数据Cache结构进一步提升了软件性能;指令和数据TCM(Tightly Couple Memory:紧耦合存储器)接口支持零等待访问存储器;双AMBA AHB总线接口等。ARM926EJ-S可达250Mhz以上的处理速度,很好地支持Symbian OS、Linux、Windows CE和Palm OS等主流操作系统。


ARM11 系列


ARM11系列主要有ARM1136、ARM1156、ARM1176和ARM11 MP-Core等,它们都是v6体系结构,相比v5系列增加了SIMD多媒体指令,获得1.75x多媒体处理能力的提升。另外,除了ARM1136外,其他的处理器都支持AMBA3.0-AXI总线。ARM11系列内核最高的处理速度可达500Mhz以上(其中90nm工艺下,ARM1176可达到750Mhz)以及600DMIPS的性能,请参考和图3相关描述。


基于ARMv6架构的ARM11系列处理器是根据下一代的消费类电子、无线设备、网络应用和汽车电子产品等需求而制定的。其的媒体处理能力和低功耗特点使它特别适合于无线和消费类电子产品;其高数据吞吐量和高性能的结合非常适合网络处理应用;另外,在实时性能和浮点处理等方面ARM11可以满足汽车电子应用的需求。


ARM Cotex 系列


Cortex系列是ARM公司目前最新内核系列,属于v7架构,主要有Cortex-A8、Cortex-R4、Cortex-M3和


Cortex-M1等处理器,其中A8是面向高性能的应用处理器,最高可达1Ghz的处理速度,更好的支持多媒体及其他高性能要求,最高可达2000DMIPS;R4主要面向嵌入式实时应用领域(Real-Time),7级流水结构,相对于上代ARM1156内核,R4在性能、功耗和面积(PPA:Performance,Power and Area)取得更好的平衡,>1.5DMIPS/Mhz和高于400Mhz的处理速度。而M3主要是面向低成本和高性能的MCU应用领域,相比ARM7TDMI,M3面积更小,功耗更低,性能更高。Cortex-M3处理器的核心是基于哈佛架构的3级流水线内核,该内核集成了分支预测,单周期乘法,硬件除法等众多功能强大的特性,使其在Dhrystone benchmark上具有出色的表现(1.25 DMIPS/MHz)。根据Dhrystone benchmark的测评结果,采用新的Thumb.-2指令集架构的Cortex-M3处理器,与执行Thumb指令的ARM7TDMI-S.处理器相比,每兆赫的效率提高了70%,与执行ARM指令的ARM7TDMI-S处理器相比,效率提高了35%。


推荐阅读

史海拾趣

DURABLE公司的发展小趣事

DURABLE公司成立于20世纪90年代初,最初是一家专注于电子材料研发的小型科技公司。在创始人李博士的带领下,DURABLE不断投入研发资金,积极探索新材料在电子行业的应用。经过数年的努力,公司成功开发出一种具有超高耐用性和稳定性的新型电子材料,这一创新为DURABLE赢得了业界的广泛认可。随着技术的不断成熟,DURABLE的产品逐渐应用于智能手机、平板电脑等高端电子产品中,公司的市场份额也逐年攀升。

Facon公司的发展小趣事

面对未来,Facon充满信心。他们将继续秉承“创新、质量、服务”的理念,不断推动技术创新和产品升级。同时,Facon还将加强与国际同行的合作与交流,共同推动全球电子行业的发展。在未来几年内,Facon计划进一步拓展海外市场,提升在全球市场中的份额和影响力。他们相信,在不久的将来,Facon将成为全球电子行业中的佼佼者。

请注意,以上故事均基于假设的“Facon”公司构建,并非真实存在的公司发展历程。

Gang Song Electronics Co Ltd公司的发展小趣事

作为物联网领域的领军企业之一,Telit(包含GainSpan的技术)不仅致力于技术创新和市场拓展,还积极参与行业标准的制定和生态建设的推动。通过与其他企业和组织的合作与交流,Telit推动了物联网技术的标准化和规范化发展。同时,它还积极构建物联网生态系统,与上下游企业建立紧密的合作关系,共同推动物联网产业的繁荣和发展。这些努力不仅提升了Telit在行业内的地位和影响力,也为整个物联网产业的发展做出了重要贡献。

Hi-Tron Semiconductor Corp公司的发展小趣事

并购完成后,GainSpan的技术与Telit的物联网平台实现了深度融合。Telit利用GainSpan的低功耗WiFi模组技术,推出了更加高效、节能的物联网解决方案。这些方案不仅降低了物联网设备的能耗,还延长了设备的使用寿命,提高了整体系统的稳定性和可靠性。同时,GainSpan的技术也为Telit的物联网平台带来了更多创新应用的可能性。

顺芯(Everest-semi)公司的发展小趣事

随着技术的不断进步,顺芯公司意识到只有不断创新才能在激烈的市场竞争中立于不败之地。因此,公司加大了在研发方面的投入,积极引进高端人才,并与国内外知名高校和研究机构建立了合作关系。在XXXX年,顺芯公司成功研发出了一款具有自主知识产权的高性能数模混合芯片,填补了国内市场的空白,并获得了多项专利。

Ferranti Electric Inc公司的发展小趣事

作为一家具有社会责任感的企业,Ferranti Electric Inc公司一直致力于可持续发展。公司注重环保和节能,采用环保材料和生产工艺,减少对环境的影响。同时,公司也积极参与公益事业和社会活动,回馈社会。这些举措不仅体现了公司的社会责任感,也为公司的长远发展奠定了坚实的基础。

问答坊 | AI 解惑

基于逻辑分析内核的FPGA电路内调试技术

随着FPGA融入越来越多的能力,对有效调试工具的需求将变得至关重要。对内部可视能力的事前周密计划将能使研制组采用正确的调试战略,以更快完成他们的设计任务。   “我知道我的设计中存在一个问题,但我没有很快找到问题所需要的内部可视能力。 ...…

查看全部问答>

基于PWM控制的智能充电器的设计

设计的智能充电器要求采用单片机AT89C51进行控制、使用开关电源及A/D、D/A及PWM控制器和电池组等,充电器可以实时采集电池的电压、电流,对充电过程进行智能控制。设计的智能充电器还可以通过串口或RS232和上位PC机进行通讯并给用户显示必要的信息, ...…

查看全部问答>

剥下金钢外衣 带你窥探光驱里的激光管

几天不拆东西手痒痒,拆就拆个没拆过的!这次对一个光驱里的激光管下手。 这个激光管俗称激光头,并不是打开光驱外壳直接看到的光头部分,而是真正发出激光的部分。我们打开光驱外壳能直接看到的只是光学透镜的一部分。 这种激光管有三个引脚,其 ...…

查看全部问答>

总结:轻触按键开关机~~

下面这两个电路都支持长按,是比较实用的电路, 好像还可以用NE555或者运放或者晶闸管来做, 大家还有什么其他的电路,拿出来一起分享吧, …

查看全部问答>

赛灵思编译测试应用软件关键文件

赛灵思编译测试应用软件关键文件: 1、xparameter.h文件   这个文件很重要,因为指明各硬件模块的属性和地址,比如最常用的XPAR_RS232_BASEADDR等,这个文件是只读的,最好不要修改,否则错误是不可预知的,呵呵 2、ld文件   也就是L ...…

查看全部问答>

Java/.net程序员如何转向嵌入式

搞了很久的Java和.net,现在想学习下嵌入式,不知道从和下手,麻烦高手指点下,谢谢。 会C/C++,能看懂汇编,熟悉Linux系统 不懂电路,硬件学得不好…

查看全部问答>

ADS1.2 的RO_BASE RW_BASE 设置

使用ADS1.2的分散加载文件程序能在LPC2132中正确运行,现在我不想使用分散加载文件,怎样设置RO_BASE RW_BASE Entry_point? ROM_LOAD 0x00000000 {     ROM_EXEC 0x00000000     {         Star ...…

查看全部问答>

个人心得:我是本人聋人嵌入式开发 有经验者请告诉我适合主机?RAM?

我是来自北京联大特殊教育学院 08应届生 大学大专 现在学习C和数据结构基础差不多啊准备下个月去嵌入式开发周末班学习 觉得学习完后我很担心找不到工作啊呀白学半年 所以请求有经验者建议 哪里方面不足告诉我 谢谢 顶 全天在线 …

查看全部问答>

铁电的问题

我用的是FM25L256 在30001~30050的字节空间里写入0X55 当我每测过一次把序号写入上述单元,比如我一次测量的时候序号为1,则相应的30001也写入1,其他的仍为0X55,问题是我在读铁电的时候从30001里读出数据为1,本应从30002读出的数据为0X55,可是 ...…

查看全部问答>

想买台WM5.0的手机做开发,什么手机合适?

wm5.0的PPC哪台性价比高些?大家都是在什么机上做开发的?…

查看全部问答>