• <address id="ktomy"><button id="ktomy"></button></address>

      <dfn id="ktomy"></dfn>
      從PCB制造到組裝一站式服務(wù)

      SpecctraQuest仿真的時序計算

      2013
      05/02
      本篇文章來自
      捷多邦

      通常我們在計算時序問題時,一般重點遵循以下兩個條件以保證足夠的Timing Margin

      1. Tflightmax + Driver(Tcomax) + Skew + Jitter + Crosstalk + Receiver(Setup)< Clock Period

      2. Tflightmin + Driver(Tcomin) - Receiver(Hold) - Skew - Crosstalk > 0

       

      其中DriverTco一般可以從器件的Datasheet上查到。

      Tco其實包括器件的內(nèi)部邏輯延時和I/O緩沖延時(Buffer delay),一般通過加一個測試負載(通常為50ohm)來測量,即時鐘信號到Driver開始至測量點信號上升到測量電平(Vms)的時延。[器件datasheet上查到的Tco就是這個值]

      我們通常想通過仿真工具,是得到最大/最小 Flight time. Cadence SpecctraQuest里面:

      Tflightmax一般被稱為 Final settle delay

       Tflightmin 也稱為 First switch delay

      分別指器件經(jīng)過Buffer的輸出波形達到Vms開始到接收端到達最大/小閾值電壓的時間。

      盡管Cadence也是這樣定義的,但是在實際仿真中,如果默認仿真參數(shù)Buffer delayFrom library的話,通常計算出的Final settle delay/First switch delay是從零時刻開始到接收端到達最大/小閾值電壓的時間,也就是說里面已經(jīng)包含了緩沖延時(是Tco的一部分),這樣,如果我們再使用上面提到的公式1,2來計算時許的時候就會造成Tco中的Buffer delay被重復計算。

      解決的方法就是要修正仿真出來的TflightmaxTflightmin,減去一個Buffer delay.

      有兩種可能:

      1.如果IBIS的測試負載和器件手冊上注明的Tco的測試負載相同的話,我們可以通過Cadence工具直接計算出來,只要將Buffer delay設(shè)置為On-the-Fly模式下,這時仿真結(jié)果會自動計算出減去Buffer delay后的真正的最大/最小Flight Time,也可以在其模型編輯器直接看器件的上升波形,測量其上升到Vms的時間,就可以大致確定Buffer Delay的時間,經(jīng)過試驗,發(fā)現(xiàn)兩者計算出來的偏差在0.01ns左右。

      2.如果IBIS的測試負載和器件手冊上注明的Tco的測試負載不同的話,則可以用Cadence模型編輯器修改IBIS的端接負載和測量Tco的一致,然后從仿真出來的波形中得出Tco中的測量Buffer delay。

       

      幾點疑問:

      1.        選用On-the-fly模式除了在計算buffer delay上,其他方面和選From Library有何不同?好像對仿真結(jié)果沒有什么影響(除了Help文檔上說的On-the-flyDriver只能加Pulse激勵)。

      2.       如果IBIS模型中沒有提供Vms Cadence將如何計算?其默認值是多少?

      3.       上面對時序以及Cadence工具的理解是否有誤?

       

      the end