SERDES-FPGA設計手冊.doc_第1頁
SERDES-FPGA設計手冊.doc_第2頁
SERDES-FPGA設計手冊.doc_第3頁
SERDES-FPGA設計手冊.doc_第4頁
SERDES-FPGA設計手冊.doc_第5頁
免費預覽已結束,剩余28頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

編 號: 版 本:V0.2 頁 數:共 頁 密 級:SERDES FPGA設計手冊更改記錄版本擬制/更改審核批準生效日期更改內容V0.1兜福2013.7.19創建文檔V0.2兜福2013.9.11添加補充了OSERDES部分,未完待續;注:作者兜福郵箱:,多多交流,共同進步。目錄SERDES FPGA設計手冊1目錄31目的62范圍63術語64SERDES基礎知識65SERDES應用指南65.1ISERDES75.1.1ISERDES基元75.1.2ISERDES基元的時鐘解決方案105.2OSERDES115.2.1OSERDES組成功能模塊125.2.2OSERDES基元135.2.3OSERDES基元的時鐘解決方案156SERDES應用指南156.1ISERDES設計156.1.1單個ISERDES單元設計(SDR)ISERDES配置參數設計思想仿真結果ISERDES數據時序.1ISERDES輸入數據時序.1ISERDES輸出數據時序216.1.2單個ISERDES單元設計(DDR)ISERDES配置參數設計思想仿真結果226.1.3ISERDES寬度擴展設計實例仿真結果266.2OSERDES設計266.2.1單個OSERDES單元設計(SDR)2OSERDES配置參數2設計思想2仿真結果2OSERDES基元SDR模式時序296.2.2單個OSERDES單元設計(DDR)2OSERDES配置參數30設計思想30仿真結果30OSERDES基元SDR模式時序316.2.3OSERDES寬度擴展3設計實例3仿真結果331 目的為了學習xilinx serdes原語的使用,以及交流學習經驗,在工程項目中方便的應用SERDES進行設計,故編寫此文檔。2 范圍本文檔所介紹的SERDES原語內容,適用于Xilinx V5系列器件。3 術語ISERDES:串并轉換器。OSERDES:并串轉換器。4 SERDES基礎知識待補充。5 SERDES應用指南5.1 ISERDES5.1.1 ISERDES基元圖 1 ISERDES基元圖 2 ISERDES內部組成單元結構框圖圖 3 當使用Memory模型是ISERDES內部的連接情況表 1 ISERDES端口列表Port NameTypeWidthDescriptionQ1-Q6Output1(each)寄存器輸出SHIFTOUT1Output1進位輸出,用于數據寬度的擴展。連接到從IOB的SHIFIN1。SHIFTOUT2Output1進位輸出,用于數據寬度的擴展。連接到從IOB的SHIFIN2。BITSLIPInput1啟動bitslip操作CE1CE2Input1(each)時鐘使能輸入CLKInput1高速時鐘輸入,對串行輸入數據流進行時鐘控制。CLKBInput 1高速時鐘第二輸入,對串行輸入的數據流進行時鐘控制。總是連接CLK。CLKDIVInput 1時鐘CLK的分頻時鐘,取決于解串的數據寬度。控制著延遲單元、解串數據、Bitslip子模塊和CE單元進行時鐘控制。DInput1來自IOB的串行輸入數據。OCLKInput1用于存儲器應用的高速時鐘輸入,該信號只有在INTERFACE_TYPE屬性配置為(MEMORY)時,才可用;配置為”NETWORKING”時,直接賦0值即可。SHIFTIN1Input1用于數據擴展的進位輸入,連接到主IOB的SHIFTOUT1。SHIFTIN2Input1用于數據擴展的進位輸入,連接到主IOB的SHIFTOUT2。RSTInput1異步復位輸入,高有效。表 2 ISERDES屬性列表Atrribute NameEescriptionValueDefault ValueBITSLIP_ENABLE允許用戶使用或者忽略bitslip子模塊。該屬性在INTERFACE_TYPE屬性配置為MEMORY時必須配置為FALSE,在配置為NETWORKING時必須配置為TURE。字符串:TURE或FALSEFALSEDATA_RATE允許將輸入的數據流作為”DDR”或者”SDR”來進行處理。字符串:DDR或SDRDDRDATA_WIDTH定義串并轉換的寬度,合法的值取決于DATA_RATE的配置(SDR或者DDR)。如果 DATA_RATE = DDR,則此值限制為 4、6、8 或 10。如果DATA_RATE = SDR,則此值限制為 2、3、4、5、6、7 或 8。 4INTERFACE_TYPE選擇ISERDES的使用說明字符串:MEMORY或NETWORKINGMEMORYNUM_CE定義時鐘使能數整數:1或22SERDES_MODE當使用寬度擴展時定義SERDES是主模塊,還是從模塊。字符串:MASTER或SLAVE。MASTER表 3 推薦的數據寬度配置5.1.2 ISERDES基元的時鐘解決方案CLK和CLKDIV的相位關系,在串并轉換的過程中是非常重要的。CLK和CLKDIV的相位關系應該是理想對齊的。FPGA中存在這樣的時鐘模塊單元來設計滿足CLK和CLKDIV的相位關系。在networking模式下,解決時鐘相位關系的唯一辦法是: CLK driven by BUFIO, CLKDIV driven by BUFR CLK driven by DCM, CLKDIV driven by the CLKDV output of the same DCM CLK driven by PLL, CLKDIV driven by CLKOUT0:5 of same PLL在Memory Interface模式下,解決時鐘相位關系的唯一辦法是: CLK driven by BUFIO or BUFG OCLK driven by DCM and CLKDIV driven by CLKDV output of same DCM OCLK driven by PLL and CLKDIV driven by CLKOUT0:5 of same PLL 圖 4 控制CLK和CLKDIV相位對齊的時鐘解決方案/補充文檔內容從以下區域進行添加5.2 OSERDESOSERDES:輸出并串轉換器邏輯資源,具有專門用來幫助實現源同步接口的待定時鐘控制和邏輯資源。每個OSERDES模塊包含一個用戶數據和三態控制的專用串行器。數據和專用串行器都可以配置成SDR和DDR模式。數據串行化可大6:1,如果使用“OSERDES寬度擴展,則是10:1”。三態串行化可達4:1。5.2.1 OSERDES組成功能模塊圖 OSERDES功能框圖在OSERDES并串轉換過程中,并行數據串行化是從數據引入引腳的最低位到最高位的順序進行的(即D1輸入引腳上的數據傳輸到OQ引腳的首位)。OSERDES使用CLK和CLKDIV兩個時鐘進行數據速率轉換。CLK是高速串行時鐘;CLKDIV是分頻并行時鐘。假定CLK和CLKDIV相位對齊,表*所示為各種模式下CLK與CLKDIV之間的關系。表* 并串轉換器的clk/clkdiv關系SDR模式下的輸入數據寬度輸出DDR模式下的輸入數據寬度輸出CLKCLKDIV242XX363XX484XX5105XX66XX77XX88XXOSERDES延遲Oserdes模塊的輸入到輸出延遲取決于DATA_RATE和DATA_WIDTH屬性。延遲的定義是,并行數據樣本輸入OSERDES所需的慢時鐘(CLKDIV)周期數,后加OSERDES在并行數據采樣之后將第一個串行數據送入OQ輸出所需的快時鐘(CLK)周期數。表概述了各種OSERDES延遲值。5.2.2 OSERDES基元圖 oserdes基元端口名稱類型寬度描述OQ輸出output1數據通路輸出,并轉串后的串行輸出。SHIFTOUT1輸出1數據寬度擴展的進位輸出,連接到主OSERDES的SHIFTIN1。SHIFTOUT2輸出1數據寬度擴展的進位輸出,連接到主OSERDES的SHIFTIN2。TQ輸出1三態控制輸出CLK輸入1高速時鐘輸入,驅動并串轉換器的串行側。CLKDIV輸入1分頻時鐘輸入。對延遲單元,解串數據,Bitslip自模塊和CE單元進行時鐘控制。為CLK端口所連接時鐘的分頻版本,分頻大小根據數據轉換寬度而定。CLKDIV驅動驅動并串轉換器的并行側。D1-D6輸入1/port并行數據輸入。D1將最先出現在串行輸出口OQ上。所有并行數據全通過D1-D6進入OSERDES模塊。OCE輸入1輸出數據時鐘使能,高有效。該信號可以作為輸入OSERDES基元內的并行數據的同步有效標志,并可以同時輸出到接收轉換后的串行數據的一方,作為一個有效數據的起始位置的判斷標志。REV輸入1反轉SR引腳。OSERDES模塊中沒有此端口。SHIFTIN1輸入1數據寬度擴展的進位輸入,連接到從OSERDES的SHIFTOUT1。SHIFTIN2輸入1數據寬度擴展的進位輸入,連接到從OSERDES的SHIFTOUT2。SR輸入1設置/復位。在OSERDES模塊中,此引腳只作為異步復位。T1-T4輸入1/port并行三態輸入。所有并行三態信號,都通過端口T1到T4進入OSERDES模塊。此端口連接到FPGA內部資源,可以配置成一位或者四位。TCE輸入1三態控制通路時鐘使能,高有效。5.2.3 OSERDES基元的時鐘解決方案6 SERDES應用指南6.1 ISERDES設計6.1.1 單個ISERDES單元設計(SDR) ISERDES配置參數Iserdes仿真設計的練習中將iserdes的參數配置為圖XX中的參數,具體參數釋義如表XX所示。 圖 XX表 XX參數值 意義BITSLIP_ENABLETRUE Bitslip控制器的使能。如果INTERFACE_TYPE配置為memory,則必須配置為FALSE;如果INTERFACE_TYPE配置為networking,則必須配置為TURE。在本次設計里將接口類型配置為了networking類型。DATA_RATE SDR指定將輸入的數據作為”SDR”或是”DDR”處理。SDR - 單倍數據數據;DDR - 雙倍數據速率;本設計中設置為單倍數據速率,即SDR。INTERFACE_TYPE NETWORKING使用的數據傳輸模型。可選配置為:MEMORY - 需要用到OCLK; NETWORKING - 不需要用到OCLK;本設計中配置為NETWORKING。IOBDELAYNONE待補充 IOBDELAY_TYPEDEFAULT待補充IODELAY_VALUE0待補充NUM_CE1定義設計中使用的時鐘使能的個數。具體參考ISERDES結構中的時鐘模塊的時鐘使能CE1和CE2設計。本設計配置為”1”,使用一個時鐘使能。SERDES_MODEMASTER設置當前SERDES的身份,主或從。可選配置:”MASTER” or ”SLAVE”.本設計中配置為MASTER,即沒有進行級聯設計。參數值 意義BITSLIP_ENABLETRUE Bitslip控制器的使能。如果INTERFACE_TYPE配置為memory,則必須配置為FALSE;如果INTERFACE_TYPE配置為networking,則必須配置為TURE。在本次設計里將接口類型配置為了networking類型。DATA_RATE SDR指定將輸入的數據作為”SDR”或是”DDR”處理。SDR - 單倍數據數據;DDR - 雙倍數據速率;本設計中設置為單倍數據速率,即SDR。INTERFACE_TYPE NETWORKING使用的數據傳輸模型。可選配置為:MEMORY - 需要用到OCLK; NETWORKING - 不需要用到OCLK;本設計中配置為NETWORKING。IOBDELAYNONE待補充 設計思想設計中將外部輸入的復位信號進行異步復位,同步釋放處理。外部的串行數據直接進入ISERDES,SERDES輸出的并行數據進行拼接成6位的數據總線,再輸出。 仿真結果創建test_betch平臺,生成激勵。仿真結果如圖XX和圖XX。從圖上分析可知,產生的激勵序列011111_101101_101010_110100_010111_10000_000000。其中,clk為快時鐘,控制輸入的串行數據;clkdiv通常是clk的一個分頻版本,取決于所實現的解串的寬度(即,如果是1:6解串器,則clkdiv是clk的6分頻);D為輸入的串行數據;ce為D的同步有效標志(使能)。注意,該設計中配置為SDR,networking模式,則ISERDES的延遲為兩個clkdiv的時鐘,這里所講的延遲是指快時鐘(clk)采集數據為樣本之后,該數據位出現在Q輸出上所需的慢時鐘(clkdiv)的周期數。另,串行輸出的第一位出現在并行輸出的最高位上。其他配置情況下的ISERDES延遲信息如表XX所示。圖 仿真全圖圖 測試激勵起點圖 測試激勵結束表 ISERDES延遲 ISERDES數據時序.1 ISERDES輸入數據時序圖 ISERDES數據輸入時序圖.1 ISERDES輸出數據時序圖 ISERDES數據輸出時序圖對于ISERDES來說,輸入到輸出存在一定延遲,這個延遲取決于DATA_RATE,DATA_WIDTH,SERDES_MODE屬性。所謂延遲具體是指快時鐘(CLK)采集數據位樣本之后,該數據位出現在Q輸出上所需的慢時鐘(CLKDIV)周期數。表 ISERDES延遲值Date_RateSERDES_MODE存儲器模式的延遲網絡模式的延遲SDR1個CLKDIV周期2個CLKDIV周期DDR1個CLKDIV周期2個CLKDIV周期6.1.2 單個ISERDES單元設計(DDR) ISERDES配置參數 設計思想 仿真結果6.1.3 ISERDES寬度擴展構建大于1:6的串并轉換器需要兩個ISERDES模塊。每個I/O模塊中有一主一從兩個ISERDES模塊。通過將主ISERDES的SHIFOUT端口連接到從ISERDES的SHIFTIN端口,可以將串并轉換器最大擴展到1:10(DDR)和1:8(SDR)。如下圖所示為使用主從ISERDES模塊的1:10DDR串并轉換器的框圖。端口Q3-Q6用于從ISERDES上的并行接口的后四位。如果是1:8的SDR串并轉化器,則從單元用的是Q3和Q4兩位端口。圖 ISERDES寬度擴展 設計實例本設計為SDR,1:8串并轉換器,模式為Network模式。具體設計如下圖123。.圖 Master單元設計圖 Slave單元設計圖 擴展后的拼接輸出 仿真結果首先圖中的復位信號依然做了異步復位,同步釋放處理。圖 全局虛線光標處為串行數據開始輸入,在此之后的慢時鐘clkdiv的第二個上升沿,開始輸出并行數據(8bits)。圖 數據輸入到輸出局部6.2 OSERDES設計6.2.1 單個OSERDES單元設計(SDR) OSERDES配置參數Oserdes仿真設計的練習中將oserdes的參數配置為圖XX中的參數,具體參數釋義如表XX所示。圖* OSERDES參數配置表OSERDES屬性概述值默認值DATA_RATE_OQ定義數據(OQ)是在相對于CLK的每個時鐘邊沿還是時鐘的上升沿變化。字符串SDR(單倍數據速率)或者DDR(雙倍數據速率)DDRDATA_RATE_TQ定義三態(TQ)是相對于時鐘的每個時鐘邊沿還是時鐘的上升沿變化,或者是緩沖期設置。字符串SDR、DDR或者BUF。DDRDATA_WIDTH定義并串數據轉換器的寬度。此值還取決于DATA_RATE_OQ的值。整數:2、4、6、7、8或者10。如果DATA_RATE_OQ=DDR,則此值限制為4、6、8或10。如果DATA_RATE_OQ=SDR,則此值限制為2、3、4、5、6、7、8。當DATA_WIDTH設置值大于6時,必須將一對OSERDES配置成主從配置。4SERDES_MODE當使用寬度擴展時,定義OSERDES模塊是主模塊還是從模塊。字符串:MASTER或SLAVE。MASTERTRISTATE定義三態轉換器的寬度。整數:1或4。如果DATA_RATE_TQ=DDR,則此值限制為4。如果DATA_RATE_TQ=SDR或BUF,則此值限制為1。 設計思想設計中將外部輸入的復位信號進行異步復位,同步釋放處理。OSERDES基元外部的并行數據直接進入OSERDES。將OSERDES屬性配置為SDR,DATA_WITH=6,即6:1并串轉換器件。OSERDES的串行數據直接作為模塊數據。 仿真結果創建test_betch平臺,生成激勵。仿真結果如圖XX和圖XX。從圖上分析可知,有CLKDIV驅動產生一組并行測試數據,16進制表示依次為15、12、7、1e、1a,共5個。其中,clk為快時鐘,驅動并串轉換器串行側;clkdiv通常是clk的一個分頻版本,取決于所實現的解串的寬度(即,如果是6:1并串轉換,則clkdiv是clk的6分頻);OSERDES基元外的并行數據通過d1、d2、d3、d4、d5、d6輸入到OSERDES內部,其中d1將最先出現在OQ上,也即如果將并行數據的最低位賦值給d1,其他依次,那么可以看成OSERDES是從并行數據的低位開始并串轉換的;oce為輸出數據有效時鐘使能。注意,該設計中配置為SDR(OSERDES默認為DDR),則OSERDES的并串轉換輸出延遲為clkdiv采集到有效并行數據之后的5個clk周期(即之后的第五個clk上升沿驅動出第一位有效串行數據)有效串行數據出現在OQ上。1a1e71215圖 OSERDES配置為SDR仿真結果 OSERDES基元SDR模式時序1e6.2.2 單個OSERDES單元設計(DDR) OSERDES配置參數 設計思想設計中將外部輸入的復位信號進行異步復位,同步釋放處理。OSERDES基元外部的并行數據直接進入OSERDES。將OSERDES屬性配置為DDR,DATA_WITH=6,即6:1并串轉換器件。OSERDES的串行數據直接作為模塊數據。 仿真結果創建test_betch平臺,生成激勵。仿真結果如圖XX和圖XX。從圖上分析可知,有CLKDIV驅動產生一組并行測試數據,16進制表示依次為15、12、7、1e、1a,共5個。其中,clk為快時鐘,驅動并串轉換器串行側;clkdiv通常是clk的一個分頻版本,取決于所實現的解串的寬度(即,如果是6:1并串轉換,在配置為SDR模式時,clkdiv是clk的6分頻;在配置為DDR模式時,clkdiv是clk的3分頻);OSERDES基元外的并行數據通過d1、d2、d3、d4、d5、d6輸入到OSERDE

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論