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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 以MCS51為內核構造的單片集成系統(tǒng)

          以MCS51為內核構造的單片集成系統(tǒng)

          作者: 時間:2012-06-29 來源:網絡 收藏

          2.1 數(shù)據(jù)截取

          根據(jù)抽樣速率和DTMG占空比及持續(xù)時間,可以對接收的數(shù)據(jù)進行截斷。根據(jù)FFT的要求,前后兩段數(shù)據(jù)之間應該有一定長度的公共部分。計算出截新的數(shù)據(jù)幀的長度為128字。為了減少面積,我們比較了幾個方案。在不會出現(xiàn)溢出的情況下,最后采取了圖4所示的設計方案。

          數(shù)據(jù)截取由一個256字的雙口RAM完成。復位時,對前32字清零。A/D采樣的數(shù)據(jù)幀先放到寫數(shù)據(jù)段1中,再放到寫數(shù)據(jù)段2中,按照寫數(shù)據(jù)段1和寫數(shù)據(jù)段2交替寫入數(shù)據(jù)。在每次寫完一個數(shù)據(jù)段之后,產生一個數(shù)據(jù)改變脈沖。用來表明已完成1幀數(shù)據(jù),可以進行數(shù)據(jù)讀取,從而啟動數(shù)據(jù)讀取操作。

          數(shù)據(jù)讀取時,為了保證每次數(shù)據(jù)讀取時與前后兩段都有32字的公共部分,第一次從讀數(shù)據(jù)段1中讀出160字的數(shù)據(jù),其前32字的數(shù)據(jù)為上一幀數(shù)據(jù)的最后32字的數(shù)據(jù);下一次在讀數(shù)據(jù)段2中讀出160字的數(shù)據(jù),然后兩個數(shù)據(jù)段讀出數(shù)據(jù)前后之間都有32字的共有數(shù)據(jù)。

          2.2 DTMF解碼

          對于DTMF解碼中用到的FFT,我們采用經典的Goertzel算法。其思想是利用簡單的遞歸運算代替復雜的FFT運算,且只需要計算幾個頻率占上的值,大大簡化了計算量,通過比較幾個頻率點上數(shù)值的大小和判斷占空時間,就可確定發(fā)送的DTMG頻率組合。為了減少設計中用到的乘法驗證,在滿足通信標準的前提下,將寬度降到12位。Goertzel算法的計算公式如下:

          結語

          該系統(tǒng)是一個典型的以為核心。加、DTMG以及門控時鐘等外圍電路組成的控制系統(tǒng)。我們采用自頂向下的設計方法。系統(tǒng)中所有功能模塊均采用VHDL語言進行描述;用FPGA實現(xiàn)的集成系統(tǒng)替換原來的系統(tǒng)通過了功能測試。不但在可靠性上得到了提高,而且滿足芯片面積的要求,達到降低成本的目的。


          上一頁 1 2 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁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); })();