版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、有關(guān)基于模型的設(shè)計(jì)(MBD)-些概和解先胡亂問幾個(gè)大問題:1. 么叫基于模型的設(shè)計(jì)?2. 為么要基于模型的設(shè)計(jì)?3. 基于模型的設(shè)計(jì)過程中,需要做么事情?再問幾個(gè)小問題:1. 模型驗(yàn)證是否必要?2. 模型驗(yàn)證有哪些工作可以做?3. 模型驗(yàn)證是否一定需要被控;寸象模型?4. 代碼生成效如何?5. 底層驅(qū)動(dòng)是否要建模?6. EmbeddedCoder(以前的RTWEmbeddedCoder)支持哪些芯片?7. MIL、SIL、PIL、HIL的目的和實(shí)現(xiàn)方式?8. 如何定點(diǎn)化?9. 如何做代碼集成?么叫基于模型的設(shè)計(jì)?這是一個(gè)很大的話題,因?yàn)楸救四芩?,僅討論使用Simulink模型開發(fā)嵌入式軟件的
2、設(shè)計(jì)過程。也就是說,我只能聊基于模型的嵌入式軟件設(shè)計(jì)。我的解是,通過寸算法建模進(jìn)軟件設(shè)計(jì)的過程,可以叫基于模型的設(shè)計(jì)。當(dāng)然,如果僅限于算法建模,把Simulink/Stateflow當(dāng)做Visio使用,而去進(jìn)其他環(huán)節(jié)的工作,這樣的基于模型設(shè)計(jì)是完整的,可能對(duì)你的開發(fā)效會(huì)有很大的提升。如果想通過基于模型的設(shè)計(jì)提升軟件開發(fā)團(tuán)隊(duì)的開發(fā)效,提高軟件品質(zhì),我覺得至少有如下幾點(diǎn)可以考慮:1. 算法建模2. 算法模型的驗(yàn)證3. 文檔自動(dòng)化4. 代碼生成5. 代碼和模型的等效性驗(yàn)證傳統(tǒng)的開發(fā)過程中,我們有一個(gè)環(huán)節(jié),需求捕獲,也即,從系統(tǒng)需求分解出軟件需求。在基于模型的設(shè)計(jì)過程中,我們同樣可以通過分析系統(tǒng)需求,
3、獲得軟件需求。當(dāng)然,根據(jù)系統(tǒng)需求的詳細(xì)程,我們可以考慮是否要寫專門的軟件需求。在基于模型的軟件設(shè)計(jì)中,我們主要關(guān)心的是系統(tǒng)的功能需求,或者說可以通過軟件實(shí)現(xiàn)的功能需求。如果這部分需求在系統(tǒng)需求文檔已經(jīng)有非常清楚的定義,那么我們可以以系統(tǒng)需求文檔作為依據(jù)建模型。當(dāng)然,如果系統(tǒng)需求是足夠清楚,那我們有必要編寫專門的軟件需求文檔。如果考慮Simulink/Stateflow的應(yīng)用上的問題,也就是說,如果我們是熟練的Simulink/Stateflow用戶,那么建模過程的主要工作是需求分析,通俗點(diǎn)講,需求清楚,建模也就是非常簡(jiǎn)單的事情。當(dāng)然,建模的時(shí)候,要考慮夫夾的驗(yàn)證、實(shí)現(xiàn)以及后期維護(hù)的問題。我個(gè)人
4、的體會(huì),這個(gè)階段,要著急建模,一定要先清需求,另外,建模的時(shí)候,模型架構(gòu)非常重要。有模型之后,接下來要做么事情?代碼生成?這是很多比較初級(jí)的用戶容犯的錯(cuò)誤,犯這個(gè)錯(cuò)誤的用戶,很大程上是因?yàn)闆]有清楚為么要做基于模型的設(shè)計(jì)?到底可以為么要做基于模型的設(shè)計(jì)?我相信很多用戶沒有仔細(xì)考慮這個(gè)問題,很多用戶做基于模型的設(shè)計(jì)的由是:國(guó)外的公司這么做,同其他公司這么清為么要基于模型的設(shè)計(jì),也就是要清楚基于模型的設(shè)計(jì)給我們帶來哪些好處?很多人會(huì)非常自然的想到,代碼生成,代碼生成可以提高軟件開發(fā)效。沒錯(cuò),代碼生成是一個(gè)很大的好處,但,代碼生成是唯一的,也是最大的好處。最大的好處是,算法的早期驗(yàn)證,之前NASA有研
5、究表明,開發(fā)初期引入的bug,如果到晚期才發(fā)現(xiàn)出夾,那么修復(fù)這一的bug,會(huì)產(chǎn)生非常大的費(fèi)用。所以,我們期望能夠盡早的發(fā)現(xiàn)開發(fā)過程中引入的bug。如何盡耳的發(fā)現(xiàn)設(shè)計(jì)上的錯(cuò)誤?傳統(tǒng)的開發(fā)模式,我們使用review的方式去發(fā)現(xiàn)錯(cuò)誤,在質(zhì)體系ISO9001面有定義,任何一份設(shè)計(jì),必須要評(píng)審。評(píng)審的目的,就是為發(fā)現(xiàn)這個(gè)階段的錯(cuò)誤,以防錯(cuò)誤被帶到后續(xù)的開發(fā)過程中。而評(píng)審的效,卻是非常低下的。我想凡是參加評(píng)審的網(wǎng)友會(huì)有體會(huì)。比如,我在做完一份設(shè)計(jì)之后,我會(huì)邀請(qǐng)我的同事夾評(píng)審我的工作,而參加評(píng)審的這些同事,往往能有足夠的時(shí)間解我的這份工作,而只能在評(píng)審會(huì)上聽我介紹我做的工作,這樣的評(píng)審,可能會(huì)發(fā)現(xiàn)一些非常明
6、顯的問題,除此之外的,很兔難發(fā)現(xiàn)問題。評(píng)審作為一種非常傳統(tǒng)的驗(yàn)證方式,并能及時(shí)發(fā)現(xiàn)設(shè)計(jì)過程中引入的各種錯(cuò)/誤。而仿真真是可以運(yùn)的,如果我們?cè)O(shè)定一些輸入,運(yùn)模型之后,我們會(huì)得到相應(yīng)的輸,從效上講,要遠(yuǎn)高于評(píng)審,仿真容發(fā)現(xiàn)設(shè)計(jì)中的問題。仿出,我們很容觀測(cè)到此時(shí)的輸出是否是我們期望的輸出。另外還有好處,仿真的結(jié)果是確定的,給定輸入,就會(huì)得到確定的輸出,當(dāng)然,期望輸出也是確定的。而像評(píng)審,同樣的文字,對(duì)于同人,可能解成同的含義。代碼生成和早期驗(yàn)證之外,基于模型的設(shè)計(jì),還可以給我們帶夾其他好處,比如文檔自動(dòng)化。我們經(jīng)常聽到這樣的說法:我們終于把軟件發(fā)布出去,現(xiàn)在可以有時(shí)間補(bǔ)文檔下個(gè)月要audit,所有同
7、事在補(bǔ)文檔.這我要問:為么要補(bǔ)文檔?補(bǔ)文檔,我們可以從中得到兩個(gè)方面的信息:1. 文檔很重要,能沒有,至少從質(zhì)體系上要求我們必須有文檔2. 工程師愿意寫文檔,是啊,如果愿意寫文檔的話,在開發(fā)過程中自然會(huì)把各類文檔寫起夾的。好,工程師愿意寫,開發(fā)過程中又能少,如果計(jì)算機(jī)可以幫我們寫,豈是很美好的事情?;谀P偷脑O(shè)計(jì),可以幫助我們實(shí)現(xiàn)文檔自動(dòng)化,至少有相當(dāng)大的一部分文檔可以讓計(jì)算機(jī)替我們寫。其實(shí),基于模型的設(shè)計(jì),還有一個(gè)天然的優(yōu)勢(shì):圖形化設(shè)計(jì)。對(duì)于工程師夾講,圖形化的東西,本身就比文字容解,否則我們?cè)谲浖_發(fā)過程中也會(huì)去畫程圖和狀態(tài)機(jī)Q所以總結(jié)一下,基于模型的設(shè)計(jì)可以從以下方面給我們提供:1. 圖
8、形化設(shè)計(jì)2. 早期驗(yàn)證3. 代碼生成4. 文檔自動(dòng)化前面我大概論述為么要做基于模型的設(shè)計(jì),或者說基于模型的設(shè)計(jì)可以給我們帶夾哪些好處。這些好處,最終會(huì)大大提高開發(fā)效,并且改善軟件品質(zhì)。下面,我在說說基于模型的設(shè)計(jì)有哪些事情要做,劉博士說的沒錯(cuò),基于模型的設(shè)計(jì),自然模型最重要,如何建模,毫無疑問是最為重要的環(huán)節(jié)。在軟件產(chǎn)品開發(fā)中,建?;顒?dòng),耗時(shí)最多的,就應(yīng)該是需求分析,需求分析僅包括如何正確解軟件需求,而且要考慮如何通過模型實(shí)現(xiàn),真正的畫模型的時(shí)間,相比之下并多,如果Simulink/Stateflow用的熟的話,真正打開MATLAB畫模型的時(shí)間占建模階段總時(shí)間的1/3到。建模之后,接下夾就是模
9、型驗(yàn)證,驗(yàn)證,英文單詞Verification,英文面還有另外一個(gè)詞Validation,確認(rèn),很多人清楚這兩個(gè)詞之間的區(qū)別,通俗點(diǎn)講:Verification是考察你是否正確的做一件事,而Validation,則是考察你是否做出正確的東西。一個(gè)強(qiáng)調(diào)的是過程,一個(gè)在乎的是結(jié)果。閑話少說,咱們繼續(xù)回到模型驗(yàn)證上夾,通常模型驗(yàn)證包含如下活動(dòng):建模標(biāo)準(zhǔn)的檢查、評(píng)審、單元測(cè)試、快速原型。(如果說的完善,歡迎大家補(bǔ)充)建模標(biāo)準(zhǔn)的檢查,可以通過模型檢查工具自動(dòng)完成,建模標(biāo)準(zhǔn)檢查的意義,和傳統(tǒng)開發(fā)模式C編碼標(biāo)準(zhǔn)的意義一致,這展開。模型驗(yàn)證之后,接下夾就可以做代碼生成,有關(guān)代碼生成,也專門討論吧。1. 代碼生
10、成之后,需要做代碼驗(yàn)正,基于模型的開發(fā)過程面,SIL、PIL是常用的代碼驗(yàn)證方式。2. 在代碼做完SIL或者PIL測(cè)試之后,要考慮軟件集成,即應(yīng)用層軟件,也就是通過Simulink模型生成的軟件,和底層驅(qū)動(dòng)軟件之間的集成。3. 軟件集成之后,后面的事情,基本上和傳統(tǒng)的開發(fā)模式差多,當(dāng)然,相對(duì)于傳統(tǒng)的開發(fā)模式,你可以多一個(gè)HIL環(huán)節(jié)出夾,過話又說回夾,即是傳統(tǒng)的開發(fā)模式,也一樣可以有HIL這個(gè)環(huán)節(jié)的。有關(guān)HIL的實(shí)現(xiàn)及目的,以后再說。再說說模型驗(yàn)證的必要性。我在進(jìn)入MathWorks之后,接觸過很多客戶,少客戶在最初引入基于模型設(shè)計(jì)的時(shí)候,根本在意模型驗(yàn)證工作,他們經(jīng)常在模型編譯通過之后就拿去生
11、成代碼,有代碼之后將代碼下載到各種快速原型設(shè)備上去測(cè)試算法,Simulink的仿真功能基本上成擺設(shè)。并且在這個(gè)階段,管我如何苦口婆心的給他們介紹模型驗(yàn)證的重要性,在他們那邊卻總有各種各樣的借口去模型驗(yàn)證環(huán)節(jié),"項(xiàng)目時(shí)間太緊,模型夾及測(cè),“我們知道規(guī)范的開發(fā)程,但是現(xiàn)在人手夠。當(dāng)然這類用戶經(jīng)常在這樣折騰一段時(shí)間之后,還是要回到模型測(cè)試上夾,他們最終會(huì)發(fā)現(xiàn),在HIL設(shè)備上測(cè)試算法,實(shí)在太難,當(dāng)然,也有堅(jiān)持的,堅(jiān)持的結(jié)果就是他們所謂的基于模型的設(shè)計(jì),開發(fā)效比傳統(tǒng)的開發(fā)模式高多少。其實(shí),這個(gè)問題我們可以這么去看,模型階段的測(cè)試,我們是可以分模塊進(jìn)的,而HIL上測(cè)試,基本上是集成之后的軟件。比
12、如,一個(gè)軟件有10個(gè)模塊,在HIL設(shè)備上,你很難分離出每個(gè)模塊的bug,而如果是按模塊做單元測(cè)試,則f具體的模塊。打一個(gè)算恰當(dāng)?shù)谋确?,我們知道一塊2克的鉆石,價(jià)格肯定是一塊1克鉆石的兩倍。類似的,如果每個(gè)軟件模塊有2個(gè)bug,那么你從集成好的軟件去消除這20個(gè)bug,耗費(fèi)的肯定是從每個(gè)單元模塊去消除bug所耗的總和。說白,早期驗(yàn)證是非常重要的,很多軟件工程的教材有相關(guān)的統(tǒng)計(jì)數(shù)據(jù)說明早期驗(yàn)證的重要性,對(duì)應(yīng)到基于模型的開發(fā)過程,能在模型級(jí)別做的驗(yàn)證,-定要拖到后續(xù)的環(huán)節(jié)中。中國(guó)有話,“心急吃熱豆腐,“項(xiàng)目時(shí)間緊或者“人手夠能成為我們忽模型測(cè)試的借口。繼續(xù)說一下MBD開發(fā)過程中有哪些驗(yàn)證工作要做。模
13、型出夾并且可以編譯之后首先要做建模標(biāo)準(zhǔn)檢查這個(gè)過程使用工具(比如MathWorks公司的SimulinkVerification&Validation提供的modeladvisor)自動(dòng)化的完成,檢查過后,修改模型中符合公司建模規(guī)則的項(xiàng)目。接下夾,就可以進(jìn)模型評(píng)審,也就是說,評(píng)審的模型有兩個(gè)前提,-是可以編譯的,二是符合公司建模規(guī)則的。這兩個(gè)前提可以幫助我們消除模型中的一些低級(jí)錯(cuò)誤,避免在評(píng)審過程中有太多的時(shí)間花費(fèi)在這些錯(cuò)誤上。因?yàn)樵u(píng)審是建模的工程師和其他同事共同參與的活動(dòng),做到上述兩個(gè)前提,也是-寸其他同事工作時(shí)間的一種尊重。評(píng)審之后,建模的工程師會(huì)修改評(píng)審中發(fā)現(xiàn)的問題,問題多的話,
14、一般會(huì)要求修改之后再進(jìn)“再評(píng)審,直到在評(píng)審中會(huì)發(fā)現(xiàn)大問題。接下夾,我們可以使用SimulinkDesignVerifier進(jìn)模型的結(jié)構(gòu)分析,借助于SimulinkDesignVerifier自動(dòng)生成測(cè)試用的功能,去檢查結(jié)構(gòu)上是否存在問題,比如是否有合的邏輯設(shè)計(jì),是否有運(yùn)到的分支等。再往后,就可以進(jìn)模型單元級(jí)別的功能測(cè)試。軟件開發(fā)過程中,寸單元測(cè)試的要求是很高的,一般會(huì)根據(jù)應(yīng)用的安全性、可靠性要求,給出測(cè)試的覆蓋要求。這個(gè)過程中工作最大的應(yīng)該是測(cè)試用設(shè)計(jì)以及測(cè)試向的生成。測(cè)試用設(shè)計(jì),我們一般會(huì)根據(jù)需求去設(shè)計(jì)測(cè)試用,當(dāng)然,也會(huì)結(jié)合模型結(jié)構(gòu)設(shè)計(jì)測(cè)試用,這樣說夾,這的測(cè)試,已經(jīng)包含黑盒測(cè)試和白盒測(cè)試。
15、有測(cè)試用,如何把測(cè)試用轉(zhuǎn)換為測(cè)試向,這也是非常重要的環(huán)節(jié)。我們知道,在MBD開發(fā)過程中,代碼可以自動(dòng)生成,其他環(huán)節(jié),我們要努做到自動(dòng)化實(shí)現(xiàn)。我們可以使用MATLAB腳本開發(fā)一些轉(zhuǎn)換工具用于將測(cè)試用轉(zhuǎn)換為測(cè)試向,我們還可以通過腳本實(shí)現(xiàn)測(cè)試過程的自動(dòng)化。測(cè)試的指標(biāo),即測(cè)試覆蓋是否達(dá)到公司的要求或者業(yè)的要求。單元級(jí)別的功能測(cè)試完成之后,我弋們自然會(huì)進(jìn)集成測(cè)試,當(dāng)然,集成測(cè)試是分階段、有步驟的,我們可以先把一些單元模塊集成為組件級(jí),進(jìn)組件級(jí)的集成測(cè)試,然后再將組件集成為系統(tǒng)級(jí),進(jìn)系統(tǒng)級(jí)測(cè)試。集成測(cè)試和單元測(cè)試關(guān)注的內(nèi)容同,集成測(cè)試,我們關(guān)注于單元模塊之間的借口關(guān)系、調(diào)用關(guān)系等等,所以,單元測(cè)試中要求的
16、判定覆蓋、MCDC覆蓋等,在集成測(cè)試中沒有這樣的要求。條件允許的情況下,集成測(cè)試之前或者之后,可以通過快速原型的方式和實(shí)物相連,進(jìn)測(cè)試。集成測(cè)試通過之后,我們基本上可以認(rèn)為模型或者說算法是正確的。接下夾,我們就可以進(jìn)代碼生成。代碼生成之后,會(huì)跟著做SIL、PIL、HIL等測(cè)試,所有這些In-the-Loop測(cè)試是必須的,工程師應(yīng)該根絕項(xiàng)目的實(shí)際情況,選擇合的測(cè)試方案,當(dāng)然,建議SIL測(cè)試要,原因在于這種測(cè)試的確非常方做,并且也的確會(huì)發(fā)現(xiàn)一些代碼生成過程中出現(xiàn)的問題。前面提到模型驗(yàn)證,下面再說說代碼生成。代碼生成的前提是模型已經(jīng)是驗(yàn)證過的模型,或者說,是正確的模型。正確的模型包含兩層含義,模型做
17、過足夠多的驗(yàn)正驗(yàn)證的結(jié)果是正確的。前面提到的各種驗(yàn)正方式,有必要做,對(duì)于功能測(cè)試夾講,還有必要達(dá)到足夠高的覆蓋率要求。做到以上這些,就可以考慮進(jìn)行代碼生成工作了5代碼生成是否就是按一“CodeGeneration”按鈕的工作呢?工程項(xiàng)目開發(fā)中,沒那么簡(jiǎn)單,代碼生成過程中,工程師要做的主要工作是數(shù)據(jù)管理工作,除此之外,還會(huì)有一些代碼相關(guān)的配置,比如函數(shù)原型、比如代碼文件等等。數(shù)據(jù)管理主要貯寸Simulink/Stateflow模型中的兩類數(shù)據(jù)進(jìn)行管理,-是信號(hào),一是參數(shù)"寸應(yīng)于C代碼,我們可以簡(jiǎn)單的把信號(hào)寸應(yīng)到變量上,而參數(shù),則是不通過程序運(yùn)行而發(fā)生變化的,參數(shù)的變化,一般是通過人工調(diào)
18、節(jié)完成的,也就是參數(shù)調(diào)節(jié),參數(shù)調(diào)節(jié)的目的是為了選擇合適的參數(shù)以得到最佳的性能。數(shù)據(jù)管理的方式,使用的是數(shù)據(jù)寸象進(jìn)行數(shù)據(jù)管理,這里的“寸象”二字,和我們經(jīng)常聽到的“面向寸象編程”里面的“寸象”意義相同0Simulink為用戶事先定義好兩個(gè)包,一個(gè)是SimulinkPackage,一個(gè)是mptPackage。以SimulinkPackage為例,包里面有類,分別為Simulink.Signal和Simulink.Parameter兩個(gè)類。用戶可以通過這兩個(gè)類定義相應(yīng)的寸象(Object),然后通過類提供的屬性(Property)定義數(shù)據(jù)的屬性。其實(shí)這兩個(gè)類里面除了屬性之外,還定義了方法(Metho
19、d),-般情況下,我們管理數(shù)據(jù),使用當(dāng)然,不管是SimulinkPackage還是mtpPackage,都不能完全滿足用戶的所有要求,所以,很多時(shí)候,需要用戶定義自己的Package。依然按照面向寸象里面的一些概念,我們可以從SimulinkPackage或者mptPackage繼承并創(chuàng)建自己的包。所有我們關(guān)心的數(shù)據(jù)都通過數(shù)據(jù)寸象的方式做了定義之后,接下夾的工作,就是按下按鈕,生成代碼了。因?yàn)榍懊骖A(yù)的帖子夠多,的代碼吧。所以繼續(xù)在這個(gè)帖子討論一自動(dòng)生成首先說一下大家很關(guān)心的效問題,代碼效,我之前做過對(duì)比,比一般的工程師寫的代碼效要高,當(dāng)然,我弋相信對(duì)于那種C代碼高手,一定可以寫出效高的代碼。過
20、我想強(qiáng)調(diào)的是,自動(dòng)生成的代碼,是可以用的,要有任何心障礙,畢竟,我們項(xiàng)目開發(fā)中的多數(shù)工程師也是絕對(duì)的C語言高手。另外,關(guān)于效,我最近也做過一次對(duì)比,就在這個(gè)帖子最開頭提到的那個(gè)貼子,雖然代碼沒有人去做編譯,但從代碼數(shù)夾看,和一個(gè)寫6C代碼的工程師的代碼基本差多。再說說代碼可讀性的問題,很多人和我強(qiáng)調(diào)代碼的可讀性如手寫的好,我有條件的承認(rèn)這-點(diǎn)。為么是有條件的承認(rèn)呢,我想說,如果你對(duì)模型做足夠多的配置,生成的代碼可讀性基本上可以和手寫的差多。當(dāng)然,我弋想強(qiáng)調(diào),在基于模型的開發(fā)過程中,我們是讀代碼的(如果一定要讀,那也是讀那個(gè).h文件),我們有其他方式保證代碼是正確的,無須讀代碼。再有一個(gè)問題,就
21、是代碼的集成問題,很多人也比較關(guān)心自動(dòng)生成的代碼如何集成到底層代碼或者如何與其他手寫代碼做集成的問題,我一般會(huì)問他,如果這個(gè)模塊的代碼是手寫的,你會(huì)怎么集成?他當(dāng)然知道手寫代碼該怎么集成好,自動(dòng)生成的代碼也同樣可以集成。做代碼集成的時(shí)候,我們關(guān)心的就是那個(gè).h文件。有關(guān)底層驅(qū)動(dòng)的建模,我一直認(rèn)為在產(chǎn)品化項(xiàng)目開發(fā)中,底層驅(qū)動(dòng)是沒有必要建模的。原因如下:1)底層驅(qū)動(dòng)在Simulink環(huán)境下能仿真;2)底層驅(qū)動(dòng)建模需要熟悉另外一種腳本語言TLC;3)產(chǎn)品化項(xiàng)目的底層軟件往往很大,有些項(xiàng)目的底層軟件甚至大于應(yīng)用層軟件,如此大的軟件轉(zhuǎn)換成Simulink下的TLC實(shí)現(xiàn),容操作。當(dāng)然,有人會(huì)說,一旦有底層
22、驅(qū)動(dòng)模型,就可以非常方的實(shí)現(xiàn)Simulink模型到單片機(jī)hex文件的一鍵式實(shí)現(xiàn),的確這樣做貌似讓整個(gè)開發(fā)過程的自動(dòng)化程得以提升,但是,要忘記,你要開發(fā)出一個(gè)安全、可靠的底層模塊庫,會(huì)需要大的時(shí)間投入,尤其在使用TLC設(shè)計(jì)的時(shí)候,TLC本身就是另外一種新的語言,同時(shí)這種語言所提供的調(diào)試環(huán)境也盡如人意;相反,如果使用這種一鍵式的模式,而是采用手工集成的方式實(shí)現(xiàn)自動(dòng)生成的應(yīng)用層代碼與底層代碼做集成,也是非常簡(jiǎn)單,非常輕松的事情。總結(jié)一下,一鍵式的實(shí)現(xiàn)hex文件生成并能明顯提高開發(fā)效,而開發(fā)出這樣一個(gè)底層模塊庫,卻需要花費(fèi)大的時(shí)間。到MathWorks工作以夾,經(jīng)常被客戶問到這樣的問題:MATLAB的
23、代碼生成支持么芯片?支持么芯片?MATLAB生成的是ANSIC代碼,支持所有編譯器,也就是支持所有芯片。當(dāng)然,我說的是應(yīng)用層代碼的生成,包括底層驅(qū)動(dòng)代碼。我也知道很多人問這個(gè)問題的時(shí)候,心面想著的是TargetSupportPackage這樣一個(gè)工具包,這個(gè)包面的確提供一些MCU或者DSP的底層驅(qū)動(dòng)模塊,借助于這些模塊,我們可以生成底層代碼。過,繼續(xù)強(qiáng)調(diào)一下,在很多工程化的項(xiàng)目,這是一個(gè)產(chǎn)品化的解決方案,這種方案適合于做算法的快速驗(yàn)證。也正是因?yàn)檫@是一個(gè)產(chǎn)品化的方案,所以這個(gè)產(chǎn)品的用戶非常少,以至于MATLAB從2011a開始,再單獨(dú)銷售這個(gè)模塊,并承諾以后會(huì)繼續(xù)新這個(gè)模塊,這個(gè)模塊連同IDELink被打包到EmbeddedCoder產(chǎn)品中,只有你購買EmbeddedCoder,你就可以使用這個(gè)模塊。再說說In-the-Loop測(cè)試的問題吧。我們經(jīng)常聽到的有MIL、SIL、PIL、HIL等,在基于模型設(shè)計(jì)的開發(fā)過程中,是否要做這些In-the-Loop測(cè)試?我認(rèn)為所有的In-the-Loop是一定要做的,過,我非常建議要SIL環(huán)節(jié)。1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國(guó)度假酒店行業(yè)資本規(guī)劃與股權(quán)融資戰(zhàn)略制定與實(shí)施研究報(bào)告
- 2025-2030年中國(guó)車載視頻監(jiān)控行業(yè)資本規(guī)劃與股權(quán)融資戰(zhàn)略制定與實(shí)施研究報(bào)告
- 2025-2030年中國(guó)空調(diào)行業(yè)營(yíng)銷創(chuàng)新戰(zhàn)略制定與實(shí)施研究報(bào)告
- 2025-2030年中國(guó)按摩家電行業(yè)資本規(guī)劃與股權(quán)融資戰(zhàn)略制定與實(shí)施研究報(bào)告
- 自動(dòng)噴淋壓力試驗(yàn)方案
- 夜場(chǎng)家具知識(shí)培訓(xùn)課件
- 鍍鋅蛋托網(wǎng)行業(yè)行業(yè)發(fā)展趨勢(shì)及投資戰(zhàn)略研究分析報(bào)告
- 中國(guó)在線視頻網(wǎng)站行業(yè)市場(chǎng)發(fā)展現(xiàn)狀及投資策略咨詢報(bào)告
- 三年級(jí)數(shù)學(xué)(上)計(jì)算題專項(xiàng)練習(xí)附答案
- 防溺水安全知識(shí)培訓(xùn)課件
- 《神經(jīng)發(fā)展障礙 兒童社交溝通障礙康復(fù)規(guī)范》
- 2025年遼寧省大連市普通高中學(xué)業(yè)水平合格性考試模擬政治試題(一)
- 2024版戶外廣告牌安裝與維護(hù)服務(wù)合同2篇
- 云南省昆明市五華區(qū)2023-2024學(xué)年九年級(jí)上學(xué)期期末數(shù)學(xué)試卷
- 安徽省合肥市第四十中學(xué)2024~2025學(xué)年九年級(jí)上學(xué)期化學(xué)期末模擬試題(含答案)
- 安徽省淮北市(2024年-2025年小學(xué)六年級(jí)語文)部編版期末考試((上下)學(xué)期)試卷及答案
- 大學(xué)生職業(yè)生涯規(guī)劃
- 干燥綜合征的護(hù)理查房
- 2023-2024學(xué)年浙江省杭州市上城區(qū)教科版四年級(jí)上冊(cè)期末考試科學(xué)試卷
- 江蘇省徐州市2023-2024學(xué)年六年級(jí)上學(xué)期期末科學(xué)試卷(含答案)2
- 《三國(guó)志》導(dǎo)讀學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
評(píng)論
0/150
提交評(píng)論