透過您的圖書館登入
IP:3.145.105.108
  • 學位論文

嵌入式多核心系統架構上之程式設計模型及系統軟體

Programming Model and System Software for embedded Multicore Processors

指導教授 : 李政崑

摘要


著近年來多核心架構逐漸成為嵌入式系統之主要硬體架構,其不斷增長的 平行硬體設計,使得系統軟體之效能成為開發嵌入式多核心應用軟體之一關 鍵議題。在設計與實作嵌入式多核心系統軟體上,有以下幾方面之挑戰:有 效之程式設計模型、高效能之執行期系統、以及平行軟體之測試及驗證。 本論文解決在設計及實作高效能多核心系統軟體之挑戰。首先,討論在平行 化應用軟體時所會遭遇到之問題,並提出一有效之程式設計模型來展現應用 軟體中之平行度。此程式設計環境不只考慮在撰寫上之簡易性,同時亦考量 其效能及日後維護上之相關問題。此程式設計模型包含一資料串流技巧,此 技巧透過資料串流之技術提供多媒體應用軟體之最佳化。同時此程式設計 模型也提供程式設計樣板以展現此程式設計模型之使用方法。 第二,本論文提出一多核心系統上之作業系統及溝通函式庫之設計與實作。 此作業系統透過降低文本交換之技術以提高其在執行期之效能。最後本論 文介紹一自動之測試及驗證系統。此驗證系統透過一正規表示法之描述檔描 述系統之執行期運作狀況來自動產生測試檔案來模擬執行期之系統執行狀態 。本論文亦展示其測試流程。 系統軟體對於嵌入式多核心應用軟體之開發是一關鍵技術。本論文所探討之 技術著重於以下幾點議題:如何設計程式開發環境、最佳化執行期系統之效 能、以及軟體之測試及驗證。本論文提出一多核心系統上之系統軟體架構, 包含其設計及實作上之相關議題,同時並討論了如何架構一高效能之嵌入式 多核心系統軟體。

並列摘要


Trends of embedded system development recently point toward multicore architecture with increasingly parallel hardwares. Efficient system software is becoming a critical aspect of developing multicore applications for embedded systems. There are challenges associates to the system software design and implementation for embedded multicore processors, effective programming model, efficient runtime system, and testing of concurrent softwares. This dissertation tackles the challenges of designing and implementing high performance system software for multicore processors. First, it examines the issues of parallelizing application on multicore processors and then presents an effective programming model to extract the parallelism in the applications. The programming environment considers not only the programmability but also the performance and maintenance of the applications. The programming model contains a data streaming technique for optimizing multimedia applications to reduce the communication overhead. The programming environment also contains design patterns that demonstrates the usage of the programing model. Second, this dissertation illustrates the design and implementation of the operating system and communication library. The operating system adapts a technique of reducing the context switch overhead during task switching for optimizing the performance of operating system. Finally, this dissertation introduce an automatic testing and verification tool, pTest, for testing the concurrent multicore softwares. pTest contains a formal representation to generate testing patterns for testing the runtime execution behavior. The experiments demonstrate the testing tool by evaluating the development flow of the programing environment. System software is a key factor to the efficiency of embedded multicore applications. The technique presented in this article address the issues of designing the programming environment, optimizing the overhead of runtime system, and verifying the current applications. This dissertation presents the design and implementation of efficient system software for multicore processors and discusses issues and solution of building efficient system software for multicore processors.

參考文獻


[1] ITRS. International technology roadmap for semiconductors exectutive summary,
[2] Wayne Wolf. The future of multiprocessor systems-on-chips. In Proceedings of
[3] Grant Martin. Overview of the MPSoC design challenge. In Proceedings of
Design Automation Conference, pages 274–279, 2006.
[4] L. Dagum and R. Menon. Openmp: an industry standard api for shared-memory

延伸閱讀