新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 使用圖形化的開發環境――LabView開發嵌入式系統

        使用圖形化的開發環境――LabView開發嵌入式系統

        作者: 時間:2012-05-14 來源:網絡 收藏

        傳統設計模式所應對的挑戰

        本文引用地址:http://www.104case.com/article/149071.htm

        正在滲入現代社會的各個方面,廣泛地應用于航空航天、通信設備、消費電子、工業控制、汽車、船舶等領域,據統計,在美國平均每個中產階級家庭要40~50個。巨大的市場需求推動了向更高的技術水平發展。設計師們一方面采用性能更強大的嵌入式處理器如32位、64位RISC芯片取代傳統的8位、16位微處理器;另一方面嵌入式系統也由單處理器單操作系統的傳統結構向混合型Multi-core系統發展,通過采用多個處理器和OS提高系統并行度來提高系統運行效能,并且設計師們往往同時采用MPU、DSP和FPGA等多種可編程器件來增強處理能力,滿足應用功能的升級。

        嵌入式系統復雜性的不斷增加給設計師們帶來了很大的挑戰,代碼長度呈指數級增加,根據十年前的估計,嵌入式系統的平均代碼量為10萬行,到2001年實際已經超過了100萬,而現在估計為500萬。第三方獨立市場預測機構EMF在對900多名嵌入式系統人員進行調研后指出,超過50%的嵌入式設計比預期時間晚上市,而平均延遲高達4個月;在已發布的產品中,有近30%的設計未達到預期的功能和指標。由此可見,隨著嵌入式系統復雜性的不斷增加,軟件工程的重要性毋庸置疑,而大部分的嵌入式系統人員都缺乏這方面的專業訓練。與此同時,隨著嵌入式系統的廣泛應用,越來越多領域的專家比如機器人設計師、控制工程師、測試工程師需要嵌入式技術來構建他們的系統,他們既缺乏嵌入式系統的專業知識,也不一定經過軟件工程的專業訓練。因此,無論是嵌入式系統本身的發展,還是人員的專業限制,都需要一種新的設計模式和解決問題的途徑來應對目前的挑戰。

        嵌入式系統開發工具的發展趨勢

        隨著嵌入式系統的快速發展和復雜性的不斷增加,基于文本的編程方式所面臨的挑戰愈發嚴峻,這種編程模式在將來不可能徹底解決問題。加州大學伯克利分校嵌入式研究專家EdwardLee博士指出,現有的嵌入式系統的開發手段如基于文本編程和面向對象的工具都難以用來構建嵌入式實時系統,因為面向對象很難直觀地表達時間和平行性(parallelism),而時間和平行性或并行(concurrency)在現在的嵌入式系統中是必不可少的。面向角色(actor-oriented)的化方法是更適合嵌入式軟件設計的工具。

        應對嵌入式系統所面臨的挑戰,工程師們已經有了一些解決的方向,比如采用實時多任務編程技術和交叉開發工具技術來控制功能復雜性、簡化應用程序設計、保障軟件質量和縮短開發周期。但是現有的嵌入式系統開發工具非常多,全世界嵌入式處理器的品種總量已經超過1000種,流行體系結構有30多個系列,在其上運行的操作系統也非常多樣化,包括VxWorks、QNX、Linux、Nuclears、WinCE等等。不僅各種操作系統有各自的開發工具,在同一系統下開發的不同階段也有不同的開發工具。如在用戶的目標板開發初期,需要硬件仿真器來調試硬件系統和基本的驅動程序,在調試應用程序階段可以交互式的開發進行軟件調試,在測試階段需要一些專門的測試工具軟件進行功能和性能的測試等等。最合理的解決方案是向基于平臺的工具轉移,它能夠更好地表達整個系統,減少與特定硬件以及操作系統的相關性,使更多的軟件設計和算法容易理解并被重復使用;而從基于文本的工具向化工具的轉移則可以直觀地表達系統,化系統設計(GraphicalSystemDesign)的理念就是源于這兩大趨勢。通過簡化嵌入式編程的復雜性,降低了對工程師在嵌入式設計流程中各個步驟的要求;同時提供了從設計、原型到部署,從軟件調試、功能測試到生產檢測的統一,使得工程師們可以更快速地進行重復設計。

        在嵌入式系統中實現圖形化已經成為大勢所趨,現在市場上的工具都在向圖形化的方向轉變,但往往僅限于基于嵌入式操作系統的圖形界面開發;而且由于它們是針對特定硬件或操作系統的工具,與硬件和操作系統平臺有很大的相關性,這不足以徹底解決行業將要面臨的挑戰的。現在市場需要的是一種完全的圖形化編程語言,提供足夠的靈活性和功能,以滿足更廣泛應用的需求。因此,圖形化系統設計的關鍵因素是圖形化編程。

        對于時間和平行性的支持

        20年來,科學家和工程師一直在使用LabVIEW為他們的設計實驗室、驗證實驗室和生產現場構建自動化數據采集和儀器控制解決方案,并在這些應用領域成為業界的事實標準。其核心在于,LabVIEW圖形化編程語言使沒有太多軟件背景的技術專家能夠快速搭建高級自動化測量和控制系統。和傳統的文本編程相比,LabVIEW天生是一種并行結構的編程語言,而時間和并行性在現在的嵌入式系統中是必不可少的。比如,LabVIEW在已有的定時循環結構上新加了硬件定時功能,它是一種表示時間和并行的語義,可以設置操作系統優先級、延時、循環速率等等,如圖1所示。如果我們將圖1所示的兩個并行任務的執行目標擴展到嵌入式對象,比如FPGA或微處理器,就可以發現通過編程環境的一致性和可升級性,LabVIEW能夠容易地實現和管理嵌入式系統的并行性。回想在文章前面所提到的向多處理器轉移的趨勢,現在我們可以憧憬使用可擴展的直觀圖形化編程來開發應用,并將處理過程分配到不同的處理器上。

        圖1對兩個并行任務的編程

        支持多種算法設計

        談到嵌入式系統設計,人們所指的其實包括兩部分工作:算法設計和固件設計。對于嵌入式系統設計來說,另一個關鍵要求是軟件平臺必須能夠兼顧實時嵌入式設計中常見的多種算法設計,即計算模型。這些計算模型符合系統設計師們籌劃系統時的方式,從而降低從“系統要求”轉換到“軟件設計”的復雜性。近年來LabVIEW已經包含了多種計算模型以更好地滿足不同專業背景的嵌入式系統開發者的需求。LabVIEW現在可以通過連續時間仿真、狀態圖、圖形化數據流模型和基于文本的數學語言mathscript等多種方式來表達各種算法,同時它提供了很多交互式的工具用來幫助數字濾波器、控制模型、通信系統的設計以及數字信號處理算法的開發,從而在這些頂層應用中進一步簡化設計師的工作。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 滨海县| 津市市| 油尖旺区| 金湖县| 阳泉市| 山东省| 开远市| 安塞县| 将乐县| 中江县| 铜川市| 晴隆县| 马山县| 绥宁县| 垦利县| 海门市| 永济市| 巴青县| 天柱县| 湖口县| 巴里| 山阳县| 富民县| 汶上县| 阿城市| 弥渡县| 桐柏县| 白城市| 富顺县| 辛集市| 隆回县| 临洮县| 太和县| 安多县| 石景山区| 诏安县| 龙川县| 渝北区| 措勤县| 梁河县| 墨竹工卡县|