本文提供有關(guān)在創(chuàng)建IBIS模型時如何使用LTspice?的說明指南,涵蓋從IBIS預(yù)建模程序到IBIS模型驗證的整個過程。本文還詳細(xì)介紹如何在LTspice中為IBIS模型準(zhǔn)確提取I-V、V-T、斜坡和C_comp數(shù)據(jù)。此外,還提供定性和定量FOM方法,用于驗證IBIS模型的性能。該應(yīng)用案例展示了為假設(shè)的ADxxxx三態(tài)數(shù)字緩沖器開發(fā)IBIS模型的過程,其中包含適合輸入和三態(tài)CMOS接口的可用IBIS模板,有助于即刻開始創(chuàng)建您的IBIS模型。
簡介
在構(gòu)建任何系統(tǒng)時,仿真都發(fā)揮著關(guān)鍵作用。它幫助設(shè)計人員預(yù)見問題,進(jìn)而避免費時且成本高昂的修改。我們的目標(biāo)始終是一次就成功!在仿真高速數(shù)字接口時,如果設(shè)計不當(dāng),簡單的PCB走線可能會影響信號質(zhì)量。在信號完整性仿真中,IBIS(輸入/輸出緩沖器信息規(guī)范)模型用來表示器件的數(shù)字接口。
如IBIS系列文章的第1部分所述,IBIS是一個行為模型,通過以表格形式列出的電流與電壓(I-V)和電壓與時間(V-T)數(shù)據(jù)來描述器件的數(shù)字接口的電氣特征。IBIS模型應(yīng)盡量準(zhǔn)確,且不含任何解析錯誤,避免在之后使用時出現(xiàn)問題。此外,對于具有數(shù)字接口的每個部件或器件,都應(yīng)該提供可用的IBIS模型。這樣客戶需要時,可直接從制造商的網(wǎng)頁上下載。但是,事實并非總是如此。對于IBIS模型用戶,他們常遇到的一個問題就是模型的可用性。當(dāng)他們在設(shè)計中選用的部件沒有IBIS模型時,其產(chǎn)品開發(fā)可能受阻。
IBIS模型最好是由其制造商提供;但是,用戶也可以創(chuàng)建IBIS模型。本文介紹如何使用LTspice,基于SPICE模型創(chuàng)建最基礎(chǔ)的IBIS模型。下文使用IBIS建模手冊(IBIS 4.0版)中的規(guī)格來介紹LTspice仿真設(shè)置。還要介紹如何使用定性和定量品質(zhì)因數(shù)來驗證IBIS模型。
何謂“最基本的”IBIS模型?
為了幫助客戶使用LTspice創(chuàng)建基本的IBIS模型,需要先定義“基本”一詞?;镜腎BIS模型不僅取決于I/O模型關(guān)鍵字,還取決于需要建模的數(shù)字緩沖器的類型。這意味著需要重新審視IBIS的早期版本,以定義建立緩沖器模型需要滿足的最低要求,以及當(dāng)時建模的數(shù)字接口的類型。事實證明,單端CMOS緩沖器是可以使用IBIS建模的最簡單的數(shù)字IO之一,本文將予以介紹。
圖1.3態(tài)CMOS緩沖器的IBIS模型
表1.基于Model_type的IBIS模型組件匯總
圖1顯示3態(tài)CMOS緩沖器IBIS模型的結(jié)構(gòu)。如第1部分所述,IBIS模型中的組件或關(guān)鍵字取決于模型類型。表1匯總列出基本的IBIS模型的組件,具體由Model_type決定。
應(yīng)用案例
在本文中,我們將使用一個假設(shè)的ADxxxx器件的LTspice模型來創(chuàng)建IBIS模型。它是一個帶有使能引腳的單輸入和單輸出數(shù)字緩沖器。因此,得到的IBIS模型將具有兩個輸入(DIN1和EN)、一個三態(tài)輸出(DOUT1)。
一般來說,生成IBIS模型有五個基本步驟:
- 建立預(yù)建模程序。
- 對從SPICE模型中提取的C_comp、V-I和V-T數(shù)據(jù)進(jìn)行LTspice仿真。
- 格式化IBIS文件。
- 使用IBIS解析器測試檢查文件。
- 比較IBIS模型與SPICE模型在相同加載條件下的仿真結(jié)果。
IBIS模型提供典型數(shù)據(jù)、最小數(shù)據(jù)和最大數(shù)據(jù)。它們通過工作電源電壓范圍、溫度和工藝來確定。為簡潔起見,本文只討論典型條件。
Ibischk Golden Parser系列可用于檢查IBIS模型是否符合IBIS規(guī)范。ibischk可執(zhí)行文件可從IBIS.ORG網(wǎng)頁免費獲取。本文使用集成ibischk的第三方IBIS模型編輯軟件。
預(yù)建模程序
在開始仿真之前,用戶應(yīng)該下載器件的數(shù)據(jù)手冊,并安裝SPICE模型和LTspice文件。通過確定部件具備的數(shù)字接口數(shù)量和類型(例如,輸入、開漏、三態(tài)等),對部件進(jìn)行初始評估。
根據(jù)器件數(shù)據(jù)手冊,確定工作電源電壓、工作溫度、集成電路(IC)封裝類型、器件引腳排列、數(shù)字輸出時序規(guī)格的加載條件(RLoad和/或CLoad),以及數(shù)字輸入的低電平輸入電壓(VINL)和高電平輸入電壓(VINH)。ADxxx SPICE模型如圖1所示,其指標(biāo)參數(shù)列在表2。
通過使用關(guān)鍵字,將有關(guān)器件數(shù)字接口的所有信息匯集到一個IBIS文件中。關(guān)鍵字是IBIS模型中用括號括起來的標(biāo)識符,如第1部分所述。更多詳細(xì)信息請參閱此部分內(nèi)容。?
圖2.Adxxxx 3態(tài)數(shù)字緩沖器SPICE模型。
表2.ADxxxx數(shù)據(jù)手冊參數(shù)
與IC封裝模型相關(guān)的關(guān)鍵字是[Package]。它包含RLC(電阻-電感-電容)寄生參數(shù),代表從芯片焊盤到IC焊盤/引腳的連接。此信息可從制造商處獲得。也可以查找另一個IBIS文件的[Package]數(shù)據(jù),只要該器件采用的封裝與正在評估的器件完全相同,并且來自同一制造商。6引腳SOT-23封裝的器件封裝寄生參數(shù)如表3所示。
表3.6引腳SOT-23封裝寄生參數(shù)
器件引腳排列如表4所示。關(guān)鍵字[Pin]用于描述引腳及其對應(yīng)的模型名稱。[Pin]一般為3列格式。第一列是引腳編號,第二列是引腳描述,第三列是模型名稱。有些封裝包含類似的引腳(VCC、GND)。這些引腳可以按模型分組和描述。在這種情況下,由于SPICE模型沒有給出有關(guān)內(nèi)部晶體管級原理圖的信息,因此最好為每個數(shù)字接口創(chuàng)建單獨的模型。在IBIS文件中,模型名稱“Power”和“GND”用于命名電源和接地引腳。非數(shù)字接口和“請勿連接”引腳則描述為“NC”或無連接。請注意,模型名稱是區(qū)分大小寫的。由于在稍后的建模程序中還會用到,所以需給出具體的模型名稱。
表4.ADxxxx引腳列表
?
ADxxxx真值表如表5所示。這在建立LTspice仿真時非常有用。還必須要知道如何將DOUT1引腳設(shè)置為高阻抗(高阻)模式、邏輯1和邏輯0。
表5.ADxxxx真值表
?
LTspice設(shè)置和仿真
一般來說,IBIS模型通過前面提到的I-V(電流與電壓)和V-T(電壓與時間)數(shù)據(jù)描述數(shù)字緩沖器的行為。進(jìn)行IBIS建模時,每種類型的數(shù)字接口都擁有一組自己的I-V和/或V-T數(shù)據(jù),如表1所示。表6更加詳細(xì)地列出了這些數(shù)據(jù)集。注意查看每個數(shù)據(jù)集的注釋。那些標(biāo)記為“推薦”的數(shù)據(jù),表示這些數(shù)據(jù)缺失不會在ibischk解析器測試中導(dǎo)致誤差。但是,這些數(shù)據(jù)集對通道仿真有一定的作用。例如,鉗位數(shù)據(jù)有助于分析信號反射。
表6.輸入和3態(tài)接口的I-V和V-T數(shù)據(jù)集
?
[Power_Clamp]和[GND_Clamp]
圖3.[Power_Clamp]和[GND_Clamp]關(guān)鍵字結(jié)構(gòu)的概念圖
[GND_Clamp]和[Power_Clamp]通過以表格形式列出的I-V數(shù)據(jù)顯示數(shù)字緩沖器的靜電放電(ESD)器件的行為。[Power_Clamp]表示以VDD為基準(zhǔn)的ESD器件的整體行為,接地箝位表示以GND為基準(zhǔn)的ESD器件的整體行為。
在LTspice中,I-V數(shù)據(jù)可以使用.DC SPICE命令/指令進(jìn)行測量。DOUT1的接地箝位用圖4所示設(shè)置進(jìn)行測量。在該設(shè)置中,使用適當(dāng)?shù)碾娫措妷簩⒃撈骷渲脼楦咦钁B(tài)模式(請參見表5)。這可以確保將ESD器件與核心電路隔離。VSWEEP是以GND為基準(zhǔn)的掃描電壓。使VSWEEP基準(zhǔn)電壓接地,確保只顯示GND箝位ESD器件的特征。
根據(jù)IBIS規(guī)格,應(yīng)掃描電壓軌以外(最好從-VDD到2 × VDD)的I-V數(shù)據(jù),本例中是從–1.8 V到+3.6 V。通過直接執(zhí)行此操作,掃描VDD以外的電壓將會開啟電源箝位ESD器件。為了避免這種情況,首先在–1.8 V至+1.8 V范圍內(nèi)掃描VSWEEP,并使用外推方法添加3.6 V數(shù)據(jù)點。此方法適用于所有I-V數(shù)據(jù)集。
另外,請注意所有I-V數(shù)據(jù)集最多只接受100個數(shù)據(jù)點。如果數(shù)據(jù)點超過這個數(shù)目,在ibischk解析器測試中會提示錯誤。設(shè)置.DC命令的增量,使得到的數(shù)據(jù)點數(shù)量小于或等于99。這是為了容納用于2 × VDD外推的一個額外數(shù)據(jù)點。
進(jìn)行直流掃描時,仿真中可能出現(xiàn)非常大的反向電流。要解決這個問題,將起始掃描從近似二極管勢壘電位(-0.7 V)設(shè)置為VDD (+1.8 V)。然后將數(shù)據(jù)外推至符合–VDD至2 × VDD I-V數(shù)據(jù)。另一種方法是將一個小電阻Rser與VSWEEP串聯(lián),以限制極端電流。
圖4.ADxxxx DOUT1接地箝位設(shè)置
單擊運行按鈕,LTspice開始運行仿真。由于正在評估DOUT1,所以目標(biāo)節(jié)點為Ix(U1:DOUT1)。雖然從技術(shù)角度來看I(VSWEEP)也是正確的,但I(xiàn)BIS模型需要Ix(U1:DOUT1)上的電流極性。這是為了最大限度減少I(VSWEEP)數(shù)據(jù)的進(jìn)一步格式化,使其適合模型。結(jié)果應(yīng)該如圖5所示。仿真完成后,先單擊結(jié)果窗口保存數(shù)據(jù),然后單擊文件 -> 將數(shù)據(jù)導(dǎo)出為文本。導(dǎo)航至要保存的目錄,單擊受測節(jié)點,然后單擊OK(如圖6所示)。
圖5.接地箝位仿真結(jié)果
?
圖6.將仿真數(shù)據(jù)導(dǎo)出為文本
[Power_Clamp]數(shù)據(jù)提取與接地箝位設(shè)置類似,因此掃描電壓VSWEEP以VDD為基準(zhǔn)。設(shè)置和結(jié)果如圖7所示。
?
圖7.ADxxxx OUT1電源箝位設(shè)置和結(jié)果
?[下拉]和[上拉]
圖8.I-V關(guān)鍵字結(jié)構(gòu)的概念圖
圖8顯示了I-V關(guān)鍵字結(jié)構(gòu)的概念圖。[下拉]和[上拉]表示緩沖器中上拉和下拉元素的行為。如果以圖表形式表示,它們看起來就像MOSFET的I-V特征曲線。在提取[下拉]和[上拉]數(shù)據(jù)時,了解如何通過器件的真值表操控從輸出引腳輸出的信號非常重要。提取[下拉]和[上拉]數(shù)據(jù)的設(shè)置與[GND_Clamp]和[Power_Clamp]類似,即DOUT1引腳使能,且不處于高阻模式。
要提取[下拉]數(shù)據(jù),DOUT1引腳應(yīng)設(shè)置為邏輯0輸出或0 V。所以,必須設(shè)置適當(dāng)?shù)碾娫措妷?,如圖9所示。對EN引腳施加1.8 V的等效邏輯高壓,以使能DOUT1引腳,對DIN1引腳施加邏輯0或0 V,將DOUT1引腳設(shè)置為邏輯0輸出??梢酝ㄟ^真值表(表5)進(jìn)行確認(rèn)。結(jié)果如圖10所示。
?
圖9.ADxxxx OUT1下拉設(shè)置
?
圖10.ADxxxx OUT1下拉圖
放大[下拉]數(shù)據(jù),它類似于MOSFET的I-V特征曲線,如圖11所示。
圖11.ADxxxx DOUT1下拉圖(縮放視圖)
在保存下拉數(shù)據(jù)時,請注意它構(gòu)成了[GND_Clamp]和[下拉]的總電流。圖12可以更好地說明這一點。要移除[GND_Clamp]組件,只需從[下拉]保存數(shù)據(jù)中逐點減去它。為了簡化這一操作,[GND_Clamp]和[下拉]直流分析的電壓增量、開始電壓和結(jié)束電壓必須相同。
?
圖12.來自下拉保存數(shù)據(jù)的實際電流
獲取上拉數(shù)據(jù)的設(shè)置如圖13所示。提供適當(dāng)?shù)碾娫措妷?,以將DOUT1設(shè)置為邏輯1 (1.8 V)。這將確保上拉元件激活/開啟。然后,VSWEEP也在–1.8 V至+1.8 V范圍內(nèi)掃描,并且以VDD為基準(zhǔn)。以這種方式連接VSWEEP,可以防止用戶格式化數(shù)據(jù)以符合IBIS規(guī)范。
?
圖13.ADxxxx DOUT1上拉設(shè)置和結(jié)果
與[下拉]一樣,保存的[上拉]數(shù)據(jù)是從[Power_ Clamp]和[上拉]總電流得出的結(jié)果。因此,用戶需要從保存的[上拉]數(shù)據(jù)中逐點減去數(shù)據(jù),以去除[Power_Clamp]組件,如果它們的直流掃描參數(shù)相同,這很容易完成。提醒大家,對所有的I-V數(shù)據(jù)測量使用相同的直流掃描參數(shù)。
圖14.來自保存的[上拉]數(shù)據(jù)的實際電流
[C_comp]
[C_comp]關(guān)鍵字代表緩沖器的電容,其最小、典型和最大拐角的值各不相同。它是晶體管和裸片的電容,與封裝電容不同??梢圆捎脙煞N方式提取[C_comp]。當(dāng)引腳由交流電壓供電時,可以使用方程1中的公式來得出近似值,也可以使用方程2中的公式進(jìn)行計算。
?
其中:
- ImIac:被測電流的虛值
- F:交流電源的頻率
- VAC:交流電源的幅度
使用LTspice進(jìn)行C_Comp提取
如圖15所示,可以通過提供交流電壓和頻率掃描來提取緩沖器電容。由于提供的是交流電壓,所以要測量電流的實部和虛部部分。當(dāng)用交流電壓供電時,必須反轉(zhuǎn)電流的極性,以測量緩沖器的輸入電流值。測量輸出緩沖器電容時,對于圖15所示的圖,唯一要做的更改就是必須將交流電源連接至輸出引腳。
?
圖15.ADxxxx C_comp提取設(shè)置
交流電壓的幅值可以是任意值,但通常設(shè)置為1 V。它將按照SPICE指令進(jìn)行頻率掃描。使用.AC命令繪制波形時,默認(rèn)設(shè)置為以波特模式顯示,單位為dB。必須將其設(shè)置為笛卡爾模式才能查看電流值,這樣可以直接使用緩沖器電容公式進(jìn)行處理。要查看緩沖器電容波形,用戶必須先右鍵單擊波形窗口,然后單擊添加走線,再選擇被測量的引腳。波形圖窗口將顯示兩條線。
實線表示被測電流的實部,虛線表示被測電流的虛部。
圖16.向圖中添加走線對話框
若要將圖形設(shè)置從波特改為笛卡爾,右鍵單擊波形窗口左側(cè)的y軸,以打開左縱軸—幅度對話框。然后將圖示方式從波特改為笛卡爾。
圖17.將圖設(shè)置從波特改成笛卡爾
用于C_Comp設(shè)置的LTspice指令
LTspice指令用于設(shè)置電路的工作模式、測量變量和過程參數(shù),以計算C_comp。以下是用來測量緩沖器的C_comp值的LTspice指令:
- AC Lin 10 1k 10k:將電路的工作模式設(shè)置為從1 kHz至10 kHz的交流線性頻率掃描。
- Options meascplxfmt:將.meas命令的默認(rèn)結(jié)果更改為波特、奈奎斯特或笛卡爾模式。
- Options measdgt:設(shè)置.meas語句的有效數(shù)字位數(shù)。
- meas語句:這些指令用來找出電路中某些參數(shù)的值。
這些SPICE指令可以根據(jù)用戶想要顯示的參數(shù)進(jìn)行修改。有關(guān)在LTspice中可使用的指令的詳細(xì)說明,請參閱LTspice Help。測量語句的結(jié)果可以在工具 > SPICE錯誤日志中查看。
圖18.SPICE錯誤日志中的測量語句結(jié)果。
SPICE錯誤日志中顯示的結(jié)果將采用笛卡爾形式。X坐標(biāo)為電流和緩沖電容的實部,Y坐標(biāo)為電流和緩沖器電容的虛部。如上所述,在測量緩沖器電容時,電流的虛部是緩沖器電容所需的部分,所以C_comp的實際值就是圖18中突出顯示的值。
[上升波形]和[下降波形]
什么是上升和下降波形?
[上升波形]和[下降波形]關(guān)鍵詞模擬輸出緩沖器的切換行為。對于輸出模型,建議包含四個V-T數(shù)據(jù)集:上升和下降波形,以地為基準(zhǔn)加載;上升和下降波形,以VDD為基準(zhǔn)加載。
提取上升和下降V-T數(shù)據(jù)
要在LTspice中提取OUT1的上升或下降波形,以分段線性(PWL)信號或?qū)?a class="article-link" target="_blank" href="/baike/1565134.html">脈沖電壓電源的形式向輸入引腳發(fā)送上升沿或下降沿輸入激勵。仿真中使用的輸入刺激的轉(zhuǎn)換必須要快,以便為模型提取出最快的輸出轉(zhuǎn)換。在測量輸出引腳的電壓時,將使用.TRAN命令對原理圖進(jìn)行瞬態(tài)分析。將一個50 Ω電阻用作負(fù)載,用于提取3態(tài)輸出緩沖器的4個V-T波形的數(shù)據(jù),但它可能會因緩沖器設(shè)計和驅(qū)動能力有所不同,以進(jìn)行輸出轉(zhuǎn)換。50 Ω為V-T數(shù)據(jù)提取的默認(rèn)加載值,因為它是PCB走線電阻的典型值。將50 Ω負(fù)載連接到緩沖器相對地(加載至接地)或VDD(加載至VDD)的輸出引腳。
?
圖19.使用脈沖電壓電源的采樣上升沿輸入刺激
通過以地為基準(zhǔn)50 Ω負(fù)載獲取下降波形
為了產(chǎn)生一個以地為基準(zhǔn)的下降輸出波形,需要一個下降沿輸入,并且50 Ω負(fù)載需要以GND為基準(zhǔn),如圖20所示。得到的V-T波形如圖21所示,其中輸出穩(wěn)定在16 ns到20 ns左右。需要注意的是,瞬態(tài)分析時間應(yīng)足以捕捉下降波形(在穩(wěn)定時)。
?
圖20.通過以地為基準(zhǔn)的50 Ω負(fù)載獲取下降波形的ADxxxx設(shè)置
?
圖21.通過以地為基準(zhǔn)的50 Ω負(fù)載獲取下降波形的ADxxxx結(jié)果
通過以VDD為基準(zhǔn)50 Ω負(fù)載獲取下降波形
圖22顯示通過以VDD為基準(zhǔn)50 Ω負(fù)載獲取下降波形的設(shè)置和結(jié)果。如圖所示,要完全捕獲輸出的下降躍遷,需要50 ns瞬態(tài)時間。
?
圖22.采用以VDD為基準(zhǔn)50 Ω負(fù)載的ADxxxx設(shè)置和DOUT1下降波形圖
通過以地為基準(zhǔn)50 Ω負(fù)載獲取上升波形
對于上升波形,采用PWL信號形式的上升沿輸入刺激。圖23中的設(shè)置顯示,負(fù)載電阻連接至相對于地的輸出引腳,這將產(chǎn)生上升負(fù)載對地的V-T數(shù)據(jù)。
?
圖23.采用以地為基準(zhǔn)50 Ω負(fù)載的ADxxxx設(shè)置和DOUT1上升波形圖
負(fù)載連接至VDD時的上升波形
使用相同的上升沿輸入刺激,但50 Ω需要以VDD為基準(zhǔn)。
檢查V-T數(shù)據(jù)正確性的一種方法是查看邏輯低電壓和邏輯高電壓。在VDD為基準(zhǔn)波形應(yīng)具有相同的邏輯低電壓和邏輯高電壓電平,并且邏輯高電壓應(yīng)與VDD相同。另一方面,以GND為基準(zhǔn)波形也應(yīng)具有相同的邏輯低電壓和邏輯高電壓,并且邏輯低電壓電平應(yīng)為約0 V。
?
圖24.采用以VDD為基準(zhǔn)50 Ω負(fù)載的ADxxxx設(shè)置和DOUT1上升波形圖
導(dǎo)出波形
然后,必須執(zhí)行以下步驟,以保存從四個設(shè)置中提取的V-T波形:
- 右鍵單擊圖。
- 將鼠標(biāo)懸停在文件上,然后單擊將數(shù)據(jù)導(dǎo)出為文本。
圖25.將LTspice圖保存為文本文件
- 選擇要導(dǎo)出的波形和導(dǎo)出波形的目錄。
- VX和VY:表示上升/下降轉(zhuǎn)換沿的20%和80%點位置的電壓。
- dV和dT:這些是IBIS模型的[斜坡]關(guān)鍵字的計算值。
?
圖26.選擇走線,設(shè)置保存目錄
使用LTspice提取斜坡數(shù)據(jù)
[斜坡]關(guān)鍵字是斜坡率(dV/dt),表示在上升或下降轉(zhuǎn)換沿的20%到80%位置捕捉的上升和下降VT數(shù)據(jù)。此方法可以在LTspice上實現(xiàn),因為它能夠使用.MEAS和.PARAM指令計算這些參數(shù)??梢酝ㄟ^在VT波形設(shè)置上添加SPICE指令來完成斜坡提取過程。這意味著斜坡和VT波形可以同時提取。
?
圖27.ADxxxx VT設(shè)置,以及用于提取上升波形的斜坡的附加指令
圖27顯示上升波形斜坡計算的設(shè)置。為了計算下降波形的斜坡,應(yīng)該互換VLO和VHI的時間值,因為下降斜坡的輸出波形從緩沖器的邏輯高電平開始,并轉(zhuǎn)變?yōu)檫壿嫷碗娖健?/p>
用于斜坡提取的LTspice指令
用于斜坡提取的SPICE指令如下:.TRAN,這是用于VT上升/下降波形的SPICE指令;.OPTIONS,用于將SPICE錯誤日志上顯示的輸出設(shè)置為笛卡爾模式,并將其限制為所需的有效位數(shù);.MEAS,用于斜坡的實際計算。
- VLO:表示邏輯低電壓。
- VHI:表示邏輯高電壓。
- Diff:表示轉(zhuǎn)換的20%點位置的電壓,該電壓將分別與VLO和VHI參數(shù)相加和相減,以得到轉(zhuǎn)換的20%和80%點位置。
圖28.上升斜坡波形描述
?
圖29.SPICE錯誤日志,用于計算斜坡率
構(gòu)建IBIS模型
所有提取的I-V和V-T數(shù)據(jù)都將編譯到BIS模型(.ibs)文件中。以下是IBIS文件的實際模板,用戶可以在構(gòu)建IBIS模型時用作參考。
.ibs文件以[IBIS Ver]關(guān)鍵字開頭,后接文件名和修訂號。IBIS版本3.2將在[IBIS Ver]關(guān)鍵字中使用,因為它是構(gòu)建3態(tài)輸出緩沖器所需的最低版本。.ibs文件的文件名應(yīng)和[文件名稱]關(guān)鍵字中的文件名相同;否則,解析器會將其檢測為錯誤。此外,文件名不得包含任何大寫字母,因為解析器只允許文件名使用小寫字母。有關(guān)其他重要的關(guān)鍵字,將在后面章節(jié)中討論。
.ibs文件的下一部分包括[組件]、[制造商]、[封裝]和[引腳]關(guān)鍵字。ADxxxx有兩個輸入緩沖器(DIN1和EN)和一個輸出緩沖器(DOUT1),因此它的IBIS模型總共有三個緩沖器模型。[封裝]關(guān)鍵字通過RLC封裝寄生值作為器件的封裝模型。所有器件緩沖器的模型名稱在[引腳]關(guān)鍵字下定義,這與在[模型]關(guān)鍵字下定義命名變量類似。
在.ibs文件的下一部分,使用測量得出的I-V和V-T數(shù)據(jù)構(gòu)建器件的數(shù)字緩沖器的模型。緩沖器模型的內(nèi)容因Model_type變量中指定的緩沖區(qū)類型而異。由于模型cmos_di1是一個輸入緩沖器,它的緩沖器模型只包含C_comp、[Power_Clamp]和[GND_Clamp]數(shù)據(jù)。輸入緩沖器模型還包括VINH和VINL值,這兩個值都可以在器件的數(shù)據(jù)手冊中找到。由于DIN1和EN都是輸入緩沖器,所以它們的緩沖器模型具有相同的結(jié)構(gòu)。
另一方面,3態(tài)緩沖器模型包含一些與輸入緩沖器模型類似的關(guān)鍵字,但包含額外的I-V和V-T數(shù)據(jù)。cmos_out1的緩沖器模型包括一個額外的子參數(shù)Cref,它代表輸出電容負(fù)載,還包括Vmeas,它代表基準(zhǔn)電壓電平。通常情況下,使用的Vmeas是VDD值的一半。
除了C_comp、[Power_Clamp]和[GND_Clamp],3態(tài)緩沖器還包含額外的I-V數(shù)據(jù):[上拉]和[下拉]。
?
最后,所有IBIS模型都應(yīng)該用[結(jié)尾]關(guān)鍵字作為結(jié)尾。
IBIS模型驗證
正如本系列文章的第1部分所述,IBIS模型驗證由解析器測試和相關(guān)過程組成。這些是確保IBIS文件符合IBIS規(guī)范的必要步驟,并且模型的執(zhí)行盡可能接近參考SPICE模型。
解析器測試
對于上一節(jié)中創(chuàng)建的IBIS文件,首先應(yīng)進(jìn)行解析器測試,然后再繼續(xù)執(zhí)行相關(guān)過程。ibischk是用于檢查IBIS文件的Golden Parser。它用于檢查IBIS文件是否符合IBIS協(xié)會設(shè)置的規(guī)范。有關(guān)更多信息,請訪問ibis.org。在撰寫本文時,使用的最新解析器是ibischk版本7。
在執(zhí)行解析器測試時,最好使用集成了ibischk的IBIS模型編輯軟件,例如Cadence Model Integrity和Hyperlynx Visual IBIS Editor。這些工具有助于簡化語法檢查。但是,如果用戶沒有這些工具,可以訪問ibis.org免費下載可執(zhí)行代碼。它是在各種操作系統(tǒng)上編譯的,所以用戶不必?fù)?dān)心應(yīng)使用哪種操作系統(tǒng)。
相關(guān)程序
在這個驗證階段,需要檢查IBIS模型的性能是否與參考模型(在本例中為SPICE模型)相同。表7顯示不同的IBIS質(zhì)量級別(從0級到3級)。它描述了經(jīng)受不同程度測試后,IBIS模型的精確程度。在本例中,由于參考模型是ADxxxx SPICE模型,所以生成的IBIS模型的質(zhì)量等級為2a。這意味著它通過了解析器測試,具有數(shù)據(jù)手冊中所描述的一組正確完整的參數(shù),并通過了相關(guān)程序。
表7.IBIS質(zhì)量等級
要將IBIS模型與參考SPICE模型關(guān)聯(lián)起來,可以按照一些常規(guī)步驟執(zhí)行操作。圖30中的流程圖總結(jié)了這些步驟。
圖30.IBIS與SPICE模型的關(guān)聯(lián)流程圖
設(shè)置品質(zhì)因數(shù)
關(guān)聯(lián)的基礎(chǔ)是在相同的加載條件和輸入刺激下,IBIS模型的行為應(yīng)該與SPICE模型數(shù)字接口相同。這意味著從理論上,它們的輸出應(yīng)該重疊在一起。一般來說,有兩種方法可以描述IBIS模型的輸出與SPICE參考模型的接近程度:定性方法和定量方法。用戶可以使用這兩種方法來確定IBIS模型與SPICE模型之間的關(guān)系。
定性FOM測試需要依靠用戶的觀察能力。它要求對兩個輸出進(jìn)行目視檢查,以確定是否通過相關(guān)性檢查。這可以通過疊加IBIS和SPICE的輸出結(jié)果來實現(xiàn),并使用工程判斷來確定圖形是否相關(guān)。在進(jìn)行定量FOM測試之前,這可以作為相關(guān)性初步檢查。當(dāng)接口以相對較低的頻率或比特率運行時,此測試就已足夠。
IBIS IO緩沖器精度手冊中提出了另一種定性FOM測試,即曲線包絡(luò)度。它使用過程電壓溫度極值定義的最小和最大曲線。最小和最大曲線作為相關(guān)性的邊界。要通過測試,IBIS結(jié)果中的所有點都應(yīng)該在最小和最大曲線之內(nèi)。這種方法在本文中不適用,因為它僅適用于典型條件。
定量FOM測試使用數(shù)學(xué)運算來衡量IBIS與SPICE之間的相關(guān)性。在IBIS IO緩沖器精度手冊中也提出了曲線包絡(luò)度,它使用IBIS和SPICE輸出的數(shù)據(jù)點。它計算IBIS和參考數(shù)據(jù)點之間x軸或y軸差值的絕對值除以軸上使用的總范圍和點數(shù)的乘積的總和。具體如公式3所示,此方法適合作為檢測本文所示的應(yīng)用案例的關(guān)聯(lián)方法。但是,還需要考慮其他因素。方程3中給出的FOM要求將IBIS和SPICE的結(jié)果映射到一個通用的x-y網(wǎng)格上,這將用到數(shù)值算法和插值方法。如果用戶想要執(zhí)行快速定量FOM測試,本文提出了另一種方法,即使用曲線和x軸所限定的面積的曲線面積度量。
曲線面積度量以SPICE結(jié)果為參考,比較IBIS曲線下的計算面積。具體如公式4所示。但是,在進(jìn)行曲線面積度量測試之前,所創(chuàng)建的模型必須通過定性測試。這確保了IBIS和SPICE曲線是同步的,并且相互疊加。在獲取曲線下的面積時,因為對IBIS和SPICE結(jié)果使用了相同的方法,所以用戶可以使用數(shù)值方法,例如梯形規(guī)則或中點規(guī)則。在使用這種方法時,建議使用盡可能多的點,以更接近該面積。
驗證ADxxxx IBIS模型
IBIS模型驗證的第一步是解析器測試。圖31顯示adxxxx.ibs IBIS模型文件的解析器測試結(jié)果,該文件是使用HyperLynx Visual IBIS Editor編寫的。用戶執(zhí)行解析器測試時,目標(biāo)是不會出現(xiàn)任何錯誤。如果出現(xiàn)任何錯誤或警告提示,模型構(gòu)建人員需要加以解決。這樣可以保證IBIS模型在仿真工具之間的兼容性。
?
圖31.ADxxxx 解析器測試結(jié)果
下一步是設(shè)置FOM參數(shù)。本文僅使用定性FOM和曲線面積度量作為衡量相關(guān)性的方法。該測試可能會使用IBIS和SPICE在相同負(fù)載條件和輸入刺激下的瞬態(tài)響應(yīng)曲線。曲線面積度量FOM≥95%才能通過相關(guān)性測試。DOUT1、DIN1和EN的相關(guān)性如下所示。
DOUT1
圖32顯示了LTspice上用于檢測DOUT1相關(guān)性的SPICE測試臺。在原理圖上提供適當(dāng)?shù)碾妷弘娫匆允鼓?a class="article-link" target="_blank" href="/tag/%E9%A9%B1%E5%8A%A8%E5%99%A8/">驅(qū)動器,并且為DIN1引腳提供脈沖信號源來驅(qū)動DOUT1。要在LTspice中完成DOUT1驅(qū)動器模型,還需要使用額外的組件。C_comp代表芯片電容。將C_comp和C_load添加到LTspice模型后,繼續(xù)加入RLC封裝寄生(R_pkg、L_pkg、C_pkg)和C_load。
圖32.LTspice DOUT1相關(guān)性測試臺
DOUT1 IBIS模型相關(guān)性測試臺建立在Keysight先進(jìn)設(shè)計系統(tǒng)(ADS)上,如圖33所示。與LTspice測試臺一樣,使用相同的輸入激勵、C_load、電壓電源和瞬態(tài)分析。但是,未在原理圖中顯示C_comp和RLC封裝寄生,因為它們已經(jīng)包含在3態(tài)IBIS模塊中。
圖33.ADS OUT1相關(guān)性測試臺
瞬態(tài)響應(yīng)曲線根據(jù)C_load測量得出。我們比較LTspice和ADS結(jié)果,并將它們疊加在一起實施定性FOM分析。如圖34所示,LTspice和ADS DOUT1的響應(yīng)非常相似。可以使用曲線和度量來量化它們之間的差異。計算1 μs瞬態(tài)時間內(nèi)曲線下的面積。計算得出的曲線面積度量為99.79%,滿足設(shè)置的≥95%的通過測試條件。所以,DOUT1 IBIS模型與SPICE模型相關(guān)。
圖34.LTspice與IBIS模型OUT1響應(yīng)
DIN1和EN
在驗證輸入端口時,通過定性FOM和曲線面積度量來關(guān)聯(lián)LTspice和ADS的瞬態(tài)響應(yīng)曲線。LTspice中的測試臺如圖35所示。這適用于DIN1和EN引腳。與DOUT1一樣,將提取的C_comp置于DIN1端口位置,后接RLC封裝寄生效應(yīng)。然后,連接50 Ω R_series電阻,該電阻后接輸入刺激脈沖電壓電源。測量響應(yīng)的探頭點在DIN1_probe位置。
圖35.LTspice DI1相關(guān)性測試臺
用于驗證輸入端口的Keysight ADS測試臺如圖36所示。同樣,在輸入端口前放置一個R_series 50 Ω電阻,并使用相同的輸入脈沖刺激。此處未顯示C_comp和RLC寄生效應(yīng),因為它們已經(jīng)包含在IBIS模塊中。用于測量瞬態(tài)響應(yīng)的探頭位于DI1_probe位置。
?
圖36.ADS DI1相關(guān)性測試臺
將LTspice和ADS的瞬態(tài)響應(yīng)曲線疊加在一起進(jìn)行FOM定性測試。如圖37所示,曲線是相同的,LTspice曲線完全與ADS曲線重疊。計算得出的DI1的曲線面積度量為100%,滿足所設(shè)置的≥95%的通過測試條件。EN引腳相關(guān)性結(jié)果也給出了相同的圖形和曲線面積度量。
圖37.LTspice與IBIS模型的DI1響應(yīng)
總結(jié)
本文介紹如何使用LTspice來提取數(shù)據(jù)和構(gòu)建IBIS模型。還提出通過定性FOM和曲線面積度量的定量FOM將IBIS模型與參考SPICE模型關(guān)聯(lián)起來的方法。這樣就可以讓用戶確信IBIS模型的行為與SPICE模型類似。盡管還有本文未介紹其他類型的數(shù)字IO,但提取C_comp、I-V數(shù)據(jù)和V-T數(shù)據(jù)的程序可以作為創(chuàng)建其他類型IO模型的基礎(chǔ)。
您可以免費下載和安裝LTspice,并開始創(chuàng)建自己的IBIS模型。
參考資料
Casamayor, Mercedes.“AN-715應(yīng)用筆記:走近IBIS模型:什么是IBIS模型?它們是如何生成的?”ADI公司,2004年。
IBIS。I/O緩沖器精度手冊。IBIS開放論壇,2000年4月。
Roy Leventhal和Lynne Green。半導(dǎo)體建模:用于信號、功率和電磁完整性仿真。Springer,2006年。
Michael Mirmak、John Angulo、Ian Dodd、Lynne Green、Syed Huq、Arpad Muranyi、Bob Ross。IBIS建模手冊(IBIS 4.0版)。IBIS開放論壇,2005年9月。
作者簡介
Rolynd Troy Aquino是ADI公司新技術(shù)集成團隊的產(chǎn)品應(yīng)用工程師。主要負(fù)責(zé)對ADI產(chǎn)品進(jìn)行IBIS、IBIS-AMI和LTspice建模和仿真。他于2014年成為ADI的實習(xí)生,并于2016年正式加入ADI。他于2015年畢業(yè)于瑪布亞大學(xué)(馬尼拉),獲電子工程學(xué)士學(xué)位。聯(lián)系方式:rolynd.aquino@analog.com。
Francis Ian Calubag是ADI公司的系統(tǒng)應(yīng)用工程師。他于2019年進(jìn)入ADI公司的系統(tǒng)應(yīng)用團隊實習(xí),并于2020年正式加入ADI的新技術(shù)集成團隊。主要負(fù)責(zé)對ADI產(chǎn)品進(jìn)行IBIS和LTspice建模和仿真。他于2020年畢業(yè)于菲律賓萊西姆大學(xué)(甲米地),獲電子工程學(xué)士學(xué)位。聯(lián)系方式:francisIan.calubag@analog.com。
Janchris Espinoza是ADI公司新技術(shù)集成團隊的產(chǎn)品應(yīng)用工程師。主要負(fù)責(zé)對ADI產(chǎn)品進(jìn)行IBIS建模和仿真。他于2019年在ADI的Analog Garage團隊實習(xí),并于2020年9月正式加入ADI。他于2020年2月畢業(yè)于德拉薩大學(xué),獲電子工程學(xué)士學(xué)位。聯(lián)系方式:janchris.espinoza@analog.com。