跳到主要內容

臺灣博碩士論文加值系統

(44.200.94.150) 您好!臺灣時間:2024/10/05 19:48
字體大小: 字級放大   字級縮小   預設字形  
回查詢結果 :::

詳目顯示

: 
twitterline
研究生:劉峰圻
研究生(外文):LIU, FENG-CHI
論文名稱:基於FPGA上CPU0的RTOS 驗證與開發技術
論文名稱(外文):RTOS Verification and Development Techniques on FPGA-Based CPU0
指導教授:袁世一袁世一引用關係
指導教授(外文):YUAN, SHIH-YI
口試委員:陸清達蔡智強
口試委員(外文):LU, CHING-TATSAI, JI-CHIANG
口試日期:2023-05-26
學位類別:碩士
校院名稱:逢甲大學
系所名稱:通訊工程學系
學門:工程學門
學類:電資工程學類
論文種類:學術論文
論文出版年:2023
畢業學年度:111
語文別:中文
論文頁數:78
中文關鍵詞:嵌入式裝置即時作業系統FPGACPU軟硬體整合搶佔式排程
外文關鍵詞:embedded devicesreal-time operating systemFPGACPUintegration of software-hardwarepre-emptive scheduling
相關次數:
  • 被引用被引用:0
  • 點閱點閱:138
  • 評分評分:
  • 下載下載:21
  • 收藏至我的研究室書目清單書目收藏:0
隨著物聯網的快速發展,嵌入式裝置在我們的生活中越來越普及,並且需要執行多種任務。因此,即時作業系統在物聯網系統中扮演著重要的角色,負責協調、分配資源給嵌入式裝置中的任務執行。
在先前的研究中,本實驗室提出了一個FPGA-Based CPU0,使用者可以彈性地修改CPU的架構並燒錄至FPGA開發板中,使得開發板能夠有CPU的行為。同時,開發了一個簡化的作業系統OS216,通過計時器中斷程序定期切換任務,實現搶佔式排程的作業系統。
為了使開發環境更加彈性,本文提出了軟硬體整合的方法,建立一套軟體開發並燒錄至硬體並進行偵錯與驗證。同時,參考現今熱門的即時作業系統FreeRTOS的架構,加強了原本的OS216架構,並新增任務狀態的管理。最終,本研究成功實現了更具即時性的作業系統,在移植過程中也協助硬體的偵錯,使硬體架構更為成熟。

With the rapid development of the Internet of Things (IoT), embedded devices have become increasingly prevalent in our daily lives and are required to perform various tasks. Therefore, real-time operating systems play a crucial role in IoT systems for coordinating and allocating resources for task execution in embedded devices.
In our previous study, we proposed an FPGA-Based CPU(CPU0). CPU0 allows users to flexibly modify the CPU architecture and burn it into an FPGA development board, enabling the board to exhibit CPU behavior. Additionally, we developed a simplified operating system, OS216, which implements pre-emptive scheduling by periodically switching tasks through a timer interrupt.
To enhance the flexibility of the development environment, we propose a method for software-hardware integration, establishing a software development and burning process onto hardware for debugging purposes. Furthermore, we drew inspiration from the popular real-time operating system FreeRTOS, reinforcing the original OS216 architecture and introducing task state management. Ultimately, we successfully realized a more real-time operating system and assisted in hardware debugging during the porting process, enhancing the maturity of the hardware architecture.

摘要 i
Abstract ii
第一章. 前言 1
第一節 研究動機 2
第二節 研究目的 3
第三節 論文架構 4
第二章. 研究背景與基礎理論 5
第一節 FPGA簡述 6
第二節 基於FPGA上CPU0 6
第三節 即時作業系統介紹 9
第四節 FreeRTOS簡述與架構 12
第五節 OS216介紹 14
第三章. 研究方法 15
第一節 軟硬體整合方法 16
第二節 LLVM簡介 16
第三節 機械碼校正工具 19
1.機械碼格式 19
2.機械碼校正工具 21
第四節 CPU0 程式設計 22
1.暫存器 22
2.控制單元 24
3.CPU0通用型輸入輸出 25
4.中斷服務程序實現 26
5.計時器 29
第五節 FPGA 相關IDE工具 31
1.Signal Tap 31
2.Waveform Simulation 32
第六節 OS216 簡化作業系統開發 34
1.OS216架構的實現 34
2.OS216任務狀態的實現 44
第四章. 研究結果 56
第一節 軟硬體整合驗證 56
第二節 作業系統功能驗證 60
第五章. 結論與未來展望 63
參考文獻 65
發表論文 67


[1]Perera, C., Liu, C. H., Jayawardena, S., & Chen, M. (2014). A survey on internet of things from industrial market perspective. IEEE Access, 2, 1660-1679.
[2]Gubbi, J., Buyya, R., Marusic, S., & Palaniswami, M. (2013). Internet of Things (IoT): A vision, architectural elements, and future directions. Future generation computer systems, 29(7), 1645-1660.
[3]Levis, P., Madden, S., Polastre, J., Szewczyk, R., Whitehouse, K., Woo, A., Gay, D., Hill, J., Welsh, M., & Brewer, E. (2005). TinyOS: An operating system for sensor networks. Ambient intelligence, 115-148.
[4]Hahm, O., Baccelli, E., Petersen, H., & Tsiftes, N. (2015). Operating systems for low-end devices in the internet of things: a survey. IEEE Internet of Things Journal, 3(5), 720-734.
[5]Lee, Y., Waterman, A., Cook, H., Zimmer, B., Keller, B., Puggelli, A., Kwak, J., Jevtic, R., Bailey, S., & Blagojevic, M. (2016). An agile approach to building RISC-V microprocessors. IEEE Micro, 36(2), 8-20.
[6]Ramegowda, D., & Lin, M. (2022). Energy efficient mixed task handling on real-time embedded systems using FreeRTOS. Journal of Systems Architecture, 131, 1-10.
[7]Sanju, V. (2023) Field Programmable Gate Array (FPGA): An Innovation In Hardware Technology.in 2023 2nd International Conference for Innovation in Technology (INOCON), Bangalore, India, 1-6.
[8]朱柏語. (2021). 基於FPGA可組態指令集架構平台設計與隱私保護機制研究 [碩士論文, 逢甲大學].台中市. Retrived May 10,2023, from: https://hdl.handle.net/11296/2rz94h
[9]陳鐘誠. CPU0 處理器的架構. Retrived May 10,2023, from: http://ccckmit.wikidot.com/ocs:cpu0
[10]張承祐. (2021). 適用於CPU0之編譯器設計 [碩士論文, 逢甲大學].台中市. Retrived May 10,2023,
from:https://hdl.handle.net/11296/educe8
[11]Leroux, P. N. (2005). RTOS versus GPOS. Retrived May 10,2023,
from:https://techlib.adi.com/wp-content/uploads/2018/04/qnxRtosDiscussion.pdf
[12]Nandana, V., Jithendran, A., & Shreelekshmi, R. (2015). Survey on RTOS: Evolution, types and current research. International Journal of Computer Applications, 121, 28-31.
[13]Guan, F., Peng, L., Perneel, L., & Timmerman, M. (2016). Open source FreeRTOS as a case study in real-time operating system evolution. Journal of Systems and Software, 118(C), 19-35.
[14]Lattner, C., & Adve, V. (2004). LLVM: A compilation framework for lifelong program analysis & transformation.in International Symposium on Code Generation and Optimization, 2004 (CGO), San Jose, CA, USA, 75-86.
[15]Lattner, C. (2008) LLVM and Clang: Next generation compiler technology.in The BSD conference.Ottawa, Canada, 1-20.
[16]Kang, Y., Chen, J., & Li, B. (2018) Generic bootloader architecture based on automatic update mechanism.in 2018 IEEE 3rd International Conference on Signal and Image Processing (ICSIP), Shenzhen, China, 586-590.
[17]Yuan, S.-Y., Lui, F.-C., Huang, H.-C., Huang, T.-W., & Liu, W.-S. (2023) IoT OS Teaching Material Development.in 2023 IEEE 6th Eurasian Conference on Educational Innovation (ECEI), Singapore, 175-178.

QRCODE
 
 
 
 
 
                                                                                                                                                                                                                                                                                                                                                                                                               
第一頁 上一頁 下一頁 最後一頁 top