Return to search

μSPL - Proprietary Graphics Language Transpiler : Asserting translation correctness using runtime verification / μSPL - Proprietär grafikspråkstranspilator : Hävdning av översättningskorrekthet med hjälp av körtidsverifiering

The Swedish Armed Forces are currently considering extending the operational life of the Saab JAS 39 Gripen C/D multirole fighter aircraft by an additional 10 to 20 years. This has resulted in a need to upgrade many of the hardware components originally developed in the late 1980s and early 1990s. These upgrades include the Application Specific Integrated Circuits (ASICs) used to generate graphics in the aircraft’s Cockpit Display System (CDS), made programmable through the Symbol Programming Language (SPL). SPL is a proprietary Domain Specific Language (DSL) developed specifically to be used with the custom hardware in the Gripen’s CDS. An upgrade of the underlying hardware would necessitate migrating the old SPL software to some other format suitable for modern hardware. Large parts of this process could be automated with the help of a source-to-source compiler, i.e., a transpiler. In this thesis, we present a translation-verifying transpiler for a subset of SPL, dubbed μSPL, that outputs equivalent OpenGL/C++ programs. Verification is done at runtime against a reference program execution trace produced by the transpiler by means of symbolic execution in the operational semantics of μSPL. An observational study was made to evaluate the solution and the soundness of the μSPL semantics. From the results of the observational evaluation, we find that the chosen method for translation verification is contextually suitable, albeit with potential for improvement in the details of the implementation. / Försvarsmakten överväger i skrivande stund att förlänga tjänsteperioden för enhetflygplanet Saab JAS 39 Gripen C/D med ytterligare 10 till 20 år. Detta har resulterat i ett behov av att uppgradera många av de hårdvarukomponenter som ursprungligen togs fram för Gripenprojektet under sena 1980-talet och tidiga 1990-talet. Dessa uppgraderingar inkluderar applikationsspecifika integrerade kretsar (ASIC:ar) som används för att driva och generera symbolik för presentationssystemet Elektroniskt Presentationssystem 17 (EP-17) i cockpit på Gripen C/D. Dessa ASIC:ar är programmerbara med det egenutvecklade grafikprogramspråket SPL. En uppgradering av den underliggande hårdvaran skulle nödvändiggöra en migration av den SPL-mjukvara som redan är skriven till något format som är lämpligt för modern hårdvara. Stora delar av den här processen skulle kunna automatiseras med en automatisk översättare; en så kallad transpilator. I den här avhandlingen presenterar vi en översättningsverifierande transpilator för en delmängd av SPL, kallad μSPL, som översätter till ekvivalenta OpenGL/C++ program. Verifiering görs under körning mot ett exekveringsspår (execution trace) som producerats av transpilatorn parallellt med översättningen med hjälp av symbolisk exekvering i den operationella semantiken för μSPL. En observationell studie görs för att utvärdera lösningen och sundheten hos den använda μSPL-semantiken. Från den observationella studien framgår det att den föreslagna metoden för översättningsverifikation är lämplig i sammanhanget, med utrymme för förbättring i implementationsdetaljerna.

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-307621
Date January 2021
CreatorsAndersson Glass, Henrik
PublisherKTH, Skolan för elektroteknik och datavetenskap (EECS)
Source SetsDiVA Archive at Upsalla University
LanguageEnglish
Detected LanguageSwedish
TypeStudent thesis, info:eu-repo/semantics/bachelorThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess
RelationTRITA-EECS-EX ; 2021:872

Page generated in 0.0023 seconds