以作者查詢圖書館館藏 、以作者查詢臺灣博碩士 、以作者查詢全國書目 、勘誤回報 、線上人數:28 、訪客IP:18.217.89.130
姓名 劉浩瑋(Hao-Wei Liou) 查詢紙本館藏 畢業系所 資訊工程學系 論文名稱
(Support Visual Debugging in Electronic Design Automation Software by xDIVA)相關論文 檔案 [Endnote RIS 格式] [Bibtex 格式] [相關文章] [文章引用] [完整記錄] [館藏目錄] [檢視] [下載]
- 本電子論文使用權限為同意立即開放。
- 已達開放權限電子全文僅授權使用者為學術研究之目的,進行個人非營利性質之檢索、閱讀、列印。
- 請遵守中華民國著作權法之相關規定,切勿任意重製、散佈、改作、轉貼、播送,以免觸法。
摘要(中) Electronic design automation (EDA)[1] 是供硬體開發人員用來設計積體電路
(Integrated circuit, IC[2]) 的一系列軟體工具。隨著積體電路越趨龐大與複雜化,需要更
有效率的方式來幫助硬體開發人員來完成IC 的設計,而EDA 這樣的軟體工具對於硬體
開發人員也越來越重要。硬體開發人員使用EDA 軟體工具來加速IC 的設計與硬體的開
發。而這些EDA 軟體工具的則是由EDA 公司內的軟體開發人員負責設計與開發。本論
文著眼於幫助開發EDA 軟體工具的軟體開發人員進行除錯。
軟體開發人員於開發 EDA 軟體工具時,常常要面對複雜的資料結構,而這些複雜
的資料結構加深了軟體開發人員在程式除錯時的困難。使用除錯器下中斷點來觀察變數
或資料結構的方式,對於EDA 軟體開發人員在除錯時的幫助有限。EDA 的軟體開發人
員會希望程式停在某個中斷點時,視覺化某一群複雜的資料結構,並且從視覺化的過程
中對應至程式內原本他所關心的資料結構。
本論文使用 xDIVA (Debugging Information Visualization Assistant)[3] 來幫助 EDA
軟體開發人員加速軟體除錯的過程。 xDIVA 使用3D 的圖形、顏色和動畫來視覺化除
錯的資訊,程式開發人員可以依據自己的想法來處理除錯資訊與視覺化之間的對應關係,
將資訊視覺化成有意義的3D 圖像。透過使用 xDIVA,EDA 軟體開發人員可以將複雜
的IC layout 資料結構轉換成3D 空間內的 polygon。藉由觀察 3D 空間內的物件與其變
化,來找出程式謬誤之處。
摘要(英) Since IC (Integrated Circuit) becomes more and more complex, hardware engineers need
more powerful computer-aided tools to help them develop IC. These tools are called
Electronic design automation (EDA) tools, which are complicated software systems that deal
with different problems in several stages in IC manufacturing. Our research provides a
mechanism to help EDA Software programmers find debugs more easily.
EDA tool programmers often deal with complex data structures, and these complex data
structures make program very difficult to debug. Although debuggers are still the most
important debugging tools for EDA tool programmers, they are quite limited in many aspects.
More powerful visual debugging tools are needed in this area.
In this thesis, we enhance xDIVA (eXtreme Debugging Information Visualization
Assistant) to help EDA developers speed up the debugging process. xDIVA uses 3D graphs,
color and animation to visualize debugging information. Developers can configure 3D
debugging visualization by xDIVA to suit their needs. We show that xDIVA can map complex
IC layout data structures into 3D polygons and problems of a program can be easily checked
from such a visualization aid.
關鍵字(中) ★ 視覺化除錯
★ 除錯關鍵字(英) ★ debugging
★ visual debugging論文目次 摘要 ......................................................................................................................................................... i
Abstract .................................................................................................................................................. ii
圖表目錄 ............................................................................................................................................... iii
一、 緒論 ........................................................................................................................................... 1
1-1 研究動機 ............................................................................................................................... 1
1-2 問題描述 ............................................................................................................................... 2
1-3 論文架構 ............................................................................................................................... 5
二、 研究背景 ................................................................................................................................... 6
2-1 Debugger ............................................................................................................................... 6
2-1-1 JDB ................................................................................................................................... 6
2-1-2 GDB.................................................................................................................................. 7
2-2 軟體視覺化 (Software Visualization) .................................................................................. 7
2-3 程式視覺化 (Program Visualization) ................................................................................... 8
2-4 視覺化隱喻 (Visualization Metaphor) ................................................................................. 9
三、 xDIVA 簡介與功能概述 ......................................................................................................... 10
3-1 除錯器前端 ......................................................................................................................... 10
3-1-1 Minerva ........................................................................................................................... 10
3-1-2 IDE plugin ....................................................................................................................... 11
3-2 資訊視覺化子系統 DIVA ................................................................................................. 12
3-2-1 DIVA UI .......................................................................................................................... 12
3-2-2 Mapping Dialog ............................................................................................................... 13
3-2-3 VM Composer ................................................................................................................. 14
3-2-4 DIVA VM ........................................................................................................................ 15
四、 Mapping Dialog ....................................................................................................................... 19
4-1 視覺化程式設計語言 (Visual Programming Language) ................................................... 19
4-2 Mapping Dialog ................................................................................................................... 21
4-3 重新設計Mapping Dialog .................................................................................................. 22
4-3-1 重新設計Mapping Dialog GUI ................................................................................. 23
4-3-2 使用新的視窗框架 ..................................................................................................... 26
4-3-3 視覺化陣列時的對映 ................................................................................................. 26
五、 IC Layout 除錯視覺化 ........................................................................................................... 29
5-1 IC Layout 資料結構 ........................................................................................................... 29
5-1-1 Linked List ...................................................................................................................... 30
5-1-2 Bin-Based Model ............................................................................................................. 31
5-1-3 Neighbor Pointers ............................................................................................................ 31
5-1-4 Corner Stitching .............................................................................................................. 32
5-2 使用現有的VM 視覺化tile ............................................................................................... 33
5-3 設計新的VM 視覺化tile ................................................................................................... 36
5-4 從視覺化VM 對應回資料結構 ......................................................................................... 37
六、 Visualization Example ............................................................................................................. 40
七、 結語與未來展望 ...................................................................................................................... 44
7-1 結語 .................................................................................................................................... 44
7-2 Future work .......................................................................................................................... 44
八、 參考文獻 ................................................................................................................................. 46
參考文獻 [1] Electronic design automation. [cited 2012 06/19]; Available from:
http://en.wikipedia.org/wiki/Electronic_design_automation.
[2] Integrated circuit. [cited 2012 06/15]; Available from:
http://en.wikipedia.org/wiki/Integrated_circuit.
[3] Cheng, Y.-P., et al., xDIVA: a debugging visualization system with composable
visualization metaphors, in Companion to the 23rd ACM SIGPLAN conference on
Object-oriented programming systems languages and applications2008, ACM: Nashville,
TN, USA. p. 807-810.
[4] OwlVision GDSII Viewer. [cited 2012 06/21]; Available from:
http://www.owlvision.org/.
[5] GDSII. [cited 2012 06/21]; Available from: http://en.wikipedia.org/wiki/GDSII.
[6] Kolawa, A. The Evolution of Software Debugging. [cited 2012 05/02]; Available from:
http://www.parasoft.com/jsp/products/article.jsp?articleId=490.
[7] B. Lewis, Debuggin backwards in time, in M. Ronsse, K. De Bosschere (eds),
proceedings of the Fifth International Workshop on Automated Debugging, 2003
[8] R. M. Stallman, R. Pesch and S. Shebs, Debuggin with GDB: The GNU Source-Level
Debugger, Copyright (C) 1988-2006 Free Software Foundation, Inc.
http://www.gnu.org/software/gdb/documentation
[9] Rosenberg, J.B., How Debuggers Work: Algorithms, Data Structures, and Architecture. 1
ed,John Wiley & Sons, 1996-09-27
[10] Unified Modeling Language. [cited 2012 06/21]; Available from:
http://en.wikipedia.org/wiki/Unified_Modeling_Language.
[11] S. P. Reiss, An Overview of BLOOM, Proceedings of the 2001 ACMSIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
PASTE ’’01,2001
[12] Paul V. Gestwicki and Bharat Jayaraman. Methodology and architecture of jive. In
SOFTVIS, pages 95–104, 2005.
[13] Jeffrey K. Czyz, Bharat Jayaraman. Declarative and Visual Debugging in Eclipse.
In Proceedings of the 2007 OOPSLA Workshop on Eclipse Technology Exchange,
pages 31–35, 2007.
[14] Wim De Pauw, Erik Jensen, Nick Mitchell, Visualization the Execution of Java Programs,
IBM T.J. Watson Research Center
[15] Katharina Mehner. Javis: A uml-based visualization and debugging environment for
concurrent java programs. In Software Visualization, pages 163–175, 2001.
[16] The complete collection of algorithm animation. [cited 2012 06/15]; Available from:
http://www.cs.hope.edu/alganim/ccaa/index.html.
[17] The Data Display Debugger (DDD). [cited 2012 06/15]; Available from:
http://www.gnu.org/software/ddd/.
[18] Visual programming language. [cited 2012 06/21]; Available from:
http://en.wikipedia.org/wiki/Visual_programming_language.
[19] Davis, A.L. and R.M. Keller, Data Flow Program Graphs. Computer, 1982. 15(2): p.
26-41.
[20] D. Levitt (1986) Hookup: An iconic, real-time data-flow language for entertainment.
Unpublished technical note. MIT Media Lab. Available from Hip Software Corporation,
117 Harvard St No. 3, Cambridge, Massachussetts 01239.
[21] M. Hirakawa, N. Monden, I. Yoshimoto, M. Tanaka & T. Ichikawa (1986) HI-VISUAL:
A language supporting visual interaction in programming. In: Visual Languages (S.-K.
Chang, T. Ichikawa, & I’. A. Ligomenides, eds) Plenum Press, New York.
[22] Automator (software). [cited 2012 06/23]; Available from:
http://en.wikipedia.org/wiki/Automator_(software).
[23] National Instruments Corporation (1987) LabVIEW: a demonstration. National
Instruments Corp., 12109 Technology Blvd., Austin, Texas 78727-6204.
[24] T. D. Kimura, J. W. Choi, & J. M. Mack (1986) A visual language for keyboardless
programming. Technical report WUCS-86-6. Department of Computer Science,
Washington University, St Louis, Missouri 63130.
[25] HILS, D. D. 1992. Visual languages and computing survey: Data flow visual
programming languages. J. Vis. Lang. Comput. 3, 1, 69–101.
[26] Galaxy Custom Designer LE [cited 2012 06/23]; Available from:
http://www.synopsys.com/tools/implementation/customimplementation/pages/customdes
ignerle.aspx.
[27] Sherwani, N.A., Algorithms for VLSI Physical Design Automation, Third Edition. 3
ed,Springer,
[28] Ousterhout, J.K., Corner Stitching: A Data-Structuring Technique for VLSI Layout Tools.
Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on, 1984.
3(1): p. 87-100.
[29] Gourley, K. and D. Green, A Polygon-to-Rectangle Conversion Algorithm. IEEE Comput.
Graph. Appl., 1983. 3(1): p. 31-36.
[30] Three-dimensional integrated circuit. [cited 2012 05/11]; Available from:
http://en.wikipedia.org/wiki/Three-dimensional_integrated_circuit.
指導教授 鄭永斌(Yung-Pin Cheng) 審核日期 2012-7-12 推文 facebook plurk twitter funp google live udn HD myshare reddit netvibes friend youpush delicious baidu 網路書籤 Google bookmarks del.icio.us hemidemi myshare