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

          關(guān) 閉

          新聞中心

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

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

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

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

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

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

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

            使用Linux把處理器連接到FPGA

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

            

            隨后,將驅(qū)動(dòng)程序注冊(cè)到特定的器件號(hào)碼(比如253):

            

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

            

            

            FPGA的優(yōu)勢(shì)

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

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

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

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


          上一頁(yè) 1 2 3 4 下一頁(yè)

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

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(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); })();