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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM和FPGA架構(gòu)的三維圖形加速系統(tǒng)

          基于ARM和FPGA架構(gòu)的三維圖形加速系統(tǒng)

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

            系統(tǒng)硬件實(shí)現(xiàn)

            本文選用S3C2410嵌入式處理器和Cyclone II系列實(shí)現(xiàn)以及其他功能模塊,輔以LCD屏、串口等外圍電路實(shí)現(xiàn)整個(gè)圖形系統(tǒng)。

            電源設(shè)計(jì)

            本系統(tǒng)需要多個(gè)不同電壓值的直流電源供電,包括5V、3.3V、1.8V和1.2V。其中5V電源從外部直流電源直接引入,而其他電壓值則由5V電壓變換得到。

            S3C2410的內(nèi)核電壓為1.8V,外部I/O和存儲(chǔ)器電壓為3.3V。系統(tǒng)選用低壓差穩(wěn)壓器AS1117實(shí)現(xiàn)這兩種電壓的轉(zhuǎn)換,固定輸出時(shí)只需三個(gè)引腳,如圖3所示?! ?CENTER sizset="4" sizcache="3">1.8V電源電路

          圖3 1.8V電源電路

            本文使用TPS70345為提供1.2V內(nèi)核電壓和3.3V IO電壓。

            ARM與接口電路

            生成三維圖形時(shí),嵌入式微處理器上運(yùn)行的圖形應(yīng)用程序生成三維圖形的渲染列表,并將渲染列表寫(xiě)入到FPGA的渲染列表緩沖區(qū)中,等待模塊的處理。ARM與FPGA接口電路既要保證可以完成渲染列表的寫(xiě)操作,又要能夠?qū)PGA中總線接口模塊、模塊、LCD控制器等的內(nèi)部寄存器進(jìn)行讀寫(xiě)操作。接口電路如圖4所示?! ?CENTER sizset="5" sizcache="3">基于ARM和FPGA架構(gòu)的三維圖形加速系統(tǒng)

          圖4 ARM與FPGA接口電路

            系統(tǒng)軟件設(shè)計(jì)

            系統(tǒng)軟件架構(gòu)

            本文使用FPGA實(shí)現(xiàn)整個(gè)三維圖形處理流水線,由硬件完成三維圖形生成和處理。運(yùn)行在操作系統(tǒng)上的圖形應(yīng)用程序通過(guò)調(diào)用圖形API實(shí)現(xiàn)具體應(yīng)用,而驅(qū)動(dòng)程序?qū)D形API的調(diào)用轉(zhuǎn)換成渲染列表,從而將具體的三維圖形處理任務(wù)交給硬件完成,如圖5所示?! ?CENTER sizset="6" sizcache="3">基于ARM+FPGA架構(gòu)的三維圖形加速系統(tǒng)流程

          圖5 系統(tǒng)軟件架構(gòu)

            考慮到嵌入式圖形系統(tǒng)除了進(jìn)行三維圖形處理之外,還應(yīng)當(dāng)能夠?yàn)橛脩?hù)提供友好的用戶(hù)圖形操作界面,本文采用了Windows CE操作系統(tǒng)。

            驅(qū)動(dòng)程序設(shè)計(jì)

            設(shè)備驅(qū)動(dòng)程序在操作系統(tǒng)和硬件設(shè)備之間建立了一個(gè)橋梁,讓操作系統(tǒng)能夠識(shí)別設(shè)備并為應(yīng)用程序提供設(shè)備服務(wù)。

            本文中FPGA實(shí)現(xiàn)的圖形加速模塊作為一個(gè)設(shè)備掛接在系統(tǒng)中。系統(tǒng)在軟件上只需要將渲染列表寫(xiě)到該設(shè)備的地址空間,因此本文使用了簡(jiǎn)單的流式接口驅(qū)動(dòng),所有的流接口驅(qū)動(dòng)程序都使用相同的一組流接口函數(shù)。

            渲染列表的傳遞是不需要反饋的,系統(tǒng)將渲染列表寫(xiě)入設(shè)備(GPU)后并不需要從設(shè)備中獲取數(shù)據(jù),因此流接口函數(shù)GPU_Read()并不需要實(shí)現(xiàn)具體功能,只在GPU_Write()中將渲染列表寫(xiě)入到設(shè)備中。另外,系統(tǒng)在普通圖形界面和三維顯示兩種顯示模式下使用的是不同的LCD控制器。前者使用S3C2410中集成的LCD控制器,而后者使用的是FPGA模塊中實(shí)現(xiàn)的LCD控制器,兩種模式下通過(guò)LCD總線切換模塊進(jìn)行切換。

            結(jié)語(yǔ)

            本文設(shè)計(jì)了基于ARM和FPGA的嵌入式圖形系統(tǒng),使用FPGA在硬件上實(shí)現(xiàn)三維圖形處理,緩解嵌入式CPU在處理三維圖形時(shí)因計(jì)算量過(guò)大而導(dǎo)致系統(tǒng)效率降低的問(wèn)題。圖像顯示符合人眼對(duì)圖像連續(xù)性的要求。


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

          關(guān)鍵詞: FPGA 圖形加速

          評(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); })();