<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設計應用 > SoC FPGA提升蜂巢網(wǎng)絡(luò )設備整合度

SoC FPGA提升蜂巢網(wǎng)絡(luò )設備整合度

作者: 時(shí)間:2013-09-28 來(lái)源:網(wǎng)絡(luò ) 收藏
0px">  當然,這些功能可以透過(guò)許多不同的方法建立。有些比較適合用軟件的方法,而有些則適用硬件,同時(shí)也有是軟硬件皆適用;然而,最終還是要以所需的效能決定建置的方法。采用完全可編程元件可讓系統設計人員自由支配硬件和軟件的最適度使用情況。就數字預失真的情況而言,由于需要非常高的采樣率,因此內含高速過(guò)濾功能的資料路徑預失真器通常會(huì )建置在可編程邏輯中,而產(chǎn)生數字預失真系數的校準和估算引擎則可于硬件處理子系統中的ARM Cortex-A9處理器中執行。

  為決定什么須要采用硬件或軟件建置方法,首先必須設定哪些部分需要軟件。圖3展示數字預失真演算法中設定需要軟件的部分,以期達到圖2所示的三種功能。根據圖3設定,不難理解數字預失真演算法有97%的時(shí)間用在執行自動(dòng)相關(guān)矩陣運算,所以很自然地加速這項過(guò)程成為首要任務(wù)。

  SoC FPGA提升蜂巢網(wǎng)絡(luò )設備整合度

  圖2 細分成不同功能區間的數字預失真系統

  SoC FPGA提升蜂巢網(wǎng)絡(luò )設備整合度

  圖3 數字預失真處理當中的指定軟件運算作業(yè)之軟件設定

  ARM Cortex-A9處理器藉由豐富的運算資源可執行更多功能,而這些資源有助提升效能。舉例而言,在硬件處理子系統中,每個(gè)ARM Cortex-A9處理器都內含一個(gè)浮點(diǎn)運算單元和一個(gè)NEON多媒體加速器。NEON單元是一個(gè)128位元的單一指令多重資料(SIMD)向量協(xié)同處理器,可同時(shí)執行兩個(gè)32×32b乘法指令;由于NEON單元皆用于乘法累積(MAC)運算,因此非常符合自動(dòng)相關(guān)矩陣運算功能所需。透過(guò)NEON模組可運用軟件Intrinsics,這可以在系統組裝時(shí)免除編寫(xiě)低階程式的需求。因此,運用硬件處理子系統中更多的功能,可以比Microblaze等軟件處理器或外接式DSP處理器大幅提升效能。

為提升數字預失真效能,設計人員須進(jìn)一步利用可編程邏輯將這些功能移到硬件上。然而,由于軟件是以C/C++編寫(xiě),工程師需要一些時(shí)間將C/C++語(yǔ)言轉換成可在可編程邏輯中運用VHDL或Verilog執行的硬件。

  這個(gè)問(wèn)題現在已可藉由各種高階合成(HLS)工具(例如C語(yǔ)言至暫存器轉移層級工具,C-to-RTL工具)得以解決。這些工具讓具備C/C++程式經(jīng)驗的程式設計人員透過(guò)現場(chǎng)可編程門(mén)陣列()擁有硬件能力。業(yè)界高階合成工具可讓軟件和系統設計人員更容易將C/C++程式碼對應到可編程邏輯,讓程式碼得以重用,并提供最佳可攜性和自由設計空間,最終達成最高生產(chǎn)力。

  圖4展示運用高階合成工具的典型C/C++設計流程。這工具的輸出是暫存器轉移層級(RTL),可輕松與資料路徑預失真器或上游制程等既有的硬件設計進(jìn)行整合,當然也可連至資料轉換器。運用這項工具,演算法可快速轉移至硬件,其中這項工具會(huì )使用AXI界面連至硬件處理子系統,如圖5所示。

  SoC FPGA提升蜂巢網(wǎng)絡(luò )設備整合度

  圖4 高階合成設計流程

  在可編程邏輯中以高時(shí)脈執行自動(dòng)相關(guān)矩陣運算演算法,可對效能產(chǎn)生重大的效益,僅針對這項功能而言,其效能增益就可比軟件建置的功能多七十倍,而且僅用完全可編程元件中3%的邏輯。

  從原來(lái)參考的C/C++程式碼進(jìn)行基本最佳化,并運用ARM Cortex-A9處理器更有效地執行運算,結果顯示僅用軟件進(jìn)行最佳化所得的效能則比沒(méi)有變動(dòng)的程式碼高出二至三倍。再使用NEON多媒體協(xié)同處理器就能產(chǎn)生更多的效能增益。圖5為自動(dòng)相關(guān)矩陣運算架構。其中針對相關(guān)矩陣運算功能,其整體效能增益比軟件建置的功能多七十倍。

  <a class=SoC 提升度" src="http://www.elecfans.com/uploads/allimg/13



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>