STM32MP1微处理器:打出高性能与低功耗的组合拳

要说嵌入式系统所需的处理能力,完全可以用「今非昔比」来形容。智能手机、智能电视、智能家居、各种五花八门的「智能××」,以及自动驾驶、生物识别等技术,当然还有诸如「人工智能」之类更加大的概念,都是近年来嵌入式系统的大热所在,都离不开强大的处理能力。然而一码归一码,新技术对计算能力的需求是水涨船高了,可对能耗控制的要求却是丝毫不打折扣——从某种程度上来讲,这方面的要求反而变得更高了,这一点只要比较一下不同年代主流手机的电池容量就能明白。又要马儿跑得快,又要马儿草吃得少,这可怎么是好?

“”

办法总会有的,许多半导体电子厂商为此投入了大量研发精力,也确实拿出了不错的成果,ST新推出的首款基于Arm Cortex-A7架构的多核处理器STM32MP1 MPU平台便是一例。STM32MP1 系列产品在充分满足多种应用的灵活性需求的同时,又实现了最佳性能和低功耗特性。该平台具有强大的计算和图形处理能力,兼备高效的实时控制和较高的功能集成度,以及高效的电力实时控制和高功能集成,将促进为工业、消费者、智能家居应用开发高性能解决方案。这款平台非常适合在实时和功耗受限的子系统中用来开发开源软件应用。

STM32MP1 系列处理器最高有双核Cortex-A7和Cortex-M4协处理器的组合,同时配备3D GPU单元,以提供更流畅的体验。同时,外围功能更是丰富多样,除了常规的UART、SPI、I2C、SAI和USB,还有HDMI、MIPI、CAN FD、16bit ADC等等。

在嵌入式开发采用的操作系统中,开源的Linux/Android占有主流地位,它们满足了系统对灵活性的需求,但仅凭它们却未必能实现高性能、低功耗的目标,可另行搭配其他方案也会带来额外的功耗开销。为此,STM32MP1 采用了一种巧妙的异构计算架构。该MPU平台将主频650MHz的Arm Cortex-A7和主频209MHz的Arm Cortex-M4整合到一起,前者用于开源操作系统(Linux/Android),后者用来处理实时低功耗任务。借助这种灵活的异构计算架构,只需采用一块芯片,便可执行快速数据处理和实时任务,实现更高的能效。用户可以在这一新型STM32异构计算架构上开发一系列新的应用设计,甚至可以借助停止Cortex-A7执行的指令,只让能效更高的Cortex-M4运行,此举通常可将功耗降至25%。

对于新事物的出现和普及,开发人员的心情恐怕颇为复杂,毕竟这很可能意味着他们又得学习很多新知识才能保住饭碗,但对于STM32MP1 而言,情况也许并非如此,因为它完全可以依托STM32 MCU现有的成熟生态系统,给客户提供全面整合的设计套件,并且其Cortex-M4内核可支持先前的STM32Cube固件库和嵌入式软件包,这样整体的STM32MP1 就有一个完整的嵌入式软件供客户使用,有助于开发者轻松实现各类开发应用,并且以较低的成本实现机器人和工业控制。

在确保性能和带宽方面,内存有着非常重要的地位;如果一个系统必须搭配昂贵的内存配件的话,对于防止它出现性能瓶颈和带宽问题而言,显然是不利的。STM32MP1 支持使用相对经济的DDR SDRAM内存,包括DDR3、DDR3L、LPDDR2、主频533MHz的32/16位LPDDR3。此外,STM32MP1 还支持各种闪存产品,包括eMMC、SD卡、SLC NAND、SPI NAND和Quad-SPI NOR闪存。

在强大的计算能力之外,STM32MP1 嵌入了丰富的数字与模拟外设,可以无缝分配给Cortex-A/Linux或Cortex-M/实时操作。

STM32MP1 系列采用多种BGA封装,支持低成本的PCB板结构。STM32MP1 的电路板空间占用非常小,这对于设计电路的工程师而言也是一个好消息。

总之,在复杂的现实问题面前,单薄的传统方案难免hold不住,就好比在擂台上总是打单一拳法,难免被看穿套路。相比之下,STM32MP1 创新的异构架构就好比一套组合拳,将高性能与低功耗集于一身,在面临复杂需求时更加灵活自如。

最新文章