DSP產(chǎn)品中的FPGA使用量急劇上升,只需要了解部署DSP的產(chǎn)品就可以了解原因??偟膩碚f,DSP正在成為一種高度普遍存在的技術(shù),不僅在無數(shù)的消費(fèi)者,汽車和電話產(chǎn)品中,而且在越來越先進(jìn)的設(shè)備類別中也看到了它的應(yīng)用。
無線基站,雷達(dá)處理,指紋識別和軟件定義無線電等應(yīng)用需要非常高性能的處理。然而,這種新型高性能DSP應(yīng)用推動了獨(dú)立處理器的性能范圍,硬件解決方案正在不斷發(fā)展以提升性能。
在20世紀(jì)90年代初期,設(shè)計(jì)人員面臨著通過部署來提高馬力的挑戰(zhàn)多個處理器,以滿足其性能需求。但是,在協(xié)調(diào)多個處理器的功能時,系統(tǒng)級設(shè)計(jì)變得非常困難,更不用說這種方法成本高昂且浪費(fèi)資源。
當(dāng)?shù)谝慌鶧SP授權(quán)的FPGA出現(xiàn)在現(xiàn)場時,DSP設(shè)計(jì)人員開始使用這些設(shè)備來增強(qiáng)其處理器的功能。通過這種方法,F(xiàn)PGA通過加速DSP算法的性能關(guān)鍵部分來補(bǔ)充處理器。
今天的專用FPGA,如Xilinx的Virtex 4或Altera的Stratix II,具有通過并行化提高性能的巨大潛力。事實(shí)上,與其他實(shí)現(xiàn)方案相比,DSP專用FPGA技術(shù)已經(jīng)顯示出高達(dá)100倍的性能優(yōu)勢(圖1)。
因此,越來越常見的是發(fā)現(xiàn)標(biāo)準(zhǔn)DSP伴隨著執(zhí)行高性能功能的FPGA,并且預(yù)計(jì)這種方式使用FPGA會迅速提升。
圖1 - FPGA提供快速M(fèi)ACOPS(每秒乘法/累加運(yùn)算)作為時鐘頻率乘以倍數(shù)的因子。
滿足設(shè)計(jì)要求挑戰(zhàn)
然而,除了這種強(qiáng)大的硬件功能外,高效實(shí)施這些基于FPGA的DSP系統(tǒng)也面臨著挑戰(zhàn)。這種大而復(fù)雜的設(shè)計(jì)對傳統(tǒng)的DSP設(shè)計(jì)方法要求。這主要是因?yàn)镈SP空間中的傳統(tǒng)FPGA設(shè)計(jì)流程沒有利用高效且有效的設(shè)計(jì)流程的兩個關(guān)鍵要素:合成技術(shù)和便攜式知識產(chǎn)權(quán)(IP)。
那些使用合成技術(shù)設(shè)計(jì)ASIC的人都知道它的優(yōu)點(diǎn)。對于基于FPGA的DSP,這項(xiàng)技術(shù)至關(guān)重要,可以實(shí)現(xiàn)高水平抽象設(shè)計(jì),以及區(qū)域和性能權(quán)衡的自動化探索??焖僭O(shè)計(jì)輸入,高度抽象和自動化操作的組合不僅提供了設(shè)計(jì)的單一實(shí)例化,而且提供了一系列可供選擇的結(jié)果。
用于哪個性能優(yōu)先于區(qū)域,可能需要消耗數(shù)百個乘法器的實(shí)現(xiàn) - 它會非常快,但也會消耗很多區(qū)域。同樣,對于對區(qū)域更敏感的應(yīng)用程序,在較低性能下共享較少乘數(shù)的實(shí)現(xiàn)將產(chǎn)生更小的結(jié)果。這些類型的權(quán)衡需要強(qiáng)大的工具,對于基于FPGA的高級DSP的最佳開發(fā)至關(guān)重要。
高效DSP開發(fā)的另一個關(guān)鍵因素是擁有正確的構(gòu)建模塊或IP。適合這些應(yīng)用程序的IP有兩個主要屬性:可擴(kuò)展性和可移植性。
與其適應(yīng)性較差的對應(yīng)物相比,可擴(kuò)展IP使設(shè)計(jì)人員能夠在不降低效率的情況下構(gòu)建自定義IP功能。新的功能塊非常高效,因?yàn)樵陔S后的合成過程中,未使用的或不必要的部分將被優(yōu)化掉。
便攜性也確保了效率。 DSP設(shè)計(jì)人員需要能夠設(shè)計(jì)一次算法,然后才能在任何FPGA供應(yīng)商的產(chǎn)品中運(yùn)行它們而無需修改。這種便攜性提供了很高的效率,并且可以輕松選擇最佳實(shí)現(xiàn)。
DSP驗(yàn)證也可能帶來挑戰(zhàn)。在驗(yàn)證DSP時,信號調(diào)試和分析比檢查時域和頻域圖和散點(diǎn)圖更復(fù)雜。由于數(shù)字信號的特征在于采樣時間和離散幅度,因此DSP驗(yàn)證工具必須在多速率DSP應(yīng)用中有效地定義和操縱時間。
此外,它們必須能夠輕松地從全精度浮動轉(zhuǎn)換 - 有限字長定點(diǎn)模擬的點(diǎn)模擬。還需要一種用于建模DSP算法的語言,其中包括對時間,定點(diǎn)資源和并行性等概念的本機(jī)支持。
將方法結(jié)合在一起
設(shè)計(jì)技術(shù)的最新進(jìn)展為解決DSP設(shè)計(jì)人員的獨(dú)特挑戰(zhàn)提供了有趣的解決方案。 Mathworks的Simulink是一個基于數(shù)學(xué)模型的系統(tǒng)設(shè)計(jì)環(huán)境,為DSP設(shè)計(jì)人員提供了強(qiáng)大的建模和仿真功能。該環(huán)境本身處理DSP問題,如多速率離散時間定義和管理以及單源浮點(diǎn)仿真。
對于FPGA實(shí)現(xiàn),DSP綜合是將DSP驗(yàn)證與最優(yōu)化相結(jié)合的關(guān)鍵創(chuàng)新。 DSP實(shí)現(xiàn)。借助Synplicity的Synplify DSP工具中體現(xiàn)的功能,設(shè)計(jì)人員可以通過自動化,獨(dú)立于設(shè)備的方式來檢查實(shí)現(xiàn)權(quán)衡并實(shí)現(xiàn)目標(biāo)映射。
將DSP綜合與Simulink結(jié)合使用可帶來專業(yè)知識系統(tǒng)架構(gòu)師和硬件設(shè)計(jì)人員在一個共同的環(huán)境中。系統(tǒng)架構(gòu)師為Simulink創(chuàng)建了一個獨(dú)立于供應(yīng)商的模型,使入口點(diǎn)保持在純粹的算法級別,從而將注意力集中在設(shè)計(jì)的高級功能上。
當(dāng)它交給硬件設(shè)計(jì)師時,規(guī)范沒有架構(gòu)含義。只要建模環(huán)境的DSP驗(yàn)證基礎(chǔ)架構(gòu)允許無縫集成合成引擎,硬件設(shè)計(jì)人員就可以在不修改驗(yàn)證源的情況下檢查架構(gòu)權(quán)衡。
由于保留了源代碼,系統(tǒng)架構(gòu)師無需擔(dān)心硬件實(shí)現(xiàn)問題,硬件設(shè)計(jì)人員也不必?fù)?dān)心DSP算法規(guī)范。同時,確保了設(shè)計(jì)的完整性和優(yōu)化,提高了團(tuán)隊(duì)成員的工作效率。
這種方法的關(guān)鍵是使用通用DSP庫。特定于供應(yīng)商的IP使算法設(shè)計(jì)陷入困境,并且具有不必要的實(shí)現(xiàn)細(xì)節(jié)。使用沒有架構(gòu)參數(shù)的通用DSP功能庫,處理輸入信號,并根據(jù)高級規(guī)范生成輸出。
使用高級庫,甚至與DSP功能相關(guān)的延遲也可以被推遲到架構(gòu)優(yōu)化階段。通過DSP綜合,實(shí)現(xiàn)了硬件功能和實(shí)現(xiàn)。 DSP綜合,Simulink和便攜式庫等創(chuàng)新是改進(jìn)DSP設(shè)計(jì)的關(guān)鍵因素,但同樣重要的是將這些功能納入連接RTL和實(shí)現(xiàn)設(shè)計(jì)領(lǐng)域的整體方法。最佳DSP設(shè)計(jì)流程通過通用庫以及DSP綜合和Simulink的組合功能(圖2)增強(qiáng)了現(xiàn)有功能。
圖2 - DSP FPGA設(shè)計(jì)流程
在設(shè)計(jì)規(guī)范期間,系統(tǒng)架構(gòu)師純粹在算法抽象層次上運(yùn)行。通過使用功能塊集,設(shè)計(jì)人員可以使用熟悉的DSP概念捕獲算法。
在流程的后期,Simulink的DSP驗(yàn)證環(huán)境功能大大減輕了算法驗(yàn)證??梢暬驼{(diào)試以及內(nèi)置加速器等功能有助于快速模擬離散時間設(shè)計(jì)。
這種設(shè)計(jì)方法的引擎,是區(qū)域和性能的系統(tǒng)級目標(biāo)的決定因素, DSP合成。此步驟構(gòu)建了一種架構(gòu),該架構(gòu)消耗了實(shí)現(xiàn)所需性能所需的最少資源。應(yīng)用適當(dāng)?shù)南到y(tǒng)級優(yōu)化技術(shù)(如折疊,系統(tǒng)范圍的重定時和延遲添加),DSP綜合可滿足系統(tǒng)級性能目標(biāo)。
生成的體系結(jié)構(gòu)由獨(dú)立于供應(yīng)商的可綜合RTL代碼生成。由于此時設(shè)計(jì)仍然與供應(yīng)商無關(guān),因此RTL綜合工具的全部功能可用于進(jìn)一步優(yōu)化設(shè)計(jì)。
令人印象深刻的結(jié)果
與傳統(tǒng)流程相比,所描述的DSP設(shè)計(jì)方法顯示出顯著的優(yōu)勢。隨著設(shè)計(jì)變得越來越大,DSP合成流可能僅僅由于其無延遲算法而超過其傳統(tǒng)對應(yīng)物,并且因?yàn)闆]有時間來同步多個路徑。
比較DSP合成和傳統(tǒng)流程的設(shè)計(jì)結(jié)果,即使在不同的優(yōu)化方案下,前者也能得到持續(xù)改進(jìn)。當(dāng)在DSP合成期間不執(zhí)行高級優(yōu)化時,任何產(chǎn)生的優(yōu)化很大程度上歸因于單獨(dú)的RTL合成。即使沒有DSP綜合優(yōu)化,所部署的邏輯單元數(shù)量也會在所有測試電路中保持一致,性能也會提高。
應(yīng)考慮幾種不同的優(yōu)化方案。當(dāng)允許資源共享時,通常會期望資源利用率顯著提高,但會有一些性能損失。測試電路證明了這一點(diǎn),顯示出消耗的資源顯著減少,但代價是性能顯著下降。
當(dāng)資源有限且可以容忍性能下降時,最好應(yīng)用此優(yōu)化技術(shù)。重定時優(yōu)化技術(shù)為增強(qiáng)DSP合成結(jié)果提供了另一種選擇。當(dāng)重新定時是一種選擇時,與單獨(dú)的DSP合成和傳統(tǒng)設(shè)計(jì)相比,可以觀察到顯著的性能提升,盡管它可能以消耗更多資源為代價。
一些DSP綜合解決方案重新分配寄存器并在架構(gòu)級別引入流水線以實(shí)現(xiàn)時序。通過門級重新定時補(bǔ)充這種高級重定時功能,可以通過在特定FPGA器件中移位寄存器來進(jìn)一步優(yōu)化。高級和門級重定時的這種組合可以產(chǎn)生最高度優(yōu)化的結(jié)果,并且可以在不增加額外資源的情況下顯著提高性能。
如今,性能匱乏的DSP應(yīng)用推動了高性能DSP專用FPGA的使用,這反過來又帶來了新的重大設(shè)計(jì)挑戰(zhàn)。為了應(yīng)對這一挑戰(zhàn),基于現(xiàn)有方法的基于FPGA的自動化DSP開發(fā)流程已被證明在提供高度優(yōu)化的設(shè)計(jì)結(jié)果方面遠(yuǎn)遠(yuǎn)超出傳統(tǒng)設(shè)計(jì)方法。
DSP-的組合具體的建模和仿真創(chuàng)新,自動化綜合和優(yōu)化工具以及通用便攜式DSP庫是該流程中的關(guān)鍵要素。憑借這些功能,DSP開發(fā)人員可以解決以前困擾他們的有問題的生產(chǎn)力和設(shè)計(jì)質(zhì)量問題,現(xiàn)在可以充分利用新的強(qiáng)大FPGA技術(shù)所能提供的所有功能。
Dirk Seynhaeve是Synplicity Inc.的DSP企業(yè)應(yīng)用工程總監(jiān)。他在ASIC設(shè)計(jì)和EDA行業(yè)擁有20年的經(jīng)驗(yàn)。他加入Synplicity,幫助定義和推出DSP解決方案,以增加綜合產(chǎn)品組合。之前,在Tera Systems擔(dān)任技術(shù)營銷總監(jiān)之前,Seynhaeve專注于定義RTL交接策略的產(chǎn)品線策略。在Tera Systems之前,Seynhaeve擔(dān)任Tharas Systems的技術(shù)服務(wù)總監(jiān),之后擔(dān)任Escalade的應(yīng)用總監(jiān)。
Andrew Dauman是Synplicity公司應(yīng)用工程副總裁,負(fù)責(zé)所有技術(shù)支持,產(chǎn)品驗(yàn)證,產(chǎn)品培訓(xùn)和技術(shù)出版物。自從1994年加入Synplicity以來,Dauman已經(jīng)將Synplicity的應(yīng)用工程團(tuán)隊(duì)從一個概念發(fā)展成為一個全球性的組織。在加入Synplicity之前,Dauman是Mentor Graphics Corporation的AutoLogic ASIC綜合團(tuán)隊(duì)的成員。
-
處理器
+關(guān)注
關(guān)注
68文章
19100瀏覽量
228813 -
dsp
+關(guān)注
關(guān)注
552文章
7959瀏覽量
347925 -
FPGA
+關(guān)注
關(guān)注
1625文章
21620瀏覽量
601232
發(fā)布評論請先 登錄
相關(guān)推薦
評論