Nowości w rodzinie STM32H7 – więcej pamięci i wydajności

| Technika

Firma ST Microelectronics wprowadziła na rynek pięć nowych mikrokontrolerów rozszerzających portfolio układów dostępnych w ramach rodziny STM32H7. Są to STM32H723, STM32H733, STM32H725, STM32H735 i STM32H730. Wyróżniają się dużą wydajnością, są taktowane rekordowo szybkim zegarem o częstotliwości 550 MHz. Są także pierwszymi STM32H7 z 12-bitowym przetwornikiem analogowo- cyfrowym próbkującym z szybkością pięciu megapróbek na sekundę. Ponadto mają 64 KB pamięci podręcznej L1 (odpowiednio 32 KB na dane i instrukcje). Usprawnienia te widoczne są w testach wydajności – w teście CoreMark osiągają 2778 punktów i 1177 DMIPS-ów.

Nowości w rodzinie STM32H7 – więcej pamięci i wydajności

Nowe mikrokontrolery lokują się w zakresie potencjału i wyposażenia pomiędzy istniejącymi już STM32H7A3/B3 i STM32H745/755. Ten pierwszy ma więcej pamięci, ale działa z dużo wolniejszym zegarem po to, aby pobierać mniej mocy (rys. 1). Jest przeznaczony do aplikacji, które nie wymagają dużej wydajności obliczeniowej. STM32H745/755 ma więcej pamięci i architekturę dwurdzeniową nadającą priorytet wydajności. STM32H723, STM32H733, STM32H725, STM32H735 i STM32H730 oferują inny kompromis. Mają najlepszą wydajność jednowątkową ze wszystkich STM32H7, ale ich mniejsza wielkość pamięci RAM i Flash pomaga obniżyć koszt BOM aplikacji.

Układy wchodzące w skład rodziny STM32H7 oparte są na rdzeniu Arm Cortex-M7 i są dostępne z pamięcią Flash o wielkości do 1 MB. Mają do 564 KB pamięci RAM, zapewniają większą wydajność przy przystępnej cenie. Tak dużo miejsca na dane i kod programu wynika z tego, że są to jednostki ukierunkowane na zastosowania w układach automatyki przemysłowej, która wymaga coraz większej wydajności nawet w przypadku niewielkich pod względem gabarytów aplikacji.

Jednocześnie mogą współdziałać z zewnętrzną pamięcią, zapewniając bezpieczeństwo zapisywanych tam danych. Szybkość wykonywania kodu w pamięci zewnętrznej jest taka sama jak zintegrowanej, a kontroler pamięci (FMC) i interfejs Octal SPI upraszczają projekty aplikacji potrzebujących dużej ilości pamięci, takich jak wysokiej rozdzielczości pełnokolorowa grafika i wideo, które wymagają stworzenia dużego bufora klatek.

Wydajność

Duża wydajność mikrokontrolerów jest potrzebna nie tylko do realizacji wydajnych algorytmów przetwarzania danych, w tym uczenia maszynowego lub wstępnej obróbki danych za pomocą rozwiązań opisywanych jako sztuczna inteligencja. Drugim obszarem, który potrzebuje mipsów, są graficzne interfejsy użytkownika.

Aplikacje przemysłowe coraz częściej wykorzystują kolorowe wyświetlacze. Ponadto treści graficzne są bogatsze, animacje bardziej płynne, a sekwencje obrazów bardziej złożone. Dlatego inżynierowie stają przed nowym wyzwaniem, ponieważ muszą w tworzonych aplikacjach zapewnić większe możliwości techniczne przy tych samych rozmiarach płytek i ograniczeniach finansowych. Koszty BOM nie mogą gwałtownie wzrosnąć, a płytki PCB nie mogą nagle zmienić się w duże obwody wielowarstwowe. Nie ma zatem mowy o dodaniu mnóstwa pamięci lub innych układów peryferyjnych, poza te które są w strukturze mikrokontrolera. Stąd pojawiają się na rynku MCU, gdzie wszystko jest na jednym chipie, aby te rozterki nie tworzyły problemu wielowymiarowego.

Weźmy tradycyjny 2,2-calowy wyświetlacz o rozdzielczości 320×240 (QVGA). Jest to typowy ekran w wielu zastosowaniach przemysłowych. Zakładając głębię kolorów 24 bity na piksel, można oszacować wielkość bufora ramki obrazu na 1843200 bitów lub około 230 kB. Zasoby omawianych MCU pozwalają sterować takim wyświetlaczem bez potrzeby instalacji na PCB dodatkowej pamięci RAM. Dla jednostek o większej rozdzielczości można obniżyć głębię kolorów, np. do 8 bitów na piksel (256 barw), aby dalej zmieścić się z ramką obrazu w pamięci. Dzięki dużej wydajności grafika może bazować na lepszych animacjach i mieć płynniejsze przejścia treści.

Inne podejście zakłada użycie do zarządzania grafiki wydajnego MCU bez dużych zasobów RAM współpracującego z zewnętrznym chipem. W takim układzie można użyć np. STM32H730 z 128 KB Flash i o niskiej cenie. To jest też normalne podejście, gdy wyświetlacz ma przekątną większą niż 7 cali. W tym przypadku kod programu można zmieścić w wewnętrznej pamięci Flash, co jest korzystne dla zapewnienia wydajności lub bezpieczeństwa. A dane obrazu zapisywać w pamięci zewnętrznej. W tym przypadku pamięć wewnętrzną RAM można użyć do celów zarządzania kodem i aktualizacjami.

 
Rys. 1. Nowe układy na tle innych z rodziny STM32H7

Bezpieczeństwo

Funkcje bezpieczeństwa, w tym ulepszone akceleratory kryptograficzne, zaawansowana ochrona pamięci poza układem scalonym i bezpieczne udostępnianie kluczy to kluczowe funkcje umożliwiające spełnienie wymagań prawnych, w tym najnowszej normy bezpieczeństwa informatycznego dla urządzeń konsumenckich – EN303645. Są one częścią pakietu bezpieczeństwa STM32Trust, obejmującego m.in. obsługę deszyfrowania danych w locie (OTFDEC) i bezpiecznej instalacji firmware (SFI). OTFDEC umożliwia wykonanie zaszyfrowanego kodu z pamięci zewnętrznej. SFI z kolei pozwala na programowane wyłącznie za pomocą zaszyfrowanego kodu. Pozostałe funkcje zabezpieczeń obejmują obsługę bezpiecznego rozruchu, szyfrowanie symetryczne (przy użyciu hardware lub oprogramowania) i udostępnianie kluczy kryptograficznych. Dostępne jest również szyfrowanie asymetryczne (według biblioteki oprogramowania). Funkcje kryptograficzne zapewniają prawdziwy generator liczb losowych (true random), sprzętowy akcelerator szyfrowania AES-128, AES-192 i AES-256 oraz obsługę algorytmów GCM i CCM2, Triple DES i hashowania (MD5, SHA-1 i SHA-2).

 
Rys. 2. Zestawy projektowe STM32H735G-DK Discovery i STM32 Nucleo-144

Deszyfrowanie w locie

Bezpieczeństwo to kolejny krytyczny aspekt aplikacji przemysłowych i w tym zakresie dołączenie do mikrokontrolera pamięci zewnętrznej może skomplikować jego zapewnienie. Wbudowana pamięć jest znacznie mniej dostępna, gdyż nie może zostać odczytana zewnętrznym programatorem. Dlatego konieczne jest, aby dane te zostały dobrze zabezpieczone. Stąd STM32H733, STM32H735 i STM32H730 value line (te z rdzeniem kryptograficznym) obsługują deszyfrowanie w locie (OTFDec). Wcześniej STM32H7A i STM32H7B były jedynymi, które go oferowały. Dzięki tej nowej serii mikrokontrolerów inżynierowie mogą zapewnić większe bezpieczeństwo bez obniżania wydajności. Dodatkowo nowe urządzenia integrują dwa interfejsy OctoSPI do podłączenia zarówno zewnętrznej pamięci Flash, jak i zewnętrznej pamięci RAM.

Szybki ADC poprawia predykcję stanu maszyn

Efektywna automatyzacja fabryk i domów wymaga przetwarzania dużej ilości danych przez aplikacje. Jednym z popularniejszych zagadnień jest tutaj wykorzystanie czujników do monitorowania drgań, aby prognozować stan maszyn i wyprzedzać ich obsługę techniczną. W takich systemach, gdy danych z czujnika jest mało lub są one niedokładne, system komputerowy je analizujący nie może wyciągnąć właściwych wniosków. Dlatego, aby rozwiązać ten problem, STM32H723, STM32H733, STM32H725, STM32H735 i STM32H730 mają 12-bitowy przetwornik ADC. Jest on bardzo szybki, konwersja może wynosić do pięciu megapróbek na sekundę. Dzięki temu możliwe jest efektywne nadpróbkowanie lub wykonanie szybkich transformacji Fouriera. Jest też standardowy 16-bitowy przetwornik ADC, który może służyć do odczytu stanu czujników o dużej bezwładności, np. klimatycznych. Ponadto, dzięki możliwości pracy układów przy temperaturze otoczenia 125ºC (dzięki wbudowanemu zasilaczowi impulsowemu), duży poziom wydajności jest gwarantowany także w najtrudniejszych warunkach środowiskowych. Niezawodność jeszcze bardziej poprawiają mechanizmy korekcji kodów błędów zaimplementowane we wszystkich pamięciach Flash i RAM.

Nowe układy bazują na rdzeniu Arm Cortex-M7, pracującym z rekordową dużą częstotliwością zegara 550 MHz. Są to wersje jednordzeniowe, zapewniające dobry balans między wydajnością i ceną. Inne funkcje, które przydają się w projektach i zapewniają dużą funkcjonalność w różnych zastosowaniach, to:

  • pamięć podręczna I-cache i D-cache o wielkości 32 KB,
  • sprzężona pamięć RAM poleceń (ITCRAM) z ponownym mapowaniem do realizacji zerowego opóźnienia w krytycznych czasowo procedurach,
  • specjalistyczne bloki FMAC (do realizacji filtrowania) i Cordic (trygonometryczne) do przyspieszenia wybranych operacji matematycznych,
  • wsparcie dla algorytmów kryptograficznych,
  • zaawansowane peryferia analogowe, w tym dwa 16-bitowe przetworniki ADC i jeden 12-bitowy przetwornik ADC o małym poborze mocy,
  • Interfejsy obsługujące popularne przemysłowe standardy komunikacji, w tym trzy porty FD-CAN, Ethernet i równoległy synchroniczny interfejs slave (PSSI),
  • akcelerator Chrom-ART zapewniający doskonałą wydajność grafiki.

Narzędzia projektowe

Do tworzenia aplikacji fi rma ST proponuje środowisko programistyczne STM32. Można również użyć innych narzędzi, np. Arm, Keil i IAR Systems. Do prototypowania można wykorzystywać zestaw STM32H735G-DK Discovery, a do sprawdzania koncepcji nadaje się płytka NUCLEO-H723ZG Nucleo-144. Najnowsze mikrokontrolery STM32H7 są również obsługiwane w systemie STM32Cube, który obejmuje narzędzia, oprogramowanie wbudowane i oprogramowanie pośrednie, w tym biblioteki grafi czne, stosy komunikacyjne i przykłady kodu aplikacji, takie jak sterowanie silnikiem, sztuczna inteligencja i zaawansowane zabezpieczenia. Zaawansowane aplikacje klasy AI można tworzyć w oparciu o narzędzia takie jak STM32Cube.AI (X-CUBE-AI), które umożliwiają portowanie sieci neuronowych i wykorzystanie systemów wizyjnych z użyciem kamery z interfejsem równoległym.

Jako dodatkowe wsparcie ułatwiające tworzenie graficznych kolorowych interfejsów użytkownika, ST Microelectronics udostępnia bezpłatne oprogramowanie TouchGFX STM32Cube Expansion Package (X-CUBE-TOUCH-GFX) i narzędzie programistyczne Touch-GFX Designer.

Układy z nowej serii są wytwarzane w kilku różnych obudowach, a ich ceny zaczynają się od 2,83 dol. dla STM32H730VBT6 przy zamówieniach 10 000 sztuk.

 

ST Microelectronics
www.st.com