用戶可定制的處理器
移動(dòng)電話領(lǐng)域中的Viterbi解碼的例子可以很好地說明可擴(kuò)展處理器可以替代RTL硬邏輯。
GSM標(biāo)準(zhǔn)利用Viterbi解碼將信息從包含噪聲的信道中提取出來。解碼過程中會(huì)用到包括8次邏輯計(jì)算(4次加法、2次比較、2次選擇)的蝶形運(yùn)算,從接收到的數(shù)據(jù)流中每解碼一個(gè)符號(hào)需要8次蝶形運(yùn)算。如果采用通用RISC處理器,需要50~80個(gè)指令周期完成一次Viterbi蝶形運(yùn)算,即使在TI高端的超長(zhǎng)指令字DSP 320C64xx上,也需要1.75個(gè)周期。本文引用地址:http://2s4d.com/article/152554.htm
圖3 Viterbi蝶形算法硬件模塊
利用TIE語言,設(shè)計(jì)者可以為Xtensa處理器增加一條專門完成Viterbi蝶形運(yùn)算的指令,使用處理器的128位寬I/O總線一次取8個(gè)符號(hào)數(shù)據(jù),如圖3所示為處理器添加運(yùn)算單元和地址產(chǎn)生邏輯,這樣完成一次Viterbi蝶形運(yùn)算只需要0.16個(gè)周期。在未擴(kuò)展的Xtensa處理器上執(zhí)行Viterbi蝶形運(yùn)算需要42個(gè)周期,也就是說,通過增加蝶形運(yùn)算的專用硬件(大約11000門電路),就獲得了250倍的性能提升。
結(jié)論
如今,軟件模塊硬邏輯化的現(xiàn)象非常普遍。在開發(fā)協(xié)議標(biāo)準(zhǔn)的早期,通常采用基于處理器的實(shí)現(xiàn)方法,一些常見的標(biāo)準(zhǔn),如視頻領(lǐng)域的MPEG2算法,3G通信領(lǐng)域的W-CDMA算法、安全加密領(lǐng)域的SSL和triple-DES算法,都是由處理器實(shí)現(xiàn)逐漸過渡到RTL硬邏輯實(shí)現(xiàn)。但是這種過渡正在被軟硬件實(shí)現(xiàn)方法間巨大的性能與設(shè)計(jì)難度差別所限制??膳渲门c可擴(kuò)展處理器的出現(xiàn)帶來了一種新的設(shè)計(jì)方法,既可以方便快速的進(jìn)行芯片開發(fā),靈活適應(yīng)新的協(xié)議標(biāo)準(zhǔn),又具有足夠小的芯片面積和功耗,從而可以進(jìn)行大規(guī)模的生產(chǎn)。
評(píng)論