Spis treści:
W dzisiejszym dynamicznym i nieustannie rozwijającym się świecie technologii, kluczową rolę odgrywa architektura procesorów. To ona stanowi fundament każdego elektronicznego urządzenia, umożliwiając nam korzystanie z zaawansowanych aplikacji, wykonywanie skomplikowanych obliczeń i interakcję z cyfrowym otoczeniem. Od wielu lat rynek procesorów zdominowany jest przez technologiczne potęgi, czyli x86 i ARM. Architektury te dzięki swoim unikalnym cechom stały się fundamentem dzisiejszego rynku, dzięki czemu procesory wyposażone w tego typu rdzenie znajdziemy w większości współczesnych urządzeń. Mimo tego temat architektury podejmowany jest z większym lub mniejszym sukcesem przez innych producentów, którzy próbują zainteresować projektantów elektronicznych urządzeń własnym opracowaniem tego tematu.
Przykładem koncepcji, której udało się przebić na rynek konsumencki, jest RISC-V. Architektura ta zwraca uwagę przede wszystkim swoją otwartością i elastycznością. Rosnący wpływ RISC-V stanowi nie tylko potencjalne wyzwanie dla dominujących graczy na rynku, ale także staje się symbolem dążenia do demokratyzacji i otwartości technologii. W tym artykule przyjrzymy się bliżej architekturze RISC-V: jej genezie, unikalnym cechom i korzyściom, które przyciągają uwagę firm, badaczy i technologicznych entuzjastów z całego świata.
Dwuwładza w królestwie architektur
Na przestrzeni wielu lat rynek architektury procesorów zdominowany został przez dwie potężne siły: ARM i x86. Architektura ARM, oparta na zestawie instrukcji RISC (Reduced Instruction Set Computer), wyrosła na lidera w dziedzinie urządzeń przenośnych i systemów wbudowanych. Jej niewielkie zużycie energii i efektywność sprawiły, że znalazła zastosowanie w smartfonach, tabletach, a także ciągle rosnącej liczbie urządzeń IoT. Z drugiej strony, architektura x86, korzystająca ze złożonych instrukcji CISC (Complex Instruction Set Computer), zapewniła dominację w dziedzinie komputerów osobistych i serwerów. Jej moc obliczeniowa i zdolność do obsługi zróżnicowanych zadań przyczyniły się do powszechnego uznania w środowisku wymagającym wydajności.
Układy oparte na rdzeniach ARM wyznaczyły standardy efektywności energetycznej, co uczyniło je idealnym wyborem dla przenośnych urządzeń, gdzie kluczowy jest długi czasy pracy na baterii. Wieloletni rozwój i liczne iteracje pozwoliły firmie Arm stworzyć wyjątkowy ekosystem, który wspiera zarówno niewielkie mikrokontrolery, jak i wysoce wydajne procesory dla superkomputerów. Z drugiej strony, architektura x86 zdobyła popularność jako wybór dla komputerów osobistych i serwerów, oferując bogactwo funkcji i możliwości rozszerzania. Jej złożona struktura umożliwia wydajne wykonywanie zróżnicowanych zadań, jednak może to prowadzić do większego zużycia energii.
Obie architektury nie są pozbawione wad. ARM, mimo że dominuje w dziedzinie przenośnych urządzeń, może napotykać ograniczenia w obszarze wydajności, zwłaszcza w zastosowaniach wymagających intensywnych obliczeń. Z kolei x86, choć jest wszechstronna i wydajna, może być zbyt skomplikowana dla niektórych zastosowań, generując problem w postaci złożoności procesu projektowania i późniejszych kosztów produkcji gotowych urządzeń.
W miarę jak technologiczny krajobraz się zmienia, pojawia się przestrzeń dla nowych inicjatyw, takich jak architektura RISC-V, która próbuje wyjść poza ograniczenia dominujących graczy. Daje to nadzieję na nowe możliwości w dziedzinie architektury procesorów, przekształcając rynek i otwierając drzwi do nowych horyzontów innowacji.
Rys historyczny RISC-V
Na początku lat 80. XX wieku popularność zaczęły zyskiwać idee procesorów opartych na modelu RISC. Oznaczało to układy o maksymalnie zredukowanej liczbie możliwych do wykonania instrukcji. To w tamtym czasie na salonach pojawiły się pierwsze układy ARM oraz RISC-I i RISC-II. W kolejnych latach pojawiły się też koncepcje RISC-III oraz i RISC-IV odnoszące się w rzeczywistości do projektów SOAR i SPUR. Dzisiejszy bohater, czyli RISC-V, poza nazwą nie ma wiele wspólnego ze wspomnianymi chwilę wcześniej architekturami. Podobieństwem może być jedynie fakt, że wszystkie te projekty oparto na modelu RISC.
Architektura RISC-V jest dość młodym konceptem, ponieważ prace nad nią rozpoczęto w 2010 roku na Uniwersytecie Kalifornijskim w Berkeley, którego dyrektorem był David Patterson. Projekt uzyskał finansowanie Microsoftu i co ciekawe Intela, a efektem prac badawczych było pojawienie się w kolejnym roku pierwszego chipa opartego na modelu RISC-V.
Historia przyśpiesza w 2014 roku, gdy Profesor Krste Asanović i Petterson publikują artykuł, w którym przekonują, że przyszłość należy do procesorów z uproszczoną listą instrukcji dystrybuowanych na zasadach open source. Publikacja ta odbiła się dość szerokim echem w świecie technologii, a jej następstwem było powołanie przez 36 firm w tym Nvidia, Google, IBM i Qualcomm fundacji RISC-V, przemianowanej później na RISC-V International.
Za darmo? To uczciwa cena
Architektura RISC-V jest dobrym przykładem modelu open source. Oznacza to, że tego typu rdzenie mogą być implementowane w dowolnych projektach w zasadzie przez każdego. Innymi słowy, kod źródłowy i dokumentacja RISC-V dostępna jest publicznie, dzięki czemu możliwe jest projektowanie procesorów zoptymalizowanych pod kątem określonych zastosowań. Otwartość sprzyja też współpracy, nad kolejnymi ulepszeniami architektury mogą pracować wszyscy deweloperzy, mogą oni zgłaszać błędy i wspólnie je naprawiać, co przyczynia się do stałego rozwoju i doskonalenia projektu.
Warto też wspomnieć, że Otwarta architektura RISC-V umożliwia mniejszym firmom i start-upom wejście na rynek procesorów, co wcześniej mogło być utrudnione ze względu na ograniczenia licencyjne i koszty. Dzięki temu powstaje bardziej zróżnicowana gama konkurujących ze sobą produktów.
Charakterystyka RISC-V
Procesory RISC-V, podobnie jak inne chipy obliczeniowe, wyróżniają się zestawem cech charakterystycznych, które sprawiają, że stanowią fascynującą i innowacyjną alternatywę w świecie architektury procesorów. Jedną z kluczowych cech jest ich wspomniana wyżej otwarta natura. Poza tym tego typu rdzenie charakteryzują się modularnością. Architektura ta pozwala na tworzenie niestandardowych zestawów instrukcji, co daje projektantom możliwość dostosowywania procesora pod konkretne zastosowanie. Oznacza to, że nie trzeba „płacić” za instrukcje, których się nie używa, co przekłada się na oszczędność zasobów i zwiększoną wydajność.
Prostota instrukcji to kolejny znak rozpoznawczy RISC-V. Koncentrując się na niewielkiej liczbie prostych rozkazów, procesory RISC-V umożliwiają szybkie dekodowanie i wykonywanie kolejnych instrukcji, czego efektem jest bardzo dobra wydajność.
Procesory RISC-V wspierają również nowoczesne technologie, takie jak zestaw instrukcji SIMD czy zaawansowane mechanizmy ochrony pamięci. Warto zaznaczyć, że RISC-V nie jest modelem ograniczonym do konkretnego obszaru zastosowań – od mikrokontrolerów po superkomputery, architektura ta może znaleźć zastosowanie w szerokim spektrum aplikacji.
W skrócie, procesory RISC-V wyróżniają się otwartością, modularnością, prostotą i uniwersalnością. Cechy te sprawiają, że architektura ta nie tylko przyciąga uwagę inżynierów i projektantów, ale również otwiera drzwi do nowych możliwości i innowacji w dziedzinie procesorów.
Aktualne zastosowanie RISC-V
Mimo że układy RISC-V są dość młodymi konstrukcjami, to już teraz można przytoczyć kilka ciekawych i wykorzystywanych w praktyce procesorów.
- SiFive U54-MC Coreplex – Jest to 64-bitowy procesor RISC-V, przeznaczony do użytku w wysokowydajnych aplikacjach, takich jak przetwarzanie danych w chmurze. Wspiera on rozszerzenie umożliwiające wykonywanie instrukcji mnożenia i dzielenia liczb całkowitych i działa z częstotliwością 1,5 GHz.
- Nvidia Grace – to 64-bitowy procesor RISC-V, stosowany w centrach danych i wysokowydajnych aplikacjach obliczeniowych. Układ ten obsługuje operacje zmiennoprzecinkowe o pojedynczej precyzji i prawdopodobnie będzie używany w przyszłych superkomputerach.
- Western Digital SweRV Core – Jest 32-bitowym układem RISC-V, przeznaczony do użytku w aplikacjach embedded i IoT, zoptymalizowanym pod kątem zużycia energii.
Przyszłość i ambicje RISC-V
Już dzisiaj można powiedzieć, że układy o architekturze RISC-V osiągnęły sukces, ponieważ udało im się przebić do mainstreamu i zaistnieć obok procesorów x86 i ARM. Byłbym jednak ostrożny z opiniami, że już niedługo RISC-V przejmie całkowicie rynek procesorów. Tego typu rdzenie są ciekawą alternatywą, zwłaszcza dla układów ARM i być może w przyszłości uda im się przejąć część rynku konsumenckiego, trzeba jednak pamiętać, że w tym czasie ARM może zagarnąć znaczną część obszaru okupowanego obecnie przez x86, czyli komputery domowe.
W mojej opinii RISC-V może istnieć tuż obok ARM i x86, a układy oparte na tej architekturze z powodzeniem mogą być stosowane w wielu systemach wbudowanych i urządzeniach IoT.
RISC-V International patrzy w przyszłość z optymizmem. Pod koniec 2020 roku ogłosili, że do 2025 roku na rynku dostępnych powinno być prawie 80 milionów chipów RISC-V, co byłoby udziałem w rynku na poziomie 14%. Wizja ta jest ambitna i prawdopodobnie się sprawdzi, ponieważ segment architektury procesorów zdominowany przez dwóch wielkich graczy potrzebował czegoś otwartego i „darmowego”, z czego korzystać będą mogły niewielkie firmy i start-upy. Mimo wszystko jest jeszcze nieco za wcześnie, aby wróżyć przyszłość RISC-V jako głównego gracza na rynku, choć oczywiście przyszłość rysuję się w kolorowych barwach.
Na koniec chciałbym podzielić się moją osobistą obawą co do przyszłości architektury RISC-V. W początkowym założeniu układy tego typu miała charakteryzować kompatybilność, czyli aplikacja przygotowana na jeden układ RISC-V, powinna bez problemu uruchomić się na innym procesorze opartym na tym modelu. Początkowo tak było, ale wraz ze wzrostem popularności rdzeni RISC-V zaczęło powstawać coraz więcej procesorów, które jak się okazało, nie są za sobą kompatybilne pod względem programowym. Powodem takiego stanu rzeczy jest jedna z głównych zalet RISC-V, czyli otwartość i dystrybucja na zasadach open source. W przyszłości, gdy rdzeni RISC-V będzie jeszcze więcej może to być spory problem. Kolokwialnie mówiąc – każdy będzie robić, co mu się podoba, a efektem tego będzie masa niekompatybilnych ze sobą układów, sygnowanych tym samym logiem. Innymi słowy, całkowity brak standaryzacji, który może skutecznie zniechęcić projektantów sprzętu do korzystania z rdzenie RISC-V. Na ten moment wydaje się, że RISC-V International nie ma w planach „porządków”, być może czekają, aż na rynku wyklaruje się jeden większy producent procesorów z tym rdzeniem, którego produkty staną się po czasie standardem branży, a pozostałe niekompatybilne konstrukcje zostaną naturalnie zapomniane, ale jaka będzie przyszłość, czas pokaże.
Źródła:
https://www.xda-developers.com/risc-v/
https://www.digitaltrends.com/computing/what-is-risc-v/
https://www2.eecs.berkeley.edu/Pubs/TechRpts/2014/EECS-2014-146.pdf
https://medium.com/@sharjeelimtiazprof/risc-v-history-introduction-60642a685fdd
https://www.allaboutcircuits.com/technical-articles/introductions-to-risc-v-instruction-set-understanding-this-open-instruction-set-architecture/
https://www.elprocus.com/risc-v-processor/
https://five-embeddev.com/riscv-isa-manual/latest/history.html
https://www.microcontrollertips.com/risc-v-vs-arm-vs-x86-whats-the-difference/
https://www.makeuseof.com/risc-vs-arm-what-is-the-difference/
https://www.hpcwire.com/2022/11/18/risc-v-is-far-from-being-an-alternative-to-x86-and-arm-in-hpc/
https://en.wikipedia.org/wiki/RISC-V
Jak oceniasz ten wpis blogowy?
Kliknij gwiazdkę, aby go ocenić!
Średnia ocena: 4.6 / 5. Liczba głosów: 33
Jak dotąd brak głosów! Bądź pierwszą osobą, która oceni ten wpis.
Jedna odpowiedź
Po przeczytaniu artykułu ze zdziwieniem odkryłem, że procki ESP też są oparte na tej architekturze!
https://www.espressif.com/sites/default/files/documentation/esp32-c3_datasheet_en.pdf