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

          新聞中心

          EEPW首頁 > 電源與新能源 > 設(shè)計(jì)應(yīng)用 > 基于Cadence的高速PCB設(shè)計(jì)

          基于Cadence的高速PCB設(shè)計(jì)

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

          1 引言

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

            隨著人們對(duì)通信需求的不斷提高,要求信號(hào)的傳輸和處理的速度越來越快.相應(yīng)的的應(yīng)用也越來越廣,也越來越復(fù)雜.電路有兩個(gè)方面的含義:一是頻率高,通常認(rèn)為數(shù)字電路的頻率達(dá)到或是超過45MHz至50MHz,而且工作在這個(gè)頻率之上的電路已經(jīng)占到了整個(gè)系統(tǒng)的三分之一,就稱為電路.另外從信號(hào)的上升與下降時(shí)間考慮,當(dāng)信號(hào)的上升時(shí)間小于6倍信號(hào)傳輸延時(shí)時(shí)即認(rèn)為信號(hào)是高速信號(hào),此時(shí)考慮的與信號(hào)的具體頻率無關(guān).

            2 高速的基本內(nèi)容

            高速電路在現(xiàn)代電路設(shè)計(jì)中所占的比例越來越大,設(shè)計(jì)難度也越來越高,它的解決不僅需要高速器件,更需要設(shè)計(jì)者的智慧和仔細(xì)的工作,必須認(rèn)真研究分析具體情況,解決存在的高速電路問題.一般說來主要包括三方面的設(shè)計(jì):信號(hào)完整性設(shè)計(jì)、電磁兼容設(shè)計(jì)、電源完整性設(shè)計(jì).

            2.1 信號(hào)完整性(signal integrity)設(shè)計(jì)

            信號(hào)完整性是指信號(hào)在信號(hào)線上的質(zhì)量.信號(hào)具有良好的信號(hào)完整性是指當(dāng)在需要的時(shí)候,具有所必需達(dá)到的電壓電平數(shù)值.差的信號(hào)完整性不是由某一因素導(dǎo)致的,而是由板級(jí)設(shè)計(jì)中多種因素共同引起的.特別是在高速電路中,所使用的芯片的切換速度過快、端接元件布設(shè)不合理、電路的互聯(lián)不合理等都會(huì)引起信號(hào)的完整性問題.具體主要包括串?dāng)_、反射、過沖與下沖、振蕩、信號(hào)延遲等.

            2.1.1 串?dāng)_(crosstalk)

            串?dāng)_是相鄰兩條信號(hào)線之間的不必要的耦合,信號(hào)線之間的互感和互容引起線上的噪聲.因此也就把它分為感性串?dāng)_和容性串?dāng)_,分別引發(fā)耦合電流和耦合電壓.當(dāng)信號(hào)的邊緣速率低于1ns時(shí),串?dāng)_問題就應(yīng)該考慮.如果信號(hào)線上有交變的信號(hào)電流通過時(shí),會(huì)產(chǎn)生交變的磁場,處于磁場中的相鄰的信號(hào)線會(huì)感應(yīng)出信號(hào)電壓.一般板層的參數(shù)、信號(hào)線間距、驅(qū)動(dòng)端和接收端的電氣特性及信號(hào)線的端接方式對(duì)串?dāng)_都有一定的影響.在的信號(hào)仿真工具中可以同時(shí)對(duì)6條耦合信號(hào)線進(jìn)行串?dāng)_后仿真,可以設(shè)置的掃描參數(shù)有:PCB的介電常數(shù),介質(zhì)的厚度,沉銅厚度,信號(hào)線長度和寬度,信號(hào)線的間距.仿真時(shí)還必須指定一個(gè)受侵害的信號(hào)線,也就是考察另外的信號(hào)線對(duì)本條線路的干擾情況,激勵(lì)設(shè)置為常高或是常低,這樣就可以測到其他信號(hào)線對(duì)本條信號(hào)線的感應(yīng)電壓的總和,從而可以得到滿足要求的最小間距和最大并行長度.

            2.1.2 反射(reflection)

            反射和我們所知道的光經(jīng)過不連續(xù)的介質(zhì)時(shí)都會(huì)有部分能量反射回來一樣,就是信號(hào)在傳輸線上的回波.此時(shí)信號(hào)功率沒有全部傳輸?shù)截?fù)載處,有一部分被反射回來了.在高速的PCB中導(dǎo)線必須等效為傳輸線,按照傳輸線理論,如果源端與負(fù)載端具有相同的阻抗,反射就不會(huì)發(fā)生了.二者阻抗不匹配會(huì)引起反射,負(fù)載會(huì)將一部分電壓反射回源端.根據(jù)負(fù)載阻抗和源阻抗的關(guān)系大小不同,反射電壓可能為正,也可能為負(fù).如果反射信號(hào)很強(qiáng),疊加在原信號(hào)上,很可能改變邏輯狀態(tài),導(dǎo)致接收數(shù)據(jù)錯(cuò)誤.如果在時(shí)鐘信號(hào)上可能引起時(shí)鐘沿不單調(diào),進(jìn)而引起誤觸發(fā).一般布線的幾何形狀、不正確的線端接、經(jīng)過連接器的傳輸及電源平面的不連續(xù)等因素均會(huì)導(dǎo)致此類反射. 另外常有一個(gè)輸出多個(gè)接收,這時(shí)不同的布線策略產(chǎn)生的反射對(duì)每個(gè)接收端的影響也不相同,所以布線策略也是影響反射的一個(gè)不可忽視的因素.

            2.1.3 過沖(overshoot)和下沖(undershoot)

            過沖是由于電路切換速度過快以及上面提到的反射所引起的信號(hào)跳變,也就是信號(hào)第一個(gè)峰值超過了峰值或谷值的設(shè)定電壓.下沖是指下一個(gè)谷值或峰值.過分的過沖能夠引起保護(hù)二極管工作, 導(dǎo)致過早地失效,嚴(yán)重的還會(huì)損壞器件.過分的下沖能夠引起假的時(shí)鐘或數(shù)據(jù)錯(cuò)誤.它們可以通過增加適當(dāng)端接予以減少或消除.

            2.1.4 振蕩(ringing)和環(huán)繞振蕩(rounding)

            振蕩的現(xiàn)象是反復(fù)出現(xiàn)過沖和下沖.信號(hào)的振蕩和環(huán)繞振蕩由線上過度的電感和電容引起的接收端與傳輸線和源端的阻抗不匹配而產(chǎn)生的,通常發(fā)生在邏輯電平門限附近,多次跨越邏輯電平門限會(huì)導(dǎo)致邏輯功能紊亂.振蕩和環(huán)繞振蕩同反射一樣也是由多種因素引起的,振蕩可以通過適當(dāng)?shù)亩私踊蚴歉淖働CB參數(shù)予以減小,但是不可能完全消除.

            在的信號(hào)仿真軟件中,將以上的信號(hào)完整性問題都放在反射參數(shù)中去度量.在接收和驅(qū)動(dòng)器件的IBIS模型庫中,我們只需要設(shè)置不同的傳輸線阻抗參數(shù)、電阻值、信號(hào)傳輸速率以及選擇微帶線還是帶狀線,就可以通過仿真工具直接計(jì)算出信號(hào)的波形以及相應(yīng)的數(shù)據(jù),這樣就可以找出匹配的傳輸線阻抗值、電阻值、信號(hào)傳輸速率,在對(duì)應(yīng)的PCB軟件Allegro中,就可以根據(jù)相對(duì)應(yīng)的傳輸線阻抗值和信號(hào)傳輸速率得到各層中相對(duì)應(yīng)信號(hào)線的寬度(需提前設(shè)好疊層的順序和各參數(shù)).選擇電阻匹配的方式也有多種,包括源端端接和并行端接等,根據(jù)不同的電路選擇不同的方式.在布線策略上也可以選擇不同的方式:菊花型、星型、自定義型,每種方式都有其優(yōu)缺點(diǎn),可以根據(jù)不同的電路仿真結(jié)果來確定具體的選擇方式.


          上一頁 1 2 3 下一頁

          評(píng)論


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