<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

使用LTspice解決信號完整性問題

ADI智庫 ? 來源:ADI智庫 ? 2023-12-15 12:30 ? 次閱讀

在“如何使用LTspice獲得出色的EMC仿真結果"系列文章的第1分部中,我們介紹了針對電源器件、傳導輻射和抗擾度的LTspice仿真工具。在第2部分中,我們將介紹LTspice和C程序的組合,旨在幫助設計人員了解和改善有線網絡信號完整性。

借助這些工具,設計人員無需多次進行實驗室測試迭代,也無需重新設計硬件。文中提供了符合以下標準的仿真模型:現場總線通信RS-485、RS-232)、高速背板(LVDS)、無處不在的USB標準以及支持通過數據線供電(PoDL)的新型單對以太網(SPE)。

為什么設計人員應關心信號完整性?

信號完整性不僅指原型機擁有正常工作的鏈路。即使鏈路看起來有效,也建議您對信號質量進行深入分析檢查,原因如下:

可靠性:距離、吞吐量和環境可能會導致二進制誤碼率提高,達到系統糾錯機制無法接受的程度。

IEEE標準合規性:符合IEEE建議可確保網絡成員之間無縫互聯。

EMC指令合規性:高擺率和過沖常常是不合規的原因,因為其含有高諧波成分。

13d7002c-9afe-11ee-8b88-92fbcf53809c.jpg

圖1. 使用LTspice執行的分析示例

使用LTspice解決信號完整性問題?

本文將幫助設計人員回答若干關鍵問題,例如:

系統是否具有足夠的信號完整性?

首先應該改善信號的哪一方面?是否應該改善信號擺率、振鈴、抖動或匹配?

系統正常工作,但隨著時間推移、溫度和元件容差的變化,它能否可靠地工作?

閱讀本文后,您應該能夠:

在LTspice中實施信號完整性分析

生成、導入和使用代表性測試向量,并產生類似圖1所示的分析和輸出

使用多個隨機參數對系統進行統計驗證

執行眼圖仿真

眼圖提供了一種便捷的方法來評估發送器或接收器端信號是否一致。眼圖是基于時間的信號表示。

這種表示方法使用余輝方式來分析大量符號,并確保信號電平、抖動和上升時間是適當的。

LTspice具有眼圖分析所需的一些工具,但要執行全功能分析,需要實施一些額外的步驟。

使用測試向量生成PWL文件

LTspice提供了一種在仿真中使用測試向量的高效方法。為了更好地覆蓋可能導致不一致的情況,必須使用大量數據。

一些不一致情形會在非常特殊的情況下出現,例如:

長連續位序列

非零平衡序列

來自附近其他傳輸通道的串擾

這意味著,假設數據是使用隨機函數生成的,為了確保遇到特定的11個連續高電平,可能必須使用數以千計的符號。

LTspice期望的PWL數據格式如圖2所示。

13ea8318-9afe-11ee-8b88-92fbcf53809c.png

圖2. PWL測試向量的文件格式。

其中:

第一個值是時間

第二個值是輸出(電壓、電流、溫度等)

-> 是制表符(Ascii碼#09)

CR是回車符(Ascii碼#13)

LF是換行符(Ascii碼#10)

140394fc-9afe-11ee-8b88-92fbcf53809c.png

圖3. 用于生成測試向量的代碼摘錄

生成測試向量的方案有很多。這里,我們選擇C語言。

只需幾行代碼,就可以輕松生成大量可立即注入仿真的測試向量。圖3顯示了用于生成測試向量的代碼摘錄,圖4顯示了C程序生成的波形。

14170514-9afe-11ee-8b88-92fbcf53809c.png

圖4. 使用C程序生成的測試向量

有線通信中使用的概念(如位填充)可以用幾行代碼來實現,如圖5所示。

143295fe-9afe-11ee-8b88-92fbcf53809c.png

圖5. 代碼參見本文提供的鏈接。

使用捕獲的測試向量生成PWL文件

也可以使用實際數據并將數據導入LTspice。使用常規實驗室設備采集數據后,只需幾個步驟即可將其導入。

例如,圖6是使用示波器捕獲的USB 1.0通信信號。

14457a84-9afe-11ee-8b88-92fbcf53809c.png

圖6. 使用實驗室設備捕獲的USB信號

圖7是示波器保存的數據集典型示例(具體格式可能有所不同,但將數據導入LTspice的規則仍然適用)。

145f7416-9afe-11ee-8b88-92fbcf53809c.png

圖7. 捕獲的USB信號的原始數據

要在LTspice仿真中使用此數據集,需要進行一些修改:

14dd3b08-9afe-11ee-8b88-92fbcf53809c.png

圖8. LTspice中導入的USB信號

使用測試向量PWL文件

要使用生成的PWL文件,可以向設計添加電壓源和文件路徑,如圖9所示。

14f8c44a-9afe-11ee-8b88-92fbcf53809c.png

圖9. 電壓源的PWL選項

絕對和相對文件路徑均可使用,但建議使用相對路徑,使仿真可移植,以便與同事分享。

15146704-9afe-11ee-8b88-92fbcf53809c.png

圖10. 相對路徑示例

眼圖功能的啟用和調整

為了充分發揮LTspice這一隱藏功能的潛力,首先必須運行仿真。

152ae876-9afe-11ee-8b88-92fbcf53809c.png

圖11. 右鍵單擊該區域以啟用眼圖水平軸屬性

仿真完成并顯示信號后,右鍵單擊水平(時間)軸。

隨即彈出一個對話框,顯示如圖12所示的眼圖按鈕。

1542d09e-9afe-11ee-8b88-92fbcf53809c.png

圖12. 眼圖選項的位置

在此彈出窗口中,可以啟用和調整眼圖顯示,其中參數通俗易懂,無需解釋。

155a1a24-9afe-11ee-8b88-92fbcf53809c.png

圖13. 眼圖的設置

驗證后,顯示結果將如圖14所示。

1571401e-9afe-11ee-8b88-92fbcf53809c.png

圖14. 眼圖顯示

計算和顯示眼圖模板

為了簡化對信號完整性的評估,可以將眼圖與眼圖模板相關聯。眼圖模板不是標準的LTspice功能,但仍然可以實現(類似第一篇文章中的EMC限值線)。

眼圖規格是一個標準,因此大部分模板可以通過一組精簡的變量進行評估,如圖15所示。

1583ffe2-9afe-11ee-8b88-92fbcf53809c.png

圖15. 眼圖和眼圖模板

下面的列表給出了眼圖模板中字母A到E的定義:

A:眼圖平寬,在某些模板定義中它可以低至零。

B:眼寬,評估最大抖動、擺率和波特率等參數的關鍵。

C:眼高,根據您是在電纜的近端還是遠端評估此參數而有所不同。

D:眼圖中心,定義眼圖的中心電壓。

E:延遲,僅在LTspice中使用,以便在繪圖窗口內移動信號。

生成眼圖模板

在本系列文章的第1部分中,我們說明了如何使用繪圖元件在FFT頻譜上顯示EMC限值線。在本文中,我們將展示如何使用相同的工具來繪制眼圖模板。

與生成和添加EMC限值線相比,眼圖的生成更為復雜。對于眼圖,我們使用含有JavaScriptP2的網頁來生成眼圖定義,然后可以將其粘貼到LTspice信號顯示的繪圖設置文件(*.plt)中。如圖16所示,工程師可利用此JavaScript程序完成其設計。

159daaaa-9afe-11ee-8b88-92fbcf53809c.png

圖16. 眼圖生成器的預設

常見有線接口標準的眼圖定義已作為預設提供。單擊每個單選按鈕,字段會自動填充典型值。

使用提供的字段也可以微調或實現您自己的眼圖定義。

15bd9d42-9afe-11ee-8b88-92fbcf53809c.png

圖17. 眼圖模板輸入字段

單擊更新按鈕就會生成相應的繪圖設置命令。您可以按照本系列文章第1部分所述的方法,將這些行添加到繪圖設置文件中。

15d13776-9afe-11ee-8b88-92fbcf53809c.png

圖18. 由網頁生成的繪圖設置

為了獲得比較理想的顯示效果,可能需要調整要繪制的眼圖數量和LTspice延遲設置,如圖19所示。

15ed0690-9afe-11ee-8b88-92fbcf53809c.png

圖19. 由網頁生成的繪圖設置應用于波形

評估容差范圍內的一致性

設計中使用的元器件具有較寬的容差,我們可以通過計算檢查這些容差是否會有問題。但是,當設計包含數百個元器件時,使用紙筆或電子表格等手動方法會非常耗時,并且可能無法捕獲重要參數。對于某些器件,可以使用更窄的容差,但如果為整個物料清單挑選低容差元器件的話,將會帶來價格和供貨問題,而且不會考慮老化或溫度相關性的影響。

為了在容差范圍內驗證設計,spice及其擴展LTspice提供了幾個非常棒的工具。

以下部分介紹在LTspice中使用蒙特卡羅和高斯分布進行容差分析和最差情況分析的方法。

161eb280-9afe-11ee-8b88-92fbcf53809c.png

圖20. 三種主要方法的隨機值分布

高斯、最差情況和蒙特卡羅方法的通用測試電路

為了比較這些方法在實際用例中的相關性和窮盡性,我們選擇了以下基于Graber4工作的示例。此設置顯示了SPE 10Base-T1L標準(10SPE)物理層或MDI的仿真電路。

圖21所示的仿真電路包括100 Ω ±10%的端接電阻,用于ADI公司ADIN1110或ADIN1100 10BASE-T1L以太網PHY/MAC-PHY。

163c26c6-9afe-11ee-8b88-92fbcf53809c.png

圖21. 高斯、最差情況和蒙特卡羅方法的通用測試電路 — 基于參考文獻

信號耦合電容、功率耦合電感、共模扼流圈和其他EMC保護元件均進行建模仿真。對于某些元件,我們添加了建議的元件值和容差范圍。

回波損耗圖的語法為:

(100+1/I(V1))/(100-1/I(V1))

蒙特卡羅仿真

蒙特卡羅仿真從仿真電路中每個指定元件的容差范圍中取一個隨機值。對于電路仿真而言,元件容差范圍內的所有值都有相等的概率。

LTspice內置一個使用方便的蒙特卡羅功能,其語法很簡單。

例如,要創建一個容差為10%的100 Ω電阻,就需要使用以下語法:

{mc(100R, ToIA)}

.param ToIA = 0.10

表1. 使用蒙特卡羅方法定義元件值和容差

1642dbba-9afe-11ee-8b88-92fbcf53809c.png

圖21所示的電路可用于仿真回波損耗,它衡量所有可能發生的信號反射。

回波損耗是由電纜鏈路上所有位置的阻抗不匹配引起的?;夭〒p耗以分貝為單位,對于10BASE-T1L中采用的高數據速率或長電纜距離(1700 m)通信尤為重要。

要將MDI回波損耗限值線添加到圖中(圖23中所示的紅線),請單擊Plot Settings(繪圖設置)菜單中的Save Plot Settings(保存繪圖設置)。

使用標準文本編輯器打開.PLT文件。復制并粘貼Excel文件所示的線定義語法(圖22)。

1656deda-9afe-11ee-8b88-92fbcf53809c.png

圖22. LTspice繪圖設置文件的線定義

167244b8-9afe-11ee-8b88-92fbcf53809c.png

圖23. SPE終端的差分回波損耗:蒙特卡羅分布參數的128次運行

要在仿真中得到理想的圖形,請右鍵單擊波形,然后單擊Don'tPlot Phase(不繪制相位)按鈕。

關于蒙特卡羅仿真的結論

蒙特卡羅仿真是評估電子設計在其容差范圍內的合規性的重要方法,很可能將滿足大多數設計人員的需求,同時仿真運行次數合理。

最差情況仿真

最差情況仿真功能不是LTspice的內置功能。但是,您可以用所需函數來模擬最差情況,如Joseph Spencer和Gabino Alonso的文章所述。根據最差情況執行仿真需要.func binary(run,index)和.func wc(nom,tol,index)函數,您需要將它們作為SPICE指令放在LTspice原理圖中。

.func binary(run,index) floor(run/(2**index))-2*floor(run/(2**(index+1)))

.func wc(nom,tol,index) if(run==numruns,nom,if(binary(run,index),nom*(1+ tol),nom*(1-tol)))

為了使用這些函數,您需要:

使用numruns聲明所需的仿真運行次數,這些運行次數應覆蓋每個進行最差情況分析的元件的最大值、最小值和標稱值。運行次數為2N+1,其中N等于與元件容差相關的不同索引的數量。對于圖21,運行次數為129,因此語法為:

.param numruns = 129

您必須聲明以下表達式,而不是使用元件的常規值:

{wc(100R, 0.1, 0)}

其中:

100R為標稱值

0.1為容差(此處為+或-10%)

0為要改變的參數的索引,下一個要改變的元件將采用索引

使用下表中的表達式(而不是靜態元件值)運行圖21所示的仿真電路:

表2. 使用最差情況方法定義元件值和容差

17fc544a-9afe-11ee-8b88-92fbcf53809c.png

結果顯示在圖24所示的波形圖中。

通過編輯繪圖設置文件來添加MDI回波損耗模板限值線,如前文所述。

關于最差情況分析的結論

Steve Knudtsen簡要說明3了系統設計使用最差情況分析的優點和局限性。

最差情況分析是一種常見方法,其中會將元件參數調整到其最大容差極限。

最差情況方法的局限性包括:結果與通常觀察到的結果不一致;要觀察系統表現出最差性能,將需要裝配非常多的系統。

如果系統針對最壞情況進行設計,那么選擇的元器件可能會很昂貴。

然而,將最差情況與蒙特卡羅或高斯仿真結合使用可以產生有價值的系統見解。

18125d62-9afe-11ee-8b88-92fbcf53809c.png

圖24. SPE終端的差分回波損耗:最差情況分布參數的128次運行

當仿真時間很長且標稱行為已經得到驗證時,最差情況分析非常適合對系統行為進行總體驗證。

高斯仿真

LTspice內置一個高斯函數,其中心值出現的概率較高。此高斯函數的語法很簡單。

{nominal_value*(1+gauss(tolerance/σ))}

要根據高斯分布的標準差參數σ進行調整,可以使用表3中的表達式。

表3. 使用高斯分布方法定義元件值和容差

1827d674-9afe-11ee-8b88-92fbcf53809c.png

或者使用更形象的表示:

183890b8-9afe-11ee-8b88-92fbcf53809c.png

圖25. 樣本的高斯分布與σ的關系

例如,要創建一個容差為10%的100 Ω電阻,并且值在容差內的概率為4σ,您需要使用以下語法:

{100R*(1+gauss(ToIA/4))}

.param ToIA = 0.10

圖26提供了圖19所示仿真運行128次的結果,其中高斯仿真如圖19所示,高斯分布參數使用4σ。

1855b986-9afe-11ee-8b88-92fbcf53809c.png

圖26. SPE終端的差分回波損耗:高斯分布參數的128次運行

關于高斯分布方法的結論

高斯分布通常是仿真電子設計變化的重要方法。

參數圍繞標稱值的高斯分布仍然是研究容差影響的較自然的方法。

遺憾的是,這種方法代價不菲。為了詳盡無遺,仿真運行次數需要非常多。

此分布還會選取容差范圍之外的值,省略元器件制造商執行的排序和分倉操作。

在10BASE-T1L鏈路分析中的應用

使用10BASE-T1L以太網標準的話,可以省去幾條現場總線。同一電纜既可用于傳統現場總線,也可用于10BASE-T1L;它是一種簡單的平衡銅線對,用于全雙工通信和為終端供電設備(PD)供電。雖然可以復用同一電纜,但必須更換物理層通信收發器(PHY)和無源元件以滿足10BASE-T1L標準。

LTspice中的大多數10BASE-T1L信號完整性驗證可以使用類似形狀的信號進行。

表4. 單對以太網的范圍取決于發送信號幅度

187f6a92-9afe-11ee-8b88-92fbcf53809c.png

使用的編碼為PAM,用于脈沖幅度調制3級。根據端點期望的覆蓋范圍和能力,發送信號幅度可以調整為1 V或2.4 V。

在電纜側,-1至+1轉換的信號上升時間為53.33 ns,下降時間相同。

將擺率視為恒定,因此0至1、1至0、-1至0和0至-1轉換的標稱轉換時間應為26.66 ns。

為了生成這樣的測試向量,我們將使用圖27中的代碼。P3它將以PWL格式輸出含有5000個PAM3符號的測試向量。

將此測試向量輸入到原理圖中,我們就能驗證各種參數,例如最小耦合、繞組間電容等等。

圖28、29和30分別顯示了10BASE-T1L鏈路基于變壓器的端接、PWL源電壓文件的輸出以及PWL電壓源和電纜側差分電壓的眼圖。這可用于10BASE-T1L標準合規性測試。

189164b8-9afe-11ee-8b88-92fbcf53809c.png

圖27. 用于生成PAM3測試向量的代碼摘錄

18a8b15e-9afe-11ee-8b88-92fbcf53809c.png

圖28. 基于變壓器的端接,使用PAM3 PWL測試向量

18b6fdae-9afe-11ee-8b88-92fbcf53809c.png

圖29. PWL電壓源的輸出

18cd16ac-9afe-11ee-8b88-92fbcf53809c.png

圖30. PWL電壓源和電纜側差分電壓的眼圖

LTspice是一款功能強大且免費的仿真工具,可與使用標準C語言和JavaScript代碼的波形發生器結合使用。最終,我們得到一種強大的有線通信信號完整性分析工具,其可用于節省實驗時間、指導最終產品設計并縮短產品開發時間,加速產品上市。ADI和Würth Elektronik將為工程師提供該工具來設計有線鏈路,并幫助他們理解10BASE-T1L SPE等新標準。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 信號完整性
    +關注

    關注

    66

    文章

    1356

    瀏覽量

    94977
  • 有線網絡
    +關注

    關注

    0

    文章

    34

    瀏覽量

    10518
  • C程序
    +關注

    關注

    4

    文章

    254

    瀏覽量

    35806
  • LTspice
    +關注

    關注

    0

    文章

    111

    瀏覽量

    13169

原文標題:LTspice+C程序,如何改善有線網絡信號完整性?

文章出處:【微信號:ADI智庫,微信公眾號:ADI智庫】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    在PCB設計時有哪些點會導致信號完整性問題

    通常說的信號完整性就是指信號無失真的進行傳輸。前面我們討論很多信號完整性問題,包括時序、串擾、衰減、反射、電源
    發表于 09-29 17:00 ?1124次閱讀

    常見的信號完整性問題及解決方案

    在實際的應用場景中,會遇到多種信號完整性問題,典型問題有如下幾種:反射、串擾,電源/地噪,時序等。其中,發射和串擾是引起信號完整性問題的兩大主要原因。
    發表于 10-09 10:56 ?3671次閱讀

    時序分析-- 信號完整性問題(SI)

    時序分析-- 信號完整性問題(SI)
    發表于 05-16 10:44

    高速電路設計中的信號完整性問題是什么?怎么解決這些問題?

    本文分析了高速電路設計中的信號完整性問題,提出了改善信號完整性的一些措施,并結合一個VGA視頻分配器系統的設計過程,具體分析了改善信號
    發表于 06-03 06:22

    在高速設計中,如何解決信號完整性問題?

    在高速設計中,如何解決信號完整性問題? 信號完整性基本上是阻抗匹配的問題。而影響阻抗匹配的因素有信號源的架構和輸出阻
    發表于 01-02 11:15 ?1129次閱讀
    在高速設計中,如何解決<b class='flag-5'>信號</b>的<b class='flag-5'>完整性問題</b>?

    數字電路設計的信號完整性問題探討

    文章介紹了數字電路設計中的信號完整性問題, 探討了振鈴、邊沿畸變、反射、地彈、串擾和抖動等各種信號完整性問題的成因和抑制措施。針對常見的反射和串擾給出了較為詳細的分
    發表于 09-07 16:14 ?104次下載
    數字電路設計的<b class='flag-5'>信號</b><b class='flag-5'>完整性問題</b>探討

    布線前仿真解決設計中存在的信號完整性問題

    當前要創建高難度的電子產品,需要采取戰略性的方法來解決信號和電源完整性問題。在 Layout 開始之前提前研究敏感信號中存在的信號完整性問題
    的頭像 發表于 05-20 06:20 ?2616次閱讀
    布線前仿真解決設計中存在的<b class='flag-5'>信號</b><b class='flag-5'>完整性問題</b>

    識別和修復pcb信號完整性問題

    在PCB信號完整性問題可以很容易地定位和固定使用HyperLynx?。出口你的設計從PCB布局之后,可以以批處理方式運行模擬和/或交互模式發現信號完整性問題。內置的終結者向導可以分析一
    的頭像 發表于 10-12 07:08 ?2651次閱讀

    什么因素導致信號完整性問題?

    在這里,我們將討論潛在的信號完整性問題,它們的來源,理解它們的重要性,以及我們如何分析和解決這些問題。關于電氣設計,信號完整性應該集中在兩個主要方面:定時和
    的頭像 發表于 09-26 09:22 ?7762次閱讀

    信號完整性系列之信號完整性簡介

    本文主要介紹信號完整性是什么,信號完整性包括哪些內容,什么時候需要注意信號完整性問題?
    的頭像 發表于 01-20 14:22 ?1146次閱讀
    <b class='flag-5'>信號</b><b class='flag-5'>完整性</b>系列之<b class='flag-5'>信號</b><b class='flag-5'>完整性</b>簡介

    信號完整性系列之“信號完整性簡介”

    本文主要介紹信號完整性是什么,信號完整性包括哪些內容,什么時候需要注意信號完整性問題?
    發表于 01-23 08:45 ?28次下載
    <b class='flag-5'>信號</b><b class='flag-5'>完整性</b>系列之“<b class='flag-5'>信號</b><b class='flag-5'>完整性</b>簡介”

    信號完整性問題與PCB設計

    信號完整性問題與PCB設計說明。
    發表于 03-23 10:57 ?0次下載
    <b class='flag-5'>信號</b><b class='flag-5'>完整性問題</b>與PCB設計

    PCB設計中的信號完整性問題

    信號傳輸并非嚴格針對網絡設計師,您的PCB設計可能會遇到相同類型的問題。由于您無需費力地擺弄耳朵,因此防止電源完整性信號完整性問題對于您的PCB設計流暢且無靜電至關重要。
    的頭像 發表于 11-08 17:25 ?489次閱讀
    PCB設計中的<b class='flag-5'>信號</b><b class='flag-5'>完整性問題</b>

    在高速設計中,如何解決信號完整性問題?

    在高速設計中,如何解決信號完整性問題? 在高速設計中,信號完整性問題是一個至關重要的考慮因素。它涉及信號在整個設計系統中的傳輸、接收和響應
    的頭像 發表于 11-24 14:32 ?356次閱讀

    高速PCB設計,信號完整性問題你一定要清楚!

    板上的布局、高速信號的布線等因素,都會引起信號完整性問題,導致系統工作不穩定,甚至完全不工作。 PCB信號完整性問題 良好的
    的頭像 發表于 04-07 16:58 ?215次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>