浮點(diǎn):用 FPGA 嵌入式處理器實現(xiàn)您的構(gòu)想
在采用數(shù)值處理技術(shù)創(chuàng)建嵌入式應(yīng)用時,通常以整數(shù)或定點(diǎn)表示法來確保算術(shù)運(yùn)算盡量簡單,這一點(diǎn)至關(guān)重要。因其不僅有助于使成本和功耗降至最低,而且還能盡可能地加速硬件部署。
本文引用地址:http://www.ex-cimer.com/article/99212.htmFPGA 非常適用于執(zhí)行定點(diǎn)運(yùn)算,并能在邏輯或基于軟件或硬件處理器的實施方案中創(chuàng)建高度并行的數(shù)據(jù)路徑解決方案。Virtex®-5 FPGA 產(chǎn)品系列中 FXT 系列的最新硬件處理器 Xilinx® PowerPC® 440 可提供超標(biāo)量功能,讓用戶能夠?qū)ζ骷幊?,使其以高達(dá) 550 MHz 的時鐘速率并行執(zhí)行一個或兩個定點(diǎn)運(yùn)算。
盡管用戶能通過對器件進(jìn)行編程來執(zhí)行大多數(shù)采用整數(shù)或定點(diǎn)算術(shù)的運(yùn)算,但通常須重新運(yùn)算并插入比例運(yùn)算以確保計算結(jié)果足夠精確。對于復(fù)雜運(yùn)算而言,這不僅耗時,而且還會導(dǎo)致程序變?yōu)閷S眯颓也豢芍赜?。理想的替代方法是采用?biāo)準(zhǔn)浮點(diǎn)表示法來提供一種適用于多個應(yīng)用的高動態(tài)范圍。這樣人們就無需修改算法即可獲得適用于任何特定應(yīng)用或操作環(huán)境的定點(diǎn)實施方案,也無需為隨后的項目及應(yīng)用而大范圍地修改代碼。
雖然賽靈思為基于 IBM 浮點(diǎn)性能庫的 PowerPC 440 處理器提供了一種行之有效的仿真浮點(diǎn)解決方案,但處理器內(nèi)核仍需占用數(shù)十個周期來執(zhí)行每條運(yùn)算。而采用浮點(diǎn)運(yùn)算單元 (FPU) 形式的浮點(diǎn)運(yùn)算硬件加速功能可縮短該運(yùn)算周期。Virtex-5 FXT 系列中的 PowerPC 440 處理器提供了有效接口,能夠?qū)①愳`思軟 FPU 等硬件加速器連接至該處理器內(nèi)核。該方案可通過結(jié)構(gòu)協(xié)處理器總線 (FCB) 將 PowerPC 440 處理器上的 128 位輔助處理器單元 (APU) 接口橋接至協(xié)處理器。使用該類協(xié)處理器(賽靈思 LogiCORE™ IP Virtex-5 APU-FPU),Virtex-5 FXT 用戶可以選擇軟件仿真或者專用軟邏輯 FPU 在 PowerPC 上自如地實現(xiàn)浮點(diǎn)運(yùn)算。圖 1 顯示了通過 FCB 將 PowerPC 440 處理器連接至 Virtex-5 APU-FPU 的典型實施方案。
圖 1——包含 APU-FPU 內(nèi)核的嵌入式處理器系統(tǒng)
評論