OpenRISC: et uafsluttet projekt

Fora ASTRO-FORUM OFF TOPIC OpenRISC: et uafsluttet projekt

Tagget: 

  • Dette emne har 0 svar og 1 stemme, og blev senest opdateret for 4 år, 1 måned siden af Bjarne. This post has been viewed 573 times
Viser 1 indlæg (af 1 i alt)
  • Forfatter
    Indlæg
  • #318959

    Bjarne
    Moderator
    • Super Nova

    OpenRISC Project Overview

    Welcome to the project overview of the OpenRISC project. The major goal of the project it to create a free and open processor for embedded systems. This includes:

    • a free and open RISC instruction set architecture with DSP features
    • a set of free, open source implementations of the architecture
    • a complete set of free, open source software development tools, libraries, operating systems and applications
    • a variety of system-on-chip and system simulators

    The project is driven by a very active community and has a long history. This unfortunately lead to scattered and partly outdated information. The goal of this page is to provide an overview over active parts of the project and the current development to ease the entry for newcomers or people seeking basic information.

    System-on-Chip

    While a processor core is still the heart of every system, the peripherals, memory etc. are of course equally important. There are a number of system-on-chip available that you can use to perform RTL simulations, SystemC simulations or perform an FPGA synthesis of an OpenRISC-powered entire system:

    • fusesoc is a new SoC generator that not only supports OpenRISC. It also manages the available peripheral cores and allows you to easily configure and generate your system-on-chip.
    • minsoc is a minimal OpenRISC-based system-on-chip, that is easy to configure and implement, but still uses the OR1200 processor implementation.
    • OpTiMSoC is a flexible multicore system-on-chip that is based on a network-on-chip and connects a configurable number of OpenRISC (mor1kx) processors to arbitrarily large platforms.
    • MiSoC is a SoC generator using the Python based Migen which can use the mor1k processor. Both high performance and optimized for small FPGA footprint, it supports a large number of development boards out the box.

    Operating Systems

    If you want to run an operating system on your OpenRISC you have a few options:

    • Linux has been ported and is now upstream in the standard Linux repositories (upstream is the term that denotes that you submitted your changes to an open source project and they have been accepted and are now part of this software)
    • RTEMS has been ported during a Google Summer of Code project and is also upstream.

    Hvorfor er RISC processorer interessante?

    microcode – Intel / AMD CPU Microcode​
    Since PentiumPro, Intel CPU are made of a RISC chip and of a microcode whose purpose is to decompose “old” ia32 instruction into new risc ones. P6 familly is concerned: PPro, PII, Celeron, PIII, Celeron2. Recent kernels have the ability to update this microcode.
    The microcode update is volatile and needs to be uploaded on each system boot. I.e. it doesn’t reflash your cpu permanently. Reboot and it reverts back to the old microcode.
    This package contains microcode for Intel and Amd CPUs.

    Denne tekst er taget fra Thomas Backlunds (tmb) pakke med mikrokode til Mageia 6. Brugerens assembler kode udføres ikke direkte. Den oversættes i stedet via en skjult RISC-kode til de egentlige instruktioner. Årsagen er, at de moderne processorer er meget hurtigere end RAM-lageret, så man forsøger at udnytte spildtiden, mens processoren venter på lager-enhederne. OpenRISC vil åbne denne skjulte RISC-kode for alle ved at designe en åben processor helt fra grunden.

    Strengt taget vedrører OpenRISC kun embedded systems, altså ikke laptop eller desktop systems.

    Lukkede kasser er usikre

    Poul-Henning Kamp

    Intel har indrømmet tre nye sikkerhedshuller i deres silicium og der er nok ingen der bliver overraskede hvis jeg påstår at der er flere på vej allerede.

    Problemet med halvlederne er det præcis samme som for programmerne: Lukkede kasser er per definition usikre for alle andre end den der lukkede dem.

    De første microprocessorer brugte et par tusinde transistorer og det tog ikke mere end et par dage med et mikroskop at skaffe sig et rigtig godt indblik i hvad de indeholdt.

    Den første commodity CPU med over 20 milliarder transistorer er blevet “taped out”[1] og der er design i støbeskeen med 10% flere allerede.

    Den centrale performance begrænsning er idag flaskehalsen imellem RAM og CPU hvilket er den direkte årsag til Spectre, Meltdown og alle deres efterfølgere, både de kendte og de endnu ikke afslørede sikkerhedshuller.

    Sikkerhedshullerne opstår fordi det tager en evighed, set fra CPU’ens side, at hente noget i RAM og derfor har CPU designerne introduceret stadig mere spekulative “tricks” for at prøve at fremme arbejdsbyrden mens der ventes på svaret fra RAM.

    Præcis hvor mange transistorer der bruges på disse optimeringer ved kun Intel og AMD, men det ligger i selve naturen af det de bruges til, at det er noget af det mest umulige at gennemskue med et kig i mikroskopet.

    Det med mikroskopet er naturligvis en ren vittighed, 20 millarder transistorer, gemt under 30 lag metal er der ingen der laver reverse-engineering på, hverken nu eller senere.

    20 milliarder er faktisk rigtig mange transistorer, nok til at man kan gemme en i486 der kører Minix3 med fuld netværksstak og webserver i et hjørne, uden at nogen opdager det.

    Den slags obligatorisk ekstraudstyr er den anden måde CPU fabrikanterne prøver at gøre nye produkter attraktive.

    Under obskure new-speak akronymer som “Active Management Technology”, “Intel Security Assist”, “Software Guard Extensions” gemmer der sig millioner af transistorer i ekstra-udstyr, der fundamentalt set alle tjener andre herrer end han der købte og betalte CPU’en.

    Intentionerne bag dette ekstraudstyr er god nok, man skal kunne brick’e en stjålen laptop, man skal kunne rode med persondata på en cloud-computers uden at de lækker ud over det hele osv. osv. osv.

    Men implementeringerne er hemmelige, fyldt med fejl og indtil det modsatte er bevist: Bevidst placerede bagdøre.

    Intel og AMD har så mange chip-designere, at enhver efterretningstjeneste der ikke er inkompetent, har mindst en håndfuld af dem i deres sold, dels for at skaffe insider viden om hvad der egentlig er på chippen, men utvivlsomt også for at gøre det nemmere at få adgang til computere baseret på de pågældende chips.

    Det gode ved kompetente efterretningstjenester er at de altid forsøger at bruge så lidt krudt som muligt, for ikke at afsløre hvad de virkelig kan. To flotte eksempler er ECHELON der viste sig at være totalovervågning af al teletrafik på hele kloden, inklusive aflytning af undersøiske fiberkabler og STUXNET virusen der blev brugt til at sabotere Irans atomprogram.

    At der også er god kontakt med NSA det ledelsesmæssige plan er indlysende for enhver der gider kigge efter: Hverken Intel eller AMD fik den helt indlysende ide at bruge en enkelt million transistorer på at lave CPU support for AES kryptering, før Taiwanesiske VIA gjorde det. Endnu sjovere: Da de så gjorde det, lignede det mest af alt at det bare handlede om at enable noget der allerede var i chippen, noget som kunder med adgang til en anden “microcode firmware” åbenbart havde haft adgang til i omkring 10 år.

    Rusland, Kina, Israel, USA og et antal kommercielle aktører har forlængst indset problemet og alle har udviklet private chip-designs til anvendelser hvor man ikke kan stole på Intels og AMDs lukkede kasser.

    Men den dag en facistisk regering, en terrorist, en mafioso eller en IT-liberalist med nynazistiske tendenser finder en læk i en af Intel eller AMDs mange lukkede kasser, kommer der helt andre boller på suppen.

    Det er ikke længere nok at insistere, som alle kompetente IT-sikkerhedsdesignere har gjort siden Ken Olsons dage, at Closed Source ikke er til at stole på, vi må også dømme “Closed Silicon” ude på samme vis.

    phk

    [1] I gamle dage lavede man maskerne til halvledere manuelt med dybrød “rubylith” klisterfolie og når maskerne var færdige sagde man at chippen var “taped out”, udtrykket hænger ved, selvom der idag bruges computerstyret elektronstrålelitografi til at lave maskerne.

    The open source digital design conference

    ORConf 2018 will be held from September 21st to 23rd in Gdansk, Poland, at the Gdansk University of Technology

     

Viser 1 indlæg (af 1 i alt)
  • Du skal være logget ind for at svare på dette indlæg.