《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 浮點:用FPGA嵌入式處理器實現您的構想
浮點:用FPGA嵌入式處理器實現您的構想
為賽靈思 PowerPC 440 部署浮點單元輕而易舉
Glenn Steiner,Ben Jones
摘要: 通過結構協處理器總線 (FCB) 將 PowerPC 440 處理器上的 128 位輔助處理器單元 (APU) 接口橋接至協處理器。使用該類協處理器(賽靈思 LogiCORE IP Virtex-5 APU-FPU),Virtex-5 FXT 用戶可以選擇軟件仿真或者專用軟邏輯 FPU 在 PowerPC 上自如地實現浮點運算。
Abstract:
Key words :

 

   在采用數值處理技術創建嵌入式應用時,通常以整數或定點表示法來確保算術運算盡量簡單,這一點至關重要。因其不僅有助于使成本和功耗降至最低,而且還能盡可能地加速硬件部署。

FPGA 非常適用于執行定點運算,并能在邏輯或基于軟件或硬件處理器的實施方案中創建高度并行的數據路徑解決方案。Virtex-5 FPGA 產品系列中 FXT 系列的最新硬件處理器 Xilinx PowerPC 440 可提供超標量功能,讓用戶能夠對器件編程,使其以高達 550 MHz 的時鐘速率并行執行一個或兩個定點運算。

盡管用戶能通過對器件進行編程來執行大多數采用整數或定點算術的運算,但通常須重新運算并插入比例運算以確保計算結果足夠精確。對于復雜運算而言,這不僅耗時,而且還會導致程序變為專用型且不可重用。理想的替代方法是采用標準
浮點表示法來提供一種適用于多個應用的高動態范圍。這樣人們就無需修改算法即可獲得適用于任何特定應用或操作環境的定點實施方案,也無需為隨后的項目及應用而大范圍地修改代碼。

雖然賽靈思(Xilinx)為基于 IBM 浮點性能庫的 PowerPC 440 處理器提供了一種行之有效的仿真浮點解決方案,但處理器內核仍需占用數十個周期來執行每條運算。而采用浮點運算單元 (FPU) 形式的浮點運算硬件加速功能可縮短該運算周期。Virtex-5 FXT 系列中的 PowerPC 440 處理器提供了有效接口,能夠將賽靈思軟 FPU 等硬件加速器連接至該處理器內核。該方案可通過結構協處理器總線 (FCB) 將 PowerPC 440 處理器上的 128 位輔助處理器單元 (APU) 接口橋接至協處理器。使用該類協處理器(賽靈思 LogiCORE IP Virtex-5 APU-FPU),Virtex-5 FXT 用戶可以選擇軟件仿真或者專用軟邏輯 FPU 在 PowerPC 上自如地實現浮點運算。圖 1 顯示了通過 FCB 將 PowerPC 440 處理器連接至 Virtex-5 APU-FPU 的典型實施方案。

 

圖1包含APU-FPU 內核的嵌入式處理器系統
圖1,包含 APU-FPU 內核的嵌入式處理器系統

  關于 PowerPC 440 FPU

賽靈思針對嵌入在 Virtex-5 FXT FPGA 中的 PowerPC 440 處理器專門設計了 APU-FPU。FPU 通過 APU 接口與處理器的緊密結合可讓浮點運算單元直接執行原生 PowerPC 浮點指令,這相對軟件仿真而言,速度一般可提高 6 倍。

除少數情況外,賽靈思 PowerPC FPU 一般符合單精度和雙精度浮點運算的 IEEE-754 標準。賽靈思提供了為 2:1和 3:1 APU-FPU 時鐘速率而優化的變量,使 PowerPC 處理器能夠以最高頻率運行。自發性指令發送不僅會隱藏運算時延,而且還會減少每條指令的周期。此外,這些優化的實施方案可充分發揮器件的高性能 DSP 特性,以縮短運算符時延并減少邏輯計數與功耗。賽靈思在其嵌入式開發套件 (EDK) 中支持 APU-FPU 流。

圖2Virtex-5 FXT PowerPC 440 浮點協處理器架構
圖2,Virtex-5 FXT PowerPC 440 浮點協處理器架構

  圖 2 為 FPU 架構的整體框架圖。APU-FPU 由執行單元、寄存器文件、總線接口以及所有管理浮點指令執行情況所必需的控制邏輯組成。

FPU 含有兩個變量。雙精度變量可執行除 PowerPC ISA 圖形子集(fsel、fres 和 frsqrte)以外的所有浮點指令,其中也包括單精度變量執行的指令。這意味著您能使用帶各種商用編譯器和操作系統的 FPU(具體請參見:
www.xilinx.com/ ise/embedded/epartners/listing.htm)。

賽靈思編譯器支持的 APU-FPU 單精度變量使用的資源較少。當 FPU 被占用時,雙精度操作將通過軟件仿真來執行。軟 FPU 比軟件仿真法平均快 6 倍。單精度 FPU 通常比雙精度快 13%。

將 APU-FPU 連接至 PowerPC 440有兩種方法可將 APU-FPU 連接至 PowerPC 440 處理器:1、利用賽靈思 Platform Studio 設計工具中的 Base System Builder (BSB) 向導;2、將 APU-FPU 單元添加至當前設計方案中即可。

您首先需利用 BSB 向導確定目標板和所期望的處理器(PowerPC 或 MicroBlaze),然后通過一系列復選框和下拉菜單選擇設計中所需的 IP。借助 BSB 向導,能夠輕松快速地組裝并測試基礎處理器系統。您只需勾選您要選擇的 FPU 框,即可實現APU-FPU 連接(見圖 3 頂部)。該向導可實現一個經過優化能以處理器時鐘三分之一速率運行的雙精度 FPU。您也可定制更高時鐘速率的FPU 和單精度 FPU。

 

圖3通過BSB向導以及系統組裝視圖將FPU添加至現有PowerPC處理器設計方案中
圖3,通過 BSB 向導(頂部)以及系統組裝視圖將 FPU 添加至現有 PowerPC
處理器設計方案中

 

  如果不想使用向導,您也可通過另一種方法來實現,即按照系統組裝視圖拖動 IP Catalog 下的 APU- FPU IP,然后對 FPU 進行配置即可。圖 3 底部圖片顯示了 IP Catalog (見左下方)和系統組裝視圖中新添加的 FPU。右擊 FPU 并選擇 Configure IP,然后您便可選取想要的精度(單精度或雙精度)并確定您希望該 FPU 是針對低時延(三分之一時鐘速率)或是高速率(二分之一時鐘速率)而進行優化;最后將 FPU 連接至 FCB 并將 FPU/FCB 時鐘鏈接至適當的時鐘(通常是二分之一或三分之一處理器時鐘速率。)

浮點盡在掌握之中

  Virtex-5 APU-FPU 提供免費的 Platform Studio,支持浮點定制。您可分別采用約 2500 個或約 4900 個 LUT 寄存器對來實現單或雙精度 FPU,也可在無需添加 FPGA 邏輯的情況下運行具有浮點仿真功能的軟件應用。

性能水平可預先選擇:選擇適當的 FPU,或實施設計并確定軟件仿真是否滿足要求;如未滿足,可升級軟 FPU。

顯而易見,如果能從軟件仿真中獲得足夠的性能,則無需 FPU。但如果需要更高的性能,可使用 APU-FPU。如果應用需要 FPU 或正在使用與之配套的編譯器,可選擇雙精度 FPU。如果應用僅需單精度運算且您正在使用賽靈思 GNU 編譯器,則單精度 FPU 會降低邏輯要求。謹記,如果選擇雙精度 FPU,它將執行單精度運算,然后將運算結果進行四舍五入,以提供單精度 FPU 的精確度。


 

 

  典型性能增益

當您在評估是需要硬 FPU 還是軟 FPU 時,應首先確定代碼的浮點密集程度。代碼通常包括不同浮點、整數、存儲器以及邏輯運算等。因此,盡管基準可作為潛在性能提升的指示器,但運行您自己的代碼會更好。

表1400MHz處理器與200MHzFPU的典型浮點性能

 

  表 1 列出了 400 MHz Virtex-5 FXT PowerPC 440 處理器、軟件仿真以及與該處理器相連的 200 MHz 雙精度 APU-FPU 的基準數據,透過該表可清晰了解 APU-FPU 執行浮點密集代代碼的性能表現。

表中所列數據是賽靈思用于評估處理器浮點單元性能的一組基準數據的子集。平均而言,軟 FPU 可比軟件仿真快6倍,而單精度 FPU 可比雙精度 FPU 快13倍。

在浮點占主導地位的情況下,可通過優化代碼來提高軟 FPU 的性能,以充分利用 FPU 管線。FIR 濾波器基準就是一例很好的潛在性能增益。未經優化的代碼是典型的“教科書代碼”,雖便于閱讀,但大多數 FPU 執行時往往效率低下。然而,通過實施循環展開、最大限度地延長 FPU 寄存器中常數的保留時間,以及交叉存取其他代碼與浮點指令,設計方案的性能可得到顯著提高。在本例中,優化濾波器代碼比未經優化的代碼快 3.8 倍,比軟件仿真快 30 倍。

總之,Virtex-5 FXT 借助其 PowerPC 440 處理器可為
嵌入式應用提供眾多選擇。您可在有無 FPU 的情況下執行設計方案、用性能較高的 FPU來替代軟件仿真技術、為 Virtex-5 FXT 量身定制處理能力資源。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲欧洲三级| 亚洲国产成人av| 麻豆freexxxx性91精品| 久久精精品视频| 亚洲免费影院| 亚洲一区精品电影| 亚洲深夜福利在线| 在线亚洲精品| 99天天综合性| 亚洲最新在线| 亚洲免费精彩视频| 亚洲九九精品| 亚洲人成人77777线观看| 亚洲二区在线观看| 亚洲国产精品国自产拍av秋霞 | 亚洲成人资源网| 一区免费观看视频| 在线日韩欧美| 亚洲国产精品精华液网站| 亚洲国产精品va在看黑人| 亚洲国产精品精华液2区45| 亚洲第一主播视频| 亚洲国内欧美| 亚洲理论在线| 亚洲视频一二三| 亚洲女同精品视频| 欧美在线观看视频一区二区三区| 性欧美精品高清| 久久国产精品亚洲va麻豆| 久久精品欧美| 亚洲精品在线三区| 亚洲午夜久久久久久久久电影院| 亚洲小说欧美另类社区| 欧美一区二区视频在线观看| 久久国产精品99国产| 久久久久一区二区三区四区| 免费观看在线综合| 欧美日韩理论| 国产精品美女xx| 国产亚洲综合性久久久影院| 极品中文字幕一区| 亚洲国产精品999| 一区二区三区精品| 欧美一级理论性理论a| 亚洲高清在线观看一区| 99re这里只有精品6| 亚洲砖区区免费| 久久久久久午夜| 欧美理论电影网| 国产欧美日韩激情| 亚洲国产精品一区二区第一页| 一本色道久久综合狠狠躁篇怎么玩 | 亚洲欧美日韩一区| 亚洲国产精品一区在线观看不卡| av成人毛片| 久久久国产精品一区二区中文 | 欧美成人一区二区三区| 欧美日韩美女| 国产欧美一区二区精品秋霞影院 | 久久精品日韩| 国产精品99久久久久久久久| 久久不射电影网| 欧美精品久久99| 国产精品欧美日韩久久| 激情亚洲成人| 在线亚洲观看| 亚洲精品1区2区| 亚洲欧美日韩人成在线播放| 噜噜噜噜噜久久久久久91| 欧美日韩另类综合| 精品av久久707| 亚洲视频免费在线| 亚洲视频www| 亚洲韩国精品一区| 午夜亚洲性色福利视频| 欧美mv日韩mv国产网站app| 国产精品毛片高清在线完整版| 影音先锋日韩精品| 亚洲一区在线看| 99国产精品国产精品久久| 久久国产日韩欧美| 欧美三区美女| 亚洲电影在线| 久久爱另类一区二区小说| 亚洲免费在线播放| 欧美精品乱码久久久久久按摩| 国产一区亚洲| 亚洲婷婷在线| 日韩一区二区电影网| 久久看片网站| 国产精品美女主播| 99国产精品久久| 亚洲老司机av| 免费在线成人| 激情欧美亚洲| 香蕉久久精品日日躁夜夜躁| 亚洲一区一卡| 欧美日韩免费在线观看| 亚洲电影第1页| 亚洲第一在线视频| 久久精品中文字幕免费mv| 久久九九国产精品| 国产精品丝袜白浆摸在线| 99精品热视频| 99热这里只有精品8| 免费成人毛片| 一色屋精品视频在线观看网站| 亚洲女女女同性video| 亚洲在线视频免费观看| 欧美日韩黄色大片| 91久久久久久久久久久久久| 亚洲国产合集| 亚洲视频在线免费观看| 久久亚洲影院| 国内精品一区二区三区| 欧美一区三区二区在线观看| 午夜精品久久一牛影视| 欧美午夜一区二区| 一本久久a久久精品亚洲| 一本色道**综合亚洲精品蜜桃冫 | 一区二区三区日韩精品视频| 欧美高清视频| 亚洲国产一二三| 亚洲精品在线免费| 欧美激情综合五月色丁香小说 | 国产专区欧美专区| 欧美亚洲视频一区二区| 欧美亚洲视频一区二区| 国产精品自拍在线| 午夜一级在线看亚洲| 久久av免费一区| 国产小视频国产精品| 欧美在线在线| 久久综合九色综合网站| 亚洲福利一区| 亚洲作爱视频| 国产精品久久久久9999高清 | 亚洲国产欧美日韩| 欧美大色视频| 亚洲人成在线免费观看| aa日韩免费精品视频一| 欧美日韩免费看| 亚洲午夜一区二区三区| 欧美影视一区| 伊人色综合久久天天五月婷| 亚洲另类自拍| 欧美午夜一区二区福利视频| 亚洲伊人网站| 久久久中精品2020中文| 亚洲国产精品t66y| 亚洲色图自拍| 国产精品日韩久久久| 欧美一级欧美一级在线播放| 久久在线免费观看视频| 亚洲高清网站| 一区二区三区色| 国产精品最新自拍| 亚洲黄色在线观看| 欧美视频一区二| 午夜一区不卡| 欧美电影美腿模特1979在线看| 日韩视频精品| 性18欧美另类| 在线精品观看| 亚洲国产精品视频| 欧美日韩国产在线播放网站| 亚洲一级电影| 免费不卡在线观看| 正在播放亚洲一区| 久久久水蜜桃| 日韩视频一区二区三区在线播放| 亚洲欧美精品伊人久久| 国内伊人久久久久久网站视频| 亚洲乱码国产乱码精品精天堂| 国产精品久久一卡二卡| 亚洲高清不卡av| 欧美日韩一区二区国产| 欧美一区二区三区另类| 欧美日韩国产综合新一区| 性欧美精品高清| 欧美日韩免费观看一区| 欧美一区2区视频在线观看 | 欧美性大战久久久久久久| 久久国产精品网站| 欧美日韩在线亚洲一区蜜芽| 欧美亚洲免费高清在线观看| 黄网站色欧美视频| 亚洲激情二区| 午夜伦理片一区| 尤物yw午夜国产精品视频明星 | 午夜久久影院| 亚洲黄色在线观看| 欧美在线视频在线播放完整版免费观看| 精品9999| 性欧美大战久久久久久久久| 亚洲精品1区| 久久欧美肥婆一二区| 亚洲一级在线| 欧美色大人视频| 亚洲精品孕妇|