引言:Xilinx 7系列FPGA IO Bank分為HP Bank和HR Bank,HP IO接口電壓范圍為1.2V~1.8V,可以實現(xiàn)高性能,HR IO接口電壓范圍為1.2V~3.3V。當HR Bank與2.5V或者3.3V外設互聯(lián)時,需要考慮接口電平的兼容性。 根據(jù)性能需求、功能和信號類型(輸入、輸出或雙向),有不同的接口設計選項。本應用說明探討諸如添加電阻器、場效應晶體管(FET)開關、電平轉換器甚至其他Xilinx FPGA等選項。 1. 電阻分壓設計 一個簡單的電阻負載可以將過多的信號擺動截斷到FPGA的可容忍水平。如圖1所示,通過從傳輸線到GND放置電阻器,只有驅動高壓被衰減。這種解決方案可能導致信號完整性低于理想,因為下拉電阻器通常不與傳輸線匹配。將該下拉電阻器放置在接收器附近有助于減少不必要的反射。 圖2:帶下拉電阻器的驅動器驅動邏輯1的有效示意圖 帶下拉電阻器的驅動器驅動邏輯1的有效示意圖 表1顯示了不同驅動器阻抗/電阻上2.5V和3.3V驅動器VCC的RPULLDOWN計算值。 表1:RPULLDOWN的計算值 由于驅動器的潛在非線性,建議通過HSPICE進行模擬以將非線性考慮在內。此外,由于阻抗不匹配,必須考慮過沖和反射。HP I/O組的VCCOMAX為2.1V。 圖3:帶Thevenin并聯(lián)終端的驅動器示意圖 VBIAS(方程2)的計算更為復雜,并假設輸出高和低驅動強度是平衡的。 在獲得VBIAS之后,可以計算RPULLUP和RPULLDOWN,如等式3所示: 表2顯示了對于2.5V和3.3V的驅動器VCC的RPULLUP和RPULLDOWN的計算值。 表2:RPULLUP和RPULLDOWN的計算值 使用圖3中的拓撲圖,驅動器的輸出阻抗必須足夠小,才能達到接收器的VIH和VIL閾值。此外,輸出阻抗必須足夠大,以免過驅動接收器的推薦工作電壓(VIHMAX)。在7個系列FPGA中,LVCMOS18的VIHmax為2.1V。ZDRIVER(MAX)和ZDRIVER(MIN)的計算分別如方程4和方程5所示。 表3顯示了對于2.5V和3.3V的驅動器VCC的ZDRIVER(MAX)和ZDRIVER(MIN)的計算值。 表3:ZDRIVER(最大值)和ZDRIVER(最小值)的計算值 在ZDRIVER(MAX)處,邏輯1和邏輯0正好有300mV的裕度。隨著輸出阻抗的減小,邏輯1裕度的增長速度快于邏輯0裕度。方程6和方程7根據(jù)實際驅動器阻抗計算精確的裕度水平。 表4顯示了2.5V和3.3V的驅動器VCC的邏輯0和邏輯1余量的計算值。 表4:邏輯0和邏輯1余量的計算 使用等式8計算圖騰柱終端每次I/O消耗的偏置功率,VCC表示上拉電壓。 表5:每個I/O的功率計算 通過使用VBIAS的并聯(lián)端接,可以在沒有直流偏置的情況下實現(xiàn)相同的性能,而需要額外的電源導軌(圖4)。如果應用程序具有大量輸入,則此解決方案可能是一個更節(jié)能的選項。 圖4:示例:VBIAS拓撲的并行端接 3. 串聯(lián)FET開關 串聯(lián)FET開關可以保證從3.3V到1.8V的單向電壓轉換,并可以修改為從1.8V到3.3V工作。該器件的性能類似于與傳輸線串聯(lián)的NMOS晶體管,如圖5所示。 圖5:串聯(lián)FET開關 如果晶體管的柵極被設置為1.8V+VT,則來自3.3V驅動器的信號僅高達1.8V傳遞到接收器。德州儀器SN74TVC16222ADGVR提供23個具有公共柵極的并聯(lián)NMOS傳輸晶體管,如圖6所示。 圖6:德州儀器SN74TVC16222ADGVR的簡化示意圖 為了確保從2.5V/3.3V驅動器通過的電壓不超過1.8V,可以使用23個NMOS晶體管中的一個作為參考晶體管,將所有柵極電壓偏置到1.8V+VT,如圖7所示。 圖7:1.8V參考晶體管示例設置 2.5/3.3V的電阻器應足夠高(數(shù)百kΩ) 以限制到1.8V軌道的電流。 1.8V至2.5V/3.3V帶FET開關的接口 僅通過FET開關將1.8V驅動到2.5V或3.3V接收器,留下非常少或沒有VIHmargin。例如,在1.8V驅動到VIH為1.7V的Spartan?-6 FPGA LVCMOS25接收器的情況下,只有100 mV的裕度可用。在1.8V驅動到VIH為2.0V的Spartan-6 FPGA LVCMOS33接收器的情況下,根本沒有余量。 如圖8所示,接收器輸入端的上拉電阻器可用于為低至高轉換信號增加裕度。將RPULLUP放置在接收器附近,以獲得最佳信號完整性。 圖8:FET開關上拉拓撲 在確定該電阻器的尺寸時必須特別小心,因為使其更強有助于以犧牲高-低轉換信號為代價的低-高轉換信號。此外,該電阻器影響低到高和高到低轉換信號的定時。 將線路從FPGA驅動器的VCC充電到VIH所需的額外時間(T)(加上裕度)可以在等式9中合理估計,拓撲圖如圖8和圖9所示。VIH是接收器的,并且Vm是高于VIH的期望裕度。t 是時間常數(shù)RPULLUP x(CFET+CLOAD)。 表6:通過上拉電阻器充電的額外時間 圖9:場效應管3.3V側的示意圖 上拉電阻器的存在會影響高到低的轉換信號,因此驅動器阻抗必須足夠低,以確保仍然滿足VIL電平,減去一定量的裕度。公式10計算最大驅動器阻抗,并使用圖10中的示意圖作為參考。 圖10:帶上拉電阻器的驅動器驅動邏輯0的示意圖 表7顯示了基于各種上拉電阻值的最大驅動器阻抗值。 表7:最大驅動器阻抗與上拉電阻器 I2C兼容性 使用具有適當電阻器上拉值的FET開關可以成功地對I2C信號進行電平轉換。 4. 自動電平轉換器 圖11中的德州儀器TXB0108框圖是一個自動方向感測液位轉換器。自動感知交通方向的能力使自動級翻譯器很容易進入雙向系統(tǒng)。沒有額外的控制信號,因為每個比特都有一個獨立的方向傳感器。該設備加起來為7.6ns 圖11:自動電平轉換器拓撲 5.定向電平轉換器 德州儀器SN74AVC20T245是一個20位雙向電平轉換器,根據(jù)DIR的邏輯將數(shù)據(jù)從A電平轉換到B電平或從B電平轉換到A電平(圖12,第10頁)。 圖12:20位雙向電平轉換器拓撲 6. CPLDs and FPGAs轉換 各種Xilinx器件具有2.5V和3.3V的耐受性,可適用于雙向電平移動應用。Xilinx CPLD非常適合。 Xilinx CPLD非常適合在3.3V之間進行電平轉換,并且可提供多達117個I/O,以支持多達58位的總線。Spartan-6 FPGA也非常適合3.3V電平轉換,可提供高達530個I/O。Virtex-6 FPGA也是可行的選擇,可以從2.5V切換到2.5V。非易失性Spartan-3AN系列是另一個可行的選擇。 使用CPLD或FPGA可以卸載7系列FPGA的其他邏輯和任務。通過Xilinx CPLD的引腳到引腳傳播延遲為5ns,而對于FPGA,這取決于通過設備的路由。 圖13:CPLD或FPGA設計示例示意圖 在CPLD或Spartan設備(圖13)中,IOBUF被實例化以與7系列設備接口,而另一個IOBUF用于與2.5V/3.3V邏輯接口。信號從7系列FPGA或3.3V邏輯引入設備,以識別業(yè)務方向。 7.設計指導 表8給出了幾種電平轉換方法的比較。7系列FPGA中的高性能I/O組能夠通過一系列選項適應更高電壓的接口,這些選項幾乎可以滿足所有設計、成本和性能需求。 表8:設計指南比較 |
|