請用此 Handle URI 來引用此文件:
http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/66323
完整後設資料紀錄
DC 欄位 | 值 | 語言 |
---|---|---|
dc.contributor.advisor | 黃鐘揚(Chung-Yang (Ric) | |
dc.contributor.author | Yueh-Tung Chao | en |
dc.contributor.author | 趙悅彤 | zh_TW |
dc.date.accessioned | 2021-06-17T00:30:19Z | - |
dc.date.available | 2012-03-19 | |
dc.date.copyright | 2012-03-19 | |
dc.date.issued | 2012 | |
dc.date.submitted | 2012-02-13 | |
dc.identifier.citation | [1] Daniel Kroening and Karen Yorav Edmund Clarke, “Behavioral Consistency of C and Verilog Programs Using Bounded Model Checking,” DAC, 2003.
[2] Daniel Kroening and Edmund Clarke, “Checking Consistency of C and Verilog using Predicate Abstraction and Induction,” ICCAD, 2004. [3] Masahiro Fujita, “Equivalence Checking Between Behavioral and RTL Descriptions with Virtual Controllers and Datapaths,” TODAES, 2005. [4] Franco Fummi and Graziano Pravadelli Nicola Bombieri, “Towards Equivalence Checking Between TLM and RTL Models,” MEMOCODE, 2007. [5] Deepak Goyal, Gagan Hasteer, Anmol Mathur and Nikhil Sharma Pankaj Chauhan, “Non-cycle-accurate Sequential Equivalence Checking,” DAC, 2009. [6] Hanne Riis Nielson and Chris Hankin Flemming Nielson, Principles of program analysis.: Springer, 1999. [7] Karl J Ottenstein and Joe D. Warren Jeanne Ferrante, “The Program Dependence Graph and Its Use in Optimization,” TOPLAS, 1987. [8] Youn-Long Lin, “Recent Developments in High-level Synthesis,” TODAES, 1997. [9] Nikil D. Dutt, Allen C-H Wu and Steve Y-L Lin Daniel D. Gajski, High-Level Synthesis: Introduction to Chip and System Design.: Kluwer Academic. [10] Armin Biere, Florian Lonsing Robert Brummayer, “BTOR: Bit-Precise Modelling of Word-Level Problems for Model Checking,” BPR, 2008. [11] Robert Brummayer and Armin Biere, “Boolector: An Efficient SMT Solver for Bit-Vectors and Arrays,” TACAS, 2009. | |
dc.identifier.uri | http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/66323 | - |
dc.description.abstract | 高階設計與暫存器轉移階層設計的等同電路驗證是一個在系統晶片及半導體領域是非常有挑戰性且重要的問題。由於高階語言,如C/C++/SystemC和硬體描述語言,如Verilog/VHDL,的特性非常不同,傳統的等效電路驗證方法不再適用。
在此碩論中,我們分析此問題並定義一個可以利用高階合成技術來解決的子問題,稱做「有限狀態機等效驗證」。更詳細地說,我們分析並從暫存器轉移階層建立一個有限狀態機,並且驗證是否存在一種對高階設計做高階合成的方法,使得高階合成之後之有限狀態機和從暫存器轉移階層建立的完全相同。如果存在這種方法,我們可以知道他們等效。 另外,我們提出「攤平的程式相依圖」(flattened program graph)來代表高階設計的,它的優點是可以比傳統用來做高階合成的控制資料流程圖(control data flow graph)保有更多的彈性。我們也利用「雙模擬」(bi-simulation)來快速地刪減不可能的解,並利用正規方法(formal method)來確認是否等同。 最後,我們做了許多單元測試(Unit test)來表示我們可以支援的語法並利用其他測資來確認我們的等同電路驗證方法是可行且有效率的。 | zh_TW |
dc.description.abstract | Equivalence checking between high-level designs and register-transfer-level designs has been a very challenging and important problem in the context of system on chips (SoCs). Due to the very different language constructs and features in high-level languages, such as C/C++/SystemC and RT-level languages, like Verilog/VHDL, the traditional definition of equivalence is not suitable anymore.
In this work, we analyze the whole problem space and define a subset of it, called FSM-compatible equivalence checking, which can be solved efficiently utilizing high-level synthesis techniques. That is, we extract a FSM from RT-level design and verify whether there exists a way to synthesize the high-level design into an equivalent FSM. If there exists, we can conclude that the two designs are equivalent. Furthermore, we propose the flattened program dependence graph, which has more flexibilities than the conventional control data flow graph, to represent a high-level model and enlarge the search space. We utilize bi-simulation to quickly prune infeasible solution and then apply formal engine to verify the equivalence of two FSMs as well. We conduct several unit tests and utilize three case studies to show the language constructs that we can support. We demonstrate the effectiveness of our methodologies, too. | en |
dc.description.provenance | Made available in DSpace on 2021-06-17T00:30:19Z (GMT). No. of bitstreams: 1 ntu-101-R98943089-1.pdf: 1158590 bytes, checksum: f7ebfc08c19784ebed2a05db3baf32df (MD5) Previous issue date: 2012 | en |
dc.description.tableofcontents | 口試委員審定書 i
誌謝 ii 摘要 iii Abstract iv Table of Contents v List of Figures viii List of Tables xi Chapter 1 Introduction 1 1.1 Motivation 1 1.2 Related Work 1 1.3 Thesis Contributions 2 1.4 Thesis Organization 3 Chapter 2 Preliminaries 4 2.1 Control Data Flow Graph 4 2.2 Program Dependence Graph 7 2.3 High-level Synthesis 8 2.3.1 Overview of High-level Synthesis 8 2.3.2 Scheduling 9 2.3.3 Allocation 10 2.3.4 Binding 11 2.4 High-level to RT-level Equivalence Checking 13 2.4.1 Classification of High-level to RT-level Equivalence Checking Problems 13 2.4.2 High-level to RT-level FSM-compatible Equivalence Checking 17 2.5 Symbolic Simulation 18 2.6 Satisfiability Modulo Theories 19 Chapter 3 Modeling of High-level Design 20 3.1 Flattened Program Dependence Graph 22 3.2 Construction of Flattened Program Dependence Graph 23 3.2.1 Overview of flattened program dependence graph construction 23 3.2.2 Setting Control Dependencies 24 3.2.3 Setting Data Dependencies 26 3.2.4 An Example of FPDG construction 27 3.3 Simulation on Flattened Program Dependence Graph 29 Chapter 4 Modeling of RT-level Design 32 4.1 State-based Control Data Flow Graph 32 4.2 Construction of State-based Control Data Flow Graph 35 4.2.1 Overview of state-based control data flow graph construction 35 4.2.2 Setting Control Flow 36 4.2.3 Setting Data Flow 37 4.3 Simulation on State-based Control Data Flow Graph 40 Chapter 5 High-level to RT-level FSM-compatible Equivalence Checking 43 5.1 Problem Formulation 43 5.2 Overview of High-level to RT-level FSM-compatible Equivalence Checking Methodologies 43 5.3 Finding Register Mapping and Condition Mapping 46 5.3.1 Finding Candidates for Register Mapping and Condition Mapping by Bi-simulation 46 5.3.2 Finding the Register Mapping and Condition Mapping by Formal Method 46 5.3.3 Discussion and Example for Finding Register Mapping and Condition Mapping 48 5.4 High-level Synthesis with Register and Condition Mappings 60 Chapter 6 Experimental Results 61 6.1.1 Unit Tests 61 6.1.2 Other Experiments 63 Chapter 7 Conclusions and Future Work 64 7.1.1 Conclusions 64 7.1.2 Future Work 64 Reference 66 | |
dc.language.iso | en | |
dc.title | 利用高階合成技術來進行高階與暫存器轉移階層等效電路驗證 | zh_TW |
dc.title | Utilizing High-level Synthesis Techniques in High-level to RT-level Equivalence Checking | en |
dc.type | Thesis | |
dc.date.schoolyear | 100-1 | |
dc.description.degree | 碩士 | |
dc.contributor.oralexamcommittee | 黃俊達(Juinn-Dar Huang),蘇培陞(Alan Su) | |
dc.subject.keyword | 高階,行為階層,高階合成,行為階層合成,有限狀態機,暫存器轉移階層,驗證,等效電路驗證, | zh_TW |
dc.subject.keyword | high-level,behavioral-level,high-level synthesis (HLS),behavioral-level synthesis,finite-state machine (FSM),register-transfer level (RTL),verification,equivalence checking, | en |
dc.relation.page | 67 | |
dc.rights.note | 有償授權 | |
dc.date.accepted | 2012-02-13 | |
dc.contributor.author-college | 電機資訊學院 | zh_TW |
dc.contributor.author-dept | 電子工程學研究所 | zh_TW |
顯示於系所單位: | 電子工程學研究所 |
文件中的檔案:
檔案 | 大小 | 格式 | |
---|---|---|---|
ntu-101-1.pdf 目前未授權公開取用 | 1.13 MB | Adobe PDF |
系統中的文件,除了特別指名其著作權條款之外,均受到著作權保護,並且保留所有的權利。