Procesory | Čipy | Open source

Svobodný RISC-V: Možná za deset let po ARMu neštěkne ani pes. Google a armáda dalších vyvíjejí konkurenční procesor

  • Architektuře RISC už desetiletí vládne britský ARM
  • Procesory jeho návrhu najdete v pračce, v routeru i v mobilu
  • Ale pozor, o slovo se hlásí svobodný RISC-V

Představte si, že jste právě na Startovači vybrali od zdejších geeků miliardu korun a máte v plánu vyrobit první český univerzální procesor pro internet věcí a třeba i mobilní telefony.

Jelikož byste potřebovali desetkrát naklonovat celý matfyz, abyste měli dostatek matematiků pro návrh kompletní procesorové architektury, zatelefonujete raději do německého Grasbrunnu, nebo maďarské Budapešti, kde se nacházejí nejbližší pobočky ARM Holdings, a koupíte si licenci za pár milionů eur na výrobu některého ze SoC.

Pak už jen stačí návrh procesoru dle libosti vylepšit, vybavit dalšími komponentami a poslat jej do některé z procesorových fabrik, která zakázku vyrobí a vám za pár týdnů dorazí několik palet křemíkových destiček.

Další měsíce a možná i roky (dle velikosti vašeho týmu) zabijete testováním, implementací ve finálním výrobku, a když bude konečně vše hotovo a vy světu představíte tištěný spoj s hrdým nápisem (třeba) made in Brno, zjistíte, že to celé nebude ekonomicky fungovat, pokud váš procesor nebude stát pár desítek tisíc korun.

Zkrachujete.

Navrhnout a vyrobit procesor je drahé, proto si všichni kupují licenci na ARM

Podobný příběh kupodivu není až tak bláznivý, stejné dilema totiž řeší hromada startupů i velkých korporací, kterým z nejrůznějších důvodů nevyhovuje hotový procesor od některého z výrobců. V posledních letech se to projevuje i v segmentu internetu věcí, kde se celý zástup drobných firem pokouší vyvinout procesor, který bude dostatečně výkonný, zvládne šifrování, komunikaci přes internet, ale zároveň bude mít naprosto minimální spotřebu elektrické energie, aby mohl kdesi v lese měřit špačky a to celé roky a při běhu na malou baterii.

9567207f-0bac-4731-b24a-5b1e7ed1b385
Google se nedávno pochlubil třeba exotickou SoC platformou Edge TPU

Podobně jsou na tom i velké technologické korporace počínaje Googlem, Microsoftem a konče třeba Facebookem a Amazonem, které mají zase obří datová centra. A když ty miliony nasazených procesorů spočítáte, zjistíte, že se spotřeba při použití standardních čipů vyšplhá do astronomických výšin. Není tedy divu, že vyvíjejí vlastní procesorové a koprocesorové platformy optimalizované výhradně pro jejich účely.

Někteří z nich si přitom svoje znalosti nechtějí nechat pro sebe, a tak se sdružují a společně vytvářejí specifikaci procesoru, která je otevřená – dostupná pod svobodnou licencí, za kterou nikdo nezaplatí ani jeden eurocent.

Bude svobodný RISC-V zabiják drahého ARMu?

V poslední době se stále více mluví o jedné z nich, z ryze akademického a spíše experimentálního projektu se totiž v průběhu let zrodil ambiciózní plán, který by jednou mohl konkurovat i zmíněnému ARM Holdings, jenž si za své návrhy procesorů nechává slušně zaplatit. Druhý v pořadí, Intel, pak svoji architekturu licencuje jen AMD.

739bafb0-6554-4fe2-8502-a734f1a935db
Zatím si musíme vystačit s logem, drtivá většina implementací procesoru RISC-V totiž běží v emulátoru, anebo na univerzálním čipu FPGA.

Řeč je o RISC-V. Dobře si ten název zapamatujte, podle mnoha expertů o něm totiž ještě hodně uslyšíme. Projekt procesorové architektury typu RISC (Reduced Instruction Set Computer), kam spadají právě i army anebo třeba populární procesory ATmega, se kterými jsme si už mnohokrát pohráli v našem seriálu Pojďme programovat elektroniku, se zrodil před osmi lety na půdě University of California v Berkeley a od svého počátku vzniká pod svobodnou licencí BSD, která umožňuje návrh svobodné instrukční sady pro procesor použít jak v odvozeném svobodném, tak i uzavřeném díle.

Jinými slovy, kdokoliv může RISC-V vzít a postavit na něm vlastní riscový procesor, aniž by musel jako v případě armové specifikace platit vysoké poplatky za licenci pro komerční velkosériovou výrobu.

Instrukční sada, emulátor, překladač… Už tu všechno je

Jen mnohasetstránkovými PDF dokumenty se samotnou specifikací to přitom nekončí, autoři projektu totiž připravili také svobodný balík podpůrných softwarových nástrojů. Nechybí tedy GNU/GCC překladač pro architekturu RISC-V, GNU/GDB debugger, LLVM překladač a také sada simulátorů a emulátorů, takže chování RISC-V procesoru lze softwarově emulovat třeba v populárním QEMU. K dispozici je dokonce simulátor instrukční sady napsaný v Javascriptu (a Pythonu) jménem ANGEL.

Nicméně ani kompletní vývojový a testovací kit zdaleka nemusí stačit – vždyť svobodných návrhů instrukčních sad procesorů je celá řada. To, co činí z RISC-V nadějný projekt, je seznam desítek členů zastřešující organizace RISC-V Foundation.

Seznam členů připomíná Kdo je kdo v Silicon Valley

Na seznamu přitom ani zdaleka nejsou jen startupy, o kterých běžný smrtelník v životě neslyšel, ale i zástup prémiových značek, které tahají za nitky současného technologického světa. Jmenovitě Google (zakládající člen), Nvidia (zakládající člen), Qualcomm (zakládající člen), Western Digital (zakládající člen), IBM (zakládající člen), Samsung, NXP, Marwell, Allwinner, Espressif, Alibaba, BAE Systems, Siemens, Tesla, Seagate, Huawei...

S trochou nadsázky opravdu chybí už jen ARM a Intel.

A co je ještě podstatnější, nejen že jsou tato jména na seznamu těch, kteří celou legraci platí, ale oni ji i reálně používají nebo se k tomu alespoň přibližují. Nvidia už nějaký pátek vyvíjí nový řadič, který se stará o management uvnitř grafických karet. Je to tedy pomocný procesor, který obhospodařuje grafická jádra GPU. Zatímco dříve používala proprietární technologii, v roce 2016 začala vyvíjet nový čip právě s architekturou RISC-V.

Podobně je na tom další ze zakládajících členů, Western Digital, který na sklonku loňského roku oznámil pro změnu vývoj nového procesoru pro velká data, IoT a datová centra – a i ten už bude namísto (třeba) armové architektury používat RISC-V.

Experimentální procesor Shakti

Instrukční sada RISC-V pouze popisuje, jak má procesor ve svém nitru pracovat na té nejnižší softwarové úrovni. Druhou věcí je návrh konstrukce samotného procesoru. Jeden z prvních postavených nad architekturou RISC-V je indický Shakti, který pochází z polytechniky IITM v Čennaí (dříve Madrás).

Experimentální Shakti pracuje při taktu až 400 MHz a jeho tvůrci na něm čerstvě dokázali spustit Linux, čímž se před pár dny pochlubili na svém twitterovém účtu @ShaktiProcessors.

34baba8a-1011-4233-a852-9a1ef097bee7df682d8a-5e6c-4735-9ab0-c4c81b02e38abbca6d35-e5a3-49f7-96db-a19ee515ff2219129756-393a-40ad-903a-10dcda1383ec
Indický experimentální procesor Shakti s architekturou RISC-V. Autoři se před pár dny pochlubili, že už na něm dokážou spustit Linux.

Shakti ale není jediný projekt RISC-V procesoru. Návrhů CPU jader i celých SoC platforem je celá řada. Seznam najdete na GitHubu. Většinou se jako testovací platforma používá simulátor nebo univerzální FPGA čip, který lze přeprogramováním přestavět v podstatě na jakýkoliv digitální obvod.

A nakonec je tu zmíněný Google a výrobci čipů pro kapesní zařízení včetně chytrých telefonů. Potenciál je tedy obrovský a komunita už vyvíjí také návrhy samotných jader procesorů i celých SoC platforem postavených právě nad RISC-V.

Za dalších deset let tedy mohou být karty rozdány trošku jinak a RISC-V by mohl společně s linuxovým kernelem konečně stvořil první komplexní a hlavně konkurenceschopný open-source mikropočítač se vším všudy.

Diskuze (34) Další článek: Uber končí se samořídícími náklaďáky, chce se naplno věnovat osobním automobilům

Témata článku: , , , , , , , , , , , , , , , , , , , , , , , , ,