Platforma serwerowa RISC-V wymaga czegoś więcej niż zgodnych rdzeni procesora: RISC-V International opisuje wymagania dla całego układu SoC, w tym timerów, przerwań, dostępu urządzeń do pamięci, PCIe i bezpieczeństwa. Dokument Server SoC Requirements v1.0 rozróżnia obowiązkowe postanowienia oznaczone MUST, zalecenia SHOULD oraz wymagania uruchamiane warunkowo.
Co obejmuje specyfikacja
Wymagania dotyczą funkcji systemowych widocznych dla oprogramowania i sprzętu otaczającego procesor. MUST oznacza obowiązek, SHOULD jest zaleceniem, a część obowiązków zależy od tego, czy projekt wdraża określony interfejs lub funkcję. Te kategorie mają znaczenie przy ocenie projektu: zalecenia nie są tym samym co wymogi, a warunki trzeba odnosić do konkretnych rozwiązań w SoC.
| Obszar | Zakres postanowień | Moc postanowień |
| Timery i przerwania | Zachowanie rejestru czasu, AIA, MSI i minima IMSIC | MUST; niektóre wymagania zależą od użytych urządzeń |
| IOMMU i PCIe | Kontrola dostępu DMA, zachowanie komponentów PCIe i obsługa błędów | MUST z wymienionymi wyjątkami i warunkami |
| RAS, QoS i monitorowanie | Obsługa błędów, ograniczanie zakłóceń między obciążeniami i liczniki | Głównie SHOULD oraz wymagania warunkowe |
| Zarządzanie | Protokoły i połączenia dla BMC oraz funkcje serwisowe | Zalecenia i wymagania zależne od wdrożonych interfejsów |
| Bezpieczeństwo | Główny sprzętowy mechanizm zaufania oraz dodatkowe zabezpieczenia | MUST dla głównego root of trust; pozostałe wskazane możliwości są zalecane |
RISC-V International publikuje pełne brzmienie wymagań w Server SoC Requirements v1.0. Wcześniej opisywaliśmy szczyt RISC-V China 2026 w Shenzhen; poniżej skupiamy się na technicznych wymaganiach dla platformy.
Timery i przerwania dla systemów operacyjnych
Rejestr CSR time musi podawać czas w jednostkach 1 ns i aktualizować się ze stałą częstotliwością co najmniej 100 MHz. Ma być stale włączony i zachowywać wartość podczas stanów niskiego poboru mocy hartów, z wyjątkami dla systemowych stanów zasilania G3, S3 i S4.
Specyfikacja wymaga obsługi RISC-V Advanced Interrupt Architecture (AIA), a przerwania zewnętrzne muszą być dostarczane jako przerwania MSI, czyli komunikaty zapisujące sygnał przerwania. IMSIC musi zapewniać na każdy hart co najmniej jeden plik S-mode i pięć plików VS-mode. Każdy plik S-mode ma obsługiwać co najmniej 255 identyfikatorów przerwań, a każdy plik VS-mode co najmniej 63.
Jeśli SoC obsługuje urządzenia zgłaszające przerwania przewodowo, obowiązuje dodatkowy warunek: APLIC ma zamieniać takie sygnały na MSI zgodnie z postanowieniami dotyczącymi tej funkcji.
IOMMU i PCIe kontrolują dostęp urządzeń
Urządzenia zdolne do DMA oraz dostępne programowo porty root PCIe muszą podlegać kontroli IOMMU. Wymóg ma określone wyjątki, między innymi dla kontrolerów przerwań, samych IOMMU, niektórych bloków modułu debugowania oraz kontrolerów zarządzających korzystających z zasobów zarezerwowanych dla nich. Specyfikacja nie ustala wymaganej liczby IOMMU.
Właściwe komponenty PCIe root complex muszą stosować mające zastosowanie, widoczne dla oprogramowania reguły PCIe Specification 6.0. Porty root muszą obsługiwać MSI, AER, DPC oraz kontrolki RP PIO. Przerwania PCIe sygnalizowane metodą INTx virtual wire nie mogą być obsługiwane.
Niezawodność, izolacja obciążeń i zarządzanie
Specyfikacja nie narzuca jednego poziomu RAS, czyli niezawodności, dostępności i serwisowalności. Zaleca obsługę danych oznaczonych jako uszkodzone oraz interfejs RISC-V Error Record Register Interface (RERI). Wdrożenie RERI uruchamia także dodatkowe wymagania. Dokument zaleca ponadto wykrywanie i korekcję błędów w istotnych pamięciach i pamięciach podręcznych, korekcję ECC pojedynczego symbolu w kontrolerach DRAM oraz okresowe czyszczenie pamięci z błędów.
Mechanizmy QoS powinny ograniczać nieuzasadnione zakłócenia między obciążeniami współdzielącymi pamięć i pamięci podręczne. Zalecane są między innymi CBQRI oraz mechanizmy kontroli pojemności cache i przepustowości pamięci. Jeśli projekt obsługuje CBQRI, dotyczą go także dodatkowe postanowienia warunkowe.
W zakresie zarządzania specyfikacja zaleca obsługę Redfish, PLDM, MCTP i rozwiązań związanych z SPDM. Zalecane połączenie z BMC wykorzystuje jedną linię PCIe x1, najlepiej Gen 5 i co najmniej Gen 3; dokument wymienia również IPMI SSIF przez I2C oraz konsolę debugowania UART. Liczniki HPM dla istotnych pamięci podręcznych, kontrolerów pamięci i portów PCIe, a także pomiar średniego opóźnienia żądań pamięci, również należą do zaleceń. W systemach NUMA zalecane jest filtrowanie pomiarów według dostępu lokalnego i zdalnego.
Wymagane i zalecane zabezpieczenia
Głównym root of trust układu SoC musi być sprzętowy root of trust. Specyfikacja osobno zaleca PCIe IDE, szyfrowanie zewnętrznej pamięci DRAM z użyciem tymczasowego klucza o długości co najmniej 256 bitów oraz interfejs do TPM zgodnego ze standardem TPM 2.0.