遇见Linux,STM32就从MCU升级到了MPU!

640?wx_fmt=jpeg

遇见Linux,STM32就从MCU升级到了MPU!_第1张图片

遇见Linux,STM32就从MCU升级到了MPU!_第2张图片

原来如此,工程师们期待已久的能够跑Linux系统的STM32产品——STM32MP1,终于来到中国了!

2007年,ST推出世界首个基于Cortex-M架构的STM32系列的MCU,12年过去了,STM32产品系列不断壮大,到现在ST第一颗支持Linux系统的微处理器(MPU)也加入到STM32阵营。

STM32MP1具有三个Arm核,还内置了3D GPU
640?wx_fmt=gif

据意法半导体微控制器事业部STM32微处理器产品市场经理Sylvain Raynaud介绍,STM32MP1内整合了2个650 MHz的Cortex-A7内核和一个209 MHz 的Cortex-M4内核。两个内核的分工很明确,Cortex-A7内核专用于开源操作系统,目前可以运行OpenSTLinux,这是ST 专门为STM32MP1开发的支持主分支开源Linux发行版,Sylvain Raynaud表示STM32MP1 SoC驱动程序已经被Linux社区采用。Cortex-M4内核则专用于处理实时和低功耗任务,其拥有一个448 KB的专用RAM存储器,仅供Cortex-M4使用,保证了它的运行速度。

遇见Linux,STM32就从MCU升级到了MPU!_第3张图片

STM32MP1内部架构,Cortex-A7和Cortex-M4之间通信还有硬件安全加密

Cortex-A7和Cortex-M4这两个核之间配合也非常“默契”,例如可以给Cortex-A7发送停止指令,这时只有能效更高的Cortex-M4运行,功耗通常可以降至25%,从低功耗模式进入待机模式,功耗可以进一步将至1/2500,同时仍然支持1~3 s内恢复Linux执行,具体的恢复速度取决于实际应用,Sylvain Raynaud介绍,这个恢复速度在业内处于领先水平!  

遇见Linux,STM32就从MCU升级到了MPU!_第4张图片

三种功耗模式灵活切换

除了两个异构核之间可以在三种运行模式下灵活切换外,所用的外设和接口,客户也可以根据应用需要灵活配置给Cortex-A7或者Cortex-M4,这样丰富的外设客户可以在设计时分配不同的外设给三个内核使用。这些外设包括2个16位ADC、2个12位DAC和片上LDO稳压器、29个定时器和3个看门狗等。

STM32MP1还嵌入了3D图形处理器(GPU),可以实现基于OpenGL ES2.0接口的高级HMI开发以及Linux和各种应用程序框架(包括Android Qt)的本机支持。STM32MP1支持60 fps、高达WXGA的24位并行RGB显示器接口和运行频率1 Gbps的有2个数据通道的MIPI DSI接口。所以使用STM32MP1开发,可以提升工业控制面板等设备的用户体验。

专用的电源管理IC免除供电忧虑
640?wx_fmt=gif

Sylvain Raynaud介绍ST专门为STM32MP1开发了一个配套的电源管理IC(STPMIC1),其集成了4个DC/DC降压转换器、6个LDO稳压器、1个DC/DC升压转换器,以及USB VBUS和通用功率开关,为STM32MP1和电路板上的其他组件提供所需电压。STPMIC1采用功耗优化设计,工程师不用再去专门选择电源管理IC了。

遇见Linux,STM32就从MCU升级到了MPU!_第5张图片

STM32强大的MCU生态延续到MPU

640?wx_fmt=gif

小编其实好奇,为什么ST这款历时将近5年研发的MPU依然沿用了STM32的命名。Sylvain Raynaud介绍,虽然STM32MP1是MPU,但是广大工程师熟悉的STM32 MCU生态系统依然可以直接拿来使用。因为STM32MP1里面包含一个Cortex-M4内核,这个内核已经集成在多个MCU产品中,已经有了非常成熟的设计套件,工程师可以直接拿来使用STM32 MCU Cube固件,包括数个可访问外设的应用编程接口、多个中间件、数以百计的应用例程、友好的第三方企业授权协议等,这样可以大大缩短产品的开发周期。

遇见Linux,STM32就从MCU升级到了MPU!_第6张图片

除了已经成熟的STM32 MCU Cube,ST还针对STM32MP1开发了全面支持Cortex-A+Cortex-M架构的软件工具:STM32CubeMX是STM32Cube软件包的特别升级版,具有加快Cortex-A内核MPU项目开发所需的全部功能和特性,包括可以处理Cortex-M4内核的C代码生成、DDR SDRAM接口配置和调试工具,还可以生成Linux Device树形图;包括多个合作伙伴软件的集成开发环境(如arm KEIL、IAR SYSTEMS、Eclipse)下完成编译与调试;STM32CubeProgrammer可以完成代码烧录,包括对闪存、DRAM和系统内存中代码烧录,OTP存储器烧录以及数字签名和密钥生成工具的烧录。

开发板、探索板已经可以购买
640?wx_fmt=gif

工程师期待已久能够在STM32上跑Linux,伴随芯片的量产铺货,ST也推出了多款硬件解决方案辅助工程师开发:可以评估STM32MP1全部功能的评估板,包括STM32MP157A-EV1和安全功能升级的STM32MP157C-EV1;可以灵活开发产品原型和演示品的探索板,包括STM32MP157A-DK1和增加了MIPI DSI WVGA显示屏和WiFi/BT射频模块的STM32MP157C-DK2;第三方提供的原型板和生产级板,包括Linaro电路板和各种可商用的核心板。这些通用的硬件工具在STM32天猫旗舰店已经可以购买。更多资料可以到ST的维基百科用户指南查询,不管初学者还是专家都可以利用这个平台(https://wiki.st.com/stm32mpu)。

除了可以运行Linux系统外,ST也在与Witekio合作,将Android移植到STM32MP1上,但是Sylvain Raynaud也强调了其实STM32MP1更加适合于工业控制应用,因为工业中还是主要应用Linux系统,不久其上还可以运行个别专用的RTOS,应用范围还会有进一步的扩展!

最后解答工程师的一个疑问:

遇见Linux,STM32就从MCU升级到了MPU!_第7张图片

Sylvain Raynaud认为采用

640?wx_fmt=jpeg

遇见Linux,STM32就从MCU升级到了MPU!_第8张图片

就意味着背后有ST的产品质量做保证,大树底下好乘凉,就是这个意思!

上福利!

各位嵌友,只要您在留言中写下对STM32MP1的想法和建议,就有机会获得我们送出的相关嵌入式书籍!(活动截止时间:2019年10月27日12点)

遇见Linux,STM32就从MCU升级到了MPU!_第9张图片

640?

640?wx_fmt=png

640?wx_fmt=gif

你可能感兴趣的:(遇见Linux,STM32就从MCU升级到了MPU!)