請用此 Handle URI 來引用此文件:
http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/62771
完整後設資料紀錄
DC 欄位 | 值 | 語言 |
---|---|---|
dc.contributor.advisor | 黃鐘揚 | |
dc.contributor.author | Yu-Fu Yeh | en |
dc.contributor.author | 葉昱甫 | zh_TW |
dc.date.accessioned | 2021-06-16T16:09:57Z | - |
dc.date.available | 2013-04-25 | |
dc.date.copyright | 2013-04-25 | |
dc.date.issued | 2013 | |
dc.date.submitted | 2013-03-15 | |
dc.identifier.citation | [1] A. A. Jerraya, and W. Wolf, Multiprocessor Systems-on-Chips, Morgan Kaufmann Publishers, 2004, pp.1-20.
[2] B. Bailey, G. Martin and A. Piziali, ESL Design and Verification: A Prescription for Electronic System Level Methodology, Morgan Kaufmann/Elsevier, 2007. [3] D. Densmore, R. Passerone, and A. Sangiovanni-Vincentelli, “A platform-based taxonomy for ESL design”, IEEE Design & Test of Computers, 2006, vol. 23, no. 5, pp. 359-374. [4] L. Cai and D. Gajski, “Transaction Level Modeling: An Overview”, in Proc. 1st IEEE Intl. Conf. on Hardware/Software Co-design & System Synthesis, Oct 2003, pp. 19-24. [5] J. A. Sokolowski, C. M. Banks, “Modeling and Simulation Fundamentals: Theoretical Underpinnings and Practical Domains”, John Wiley & Sons, 2010, ch.11, pp.377-378 [6] Y.F. Yeh, C.Y. (Ric) Huang, C.A. Wu and H.C. Lin, “Speeding Up MPSoC Virtual Platform Simulation by Ultra Synchronization Checking Method”, in Proc. IEEE Design Automation and Test in Europe, Mar.2011, pp. 1-6. [7] Y.F. Yeh, H.C. Lin and C.Y. (Ric) Huang, “An Ultra Synchronization Checking Method with Trace-Driven Simulation for Fast and Accurate MPSoC Virtual Platform Simulation”, to be published in IEEE Transactions on Computer-Aided Designs of integrated circuits and systems (TCAD), vol. 32, no.6, 2013. [8] O. S. Initiative, IEEE 1666-2005 Standard SystemC Language Reference Manual, http://www.systemc.org, Dec 2005. [9] K.H. Lin, Y.L. Li, Y.F. Yeh, and C.Y. (Ric) Huang, “QuteVP: a multi-million- instructions-per-second virtual platform for SoC hardware/software co-design”, in Proc. IEEE Communication, Circuits and Systems (ICCCAS), Jul 2009, pp. 1144-1148. [10] Banks. J, J. S. Carson II, and B.L. Nelson, “Discrete Event System Simulation, 2nd Ed., Prentice-Hall, Englewood Cliffs, 1996. [11] S. S. Mukherjee, S. K. Reinhardt, B. Falsafi, M. Litzkow, S. Huss-Lederman, M. D. Hill, J. R. Larus, and D. A. Wood, “Wisconsin Wind Tunnel II: a fast, portable parallel architecture simulator,” in IEEE Concurrency, vol. 8, 2000, pp. 12-20. [12] F. Ghenassia, Transaction-Level Model with SystemC: TLM Concepts and Applications for Embedded Systems, Springer, 2005. [13] S. Ghosh, E. Debenedictis, “An Asynchronous Distributed Discrete Event Simulation Algorithm for Cyclic Circuits using a Data-Flow”, in Proc. IEEE System, Man, and Cybermetics, 1991, pp. 265-268. [14] D. Kim, Y. Yi, and S. Ha, “Trace-driven HW/SW cosimulation using virtual synchronization technique”, in Proc. Design Automation Conference, Jun 2005, pp. 345-348. [15] M.H. Wu, C.Y. Fu, P.C. Wang, and R.S. Tsay, “An effective synchronization approach for fast and accurate multi-core instruction-set simulation”, in Proc. 5th, EmSoft, Nov 2009, pp. 197-204. [16] Y.H. Huang, Y.S. Lu, H.I Wu and R.S. Tsay, “A Non-Intrusive Timing Synchronization Interface for Hardware-Assisted HW/SW Co-Simulation”, in Proc. Design Automation Conference, Jun 2012, pp. 127-132. [17] K.H Lin, S.J. Cai and C.Y. Ric. Huang, “Speeding Up SoC Virtual Platform Simulation by Data-dependency Aware Virtual Synchronization”, in Proc. IEEE Asia and South Pacific Design Automation Conference, Jan 2010, pp. 143-148. [18] M. Girkar, C.D. Polychronopoulos, “Automatic extraction of functional parallelism from ordinary programs”, IEEE Trans on Parallel and Distributed System (TPDS), vol.3. 1992, pp. 166-178. [19] http://sourceware.org/gdb/current/onlinedocs/gdb/>, The GDB User Manual, chapter 9, 2010, pp. 96-98. [20] L. Vinciguerra, L. Wills, N. Kejriwal, P. Martino, and R. Vinciguerra, 'An Experimentation Framework for Evaluating Disassembly and Decompilation Tools for C++ and Java', Proc. of 10th Working Conference on Reverse Engineering (WCRE), Nov 2003, pp. 14-23. [21] B. Schwarz, S. Debray, and G. Andrews, 'Disassembly of Executable Code Revisited', Proc. of 9th Working Conference on Reverse Engineering (WCRE), Nov 2002, pp. 45–54. [22] Y. Yi, D. Kim, and S. Ha, “Fast and Accurate Co-simulation of MPSoC Using Trace-driven Virtual Synchronization”, IEEE Transactions on Computer-Aided Design of integrated circuits and systems (TCAD), vol.26, No.12, 2007. [23] R. M. Fujimoto, “Parallel Discrete Event Simulation,' Communications of the ACM, October 1990, vol. 33, no. 10, pp. 30-53. [24] V. Kumar, A. Grama, A. Gupta, and G. Karpis, “Introduction to Parallel Computing: Design and Analysis of Algorithms”, Benjamin/Cummings, CA. [25] Ezudheen P, P. Chandran, J. Chandra, B. P. Simon, and D. Ravi, “Parallelizing SystemC Kernel for Fast Hardware Simulation on SMP Machines”, in Proc. IEEE Principles of Advanced and Distributed Simulation, Jun 2009, pp. 80-87. [26] M.H. Wu, P.C. Wang, C.Y. Fu, and R.S. Tsay, 'A High-Parallelism Distributed Scheduling Mechanism for Multi-Core Instruction-Set Simulation', in Proc. IEEE Design Automation Conference, Jun 2011, pp. 339-344. [27] S. Ghosh, E. Debenedictis, “An Asynchronous Distributed Discrete Event Simulation Algorithm for Cyclic Circuits using a Data-Flow”, in Proc. IEEE System, Man, and Cybermetics, 1991, pp. 265-268. [28] Y. Hwang, S. Abdi, and D. Gajski, “Cycle-approximate re-targetable performance estimation at the transaction level,” in Proc. IEEE Design, Automation, and Test in Europe Conference (DATE), Mar 2008, pp. 3-8. [29] A. Mello, I. Maia, A. Greiner, and F.Pecheux, “Parallel Simulation of SystemC TLM 2.0 Compliant MPSoC on SMP Workstations”, in Proc. IEEE Design, Automation, and Test in Europe Conference, Mar 2010, pp. 606-609. [30] H. Zhuge, H.K. Pung, and T.Y. Cheung, ”Timed workflow: concept, model, and method”, in Proc. 1st International Conference on Web Information Systems Engineering, 2000, pp. 183–189. [31] D. R. Butenhof, “Programming with POSIX threads”, Addison-Wesley, 1997. [32] Kahle and A. James, “Introduction to the Cell multiprocessor”, in Proc. IEEE IBM Journal of Research and Development, vol. 49, no. 4.5, 2005, pp. 589-604. [33] 'ARM Developer Suite Developer Guide', http://infocenter.arm.com/help/topic/com.arm.doc.dui0056d/DUI0056.pdf, 2001. [34] S. Gupta, N. Dutt, R. Gupta and A. Nicolau, “SPARK: A High-Level Synthesis Framework for Applying Parallelizing Compiler Transformations,” in Proc. 16th Int’l Conf. VLSI Design, IEEE Press, 2003, pp. 461-466 [35] The JPEG-6b Website, http://www.ijg.org/, 1998. | |
dc.identifier.uri | http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/62771 | - |
dc.description.abstract | 隨著積體電路的複雜化,晶片開發者開始採用虛擬平台模擬技術進行系統架構探索及軟體開發等任務,採用虛擬平台模擬技術的優勢在於可以利用高階語言快速建構硬體模型,開發者因此能夠有效率地驗證設計之系統原型是否達到預期的功能;除此之外,虛擬平台上建構之系統原型是由軟體構成,設計者可以任意地在系統原型上增添不足之功能(或刪除不當之設計)而不必擔心實體硬體元件的花費問題。由於在系統設計初期,設計者需要不斷確認其架構與功能是否合乎需求,能夠快速建構系統原型且具備低成本特性的虛擬平台模擬技術開始在近年來被廣泛應用於系統晶片開發。
然而,使用虛擬平台模擬技術開發系統層級設計常必須在模擬效能與模擬精確度上進行取捨。一般來說,使用虛擬平台模擬複雜之系統晶片常常需要耗費大量時間,為了提高模擬效能,一般虛擬平台模擬技術是在建置硬體模型時採取較高層級的抽象化以減少模擬硬體時所需要的同步動作而達到較佳的模擬速度,可是,採用高抽象化硬體模型常常無法精確地反映出的硬體行為,例如:不同硬體同時存取記憶體所造成資料傳輸的延遲狀況,所以以抽象化提高模擬速度的方法常因此犧牲掉模擬精確度。由於開發者必須仰賴夠精確的模擬結果才能確認系統原型的架構與規格,所以如何解決虛擬平台模擬技術中模擬效能與模擬精確度無法兩全的狀況是一個非常有挑戰性的課題。 為了克服虛擬平台模擬無法兼顧模擬效能與準確度的問題,我們先仔細地分析虛擬平台模擬硬體的演算法,我們發現虛擬平台模擬速度緩慢的主要原因來自於模擬中大量的同步行為,這種狀況是因為虛擬平台是由軟體所構建,所以模擬器以循序的方式模擬在硬體同時動作的行為,為了能夠精確地模擬出硬體行為,一般的虛擬平台模擬方法常常在模擬中對不同的硬體模擬程序進行同步,這些頻繁的同步行為往往造成模擬上的龐大負擔而使得模擬效能低落,為了解決模擬效能低落的問題,我們提出了一個平行雜序模擬演算法減少模擬中不必要的同步動作,這個模擬演算法中應用了追蹤導向模擬技術,使得模擬硬體中,即使同步行為減少了,我們提出的模擬演算法亦能補償硬體的延遲時間以確保模擬的精確度。當我們使用此方法在以SystemC語法建置的多核心系統虛擬平台上,相較原始SystemC所使用的模擬方法,模擬速度增進比率可達165倍且模擬結果亦達到時脈之精確度。 | zh_TW |
dc.description.abstract | Virtual platform simulation is an essential technique in early-stage system-level design space exploration and embedded software development. Generally, a design prototype on a virtual platform is constructed by software language. Virtual platform simulation then has the advantages in high flexibility and low cost to help system-level hardware/software designers validate their design. For example, testing and/or application software can be verified on the virtual hardware platform before a hardware implementation is available. Therefore, virtual platform simulation is gradually applied for system-level design development.
However, given the increasing complexity of the Multi-Processor Silicon-on-Chip (MPSoC) designs, even the state-of-the-art virtual platform simulation algorithms may still suffer from the simulation speed issue. As for the simulation speed-up, previous work suggests raising the virtual platform simulation to higher abstraction levels, with the tradeoff made in less accurate modeling. However, accurate simulation results are necessary for MPSoC virtual platform simulation applications, such as performance evaluation and architecture exploration. Thus, achieving both high speed and accurate outcome remains a necessity and a big challenge in MPSoC virtual platform simulation. To overcome the above challenge, we first carefully examine the key factor that determines the trade-offs between simulation efficiency and accuracy. Then we find that the factor results from the degree of synchronizations among software-constructed hardware simulation processes (HSPs). For synchronization reduction to break through the trade off, we propose a parallel out-of-order execution approach to efficiently perform simulation scheduling. Our approach can schedule HSPs to out-of-orderly simulate hardware in concurrence and thus reduces a great portion of synchronization for simulation speed-up. Moreover, this approach contains a dynamic trace-driven simulation technique which can on-the-fly reconstruct the simulated time and maintain the accurate cycle information. We implement the above-mentioned algorithms by modifying the SystemC kernel (i.e. the implementation of simulation scheduling). The experimental results show that our proposed MPSoC virtual platform simulation approach can outperform the conventional approach in simulation speed by up to 165X. In addition, with the help of the dynamic trace-driven simulation technique, our MPSoC virtual platform simulation guarantees cycle accuracy. | en |
dc.description.provenance | Made available in DSpace on 2021-06-16T16:09:57Z (GMT). No. of bitstreams: 1 ntu-102-D94943035-1.pdf: 1859374 bytes, checksum: 4e8335e40b4da38e12ca30e914db5473 (MD5) Previous issue date: 2013 | en |
dc.description.tableofcontents | Acknowledgment (致謝) III
中文摘要 IV Abstract VI Contents VIII Lists of Figures X Lists of Tables XI Chapter 1 Introduction 1 1.1 Background 2 1.2 Motivation and goal 4 Chapter 2 Acceleration Methods for MPSoC Virtual Platform Simulations 7 2.1 Data dependent and process concurrent relations in virtual platform simulations 7 2.2 In-order execution approaches for virtual platform simulation 10 2.3 Out-of-order execution approaches for virtual platform simulation 12 Chapter 3 Synchronization Reduction by Ultra Synchronization Checking Method 17 3.1 Data-dependency checking for synchronization reduction 18 3.2 Memory exclusivity tables for data-dependency checking 22 3.2.1 Hardware-based memory exclusivity tables 23 3.2.2 Software-based memory exclusivity tables 25 3.3 Ultra synchronization checking method 28 Chapter 4 Time Reconstruction by Trace-Driven Simulation 30 4.1 An Out-of-order execution approach with the integration of trace-driven simulation to maintain simulation accuracy 31 4.2 Embedded trace-driven simulation in hardware simulation process 34 4.3 Efficient time reconstruction with cache implementation 38 Chapter 5 Parallelization for Out-of-Order Execution with USCM and Trace-Driven Simulation 43 5.1 Related works of high-performance parallel virtual platform simulation 44 5.2 Challenges of parallel out-of-order execution with USCM and trace-driven simulation 49 5.3 Distributed memory exclusivity checking 51 5.4 Dynamic trace-driven simulation mechanism 55 5.5 Our parallel out-of-order execution approach 59 Chapter 6 QuteVP+: A SystemC-Based Simulation Framework to Conduct Fast and Accurate MPSoC Virtual Platform Simulations 62 6.1 QuteVP+ overview 63 6.2 QuteVP+ simulation engine 66 6.3 QuteVP+ interface and utility library 70 6.4 QuteVP+ limitations 76 Chapter 7 Experiment Results 78 7.1 The number of synchronization count by sequential out-of-order execution 81 7.2 Improvement of simulation speed by sequential out-of-order execution 82 7.3 Improvement of simulation speed by distributed data dependency checking 88 7.4 Improvement of simulation speed by dynamic trace-driven simulation 90 Chapter 8 Conclusions and Future Work 92 8.1 Conclusions 92 8.2 Future work 94 Bibliography 97 | |
dc.language.iso | en | |
dc.title | 以平行雜序執行方式達成快速且精準之多核心系統晶片虛擬平台模擬方法 | zh_TW |
dc.title | A Fast and Accurate MPSoC Virtual Platform Simulation Scheme by Parallel Out-of-Order Execution | en |
dc.type | Thesis | |
dc.date.schoolyear | 101-2 | |
dc.description.degree | 博士 | |
dc.contributor.oralexamcommittee | 蔡仁松,李昆忠,蘇泓萌,洪士灝,簡韶逸 | |
dc.subject.keyword | 雜序執行方式,多核心系統晶片,虛擬平台模擬, | zh_TW |
dc.subject.keyword | out-of-order execution,MPSoC,virtual platform simulation, | en |
dc.relation.page | 99 | |
dc.rights.note | 有償授權 | |
dc.date.accepted | 2013-03-15 | |
dc.contributor.author-college | 電機資訊學院 | zh_TW |
dc.contributor.author-dept | 電子工程學研究所 | zh_TW |
顯示於系所單位: | 電子工程學研究所 |
文件中的檔案:
檔案 | 大小 | 格式 | |
---|---|---|---|
ntu-102-1.pdf 目前未授權公開取用 | 1.82 MB | Adobe PDF |
系統中的文件,除了特別指名其著作權條款之外,均受到著作權保護,並且保留所有的權利。