Moduły SoM nowej generacji Raspberry Pi Compute Module 4

Komputery Raspberry Pi znane są właściwie wszystkim pasjonatom elektroniki i komputerów. Większości jednak malina kojarzy się jedynie z płytką o wielkości karty kredytowej, na której znajduje się procesor, moduł komunikacji bezprzewodowej i wszystkie złącza. Tymczasem fundacja Raspberry Pi niemalże od początku platformy produkuje moduły z rodziny Compute Module. Są to moduły w wersji SoM (System-on-Module) zawierające kompletne systemy komputerowe oparte o najważniejsze elementy Raspberry Pi. Teraz fundacja Raspberry Pi wprowadziła do oferty kolejną generację SoMów – moduły Raspberry Pi Compute Module 4. Zawierają one komponenty znane z najnowszej wersji malinek i są dostępne w aż 32 wersjach, co pozwala na elastyczny dobór modułu do potrzeb aplikacji.

Pomimo, że minikomputery Raspberry Pi zaprojektowano z myślą o zastosowaniach edukacyjnych, to już od dawna z powodzeniem są stosowane także w aplikacjach profesjonalnych. Decyduje o tym ich stosunkowo niska cena, stabilność sprzętu, łatwość projektowania aplikacji oraz wsparcie użytkownika, zarówno od producentów, jak i od dużej społeczności skupionej wokół rozwiązania. Moduły SoM od Raspberry Pi są ukłonem właśnie w stronę projektantów profesjonalnych i umożliwiają większą elastyczność doboru produktu do potrzeb konkretnej aplikacji.

Wraz z premierą najnowszego modelu Raspberry Pi 4 B możliwości platformy znacząco wzrosły. Nowa generacja oferuje m.in. szybszy układ SoC, więcej pamięci RAM oraz wsparcie dla nowoczesnych interfejsów, takich jak Gigabit Ethernet, USB 3.0, a także Bluetooth 5.0. Urządzenia zyskały więc dużo nowych możliwości przydatnych zarówno hobbystom i studentom, jak i projektantom urządzeń.

Wyposażenie modułów Compute Module 4

Moduły Compute Module 4 zawierają układ Broadcom BCM2711, czyli ten sam co w Raspberry Pi 4 B. Zastosowano więc podobny manewr jak w przypadku poprzednich generacji SoMów, które miały takie same komponenty, co ich pełnowymiarowe odpowiedniki. Krótko przypomnę jego specyfikację procesora – jest to układ z czterema rdzeniami ARM Cortex-A72 o taktowaniu 1,5 GHz. Wbudowany silnik graficzny oferuje wsparcie dla kodeków H.265 i H 264, rozdzielczość do 4K przy 60 klatkach na sekundę, a także wsparcie dla dwóch ekranów. Procesor dysponuje również interfejsami PCIe, Ethernet, 2 x DSI, 2 x CSI, 2 x HDMI i wieloma innymi.

Nowością w modułach Compute Module 4 jest układ komunikacji bezprzewodowej Wi-Fi oraz Bluetooth. Do tej pory takie moduły nie były montowane na SoMach Raspberry Pi, nawet wtedy gdy były obecne w “dużych” odpowiednikach. W nowych produktach moduł bezprzewodowy również jest dokładnie taki sam jak w RPi 4. Oferuje więc obsługę Wi-Fi w pasmach 2,4 i 5 GHz, w standardach IEEE 802.11b/g/n/ac, a także Bluetooth 5.0 oraz BLE. Na modułach CM4 zamontowano antenę PCB oraz złącze U.FL do podłączenia anteny zewnętrznej. Antenę, z której aktualnie mamy zamiar korzystać można przełączać programowo.

Rys. 1. Compute Module 4 – na zdjęciu widoczny m.in. moduł Wi-Fi/Bluetooth oraz złącze U.FL

Kolejną nowością jest zamontowany na module układ interfejsowy Ethernet, który również nie był do tej pory obecny na SoMach. Zastosowano tutaj układ BCM54210, który oferuje więcej możliwości niż układ zastosowany na Raspberry Pi 4. Dotyczy to m.in. obsługi standardu IEEE 1588 służącego do precyzyjnej synchronizacji zegara w sieciowych systemach kontrolno-pomiarowych. Inaczej jest on nazywany protokołem czasu precyzyjnego (PTP – Precision Time Protocol). Standard ten jest często używany w przemysłowych sieciach Ethernet.

Format płytek

Dotychczas moduły były projektowane w formacie SO-DIMM. Ten format jest znany z pamięci RAM do laptopów i korzysta z tego samego złącza do komunikacji z płytką bazową. Zaletą takiego rozwiązania jest m.in. powszechna dostępność złączy SO-DIMM na rynku. Z tego rozwiązania powszechnie korzystają także inni producenci modułów SoM, tacy jak SoMLabs czy nawet Nvidia. Jednak tym razem moduły CM4 wyprodukowano w formie płytki o wymiarach 55 x 40 mm. Moduły nie mają złącza krawędziowego, a z płytką bazową można je połączyć za pomocą dwóch 100-pinowych złączy o gęstym rastrze. Na te złącza wyprowadzono wszystkie dostępne interfejsy, co pozwala wykorzystać je w projekcie. Zmiana formatu płytki została właśnie podyktowana chęcią zmieszczenia wszystkich interfejsów na złączach Board-to-board, szczególnie obu portów HDMI oraz PCI Express, a także zmniejszeniem wielkości złączy.

Rys. 2. Moduł CM4 od spodu – widoczne dwa złącza Board-to-Board.

Moduły CM4 potrzebują tylko jednego zewnętrznego zasilania 5V. Dotychczas SoMy Raspberry Pi wymagały kilku różnych napięć zasilania, które w dodatku powinny być włączane w określonej kolejności. Korzystanie z tylko jednego źródła zasilania pozwala znacząco uprościć projekt urządzenia.

Rys. 3. Rozłożenie elementów na Compute Module 4

Warianty Compute Module 4

Już od generacji CM3 fundacja Raspberry Pi umożliwiała zakup modułu Compute Module w kilku różnych wersjach. Różniły się one pojemnością pamięcią eMMC, a na rynku dostępne były także wersje Lite, bez zamontowanej pamięci. Tym razem producenci poszli jeszcze dalej i umożliwili zakup modułów również o wybranej pojemności pamięci RAM. SoMy są w sprzedaży z modułem komunikacji bezprzewodowej, a także bez niego.

Wszystkie moduły Compute Module 4 wyposażono w pamięć Flash LPDDR4-SDRAM. Do wyboru mamy jednak pojemność tej pamięci – 1 GB, 2 GB, 4 GB lub 8 GB, czyli znów podobnie jak w przypadku „dużego” Raspberry Pi 4. Jeśli chodzi o pamięć eMMC, twórcy zdecydowali się na takie samo rozwiązanie co w przypadku CM3+. Dostępne są więc pojemności 8 GB, 16 GB, 32 GB, a także wersja Lite z wymontowaną pamięcią. Można również wybrać moduł z zamontowanym układem komunikacji bezprzewodowej lub bez niego.

Rys. 4. Moduł CM4 w wersji bez modułu Wi-Fi/Bluetooth

Opis wyposażenia poszczegolnych modułów

Łatwo więc policzyć, że dostępnych jest aż 32 wersji Compute Module 4. Poniżej znajdziesz wyjaśnienie numeru wersji oraz jej wyposażenia.

Tabela 1. Warianty Raspberry Pi Compute Module

Oznaczenie modułu Komunikacja bezprzewodowa Pamięć RAM Pamięć eMMC
CM4001000 brak 1 GB Brak (wersja lite)
CM4001008 brak 1 GB 8 GB
CM4001016 brak 1 GB 16 GB
CM4001032 brak 1 GB 32 GB
CM4002000 brak 2 GB Brak (wersja lite)
CM4002008 brak 2 GB 8 GB
CM4002016 brak 2 GB 16 GB
CM4002032 brak 2 GB 32 GB
CM4004000 brak 4 GB Brak (wersja lite)
CM4004008 brak 4 GB 8 GB
CM4004016 brak 4 GB 16 GB
CM4004032 brak 4 GB 32 GB
CM4008000 brak 8 GB Brak (wersja lite)
CM4008008 brak 8 GB 8 GB
CM4008016 brak 8 GB 16 GB
CM4008032 brak 8 GB 32 GB
CM4101000 Wi-Fi + Bluetooth 1 GB Brak (wersja lite)
CM4101008 Wi-Fi + Bluetooth 1 GB 8 GB
CM4101016 Wi-Fi + Bluetooth 1 GB 16 GB
CM4101032 Wi-Fi + Bluetooth 1 GB 32 GB
CM4102000 Wi-Fi + Bluetooth 2 GB Brak (wersja lite)
CM4102008 Wi-Fi + Bluetooth 2 GB 8 GB
CM4102016 Wi-Fi + Bluetooth 2 GB 16 GB
CM4102032 Wi-Fi + Bluetooth 2 GB 32 GB
CM4104000 Wi-Fi + Bluetooth 4 GB Brak (wersja lite)
CM4104008 Wi-Fi + Bluetooth 4 GB 8 GB
CM4104016 Wi-Fi + Bluetooth 4 GB 16 GB
CM4104032 Wi-Fi + Bluetooth 4 GB 32 GB
CM4108000 Wi-Fi + Bluetooth 8 GB Brak (wersja lite)
CM4108008 Wi-Fi + Bluetooth 8 GB 8 GB
CM4108016 Wi-Fi + Bluetooth 8 GB 16 GB
CM4108032 Wi-Fi + Bluetooth 8 GB 32 GB

Wyjaśnienie nazewnictwa modułów

Znając nazwę SoMa można bardzo łatwo rozkodować jego wyposażenie. Poniższa tabela prezentuje wyjaśnienie kodu nazewnictwa CM4.

Tabela 2. Rozwinięcie nazwy kodowej modułów

Model Łączność bezprzewodowa Pamięć RAM Pamięć eMMC
CM4 1 = Tak 01 = 1 GB 000 = Lite (wersja bez pamięci)
02 = 2 GB 008 = 8 GB
0 = Nie 04 = 4 GB 016 = 16 GB
08 = 8 GB 032 = 32 GB

O autorze