Gerard Rauwerda is CTO en medeoprichter van Recore Systems. Hij heeft tien jaar ervaring in herconfigureerbare-technologieontwikkeling voor digitale signaalverwerkingssystemen met toepassingen in consumentenelektronica en ruimtevaart. Inès Nijman is verantwoordelijk voor marketingcommunicatie bij Recore Systems. Ze heeft vijftien jaar werkervaring op het raakvlak van (medische) techniek en marketing.

20 November 2012

Op de Esa DSP Day in Noordwijk eind augustus presenteerde Recore Systems een prototype van een herconfigureerbare multicore DSP voor ruimtevaarttoepassingen aan de kopstukken van de ruimtevaartindustrie. Het zogeheten MPPB-systeem koppelt een vertrouwde Leon2-processor aan meerdere DSP-cores en laat zien dat herconfigureerbare technologieën en netwerk-op-chip-architecturen een circuit bestand kunnen maken tegen de effecten van ruimtestraling.

De hoeveelheden data die de instrumenten aan boord van satellieten verzamelen voor wetenschappelijke of aardobservatiemissies nemen hand over hand toe met elke generatie. De communicatiebandbreedte van een ruimtevaartuig naar de aarde blijft echter min of meer hetzelfde. Daarom zijn er steeds meer en krachtigere DSP‘s aan het werk om de data alvast aan boord te verwerken, zodat er minder naar aarde hoeft te worden verstuurd.

In de ruimte komen echter van tijd tot tijd extreem hoge stralingsniveaus voor, wat ’omvallende‘ bits veroorzaakt, fouten geeft tijdens dataverwerking en zelfs onderdelen van de chip kan aantasten. Een processor kan daarom niet zomaar de ruimte in. Eerst moet er een ’stralingsharde‘ Asic worden gemaakt op basis van de chip. Huidige platforms voor dataverwerking zijn vaak gebaseerd op general-purpose processoren in combinatie met stralingsbestendige (maar stroomvretende) FPGA‘s, of stralingsharde DSP‘s die al generaties meegaan – een nieuwe chip ontwerpen is immers een kostbaar proces. De huidige stralingsbestendige dataprocessor van de Esa ontbeert daarom de rekenkracht die nodig is voor veel toekomstige toepassingen. Deze processor, de TSC21020 van Atmel, is gebaseerd op de ADSP-21020-architectuur van Analog Devices, een ontwerp uit begin jaren negentig van de vorige eeuw. Het ontwerp gaat dus al bijna twee decennia mee.

Recore MPPB architectuur
Het Massively Parallel Processor Breadboarding-systeem is een ontwerp van Recore om DSP‘s voor de ruimtevaart bestand te maken tegen straling. De architectuur koppelt vertrouwde concepten zoals een stralingsharde Leon2-processor en geheugen met foutcorrectie aan nieuwe ideeën zoals meerdere DSP-kernen die elkaars taak kunnen overnemen en een netwerk-op-chip-architectuur.

Er zijn verschillende strategieën om chips fouttolerant te maken. Hardwarematig kunnen er foutcorrectiecodes (zoals Hamming-codes) worden toegevoegd waarmee het systeem de uitgewisselde data controleert en eventueel corrigeert. De hardwarecircuits kunnen ook dubbel (of zelfs drievoudig) worden uitgevoerd, waarbij de resultaten onderling worden vergeleken en fouten weggestemd. Dit kan ook in tijd: een hardwarecircuit voert dan de taak een paar keer achter elkaar uit. Er zijn ook stralingsharde fabricageprocessen, waarbij bijvoorbeeld een epitaxiale laag op het substraat wordt gelegd of het siliciumsubstraat wordt vervangen door een isolator.

Ook de vorm van chipstructuren kan bijdragen aan stralingshardheid. De transistor zelf kan als een zogeheten enclosed layout transistor worden uitgevoerd, waarbij de gate in een ring om de drain of source ligt. Dat zwakt effecten van straling af. Op vergelijkbare manier zijn er stralingsharde lay-outs voor schakelingen. Imec heeft een bibliotheek met digitale standaardcellen aangelegd voor de 0,18-micrometertechnologie van UMC. Dankzij specifieke lay-outs en dubbel uitgevoerde flipflops kan met deze Dare-bibliotheek (Design Against Radiation Effects) een stralingsbestendige chip worden ontworpen die relatief goedkoop is te fabriceren met commercieel beschikbare CMos-processen.

Ook software kan fouten ontdekken en uitfilteren. Voor ruimtetoepassingen gebeurt dit met redundantie op het instructie-, taak- of applicatieniveau.

Oud worden

Een iets andere insteek voor het maken van fouttolerante chips is door herconfigureerbare systemen te gebruiken met meerdere uitwisselbare DSP-kernen. Als onderdeel van Esa‘s zoektocht naar een volgende generatie ruimtevaart-DSP heeft Recore samen met UT-hoogleraar Gerard Smit een prototype ontwikkeld gebaseerd op dit principe, het Massively Parallel Processor Breadboarding-systeem (MPPB). Hiermee is de zin en onzin aan te tonen van concepten voor fouttolerantie met herconfigureerbare componenten en focus aan te brengen op integratie met bewezen concepten. Dit helpt Esa-Estec met de besluitvorming rond de investering in een dure nieuwe Asic.

Recore MPPB prototype
Met een functioneel prototype van MPPB-systeem in FPGA‘s kan de zin en onzin van de aanpak onderzocht worden.

De kern van MPPB is dat het een zelfherstellend systeem is. De basis hiervoor werd gelegd in het vorig jaar afgeronde Crisp-onderzoeksproject. Het systeem beschikt over een mechanisme dat van tijd tot tijd testpakketjes over het on-chip netwerk stuurt. Bij een fout op een verbinding of interface wordt de test via andere paden herhaald om de precieze locatie te bepalen. Ook de DSP-kernen op de chip worden regelmatig getest. De kern wordt hiervoor – terwijl de chip operationeel is – van rekenmodus naar testmodus gezet. Essentieel hierin is de runtime manager, een softwareprogramma dat zorgt voor het verdelen van taken over de beschikbare rekenkernen. Deze manager maakt de cores ook om de beurt vrij voor tests en houdt bij welke verbindingen en componenten defect zijn geraakt, zodat alleen de werkende delen een rekentaak toegewezen krijgen. Mocht blijken dat een geteste DSP-kern permanent foute resultaten teruggeeft, dan schakelt de runtime manager deze voorgoed uit.

Zo kan de processor als geheel betrouwbaar blijven functioneren, ook wanneer onderdelen zijn beschadigd. Het systeem kan daardoor oud worden met behoud van functie in plaats van plotseling te stoppen. Het is een vorm van functionele redundantie zonder extra hardwarecomponenten. Door het gebruik van een runtime manager die flexibel taken kan herverdelen, nieuwe rekentaken kan toekennen aan kernen, de benodigde communicatieverbindingen kan vrijhouden en inschattingen kan maken of een nieuwe taak nog ’past‘, wordt het systeem ook bestand tegen toekomstige veranderingen in standaarden en taken.

Korte lijntjes

Het MPPB-multi-DSP-systeem bestaat uit twee delen: een subsysteem met general-purpose processor en een DSP-subsysteem voor de uitvoering van de dataverwerking. Het systeem past een aantal klassieke technieken toe voor dataredundantie, zoals foutdetectie en -correctie op de geheugens. Voor de communicatie met verafgelegen componenten en geheugens gebruikt MPPB bewezen Spacewire-interfaces die direct met het netwerk-op-chip (NOC) verbonden zijn.

Ook het processorsubsysteem past bewezen ruimtevaartechnologie toe. De processor zelf is gebaseerd op Leon2, een populaire architectuur binnen de ruimtevaart, en de AHB-bus. Watchdog-timers resetten de processor als deze niet reageert.

Het DSP-subsysteem is echter geheel nieuw ontworpen. Als DSP-kernen hebben we twee van onze Xentium-cores toegepast. Cruciaal is de keuze voor een NOC om deze cores, de geheugenelementen en externe interfaces met elkaar te verbinden. Ieder element in het netwerk beschikt over een eigen router, die via een meshnetwerk data uitwisselt met zijn soortgenoten. Dit heeft een aantal voordelen, zowel op het gebied van schaalbaarheid als redundantie.

Een klassieke centrale bus kan de groeiende datastromen van steeds meer cores slecht verwerken en belemmert de schaalbaarheid. Een netwerk-op-chip schaalt mee met het aantal componenten omdat verkeer in het ene deel van het netwerk geen invloed heeft op andere delen. Daarmee biedt een NOC ook voldoende bandbreedte om veel verschillende datastromen van de externe interfaces te verwerken.

In de ruimte speelt energieverbruik een nog grotere rol dan op aarde vanwege de problemen met het afvoeren van warmte in een vacuüm. Dankzij het netwerk kunnen ongebruikte delen van het circuit gemakkelijk worden uitgeschakeld. Samen met een terugschakeling in kloksnelheid beperken we daarmee de stralingswarmte.

De NOC-aanpak maakt ook het ontwerpproces makkelijker. De aantallen processorkernen, geheugenlocaties en externe interfaces zijn met een dergelijke architectuur relatief eenvoudig aan te passen. Daarnaast kunnen de geheugens en externe interfaces dicht bij de cores worden geplaatst. Dat is cruciaal aangezien multicore systemen met veel parallelle rekenkernen alleen goed opereren als de benodigde informatie snel voorhanden is. En de korte lijntjes verkleinen ook de kans dat een bitje tijdens data-uitwisseling omvalt door invallende straling.

Snelheidsreductie

Op dit moment is MPPB een functioneel prototype in FPGA‘s. Dit wordt nu verder uitgewerkt in een stralingsharde siliciumimplementatie met hulp van en Imec en zijn Dare-technologie. Dan zullen de effecten van stralingshardheid zichtbaar worden. Zo wordt het chipoppervlak twee- tot driemaal groter voor dezelfde functionaliteit ten opzichte van een commercieel proces. De foutcorrigerende logica rond geheugenelementen betekent een snelheidsreductie tot vijftig procent, terwijl het benodigde geheugen toeneemt om correctie-informatie te accommoderen. Met een goede stralingsharde bibliotheek zullen de logische componenten op de chip echter weinig last hebben van timingeffecten.

Door de verdergaande miniaturisatie van CMos-procestechnologie wordt fouttolerantie uiteindelijk ook nodig in ’aardse‘ halfgeleidertoepassingen. Kleinere structuren in combinatie met lage voedingsspanningen resulteren in meer dynamische fouten, die vergelijkbaar zijn met stralingseffecten. In verschillende projecten proberen we de kruisbestuiving van fouttolerantie op basis van herconfigureerbare multicoretechnologie te vinden met bijvoorbeeld sensorsystemen en medische toepassingen.

Edited by Pieter Edelman