Nyílt forráskódú RISC-V Core Designs, Miért érdekel a Google, és miért fontosak?

click fraud protection

A RISC-V egy ingyenes és nyílt forráskódú utasításkészlet-architektúra (ISA) szabvány a rendszereken-a-chip (SoC) számára.

A CPU számítógépeink egyik legfontosabb összetevője, amely alapvető számítások elvégzéséért, logikai összehasonlításáért és az adatok mozgatásáért felelős. Ezek az egyszerű feladatok minden bonyolultabb működés építőkövei, és lehetővé teszik rendszereink és programjaink futtatását.

Ezeknek a műveleteknek a végrehajtása nem véletlen: az utasításkészlet-architektúra (ISA) határozza meg, hogy mik ezek, és mit kell tenniük a számítógépes processzoroknak.

Az ISA meghatározza a támogatott utasításokat és funkciókat, de nem határozza meg, hogyan kell ezeket az utasításokat konkrétan végrehajtani. Tekintsd úgy, mint egy főzési receptet – tegyük fel, hogy bejglihez való: bár a recept ugyanaz, minden szakács másként készíti el, például máshogyan rendezi el a szezámmagot. A recept alapján elkészített séf példánkban a számítógép processzora, amely a definiált ISA szerinti utasításokat hajtja végre. Az eredmény azonban elméletben mindig ugyanaz lesz: egy finom bagel.

ARM logóElőfordulhat, hogy egy másik utasításkészlet nem határozza meg közvetlenül a forrásban lévő vizet, hanem lehetővé teszi bizonyos műveletek elvégzését a tárgyakon: melegítést, mérést és összehasonlítást. A szakácsnak most fel kell melegítenie a vizet, és össze kell hasonlítania a mért hőmérsékletét az ismert forrásponttal. A processzorok számára két fő architektúratípus létezik: Complex Instruction Set Computing (CISC) és Reduced Instruction Set Computing (RISC).

Egyszerűen fogalmazva, a CISC célja, hogy megkönnyítse a programozók dolgát (utasítást adjon a víz forralására, egy másik az olaj felmelegítésére stb.) nagyobb költségek árán. processzorok, míg a RISC egyszerűbb utasításkészletre törekszik, ami több erőfeszítést igényel a programozóktól, de kisebb processzorokat és kevesebb energiát eredményez fogyasztás. Mivel a két architektúra eltérő képességekkel rendelkezik, az egyiken futó programot általában át kell írni, hogy a másikon fusson. Napjaink egyik legnépszerűbb architektúrája az okostelefonokon a RISC család része: az ARM, ami az Acorn RISC Machine rövidítése.

Érdemes megjegyezni, hogy ez leginkább a programozási/portolási fordítókra vonatkozik. Egyéb célokra, például felhasználói program készítésére, általában egy magas szintű nyelvet használ, amely szoftver szinten némileg hasonlítható a CISC-hez. Egy másik fontos megjegyzés, hogy ennek az összehasonlításnak az a célja, hogy egyszerű, de intuitív módon megértse ezeket a fogalmakat. A pontos, mélyreható magyarázat sokkal hosszabb és technikaibb lenne.

Ezzel végre elérkeztünk a RISC-V-hez (ejtsd: ötös kockázat), amely egy ingyenes és nyílt forráskódú ISA SoC-okhoz. (Systems-on-a-Chip, amely alapvetően a CPU-t és a rendszer futtatásához szükséges egyéb összetevőket csomagolja együtt). A legtöbb egyéb ISA, például az Intel, az IBM vagy az ARM sajátja, és mások nem használhatják licenc nélkül (amelynek egyeztetése akár néhány évig is eltarthat). Másrészt a RISC-V-t bárki ingyenesen használhatja, implementálhatja és gyárthatja, az egyetlen valós feltétel a RISC-V szerzőinek elismerése.

Ez lehetővé teszi a független kutatók és fejlesztők számára, hogy saját processzoraikat implementálják, vagy módosítsák a nyílt forráskódú RISC-V implementációkat, ami pl. ARM licenszel nem lehetséges (ehhez külön licenc szükséges, amit kb. 15 nagy cég van). Ugyanakkor az ISA-t a cégek a forráskód kiadása nélkül is bővíthetik és módosíthatják, az Androidhoz hasonló módon. A licencdíjak hiánya olcsóbb processzorokat is jelent, bár ez a gyakorlatban nem fogja jelentősen csökkenteni az okostelefonok árait még akkor sem, ha A RISC-V hosszú távon széles körben használatossá válik: az SoC-k jogdíja egyszerűen nem teszi ki az okostelefonok költségének jelentős részét (Qualcomm veszi 2.5—5% az eladási árból például jogdíjként).

A RISC-V nem az első ingyenes ISA, hiszen mások is léteznek. A többi közül a legnépszerűbb és legaktívabban fejlesztett OpenRISC, amely 2000-ben indult és GNU GPL alatt jelent meg. Figyelmen kívül hagyva egyéb különbségek, a RISC-V megengedő licence valószínűbbé teszi a nagyobb vállalatok általi átvételt, és ez jelentős változást jelent. Például a Google, a Hewlett-Packard Enterprise (HPE) és az Oracle három nagyobb vállalat, amelyek mostanában csatlakozott a RISC-V szabvány munkacsoportja, hatékonyan kimutatva érdeklődésüket a RISC-V mint nyílt szabvány iránt. Amíg az összes megvalósítás megfelel a specifikációknak („RISC-V-kompatibilis”), az ügyfelek továbbra is használhatnak egy ökoszisztémát vagy egy másik (pl. GNU/Linux) elméletben, míg a vállalatokat arra ösztönöznék, hogy ne kelljen rendszereiket a számítógépről írni vagy portolni. karcolás. Ugyanakkor a RISC-V térnyerése azt jelenti, hogy a kisebb vállalatok ténylegesen támogathatják a nyílt forráskódú közösséget, miközben továbbra is rugalmas rendszerük van (az egyik ilyen vállalat, aki érdeklődik a RISC-V iránt alacsony RISC).

Továbbra is kiderül, hogy a RISC-V tud-e tényleges fejlesztéseket hozni vagy sem azoknak az ügyfeleknek, akik érdeklődhetnek a nyílt rendszerek iránt, vagy bármilyen támogatott operációs rendszer futtatása iránt. kompatibilis SoC-k. Ugyanakkor a RISC-V vontatásán kívül más lehetséges aggályok is felmerülhetnek: bár a megengedő licenc bizonyos előnyökkel jár, az óriások számára is lehetővé teheti, hogy használja a Öleljen, terjesszen és oltson ki stratégiát (ami vitathatatlanul a helyzet ha az Android/AOSP és a Google szolgáltatásairól van szó, vagy akár Android Wear) -- bár lehet vitatkozni, hogy ez még mindig jobb lenne, mint a jelenlegi helyzet. Akár összehasonlítást is lehetne vonni ez és a mai Android szcéna között, ahol különféle OEM-ek próbálkoznak hogy megkülönböztessék a bőrüket, hogy több felhasználót szerezzenek, és egyéni ROM közösségek maradjanak fenn a hatalomért felhasználókat.

Meglátogatni a RISC-V weboldal ha többet szeretne megtudni a projekt történetéről és céljairól, vagy akár próbáljon ki egy RISC-V implementációt.