研究生: |
徐執恩 Hsu, Chih-En. |
---|---|
論文名稱: |
利用特徵代數進行由上而下的嵌入式系統設計方法 Top-Down Design of Embedded Systems Using Feature Algebra |
指導教授: |
周百祥
Chou, Pai H. |
口試委員: |
韓永楷
Hon, Wing-Kai 謝孫源 Hsieh, Sun-Yuan |
學位類別: |
碩士 Master |
系所名稱: |
電機資訊學院 - 資訊工程學系 Computer Science |
論文出版年: | 2021 |
畢業學年度: | 109 |
語文別: | 英文 |
論文頁數: | 69 |
中文關鍵詞: | 嵌入式系統 、設計方法論 、特徵模型 、抽象層 、電子設計自動化 、電腦代數系統 、電腦輔助設計 |
外文關鍵詞: | Embedded System, Design Methodology, Feature Model, Level of Abstraction, Electronic Design Automation, Computer Algebra System, Computer-Aided Design |
相關次數: | 點閱:3 下載:0 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
嵌入式系統的功能,雖然大部份可以由現成、功能豐富的元件實現,設計師只需挑選適用的元件將其組合即可,但是絕大部份的設計任務仍然需要手工設計,市面上的工具無法提供許多設計自動化的功能。設計工具至多也不外捕捉機制的描述,但其設計用意必需以註解或說明文件撰寫,再由設計師人工詮釋或憑經驗推論,才能夠正確地還原當初設計的用意。如此一來,若是設計需要修改後或更新,設計師也必須參與細節檢查,才能確保所有機制都能在系統裡照原本用意發揮的功能。 因為機制本身層次不同,設計師在檢查和套用跨層機制是否符合用意的過程中,許多瑣碎的細節都可能是關鍵的機制,但很容易出錯。一個小錯誤對電路板設計來說可能導致整個板子都要報銷,改板再重新洗板打件不僅耗費人力和成本,更造成專案延宕。
上述設計任務若要自動化,必須先要能夠有一套捕捉不同層次的用意與機制間的對應,從最抽象層到最具體、足以實作電路板的層次。我們提出一套稱為「特徵代數」(feature algebra),以類似代數的形式,表達特徵與其組合,以建立各層裡用意與機制間的對應。我們將特徵層大致分為資訊(information)、數量(quantity)、資料(data)、和載體(carrier)等四大層。這套特徵模型系統也可用來表達不同領域裡需求(requirement)與滿足(fulfillment)的關係。更重要的是,一旦把系統建成這種模型,即可以精簡又精準的方式將特徵的新增、刪除、取代等等操作,對系統做演變,讓我們的工具能自動協助所有細節的調整,以達到完全避免手動處置設計實作上最容易出錯的部份。
本論文的貢獻是一套使用特徵代數,從上到下流程,設計嵌入式系統的方法。我們以實際手動設計的嵌入式系統做為實例,解說我們的設計方法。透過這些範例,我們展示出特徵模型能夠提供工具所需知資訊,不僅可對設計師提出適用各層的建議,同時能自動檢查是否所有設計需求都有被滿足。本研究預期可成為新一代設計工具Sysmaker的核心技術。
Despite the availability of highly integrated system-on-chip (SoC) components, designing embedded systems remains one of the least automated tasks. As design tools capture only the mechanisms in machine-readable form but not the purposes, human engineers must be involved to properly interpret the comments or infer the original intents based on assumptions or experience. As a result, humans must be in the loop to manually ensure all mechanisms serve their supposed purposes in the target system. Due to the cross-layer nature of the mechanisms, such design approach can be tedious and error-prone, and even a minor design mistake can render an entire board inoperable, requiring costly board redesign and refabrication, thus leading to design delays.
To address this problem, we aim to capture design intent at different levels of abstraction, from the most abstract level down to one suitable for board implementation. To capture ideas across different levels, we propose the use of feature algebra, a symbolic math-like computer algebra system (CAS) for expressing features and composing them to reflect the intent at the given level of abstraction. These levels are divided between information, quantity, data, and carrier levels. The feature modeling system also allows requirement-fulfillment relations to be established across layers, allowing a clear separation of concerns and automated checking of completeness of requirements in different domains. More importantly, designs modeled this way will be more evolvable by feature addition, deletion, or substitution concisely and precisely, all without requiring manual handling of the most error-prone parts of the design.
The contribution of this thesis is a new top-down design flow for embedded systems using feature algebra. We illustrate the methodology with several actual embedded systems that have been designed manually. We show the use of feature modeling to empower design tools to provide not only helpful suggestions at different levels but also enable automatic checking for whether all requirements have been met. This work is expected to be a core part of a newly proposed design tool called Sysmaker.
[1] A. More, “Embedded systems market size 2021 with CAGR of 5.6%, growth insights
by global share, emerging trends, regional analysis, business boosting strategies, CAGR
status, with Covid-19 analysis.” https://www.thecowboychannel.com/story/43696245/
embedded-systems-market-size-2021-with-cagr-of-56-growth-insights-by-global-share-emerging-trends-April 19 2021.
[2] “Arduino - home.” https://www.arduino.cc/.
[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 the
2019 CHI Conference on Human Factors in Computing Systems, pp. 1–13, 2019.
[4] Texas Instruments, “Analog | embedded processing.” https://www.ti.com/.
[5] Texas Instruments, “Hardware kits & boards.” https://www.ti.com/design-resources/
embedded-development/hardware-kits-boards.html.
[6] Microchip Technology, “Smart | connected | secure.” https://www.microchip.com/.
[7] Microchip Technology, “PICTAIL board for SD & MMC.” https://www.microchip.com/en-us/
development-tool/AC164122.
[8] Synopsys, “EDA tools, semiconductor IP and application security solutions.” https://www.
synopsys.com/.
[9] Cadence Design Systems, “Computational software for intelligent system design™.” https:
//www.cadence.com/en_US/home.html.
[10] Cadence Design Systems, “Advanced Driver Assistance System.” https://www.cadence.com/
zh_TW/home/solutions/automotive-solution/adas.html.
63
[11] Xilinx, “Zynq-7000 SoC.” https://www.xilinx.com/products/silicon-devices/soc/
zynq-7000.html.
[12] Synopsys, “DesignWare ARC EM processor family.” https://www.synopsys.com/
designware-ip/processor-solutions/arc-em-family.html.
[13] Synopsys, “DesignWare ARC HS processor family.” https://www.synopsys.com/
designware-ip/processor-solutions/arc-hs-family.html.
[14] 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, (Santa Clara, CA, USA), pp. 488–495, IEEE, 1992.
[15] P. Chou, R. Ortega, and G. Borriello, “Interface co-synthesis techniques for embedded systems,”
in Proceedings of the International Conference on Computer Aided Design, pp. 280–287,
November 1995.
[16] F. Wawrzik, J. M. Molina, and C. Grimm, “A concept for design of embedded systems at semantic
level,” in Proceedings of the 2014 Forum on Specification and Design Languages (FDL),
vol. 978, pp. 1–4, IEEE, 2014.
[17] J. Li, N. T. Pilkington, F. Xie, and Q. Liu, “Embedded architecture description language,” Journal
of Systems and Software, vol. 83, no. 2, pp. 235–252, 2010.
[18] Accellera System Initiatives, “IP-XACT.” https://www.accellera.org/downloads/standards/
ip-xact.
[19] A. Kamppi, L. Matilainen, J.-M. Maatta, E. Salminen, T. D. Hamalainen, and M. Hannikainen,
“Kactus2: Environment for embedded product development using IP-XACT and MCAPI,” in
2011 14th Euromicro Conference on Digital System Design, pp. 262–265, IEEE, 2011.
[20] J. Wiklander, J. Eliasson, A. Kruglyak, P. Lindgren, and J. Nordlander, “Enabling componentbased
design for embedded real-time software,” Journal of Computers, vol. 4, no. 12, pp. 1309–
1321, 2009.
64
[21] X. F. Zha, S. J. Fenves, and R. D. Sriram, “A feature-based approach to embedded system hardware
and software co-design,” in Proceedings of DETC’2005, 2005 ASME Design Engineering
Technical Conference, September 24-28 2005.
[22] N. Mahmud, C. Seceleanu, and O. Ljungkrantz, “Specification and semantic analysis of embedded
systems requirements: From description logic to temporal logic,” in International Conference
on Software Engineering and Formal Methods, pp. 332–348, Springer, 2017.
[23] “Chronic obstructive pulmonary disease (COPD).” https://www.who.int/news-room/
fact-sheets/detail/chronic-obstructive-pulmonary-disease-(copd), June 21 2021.