STM32F7 von STMicroelectronics ARMs Cortex-M7 - der Schlüssel zu sicherheits­kritischen Anwendungen?

Neuer STM32F7 mit ARM Cortex-M7

Zeitgleich mit ARMs Präsentation des Cortex-M7 stellte STMicroelectronics eine neue Mikrocontroller-Familie mit der Bezeichnung STM32 F7 vor, die in STs 90-nm-Embedded-Flash-Prozess gefertigt wird und eine pin-kompatible Weiterentwicklung des STM32F429 ist. Sie erreicht daher nicht die von ARM für einen 40-nm-Prozess angegeben 400 MHz, sondern „nur“ 200 MHz; mit 428 DMIPS bzw. 1000 auf echtem Silizium gemessenen CoreMark stellt ST allerdings nicht nur im Cortex-M-Universum einen neuen Rekord auf: Renesas' RX40M (bei 120 MHz 510,2 CoreMark) und Microchips PIC32MZ (bei 200 MHz 654,36 CoreMark) werden deutlich übertroffen, dazu plant ST sogar für die Zukunft eine mit 800 MHz getaktete Familie, die in 28 nm gefertigt werden wird und dann auf 4000 CoreMark kommen dürfte.
Im Gegensatz zu STs bisheriger High-End-Familie F4 arbeitet die F7-Serie, die zum Start wahlweise mit 512 KB oder 1 MB Flash-Speicher erhältlich ist, mit höherer Taktfrequenz (200 MHz anstatt wie bisher maximal 180 MHz), erhält eine Daten-SRAM-Kapazität von 320 KB (240 KB + 64 KB Daten-TCM + 16 KB Busmatrix, dazu kommen noch 16 KB Befehls-TCM) statt bisher 192 KB und verfügt über Peripheriefunktionen für Imaging, Konnektivität und Verschlüsselung. Der 64 KB große Daten-TCM führt zu einem verbesserten Determinismus, da die Antwortzeiten durch diese extrem schnelle Schnittstelle gegenüber STs bisherigem Ansatz natürlich sinken. Der schon aus dem F4 bekannte ART-Beschleuniger (Adaptive Real-Time) führt dazu, dass der F7 bis zu seiner maximalen Taktfrequenz von 200 MHz ohne Wait States bei Code-Verarbeitung aus dem Flash-Speicher arbeiten kann. Implementiert hat ST für externe Speicherzugriffe Caches für Befehle und Daten (jeweils 4 KB) sowie die bereits beschriebene FPU für Gleitkomma-Operationen mit einfacher Genauigkeit – auf doppelte Genauigkeit wurde zu Gunsten einer geringeren Die-Größe und Leistungsaufnahme verzichtet. Des Weiteren ist ein 4 KB großer Backup-SRAM-Bereich vorhanden, in den im Standby‑ oder Stützbatterie-Modus Daten geladen werden können.
Interessant ist die Implementierung der Bussyyteme: Während der Daten-TCM auf echtzeitkritische Daten wie Stack oder Heap limitiert wurde, wird das SRAM über die 64-bit-AXI- zu 4xAHB-Brücke adressiert (Bild 5). Externe Speicher werden über eine achtschichtige AHB-Schaltmatrix mittels STs flexiblem Speichercontroller (FMC) oder einer Dual-Quad-SPI-Schnittstelle angesprochen,
Wie sehr der STMF7 von der beschleunigten Gleikomma-/DSP-Verarbeitung des Cortex-M7 profitiert, zeigt eine Ray-Tracing-Applikation: Diese nutzt sehr intensiv Vektor-Berechnungen auf Basis von Gleitkommazahlen und wird beim STM32F7 bei 200 MHz rund 1,8 mal schneller ausgeführt als von einem STM32F4 bei 180 MHz. An STs Chrom-ART-Grafikbeschleuniger für Operationen auf 2D-Objekten und Pixel-Format-Konvertierung, der auch im STM32F7 steckt, liegt der Unterschied nicht; er ist auch schon beim STM32F4 verbaut.