A real-time kernel offers many advantages when developing safety-critical real-time applications. It allows for a modular software architecture and provides many services to help meet any timing constraints imposed on the application. However, these benefits come at a price. The use of a real-time kernel can introduce both latency and non-determinism into the system, forcing the application designer to account for worst case execution times which might be overly pessimistic in the average case. This thesis presents a hardware accelerated implementation of the widely popular real-time kernel FreeRTOS, using only off-the-shelf hardware components. A set of benchmark tests were also developed to compare FreeRTOS and the suggested hardware accelerated implementation with respect to performance and determinism. By migrating critical parts of FreeRTOS into hardware, we were able to greatly reduce the delays associated with the kernel. Furthermore, constant execution times for all supported kernel API calls were achieved, facilitating accurate timing analysis of any application running on top of the real-time kernel. / Användandet av en realtidskärna vid utveckling av säkerhetskritiska realtidsapplikationer har flera fördelar. Det underlättar konstruktionen av en modulär mjukvaruarkitektur och erbjuder flera mekanismer för att klara de tidsrelaterade krav som ställs på en applikation. En realtidskärna kan emellertid introducera långa och icke-deterministiska responstider, vilket tvingar applikationsdesignern att alltid ta höjd för det teoretiska värstafallet även om detta är överdrivet pessimistisk jämfört med medelfallet. I denna uppsats presenteras en hårdvaruaccelererad implementation av realtidskärnan FreeRTOS, konstruerad med hjälp av kommersiellt tillgängliga hårdvarukomponenter. Utöver detta presenteras även en uppsättning tester för att jämföra FreeRTOS samt dess hårdvaruaccelererade motsvarighet med avseende på prestanda och determinism. Genom att migrera kritiska delar av FreeRTOS till hårdvara kunde de långa responstiderna kraftigt reduceras. Utöver detta blev exekveringstiden helt deterministiskt i den hårdvaruaccelererade implementationen, något som möjliggör en mer exakt tidsanalys.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-191136 |
Date | January 2016 |
Creators | Lövgren, Jonatan |
Publisher | KTH, Skolan för informations- och kommunikationsteknik (ICT) |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | Swedish |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Relation | TRITA-ICT-EX ; 2016:66 |
Page generated in 0.0019 seconds