ARM发布M33处理器白皮书 具五大优势

发布者:JoyfulSpirit最新更新时间:2017-01-10 来源: EEWORLD关键字:ARM  单片机  处理器  SOC 手机看文章 扫描二维码
随时随地手机看文章

基于ARM® Cortex® 处理器的片上系统(SoC)解决方案适用于多种嵌入式设计细分市场,如物联网、电机控制、医疗、汽车、家电自动化等。我们的处理器品种丰富且基于同一个标准架构,针对不同的产品市场提供广泛而丰富的性能与成本组合。Cortex系列处理器主要基于3大产品类型量身开发,A系列:运行复杂系统的精细高端应用;R系列:高性能硬实时系统;M系列:低功耗、确定性、成本敏感的微控制器,专门优化以满足其需求。


最先采用ARMv8-M架构的2款处理器为Cortex-M23和Cortex-M33。本文主要介绍Cortex-M33, Cortex-M33是首款采用TrustZone® 安全技术和数字信号处理技术的ARMv8-M全功能实现处理器。该处理器可以支持大量灵活的配置选项,并在广泛应用中进行部署,此外还提供专用的协同处理器界面以支持经常需要加速和大量运算的运作。Cortex-M33是一款在性能、功耗、安全与生产力之间达到最佳平衡的处理器。


QQ图片20170110184631.png

   
为了显著降低系统功耗,Cortex-M33处理器采用有序三阶管线技术。大部分指令在头两个阶段就能完成,而复杂的指令则需要3个阶段。此外,某些16位指令将采用双发射机制,以增强性能。处理器内核有两个AMBA® 5 AHB5界面:C-AHB和S-AHB,完全对称,指令和数据提取性能不分伯仲。


Cortex-M33的配置高度灵活,可以满足广泛的系统要求


在MPU、DSP、FPU、TrustZone、ETM、MTB、ITM、BPU、DWT和协同处理器界面功能中选择最佳组合方案,设计师即可迅速打造强大系统。在最低限度的控制系统中,NVIC可以被设定成只容纳一个外部中断;而在周边设备丰富的系统中,NVIC能够设定成可容纳至多480个外部中断,包含至多256个优先级。而对于那些依赖大量主动流程和线程以保持可靠运行的系统,设计师还可以增加MPU,用特权和非特权接入控制来强行隔离处理进程。如需更高级别的代码、数据和资源保护, TrustZone则是设计师的不二之选。


应用复杂度越来越高,片上调试和追踪技术的价值也日益凸显,对保障产品按期交付至关重要。Cortex-M33处理器的内置调试功能可以加速软件验证。设计师可以用JTAG端口或双插针串行调试端口来验证系统,还可以选择ETM或MTB进行出色的指令追踪,而BPU和DWT则可以允许在调试中使用断点和硬件观测点。


QQ图片20170110184701.png


现在,让我们探讨一下Cortex-M33的五大特色:


1 – 为ARMv8-M 量身优化的TrustZone技术为整个系统的安全保驾护航


采用TrustZone技术的Cortex-M33处理器拥有两个安全状态及多种相关特色:

QQ图片20170110184714.png
安全状态和非安全状态的全面利用,必将开启众多新机遇和新应用的大门。该系统使用的高价值专利固件可以在安全状态下运行。在安全状态下设置的监管员代码则可以在系统受到攻击或不可靠运行后将其恢复初始;而非安全侧则像以前一样向正在用Cortex-M开发软件的数百万开发者开放。

2 –协同处理器界面,实现高扩展性


对某些应用而言,专用运算起到的作用可谓非同小可;但为了实现专用运算,这个全球最强大设计生态系统的所有优点必须完美保留,即允许设计师在开发工具、编译器、调试器、操作系统和中间件之间最大限度的进行选择。ARM生态系统可以帮助开发商节约时间和成本,进一步提高生产力。


Cortex-M33处理器包含一个可以选配、类似总线的专用界面,主要用于集成紧耦合加速器硬件。对需要频繁运算的操作而言,该界面可以帮助设计师用自定义的处理硬件提升通用运算能力。须着重指出的是,这样做并不会使整个生态系统分裂。该界面包含最多可用于8个协同处理器的控制和数据通路,发出的信号可显示处理器的特权状态和安全状态、指令类型、相关寄存器和操作字段。协同处理器通常会合理的在几个少数循环内完成,或在后台运行并在完成时自动停止。操作的细节和数据可以通过该界面与单指令同时传输,如有需要,还可插入等待状态。

3 – 用于任务隔离的存储保护单元(MPU)


设计师可以自行对选配的MPU编程,为每个安全状态和非安全状态提供多达16个区域。在多任务环境中,操作系统可以在任务情境切换时重新编程MPU,为每个任务定义存储访问许可。比如说,某个应用的某个任务只被允许访问某些应用数据和特定的周边设备,这种情况下,MPU将保护所有其他的存储和周边设备,将讹误或未授权访问阻挡在外,有效提升系统可靠性。


QQ图片20170110184727.png


存储区设置更简易

Cortex-M33存储保护架构的开发基于受保护的存储系统架构PMSAv8。最新版本搭载了针对各区域的基线与限值比较器,而非此前的二次方尺寸对齐模型。每个区域都有一个基线的初始地址、终止地址,以及访问许可和存储性质的设定值,因此在这一架构中,设计师设计MPU区域时再也无需顾虑将多个区域整合在一起的麻烦了。功能强化后,软件开发变得更加简单,客户的使用意愿提升,编程步骤也得以减少,并将进而降低情境转换次数。

4 – DSP拓展


选配的整数DSP拓展可以为系统增加85个新指令。大多数情况下,DSP指令可将性能平均提升3倍,让所有以数字信号控制为中心的应用性能突飞猛进。


为帮助设计师加速软件开发,ARM将在CMSIS项目中提供免费的DSP库,包含整套过滤、转换和数学功能(如矩阵),并支持多种数据类型。CMSIS项目是开源的,其开发详情发布在github上。

5 – 单精度浮点单元


基于FPv5的选配单精度浮点拓展单元包括一份额外的16-入口 64位寄存器文件。该拓展新增45个与IEEE754-2008兼容的单精度浮点指令。使用浮点指令通常可将软件库平均性能提升10倍。FPU位于单独的电源域,负责在整个单元不使用的时候切断电源。


Cortex-M33是一款能在性能、功耗和安全之间实现最佳平衡的处理器。


嵌入式解决方案日益复杂,而它们带来的价值也不断凸显,当今设计师面临的挑战是在相冲突的设计要素之间找到最佳平衡。此外,片上系统包含的软件数量正在显著增加,但项目开发时间却不断缩短。为了用更短的时间交付合格的产品,保证性能,减少成本,我们必须踏出正确的第一步。


Cortex-M33应运而生,为了迈出正确的第一步量身打造,ARM将过往经验与现有的Cortex-M生态系统完美结合,实现了开发成本降低。得益于采用了多种低功耗技术的全新设计,首先降低的是系统功耗;对打造安全方案的用户,TrustZone技术则为其应用和宝贵的IP提供保驾护航的坚实基础。升级后的MPU和TrustZone共同提升系统的可靠性和保护能力。最后值得一提的是,我们永远不会停止追求生产力的脚步。TrustZone的设计初衷便是保证当前用户能够像从前一样,继续在非安全领域内开发。Cortex-M33还强化了调试与追踪性能,使复杂代码的操作更便捷。与所有其它Cortex-M处理器一样,Cortex-M33的所有编程都可以在C语言环境下完成,包括全部异常处理程序。总而言之,上述功能诞生的目的都是为了帮助开发者提高生产力,在更短的时间内设计出更复杂的解决方案。


在定义并开发新一代处理器的过程中,许多芯片厂商成为了ARM的合作伙伴,并积极利用TrustZone安全技术设计芯片。ARM生态系统也将重点放在将工具和软件移植到Cortex-M33。尽管Cortex-M33已经在性能、功耗、安全和生产力之间取得了最佳平衡,但ARM及其合作伙伴将继续努力,为开发商提供更加出色的产品,帮助其挥展创意、实现远见,营造更连通、更智能、更安全的世界。

关键字:ARM  单片机  处理器  SOC 引用地址:ARM发布M33处理器白皮书 具五大优势

上一篇:利用MCU实现语音识别?MSP432能做到!
下一篇:ARM Cortex-M23处理器的五大特色

推荐阅读最新更新时间:2024-03-16 15:30

单片机32位LED花样流水灯程序+原理图
最近有点忙,可还是腾出空来打造了一款 单 片机32位LED花样流水灯 !......................那是没办法的,那*丝急了 这是原理图: 呵呵,原理不怎么难吧 LED心形排布图: 这是PCB,我改过了的,减少了一些限流电阻! 将PCB打印好,弄好板,装好原件,再焊接好,看,这就是成品了 部分程序: #include reg52.h #define uchar unsigned char uchar flag=200; //////////////////////////////////////////////////////////////////
[单片机]
<font color='red'>单片机</font>32位LED花样流水灯程序+原理图
从ADS到RealView MDK(MDK ARM)
Keil是业界最受欢迎的51单片机开发工具之一,它拥有流畅的用户界面与强大的仿真功能。而ARM微控制器的开发工具RealView Microcontroller Development Kit (简称为RealView MDK 或者 MDK)将ARM开发工具RealView Development Suite(简称为 RVDS)的编译器RVCT与Keil的工程管理、调试仿真工具集成在一起。 很多嵌入式系统开发工程师对ARM的老版本开发工具ADS非常熟悉,而RealView MDK与ADS相比较,从外观、仿真流程以及内部二进制编译链接工具上都有了不少改进,用法稍有不同。本主的主旨是介绍通用的流程,以及一些注意事项,帮助ADS用户将老
[单片机]
WINDOWS环境下PC机与单片机的通信
在自动控制系统中,PC机与单片机组成上位机和下位机,其基本构成是:下位机(单片机系统)完成信号检测、A/D转换和简单的控制功能,通过系统总线(如RS-232、RS-485、USB)与上位机(PC机)相连,进行监测、控制,形成主从式结构。下面就上位机和下位机之间目前几种常用的通讯方法作一些介绍。 1、RS-232的串行通讯 在工业控制中,串口是常用的计算机与外部串行设备之间的数据传输通道,由于串行通信方便易行,成本低,且完全能满足要求,所以应用广泛。 1.1、利用VC++的标准通信函数 利用VC++的标准通信函数_inp和_outp可实现串口通信。下面是一个串口初始化的程序: Void init_com (PORT)
[单片机]
WINDOWS环境下PC机与<font color='red'>单片机</font>的通信
日立超低耗电单片机在高速中文FLEX漫游传呼机中的应用
本例使用日立超低耗电的8位单片机H8/3887于高速中文FLEX传呼机中。使用此单片机之好处在于其超低的耗电,高速运行耗电低于1毫安,睡眠模式耗电低于5微安。其超低耗电能有效延长传呼机之电池寿命。 使用的主要元件为日立单片机H8/3887,日立点阵LCD驱动器HD66410,此驱动器能驱动128行乘33的点阵,因此能显示2行×8个中文字或4行×16个英文字,而FLEX解码器则选用三星的KS8701(用那一家解码器都可以,因全部解码器都是兼容的),高频部分使用摩托罗拉的MC2800,在MC2800的高频板上使用了NPC的锁相环IC5466AV,中文字库方面使用了日立的HN27C4001 256KB的EPROM作为储存,
[网络通信]
MCS-51系列单片机实现PWM输出功能的方法解析
MCS-51系列单片机无PWM输出功能,可以采用定时器配合软件的方法实现,对精度要求不高的场合是非常实用的。采用高速光隔6N137输出,并将PWM的信号倒相。 一、 工作原理 二、PWM输出 1. 固定脉宽PWM输出 用T0定时器完成PWM输出,脉宽固定为65536us。T0定时器设置成16位定时器,PWM波形如图2所示。 程序清单:(12MHz) PwmData0;T0定时t1的初值(字) PwmData1;T0定时t2的初值(字) PwmF ;PWM输出标志 ;*************************** setb tr0;启动T0 …… ;T0中断服务程序 T0Int:JB,PwmF,PWMOUT ;PWM
[单片机]
OpenCV答题卡识别模拟-测评米尔ARM+FPGA异构开发板
前言 米尔基于ARM+FPGA异构开发板的SDK发布说明 米尔基于ARM+FPGA异构开发板,根据下图文件内容可以知道myir-image-full系统支持的功能,其支持OpenCV,也就不用在格外安装相关驱动包等,省了很多事情。 02. 米尔基于ARM+FPGA异构开发板软件评估指南 本文介绍了Python的基本操作,在文档中10.1开发语言支持。 03.米尔基于ARM+FPGA开发板历程路径 /usr/share/OpenCV/samples//usr/share/opencv4/samples/python/ 文件目录中有一些python程序。 04.米尔基于ARM+FPGA开
[嵌入式]
OpenCV答题卡识别模拟-测评米尔<font color='red'>ARM</font>+FPGA异构开发板
基于VB6.0的MSP430单片机与PC机串口通信设计
  串行通信已经成为计算机与其他设备进行数据交换最广泛的通信手段。主要介绍了利用MSP430 单片机的串口通信模块和VB6.0 提供的串行通信控件MSComm 实现PC 机与MSP430 单片机的串行通信,并着重阐述了在VB6.0 环境下实现的主要过程。   1 引言   随着计算机技术的不断发展,计算机应用在其发展过程中逐步形成两大分支,一是通用计算机,PC 机为代表,着眼于高速数值运算和数据处理,但实时测控能力较弱。二是嵌入式微机,以单片机为代表,着重发展测控技术,但其数值运算和数据处理能力较弱。目前,在 工业控制 以及数据采集和数据处理的大型系统中,由于PC 机软件资源丰富,人机交互方便等优点。以PC 机作为上位机,以单
[单片机]
基于VB6.0的MSP430<font color='red'>单片机</font>与PC机串口通信设计
单片机如何提高编程效率优化程序?
在进行8051单片机应用系统程序设计时,编程都往往少不了要直接操作系统的各个存储器地址空间。 C51程序经过编译之后产生的目标代码具有浮动地址,其绝对地址必须经过BL51连接定位后才能确定。 为了能够在C51程序中直接对任意指定的存储器地址进行操作,可以采用扩展关键字“at”、指针、预定义以及连接定位控制命令。 在这些方法中,本人认为最简单而有效的方法是用“ _at_ ”关键字来对指定变量存储器空间绝对地址来指定。一般格式如下: 数据类型 标识符 _at_ 地址常数 其中: (1).存储器类型: idata、data、xdata等C51能够识别的所有类型,最好不要省略。 (2).数据类型: 可以用int、long
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

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

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

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