IBIS Modeling—Part 1: Why IBIS Modeling Is Critical to the Success of Your Design 作者:ADI產品應用工程師 Jermaine Lim,ADI設計驗證工程師 Keith Francisco-Tapan 什么是IBIS模型? IBIS表示輸入/輸出緩沖器信息規格,它代表了IC供應商提供給客戶進行高速設計仿真的器件的數字引腳的特性或行為。這些模型使用IBIS開放論壇——負責管理和更新IBIS模型規范與標準的行業組織——所規定的參數模仿器件的I/O行為。IBIS模型使用ASCII文本文件格式,提供表格化的電壓-電流和電壓-時間信息。它們不包含專有數據,因為模型中沒有披露IC原理圖設計信息,如晶體管尺寸、緩沖器原理圖設計中使用的器件模型參數和電路等。此外,IBIS模型獲得了大部分EDA供應商的支持,可以在大多數行業級平臺中運行。 為何使用IBIS模型? 想象一款IC通過了測試。然后,使用該IC設計電路板,并且立即獲批進行制造。電路板制造出來后,發現其性能不達標,原因是一些信號完整性問題,其導致了串擾、信號過沖/欠沖或不匹配阻抗引起的反射。您認為接下來會發生什么?當然,電路板必須重新設計和制造。此時,增加了時間和成本。所有這一切都是因為有一個重要階段沒有進行:預仿真。在此階段中,系統設計人員使用仿真模型驗證設計的信號完整性,然后才會設計電路板。SPICE和IBIS等仿真模型現已廣泛開發用于仿真當中,幫助系統設計人員在預仿真階段預見到信號完整性問題,從而在制造之前予以解決。此階段有助于減少測試期間電路板失敗的可能。 歷史 20世紀90年代,隨著個人計算機日漸流行,Intel開始為其工作頻率約為33 MHz的低功耗ASIC開發一種新的I/O總線。為此需要確保信號完整性沒有受到損害,IBIS因此而誕生。Donald Telian所領導的團隊提出了一個想法:為I/O緩沖器創建一個信息表,并使用此信息測試Intel的電路板。很快,Intel與其客戶共享這些信息表以幫助后者進行電路板設計,但不提供任何專有信息。為了能夠可靠地將紙張形式的表格中的信息傳送到客戶的仿真器,Intel決定與EDA供應商和其他計算機制造商合作。他們創建了IBIS開放論壇,以幫助標準化計算機可讀格式的緩沖器信息。IBIS最初稱為Intel緩沖器信息表,后來更改為I/O緩沖器信息規范。IBIS 1.0版于1993年發布。從那時起,IBIS開放論壇持續推廣IBIS,提供工具和文檔,并改進標準以增加專業領域的能力。2019年,IBIS 7.0版被批準。這表明,IBIS在不斷發展以滿足新技術要求。 如何生成IBIS模型? IBIS模型一般模擬器件的接收器和驅動緩沖器行為,而不透露專有工藝信息。為此需要提取標準IBIS緩沖器元件的行為,并通過表格形式的V-I和V-t數據來表示它。 為了生成IBIS模型,數據收集通常是開發過程中的第一步。圖1顯示了生成IBIS模型的三個主要階段。 圖1.IBIS模型生成過程 數據收集 收集IBIS模型的數據有兩種方法: ► 仿真方法 該方法需要獲取器件的設計原理圖、數據手冊和集總RLC封裝寄生效應。 ► 基準測量方法 該方法需要實際的器件和/或評估板、數據手冊以及集總RLC封裝寄生效應。 圖2是IBIS模型所描述的四個主要元素/組成部分的圖示。 圖2.IBIS模型關鍵詞圖示 連接到引腳的兩個二極管負責在輸入超過工作范圍或緩沖器限值時保護緩沖器。根據設計工作方式,緩沖器限值可以是功率箝位基準值,通常為VDD,或是地箝位基準值,通常為地或-VDD。這些二極管用作ESD箝位保護,在需要時導通,而上拉和下拉元件負責高電平和低電平狀態期間的緩沖器驅動行為。因此,上拉和下拉數據是在緩沖器處于工作模式時獲得。 在模型中,這四個主要元素以電壓-電流(V-I)數據的形式表示,分別列在關鍵詞[Power Clamp]、[GND Clamp]、[Pullup]、[Pulldown]之下。I/O緩沖器的切換行為也以電壓-時間(V-t)的形式在模型中表示。 電壓-電流行為關鍵詞 ► [Power Clamp]表示數字I/O引腳的功率箝位ESD保護二極管在高阻抗狀態期間的V-I行為,其相對于功率箝位基準電壓。 ► [GND Clamp]表示數字I/O引腳的地箝位ESD保護二極管在高阻抗狀態期間的V-I行為,其相對于地箝位基準電壓。 ► [Pullup]表示I/O緩沖器的上拉元件驅動高電平時的V-I行為,其相對于上拉基準電壓。 ► [Pulldown]表示I/O緩沖器的下拉元件驅動低電平時的V-I行為,其相對于下拉基準電壓。 這些關鍵詞的數據是在-VDD至2×VDD的推薦電壓范圍內和三個不同拐角(典型值、最小值和最大值)中獲得。典型值拐角表示緩沖器在標稱電壓、標稱工藝和標稱溫度下工作時的行為。最小值拐角表示緩沖器在最小電壓、最差工藝和最高工作結溫(CMOS)/最低工作結溫(BJT)下工作時的行為。最大值拐角表示緩沖器在最大電壓、最佳工藝和最低工作結溫(CMOS)/最高工作結溫(BJT)下工作時的行為。 對于引腳中掃過的每個電壓,測量其相應的電流,從而獲得根據IBIS規范對緩沖器進行建模所需的電壓-電流行為。圖3顯示了三個拐角中獲得的這四個V-I曲線的波形例子。 圖3.V-I曲線的波形示例:(a) 電源箝位數據,(b) 接地箝位數據,(c) 上拉數據,(d) 下拉數據。 切換行為 除了V-I數據之外,V-t數據表中還包括上升(低至高輸出轉換)和下降(高至低輸出轉換)波形形式的I/O緩沖器切換行為。此數據在輸出連接測得。使用的負載通常為50Ω,代表典型的傳輸線路特性阻抗。此外,使用輸出緩沖器實際驅動的負載仍然是最好的。該負載與系統中使用的傳輸線路阻抗相關。例如,如果系統將使用75Ω走線或傳輸線,則獲得V-t數據所使用的推薦負載為75Ω。 對于標準推挽式CMOS,建議在IBIS模型中包含四類V-t數據: ► 上升波形,負載以VDD為基準 ► 上升波形,負載以地為基準 ► 下降波形,負載以VDD為基準 ► 下降波形,負載以地為基準 兩個上升波形包含在模型關鍵詞[Rising Waveform]之下。它描述當負載分別連接到VDD和地時I/O緩沖器的低到高輸出轉換。另一方面,模型關鍵詞[Falling Waveform]之下的兩個下降波形描述當負載同樣分別連接到VDD和地時I/O緩沖器的高到低轉換。應當注意,由于輸出端連接有負載,輸出擺幅不會完全轉換。與電壓-電流行為一樣,電壓-時間數據也是在三個不同的拐角中獲得。這些轉換的例子如圖4所示。 在得到V-t表的同時,提取斜坡速率值。斜坡速率是電壓從一個狀態切換到另一個狀態的速率,取上升或下降轉換沿的20%至80%這一段。在IBIS模型中,斜坡速率以dV/dt比率的形式列在[Ramp]關鍵詞之下,通常顯示在V-t表之后。此值不包括封裝寄生效應的影響,因為它僅代表內在輸出緩沖器的上升時間和下降時間特性。 IBIS模型還包括一些數據手冊規格,仿真以此為基礎進行,例如工作電壓和溫度范圍、輸入邏輯電壓閾值、時序測試負載值、緩沖器電容和引腳配置。模型中還有集總RLC封裝寄生效應,這在數據手冊中是找不到的,但對高速設計系統的走線仿真非常重要,因為這些寄生效應會給仿真帶來負載效應,從而影響通過傳輸線路的信號的完整性。 圖4.I/O緩沖器切換行為的波形示例:(a) 上升波形,負載以VDD為基準, (b) 上升波形,負載以地為基準,(c) 下降波形,負載以VDD為基準,(d) 下降波形,負載以地為基準。 IBIS格式化 本節介紹第二階段,即構建模型,也稱為IBIS格式化。收集所有必要的數據之后,現在可以創建模型。IBIS模型主要包括三部分:主要頭文件、元件描述和緩沖器模型。 主要頭文件包含有關該模型的一般信息。它指定以下內容: ► IBIS版本 模型關鍵詞:[IBIS Ver] 這是模型所基于的版本。它告訴仿真器的解析器檢查程序,文件中會出現什么類型的數據;因此,它對判斷模型能否通過解析器檢查發揮著重要作用。 ► 文件名 模型關鍵詞:[File Name] 文件的實際名稱,應為小寫形式,并使用正確的文件擴展名 .ibs。 ► 版本號 模型關鍵詞:[File Rev] 幫助跟蹤文件的修訂情況。 ► 日期 模型關鍵詞:[Date] 顯示模型的創建時間。 ► 注釋 模型關鍵詞:[Notes] 向客戶提供關于模型的參考信息,即數據是從仿真中獲得,還是從基準測量中獲得。 ► 來源 模型關鍵詞:[Source] 模型來自何處,或模型提供商是誰。 ► 免責聲明 模型關鍵詞:[Disclaimer] ► 版權 模型關鍵詞:[Copyright] 請注意,主要頭文件下列出的前三項必須提供。其他項目不是必需的,但最好包括,以便提供有關該文件的其他細節。 圖5.使用Cadence Model Integrity的IBIS模型中的主要頭文件示例 IBIS模型的第二部分描述元件。此部分需要以下數據: ► 元件名稱 模型關鍵詞:[Component] 顧名思義,這是所建模的器件的名稱。 ► 引腳列表 模型關鍵詞:[Pin] 在模型中,此部分至少有三列:引腳編號、引腳名稱和模型名稱。此列表基于數據手冊。要確保引腳編號和引腳名稱的正確匹配,以免混淆。同樣需要注意的是,在IBIS模型中,每個引腳具有一個專用模型名稱。此模型名稱不一定與數據手冊中給出的引腳名稱相同,因為引腳的模型名稱由模型制造商自行決定。此外,有些引腳可能指向同一模型名稱。具有相同設計原理圖的緩沖器就是這種情況。它們會有相同的行為,因此一組數據足以代表它們。 ► 制造廠商 模型關鍵詞:[Manufacturer] 識別所建模的元件的制造商。 ► 封裝寄生效應 Model Keyword: [Package] 模型關鍵詞:[Package] 此項目說明元件封裝的電氣特性,包括集總電阻、電感和電容值。如果還知道引腳的RLC寄生效應,應將其與引腳列表一起列在模型中[Pin]關鍵詞之下。它能提供一個更精確的模型,會覆蓋[Package]關鍵詞下列出的RLC值。 圖6.使用Cadence Model Integrity的IBIS模型中的元件描述示例 IBIS模型的第三部分描述緩沖器模型。這里呈現I/O緩沖器的行為,特別是其I-V和V-t數據。它首先使用[Model]關鍵詞給出模型名稱。模型名稱應與[Pin]關鍵詞下的第三列中列出的名稱一致。對于每個緩沖器模型,必須指定參數Model_type。緩沖器電容也必須在參數C_comp下給出,以說明從焊盤端看待緩沖器所看到的電容。 可以建模的緩沖器有不同類型,每種類型適用不同的特殊規則。下面說明IBIS模型中四種最常見類型的緩沖器及其要求: ► 輸入緩沖器 模型類型:輸入 此模型類型需要輸入邏輯閾值,列在參數Vinl和Vinh之下。如果未定義,仿真器將使用分別為0.8 V和2 V的默認值。這些參數幫助仿真器執行時序計算并檢測信號完整性違規。 圖7.使用Cadence Model Integrity的輸入緩沖器模型的表示示例 ► 雙態輸出緩沖器 模型類型:輸出 此模型類型表示始終使能的輸出緩沖器,要么驅動為高電平,要么驅動為低電平。它包括時序測試負載值,列在參數Vref、Rref、Cref和Vmeas之下。這些參數不是必需的,但它們在模型中的存在有助于仿真器執行電路板級時序計算。 請注意,由于不能禁用此類緩沖器,因此不會列出關鍵詞[Power Clamp Reference]和[GND Clamp Reference],也不會給出[Power Clamp]和[GND Clamp]的V-I表格數據。 圖8.使用Cadence Model Integrity的雙態輸出緩沖器模型的表示示例 ► 三態輸出緩沖器 模型類型:三態 該模型類型表示輸出緩沖器,它不僅有驅動高電平和驅動低電平狀態,還有高阻抗狀態,因為此類緩沖器可以禁用。與輸出模型類型一樣,它也包括時序測試負載值,列在參數Vref、Rref、Cref和Vmeas之下。在模型中添加這些參數有助于仿真器執行電路板級時序計算。 圖9.使用Cadence Model Integrity的三態輸出緩沖器模型的表示示例 ► I/O緩沖器 模型類型:I/O 此模型類型是輸入和輸出緩沖器的組合。因此,該模型包含的參數有Vinl、Vinh、Vref、Rref、Cref和Vmeas。 模型制造商在生成IBIS模型時必須注意這些指南。更多指南可以在IBIS開放論壇網站上的IBIS手冊中找到。必須遵循適當的建模指南,否則模型將無法通過驗證。 圖10.使用Cadence Model Integrity的I/O緩沖器模型的表示示例 模型驗證 驗證IBIS模型分為兩部分:解析器測試和相關處理。 解析器測試 構建模型時,最好使用已經具有Golden Parser的軟件,該程序用于執行語法檢查,并參考模型版本規范驗證所創建的IBIS模型的數據是否匹配。具備此功能的一些軟件有Cadence Model Integrity和Hyperlynx Visual IBIS Editor。 如果模型通過了解析器測試,則意味著所生成的模型遵循標準格式和規格,V-I數據與V-t數據匹配。如果未通過,最好找出錯誤原因。最簡單的可能原因是模型使用的格式或關鍵詞不符合IBIS規范,這很容易糾正。其他類型的錯誤有V-I和V-t數據不匹配。發生這種情況時,錯誤可能位于上拉或下拉V-I數據中,或位于V-t數據中。V-I數據表示的行為與V-t數據表示的行為不匹配時,就是這種情況。要解決此問題,可能需要重新仿真。但在此之前,首先應檢查放在模型中的電壓和負載值,看它們是否正確。如果錯誤原因是錯誤定義了電壓值之類的簡單原因,那么就不必花費更多時間去重新仿真。 圖11和圖12分別顯示了通過和未通過解析器測試的IBIS模型示例。 圖11.使用Cadence Model Integrity的未通過解析器測試的緩沖器模型 在圖11中,注意在解析器測試期間,軟件如何標記導致模型未通過測試的錯誤。這使得模型制造商很容易糾正模型錯誤,糾正之后才進入下一驗證步驟。此示例的錯誤原因是緩沖器使用的模型類型不對。IBIS規范要求以大寫格式輸入I/O模型類型,但此圖使用了小寫格式。 圖12.使用Cadence Model Integrity的通過了解析器測試的緩沖器模型 圖12顯示的模型通過了解析器測試。注意在Model_type關鍵詞中,I/O已更改為大寫格式,這就解決了錯誤。 請注意,只有通過驗證的模型才能進入相關處理。 相關處理 人們可能會問,如何確保所生成的模型與實際器件具有完全相同的行為?答案是相關處理。 IBIS模型存在不同的質量等級/相關性: 質量等級 說明 0級 通過Golden Parser (ibischk) 1級 與檢查清單文件中一樣完整、正確。 2a級 與仿真相關 2b級 與測量相關 3級 以上全部 本文介紹了一個質量等級為2a的IBIS模型。通過解析器測試之后,對模型進行仿真,包括RLC封裝寄生效應和外加負載。負載通常是在數據手冊中找到的時序測試負載值,用于表征I/O緩沖器。類似地,器件的設計原理圖將使用相同的設置和負載進行仿真。兩種仿真的結果將疊加,以驗證所生成的模型是否與基于原理圖的結果行為一致。下一篇文章將使用開源軟件介紹一個生成IBIS模型的用例。 為何IBIS模型對仿真至關重要 IBIS模型受到大多數EDA供應商的廣泛支持。它們易于使用,體積較小,因而仿真時間更快。它們不包含專有工藝和電路信息,大多數半導體供應商都愿意向其客戶提供IBIS模型。它們不僅具備所有這些優點,還能精確模擬器件的I/O行為。 利用IBIS模型,設計人員可以預見并解決信號完整性問題,而不必等到電路板原型制作或制造階段。這使得他們可以縮短電路板開發周期,進而有助于加快產品上市時間。 簡言之,客戶之所以使用IBIS模型,是因為在仿真中使用它們不僅有助于節省成本,而且能節省設計和調試時間,從而更快地從電路板設計中產生收入。 這里有ADI公司產品的IBIS仿真模型集合。 參考資料 Casamayor, Mercedes.AN-715—走近IBIS模型:什么是IBIS模型?它們是如何生成的? ADI公司,2004年。 IBIS建模手冊(IBIS 4.0版)。IBIS開放論壇,2005年9月。 IBIS 7.0版。IBIS開放論壇,2020年4月。 Roy Leventhal和Lynne Green。半導體建模:用于信號、電源和電磁完整性仿真。Springer,2006年。 作者簡介 Jermaine Lim于2014年10月加入ADI公司,擔任產品應用工程師。從那時起,她對ADI公司的貢獻都集中在為各種ADI產品開發IBIS模型上。Jermaine畢業于Pamantasan ng Lungsod ng Maynila,獲電子工程學士學位。聯系方式:jermaine.lim@analog.com。 Keith Francisco-Tapan于2012年3月加入ADI公司,擔任模擬設計工程師。她最初為各種ADI產品開發IBIS模型,并在ADGT掌握了模型開發能力。她現在有一個新的角色,擔任AMS設計驗證工程師。她畢業于Mindanao State University-Iligan Institute of Technology,獲電子工程學士學位。聯系方式:keith.francisco@analog.com。 |