{"title":"基于freertos实时系统的全硬件实现","authors":"Wakako Nakano, Yukino Shinohara, N. Ishiura","doi":"10.1109/TENCON54134.2021.9707328","DOIUrl":null,"url":null,"abstract":"As higher and higher functionalities are being im-plemented in embedded systems, it is becoming difficult to ensure their real-time performance. As one approach to enhancing response performance of RTOS-based systems, Oosako proposed a method for implementing both kernel objects and RTOS functionalities as hardware utilizing high-level synthesis, where TOP-PERS/ASP3 was assumed as an RTOS. This paper extends this method to deal with systems based on FreeRTOS. In FreeRTOS, tasks can be generated either statically or dynamically, whose control data are managed in linked lists. We place restrictions that all the tasks are generated before scheduler starts so that we can keep the task control data in an array. Software timers are dealt with as tasks that have their own timers. We also present methods to implement dispatch disabling for mutual exclusion and a data queue for asynchronous data communication. We have implemented a hardware module from a reduced version of a demo program main_full.c and TimerDemo.c bundled with FreeRTOS, which took less than 300 ns and 700 ns for task control and data queue operations, respectively.","PeriodicalId":405859,"journal":{"name":"TENCON 2021 - 2021 IEEE Region 10 Conference (TENCON)","volume":"238 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-12-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":"{\"title\":\"Full Hardware Implementation of FreeRTOS-Based Real-Time Systems\",\"authors\":\"Wakako Nakano, Yukino Shinohara, N. Ishiura\",\"doi\":\"10.1109/TENCON54134.2021.9707328\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"As higher and higher functionalities are being im-plemented in embedded systems, it is becoming difficult to ensure their real-time performance. As one approach to enhancing response performance of RTOS-based systems, Oosako proposed a method for implementing both kernel objects and RTOS functionalities as hardware utilizing high-level synthesis, where TOP-PERS/ASP3 was assumed as an RTOS. This paper extends this method to deal with systems based on FreeRTOS. In FreeRTOS, tasks can be generated either statically or dynamically, whose control data are managed in linked lists. We place restrictions that all the tasks are generated before scheduler starts so that we can keep the task control data in an array. Software timers are dealt with as tasks that have their own timers. We also present methods to implement dispatch disabling for mutual exclusion and a data queue for asynchronous data communication. We have implemented a hardware module from a reduced version of a demo program main_full.c and TimerDemo.c bundled with FreeRTOS, which took less than 300 ns and 700 ns for task control and data queue operations, respectively.\",\"PeriodicalId\":405859,\"journal\":{\"name\":\"TENCON 2021 - 2021 IEEE Region 10 Conference (TENCON)\",\"volume\":\"238 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2021-12-07\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"5\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"TENCON 2021 - 2021 IEEE Region 10 Conference (TENCON)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/TENCON54134.2021.9707328\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"TENCON 2021 - 2021 IEEE Region 10 Conference (TENCON)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/TENCON54134.2021.9707328","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Full Hardware Implementation of FreeRTOS-Based Real-Time Systems
As higher and higher functionalities are being im-plemented in embedded systems, it is becoming difficult to ensure their real-time performance. As one approach to enhancing response performance of RTOS-based systems, Oosako proposed a method for implementing both kernel objects and RTOS functionalities as hardware utilizing high-level synthesis, where TOP-PERS/ASP3 was assumed as an RTOS. This paper extends this method to deal with systems based on FreeRTOS. In FreeRTOS, tasks can be generated either statically or dynamically, whose control data are managed in linked lists. We place restrictions that all the tasks are generated before scheduler starts so that we can keep the task control data in an array. Software timers are dealt with as tasks that have their own timers. We also present methods to implement dispatch disabling for mutual exclusion and a data queue for asynchronous data communication. We have implemented a hardware module from a reduced version of a demo program main_full.c and TimerDemo.c bundled with FreeRTOS, which took less than 300 ns and 700 ns for task control and data queue operations, respectively.