近日,世界領(lǐng)先的技術(shù)計(jì)算和基于模型的設(shè)計(jì)的軟件開發(fā)商和供應(yīng)商MathWorks推出其MATLAB和Simulink產(chǎn)品系列的2013b版本,并宣布Polyspace新產(chǎn)品的面市。來自MathWorks中國區(qū)的應(yīng)用工程師團(tuán)隊(duì)經(jīng)理魏奮第一時間和與非網(wǎng)記者分享了新產(chǎn)品信息并給出更深入的細(xì)節(jié)解讀。
功能升級
此次2013b版本中針對MATLAB的一些重要的功能升級包括:在MATLAB中引入一個新的數(shù)據(jù)類型MATLAB table,是針對混合型表格數(shù)據(jù)的容器,方便用戶查詢,做一些排序和抽選;增加了一種新的基本數(shù)據(jù)類型Categorical Arrays,作為離散非數(shù)值數(shù)據(jù)的容器,是一種枚舉類型,比字符串的cell arrays內(nèi)存效率高。如果一個元素來自有限集,采用這一數(shù)據(jù)類型將占用更小的內(nèi)存,速度也會更快。這是一個和MATLAB table相互輔助的新的數(shù)據(jù)類型;在圖像處理工具箱中加入了34個可直接對GPU進(jìn)行支持的算法和函數(shù),其中2013b版本中加入了23個,此前的2013a中已經(jīng)加入了11個函數(shù)。魏奮表示,這一功能添加是基于MathWorks對市場需求和發(fā)展趨勢的掌握和判斷。當(dāng)然這種GPU加速支持需要另外一個Parallel Computing Toolbox工具箱作為輔助,就是所謂的并行計(jì)算工具箱;增加了MATLAB Compiler apps方便用戶將MATLAB程序進(jìn)行打包下載和移植。
以及Simulink中的一些新功能包括:引入Simulink Performance Advisor即性能建議器,可自動對用戶的模型進(jìn)行分析和優(yōu)化,當(dāng)然這一切是在給用戶提示的前提下進(jìn)行的;增加了新模塊MATLAB System Block,通過這個模塊,用戶可以在Simulink里更輕松的調(diào)用MATLAB算法,對于算法工程師和系統(tǒng)工程師之間的交流互動將有很大的幫助;更豐富的對話框,通過在對話框編輯器Mask Editor中加入更多的控件,如增加超鏈、圖像以及按紐等,讓用戶的對話框設(shè)計(jì)變得十分容易;增加了Comment Through注釋模塊,針對那些輸入輸出數(shù)量相同的模塊,添加這一注釋模塊后,在仿真過程中,信號可直接通過模塊,相當(dāng)于設(shè)置了一個仿真條件,類似一個開關(guān)的功能,幫助用戶更好的驗(yàn)證系統(tǒng)模塊的作用。
此外針對系統(tǒng)工具箱,MathWorks也做了部分功能擴(kuò)展和升級,包括:全新的LTE System Toolbox針對設(shè)計(jì)LTE設(shè)備或需要對LTE標(biāo)準(zhǔn)進(jìn)行驗(yàn)證的用戶,提供符合標(biāo)準(zhǔn)的LTE、LTE-Advanced黃金參考模型和測試波形;Phased Array System Toolbox提供設(shè)計(jì)與模擬相控陣信號處理系統(tǒng),可以使用MATLAB coder對函數(shù)和系統(tǒng)對象做C代碼生成,同時可實(shí)現(xiàn)任意分辨率的元素和陣列輻射模式的可視化;Computer Vision System Toolbox提供針對應(yīng)用越來越廣泛的計(jì)算機(jī)視覺的系統(tǒng)工具箱,提供相機(jī)校準(zhǔn)app,可以幫助用戶簡化工作流程,進(jìn)行自動棋盤檢測,調(diào)整圖像的幾何失真。
Polyspace系列新產(chǎn)品登場
一直以來MathWorks始終堅(jiān)守MATLAB和Simulink兩大產(chǎn)品線,看似缺乏創(chuàng)新,但了解這兩個工具后就會發(fā)現(xiàn),他們幾乎無所不包,MathWorks提供的強(qiáng)大的算法庫、圖形模塊和擴(kuò)展功能使之適用于幾乎所有的電子產(chǎn)品的模型搭建和系統(tǒng)驗(yàn)證應(yīng)用。
其中作為代碼驗(yàn)證和查錯的重要工具,此次MathWorks對Polyspace進(jìn)行了重新規(guī)劃,推出了兩款新產(chǎn)品Polyspace Code Prover和Polyspace Bug Finder。魏奮介紹,Polyspace工具采用目前業(yè)界普遍認(rèn)同的形式化方法,用推導(dǎo)性數(shù)學(xué)方法對代碼進(jìn)行無遺漏的驗(yàn)證和檢查,最大程度的降低錯誤率,目的是避免如Ariane 5號火箭因數(shù)據(jù)溢出而發(fā)射失敗,美國約克城巡洋艦因一個簡單的0作為除數(shù)的代碼誤操作而發(fā)生重大事故等等這些因運(yùn)行時代碼錯誤付出慘重代價的事件。這兩款產(chǎn)品的區(qū)別在于Code Prover的意思就是說它有證明功能,它能證明這個代碼是安全可靠的,更專注于QA部分,運(yùn)行時間相對要長一些,而Bug Finder相對比較簡單,可以幫助找到錯誤,但不具有證明功能,適用的范圍比較廣,運(yùn)行時間也較短。
硬件支持
為打破MathWorks的產(chǎn)品僅適用于軟件仿真和驗(yàn)證的局限,該公司也越來越多的與硬件結(jié)合,加強(qiáng)對硬件平臺的支持,將產(chǎn)品從原型設(shè)計(jì)向?qū)嶋H產(chǎn)品開發(fā)做進(jìn)一步擴(kuò)展。
此次更新的2013b版本就增加了Simulink工具對硬件平臺的支持。魏奮也表示,目前公司軟件工具僅對一些常用的教學(xué)級開發(fā)板進(jìn)行支持,如支持Arduino和樹莓派、賽靈思的Zynq和Zedboard等。實(shí)現(xiàn)這一功能的操作也很簡單,在相應(yīng)界面點(diǎn)擊按鈕,直接就把Simulink的模型下載到相應(yīng)的板卡,在里面運(yùn)行寫好的算法,可以把結(jié)果輸出到Simulink做可視化顯示,看到運(yùn)行結(jié)果是怎樣的,同時也可以做一些實(shí)時的調(diào)試。
Apps概念引入軟件驗(yàn)證平臺
此次MATLAB新增的另一個功能是MATLAB apps交互式程序的,在MATLAB apps中有MathWorks開發(fā)的一些程序供大家參考,也有用戶自己編寫的MATLAB代碼生成的apps和其他用戶分享。
作為覆蓋工程師群體廣泛的軟件,MathWorks如果能很好利用現(xiàn)有的軟件資源與硬件需求,為MATLAB構(gòu)建一個友好的由廣泛的用戶組成的龐大的生態(tài)系統(tǒng),將會為其注入強(qiáng)大的市場生命力。
與非網(wǎng)原創(chuàng)報道,未經(jīng)許可,不得轉(zhuǎn)載