Klartecken för säker processor med RISC-V

Permalänk
Melding Plague

Klartecken för säker processor med RISC-V

Ett gräsrotsfinansierat projekt har fått godkänd finansiering för utveckling av en processor baserad på instruktionsuppsättningen RISC-V. Målet är hög säkerhet via öppen mjukvara.

Läs hela artikeln här

Visa signatur

Observera att samma trivselregler gäller i kommentarstrådarna som i övriga forumet och att brott mot dessa kan leda till avstängning. Kontakta redaktionen om du vill uppmärksamma fel i artikeln eller framföra andra synpunkter.

Permalänk
Medlem

Detta vet jag en som vurmar för

@Yoshman in 5 ... 4 ... 3 ... 2 ... 1

Skämt åsido, hade varit häftigt om RISC V hade blivit stort.

Skickades från m.sweclockers.com

Visa signatur

Hur många datorer är för många?

Permalänk
Inaktiv

4 kärnor och TDP på 2,8 watt samt gpu som endast klarar 720p

Vad ska man ha den till? Typ i leksaker eller brödrosten?

Permalänk
Medlem
Skrivet av anon162230:

4 kärnor och TDP på 2,8 watt samt gpu som endast klarar 720p

Vad ska man ha den till? Typ i leksaker eller brödrosten?

Inbyggda system

Visa signatur

Core i7 7700K | Titan X (Pascal) | MSI 270I Gaming Pro Carbon | 32 GiB Corsair Vengeance LPX @3000MHz | Samsung 960 EVO 1TB

Permalänk
Medlem
Skrivet av anon162230:

4 kärnor och TDP på 2,8 watt samt gpu som endast klarar 720p

Vad ska man ha den till? Typ i leksaker eller brödrosten?

Tänker mig typ alla IOT produkter.. Speciellt säkerhetskritiska, typ övervakningskameror etc..

Skickades från m.sweclockers.com

Permalänk
Skrivet av anon162230:

4 kärnor och TDP på 2,8 watt samt gpu som endast klarar 720p

Vad ska man ha den till? Typ i leksaker eller brödrosten?

Antar att du fixar en super processor på första försöken? Det krävs utveckling vilket det här bidrar till och alltid finns det något användnings område.

Skickades från m.sweclockers.com

Visa signatur

Intel Core i5-4590 | Palit GTX 1660 StormX 6GB | 16GB G.SKILL RipjawsX | Samsung SSD 860 EVO 250GB | Phanteks TC12LS | Fractal Design Core 1100

Permalänk

Fast Intel använder väl en kombination av CISC och RISC? Annars måste jag ta ett snack med min professor på skolan XD

Visa signatur

Nuvarande rigg: CPU: AMD R7 3700X, RAM: G.Skill Flare X, GPU: EVGA 1080Ti FTW3, Moderkort: Gigabyte GA-AX370-Gaming K7 (F51g), HDD: Samsung 840 SSD Pro Basic, WD Black Caviar 1TB SATA II, CPU-kylare: Corsair H115i (Noctua NF-A14), Chassi: Fractal Design R5, PSU: Seasonic Prime GX 1000

Permalänk
Medlem

Risk-fri RISC? Frågan är vilken avvägning man får göra mot prestanda. Det kanske vore en idé att ha olika versioner med olika säkerhets-/prestanda-avvägningar så man kan välja efter behov: maximal prestanda eller maximal säkerhet?

Permalänk
Lyxfällan 🎮

@S-FighterPilot: det stämmer. Den ursprungliga X86-uppsättningen var renodlad CISC, medan senare designer implementerade den i instruktionsuppsättningar som ligger närmare RISC. De är fortfarande mer komplexa än RISC, jämfört med exempelvis ARM-uppsättningarna, men det är helt riktigt att de inte är renodlade CISC-designer numera.

Visa signatur

"We're with the press, hired geeks!"
Raoul Duke, Fear n' Loathing in Las Vegas

Permalänk
Inaktiv

Bra att de får något gjort. EU alltså.

Permalänk
Datavetare

"av typen RV64GC". Kanske behöver avkodas lite..

  • RV: RISC V

  • 64: 64-bitars stöd

  • G: stöder extensioner som "vanliga" program behöver, d.v.s. heltalsoperationer, 32-bitars flyttal (C "float"), 64-bitars flytta (C "double") samt atomära operationer (som behövs om man ska kunna synkronisera data mellan flera trådar). G=general

  • C: komprimerade instruktioner. Alla instruktioner är 4-bytes i normalfallet, med denna utökning är många av de mest använda bara 2 bytes -> bättre cache-utnyttjande. C=compressed.

Detta sista är något 32-bitars ARM har, men 64-bitars ARM valde att inte har stödja för att göra "front-end" enklare. Blir ska bli kul att se vem som gjort rätt val i slutändan!

Just grejen med att dela in instruktioner i klasser där varje implementation kan välja olika klasser beroende på typ av marknad man riktar in sig på är något som särskiljer RISC V från ARM (egentligen från allt).

ARM har t.ex. ARMv7M, ARMV7A, ARMv8A och ARMv8.2A. M=mikrokontroller, A=applikation. 8.2A stödjer i praktiken allt som 7A och 8A innehåller. Lägre granulraritet, men också färre potentiella möjligheter till att marknaden splittras p.g.a. att man implementerar olika delmängder.

I praktiken verkar RV64G vara ett minikrav för en 64-bitar CPU för "normal" OS som Linux. Nedåt lär vi förhoppningsvis bara få se RV32E (E=embedded, hälften så många register och bara heltalsinstruktioner), det för mikrokontrollers och liknande. Linux lär nog inte köras på en RV32E, men tvärsäker kan man aldrig vara...

Skrivet av S-FighterPilot:

Fast Intel använder väl en kombination av CISC och RISC? Annars måste jag ta ett snack med min professor på skolan XD

Man måste skilja på instruktionsuppsättning och mikroarkitektur.

Alla moderna CPUer utanför mikrokontrollers har idag en RISC-lik mikroarkitektur, även x86. Tittar man på AVX (VEX-encoding) är även instruktionerna rätt mycket RISC.

Den relevanta enda relevanta distinktion man kan göra idag är huruvida det är en strikt "load/store arkitektur" eller ej. D.v.s. kan aritmetiska operationer enbart utföras mot register (som är fallet för RISC-V, ARM, PowerPC etc) eller kan det också utföras direkt mot minne (som i fallet för x86).

För den gamla definitionen om "enbart enkla instruktioner i RISC" stämmer rätt dåligt för t.ex. ARM. Framförallt 32-bitars ARM har rätt komplicerade instruktioner (som dock aldrig tar RAM som operand) samtidigt som >99 % av de instruktioner som faktiskt används idag i ett typiskt x86 program är rätt simpla (kompilatorer har aldrig passat CISC speciellt väl).

Edit: exempel på 32-bitars ARM instruktion,

ADDEQ R3, R4, R5 ; om Z-flaggan är satt, utför R3:=R4+R5, annars gör ingenting

Just att låta instruktioner bero på flaggor på en modern superskalär CPU är rätt mycket som att skriva multitrådade applikationer och hålla information i delade globala variabler. Inget bra recept för hög effektivitet (och väldigt lätt att skjuta sig i foten).

RISC-V och även 64-bitars ARM är betydligt enklare, de stödjer inte saker som exemplet ovan. Man ser på ARM att det är i samband med att man släpper 32-bitars stödet som IPC kan skruvas upp rejält, förbi vad AMD/Intel är kapabla till på deras x86 (det trots att AMD/Intel använder långt fler transistorer än vad man gör i de bäst presterande ARM:arna).

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Lyxfällan 🎮

@anon162230: som artikeln beskriver är den tänkt att vara ett öppet alternativ för processorer tänkt att användas i säkerhetsrelaterade tillämpningar. Den är inte tänkt att användas i konsumentinriktade tillämpningar, och det är dessutom ett gräsrotsfinansierat projekt med för sammanhanget blygsam budget på 250 000 USD. Det ska låta några ingenjörer jobba på att förhoppningsvis få fram en öppen processor under ett års tid. Att det inte är ett projekt från en av de stora drakarna syns i att de tänkt använda 28 nanometers tillverkningsprocess, medan majoriteten av ARM-aktörerna är nere på 7 nm och sniffar på 5 nm.

Men, det anmärkningsvärda med det här projektet är inte de tekniska specifikationerna, utan vilken potential det har för marknaden. Om projektet blir lyckat och processorn börjar användas kan det leda till att fler företag utvecklar egna processorer baserade på RISC-V (kanske kombinerat med FPGA:s, vilket är en spännande tanke), och då skulle marknaden få ett tredje alternativ till X86 och ARM (om än ett betydligt mindre alternativ marknadsmässigt). På sikt kan lågenergi-SoC:s för mobila enheter utvecklas om allt går väl, och konkurrens är aldrig fel på marknaden.

Men som sagt, det här är bara en hypotetisk potential, projektet ska få fram en processor som ska finnas tillgänglig ett tag innan det går att uttala sig om vilken effekt det faktiskt får.

Visa signatur

"We're with the press, hired geeks!"
Raoul Duke, Fear n' Loathing in Las Vegas

Permalänk
Medlem

Detta är ju riktigt spännande saker för de insatta!
En öppen arkitektur vore ju drömmen i rätt riktning för inte minst IoT då utvecklingen inte lägre blir exklusiv och föremål för tveksamma, statliga påtryckningar bakom kulisserna i samma utsträckning.

Naturligtvis kommer konsumenter inte att råka ut för produkter som baseras på RISC-V arkitekturen än på många år, om ens alls, för om det blir någon succée återstår att se.

Min gissning är att om tiden för RISC-V väl kommer, så vet ungefär lika många om att de kör RISC-V som dem som känner till att de kör någon form av Linux i minst en produkt som de använder sig av i dagsläget.

Faller det väl ut finns dock möjligheten att utvecklingen kan gå fort framåt, dvs. om många företag ställer sig bakom ett sådant initiativ efter sårbarheter som Meltdown/Spectre/Zombie m.fl.

Visa signatur

Tower: ace Battle IV | CPU AMD Phenom II X2 BE unlocked 4cores@3,2GHz | RAM 8GB DDR2@800MHz | MB ASUS M4A785-M | GFK AMD Radeon HD 6850 1GB | HDD Kingston SSD Now 60GB (/) Seagate 2TB(/home) | OS Ubuntu 20.04 LTS
-Numera titulerad: "dator-hipster" då jag har en AMD GPU och dessutom kör Linux.

Permalänk
Medlem

"Ren" RISC alltså... spännande... men kan den köra Rise of the Tomb Raider på 180 fps eller kommer det att flaska? ;D

Skämt åsido så är det alltid kul med nya initiativ, får se hur många företag som är intresserade.
Arkitekturen måste ju ha nån påtaglig fördel mot vanliga grejer från ex. Intel och AMD för att ha en chans att hugga nån slags marknadsandelar någonstans.

Visa signatur

|[●▪▪●]| #Lekburk#: Ryzen 3700X >-< GB-X570-AE >-< 32GB DDR4 >-< MSI RTX 3070 >-< 970 EVO 1TB SSD>--
--< Arctic Freezer 34 >-< FD Define R4 >-< Seasonic F.+ 650W >-< Acer XF270HUA >-< AOC Q2778VQE >--
#Servering#: Ryzen 1700@3,6GHz >-< Prime X470 Pro >-< 16GB DDR4 >-< GTX 1030 >-< 970 EVO 500GB SSD >--
--< Stockkylare >-< Antec P182 >-< Silver Power 600W >-< Samsung 245T |[●▪▪●]|

Permalänk
Medlem

Huawei lär ha en hel del folk som jobbar med riscV just nu...

Permalänk
Medlem

Coolt.
Innebär det att man kan tex tänka sig sådana som ansvariga för kommunikation, kryptering etc? Eller att man har en separat dator som mer säkra grejer ligger på?

Skickades från m.sweclockers.com

Visa signatur

Laptop: HP ZBook 15.
WS : i9-9900K, Asus Prime-A, 24 GB ram @3600 MHz, Qaudro K4000, 2 TB SSD + blandade HDD.

Permalänk
Medlem
Skrivet av S-FighterPilot:

Fast Intel använder väl en kombination av CISC och RISC? Annars måste jag ta ett snack med min professor på skolan XD

Definitionerna av RISC och CISC är rätt flytande, och egentligen är skillnaden mellan dem ganska akademisk och väldigt oviktig nuförtiden.
instruktionsuppsättningen för x86 är väldigt mycket CISC, medan själva implementationen använder väldigt mycker idéer från RISC.

RISC/CISC syftar egentligen på hur instruktionsuppsättningen är designad, men som Intel m.fl. har visat så går det att få precis lika bra prestanda idag med CISC instruktioner som med RISC - det tar något fler transisitorer, men det är en droppe i havet för dagens processorer.

Det är med andra ord inte meningsfullt att lägga någon tankemöda på att klassificera processorer som CISC eller RISC nuförtiden.

Permalänk
Avstängd

Smart av EU att finansiera en RISC-V processor!
Nu när det pratas mycket om samhällskritisk informationsinfrastruktur, 5G och att det råder tveksamheter kring Huawei så borde EU ta fram en RISC-V processor och använda den i IT-infrastruktur.

Huawei har sett att dom kan förlora sin ARM licens, så dom bör göra sig av med det beroendet och satsa på RISC-V istället.

Ericsson, Cisco och Samsung borde bygga en öppen router byggd kring RISC-V som dom visar med öppna kort så folk kan se att dom är att lita på, om dom vill att man ska köpa från dom istället för Huawei.

Permalänk
Lyxfällan 🎮

Och här har jag väntat hela kvällen på att någon ska dra "om den är så säker borde den väl vara RISC-fri".

Visa signatur

"We're with the press, hired geeks!"
Raoul Duke, Fear n' Loathing in Las Vegas

Permalänk
Skrivet av loevet:

@S-FighterPilot: det stämmer. Den ursprungliga X86-uppsättningen var renodlad CISC, medan senare designer implementerade den i instruktionsuppsättningar som ligger närmare RISC. De är fortfarande mer komplexa än RISC, jämfört med exempelvis ARM-uppsättningarna, men det är helt riktigt att de inte är renodlade CISC-designer numera.

Skrivet av Yoshman:

"av typen RV64GC". Kanske behöver avkodas lite..

  • RV: RISC V

  • 64: 64-bitars stöd

  • G: stöder extensioner som "vanliga" program behöver, d.v.s. heltalsoperationer, 32-bitars flyttal (C "float"), 64-bitars flytta (C "double") samt atomära operationer (som behövs om man ska kunna synkronisera data mellan flera trådar). G=general

  • C: komprimerade instruktioner. Alla instruktioner är 4-bytes i normalfallet, med denna utökning är många av de mest använda bara 2 bytes -> bättre cache-utnyttjande. C=compressed.

Detta sista är något 32-bitars ARM har, men 64-bitars ARM valde att inte har stödja för att göra "front-end" enklare. Blir ska bli kul att se vem som gjort rätt val i slutändan!

Just grejen med att dela in instruktioner i klasser där varje implementation kan välja olika klasser beroende på typ av marknad man riktar in sig på är något som särskiljer RISC V från ARM (egentligen från allt).

ARM har t.ex. ARMv7M, ARMV7A, ARMv8A och ARMv8.2A. M=mikrokontroller, A=applikation. 8.2A stödjer i praktiken allt som 7A och 8A innehåller. Lägre granulraritet, men också färre potentiella möjligheter till att marknaden splittras p.g.a. att man implementerar olika delmängder.

I praktiken verkar RV64G vara ett minikrav för en 64-bitar CPU för "normal" OS som Linux. Nedåt lär vi förhoppningsvis bara få se RV32E (E=embedded, hälften så många register och bara heltalsinstruktioner), det för mikrokontrollers och liknande. Linux lär nog inte köras på en RV32E, men tvärsäker kan man aldrig vara...

Man måste skilja på instruktionsuppsättning och mikroarkitektur.

Alla moderna CPUer utanför mikrokontrollers har idag en RISC-lik mikroarkitektur, även x86. Tittar man på AVX (VEX-encoding) är även instruktionerna rätt mycket RISC.

Den relevanta enda relevanta distinktion man kan göra idag är huruvida det är en strikt "load/store arkitektur" eller ej. D.v.s. kan aritmetiska operationer enbart utföras mot register (som är fallet för RISC-V, ARM, PowerPC etc) eller kan det också utföras direkt mot minne (som i fallet för x86).

För den gamla definitionen om "enbart enkla instruktioner i RISC" stämmer rätt dåligt för t.ex. ARM. Framförallt 32-bitars ARM har rätt komplicerade instruktioner (som dock aldrig tar RAM som operand) samtidigt som >99 % av de instruktioner som faktiskt används idag i ett typiskt x86 program är rätt simpla (kompilatorer har aldrig passat CISC speciellt väl).

Edit: exempel på 32-bitars ARM instruktion,

ADDEQ R3, R4, R5 ; om Z-flaggan är satt, utför R3:=R4+R5, annars gör ingenting

Just att låta instruktioner bero på flaggor på en modern superskalär CPU är rätt mycket som att skriva multitrådade applikationer och hålla information i delade globala variabler. Inget bra recept för hög effektivitet (och väldigt lätt att skjuta sig i foten).

RISC-V och även 64-bitars ARM är betydligt enklare, de stödjer inte saker som exemplet ovan. Man ser på ARM att det är i samband med att man släpper 32-bitars stödet som IPC kan skruvas upp rejält, förbi vad AMD/Intel är kapabla till på deras x86 (det trots att AMD/Intel använder långt fler transistorer än vad man gör i de bäst presterande ARM:arna).

Skrivet av Erik_T:

Definitionerna av RISC och CISC är rätt flytande, och egentligen är skillnaden mellan dem ganska akademisk och väldigt oviktig nuförtiden.
instruktionsuppsättningen för x86 är väldigt mycket CISC, medan själva implementationen använder väldigt mycker idéer från RISC.

RISC/CISC syftar egentligen på hur instruktionsuppsättningen är designad, men som Intel m.fl. har visat så går det att få precis lika bra prestanda idag med CISC instruktioner som med RISC - det tar något fler transisitorer, men det är en droppe i havet för dagens processorer.

Det är med andra ord inte meningsfullt att lägga någon tankemöda på att klassificera processorer som CISC eller RISC nuförtiden.

Jo men då stämmer det ju man har blivit lärd i alla fall. Precis vad jag kommer ihåg från datorsystemtekniken CISC->front end RISC -> back end.

@Yoshman
Jo men mycket av det du skriver känner jag igen en del från en annan kurs. Självklart är det skillnad på arkitektur och instruktionsuppsättning.

@Erik_T
Jo men så är det väl lite. Det är mest att det satt fastnaglat någonstans i bakhuvudet om skillnaden mellan de två.

Visa signatur

Nuvarande rigg: CPU: AMD R7 3700X, RAM: G.Skill Flare X, GPU: EVGA 1080Ti FTW3, Moderkort: Gigabyte GA-AX370-Gaming K7 (F51g), HDD: Samsung 840 SSD Pro Basic, WD Black Caviar 1TB SATA II, CPU-kylare: Corsair H115i (Noctua NF-A14), Chassi: Fractal Design R5, PSU: Seasonic Prime GX 1000

Permalänk
Medlem
Skrivet av loevet:

Och här har jag väntat hela kvällen på att någon ska dra "om den är så säker borde den väl vara RISC-fri".

Visa signatur

Core i7 7700K | Titan X (Pascal) | MSI 270I Gaming Pro Carbon | 32 GiB Corsair Vengeance LPX @3000MHz | Samsung 960 EVO 1TB

Permalänk
Avstängd

Var inte Motorolas gamla CPUer RISC-baserade? Jag menar väldigt gamla, power-pc processorer och dom före power-pc?
Har 2 gamla mac/apple burkar i skrubben, dom var väldigt före sin tid.

Visa signatur

ASUS Prime B350 Plus, AMD Ryzen 5 1600X, Sapphire R9 390 8GB, 16GB Gskill Flare X 3200
Används för korsord online, och harpan.

Permalänk
Medlem

Had to be done

Skickades från m.sweclockers.com

Visa signatur

"One is always considered mad, when one discovers something that others cannot grasp."
- Ed Wood

Permalänk
Medlem
Skrivet av patteSatan:

Var inte Motorolas gamla CPUer RISC-baserade? Jag menar väldigt gamla, power-pc processorer och dom före power-pc?
Har 2 gamla mac/apple burkar i skrubben, dom var väldigt före sin tid.

PowerPC var väl RISC, de tidigare processorerna (typ 68k, satt i Amiga mm) var väl CISC. Vill minnas att det var en del diskussioner kring ämnet på den tiden. 🙂

Skickades från m.sweclockers.com

Visa signatur

-- FubbHead

Permalänk
Avstängd

@FubbHead:
Är det inte tvärtom? Jag har en skördetröska, en gammal Quadra970 server, med ett instickskort som har en powerpc cpu..?
Ett skrivbord hög server, som , tyvärr, grannarna klagade på när den kördes igång....
??

Visa signatur

ASUS Prime B350 Plus, AMD Ryzen 5 1600X, Sapphire R9 390 8GB, 16GB Gskill Flare X 3200
Används för korsord online, och harpan.

Permalänk
Medlem

Lara Croft och Sherlock Holmes pratar teknik.

Ska dock bli intressant och se ur Risc-V utvecklar sig i framöver.

Visa signatur

Rota3: Ryzen 5600 - 32GB - Radeon RX 7600 - Kingston NV200 2TB - Fractal Design R3 - EVGA Supernova 750W

Permalänk
Medlem
Skrivet av FubbHead:

PowerPC var väl RISC, de tidigare processorerna (typ 68k, satt i Amiga mm) var väl CISC. Vill minnas att det var en del diskussioner kring ämnet på den tiden. 🙂

POWER/PowerPC är en RISC-arkitektur ja.

PowerPC utvecklades ur IBM's POWER-arkitektur tillsammans med Motorola, som bidrog med patent och lärdomar från sin (dock misslyckade) 88000-arkitektur. PowerPC fick först sin egen ISA som var en utökning av POWER's.
Men IBM slutade aldrig utveckla POWER vid sidan om. När Motorola drog sig ur samarbetet så slog IBM ihop POWER och PowerPC igen till en enda arkitektur: och man kan säga att skillnaden blev mest en fråga om varumärke: alla processorer kan köra PowerPC-instruktioner.
Förutom Macintosh fanns "PowerPC"-processorer i både Playstation 3, XBox 360 och Nintendo Game Cube, Wii och Wii U.
IBM har fortsatt att utveckla och sälja kraftfulla processorer under varumärket "POWER" som mäter sig mycket väl med Xeon och Epyc. De sitter mest i servrar som används bl.a. mycket inom banksektorn.

Visa signatur

För övrigt anser jag att tobak ska förbjudas.

Permalänk
Medlem

Ska bli kul att se vad för slags RaspberryPi / arduino byggen det kan bli med det här.

Permalänk
Medlem

Kommer att bli spännande det här

SiFive har ett par brädor med RISC-V.
https://www.sifive.com/

MIPS öppnar sin källkod.
https://www.mipsopen.com/press/wave-computing-releases-first-...

Visa signatur

CPU: Ryzen 3600 | RAM: 16GB (2x8GB) Crucial | MB: Gigabyte B550M AORUS PRO-P | GPU: RX 6700XT MERC 319 | Chassi: FD Arc mini R2 | PSU: CM700V | SSD: Gigabyte NVMe 1TB | Monitor: LG 27GN800 | Input: CM Quick Fire TK, Roccat Kone Pure Optical, Steam Controller | OS: Garuda Linux

Steam Deck har tagit över datorn :)