《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 解決方案 > 賽靈思All Programmable抽象化: All Programmable的實(shí)現(xiàn)之路

賽靈思All Programmable抽象化: All Programmable的實(shí)現(xiàn)之路

2013-05-27

自計(jì)算機(jī)計(jì)算誕生以來,抽象化與自動(dòng)化已成為設(shè)計(jì)團(tuán)隊(duì)提高生產(chǎn)力的有力工具,。我們細(xì)想一下世界上第一臺(tái)數(shù)字計(jì)算機(jī)ENIAC,,這是1946年受美國(guó)軍方委托開發(fā)的項(xiàng)目,被預(yù)示為“超級(jí)大腦”,。它能通過編程執(zhí)行復(fù)雜的運(yùn)算序列,。然而,處理編程問題并將其映射至機(jī)器的這個(gè)過程十分復(fù)雜,,通常需要數(shù)周才能完成。在紙上完成編程后,,需要通過操控計(jì)算機(jī)的開關(guān)和線纜將程序輸入ENIAC中,,這又需要數(shù)天甚至數(shù)周時(shí)間。然后輔以機(jī)器的“單步執(zhí)行”功能進(jìn)行驗(yàn)證和調(diào)試,。

 

編程抽象化

 

像1972年Dennis Richie在貝爾實(shí)驗(yàn)室開發(fā)的C編程語言之類的創(chuàng)新,,使實(shí)現(xiàn)一種獨(dú)立于機(jī)器但仍允許程序員對(duì)各個(gè)信息位行為進(jìn)行控制的高級(jí)編程技術(shù)成為可能。由于C語言具有強(qiáng)大的功能和高度的靈活性,,最初采用匯編代碼編寫的UNIX操作系統(tǒng)幾乎可以直接用C語言進(jìn)行重寫,。鑒于與UNIX密切相關(guān),加上C自動(dòng)編譯器的推出,,C語言迅速得到推廣,,1983年美國(guó)國(guó)家標(biāo)準(zhǔn)協(xié)會(huì)(ANSI) 對(duì)其進(jìn)行了標(biāo)準(zhǔn)化。

 

Bjarne Stroustrup 在1978年研究博士論文時(shí)就開始研究“C with Classes”,顧名思義就是一種C語言的父集,。他的目標(biāo)是在C語言中加入面向?qū)ο蟮某绦蛟O(shè)計(jì),,同時(shí)在不犧牲性能或低級(jí)可控性的前提下保持可移植性。1983年,,這種語言更名為C++,,并新增了一些功能以及更多編譯器支持。

 

硬件抽象化

差不多在相同的時(shí)期內(nèi),,抽象化也正被引入硬件設(shè)計(jì)方法中,。1981年,美國(guó)國(guó)防部正在開發(fā)VHSIC硬件描述語言(VHDL),,用以“解決硬件設(shè)計(jì)生命周期危機(jī)”,。所提出的要求是:這種語言要具有廣泛的描述功能,在任何仿真器上得出的結(jié)果應(yīng)該是相同的,,而且要獨(dú)立于技術(shù)和設(shè)計(jì)方法,。

 

與此同時(shí),Gateway Design Automation公司開發(fā)了一種名為Verilog-XL的邏輯仿真器,,后來被Cadence Design Systems公司收購,。該語言隨后向公眾推廣,使其他從事電子設(shè)計(jì)自動(dòng)化(EDA)公司都能夠用它構(gòu)建自動(dòng)化功能,。隨著VHDL和Verilog標(biāo)準(zhǔn)化,,設(shè)計(jì)自動(dòng)化接踵而至。

抽象化推動(dòng)設(shè)計(jì)自動(dòng)化發(fā)展

 

基于標(biāo)準(zhǔn)的自動(dòng)化

 

為了滿足市場(chǎng)要求,,設(shè)計(jì)團(tuán)隊(duì)正在借助軟/硬件設(shè)計(jì)方法,,并利用具有不同抽象化層次的異構(gòu)并行架構(gòu)來開發(fā)“更智能”系統(tǒng)。行業(yè)標(biāo)準(zhǔn)與開源社區(qū)的推廣使抽象化自動(dòng)化成為可能,。就硬件加速而言,,IP標(biāo)準(zhǔn)正在孕育著真正的即插即用型IP,并促進(jìn)IP集成自動(dòng)化發(fā)展,,從而有助于提高設(shè)計(jì)人員的設(shè)計(jì)生產(chǎn)力,。

 

對(duì)于針對(duì)賽靈思All Programmable FPGA和SOC設(shè)計(jì)的開發(fā)團(tuán)隊(duì)而言,這些抽象化成為了提高設(shè)計(jì)團(tuán)隊(duì)設(shè)計(jì)生產(chǎn)力的有力工具,。Vivado™設(shè)計(jì)套件配合使用廣泛的第三方操作系統(tǒng),、工具和IP核,可加速All Programmable器件的集成與實(shí)現(xiàn),。

Vivado設(shè)計(jì)套件:IP集成器

 

最新發(fā)布的Vivado設(shè)計(jì)套件提供一種新型IP集成器(IPI),,用于實(shí)現(xiàn)IP智能集成。IPI提供圖形化,、腳本編寫(Tcl),、生成即保證正確(correct-by-construction),、及以IP和系統(tǒng)為中心的設(shè)計(jì)開發(fā)流程。IPI 建立在Vivado集成設(shè)計(jì)環(huán)境的基礎(chǔ)之上,,同時(shí)具備器件感知與平臺(tái)感知功能,。這種互動(dòng)環(huán)境支持關(guān)鍵IP接口的智能自動(dòng)連接、IP子系統(tǒng)一鍵式生成,、實(shí)時(shí)DRC以及接口變更傳播功能,,而且具備強(qiáng)大的調(diào)試功能。

 

 

IPI使設(shè)計(jì)可以通過“生成即保證正確”的方式完成,。設(shè)計(jì)人員能夠進(jìn)行接口級(jí)抽象化(interface level of abstraction),,并可利用廣泛的IP系列。這些IP通過AMBA® AXI4接口提供,,存儲(chǔ)在一個(gè)開放的行業(yè)標(biāo)準(zhǔn)IP-XACT庫中,。

 

設(shè)計(jì)團(tuán)隊(duì)現(xiàn)在可以使用IPI快速組裝復(fù)雜的系統(tǒng)。將該工具與其他Vivado功能配合使用,,能夠確保設(shè)計(jì)和IP得到正確配置,,因此利用VHDL或Verilog語言提高以上抽象化,從而改善生產(chǎn)力,。此外,,IPI的內(nèi)置自動(dòng)化器件驅(qū)動(dòng)程序以及地址映射生成功能可以消除軟件開發(fā)流程中的手動(dòng)操作步驟。

ALL PROGRAMMABLE 抽象化與自動(dòng)化

 

Vivado設(shè)計(jì)套件:高層次綜合

 

傳統(tǒng)的標(biāo)準(zhǔn)軟件抽象化現(xiàn)在也被用于硬件開發(fā),。很多開發(fā)團(tuán)隊(duì)將C和C的派生語言作為硬件開發(fā)的建模語言,。主要原因有兩點(diǎn):這種方法的驗(yàn)證優(yōu)勢(shì)是RTL仿真的100倍;或者,,開發(fā)團(tuán)隊(duì)需要對(duì)運(yùn)行在處理器上的算法進(jìn)行加速,。Vivado高層次綜合能使賽靈思All Programmable器件充分滿足C、C++和System C規(guī)范要求,,從而加速IP的創(chuàng)建,。Vivado HLS無需手動(dòng)創(chuàng)建RTL,同時(shí)還能提供快速的設(shè)計(jì)空間探索,。由于能夠提高生產(chǎn)力和設(shè)計(jì)重用性,,這種工具正在得到廣泛應(yīng)用。

 

賽靈思通過推出最新的Vivado,,為具有行業(yè)標(biāo)準(zhǔn)的OpenCV庫增添了有效支持。OpenCV可幫助優(yōu)化運(yùn)行在處理器(例如Zynq™-7000 All Programmable SoC上的處理)上的智能視頻算法移植到基于硬件的加速器上(該加速器可通過IPI快速集成到異構(gòu)系統(tǒng)中),。憑借Vivado IPI與HLS系統(tǒng),,設(shè)計(jì)架構(gòu)師就可以更加快速地實(shí)現(xiàn)復(fù)雜的異構(gòu)系統(tǒng)。

VIVADO設(shè)計(jì)套件自動(dòng)化

自動(dòng)化而非指令性的設(shè)計(jì)流程

 

根據(jù)解決問題的要求不同,,開發(fā)團(tuán)隊(duì)也會(huì)采用基于模型的抽象化,?;谀P偷牧鞒炭商峁┮幌盗忻嫦蛑悄芤曈X、智能網(wǎng)絡(luò)應(yīng)用及其它應(yīng)用的豐富模型庫,。設(shè)計(jì)團(tuán)隊(duì)可以開發(fā)并改善算法,,在更高的抽象化級(jí)別上充分滿足系統(tǒng)要求,且無需擔(dān)心具體的實(shí)現(xiàn)細(xì)節(jié),。然后,,基于模型的流程會(huì)自動(dòng)從算法模型中生成用于處理器的C代碼以及RTL代碼。賽靈思與MathWorks®和National Instruments®展開緊密合作,,以確保為Zynq-7000 AP SoC設(shè)計(jì)的實(shí)現(xiàn)提供高度自動(dòng)化和無縫的流程,。

 

要想充分發(fā)揮All Programmable設(shè)計(jì)的優(yōu)勢(shì),主要取決于自動(dòng)化水平和高層次的抽象化,。今天,,賽靈思率先推出各種設(shè)計(jì)方法,能充分應(yīng)對(duì)上述挑戰(zhàn),。賽靈思與其生態(tài)系統(tǒng)的聯(lián)盟成員共同開發(fā)并推出直觀的智能標(biāo)準(zhǔn)化設(shè)計(jì)流程,,可支持開發(fā)工作實(shí)現(xiàn)自動(dòng)化(而非指令化),從而在確保性能,、功耗或成本優(yōu)勢(shì)的前提下靈活地滿足開發(fā)團(tuán)隊(duì)的需求,。

未來的自動(dòng)化:助力軟件和系統(tǒng)設(shè)計(jì)師

 

賽靈思致力于提供一款系統(tǒng)級(jí)異構(gòu)并行的編程環(huán)境,可靈活地利用C/C++等熟悉的當(dāng)前抽象化技術(shù),,并不斷擴(kuò)展到包括開放計(jì)算語言(OpenCL)(基于Eclipse的綜合軟件開發(fā)環(huán)境)在內(nèi)的最新抽象化技術(shù),。這種環(huán)境可提供特定市場(chǎng)的庫,能夠通過采用賽靈思All Programmable器件顯著提高異構(gòu)系統(tǒng)的驗(yàn)證效率,,并且理想適用于助力采用并行架構(gòu)的系統(tǒng)架構(gòu)師,、軟件應(yīng)用開發(fā)人員以及嵌入式設(shè)計(jì)人員,從而提高系統(tǒng)性能,,降低材料成本和總體功耗,,并在開發(fā)時(shí)間上與ASSP、DSP和GPU保持一致,。

 

系統(tǒng)級(jí)抽象化與自動(dòng)化

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章,、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容、版權(quán)和其它問題,,請(qǐng)及時(shí)通過電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。