- 本课程为精品课,您可以登录eeworld继续观看:
- MSP432产品培训(二):Cortex-M4F内核
- 登录
- 课程目录
- 课程笔记
大家好 非常欢迎大家来观看本次MSP432的培训
本部分的培训是整个432培训的第二部分
我们将具体地来介绍一下我们432产品的Cortex M4F的内核
我们432产品使用到的这个Cortex M4F的内核
它是一个32位的CPU
它所有的数据总线 指令总线寄存器接口 存储器接口
外设接口都是32位的
那我们这个CPU它采用的是哈佛结构
也就说它有独立的总线和数据总线
也就是我们对指令和数据的访问是可以同时进行的
这个数据访问的过程不会影响或者干扰到指令流水线的执行
因此从这点看 我们极大地提升了处理器性能
在我们MSP432选择的这个Cortex M4F内核
它内核内部包含了一个专门用于中断惯例的一个矢量嵌套的管理器
我们称它为NVIC
这个NVIC我们待会儿会具体介绍一下
那除此之外 我们内核还包括一个浮点运算单元 一个FPU
以及随着Cortex M4这个内核一起提供的一个增强型的DSP指令级
那从调试器的角度来看 我们内核是拥有一个标准化Cortex-M的调试器模块
这个调试器模块用的也是一个标准的串口的调试接口
另外我们也支持一个ITM的一个trace的跟踪技术
那由于这是一个Cortex-M系列的内核
因此它还继承了大量的来自Cortex和ARM产品系列的外设
其中包括一个μDMA 用于数据传输的μDMA
一个SysTick 一个系统的时钟嘀嗒和整个中断系统
那我们待会儿具体看一下
那我们现在图片上显示的是整个Cortex-M内核的家族
我们来看一下这些家族里面这些不同的内核的一些区别
首先我们选择的Cortex M4它是提高了一个内核的复杂性
它的M4指令级里面跟我们其他的M0 M3内核来比 增加了更多指令
比如说我们的硬件传发器我们Cortex M0当中有硬件传发器
但是它是32个时钟周期执行的
我们的CortexM3和M4呢 就会有硬件的单周期的硬件传发器 和硬件触发器
我们Cortex M3 M4还支持一个饱和运算M4内核支持一个DSP指令扩展
M4F跟M4内核相比它就增加了一个FPU 一个浮点运算单元
那我们从整个系统来看 我们Cortex M0+和M1采用的都是ARM的V6架构
这是一个冯·诺伊曼的架构
也就是它的指令总线和数据总线是使用一条单一的总线的
我们的Cortex M3和M4 它是V7架构也就是使用的是哈佛总线
独立的分开的指令总线和数据总线
那我们之所以为MSP432选择Cortex M4F内核
就是因为Cortex M4F内核它在增加了更多的性能 特性 功能的同时
它其实增加了最少的功耗 这点我们就在后续的图片当中进行说明
你将看到MSP432上采用Cortex M4F内核的一些结果
现在我们简单介绍一下我们M4F内核版本中新增的这个FPU 浮点运算单元
那这个浮点运算单元完全支持浮点运算加法减法乘法除法和平方根的运算
需要提醒大家注意的一点是大多数的编译器当中已经自动启动FPU了
也就是说我们在进行代码开发时我们不需要进行任何注释或者特殊的操作
我们就其实已经在计算过程当中使用到了浮点运算
这是我们的一个特色 因为432的产品采用的是一个标准化的ARM的内核
因此我们最好以一个标准化的方式来测量我们这个整个芯片的性能
那CoreMark 它是非常广泛的用来测量处理器内核性能标准化基准测试
它这个CoreMark是由嵌入式的微处理器基准协会EEMBC 它所开发
它主要帮助系统设计人员来选择最佳处理器 了解处理器的性能和能耗等等
我们的MSP432获得了Cortex M4F这一平台在CoreMark测试当中可能达到最高分数
我们知道这是一个最高分数
因为我们是以理想的Cortex M4内核为基准进行整个方案设计达到的分数
那具体的一些分数以及和我们竞争者的一些产品的分数的比较
都可以在ARM的平台 ARM的网页上以及CoreMark的网页 大家能来看到
可以看到我们432产品一个CoreMark的分数是非常高的
也就说性能是在同类的采用M4F内核微处理器当中 性能是非常优异的
那除了CoreMark这个用来测试我们微处理器性能的基准测试之外
我们的EEMBC还开发了另外一种基准测试
它用来测试芯片超低功耗方面的特性这个叫ULP bench 也是一个基准测试
它是通过执行一个适用于进行低功耗测试的任务来测量整个器件的功耗的
这个ULP的bench发布于2014年
此后就成为业界内对于广泛微控制器进行低功耗基准测试的一个标准方法
这项基准测试主要方法由一个每秒钟需要唤醒微控制器来执行预定义工作
当这个工作完成我们微控制器就要返回睡眠状态 然后一秒后再次唤醒执行
那我们就会将测量整个系统循环完成整个任务所需要消耗的能耗
能耗越低就说明我们整个微控制器的性能 它的超低功耗的性能越优秀
那为了使我们最终的结果分数对于读者来说更直观一点
我们这个分数实际上是用1000除以测得的总能耗也就是V+2这样的结果
你可以看到对于MSP器件而言这个结果是非常令人印象深刻的
那你从图中就可以看到我们MSP432的产品
它达到了全球至今为止最高ULP bench分数 153.3分
这一成绩大大优于我们各个竞争公司产品
包括所有使用Cortex M4Cortex M3以及一直往下到
专注于低功耗的Cortex M0+的一些产品 一些其他的专有的架构
那这个结果就表面 一个产品的高性能并不总是意味着高功耗
在我们整个设计得当的情况下
就算我么是用Cortex M4F这个样一个非常高性能的内核
我们器件仍然可以达到比其他一些简化内核 反而拥有更低的功耗
课程介绍
共计13课时,2小时30分32秒
猜你喜欢
换一换
推荐帖子
- CS8626引脚图 免滤波、50W单声道D类功放 HT8696电路图
- CS8626 免滤波、50W单声道D类音频放大器性能简介 概要CS8626E是一款55W单声道高效D类音频功率放大电路。先进的EMI抑制技术使得在输出端口采用廉价的铁氧体磁珠滤波器就可以满足EMC要求。CS8626E单通道音频功率放大 器是为需要输出高质量音频功率的系统设计。 CS8626引脚图HT8696电路图 ...
-
Aguilera
模拟与混合信号
- 请教PinMux的代码
- 按照《Adding Flash Read and Write to an Existing mmWave Project》,里面代码片段如下: /* Setup the PINMUX to bring out the QSPI */ Pinmux_Set_OverrideCtrl(SOC_XWR14XX_PINR10_PADAP, PINMUX_OUTEN_RETAIN_HW_C...
-
davidjune
TI技术论坛
- CC2530的ADC采集外部电压
- 初窥ZIGBEE 要在zigbee的组网中加入烟雾传感器的模块,所以需要用到cc2530的ADC对传感器输出的模拟信号进行采样。下面是自己对实现用CC2530的ADC采集外部电压的程序过程。 以下是ADC的配置: #include<iocc2530.h> #include"adc.h" #include"uart.h" #...
-
fish001
微控制器 MCU
- 初学TMS320C2000的注意问题
- 1)单步可以运行,连续运行时总回0地址: Watchdog没有关,连续运行复位DSP回到0地址。 2)OUT文件不能load到片内flash中: Flash不是RAM,不能用简单的写指令写入,需要专门的程序写入。CCS和C Source Debugger中的load命令,不能对flash写入。 OUT文件只能load到片内RAM,或片外RAM中。 3)在flash中如何...
-
fish001
DSP 与 ARM 处理器