1.前言
本文僅對(duì)UG471 第3章《Advanced SelectIO Logic Resources》部分進(jìn)行翻譯和學(xué)習(xí)解讀。
其他部分,后續(xù)補(bǔ)充。
水平所限,有不足之處,歡迎拍磚。
2.ISERDESE2原語介紹
SERDESE2是專用的串并轉(zhuǎn)換器,它在完成串并轉(zhuǎn)換時(shí)并不會(huì)帶來多余的時(shí)序上的問題,從而很適合應(yīng)用到高速源同步應(yīng)用中。比如攝像頭數(shù)據(jù)。
專用解串器/串并轉(zhuǎn)換器
它可以完成高速數(shù)據(jù)傳輸同時(shí)不需要FPGA端匹配數(shù)據(jù)頻率,這個(gè)轉(zhuǎn)換器支持SDR(single data rate)和DDR(double data rate)。SDR模式支持2-,3-,4-,5-,6-,7-,8bit位寬;DDR模式支持4-,6-,8-bit位寬。10或14-bit需要兩個(gè)級(jí)聯(lián)。
Bitslip 子模塊
該子模塊可以使設(shè)計(jì)者重新排列輸入的并行數(shù)據(jù)。可用于源同步tranining。
- 對(duì)strobe-based 類型存儲(chǔ)接口的專用支持
- 對(duì)networking接口的專用支持
- 對(duì)DDR3接口的專用支持
- 對(duì)QDR接口的專用支持
- 對(duì)異步接口的專用支持
3.原語例化
ISERDESE2 #(
.DATA_RATE("DDR"), // DDR, SDR
.DATA_WIDTH(4), // Parallel data width (2-8,10,14)
.DYN_CLKDIV_INV_EN("FALSE"), // Enable DYNCLKDIVINVSEL inversion (FALSE, TRUE)
.DYN_CLK_INV_EN("FALSE"), // Enable DYNCLKINVSEL inversion (FALSE, TRUE)
// INIT_Q1 - INIT_Q4: Initial value on the Q outputs (0/1)
.INIT_Q1(1'b0),
.INIT_Q2(1'b0),
.INIT_Q3(1'b0),
.INIT_Q4(1'b0),
.INTERFACE_TYPE("MEMORY"), // MEMORY, MEMORY_DDR3, MEMORY_QDR, NETWORKING, OVERSAMPLE
.IOBDELAY("NONE"), // NONE, BOTH, IBUF, IFD
.NUM_CE(2), // Number of clock enables (1,2)
.OFB_USED("FALSE"), // Select OFB path (FALSE, TRUE)
.SERDES_MODE("MASTER"), // MASTER, SLAVE
// SRVAL_Q1 - SRVAL_Q4: Q output values when SR is used (0/1)
.SRVAL_Q1(1'b0),
.SRVAL_Q2(1'b0),
.SRVAL_Q3(1'b0),
.SRVAL_Q4(1'b0)
)
ISERDESE2_inst (
.O(O), // 1-bit output: Combinatorial output
// Q1 - Q8: 1-bit (each) output: Registered data outputs
.Q1(Q1),
.Q2(Q2),
.Q3(Q3),
.Q4(Q4),
.Q5(Q5),
.Q6(Q6),
.Q7(Q7),
.Q8(Q8),
// SHIFTOUT1, SHIFTOUT2: 1-bit (each) output: Data width expansion output ports
.SHIFTOUT1(SHIFTOUT1),
.SHIFTOUT2(SHIFTOUT2),
.BITSLIP(BITSLIP), // 1-bit input: The BITSLIP pin performs a Bitslip
// CE1, CE2: 1-bit (each) input: Data register clock enable inputs
.CE1(CE1),
.CE2(CE2),
.CLKDIVP(CLKDIVP), // 1-bit input: TBD
// Clocks: 1-bit (each) input: ISERDESE2 clock input ports
.CLK(CLK), // 1-bit input: High-speed clock
.CLKB(CLKB), // 1-bit input: High-speed secondary clock
.CLKDIV(CLKDIV), // 1-bit input: Divided clock
.OCLK(OCLK), // 1-bit input: High speed output clock used when
// Dynamic Clock Inversions: 1-bit (each) input: Dynamic clock inversion pins to switch clock polarity
.DYNCLKDIVSEL(DYNCLKDIVSEL), // 1-bit input: Dynamic CLKDIV inversion
.DYNCLKSEL(DYNCLKSEL), // 1-bit input: Dynamic CLK/CLKB inversion
// Input Data: 1-bit (each) input: ISERDESE2 data input ports
.D(D), // 1-bit input: Data input
.DDLY(DDLY), // 1-bit input: Serial data from IDELAYE2
.OFB(OFB), // 1-bit input: Data feedback from OSERDESE2
.OCLKB(OCLKB), // 1-bit input: High speed negative edge output clock
.RST(RST), // 1-bit input: Active high asynchronous reset
// SHIFTIN1, SHIFTIN2: 1-bit (each) input: Data width expansion input ports
.SHIFTIN1(SHIFTIN1),
.SHIFTIN2(SHIFTIN2)
);
4.ISERDESE2框圖

串行輸入: 即串行數(shù)據(jù)輸入(D: 與IOB相連, DDLY來源于IDELAYE2原語的輸出)
時(shí)鐘接口:包含高速時(shí)鐘CLK ,分頻時(shí)鐘CLKDIV等;
數(shù)據(jù)對(duì)齊模塊:Bitslip,用于源同步,重新排列輸入的并行數(shù)據(jù);
組合輸出O:O輸出不寄存,根據(jù)參數(shù)配置輸出D / DDLY;
級(jí)聯(lián)接口:1個(gè)ISERDESE2最大位寬為8位,想要實(shí)現(xiàn)10-,14bit的數(shù)據(jù),就需要級(jí)聯(lián)兩個(gè)ISERDESE2;
并行數(shù)據(jù)輸出:Q1-Q8



有些地方可能翻譯的不是很準(zhǔn)確,附上手冊(cè)原文。
5.1時(shí)鐘接口
提供ISERDESE2工作的高速源同步串行時(shí)鐘,并行數(shù)據(jù)獲取時(shí)鐘和控制時(shí)鐘。

5.2并行數(shù)據(jù)輸出
輸入輸出的順序相反,具體見下圖:
當(dāng)輸入D1為A,輸出Q8為A

5.3 數(shù)據(jù)輸出選擇
根據(jù)IOBDELAY參數(shù)設(shè)置的不同,組合輸出O與寄存輸出Q1-Q8的輸出選擇:
D 、 DDLY 的意思前文已講過,不再重復(fù)。

5.4級(jí)聯(lián)接口
該接口用于實(shí)現(xiàn)DDR模式下,位寬擴(kuò)展為10bit,14bit;
通過級(jí)聯(lián)接口與另外一個(gè)ISERDESE2相接;

6.數(shù)據(jù)對(duì)齊操作
SDR Mode:
輸出每次左移1位;當(dāng)8次操作后,恢復(fù)到最初狀態(tài);
DDR Mode:
輸出交替進(jìn)行右移1位和左移3位操作,當(dāng)8次操作后,恢復(fù)到最初狀態(tài);

注意:
1. 同步于CLKDIV時(shí)鐘,本小節(jié)所說的時(shí)鐘周期特指CLKDIV時(shí)鐘周期
2. 在“NETWORKING”模式下使用
3. 類似于一個(gè)桶式移位”Barrel_Shifter”
4. bitslip只能拉高1個(gè)clkdiv時(shí)鐘周期
5. bitslip兩次拉高之間必須間隔至少一個(gè)時(shí)鐘周期;
6. 用戶邏輯需等待最少2個(gè)clkdiv時(shí)鐘周期(SDR模式)/3個(gè)時(shí)鐘周期(DDR)后,數(shù)據(jù)移位才能完成。
審核編輯:符乾江
-
數(shù)據(jù)
+關(guān)注
關(guān)注
8文章
7227瀏覽量
90276 -
Xilinx
+關(guān)注
關(guān)注
72文章
2174瀏覽量
123072
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
ISERDESE2原語端口及參數(shù)介紹

AI助力實(shí)時(shí)翻譯耳機(jī)

影目科技發(fā)布全球首款同傳翻譯眼鏡INMO GO2
調(diào)試Xilinx Zynq + ADS58C48,ADC使用的是LVDS模式,ADC不能正常工作怎么解決?
ADC3583怎么用Xilinx的ISERDESE2采集信號(hào)?
UC3843BD1R2G安森美高性能電流模式PWM控制器-uc3843中文資料應(yīng)用電路
IPC-6012E CN 2020中文 CN 剛性印制板的鑒定及性能規(guī)范
FPGA | Xilinx ISE14.7 LVDS應(yīng)用
Xilinx ISE14.7 LVDS的應(yīng)用

W5500V1.3中文數(shù)據(jù)手冊(cè)
Xilinx SelectIO資源內(nèi)部的IDELAYE2應(yīng)用介紹

評(píng)論