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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于GIO/FVID的F2812DSP的視頻處理系統(tǒng)

          基于GIO/FVID的F2812DSP的視頻處理系統(tǒng)

          作者: 時(shí)間:2011-08-25 來源:網(wǎng)絡(luò) 收藏
          3.4 驅(qū)動(dòng)模型裁剪的一般方法

          本文引用地址:http://www.ex-cimer.com/article/150294.htm

            TI公司設(shè)計(jì)的設(shè)備驅(qū)動(dòng)原型相對復(fù)雜,且占用較多的系統(tǒng)資源,要使其可以應(yīng)用于更通用的低端器系統(tǒng),就必須進(jìn)行改造和裁減。在改造中要注意以下幾個(gè)方面:

            ①阻塞的I/0操作。TI公司6000系列的DSP具有FDMA功能,傳輸數(shù)據(jù)不需要CPU的干預(yù),而DM64X還具有專用的接口,傳輸數(shù)據(jù)不會(huì)占用外部擴(kuò)展總線,所以視頻數(shù)據(jù)的和輸入輸出是可以并行的。而低端器是不具備這樣功能的,視頻設(shè)備一般都是通過外部擴(kuò)展總線連接的,所以對視頻設(shè)備的操作必須設(shè)計(jì)為阻塞型的I/O操作,視頻數(shù)據(jù)輸入/輸出的過程是由CPU來完成,且要保證對視頻設(shè)備的操作不會(huì)被其他操作中斷。

           ?、趯σ曨l數(shù)據(jù)緩沖區(qū)的管理。視頻設(shè)備驅(qū)動(dòng)原型中使用的3緩沖區(qū)模型,雖然功能很完善,卻占用了太多的存儲(chǔ)空間,所以對于實(shí)際的視頻處統(tǒng)就要進(jìn)行調(diào)整,改為兩緩沖區(qū)甚至是單緩沖區(qū)模型。對于具有獨(dú)立硬件緩存的輸出設(shè)備,可以考慮不再為其分配動(dòng)態(tài)緩沖區(qū)。

           ?、蹖σ曨l設(shè)備的操作。mdControlChan函數(shù)主要用來操作外部視頻設(shè)備,只要保留對實(shí)際系統(tǒng)有用的操作就足夠了,而GI0/FVID視頻設(shè)備驅(qū)動(dòng)原犁中定義的很多操作都可以省略。

            4、小結(jié)

            本文介紹了DSP/BIOS的外設(shè)驅(qū)動(dòng)程序模型,并針對的視頻處統(tǒng)這一具體的硬件平臺(tái),重點(diǎn)介紹了開發(fā)設(shè)備驅(qū)動(dòng)的流程和針對低端處理器系統(tǒng)的視頻驅(qū)動(dòng)模型裁減方法。本視頻驅(qū)動(dòng)程序?yàn)殚_發(fā)各種視頻處理應(yīng)用程序(如JPEG圖像EPA控制網(wǎng)絡(luò)中ZigBee壓縮、MPEG視頻壓縮、視頻監(jiān)控程序等)提供了有力的支持。本文介紹的設(shè)備驅(qū)動(dòng)程序的開發(fā)方法,對于同類視頻處統(tǒng),特別是對于使用TI2000系州DSP這樣系統(tǒng)資源比較有限的視頻處理系統(tǒng),具有很好的可借鑒性。


          上一頁 1 2 3 下一頁

          評論


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