STM32MP: przełomowa nowość w ofercie STMicroelectronics
Kilka dni temu opublikowaliśmy w ślad za działem prasowym STMicroelectronics newsa poświęconego nowej rodzinie układów STM32MP. Tym razem nie są to kolejne układy mikrokontrolerowe, a rasowe mikroprocesory aplikacyjne, wyposażone w rdzenie Cortex-A7. Fani mikrokontrolerów znajdą w STM32MP także coś dla siebie, wybrane modele doposażono także w pełnego (z FPU) Corteksa-M4.
Premiera układów STM32MP1 odbędzie na targach Embedded World 2019, ale dzięki uprzejmości producenta wiemy o nich z wyprzedzeniem nieco więcej. Najważniejsze szczegóły przedstawiamy w artykule.
STM32MP – co w środku?
Nowa rodzina składa się na pierwszym etapie wdrożenia ze stosunkowo niewielkiej liczby modeli mikroprocesorów STM32MP1. Zestawienie ich najważniejszego wyposażenia pokazano w tabeli 1. Charakteryzują się są one przemyślaną budową i bogatym wyposażeniem: do dyspozycji mamy warianty mikroprocesorów z 1 lub 2 CPU (Cortex-A7, taktowanie do 650 MHz) oraz opcjonalnym koprocesorem graficznym GPU (zgodny z OpenGL ES 2.0).
Tab. 1. Elementy wyposażenia mikroprocesorów STM32MP
Maksymalny rozmiar obrazu obrabianego przez GPU wynosi 1366×768 pikseli, przy czym użytkownik może zdefiniować 2 warstwy obrazu z indywidualnymi tablicami kolorów. Jednostka GPU jest taktowana z maksymalną częstotliwością do 533 MHz, co umożliwia generowanie obrazu z prędkością do 133 megapikseli na sekundę. Dołączenie wyświetlacza do STM32MP1 umożliwiają dwa interfejsy: równoległy RGB888 lub MIPI-DSI, który składa się z dwóch różnicowych linii danych i różnicowej linii taktującej.
Mikroprocesory STM32MP1 wyposażono w zintegrowane interfejsy zewnętrznych pamięci DRAM (typów: DDR3, DDR3L, LPDDR2, LPDDR3) o organizacji magistrali danych: 16 lub 32 bity i maksymalnej pojemności 8 Gb. Maksymalna częstotliwość taktowania magistrali danych wynosi w prezentowanych układach 533 MHz. Dzięki wbudowanym interfejsom sprzętowym mikroprocesor może także bezpośrednio korzystać z pamięci stałych Flash eMMC, NAND Flash (serial lub parallel), NOR Flash (serial), łatwa w sprzętowej realizacji jest także obsługa kart SD (interfejs v3.01).
Rys. 1. Schemat blokowy układu STM32MP157
Interesującym wyposażeniem prezentowanych układów jest wbudowany w niektóre modele interfejs Ethernet 1 Gb/s, a także 3 kanały USB, z których dwa mają zintegrowane analogowe interfejsy warstwy fizycznej w standardzie High Speed. Schemat blokowy najbardziej rozbudowanego układu z rodziny STM32MP1 pokazano na rysunku 1.
STM32MP – nie tylko Linux
Wszystkie aktualnie dostępne modele mikroprocesorów STM32MP1 wyposażono w dodatkowy rdzeń Cortex-M4 (taktowany do 200 MHz), który stanowi systemową domenę czasu rzeczywistego (rysunek 2). Ma on do swojej dyspozycji łącznie 448 kB pamięci RAM oraz wybrane peryferia, dzięki którym może realizować w systemie wszystkie typowe zadania „mikrokontrolerowe”, sterując na przykład mechanizmem drukarki termicznej, obsługując sensory lub realizując inne zadania, wygodne w implementacji real-time’owej.
Rys. 2. Budowa przykładowego systemu z mikroprocesorem STM32MP1
STM32MP – wygodne zasilanie
Dbając o wygodę projektantów sprzętu bazującego na STM32MP1 firma STMicroelectronics opracowała wyspecjalizowany układ zasilający PMIC (oznaczony symbolem STPMIC1). Zintegrowano w nim:
- 6-kanałowy stabilizator LDO,
- 3-kanałową przetwornicę DC/DC oraz
- konwerter DC/DC z kluczami prądowymi do zasilania urządzeń USB.
Układ STPMIC1 zapewnia właściwe wartości napięć zasilających w całym systemie bazującym na STM32MP1 w zakresie napięć wejściowych 2,8…5,5VDC (rysunek 3).
Rys. 3. Schemat blokowy układu STPMIC1
Prezentowane układy są dostępne w czterech wersjach obudów BGA:
- o liczbie wyprowadzeń od 257 do 448 i
- rastrach rozmieszczenia kulek 0,5 lub 0,8 mm.
W zależności od wersji obudowy konieczne jest użycie PCB o liczbie warstw co najmniej 4 lub 6. W skrajnym przypadku mogą się okazać niezbędne także przelotki zagrzebane.
STM32MP – system operacyjny
Układy STM32MP1 są predestynowane do pracy z systemami operacyjnymi, szczególnie z Linuksem. Producent doskonale zdawał sobie z tego sprawę, więc równolegle z układami wprowadził na rynek:
- linuksową infrastrukturę (w postaci STLinuksa) oraz
- narzędzia pomocnicze (STM32CubeMX),
które ułatwią stosowanie STM32MP1 w praktyce (szczegóły są dostępne pod adresem https://wiki.st.com/stm32mpu/index.php/Main_Page) – rysunek 4.
Rys. 4. Infrastruktura narzędziowa rodziny STM32MP1
STM32MP – hardware na początek
Szybki start z STM32MP1 ułatwią zainteresowanym użytkownikom także zestawy sprzętowe:
- zaawansowane z LCD, ewaluacyjne: STM32MP157A-EV1 oraz STM32MP157C-EV1,
- relatywnie tanie startowe, z rodziny Discovery (fotografia 5): STM32MP157A-DK1 oraz STM32MP157C-DK1.
Fot. 5. Wygląd zestawu Discovery z mikroprocesorem STM32MP157
Producent deklaruje dostępność zestawów sprzętowych od kwietnia 2019. Wybrane wersje zestawów Discovery będą oferowane także z wyświetlaczem TFT wyposażonym w interfejs MIPI-DSI.
Prezentowane w artykule mikroprocesory doskonale nadają się do stosowania w aplikacjach przemysłowych. Dzieje się tak m.in. ze względu na wyposażenie, parametry elektryczne i termiczne oraz gwarantowany długi czas dostępności. Oferowany przez STM32MP1 potencjał uniwersalności projektanci urządzeń mogą efektywnie wykorzystać dzięki platformom sprzętowym produkowanym przez firmy współpracujące z STMicroelectronics. Jedną z takich firm jest polski producent komputerów embedded – firma SoMLabs – która przygotowuje produkcję miniaturowego komputera z mikroprocesorem STM32MP157 (fotografia 6).
Fot. 6. Wygląd miniaturowego komputera z rodziny VisionSOM z mikroprocesorem STM32MP157 firmy SoMLabs
Wprowadzenie przez STMicroelectronics do oferty produkcyjnej mikroprocesorów aplikacyjnych jest niewątpliwie dużym krokiem w przyszłość. Dzięki temu układy znakowane „STM32” mają dużą szanse być domyślną sprzętową platformą także w linuksowej przyszłości…