Po dokładnie 10 latach od wprowadzenia architektury ARMv8, skądinąd używanej po dziś dzień, nadszedł czas na kolejny duży krok naprzód. Słowem, poznajcie ARMv9.
Model programowy ARMv9 jest w pełni kompatybilny z poprzednikiem i, jak ujawniono, stanowi bezpośrednie rozwinięcie pomysłów wprowadzonych już przy okazji połówkowej mutacji ARMv8.5. Nie jest to tym samym tak duży update jak wówczas, gdy przechodząc z ARMv7 na v8, rozszerzono wirtualną przestrzeń adresową do 64 bitów, ale producent i tak obiecuje odczuwalne zmiany. Głównie w zakresie uczenia maszynowego i procesorów sygnałowych, ale też bezpieczeństwa.
Z technicznego punktu widzenia, największe nowości są dwie. Po pierwsze, ARMv9 czyni obligatoryjnym rozszerzenie Scalable Vector Extension 2 (SVE2), które stanowi punkt wyjścia dla nowego zestawu funkcji wektorowych. Po drugie, cechuje się istotnie odświeżonym podejściem do bezpieczeństwa przepływu danych. Ale do rzeczy.
SVE2 ma przydać się właśnie we wspomnianych już implementacjach ML czy DSP. Pozwala operować na wektorach o dynamicznie definiowanej długości od 128 do 2048 bitów, w przestrzeniach z określonym iloczynem skalarnym. W pewnym uproszczeniu: dzięki temu pojawia się możliwość wprowadzenia do przestrzeni liniowej klasycznej geometrii. Zatem, efektywnie jest to kolejna implementacja architektury masowo równoległej, SIMD. Ma jednak koegzystować z dotychczasowymi rozwiązaniami w tym zakresie, a nie je zastąpić.
Arm Confidential Compute Architecture
Przechodząc do bezpieczeństwa, na piedestał wchodzi tzw. Arm Confidential Compute Architecture (Arm CCA). Nazwa tej techniki może i brzmi generycznie, ale wizja jej akompaniująca przedstawia się naprawdę ciekawie. Otóż producent wychodzi od tezy, że błędnym jest pogląd, iż oprogramowanie uprzywilejowane jak system operacyjny czy hipernadzorca musi bezwzględnie mieć dostęp do prywatnych danych innych procesów.
Dlatego procesor ARMv9 dynamicznie tworzyć będzie bezpieczne enklawy, zwane tutaj królestwami, by izolować procesy aplikacji nie tylko od siebie nawzajem, ale także od procesów hosta, a nawet oprogramowania układowego urządzenia. W tym celu otrzyma dodatkową, wewnętrzną przestrzeń adresową, do której bezpośredniego dostępu nie uzyska nic poza CPU.
Co więcej, każdy chip ARMv9 ma również wykorzystywać technikę Memory Tagging Extension (MTE), sprawdzając na bieżąco wywołania adresów w pamięci. To rodzaj mitygacji zastosowanej przeciwko atakom kanału bocznego klasy Spectre w architekturze ARMv8.5, jednak tam jest to rozwiązanie opcjonalne. Zresztą, podobnie jak Branch Target Indicators (BTI), przez co należy rozumieć wskaźniki zapobiegające manipulacji mechanizmem przewidywania rozgałęzień.
Oczywiście, jak to w przypadku architektur ARM-owych bywa, obiecano trzy subwarianty v9: zastosowania ogólnego (A), real-time (R) oraz mikrokontrolerowy (M). Wiemy także, że wzorem prekursora nowa ISA otrzymywać będzie aktualizacje przyrostowe. Większą tajemnicą są niestety same chipy, bo żadna konkretna zapowiedź produktowa nie padła. Prócz tego, że spółka daje sobie dwa-trzy lata na popularyzację techniki CCA.
Zgłoś naruszenie/Błąd
Oryginalne źródło ZOBACZ
Dodaj kanał RSS
Musisz być zalogowanym aby zaproponować nowy kanal RSS