Open source procesor s architekturou RISC-V jde do reálné výroby na 65 nm

0

O procesorové architektuře, či spíše instrukční sadě RISC-V, která byla vyvinuta jako otevřená a svobodná alternativa k v současnosti používaným proprietárním instrukčním sadám, jsme zde zatím moc nepsali. Existují sice pokusy o její komerční implementaci, ale jelikož RISC-V vznikla takříkajíc od stolu, zůstává hlavně teoretickým projektem. Minulý týden se ale mezi různými hardwarovými zprávami objevila informace, která příznivce alternativních CPU (a také otevřeného hardwaru) potěší: reálná křemíková implementace RISC-V se zřejmě chystá do výroby.

Jde o dílo vytvořené kolektivem vědců ze Švýcarského federálního technologického institutu v Curychu (ETH Zürich) a Boloňské Univerzity, nazvané PULPino (název je odvozen od souvisejícího projektu PULP, Parallel ultra low power). Jak již název naznačuje, PULPino je malý, nepříliš komplexní procesor, který nebude konkurovat velkým CPU, ale zatím jen mikrořadičům. Jeho autoři jeho možnosti vidí zejména v segmentu „IoT“ (internet věcí, nositelná elektronika jako hodinky a podobně) a různých podobných zařízení vyžadujících co nejnižší spotřebu.

Schéma procesoru PULPino
Schéma procesoru PULPino

Zatímco projekt PULP počítá s čtryřjádrovým SoC (ovšem tam je to nikoli s architekturou RISC-V, ale OpenRISC, pokud se dobře dívám), PULPino se omezuje na jedno jádro s označením RI5CY se zjednodušenou instrukční sadou. Autoři jej srovnávají s Cortexem-M4. Implementována je základní 32bitová sada RISC-V, komprimované instrukce RV32C (obdoba instrukcí Thumb u ARMu) a částečná podpora násobení (RV32M).

 

Kromě toho by jádro mělo mít také nestandardní rozšíření pro roli mikrořadiče a částečnou implementaci privilegované architektury, což umožňuje, aby na procesorech PULPino běžel FreeRTOS. Procesor se také umí při neaktivitě přepnout do úsporného režimu, kdy je většina částí neaktivních pro snížení příkonu a čeká s probuzením na vnější impulz.

Toto by měl být čip Imperio, první implementace PULPina na 65 nm
Toto by měl být čip Imperio, první implementace PULPina na 65 nm   

PULPino má za sebou tape-out v továrně UMC, který proběhl v lednu 2016 na 65nm procesu. Není jasné, zda se počítá i s nějakou reálnou výrobou (a poté prodejem těchto čipů), která by zřejmě nastala až v případě, že by se našli nějací uživatelé. Tato první implementace procesoru, nazvaná „Imperio“ má údajně dosahovat taktu až 650 MHz. Na typickém taktu 400 MHz při napájecím napětí 1,2 V má mít příkon jen 32,8 mW. Jádro RI5CY má měřit 0,050 mm² a údajně by na 65 nm mělo být o něco menší a snad i úspornější než Cortex-M4. Imperio implementuje pro komunikaci s okolím rozhraní jako UART, I2C, SPI Master a GPIO.

Jádro RI5CY ve srovnání s ARM Cortex-M4
Jádro RI5CY ve srovnání s ARM Cortex-M4

Kromě této implementace lze čip simulovat v RTL nebo naprogramovat do v FPGA (Xilinx Zynq-7010). Zdrojové kódy samotného hardwaru i softwarových nástrojů by měly být dostupné pod licencí Solderpad Hardware License, podobné licencei Apache 2.0. Tím pádem je také možná návrh využít ve vlastních čipech. Celý projekt má své stránky a repozitáře na GitHubu a v rámci Google Summer of Code běží i softwarové projekty pro tuto platformu, například přidání podpory do Arduina.

PULPino se dá implementovat v FPGA desce ZedBoard
PULPino se dá implementovat v FPGA desce ZedBoard

Zajímavé je, že podle EE Times se autorům podařil tape-out také většího procesoru PULP, a to údajně už loni v listopadu (o čemž zřejmě informace zapadly). V tomto případě už se jednalo o 28nm proces a výrobním partnerem jsou GlobalFoundries. V obou případech jde o univerzitní projekty, takže případné uchycení těchto čipů v praxi je nejistá věc. Pro architekturu RISC-V by však tyto pokusy mohly vydláždit cestu a zároveň praktickým ověřením přispět k jejímu rozvoji.

Zdroje: ETHZ (1, 2), EE Times, CNX Software

Open source procesor s architekturou RISC-V jde do reálné výroby na 65 nm

Ohodnoťte tento článek!