軟件無(wú)線電設(shè)計(jì)中ASIC、FPGA和DSP的選擇策略探討
但如果要求這些器件在將來(lái)支持升級(jí)到尚未定義的4G無(wú)線結(jié)構(gòu),ASIC在數(shù)字無(wú)線設(shè)計(jì)中的適用度也將隨之發(fā)生變化。例如在無(wú)線領(lǐng)域中,關(guān)于是否應(yīng)在4G系統(tǒng)結(jié)構(gòu)中采用正交頻分多路復(fù)用(OFDM)技術(shù)還存在諸多分歧,很多設(shè)計(jì)人員認(rèn)為OFDM在多徑環(huán)境下具有較強(qiáng)的魯棒性,并可兼容多種寬帶標(biāo)準(zhǔn),如局域多點(diǎn)分布式業(yè)務(wù)(LMDS)和多信道多點(diǎn)分布式業(yè)務(wù)(MMDS)。
然而,由于4G標(biāo)準(zhǔn)尚未定義,而且在該結(jié)構(gòu)中任何ASIC信號(hào)處理器件的使用都將給未來(lái)的升級(jí)帶來(lái)無(wú)法預(yù)料的風(fēng)險(xiǎn),因此中頻處理也必須使用FPGA或DSP器件。
隨著信號(hào)處理越來(lái)越多的來(lái)自數(shù)字中頻輸入,4G結(jié)構(gòu)中的處理算法也變得越來(lái)越專業(yè)化,這限制了單個(gè)ASIC器件滿足所需可編程要求的能力。
在3G/GSM無(wú)線應(yīng)用中,W-CDMA采用了由透平編碼和卷積編碼組合而成的糾錯(cuò)機(jī)制,由此滿足所需的誤碼率(BER)性能要求。另一方面,GSM采用卷積編碼和Fire編碼的組合作為其糾錯(cuò)機(jī)制,因此定位于特定糾錯(cuò)算法的商用ASIC器件將不再適用于GSM平臺(tái),而FPGA或DSP實(shí)現(xiàn)則是一種更好的選擇。
集成度
ASIC器件在軟件無(wú)線電結(jié)構(gòu)設(shè)計(jì)中的另一劣勢(shì)是集成度。隨著ASIC、DSP和FPGA開(kāi)發(fā)技術(shù)的不斷進(jìn)步,在單個(gè)器件中集成的功能也急劇增加。但對(duì)于ASIC,靈活性將隨集成度的增加而降低。
例如,充當(dāng)數(shù)字收發(fā)器的ASIC芯片完全適用于多種空中接口標(biāo)準(zhǔn),包括GSM、IS-136、CDMA2000和UMTS W-CDMA。如果在ASIC中添加了CDMA碼片率處理器,那么該ASIC就不再適用于GSM和IS-136。如果在ASIC中添加一個(gè)支持QPSK、8PSK和16QAM調(diào)制方案的調(diào)制器或解調(diào)器,就能使其成為實(shí)現(xiàn)CDMA高速數(shù)據(jù)速率(HDR)規(guī)范的有效解決方案,但不再適用于任何其他標(biāo)準(zhǔn)。
在這一級(jí)集成度上,多個(gè)ASIC器件需要支持多個(gè)空間接口標(biāo)準(zhǔn),但這通常有些不切實(shí)際。
與ASIC器件相比,DSP或FPGA器件可輕松地集成多種數(shù)字無(wú)線功能,并且不會(huì)顯著降低器件的靈活性。
在上例中,CDMA2000 HDR ASIC提供的大多數(shù)功能均能在Xilinx公司的XCV1000E上實(shí)現(xiàn),如表1所示。這樣的集成度通常導(dǎo)致這些產(chǎn)品與基于ASIC的器件相比,具有更小的整體波形因數(shù)以及更高的靈活性。
開(kāi)發(fā)周期
ASIC器件的靈活性在軟件無(wú)線電產(chǎn)品的開(kāi)發(fā)中也具有其優(yōu)勢(shì):現(xiàn)有的ASIC算法開(kāi)發(fā)已經(jīng)相當(dāng)完善,這有助于縮短產(chǎn)品的上市時(shí)間。硬件設(shè)計(jì)是基于ASIC功能的關(guān)鍵開(kāi)發(fā)進(jìn)程,而軟件開(kāi)發(fā)則受制于接入器件可編程特性的程序庫(kù)生成。
基于DSP或FPGA的設(shè)計(jì)開(kāi)發(fā)周期則要復(fù)雜得多,因?yàn)檐浖_(kāi)發(fā)需要的資源通常比相應(yīng)的硬件開(kāi)發(fā)多得多?,F(xiàn)有的經(jīng)優(yōu)化通用算法程序庫(kù)有利于加速DSP和FPGA的軟件開(kāi)發(fā),但這些算法必須集成在一起實(shí)現(xiàn)期望的數(shù)字無(wú)線功能,因此需要完整的軟件開(kāi)發(fā)周期。設(shè)計(jì)人員還必須注意DSP和FPGA軟件開(kāi)發(fā)方法之間的主要差異。在DSP上編譯算法的時(shí)間通常以秒計(jì)算,而在FPGA上綜合處理并對(duì)類似算法進(jìn)行布線的時(shí)間則需要數(shù)小時(shí)。例如Xilinx公司的典型FPGA布線速率為每小時(shí)400,000個(gè)門電路,因此帶有2百萬(wàn)個(gè)門電路的XCV2000E的編譯可能需要半天的時(shí)間才能完成。這使得FPGA的設(shè)計(jì)調(diào)試成為一項(xiàng)昂貴的過(guò)程,因此FPGA的設(shè)計(jì)周期通常需要在對(duì)器件算法進(jìn)行布線之前,進(jìn)行更多的先期分析,包括多路仿真和模型測(cè)試。
性能
在軟件無(wú)線電結(jié)構(gòu)中,任何信號(hào)處理器件的鑒定必須包括衡量該器件是否能在指定的時(shí)間內(nèi)完成所需的功能。這類評(píng)估中一種最基本的基準(zhǔn)點(diǎn)測(cè)量就是1,024點(diǎn)快速傅立葉變換(FFT)處理時(shí)間的測(cè)量,參見(jiàn)表2中的突顯部分。
在表2的示例中,可編程ASIC明顯勝過(guò)DSP或FPGA實(shí)現(xiàn)。通常ASIC可為任何指定的功能提供最佳性能,其執(zhí)行時(shí)間可參見(jiàn)下述數(shù)據(jù)表單。對(duì)DSP和FPGA功能實(shí)現(xiàn)的性能進(jìn)行比較相當(dāng)困難,因?yàn)檫@些器件的結(jié)構(gòu)分別用于處理不同類型的問(wèn)題。DSP工作于非常高的速率條件下,但在某一時(shí)刻只能完成有限的處理任務(wù)。另一方面FPGA的工作速率通常低于DSP的速率,但對(duì)同時(shí)可完成的處理任務(wù)則幾乎沒(méi)有限制。為了說(shuō)明上述這些差異,考慮如圖2所示的具有16個(gè)抽頭的簡(jiǎn)單FIR濾波器。該濾波器要求在每次采樣中完成16次乘積和累加(MAC)操作。德州儀器公司的TMS320C6203 DSP具有300MHz的時(shí)鐘頻率,在合理的優(yōu)化設(shè)計(jì)中,每秒可完成大約4億至5億次MAC操作。這意味著C6203系列器件的FIR濾波具有最大為每秒3,100萬(wàn)次采樣的輸入速率。但在FPGA中,所有16次MAC操作均可并行執(zhí)行。對(duì)于Xilinx的Virtex器件,16位MAC操作大約需要配置160個(gè)結(jié)構(gòu)可重置的邏輯塊(CLB),因此16個(gè)并發(fā)MAC操作的設(shè)計(jì)實(shí)現(xiàn)將需要大約2,560個(gè)CLB。XCV300E可輕松地實(shí)現(xiàn)上述配置,并允許FIR濾波器工作在每秒1億個(gè)樣本的輸入采樣速率下。
評(píng)論