Spectra-Q引擎提升Quartus II軟件FPGA開發(fā)效率
FPGA近幾年發(fā)展速度可以用突飛猛進(jìn)來形容,邏輯單元增長(zhǎng)速度是超摩爾定律的?,F(xiàn)在具備數(shù)百萬個(gè)邏輯單元的FPGA已經(jīng)被廣泛應(yīng)用于通信、測(cè)試、航天等多個(gè)領(lǐng)域,強(qiáng)大的性能也帶來了新的問題,那就是開發(fā)設(shè)計(jì)難度急劇增加。
Altera軟件和DSP產(chǎn)品市場(chǎng)經(jīng)理 Albert Chang
Altera軟件和DSP產(chǎn)品市場(chǎng)經(jīng)理Albert Chang表示:“Altera過去的FPGA的每一代產(chǎn)品,它的能力和功能都是漸進(jìn)式這樣的提高。從我們的Stratix三代到四代到五代,。它的能力都是一個(gè)漸進(jìn)式的提高,但是到了Arria10和Stratix10,可以看到它們的能力有一個(gè)跳躍式增長(zhǎng)。大家可以看到我們過去的五代產(chǎn)品可以支持100萬的邏輯單元,到了現(xiàn)在Stratix10和Arria10,它可以支持幾百萬個(gè)的邏輯單元,使用的都是ARM的內(nèi)核處理器,還支持浮點(diǎn)的預(yù)算,支持50種不同的協(xié)議。正是由于硬件能力的突飛猛進(jìn),我們也需要個(gè)更加強(qiáng)大的軟件設(shè)計(jì)工具。”
為了實(shí)現(xiàn)這一目標(biāo),近日Altera ltera宣布Quartus II軟件引入新的Spectra-Q引擎。Spectra-Q引擎提供快速算法,支持漸進(jìn)式設(shè)計(jì)修改,不需要進(jìn)行全設(shè)計(jì)編譯。引擎還具有分層數(shù)據(jù)庫(kù),支持用戶在修改設(shè)計(jì)的其他部分時(shí)保留IP模塊的布局布線信息不變。這有助于實(shí)現(xiàn)穩(wěn)定的設(shè)計(jì),避免了不必要的時(shí)序收斂投入,縮短了編譯時(shí)間。新引擎還包括了一個(gè)通用高級(jí)設(shè)計(jì)編譯器,其結(jié)果質(zhì)量更好,實(shí)現(xiàn)了Quartus II軟件與各種不同前端工具的無縫集成。
至于為何采用Spectra-Q的名字,Albert Chang解釋說:“Spectra是Spectrum的復(fù)數(shù),指的是很廣的意思,Spectra-Q的這個(gè)引擎可以支持很廣的設(shè)計(jì)輸入的方法,包括實(shí)現(xiàn)方法,還有支持不同的計(jì)算機(jī)的環(huán)境,支持的很廣,所以英文就用Spectra-Q做它的名字。”
Spectra-Q引擎的頂層是名為BluePrint的平臺(tái)設(shè)計(jì)工具,它是業(yè)界第一款支持設(shè)計(jì)人員探查體系結(jié)構(gòu)、以更高的效率分配接口的平臺(tái)設(shè)計(jì)工具。這一工具支持設(shè)計(jì)人員通過實(shí)時(shí)濾波器檢查來探查并建立合法的IO布局前端,設(shè)計(jì)迭代次數(shù)減少了10倍。工具還含有時(shí)鐘和內(nèi)核規(guī)劃功能,極大減少了時(shí)序收斂所需要的設(shè)計(jì)迭代次數(shù)。
Albert Chang表示:“我們看到過去客戶在I/O引腳的設(shè)計(jì)和布局上面會(huì)花2—3個(gè)月的時(shí)間,有了BluePrint設(shè)計(jì)平臺(tái)之后,不到一個(gè)月的時(shí)間就可以完成I/O的布局設(shè)計(jì)。”
Spectra-Q具備許多新的特性。
首先,Spectra-Q引擎可以把整個(gè)編譯階段分為三部分:外設(shè)布放器、內(nèi)核布放器和布線器。這樣工程師就不用進(jìn)行完全的編譯,而是完成一個(gè)階段再進(jìn)入下一個(gè)階段,以讓迭代速度更快,可以對(duì)設(shè)計(jì)進(jìn)行漸進(jìn)式的改善。
其次,Spectra-Q引擎支持分層設(shè)計(jì)流程,利用分層數(shù)據(jù)庫(kù),支持IP復(fù)用和可選IP重新編譯,更新后的IP不再需要對(duì)整個(gè)數(shù)據(jù)庫(kù)進(jìn)行編譯。
最后,Spectra-Q引擎擁有一個(gè)統(tǒng)一的編譯器,可以提供不用的前端,讓軟件開發(fā)人員、嵌入式開發(fā)人員和硬件開發(fā)人員共同進(jìn)行開發(fā),提升整個(gè)項(xiàng)目運(yùn)作效率。
由于該引擎技術(shù)較新,所以目前Spectra-Q引擎只支持Altera第10代及以后的FPGA和SoC,并且只有Quartus II 15.0版本支持該引擎。