帳號:guest(18.116.10.127)          離開系統
字體大小: 字級放大   字級縮小   預設字形  

詳目顯示

以作者查詢圖書館館藏以作者查詢臺灣博碩士論文系統以作者查詢全國書目
作者(中文):戴維政
作者(外文):Dai, Wei-Zheng
論文名稱(中文):基於規則與模式實現嵌入式元件自動連接
論文名稱(外文):Enabling Rule-and-Pattern-Based Auto-Completion of Inter-Component Connection
指導教授(中文):周百祥
指導教授(外文):Chou, Pai H.
口試委員(中文):韓永楷
謝孫源
口試委員(外文):Hon, Wing-Kai
Hsieh, Sun-Yuan
學位類別:碩士
校院名稱:國立清華大學
系所名稱:資訊工程學系
學號:108062657
出版年(民國):110
畢業學年度:109
語文別:英文
論文頁數:38
中文關鍵詞:自動連接協作平台物聯網裝置嵌入式系統電腦輔助設計
外文關鍵詞:AutocompletionEmbedded systemInterface synthesisBus allocationInterface selectionSchematic completion
相關次數:
  • 推薦推薦:0
  • 點閱點閱:512
  • 評分評分:*****
  • 下載下載:0
  • 收藏收藏:0
設計嵌入式系統的一項必要任務是決定元件間的針角應該如何以導線連接成為完整的電路,
但是因為相對低階,很容易出錯。現有的解法一種是自動合成這些接線,或者提供一個大致
上已設計好但仍可以參數化的平台,但兩者皆無法尊重使用者在接線或元件選擇的偏好。其
他工具則因演算法複雜度過高,或因為不容易定義元件模型,而導致實用性低。因此,許多
嵌入式系統只好以手動方式完成低階的電路,但是一旦出錯,經常需要重新洗板打件導致專
案延宕而付出嚴重的代價。
為了解決上述問題,我們提出一套新的設計輔助工具,能夠提示與自動完成元件間針角
對針角的連線。我們將元件的介面與連線建模, 使用的是稱為旗標圖形(semagraph)的一種
新穎的資料結構,不止能以拓撲表達連線,更能利用頂點與邊相對應的係數表達現有、該
有、可有的連線狀態。我們使用子圖同構,自動找出可能的下一步連接組合作為提示。根據
使用者的選擇,經過後處理,再自動檢查連接後的電路是否有效或完整。這種做法優勢在於
提供高階的表達式,讓建模時能夠把複雜的介面清楚地定義成介面模型,同時有擴允性,模
組化,不會因為要能配合設計師的偏好而需要修改到核心演算法。本論文把概念套用在實際
嵌入式系統最常使用的幾種介面協定上,示範本工具在輔助設計的優勢。
Connecting wires between electronic components is a necessary design task that is error-prone due
to the relatively low-level nature. Existing solutions force designers to accept either synthesized
solutions without being given a chance to choose their preferred connection among valid alternatives
or ready-to-use platforms that may not use components of the designer’s choice. Other tools may
suffer from intractible complexity or difficulty to construct a library of such bus models. As a result,
designers of embedded systems often resort to manual interfacing between components, but they often
pay a heavy price in refabrication cost of hardware and significant delay in product delivery.
To address these problems, we propose a new methodology where the tool can suggest and autocomplete
connections that need to be made between the pins of the components. The component
interface is modeled using a novel data structure called a semagraph, which can capture the state
of connection, i.e., existing and expected wires, precisely and concisely in terms of coefficients on
the vertices and edges of the graph. A subgraph isomorphism subroutine detects possible solutions to
suggest for auto-completion, and the user’s choice is applied and post-processed before being checked
for completeness based on protocol-specific rules. This approach makes it much more manageable to
define complex interfacing models with expandability without having to modify the core algorithm
while accommodating the user’s preference. This thesis demonstrates the claimed advantages by
applying the methodology to several of the most commonly used interfacing protocols in real-world
embedded systems.
1 Introduction 1
1.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 Thesis Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Background and Related Work 4
2.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1.1 Microcontroller Units (MCU) . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.2 UART and GPIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.3 Serial Busses (SPI, I2C, I2S, ...) . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1.4 Advanced Interfacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2.1 Automatic Schematic Completion . . . . . . . . . . . . . . . . . . . . . . . 8
2.2.2 Platform-based Design Tools . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.3 Constraint-based Interface Synthesis . . . . . . . . . . . . . . . . . . . . . . 9
2.2.4 Circuit Design Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3 Methodology 11
3.1 Overview of System Design Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.2 Interface Synthesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.2.1 Interface Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.2.2 Bus Allocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.2.3 Schematic Completion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4 Technical Approach 16
4.1 Overview of Interface Synthesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4.1.1 Bus Roles and Wiring Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.1.2 Allocation of Roles and Pins . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.1.3 Semaphore Concept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.2 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.2.1 Semagraph Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.2.2 Semagraph Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.2.3 Semagraph Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.3 Interface Modeling and Realization . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.3.1 Interface Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.3.2 Bus Allocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4.3.3 Schematic Completion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5 Evaluation 33
5.1 Tool Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5.2 Expressiveness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
6 Conclusions and Future Work 36
6.1 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
6.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Appendix 39
[1] P. Chou, R. Ortega, and G. Borriello, “Synthesis of the hardware/software interface in
microcontroller-based systems,” in 1992 IEEE/ACM International Conference on Computer-
Aided Design, pp. 488–495, November 1992.
[2] P. Chou, R. Ortega, and G. Borriello, “Interface co-synthesis techniques for embedded systems,”
in Proceedings of IEEE International Conference on Computer Aided Design (ICCAD), pp. 280–
287, November 1995.
[3] J.-Y. Lo, D.-Y. Huang, T.-S. Kuo, C.-K. Sun, J. Gong, T. Seyed, X.-D. Yang, and B.-Y. Chen,
“AutoFritz: Autocomplete for prototyping virtual breadboard circuits,” in Proceedings of CHI
2019, pp. 1–3, May 2019.
[4] S. Narayan and D. D. Gajski, “Synthesis of system-level bus interfaces,” in Proceedings of European
Design and Test Conference EDAC-ETC-EUROASIC, March 1994.
[5] D. Filo, D. C. Ku, and J. G. D. M. Claudionor N. Coelho, “Interface optimization for concurrent
systems under timing constraints,” in IEEE Transactions on Very Large Scale Integration (VLSI)
Systems ( Volume: 1, Issue: 3, Sept. 1993), pp. 268 – 281, September 1993.
[6] “EDAsolver.” http://edasolver.com/, 2016.
[7] W. McGrath, D. Drew, J.Warner, M. Kazemitabaar, M. Karchemsky, D.Mellis, and B. Hartmann,
“Bifröst: Visualizing and checking behavior of embedded systems across hardware and software,”
in Proceedings of UIST 2017, pp. 299–310, October 2017.
 
 
 
 
第一頁 上一頁 下一頁 最後一頁 top
* *