‘Embedded’ simulatietool beschrijft ook fysische processen

In zijn proefschrift ‘Functional model-based design of embedded systems with UniTi’, waarop hij vrijdag 2 december promoveerde, presenteert Kenneth Rovers een simulatieprogramma waarmee, gebaseerd op enkele krachtige abstractiemechanismen, het gehele systeem (hardware plus software) en de interactie met de fysische processen gemodelleerd kan worden.

Embedded systemen (elektronische systemen die zijn geïntegreerd in gebruiksartikelen met daardoor beperkte middelen zoals ruimte, energie en rekenkracht) worden steeds complexer. Denk bijvoorbeeld aan een mobiele telefoon zoals een iPhone. Tijdens het ontwerpen van een complex systeem is het belangrijk om dat systeem alvast te kunnen simuleren. Daarvoor zijn professionele pakketten op de markt. Deze pakketten kunnen echter niet goed systemen simuleren die interactie hebben met fysische processen, zoals bijvoorbeeld radiocommunicatie, mobiele telefoon communicatie of radiotelescopen voor sterrenkundige observaties. De simulatie is óf onnauwkeurig, óf zo tijdrovend dat het in de praktijk niet meer doenlijk is. Dit beperkt het ontwerp van toekomstige systemen.

Het fundamentele probleem is dat die pakketten de verschillende interpretaties van tijd (continue versus discrete interpretatie) niet kunnen integreren. Naast de interactie tussen een systeem en de fysische processen vormt ook de modelering van het systeem op zich nog steeds een probleem. Een systeem bestaat uit verschillende delen, bijvoorbeeld hardware en software, en deze worden vaak apart van elkaar gemodelleerd en gesimuleerd.

 Simulatie omvat ook fysische processen

In het nieuwe simulatieprogramma van Rovers worden onderdelen van het model op een vergelijkbare manier als voorheen beschreven, maar achter de schermen wordt een nieuwe manier gebruikt om de wiskundige vergelijkingen van het model op te lossen. Daarbij wordt een uiteindelijke functie gecreëerd die de fysische processen beschrijft, inclusief de verschillende interpretaties van tijd. In wezen worden de vergelijkingen van het model gecombineerd in plaats van de uitkomsten van elk onderdeel op zich.

Opdelen over rekeneenheden

Dit simulatieprogramma ondersteunt ook een ontwerpaanpak waarbij alle onderdelen, van bijvoorbeeld de volgende iPhone, in één model kunnen worden ontwikkeld en gesimuleerd. Deze aanpak is vooral geschikt voor systemen waar het werk over meerdere rekeneenheden of processoren verdeeld wordt, zoals steeds gebruikelijker is.  Deze rekeneenheden moeten gezamenlijk als eenheid het werk verdelen en de resultaten uitwisselen. Het is echter een groot probleem in de huidige technologiesector, hoe dit effectief voor elkaar te krijgen. Ook hier zijn de genoemde abstractiemechanismen van belang; door de wiskundige vergelijkingen te behouden kunnen we deze door het toepassen van wiskunderegels, zoals bijvoorbeeld distributiviteit, makkelijker opdelen over de verschillende rekeneenheden.

Deze aanpak is UniTi genoemd; ‘Uni’ slaat op ‘unified’ waarmee de eenheid en integratie van de verschillende onderdelen van een model wordt aangeduid, en ‘Ti’ slaat op ‘time’ waarmee de focus op de verschillende interpretaties van tijd wordt benadrukt.

Phased-array systeem 

Als voorbeeldsysteem is in samenwerking met Thales Nederland een zogenoemd phased array systeem gemodelleerd. In zo’n systeem werken diverse (van een paar tot duizenden) antennes samen om een richtingsgevoelige zender (of ontvanger) te creëren, zodat de energie maar in één richting wordt gestuurd. Daarom wordt het signaal alleen maar in de richting van de ontvanger gestuurd en niet alle kanten op, zodat zo weinig mogelijk storing veroorzaakt wordt voor anderen.  Dit gebeurt op basis van interferentie van de verschillende antennesignalen. Elk antennesignaal is iets vertraagd ten opzichte van de rest. Door deze elektronisch te corrigeren kan men de richting van de antenne sturen zonder de antenna zelf (mechanisch) te draaien. In dit soort systemen komt de ondersteuning voor tijd in UniTi bij uitstek tot zijn recht. Vanuit elke antenne gezien heeft het verstuurde signaal een iets andere tijd, tijd is hier relatief. Ook leveren alle antennasignalen zoveel rekenwerk op dat het noodzakelijk is om meer processoren te gebruiken en het werk netjes te verdelen.

Veelbelovend 

De resultaten die deze nieuwe aanpak laat zien zijn veelbelovend. In het vervolg van dit onderzoek wil men nu verder kijken waar de beperkingen liggen, of we bepaalde systemen niet kunnen simuleren. Ook lijke er mogelijkheden om vanuit het (simulatie-) model meteen een chip te generen die deze functionaliteit implementeert.

Kenneth Rovers heeft dit onderzoek uitgevoerd bij de Computer Architecture for Embedded Systems groep, onderdeel van de Centre for Telematics and Information Technology aan de Universiteit Twente.