| 研究生: |
盧煜勝 Lu, Yu-Sheng |
|---|---|
| 論文名稱: |
實現一個可任意暫停且恢復運行之多時脈除錯系統於可程式化邏輯閘陣列 FPGA Implementation of A Multiple Clock Domains Run-Pause-Resume Debug System |
| 指導教授: |
李昆忠
Lee, Kuen-Jong |
| 學位類別: |
碩士 Master |
| 系所名稱: |
電機資訊學院 - 電機工程學系 Department of Electrical Engineering |
| 論文出版年: | 2020 |
| 畢業學年度: | 108 |
| 語文別: | 英文 |
| 論文頁數: | 42 |
| 中文關鍵詞: | 矽除錯 、硬體除錯 、中斷點 、執行-暫停-回復 、跨時域系統 |
| 外文關鍵詞: | silicon debug, hardware debugging, breakpoint, run-pause-resume, clock domain crossing |
| 相關次數: | 點閱:88 下載:0 |
| 分享至: |
| 查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
隨著製程技術與設計自動化工具的快速演進,越來越多大型且複雜的電路被整合進系統單晶片。針對矽晶片除錯技術中,運作中停下並恢復除錯方法能藉由將電路停下時脈,並透過測試架構中的掃描練擷取電路內部暫存器狀態供使用者觀察,再將電路時脈恢復用以進行下一步的除錯流程。資料無效是使用此多時域除錯技術時可能會發生並且需注意的問題。包含跨時域數據傳輸介面的除錯系統,可在任一時脈週期暫停電路並且可避免捕捉到錯誤的數據。在本論文中,我們以成大測試實驗室所開發的單晶片系統除錯平台為基礎,致力於將此除錯平台與業界實際環境整合。將此除錯平台整合至業界的系統單晶片環境之後,再以業界實際的矽智產電路做為除錯對象,並實現在業界的雛型驗證版上。我們也將此平台與跨時域數據傳輸介面的除錯系統結合,提出嶄新的除錯流程,使除錯功能更加完整。此外,我們亦結合使用者圖形介面來與此除錯平台共同運作,提供使用者設定與顯示除錯點的結果,以判別實際晶片中錯誤的根本原因。實驗結果顯示所開發的除錯平台應用到業界實際電路的可行性,能有效地解決晶片的除錯問題,加速業界產品的開發過程。
With the rapid development of semiconductor technology and design automation tools, more and more designs are now integrated into a system-on-chip (SoC). The run-pause-resume silicon debug approach allows users to pause the normal (system) operations of the circuits under debug (CUDs), extract the internal states of the CUDs for examination, and then resume the normal operations for further debugging. Data invalidation is the main problem that needs to be faced in the multiple-clock-domain design with this methodology. A RPR technique that with a Clock-Domain-Crossing (CDC) interface can avoid data invalidation with the cycle-level granularity of debugging resolution.
In this thesis, we integrate the SoC debug platform developed by the NCKU Test Lab with a real industrial SoC design environment. After the integration, we employ an actual industrial intellectual property (IP) core as the core under debug and then implement the whole SoC system on board. We also combine the debug platform with the multiple-clock-domain system, and propose novel debug procedures which make the debugging functions complete system and efficient. Furthermore, we combine a graphic user interface to support set the breakpoint and display which allows users to observe the results of hardware easily to identify the root-cause of failures in the real chip. Experimental results show that the implement debugs technology deals with the chip debugging problems efficiently.
[1] R. Ginosar, “Metastability and Synchronizers: A Tutorial,” IEEE Trans. Design & Test of Computers, pp. 23-35, 2011.
[2] S. Verma and A.S. Dabare, “Understanding Clock Domain Crossing Issues,” EE Times, Dec. 24, 2007.
[3] R. Ginosar, “Fourteen Ways to Fool Your Synchronizer,” in Proc. Int’l Symp. on Asynchronous Circuits and Systems, 2003, pp. 89-96.
[4] A.B.T. Hopkins and K.D. McDonald-Maier, “Debug Support for Complex Systems On-Chip: a Review,“ IEE Proceedings- Computers and Digital Techniques, pp. 197-207, 2006.
[5] B. Vermeulen, “Functional Debug Techniques for Embedded Systems,” IEEE Trans. Design & Test of Computers, pp. 208-215, 2008.
[6] P. Komari and R. Vemuri, "A novel simulation based approach for trace signal selection in silicon debug," in Proc. Int’l Conf. on Computer Design, 2016, pp. 193-200.
[7] B. Vermeulen and K. Goossens, “Interactive Debug of SoCs with Multiple Clocks,” IEEE Trans. Design & Test of Computers, pp. 44-51, 2011.
[8] T.-H. Chang, S.-C. Hou and I.-J. Huang, "A unified GDB-based source-transaction level SW/HW co-debugging," in Proc. Asia Pacific Conf. on Circuits and Systems, 2016, pp. 506-509.
[9] L.-Y. Lu, C.-Y. Chang, Z.-H. Chen, B.-T. Yeh, T.-H. Lu, P.-Y. Chen, P.-H. Tang, K.-J. Lee, L.-Y. Chiou, S.-J. Chang, C.-H. Tsai, C.-H. Chen, and J.-M. Lin, "A testable and debuggable dual-core system with thermal-aware dynamic voltage and frequency scaling," in Proc. Asia and South Pacific Design Automation Conf., 2016, pp. 17-18.
[10] H.-C. Chen, C.-R. Wu, K. S.-M. Li and K.-J. Lee, "A breakpoint-based silicon debug technique with cycle-granularity for handshake-based SoC," in Proc. Design, Automation & Test in Europe, 2015, pp. 1281-1284.
[11] S. K. Goel and B. Vermeulen, “Hierarchical Data Invalidation Analysis for Run-stop Debug on Multiple-Clock System Chips,“in Proc. Int’l Test Conf., 2002, pp. 1103-1110.
[12] H. Yi, S. Kundu, S. Cho and S. Park, “A Scan Cell Design for Scan-Based Debugging of an SoC With Multiple Clock Domains,” IEEE Trans. Circuits and Systems II: Express Briefs, pp. 561-565, 2010.
[13] J. Gao, Y. Han, and X. Li, “Eliminating Data Invalidation in Debugging Multiple-Clock Chips,” in Proc. Design, Automation and Test in Europe, 2011, pp. 1-6.
[14] S.-L. Hong, and K.-J. Lee, “A Run-Pause-Resume Silicon Debug Technique for Multiple Clock Domain Systems,” accepted, ITC-Asia, 2017.
[15] S. Balasubramanian, N. Natarajan, O. Franza, and C. Gianos, “Deterministic Low-Latency Data Transfer across Non-Integral Ratio Clock Domains,” in Proc. Int’l Conf. on VLSI Design, 2006, pp. 1063-1067.
[16] J. M. Chabloz and A. Hemani,, “Low-Latency Maximal-Throughput Communication Interfaces for Rationally Related Clock Domains,” IEEE Trans. VLSI Systems, pp. 641-654, 2014.
[17] A. Sanghani, B. Yang, K. Natarajan, C. Liu, "Design and Implementation of a Time-Division Multiplexing Scan Architecture Using Serializer and Deserializer in GPU Chips", in Proc. VLSI Test Symp., 2011, pp. 219-224.
[18] OpenCores, Available: http://opencores.org/
[19] IEEE 1500 Standard for Embedded Core Test (SECT), http://grouper.ieee.org/groups/1500/.
[20] Kuen-Jong Lee, Chia-Yi Chu, and Yu-Ting Hong, “An Embedded Processor Based SOC Test Platform,” In Proc. Int’l Symp. on Circuits and Systems, vol.3, pages 2983-2986, 2005.
校內:2025-07-25公開