《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 模擬設(shè)計(jì) > 其他 > 教程:FPGA常見(jiàn)的IO接口標(biāo)準(zhǔn)設(shè)置

教程:FPGA常見(jiàn)的IO接口標(biāo)準(zhǔn)設(shè)置

2022-10-24
來(lái)源:FPGA之家
關(guān)鍵詞: IO接口 電阻 FPGA

  0 引言

  最近準(zhǔn)備采用Xilinx FPGA進(jìn)行多機(jī)通信,,即主FPGA芯片將采集到的不同層的圖像數(shù)據(jù)流分別輸出給對(duì)應(yīng)的4塊從FPGA芯片中,,主從FPGA之間的連接機(jī)制采用星形拓?fù)浣Y(jié)構(gòu),。經(jīng)計(jì)算,,圖像數(shù)據(jù)流接口速率需要數(shù)百兆比特/秒,,因此需要調(diào)研FPGA支持的常見(jiàn)IO接口標(biāo)準(zhǔn),,及每種接口的應(yīng)用場(chǎng)合,。

  1 常見(jiàn)IO接口標(biāo)準(zhǔn)

  Xilinx FPGA提供和支持高性能,、可配置,、多樣化的接口標(biāo)準(zhǔn)。主要的可配置屬性為On-chip terminaTIon(輸入端/輸出端的內(nèi)置片上端接電阻),,output strength(輸出驅(qū)動(dòng)器的電流驅(qū)動(dòng)能力),,slew rate(電壓壓擺率)等。

  常見(jiàn)IO接口可分為單端IO接口和差分IO接口,,詳細(xì)的IO標(biāo)準(zhǔn)參見(jiàn)下圖1,。單端IO接口和差分IO接口均滿(mǎn)足高速接口傳輸,區(qū)別在于應(yīng)用場(chǎng)合不同,。

  066.JPG

  Xilinx FPGA芯片不同的Bank支持的IO接口標(biāo)準(zhǔn)范圍略有所不同,,但是同一Bank必須使用同一output drive voltage (VCCO)。

  1.1 端接電阻

 065.JPG

  由上圖2可知,,當(dāng)使用高速I(mǎi)O接口時(shí),,在接收端通常需要匹配的端接電阻,有利于高低電平的轉(zhuǎn)換和提高信號(hào)的完整性,,且端接電阻盡可能的放置在接收端,。

  (a)差分輸入端接電阻

  通常需要在差分輸入端并行端接100Ω的電阻,,F(xiàn)PGA在差分輸入接收器提前內(nèi)置了端接電阻,,其阻值R為100Ω,為可選項(xiàng)opTIonal,。設(shè)計(jì)者也可以采用外接端接電阻來(lái)進(jìn)行電阻匹配,,阻值選擇更靈活。采用片上內(nèi)置的端接電阻可以節(jié)省無(wú)聊和縮小PCB面積,。

 064.JPG

  通過(guò)UCF文件進(jìn)行約束,,是否使用差分輸入端接電阻,,語(yǔ)法規(guī)則如下:NET DIFF_TERM = “” ,。

  (b)單端輸入端接電阻

 063.JPG

  由上圖可知,一些單端IO接口也需要輸入端接電阻來(lái)匹配信號(hào)的完整性,,例如HSTL,,SSTL。SSTL電平通常應(yīng)用在DDR SRAM中,,例如SSTL18應(yīng)用在DDR2,,SSTL15_II應(yīng)用在DDR3中。詳見(jiàn)下圖所示,。

062.JPG

  通過(guò)UCF文件進(jìn)行約束,,是否使用單端輸入端接電阻,語(yǔ)法規(guī)則如下:

  NET IN_TERM = ;

 ?。╟)輸出端接電阻

061.JPG

  由上圖可知,,輸出端(也稱(chēng)為源端)也可以配置輸出端接電阻,以減少信號(hào)的反射,,應(yīng)用在高速單端信號(hào)場(chǎng)合,,例如FPGA輸出驅(qū)動(dòng)DDR3芯片。輸出端接電阻也是opTIonal可選項(xiàng),,常見(jiàn)阻值R為none,,25Ω,50Ω,,75Ω,。通過(guò)UCF文件進(jìn)行約束,是否使用單端輸出端接電阻,,語(yǔ)法規(guī)則如下:

  NET OUT_TERM = ;

060.JPG

  說(shuō)明:由上圖可知,,F(xiàn)PGA作為輸出端,其端接電阻可以通過(guò)內(nèi)置端接電阻配置完成,,但如果DDR SRAM作為后一級(jí)的輸入端,,該芯片沒(méi)有片上端接電阻,故需要外接50Ω的輸入匹配電阻,。

  1.2 設(shè)置IO接口屬性

  常見(jiàn)IO接口屬性包括:電平標(biāo)準(zhǔn),,輸出壓擺率,輸出驅(qū)動(dòng)能力,,上/下拉,。詳細(xì)設(shè)置參考下文。

059.JPG

058.JPG

  2  常見(jiàn)IO接口標(biāo)準(zhǔn)&應(yīng)用

  當(dāng)今大廠家會(huì)基于其IO接口的總線應(yīng)用場(chǎng)合提出新的IO接口標(biāo)準(zhǔn),,隨后被其他廠家所使用,。每一種IO接口標(biāo)準(zhǔn)均有其特有的電壓、電流,、輸入輸出緩沖和端接匹配技術(shù)要求,。Xilinx User Guide詳細(xì)列出了常見(jiàn)的各種IO接口的種類(lèi),,定義及應(yīng)用場(chǎng)合,詳見(jiàn)下文,。

067.JPG

068.JPG

  3   高速I(mǎi)O接口應(yīng)用舉例

  基于FPGA的高速I(mǎi)O接口應(yīng)用的常見(jiàn)例子有兩種,,詳見(jiàn)下文。

  第一種: 采用SSTL15_II接口標(biāo)準(zhǔn),,應(yīng)用于DDR3 SRAM,,屬于single-end IO standard;

  第二種:采用LVDS33/25接口標(biāo)準(zhǔn),,應(yīng)用于IOSERDES的高速串行通信,,屬于differenTIal  IO standard;

  3.1  DDR3 SRAM接口驅(qū)動(dòng)

  FPGA驅(qū)動(dòng)DDR3 SRAM芯片時(shí),,F(xiàn)PGA作為輸出源端,,SRAM芯片作為終端,故FPGA需要配置output driver 的相關(guān)屬性參數(shù)attributes,。SRAM作為input receiver,,需要進(jìn)行端接電阻匹配,由于沒(méi)有內(nèi)置片上端接電阻,,故需要在SRAM輸入管腳外接匹配電阻,,由于數(shù)據(jù)端口是雙向端口,故輸入端是高阻狀態(tài),,無(wú)需匹配,。而地址總線接口和差分時(shí)鐘輸入接口需要匹配對(duì)應(yīng)阻值的電阻。

 ?。╝)FPGA輸出端IO Standard在UCF文件中參數(shù)配置如下:

  NET  “mcb3_dram_dq[*]”      IOSTANDARD  =   SSTL15_II   |    IN_TERM = NONE   |   OUT_TERM = UNTUNED_50;

  壓擺率和上下拉采用默認(rèn)參數(shù),,SLOW slew rate, 12mA  output drive,。

 ?。╞)SRAM輸入端IO standard,地址管腳和數(shù)據(jù)管腳盡可能均勻分配在某一個(gè)或多個(gè)Bank中,。

  地址總線輸入端(單端接口)需匹配50Ω端接電阻,,差分時(shí)鐘輸入端(差分接口)需要匹配100Ω的端接電阻,見(jiàn)下圖所示,。

055.JPG

  地址總線輸入接口                                                                                          

差分時(shí)鐘輸入接口

  說(shuō)明:1.  SRAM輸入管腳的端接電阻盡可能靠近管腳,,以保證信號(hào)的完整性;

  2.  每一組bank均有獨(dú)立的Vcco和Vref,,便于配置variable IO standard,;

  3. 為減少SSO(simultaneous switching output)的大量輸出管腳電平同一方向切換的干擾,可以增加virtual

  VCC/GND pins,,即將該bank未用到的管腳在FPGA程序中設(shè)置為GND或VCC,;

  3.2   LVDS差分IO接口驅(qū)動(dòng)

 054.JPG

  LVDS:低壓差差分信號(hào),,每位數(shù)據(jù)需要一對(duì)差分信號(hào)線,相較于單端接口,,差分接口可以抑制共模噪聲,,電壓擺幅約350mV,,因此信號(hào)傳輸功耗較低,。LVDS接口傳輸速率上限可達(dá)3.125Gbit/s,如果配合相應(yīng)的編碼規(guī)則(如8b/10b)和使用SERDES技術(shù),,可以保證常用高速信號(hào)通信,。

053.JPG

  差分信號(hào)輸入端需要端接匹配電阻,如果輸入端為FPGA管腳,,可以通過(guò)配置,,使能其內(nèi)置端接電阻,阻值默認(rèn)為100Ω,。UCF配置LVDS接口如下:

 052.JPG

  說(shuō)明:1.  壓擺率越快,,電平轉(zhuǎn)換時(shí)間越短,時(shí)間性能越優(yōu),;

  2.  Spartan6 FPGA所有Bank均支持LVDS差分輸入,,但只有Bank0和Bank2支持LVDS差分輸出;



更多信息可以來(lái)這里獲取==>>電子技術(shù)應(yīng)用-AET<<

mmexport1621241704608.jpg

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。