Każdy bardziej zaawansowany system elektroniczny wymaga wydajnego procesora (CPU), szybkiej i pojemnej pamięci operacyjnej (RAM), nieulotnej pamięci danych (NVM) oraz odpowiednich interfejsów przewodowych i bezprzewodowych. Zastąpienie tych elementów kompaktowym, przetestowanym modułem diametralnie przyspiesza prace projektowe i uruchomieniowe. Jednak różnorodność zastosowań wymusza przynajmniej kilka typów rozwiązań. Dlatego obecnie wyróżniamy kilka kategorii produktów tego typu.
SoC, SiP, MCM i PoP
Pierwsza grupa to komponenty, które są dostępne jako pojedyncze układy scalone. Ich parametry i funkcje mogą się bardzo różnić, a budowa wewnętrzna jest realizowana na kilka sposobów. Poniżej zostały opisane najczęściej stosowane technologie.
SoC (System on Chip)
Moduł SoC integruje wszystkie komponenty niezbędne do działania systemu w postaci układu scalonego, czyli na pojedynczym kawałku krzemu. Układy scalone typu System on Chip mają wiele zalet – są wydajne, kompaktowe i ekonomiczne w produkcji. Znajdują zastosowanie w systemach zorientowanych na małe wymiary i niskie zużycie energii, takich jak urządzenia IoT, smartfony czy systemy wbudowane.
Standardowy SoC może zawierać procesor CPU, akcelerator graficzny GPU (Graphics Processing Unit), akcelerator AI/NPU (Neural Processing Unit), pamięci RAM i/lub ROM, interfejsy zewnętrzne USB/HDMI/Ethernet, interfejs bezprzewodowy Wi-Fi/Bluetooth/5G oraz inne komponenty, takie jak przetworniki analogowo-cyfrowe czy układy zasilania. Pomimo kompaktowych rozmiarów, układy scalone SoC są niezwykle wydajne i często przewyższają parametrami systemy zbudowane z kilku oddzielnych układów. Z drugiej strony są kosztowne w projektowaniu i produkcji oraz mogą być trudne w implementacji, ponieważ:
- wymagają skomplikowanych płytek PCB dla doprowadzenia wielu sygnałów do jednego niewielkiego układu scalonego,
- mogą wymagać bardzo wydajnego i precyzyjnego układu zasilania,
- mogą generować duże ilości ciepła,
- brak możliwości modyfikowania zasobów sprzętowych sprawia, że zmiana lub dodanie nawet jednego bloku wymaga wyprodukowania nowego układu scalonego.
Popularnym układem SoC jest ESP32 od Espressif. W rozbudowanej wersji zawiera dwurdzeniowy procesor Xtensa, pamięci RAM/ROM/Flash, blok komunikacji radiowej Wi-Fi/Bluetooth, akcelerator kryptograficzny, rdzeń ULP oraz cały szereg interfejsów I/O (rysunek 1). Niski koszt tego układu oraz łatwość implementacji, dzięki bogatym zbiorom przykładów, bibliotek i tutoriali sprawiły, że jest on jednym z najczęściej stosowanych układów w aplikacjach IoT.
W kontekście układów SoC należy wyjaśnić również pojęcie ASIC (Application Specific Integrated Circuit). Układy scalone tej klasy są zaprojektowane specjalnie do jednego, konkretnego zastosowania, które wykonują bardzo wydajnie. Elementem układu SoC często jest struktura ASIC realizująca np. funkcje akceleratora AI/NPU czy kalkulatora sum kontrolnych SHA.
SiP (System in Package)
Moduł SiP łączy różnorodne komponenty – procesory, pamięci, moduły RF, moduły zarządzania energią, czujniki i dyskretne elementy pasywne – w jedną, kompaktową jednostkę (rysunek 2). Poszczególne bloki mogą być wykonane w różnych technologiach i rozmieszczone zarówno w płaszczyźnie 2D, jak i jako struktura 3D (tzw. 3D stacking) – wtedy uzyskuje się większą gęstość upakowania. Połączenia wykonywane są różnymi technikami, m.in. wire bonding, flip-chip albo za pomocą ich kombinacji.
Interesującym układem SiP jest procesor Apple M1, który zawiera zaawansowany i super wydajny układ SoC (8-rdzeniowy CPU, 8-rdzeniowy GPU, 16-rdzeniowy silnik neuronowy i kontroler interfejsu Thunderbolt) połączony z pamięciami LPDDR4X SDRAM o pojemności 8/16 GB (fotografia 1). Układ ten jest jednostką centralną niektórych komputerów MacBook.
W porównaniu do układów SoC, SiP wyróżniają się dużą elastycznością oraz krótkim cyklem projektowania i relatywnie niskim kosztem rozwoju. Produkcja gigantycznych, monolitycznych struktur półprzewodnikowych typu SoC w technologii 2…3 nm jest niesamowicie skomplikowana i obarczona dużym ryzykiem błędów. Łatwiej jest zbudować kilka mniejszych bloków i połączyć je w jednej obudowie. Dodatkowo SiP pozwala na integrację nowoczesnych układów mieszanych – cyfrowych i analogowych – w ich optymalnie skonfigurowanych, starszych strukturach. Możliwe jest również łączenie różnych materiałów półprzewodnikowych – Si, GaAs, GaN lub integracja układów MEMS, elementów optycznych i różnych czujników. Natomiast układy SiP ustępują SoC pod względem energooszczędności i w niewielkim stopniu także pod względem wydajności.
MCM (Multi-Chip Module)
Technologią podobną do SiP jest MCM. W tym przypadku mamy do czynienia z układem, który składa się z kilku oddzielnych struktur scalonych (tzw. chipletów – rysunek 3).
Chiplety są projektowane jako komponenty większego układu scalonego lub układy SoC i mogą być dowolnie dobierane. Podział na mniejsze, niezależne jednostki przekłada się na większą elastyczność, wydajność i skalowalność. Chiplety są połączone za pomocą interposera – krzemowego bloku połączeń, który odgrywa kluczową rolę w utrzymaniu wysokiej integralności sygnałów i zmniejszeniu opóźnień. Ta struktura zwiększa wydajność i energooszczędność systemów bazujących na chipletach oraz umożliwia efektywne współdzielenie zasobów. Technologia MCM utorowała drogę dla SiP, a w ostatnim czasie przeżywa swój renesans w najpotężniejszych procesorach. Na fotografii 2 został pokazany procesor AMD EPYC Bergamo, wykonany z użyciem technologii chipletów i oferujący aż 128 rdzeni.
PoP (Package-on-Package)
Istnieje jeszcze jedna technologia ściśle związana z SoC i SiP. Package-on-Package to sprytne rozwiązanie konstrukcyjne, które pozwala zaoszczędzić miejsce poprzez układanie jednego gotowego układu scalonego na drugim. W branży smartfonów i nowoczesnych SBC jest to najczęstszy sposób łączenia procesora SoC z pamięcią RAM (rysunek 4) i pozwala na wyższe taktowanie pamięci.
Zasadniczą wadą tego rozwiązania jest utrudnione odprowadzanie ciepła. Grzejący się układ SoC jest osłonięty układem pamięci, co skutecznie pogarsza efektywność jego chłodzenia. Niektóre procesory do Raspberry Pi korzystały właśnie z technologii PoP – fotografia 3.
Producenci SoC/SiP
Najwięksi producenci SoC/SiP koncentrują się na produkcji układów do smartfonów, komputerów przenośnych i zaawansowanej elektroniki motoryzacyjnej. Do takich zastosowań wymagana jest przede wszystkim wysoka wydajność oraz integracja akceleratorów graficznych i jednostek AI/NPU. Liderami w branży są:
- Apple – układy z serii M i A. Apple jest pionierem w branży SoC i zrewolucjonizował rynek laptopów oferując układy, które osiągają wydajność komputerów desktopowych, zużywając zarazem wielokrotnie mniej energii. Niedawno Apple zaprezentowało nową generację układów – M5 Pro i M5 Max, które po raz pierwszy bazują na technologii o nazwie Fusion Architecture, pozwalającej na połączenie dwóch oddzielnych matryc (dies) w jeden wspólny system SoC przy użyciu zaawansowanych technologii produkcyjnych. Dzięki temu układy te oferują do 18 rdzeni CPU (w tym nowe super rdzenie) i do 40 rdzeni GPU, zachowując zunifikowaną architekturę pamięci o przepustowości do 614 GB/s.
- Qualcomm – układy Snapdragon napędzają większość urządzeń z systemem Android. Są wyposażone w wielordzeniowe CPU oraz zaawansowany silnik AI typu Hexagon o wydajności nawet do 100 TOPS (bilion operacji na sekundę) – patrz fotografia 4. Natomiast w tym roku zaprezentowano układy Snapdragon X2 Elite/Plus przeznaczone do komputerów przenośnych z systemem Windows, które dorównują tradycyjnym procesorom x86 lub je przewyższają.
- NVIDIA – układy Tegra/Drive/Thor. Marka jest kojarzona przede wszystkim z procesorami do kart graficznych, jednak produkuje również najbardziej zaawansowane SoC dla robotyki i autonomicznych samochodów. Najnowsze układy z serii Thor oferują potężną moc obliczeniową do 2000 TFLOPS i są przeznaczone do pojazdów, gdzie będą realizowały zarówno funkcje jazdy autonomicznej, jak i cały system Infotainment (fotografia 5).
- MediaTek – układy Dimensity to SoC zoptymalizowane do flagowych smartfonów. Producent przyjął architekturę All Big Core (brak małych rdzeni o niskiej wydajności), ponadto integruje w swoich układach jednostki wspomagające generowanie obrazów AI, autorskie akceleratory NPU oraz modemy 5G.
- Intel – układy SoC z serii Core Ultra. Intel dokonał ogromnej transformacji, przechodząc z klasycznych procesorów na układy typu SoC. Opracował technologię Tile-Based Design (odpowiednik MCM), w której różne bloki układu mają swoje osobne struktury krzemowe – tzw. kafelki (Tiles). Kafelki są ułożone obok siebie na wspólnej krzemowej tafli (Base Tile), realizującej matrycę połączeń (rysunek 5). Układy Core Ultra, oprócz rdzeni CPU i GPU, zawierają silnik NPU, tory radiowe obsługujące łączność Wi-Fi 6 i 7 oraz kontrolery nowoczesnych interfejsów PCI-Express 5.0, Thunderbolt 4 i USB4.
Przemysłowe SoC/SiP
Liderzy rynku przemysłowego projektują układy do zastosowań w komputerach SoM i SBC, czy też urządzeniach IoT, gdzie ważniejsze od wydajności są: niezawodność układów, odporność na temperaturę i zakłócenia, bezpieczeństwo danych oraz długi cykl życia produktu. Oto najważniejsi producenci rozwiązań z tej klasy.
NXP Semiconductors
Charakterystyka rodziny układów i.MX od NXP to droga ewolucji od klasycznych mikrokontrolerów do potężnych procesorów aplikacyjnych z akceleracją AI. Oto główne grupy układów.
- i.MX RT – nie są typowymi procesorami SoC, lecz mikrokontrolerami typu Crossover, czyli nowoczesnymi układami łączącymi cechy tradycyjnych MCU (prostota obsługi, niski pobór energii, krótki czas reakcji, łatwość programowania, niski koszt) z wysoką wydajnością procesorów aplikacyjnych MPU (taktowanie rzędu 600 MHz…1 GHz, rdzeń Cortex-M7). Aby uzyskać taką specyfikę układu, zamiast zintegrowanej pamięci Flash, która ogranicza prędkość działania, zastosowano interfejsy zewnętrznej pamięci Flash oraz ogromną ilość (kilka MB) zintegrowanej, szybkiej pamięci RAM (SRAM).
Układy RT są przeznaczone do aplikacji Real-time audio, do prostych interfejsów graficznych, do układów sterowania silnikami itp. Są oferowane w 4 wersjach:- jedno-rdzeniowe MCU – RT101x…RT106x (Cortex-M7);
- klasyczne MCU 2-rdzeniowe – RT116x…RT118x (Cortex-M7, Cortex-M33);
- nowoczesne MCU z ogromną ilością pamięci RAM (5 MB) oraz dodatkowym zaawansowanym, konfigurowalnym rdzeniem Cadence Tensilica – RT500, RT600 (Cortex-M33, Cadence Tensilica);
- podwójny zestaw MCU + Cadence Tensilica oraz 7,5 MB pamięci RAM i silnik AI/ML eIQ Neutron NPU – RT700 (Cortex-M33 + Cadence Tensilica Hi-Fi 4; Cortex-M33 + Cadence Tensilica Hi-Fi 1).
- i.MX 6 – podstawowe procesory aplikacyjne, które zbudowały potęgę NXP w branży przemysłowej. Dostępne z wersjach z 1, 2 lub 4 rdzeniami Cortex-A7/Cortex-A9, akceleratorem grafiki 2D/3D (Vivante GPU), pojedynczym lub podwójnym interfejsem Ethernet 1 Gb, interfejsem PCIe oraz w wersji dla branży automotive. Są przystosowane do warunków przemysłowych i odpowiednie do pracy w reżimie 24/7. Modele o mniejszej wydajności, obniżonym poborze energii i niskiej cenie to m.in.: 6ULZ, 6ULL, 6UltraLite, 6SLL, 6Solo, 6SoloLite. Modele o większej wydajności z rdzeniami dual-core i quad-core to: 6SoloX, 6DualLite, 6Dual, 6DualPlus, 6Quad, 6QuadPlus.
- i.MX 7 – charakteryzują się heterogeniczną architekturą, łączącą wydajny rdzeń Cortex-A7, na którym może działać system Linux, z energooszczędnym rdzeniem Cortex-M4 do mniej wymagających zadań. Dodatkowo układy i.MX 7 są wyposażone w zaawansowane moduły bezpieczeństwa oraz w interfejs wyświetlacza MIPI/równoległy/EPD, dlatego doskonale nadają się do urządzeń przenośnych, zasilanych bateryjnie i zapewniających bezpieczeństwo w świecie IoT. Model przeznaczony do aplikacji ultra low power to 7ULP, model zrównoważony to 7Solo, natomiast model o wysokiej wydajności to 7Dual.
- i.MX 8 – oferują ogromny skok wydajnościowy dzięki przejściu na architekturę 64-bitową i wielordzeniową, zawierającą jednostki Cortex-A72/A53/A35, Cortex-M4F/M33/M7, DSP/NPU/GPU, w różnych konfiguracjach. Oferują wirtualizację sprzętową, czyli możliwość uruchomienia dwóch systemów (np. Android i RTOS) na jednym procesorze, w całkowitej izolacji pomiędzy obydwoma systemami. Ponadto obsługują wyświetlacze do 4K, kamery oraz kodeki obrazu i dźwięku. Przeznaczone są do zaawansowanych zastosowań graficznych, wizji maszynowej, sterowania głosowego, analizy wideo i systemów nadzorowania bezpieczeństwa. Modele o mniejszej wydajności to 8XLite, 8X, 8ULP, modele o dużej wydajności to 8M Plus, 8M Nano, 8M Mini, 8M, zaś najbardziej wydajny przedstawiciel tej rodziny to i.MX 8 (2×A72 + 4×A53 + 2×M4F + DSP + 2×GPU).
- i.MX 9 – najnowsza generacja układów i.MX przeznaczona do aplikacji Edge AI i Edge Lock. Wprowadzono nowoczesne jednostki przetwarzania neuronowego NPU typu Ethos-U, dzięki czemu takie funkcje, jak rozpoznawanie głosu czy gestów odbywa się lokalnie przy minimalnym zużyciu energii. Wewnątrz układu znajduje się wydzielona, sprzętowa twierdza (Secure Enclave), która zarządza funkcjami bezpieczeństwa i kryptograficznymi. Ponadto zastosowano technologię Energy Flex odpowiadającą za precyzyjne zarządzanie energią – kontroler może wyłączyć niemal wszystkie bloki i pozostawić aktywny tylko jeden sensor. Najbardziej podstawowy model to 91, wyposażony w jeden rdzeń Cortex-A55. Modele 93, 94, 95 i 952 to wydajne, wielordzeniowe układy z interfejsami wyświetlaczy, kamer i PCIe (rysunek 6).