<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關(guān) 閉

          新聞中心

          EEPW首頁 > 工控自動化 > 設(shè)計(jì)應(yīng)用 > 運(yùn)用FPGA進(jìn)行控制平面/數(shù)據(jù)平面視頻處理

          運(yùn)用FPGA進(jìn)行控制平面/數(shù)據(jù)平面視頻處理

          作者: 時間:2011-01-12 來源:網(wǎng)絡(luò) 收藏

            采用C-to-FPGA工具實(shí)現(xiàn)軟硬件協(xié)同設(shè)計(jì)

            C-to-FPGA編譯器可以讓開發(fā)人員使用新的開發(fā)工具集和新技術(shù)解決軟件/硬件開發(fā)問題。開發(fā)人員可以先在軟件中進(jìn)行算法編碼。經(jīng)驗(yàn)告訴我們,在軟件中開發(fā)算法較在硬件中開發(fā)算法的效率更高。具體原因如下:首先,諸如C語言能夠讓編程人員在高級軟件語言的層面上開發(fā)算法,而這是使用Verilog或者VHDL硬件描述語言所不能達(dá)到的;其次,與同類的硬件開發(fā)工具相比,針對C語言的調(diào)試和測試工具運(yùn)行速度更快、效率更高,通常也更易于使用。相當(dāng)于硬件算法,C語言算法可以在目標(biāo)處理器上全速運(yùn)行,而硬件算法需要先在仿真程序上完成測試和調(diào)拭;最后,C語言開發(fā)工具較同類硬件開發(fā)工具的成本要低得多。因此,工程人員一般傾向于在C語言或者類似的高級語言中開發(fā)算法。

            一旦使用C語言這樣的軟件語言完成對某個算法的驗(yàn)證,設(shè)計(jì)人員必須測量其性能,并確定該算法是否能夠完全在嵌入式處理器或是完全在硬件上運(yùn)行、或者硬軟件混合協(xié)處理實(shí)施方案是否為最佳選擇。在這種判斷過程中可以采用性能分析工具。如果代碼必須被轉(zhuǎn)到硬件上,則設(shè)計(jì)人員必須手工轉(zhuǎn)換算法,或者使用C-to-FPGA工具。

            C-to-FPGA工具可以讓開發(fā)人員迅速把算法轉(zhuǎn)換成HDL代碼,優(yōu)化生成的硬件處理器,并執(zhí)行假設(shè)場景平衡性能和FPGA資源。該工具還能夠讓軟件工程師使用FPGA內(nèi)部的高性能數(shù)據(jù)處理邏輯,從而變身為硬件工程師。

            使用Linux把處理器連接到FPGA

            與FPGA制造商合作的Linux供應(yīng)商已經(jīng)開發(fā)完成了可讓處理器與FPGA通信并對其進(jìn)行控制的驅(qū)動程序。首先,您必須針對該I/O器件配置Linux。配置步驟由兩個步驟組成。首先,把定制的驅(qū)動程序加載到Linux內(nèi)核中:

            

            隨后,將驅(qū)動程序注冊到特定的器件號碼(比如253):

            

            通信是通過開啟該I/O器件、然后對該器件進(jìn)行讀寫而完成的,示例代碼段如下所示:

            

            

            FPGA的優(yōu)勢

            信號處理器系統(tǒng)的數(shù)據(jù)帶寬要求往往會超過通用處理器能經(jīng)濟(jì)地獲得的水平。在這種情況下,設(shè)計(jì)人員一般會把他們的數(shù)據(jù)處理系統(tǒng)劃分為兩個處理功能:使用通用處理器進(jìn)行控制處理,另外使用諸如FPGA等硬件加速器進(jìn)行數(shù)據(jù)處理。這樣就構(gòu)成了一個控制平面/數(shù)據(jù)平面處理系統(tǒng)。

            FPGA非常適用于同時實(shí)施控制平面和數(shù)據(jù)平面功能。一個FPGA可以包含一個或者多個像MicroBlaze這樣軟處理器,和/或像PowerPC這樣的硬處理器。將它們集成到FPGA中可以實(shí)現(xiàn)控制平面處理器和數(shù)據(jù)平面處理系統(tǒng)之間的低時延、高帶寬通信。

            借助向?qū)Ш皖A(yù)先構(gòu)建的參考設(shè)計(jì),針對嵌入式和數(shù)據(jù)處理功能的系統(tǒng)編譯簡單明了。通過把在C語言中構(gòu)建的算法原型轉(zhuǎn)換到高性能硬件處理單元,C-to-FPGA工具有助于優(yōu)化這一進(jìn)程。最后,可以利用現(xiàn)在可用的Linux驅(qū)動程序方便地完成處理器和FPGA信號處理流水線之間的通信及控制編碼。

            我們的案例研究是一個典型的應(yīng)用示例。在這個例子中,通過低成本通用處理器處理HD視頻流是不合實(shí)際的,但是可以通過FPGA內(nèi)部的信號處理流水線輕松加以解決。處理器隨即被釋放出來用于提供用戶界面、網(wǎng)絡(luò)和系統(tǒng)管理功能,并同時監(jiān)測和控制信號處理流水線。


          上一頁 1 2 3 4 下一頁

          關(guān)鍵詞: 收發(fā)器

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();