SHAKTI (mikroprocesszor)
Shakti | |
![]() | |
Shakti mikrovezérlő prototípus | |
Gyártás | 2017 (tapeout) |
Tervező | Indian Institute of Technology, Madras (IIT Madras) |
Gyártó | Intel, Semi-Conductor Laboratory (SCL) |
Gyártás technológia méret | 22 nm FFL (Intel), 180 nm (SCL) |
Utasításkészlet | RISC-V |
Architektúra | RISC-V |
Alkalmazása | egylapkás rendszerek (SoC), fejlesztőkártyák, alapszoftver fejlesztőplatform, IOT |
Változat | E, C, I, M, S, H osztályok |
A Shakti weboldala |
A Shakti (stilizáltan SHAKTI) egy nyílt forráskódú hardver létrehozására irányuló kezdeményezés, az IIT Madras egyetem Reconfigurable Intelligent Systems Engineering (RISE) csoportjának vezetésével, melynek célja az első teljes mértékben hazai fejlesztésű, ipari felhasználású processzor kifejlesztése Indiában.[1][2] A Shakti kezdeményezés céljai közé tartozik egy nyílt forráskódú ipari felhasználásra alkalmas processzor kifejlesztése, és a processzort használó kész egylapkás rendszerek (system on a chip, SoC), mikroprocesszoros fejlesztőkártyák és egy Shakti alapú szoftverplatform létrehozása. A csoport elsősorban a számítógép-architektúra kutatására fókuszál, olyan SoC-k fejlesztésére, amelyek versenyképesek a piacon lévő kereskedelmi ajánlatokkal szemben a (lapka)terület, az energiafelhasználás és a teljesítmény tekintetében. A Shakti processzorok forráskódja nyílt, Módosított BSD licenc alatt tették közzé.[3][2]
V. Kamakoti, az IIT Madras igazgatója vezette a Shakti mikroprocesszor projektet, az IIT Madras Számítástechnikai és Mérnöki Tanszékének Prathap Subrahmanyam Digitális Intelligencia és Biztonságos Hardverarchitektúra Központjában. Ezt az indiai Elektronikai és Informatikai Minisztérium támogatta a ‘Digital India RISC-V’ kezdeményezésen keresztül.[4]
Processzorok
[szerkesztés]A Shakti processzorok a RISC-V utasításkészlet-architektúrán alapulnak. A processzorokat úgy tervezték, hogy több eltérő gyártástechnológiával is gyárthatók legyenek, ami lehet akár 22 nm-es FinFET vagy 180 nm-es CMOS technológiai folyamat, a gyártó félvezetőgyártó üzemtől (foundry) függően.
A Shakti egy processzorcsaládot tervez fejlesztési terve részeként, a piac különböző szegmenseinek kiszolgálására. A család tagjait nagy vonalakban az „alapprocesszorok”, „többmagos processzorok” és „kísérleti processzorok” kategóriákba sorolják, a kategóriákban pedig betűkkel jelölt osztályokba.
Az E és C osztályú magok a dolgok internete (IoT), beágyazott rendszerek és asztali számítógépek piacát célozzák. A processzor-kialakítások teljesen jogdíjmentesek és nyílt forráskódú licenc hatálya alá esnek, azaz a módosított BSD licenc alatt vannak közzétéve.[5]
Az E és C osztályú magok megvalósítása Bluespec SystemVerilog (BSV) nyelven történt, ami a Haskell egyik dialektusa.[2]
A Shakti projekt célja hat különböző, RISC-V utasításkészlet-arhitektúrájú processzorváltozat megépítése.
Alapszintű processzorok
[szerkesztés]E osztály
[szerkesztés]Az E osztályú processzorok 32 és 64 bites mikrovezérlők, amelyek képesek támogatni az RISC-V ISA összes kiterjesztését, kis fogyasztású és teljesítményű számítógépes alkalmazásokhoz. Az E osztály egy sorrendi 3 fokozatú futószalagot tartalmaz, amelynek működési frekvenciája 200 MHz-nél alacsonyabb a szilíciumon. Szerepe az ARM architektúra M osztályú (Cortex-M sorozat) magjaihoz hasonlítható. Képes valós idejű operációs rendszerek futtatására, mint például a FreeRTOS, Zephyr, és eChronos. Az E osztályú processzorok piaci szegmense az intelligens kártyák, IoT-eszközök, motorvezérlők és robotikai platformok támogatása.[6][7]
Az E-arty35T egy E osztályú mag köré épített SoC. Az E-arty35T egylapkás rendszer (SoC) egy egycsipes 32 bites E osztályú mikrovezérlő 128 KiB RAM-mal. 32 db. általános célú bemenet/kimeneti (GPIO) csatlakozással rendelkezik (melyek közül a felső 16 GPIO érintkező a kártyára szerelt LED-ekhez és kapcsolókhoz van rendelve), emellett található rajta egy platform szintű megszakításvezérlő (PLIC), egy számláló, 2 Serial Peripheral Interface (SPI), 2 univerzális aszinkron adóvevő (UART), 1 I²C soros sín, 6 impulzusszélesség-modulátor (PWM) és egy beépített Xilinx analóg-digitális átalakító (X-ADC).[8]
C osztály
[szerkesztés]A C osztály egy 64 bites vezérlő típusú processzor, középkategóriás beágyazott alkalmazásokhoz. A mag egy nagymértékben optimalizált, 6 fokozatú sorrendi kialakítás, MMU-támogatással és olyan operációs rendszerek futtatásának képességével, mint Linux és Sel4. Nagy mértékben konfigurálható a szabványos RV64GC ISA kiterjesztések támogatásával. 200–800 MHz felett futó középkategóriás számítási rendszerekhez készült. 2 GHz-ig testre szabható. Az ARM Cortex A35/A55 processzorokkal szemben pozicionálható. Ennek az osztálynak az alkalmazási területe a beágyazott rendszerek, motorvezérlés, IoT, tárolási és ipari alkalmazások, az alacsony költségű, nagy teljesítményű Linux-alapú alkalmazások, például hálózatkezelés, átjárók vezérlése stb.[6][7]
A C-arty100T a C osztály köré épített SoC. A C-arty100T egylapkás rendszer (SoC) egy egycsipes 64 bites C osztályú mikrovezérlő 128 MiB DDR3 RAM-mal, 16 általános célú be-/kimeneti (GPIO) porttal, egy platformszintű megszakításvezérlővel (PLIC), egy számlálóval, 1 univerzális aszinkron adóvevővel (UART) és 1 I²C sínnel. Közepes szintű alkalmazási feladatokhoz készült, nagyon alacsony energiafogyasztással és opcionális memóriavédelmi támogatással.[9]
I osztály
[szerkesztés]Az I osztály egy 64 bites processzor számítási, mobil-, tárolási és hálózati platformok számára. Jellemzői közé tartozik a sorrenden kívüli végrehajtás, többszálas programfuttatás (multithreading), agresszív elágazásjóslás, nem blokkoló gyorsítótárak és mély, sok fokozatú futószalagok használata. A processzor működési órajelfrekvenciája 1,5–2,5 GHz. 2020 áprilisától a csapat a megvalósítás fizikáján dolgozott, továbbá a memóriafüggőség előrejelzésén, utasításablak/ütemező optimalizálások, egyes funkcionális egységek megvalósításán, a teljesítményelemzésen és -előrejelzéseken, és az optimalizáláson, hogy a 22 nm-es technológiához tervezett processzor elérje az első kitűzött célfrekvenciát, az 1 GHz-et.[7][10][11]
Többmagos processzorok
[szerkesztés]M osztály
[szerkesztés]Mobil osztályú processzor legfeljebb nyolc maggal, C és I osztályú magok kombinációit alkalmazva. A M osztályú processzorok általános célú számítási célokra, alsókategóriás/belépő szintű szerver és mobil alkalmazásokhoz készülnek. A működési órajelfrekvencia 2,5 GHz-ig terjed. Támogatja a nagy utasításkibocsátási méretet, a négyszálas és opcionális NoC (network-on-chip) összekapcsolási technológiát. A M osztályú processzorok különböző energia- és teljesítménycélokra vannak optimalizálva.[10]
S osztály
[szerkesztés]Az S osztály egy 64 bites szuperskalár, többszálas változat, asztali és vállalati szerverekben történő felhasználásra. 2–16 magot támogat, körülbelül 1,2–3 GHz-es órajellel.[10]
H osztály
[szerkesztés]A H osztály egy 64 bites processzor a nagymértékben párhuzamos vállalati, HPC, és analitikai alkalmazásokhoz. A magok lehetnek a C vagy I osztály kombinációi, a kívánt egyszálas teljesítmény határozza meg a magok választását. A H osztályú akár 128 maggal rendelkezhet, magonként több gyorsítóval.[10]
Kísérleti processzorok
[szerkesztés]Ezek olyan kísérleti és kutatási projektek, amelyek egy magas biztonságú és hibatűrő processzor kifejlesztését célozzák.
T osztály
[szerkesztés]A T osztály célja, hogy további hardveres támogatást nyújtson az információk védelméhez a memóriaalapú támadásokkal szemben. Tervezése egy egységes hardveres keretrendszerre fókuszál, amely a tér- és időbeli memóriatámadások kivédését és a hatások mérséklését célozza.[12]
F osztály
[szerkesztés]Az F osztály az alaposztályú processzor hibatűrő változata. Jellemzői közé tartoznak a redundáns számítási blokkok (mint a DMR és TMR),[m 1] temporális redundancia modulok az állandó hibák detektálására, lock-step magkonfigurációk, hibalokalizációs áramkörök, ECC a kritikus memóriablokkokhoz és redundáns szövevényes összekötő hálózatok.[13]
Tapeoutok
[szerkesztés]Eddig két C osztályú processzor (kódnevükön RIMO és Risecreek) és egy E osztályú processzor (Moushik) volt gyártásra bocsátva (tape-out).
RIMO
[szerkesztés]A RIMO egy Shakti C osztályú SoC kódneve, amely a gyártási fázisba lépett (tape-out) 2018 októberében, és 180 nm-es technológiával gyártották a mohali Semi-Conductor Laboratory kutatóintézetben. A 144 mm2-es csip a tesztek során elérte a 70 MHz-es működési frekvenciát. A csip 208 tűs CQFP (Ceramic Quad Flat Pack) kerámia tokba volt szerelve.[6][14]
Risecreek
[szerkesztés]A CREEK egy Shakti C osztályú SoC, amely 2018 júliusában jutott el a gyártási fázisba. Az Intel oregoni IC gyárában gyártják, 22 nm-es FinFET folyamattal. A 16 mm2-es csip[15] a tesztek során elérte a 350 MHz-es működési frekvenciát. A csip 324 érintkezős BGA (Ball Grid Array) tokozásba van szerelve.[6][15]
Moushik
[szerkesztés]A Moushik egy Shakti E osztályú SoC, amelyet az SCL gyárt 180 nm-es technológiájú folyamattal, 2020-tól kezdve. 100 MHz-es frekvencián működik és az Ardonyx 1.0 nevű alaplappal együtt fejlesztették ki.[16]
IRIS
[szerkesztés]Az IIT Madras és az ISRO Inertial Systems Unit kutatóközpont 2025 februárjában sikeresen megtervezte és kibocsátotta a 64 bites IRIS („Indigenous RISC-V Controller for Space Applications”, belső fejlesztésű RISC-V vezérlő űrtechnikai alkalmazásokhoz) csipet, amely a Shakti alapkiépítésű processzoron alapul. A csip konfigurációja figyelembe veszi az ISRO küldetésekben használt eszközök és érzékelők feldolgozási teljesítményét és funkcionális igényeit. A megbízhatóság javítására hibatűrő belső memóriát illesztettek az Shakti maghoz.[17]
Az IRIS a harmadik csip, amit a SCL kutatóintézet gyárt, 180 nm-es folyamattal, a 2018-as RIMO és a 2020-as Moushik után. A csip csomagolási folyamatát a Tata Advanced Systems végezte. A Syrma SGS véglegesítette a telepítést és az összeszerelést, az alaplapot a PCB Power fejlesztette. A csip tervezése, gyártása, tokozása, az alaplap kialakítása és gyártása, a szoftver és rendszerbetöltő mind Indiában készült el, ami igazolja a szakértelem és a teljes félvezető-ökoszisztéma meglétét. A csip teljesítményét éles alkalmazásban, repülési teszten tervezik értékelni.[18][19]
A RIMO és a Risecreek jellemzői
[szerkesztés]A RIMO és Risecreek néhány jellemzője:
- Sorrendi (in-order) 5 fokozatú 64 bites mikrovezérlő, támogatja a stabil teljes RISC-V ISA-t (RV64IMAFD).
- Kompatibilis a RISC-V ISA privilegizált utasításkészlet-specifikációjával (v1.10), és támogatja az sv39 virtualizációs sémát.
- Tartalmaz egy elágazás-előrejelzőt (branch predictor) Return-Address-Stack használatával.
- Futószalagos IEEE-754 kompatibilis egy- és kétszeres pontosságú lebegőpontos egységek és többcsatornás DMA támogatása.
- Perifériák: 2 × I²C soros sín, 2 × UART, 2 × QSPI, egy hibakereső szoftver (debugger), 256 KiB-os szorosan csatolt memória, 32 bites GPIO-k és egy bővítősín, ami FPGA-hoz csatlakoztatható.[6]
Fejlesztőkártyák
[szerkesztés]Mind az E, mind a C osztályú processzorokhoz készültek fejlesztőkártyák. A különböző processzorosztályok alaplapi támogatásának egyes részletei:
E-arty35T
[szerkesztés]- Az E-arty35T egy Shakti E osztályon alapuló egylapkás rendszer.
- Az E-arty35T csipet az Artix 7 35T kártya támogatja.
- Van egy korlátozott, 32 bites E osztályú változata. Tartalmazza az I, M, A és C (kiterjesztéseket).[8]
C-arty100T
[szerkesztés]- A C-arty100T egy Shakti C osztályon alapuló egylapkás rendszer.
- A C-arty100T csipet az Artix 7 100T kártya támogatja.
- Van egy korlátozott, 64 bites C osztályú változata. Tartalmazza az I, M, A, F, D és C (kiterjesztéseket).[9]
Kereskedelmi támogatás
[szerkesztés]Az Altair Engineering 2021 júliusában az E osztályú processzort felvette a beágyazott rendszerek firmware-támogatási portfóliójába, globális ügyfelei számára.[20]
Swadeshi Microprocessor Challenge
[szerkesztés]A Swadeshi Microprocessor Challenge egy indiai kezdeményezés, amelyet az Elektronikai és Informatikai Minisztérium indított. A célja a hazai mikroprocesszorok köré épülő innovatív megoldások fejlesztése. A kihívás nagy díjakkal jár, diákok és startupok versenyeznek különböző hardveres megoldások kifejlesztésével.
2021. december 7-én, az Elektronikai és Informatikai Minisztérium kitüntette a Swadeshi Microprocessor Challenge nyerteseit. A kihívás különböző szakaszaiban, a résztvevők akár 4,40 crore ₹ (crore: 10 millió) finanszírozást kaphatnak hardver prototípusok fejlesztésére és egy induló vállalkozás inkubálására a résztvevő csapatok által. A C-DAC és az IIT Madras a kihíváshoz elérhetővé tette az általa fejlesztett THEJAS32 és THEJAS64 eszközöket, a VEGA 32- és 64 bites processzorokon és a Shaktin alapuló SoC-kat. A résztvevő csapatok sikeresen alkalmazták az SoC-kat különböző tervekben. A 30 döntőbe jutott csapatból tíz csapat győzött. A ‘Team VEGA FCS FT’ (AI pilóta nélküli jármű) 3,5 millió rúpiás díjat kapott (₹35 lakh) drón-alkalmazásáért; a második helyezett ‘Team HWDL’ 3 millió rúpiás díjat nyert (₹30 lakh) az általa fejlesztett FM rádiós adatrendszer segédprogramcsomaggal; a harmadik helyezett ‘Cytox’ 2,5 millió rúpiás díjat kapott (₹25 lakh) sejtszámlálási projektjére. Minden további nyertes csapat 2 millió rúpiás (₹20 lakh) csekket kapott a megosztott negyedik helyen. A kifejlesztett rendszerek között volt fogyatékosok számára fejlesztett mesterséges külső váz, szennyvíztisztító telep távfelügyelet és optimalizálás, kalibrációs rendszer nukleáris spektroszkópia alkalmazásokhoz, vezeték nélküli szülőszobai megfigyelő rendszer, energiamérő mérési helyen alkalmazott „mély tanulásos” mesterséges intelligenciával és geofencingen alapuló lopásgátló zárrendszer.[21][22]
A Swadeshi Microprocessor Challenge harminc döntős csapata inkubációs támogatást kapott a Maker Village-től, india legnagyobb elektronikai rendszertervező és -gyártó központjától.[23]
Megjegyzések
[szerkesztés]- ↑ DMR: ‘double modular redundant’, TMR: ‘triple modular redundant’ (circuits) – kétszeres és háromszoros moduláris redundancia, áramkörök többszörözése a single event upset (SEU, sugárzás által kiváltott egyszeri hibaesemény), single event transient (SET, egyszeri tranziens) és single event latchup (SEL, egyszeri kiülés) hibaesemények kivédésére.
Jegyzetek
[szerkesztés]- ↑ Shakti (angol nyelven). IIT Madras, 2021 (Hozzáférés: 2024. szeptember 4.)
- ↑ a b c Veezhinathan, Kamakoti: Building the Shakti Microprocessor (angol nyelven). cacm.acm.org , 2022. november 1. (Hozzáférés: 2022. november 15.)
- ↑ IIT-Madras Develops 'India's First Microprocessor', Shakti (angol nyelven). NDTV Gadgets 360 , 2018. november 2. (Hozzáférés: 2020. április 10.)
- ↑ Jacob, Shine. „IIT Madras, Isro develop semiconductor for space research, other sectors”, Business Standard, 2025. február 11. (Hozzáférés: 2025. február 11.)
- ↑ Gala, Neel; Arjun Menon, Rahul Bodduna, G. S. Madhusudan, V. Kamakoti (2016. január 1.). „Shakti Processors: An Open-Source Hardware Initiative”. 2016 29th International Conference on VLSI Design and 2016 15th International Conference on Embedded Systems (VLSID): 7–8. doi:10.1109/VLSID.2016.130. S2CID 14815714.
- ↑ a b c d e Shakti Development Board User Manual. Shakti . (Hozzáférés: 2010. április 10.)
- ↑ a b c Shakti - The Open Source Indian Microprocessor & Microcontroller (amerikai angol nyelven). Engineer's Asylum , 2020. április 7. (Hozzáférés: 2020. április 10.)
- ↑ a b E-Class on ARTY-A7-35t Board (angol nyelven). GitLab . (Hozzáférés: 2020. április 10.)
- ↑ a b C-Class on ARTY-A7-100t Board (angol nyelven). GitLab . (Hozzáférés: 2020. április 10.)
- ↑ a b c d Processors. Shakti . (Hozzáférés: 2020. április 10.)
- ↑ Ranganathan, Nitya: Shakti I Class: Introduction. Shakti . (Hozzáférés: 2020. április 10.)
- ↑ (2017. június 25.) „Shakti-T: A RISC-V Processor with Light Weight Security Extensions”. Proceedings of the Hardware and Architectural Support for Security and Privacy: 1–8. doi:10.1145/3092627.3092629. S2CID 207646970.
- ↑ Gupta, Sukrat; Gala, Neel; Madhusudan, G. S.; Kamakoti, V. (2015. november 1.). „Shakti-F: A Fault Tolerant Microprocessor Architecture”. 2015 IEEE 24th Asian Test Symposium (ATS): 163–168. doi:10.1109/ATS.2015.35. S2CID 7705965.
- ↑ Code Name: RIMO (Test-Chip) (angol nyelven). IIT Madras, 2021. (Hozzáférés: 2025. február 20.) „Chip details: Manufacturer: SCL • Date of Shipment: October 2018 • Technology Node: 180nm CMOS • Die Size: 12 x 12 mm2 • Functional IOs: 138 • Packaging: CQFP • Core Voltage: 1.8v”
- ↑ a b Code Name: RISECREEK (Test-Chip) (angol nyelven). IIT Madras, 2021. (Hozzáférés: 2025. február 20.) „Chip details ... / Die Size: 4 x 4 mm2”
- ↑ Meet India's Atmanirbhar Microprocessor chip 'Moushik', meant for IoT devices (angol nyelven). WION , 2020. szeptember 24. (Hozzáférés: 2020. szeptember 25.)
- ↑ Tripathi, Sibu Kumar: Isro and IIT Madras develop indigenous semiconductor chip (angol nyelven). India Today , 2025. február 11. (Hozzáférés: 2025. február 11.)
- ↑ IIT Madras & ISRO jointly develop aerospace quality semiconductor chip (angol nyelven). BusinessLine , 2025. február 11. (Hozzáférés: 2025. február 11.)
- ↑ Chauhan, Rishab: IIT Madras and ISRO develop SHAKTI-based semiconductor chip under Make in India (angol nyelven). India Today , 2025. február 11. (Hozzáférés: 2025. február 11.)
- ↑ MP Sidharth: India's home-grown microprocessor Shakti is now part of tech-giant Altair's offerings (angol nyelven). WION , 2021. július 6. (Hozzáférés: 2021. július 9.)
- ↑ MeitY felicitates winners of microprocessor challenge; participants get financial support (angol nyelven). Business Today , 2021. december 7. (Hozzáférés: 2024. szeptember 5.)
- ↑ Rao, S Krishnakumar. „VEGA Processors : Making India AtmaNirbhar in Swadeshi Compute Designs” (pdf), (agency): Centre for Development of Advanced Computing (Fejlett Számítástechnikai Fejlesztési Központ), 2021. december 3. (Hozzáférés: 2024. szeptember 4.)
- ↑ Maker Village of Digital University Kera to incubate 10 winners of Swadeshi Microprocessor Challenge (angol nyelven). English.Mathrubhumi , 2021. december 10. (Hozzáférés: 2024. szeptember 5.)
Fordítás
[szerkesztés]Ez a szócikk részben vagy egészben a SHAKTI (microprocessor) című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.