Keil是广泛的ARM生态系统的一部分,能让开发人员快速将系统投放市场。 如果没有软件,即使是最好的片上系统也会毫无用处。同样,最好的软件需要硬件的支持才能有用武之地。“老式”的嵌入式软件已发展成为物联网、可穿戴产品等新兴市场,就连汽车行业也是如此——随着娱乐产品和ADAS等创新产品的开发,其不再受限于电机控制或安全气囊。这些新兴产品的共同之处是什么?那就是每个产品都需要具备更多的软件功能、快速内存算法和确定性代码执行,以及用以支持这些要求的创新硬件,比如基于ARM Cortex-M7的Atmel | SMART SAM ESV7。 ARM发行了针对各种基于ARM Cortex-M的微控制器即Keil MDK的完整的软件开发环境。Keil是广泛的ARM生态系统的一部分,能让开发人员快速将系统投放市场。MDK包括µVision IDE/解调器和ARM C/C++编译器,以及关键的中间件组件和软件包。如果你对运行环境的堆栈描述不陌生,就能识别出各种栈区。不过,我们的重点是CMSIS-驱动器。CMSIS是用于Cortex-M系列微控制器的标准软件框架,利用面向中间件和通用组件接口的驱动器扩展SAM-ESV7芯片库。 从定义来看,微控制器旨在运行多种应用程序,而SAM ESV7则为性能要求和DSP密集系统提供支持。SAM ESV7的300兆赫的时钟周期使其能达到640 DMIPS的性能,而且其DSP性能是Cortex-M4性能的2倍。一个双精度浮点单元和一个双发指令流水线能让Cortex-M7的速度定位更为精准。 让我们一起回顾一下其中最适合使用SAM ESV7的一些应用程序…… 指纹识别模块 目的是为办公室或房屋门禁提供人类生物认证模块。关键设计要求如下: ·300兆赫以上的CPU性能,以处理识别算法 ·图像传感器接口,以从手指阵列传感器中读取原始手指图像数据 ·成本低,模块尺寸较小 ·快闪式存储器,以降低BOM成本,减小模块尺寸 ·存储器接口,以扩展存储器扩展模式,以防万一。 对优越性能和图像传感器接口的要求可以看作是必备需求,但是提供比竞争对手更低的BOM成本和更小的模块尺寸则是差异所在。SAM S70集成了高达2兆字节的嵌入式闪存,而这一内存容量是直接竞争对手的2倍以上,因而能降低BOM成本并减小模块尺寸。 汽车无线电系统 在汽车设计中,每一分钱都很重要。原始设备制造商更青睐于使用微控制器,而非微处理器,其最初的考量就在于成本。为未来的汽车打造一款有吸引力的收音机要求开发出高运算效能的DSP算法。这种算法过去常常用在可扩展的DSP标准件上,导致模块尺寸较大,其中包括外部快闪式存储器和微控制器,这两者显著增加了BOM的组成内容。在65nm嵌入式闪存处理装置中,当运行频率达到300兆赫时,Cortex-M7的CoreMark评分能达到1500,Cortex-M7的DSP性能则为Cortex-M4性能的2倍。该DSP功率可用于处理八个通道的语音信息,包括六个阶段的二阶滤波器、延迟器、限幅器和静音功能。SAM S71的工作负荷只占CPU的63%,因此能有足够的空间支持以太网AVB堆栈——其在汽车领域备受青睐。 Cortex-M7架构的一大秘笈是通过高度耦合的内存(TCM)提供一种规避标准执行机制的方式。Lionel Perdigon和Jacko Wilbrink攥写了一份名为《用Cortex-M7高度耦合内存实现高速算法》的白皮书,这份白皮书详细描述了TCM在SAM S70/E70系列中的应用,你可以在本文中找到这份白皮书。 该**获得SemiWiki.com的转载许可,Eric Esteve是主要博主以及该网站的四名创始成员之一。该博客于2015年10月23日首次发布于SemiWiki。 点击阅读英文原文
|