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

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 基于HyperLynx的FPGA系統(tǒng)信號完整性仿真分析

          基于HyperLynx的FPGA系統(tǒng)信號完整性仿真分析

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

          串?dāng)_是信號完整性問題之一,它是指有害信號從一個網(wǎng)絡(luò)轉(zhuǎn)移到相鄰網(wǎng)絡(luò)。串?dāng)_可分為近端串?dāng)_(NEXT)和遠(yuǎn)端串?dāng)_(FEXT),傳輸線的反射跟串?dāng)_也有聯(lián)系,采用合適的源端端接和遠(yuǎn)端端接可以在一定程度上減小串?dāng)_。但串?dāng)_與信號之間的容性耦合和感性耦合有關(guān),串?dāng)_不可能完全消除,只能減小。在TMS320F2812和EP2C8之間有大量的高速數(shù)據(jù)線,如果不進行處理則有可能接收錯誤的數(shù)據(jù)。圖4所示為用LineSim對數(shù)據(jù)線D8,D9和D10進行SI仿真的結(jié)果,設(shè)定D9是被干擾的網(wǎng)絡(luò),D8、D10是攻擊網(wǎng)絡(luò),振蕩頻率為20 MHz,端接電阻為50 Ω。從圖可知D9受到的干擾較小,過沖電壓只有122 mV。如果想要進一步減小串?dāng)_則可以減小走線寬度到8 mil,同時縮短走線耦合長度。

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

          3.2 高速信號線時序問題
          TMS320F2812和EP2C8之間數(shù)據(jù)收發(fā)率高,因此時序就變得十分重要,如果兩信號到達接收端的時差近似于一個采集周期將導(dǎo)致接收到錯誤的數(shù)據(jù)。為了避免這種時序可題的發(fā)生,通過蛇形線來保證高速信號走線長度的一致,如圖5所示。PCB設(shè)計的工具是Altium公司的DXP 2004。

          g.jpg



          4 BoardSim仿真
          BoardSim是在PCB繪制完成后進行的仿真,生成整版報告,驗證原有設(shè)計的合理性、修正布局布線。仿真將利用器件的IBIS模型對已經(jīng)設(shè)計好的PCB走線進行仿真,包括信號完整性、EMC、時序等。
          4.1 串?dāng)_仿真驗證
          第3.1節(jié)中已經(jīng)對D8,D9和D10進行了串?dāng)_仿真,現(xiàn)在用BoardSim來驗證上述仿真結(jié)果??紤]到實際電阻值沒有50 Ω,所以采用端接電阻值為51 Ω,振蕩頻率為20 MHz。圖6所示為當(dāng)D8,D10有數(shù)據(jù)通信時D9受到的干擾。由圖可知,D9處的波形抖動很小,串?dāng)_電壓過沖只有44.8 mV,下沖電壓只有-39.8 mV,基本上不會影響D9的信號,結(jié)果表明已經(jīng)通過信號完整性檢查。

          e.jpg


          4.2 端接仿真驗證
          主要驗證時鐘信號和數(shù)據(jù)線的端接方案的合理性。



          評論


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