| 研究生: |
洪碩聯 Hong, Shuo-Lian |
|---|---|
| 論文名稱: |
可在任一時脈週期暫停且恢復系統運作之多時域系統除錯技術 A Run-Pause-Resume Silicon Debug Technique with Cycle-Granularity for Multiple Clock Domain Systems |
| 指導教授: |
李昆忠
Lee, Kuen-Jong |
| 學位類別: |
碩士 Master |
| 系所名稱: |
電機資訊學院 - 電機工程學系 Department of Electrical Engineering |
| 論文出版年: | 2017 |
| 畢業學年度: | 105 |
| 語文別: | 英文 |
| 論文頁數: | 42 |
| 中文關鍵詞: | 矽除錯 、硬體除錯 、中斷點 、執行-暫停-回復 、跨時域系統 |
| 外文關鍵詞: | silicon debug, hardware debugging, breakpoint, run-pause-resume, clock domain crossing |
| 相關次數: | 點閱:67 下載:0 |
| 分享至: |
| 查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
可暫停且恢復系統運作之矽除錯技術可將電路的時脈暫停運作,進而取得暫存器的內部狀態讓使用者進行觀察,再恢復電路時脈以進行更進一步的除錯流程。資料無效是使用此多時域除錯技術時可能會發生並且需注意的問題;資料無效是當接收端時域中的暫存器在除錯期間捕捉到不正確的數據,而造成系統無法正確地恢復運作。在此論文中,我們提出了一種新穎的矽除錯技術,可在任一時脈週期暫停電路並且可避免捕捉到錯誤的數據。我們可以讓使用者自行設定欲觀察的中斷點,再利用軟體來計算需發送暫停控制信號的確切時間,並且開發相應的硬體控制器以將暫停信號轉換成用於待除錯電路和跨時域數據傳輸介面的時脈控制信號。因此,我們可以避免資料無效的問題並允許使用者在任意的時脈週期暫停待除錯電路且能正確的回復電路的運行。由實驗結果來看,我們的矽除錯技術所需的硬體面積非常小,並且能達到100%的除錯觀察率。
The run-pause-resume (RPR) debug methodology allows one to pause the normal circuit operations, observe the internal states of flip-flops and then resume the normal operations for further debug process. Data invalidation is a major problem that needs to be addressed when debugging a multiple-clock design with this methodology. This problem occurs when flip-flops in a receiving clock domain capture incorrect data during debugging, and thus cannot be resumed correctly. In this thesis, we propose a novel RPR technique that can avoid data invalidation with the cycle-level granularity of debug resolution. A software program is employed to calculate the exact time to transmit pause control signals according to the user-defined breakpoint and a hardware controller is developed to convert the pause signal to appropriate gating signals for the circuit under debug (CUD) and the data path of the clock domain crossing interface. By doing this, we can avoid data invalidation as well as allow users to pause and resume the CUD at arbitrary clock cycle. Experimental results show that the hardware area overhead is very small and 100% debug resolution is achieved.
References
[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/
校內:2022-07-01公開