⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ddr_6to1_16chan_rt_tx.v

📁 FPGA之间的LVDS传输
💻 V
📖 第 1 页 / 共 2 页
字号:
//FORWARDED CLOCK	
ODDR #(
	.DDR_CLK_EDGE("OPPOSITE_EDGE"),
	.INIT(1'b0),
	.SRTYPE("ASYNC")
) ODDR_TX_CLOCK
	(
	.Q(TX_CLOCK_PREBUF), 
	.C(TXCLK), 
	.CE(1'b1), 
	.D1(1'b1), 
	.D2(1'b0), 
	.R(1'b0), 
	.S(1'b0)
	);


//FORWARDED CLOCK OUTPUT BUFFER
OBUFDS_LVDSEXT_25 OBUFDS_TX_CLOCK
	(
	.O(CLOCK_TX_P), 
	.OB(CLOCK_TX_N), 
	.I(TX_CLOCK_PREBUF)
	);


//MASTER OSERDES IN DATA PATH
OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(6), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("MASTER"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_00 (.OQ(TX_DATA_PREBUF[00]), .SHIFTOUT1(), .SHIFTOUT2(), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(DATA_TO_OSERDES_REG[000]), .D2(DATA_TO_OSERDES_REG[001]), .D3(DATA_TO_OSERDES_REG[002]), .D4(DATA_TO_OSERDES_REG[003]), .D5(DATA_TO_OSERDES_REG[004]), .D6(DATA_TO_OSERDES_REG[005]), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(), .SHIFTIN2(), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(6), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("MASTER"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_01 (.OQ(TX_DATA_PREBUF[01]), .SHIFTOUT1(), .SHIFTOUT2(), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(DATA_TO_OSERDES_REG[006]), .D2(DATA_TO_OSERDES_REG[007]), .D3(DATA_TO_OSERDES_REG[008]), .D4(DATA_TO_OSERDES_REG[009]), .D5(DATA_TO_OSERDES_REG[010]), .D6(DATA_TO_OSERDES_REG[011]), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(), .SHIFTIN2(), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(6), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("MASTER"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_02 (.OQ(TX_DATA_PREBUF[02]), .SHIFTOUT1(), .SHIFTOUT2(), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(DATA_TO_OSERDES_REG[012]), .D2(DATA_TO_OSERDES_REG[013]), .D3(DATA_TO_OSERDES_REG[014]), .D4(DATA_TO_OSERDES_REG[015]), .D5(DATA_TO_OSERDES_REG[016]), .D6(DATA_TO_OSERDES_REG[017]), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(), .SHIFTIN2(), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(6), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("MASTER"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_03 (.OQ(TX_DATA_PREBUF[03]), .SHIFTOUT1(), .SHIFTOUT2(), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(DATA_TO_OSERDES_REG[018]), .D2(DATA_TO_OSERDES_REG[019]), .D3(DATA_TO_OSERDES_REG[020]), .D4(DATA_TO_OSERDES_REG[021]), .D5(DATA_TO_OSERDES_REG[022]), .D6(DATA_TO_OSERDES_REG[023]), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(), .SHIFTIN2(), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(6), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("MASTER"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_04 (.OQ(TX_DATA_PREBUF[04]), .SHIFTOUT1(), .SHIFTOUT2(), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(DATA_TO_OSERDES_REG[024]), .D2(DATA_TO_OSERDES_REG[025]), .D3(DATA_TO_OSERDES_REG[026]), .D4(DATA_TO_OSERDES_REG[027]), .D5(DATA_TO_OSERDES_REG[028]), .D6(DATA_TO_OSERDES_REG[029]), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(), .SHIFTIN2(), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(6), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("MASTER"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_05 (.OQ(TX_DATA_PREBUF[05]), .SHIFTOUT1(), .SHIFTOUT2(), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(DATA_TO_OSERDES_REG[030]), .D2(DATA_TO_OSERDES_REG[031]), .D3(DATA_TO_OSERDES_REG[032]), .D4(DATA_TO_OSERDES_REG[033]), .D5(DATA_TO_OSERDES_REG[034]), .D6(DATA_TO_OSERDES_REG[035]), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(), .SHIFTIN2(), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(6), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("MASTER"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_06 (.OQ(TX_DATA_PREBUF[06]), .SHIFTOUT1(), .SHIFTOUT2(), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(DATA_TO_OSERDES_REG[036]), .D2(DATA_TO_OSERDES_REG[037]), .D3(DATA_TO_OSERDES_REG[038]), .D4(DATA_TO_OSERDES_REG[039]), .D5(DATA_TO_OSERDES_REG[040]), .D6(DATA_TO_OSERDES_REG[041]), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(), .SHIFTIN2(), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(6), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("MASTER"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_07 (.OQ(TX_DATA_PREBUF[07]), .SHIFTOUT1(), .SHIFTOUT2(), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(DATA_TO_OSERDES_REG[042]), .D2(DATA_TO_OSERDES_REG[043]), .D3(DATA_TO_OSERDES_REG[044]), .D4(DATA_TO_OSERDES_REG[045]), .D5(DATA_TO_OSERDES_REG[046]), .D6(DATA_TO_OSERDES_REG[047]), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(), .SHIFTIN2(), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(6), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("MASTER"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_08 (.OQ(TX_DATA_PREBUF[08]), .SHIFTOUT1(), .SHIFTOUT2(), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(DATA_TO_OSERDES_REG[048]), .D2(DATA_TO_OSERDES_REG[049]), .D3(DATA_TO_OSERDES_REG[050]), .D4(DATA_TO_OSERDES_REG[051]), .D5(DATA_TO_OSERDES_REG[052]), .D6(DATA_TO_OSERDES_REG[053]), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(), .SHIFTIN2(), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(6), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("MASTER"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_09 (.OQ(TX_DATA_PREBUF[09]), .SHIFTOUT1(), .SHIFTOUT2(), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(DATA_TO_OSERDES_REG[054]), .D2(DATA_TO_OSERDES_REG[055]), .D3(DATA_TO_OSERDES_REG[056]), .D4(DATA_TO_OSERDES_REG[057]), .D5(DATA_TO_OSERDES_REG[058]), .D6(DATA_TO_OSERDES_REG[059]), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(), .SHIFTIN2(), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(6), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("MASTER"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_10 (.OQ(TX_DATA_PREBUF[10]), .SHIFTOUT1(), .SHIFTOUT2(), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(DATA_TO_OSERDES_REG[060]), .D2(DATA_TO_OSERDES_REG[061]), .D3(DATA_TO_OSERDES_REG[062]), .D4(DATA_TO_OSERDES_REG[063]), .D5(DATA_TO_OSERDES_REG[064]), .D6(DATA_TO_OSERDES_REG[065]), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(), .SHIFTIN2(), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(6), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("MASTER"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_11 (.OQ(TX_DATA_PREBUF[11]), .SHIFTOUT1(), .SHIFTOUT2(), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(DATA_TO_OSERDES_REG[066]), .D2(DATA_TO_OSERDES_REG[067]), .D3(DATA_TO_OSERDES_REG[068]), .D4(DATA_TO_OSERDES_REG[069]), .D5(DATA_TO_OSERDES_REG[070]), .D6(DATA_TO_OSERDES_REG[071]), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(), .SHIFTIN2(), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(6), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("MASTER"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_12 (.OQ(TX_DATA_PREBUF[12]), .SHIFTOUT1(), .SHIFTOUT2(), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(DATA_TO_OSERDES_REG[072]), .D2(DATA_TO_OSERDES_REG[073]), .D3(DATA_TO_OSERDES_REG[074]), .D4(DATA_TO_OSERDES_REG[075]), .D5(DATA_TO_OSERDES_REG[076]), .D6(DATA_TO_OSERDES_REG[077]), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(), .SHIFTIN2(), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(6), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("MASTER"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_13 (.OQ(TX_DATA_PREBUF[13]), .SHIFTOUT1(), .SHIFTOUT2(), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(DATA_TO_OSERDES_REG[078]), .D2(DATA_TO_OSERDES_REG[079]), .D3(DATA_TO_OSERDES_REG[080]), .D4(DATA_TO_OSERDES_REG[081]), .D5(DATA_TO_OSERDES_REG[082]), .D6(DATA_TO_OSERDES_REG[083]), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(), .SHIFTIN2(), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(6), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("MASTER"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_14 (.OQ(TX_DATA_PREBUF[14]), .SHIFTOUT1(), .SHIFTOUT2(), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(DATA_TO_OSERDES_REG[084]), .D2(DATA_TO_OSERDES_REG[085]), .D3(DATA_TO_OSERDES_REG[086]), .D4(DATA_TO_OSERDES_REG[087]), .D5(DATA_TO_OSERDES_REG[088]), .D6(DATA_TO_OSERDES_REG[089]), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(), .SHIFTIN2(), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(6), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("MASTER"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_15 (.OQ(TX_DATA_PREBUF[15]), .SHIFTOUT1(), .SHIFTOUT2(), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(DATA_TO_OSERDES_REG[090]), .D2(DATA_TO_OSERDES_REG[091]), .D3(DATA_TO_OSERDES_REG[092]), .D4(DATA_TO_OSERDES_REG[093]), .D5(DATA_TO_OSERDES_REG[094]), .D6(DATA_TO_OSERDES_REG[095]), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(), .SHIFTIN2(), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));

//SLAVE OSERDES IN DATA PATH
//OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(8), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("SLAVE"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_00S (.OQ(), .SHIFTOUT1(SHIFT1[00]), .SHIFTOUT2(SHIFT2[00]), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(), .D2(), .D3(DATA_TO_OSERDES_REG[006]), .D4(DATA_TO_OSERDES_REG[007]), .D5(), .D6(), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(1'b0), .SHIFTIN2(1'b0), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
//OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(8), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("SLAVE"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_01S (.OQ(), .SHIFTOUT1(SHIFT1[01]), .SHIFTOUT2(SHIFT2[01]), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(), .D2(), .D3(DATA_TO_OSERDES_REG[014]), .D4(DATA_TO_OSERDES_REG[015]), .D5(), .D6(), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(1'b0), .SHIFTIN2(1'b0), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
//OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(8), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("SLAVE"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_02S (.OQ(), .SHIFTOUT1(SHIFT1[02]), .SHIFTOUT2(SHIFT2[02]), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(), .D2(), .D3(DATA_TO_OSERDES_REG[022]), .D4(DATA_TO_OSERDES_REG[023]), .D5(), .D6(), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(1'b0), .SHIFTIN2(1'b0), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
//OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(8), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("SLAVE"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_03S (.OQ(), .SHIFTOUT1(SHIFT1[03]), .SHIFTOUT2(SHIFT2[03]), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(), .D2(), .D3(DATA_TO_OSERDES_REG[030]), .D4(DATA_TO_OSERDES_REG[031]), .D5(), .D6(), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(1'b0), .SHIFTIN2(1'b0), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
//OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(8), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("SLAVE"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_04S (.OQ(), .SHIFTOUT1(SHIFT1[04]), .SHIFTOUT2(SHIFT2[04]), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(), .D2(), .D3(DATA_TO_OSERDES_REG[038]), .D4(DATA_TO_OSERDES_REG[039]), .D5(), .D6(), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(1'b0), .SHIFTIN2(1'b0), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
//OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(8), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("SLAVE"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_05S (.OQ(), .SHIFTOUT1(SHIFT1[05]), .SHIFTOUT2(SHIFT2[05]), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(), .D2(), .D3(DATA_TO_OSERDES_REG[046]), .D4(DATA_TO_OSERDES_REG[047]), .D5(), .D6(), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(1'b0), .SHIFTIN2(1'b0), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
//OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(8), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("SLAVE"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_06S (.OQ(), .SHIFTOUT1(SHIFT1[06]), .SHIFTOUT2(SHIFT2[06]), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(), .D2(), .D3(DATA_TO_OSERDES_REG[054]), .D4(DATA_TO_OSERDES_REG[055]), .D5(), .D6(), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(1'b0), .SHIFTIN2(1'b0), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
//OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(8), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("SLAVE"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_07S (.OQ(), .SHIFTOUT1(SHIFT1[07]), .SHIFTOUT2(SHIFT2[07]), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(), .D2(), .D3(DATA_TO_OSERDES_REG[062]), .D4(DATA_TO_OSERDES_REG[063]), .D5(), .D6(), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(1'b0), .SHIFTIN2(1'b0), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
//OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(8), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("SLAVE"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_08S (.OQ(), .SHIFTOUT1(SHIFT1[08]), .SHIFTOUT2(SHIFT2[08]), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(), .D2(), .D3(DATA_TO_OSERDES_REG[070]), .D4(DATA_TO_OSERDES_REG[071]), .D5(), .D6(), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(1'b0), .SHIFTIN2(1'b0), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
//OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(8), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("SLAVE"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_09S (.OQ(), .SHIFTOUT1(SHIFT1[09]), .SHIFTOUT2(SHIFT2[09]), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(), .D2(), .D3(DATA_TO_OSERDES_REG[078]), .D4(DATA_TO_OSERDES_REG[079]), .D5(), .D6(), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(1'b0), .SHIFTIN2(1'b0), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
//OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(8), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("SLAVE"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_10S (.OQ(), .SHIFTOUT1(SHIFT1[10]), .SHIFTOUT2(SHIFT2[10]), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(), .D2(), .D3(DATA_TO_OSERDES_REG[086]), .D4(DATA_TO_OSERDES_REG[087]), .D5(), .D6(), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(1'b0), .SHIFTIN2(1'b0), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
//OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(8), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("SLAVE"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_11S (.OQ(), .SHIFTOUT1(SHIFT1[11]), .SHIFTOUT2(SHIFT2[11]), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(), .D2(), .D3(DATA_TO_OSERDES_REG[094]), .D4(DATA_TO_OSERDES_REG[095]), .D5(), .D6(), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(1'b0), .SHIFTIN2(1'b0), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
//OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(8), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("SLAVE"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_12S (.OQ(), .SHIFTOUT1(SHIFT1[12]), .SHIFTOUT2(SHIFT2[12]), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(), .D2(), .D3(DATA_TO_OSERDES_REG[102]), .D4(DATA_TO_OSERDES_REG[103]), .D5(), .D6(), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(1'b0), .SHIFTIN2(1'b0), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
//OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(8), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("SLAVE"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_13S (.OQ(), .SHIFTOUT1(SHIFT1[13]), .SHIFTOUT2(SHIFT2[13]), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(), .D2(), .D3(DATA_TO_OSERDES_REG[110]), .D4(DATA_TO_OSERDES_REG[111]), .D5(), .D6(), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(1'b0), .SHIFTIN2(1'b0), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
//OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(8), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("SLAVE"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_14S (.OQ(), .SHIFTOUT1(SHIFT1[14]), .SHIFTOUT2(SHIFT2[14]), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(), .D2(), .D3(DATA_TO_OSERDES_REG[118]), .D4(DATA_TO_OSERDES_REG[119]), .D5(), .D6(), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(1'b0), .SHIFTIN2(1'b0), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));
//OSERDES #(.DATA_RATE_OQ("DDR"), .DATA_RATE_TQ("DDR"), .DATA_WIDTH(8), .INIT_OQ(1'b0), .INIT_TQ(1'b0), .SERDES_MODE("SLAVE"), .SRVAL_OQ(1'b0), .SRVAL_TQ(1'b0), .TRISTATE_WIDTH(1)) OSERDES_TX_DATA_15S (.OQ(), .SHIFTOUT1(SHIFT1[15]), .SHIFTOUT2(SHIFT2[15]), .TQ(), .CLK(TXCLK), .CLKDIV(TXCLKDIV), .D1(), .D2(), .D3(DATA_TO_OSERDES_REG[126]), .D4(DATA_TO_OSERDES_REG[127]), .D5(), .D6(), .OCE(1'b1), .REV(1'b0), .SHIFTIN1(1'b0), .SHIFTIN2(1'b0), .SR(RESET), .T1(1'b0), .T2(1'b0), .T3(1'b0), .T4(1'b0), .TCE(1'b0));


//OUTPUT BUFFERS	
OBUFDS_LVDSEXT_25 OBUFDS_TX_DATA_00(.O(DATA_TX_P[00]), .OB(DATA_TX_N[00]), .I(TX_DATA_PREBUF[00]));
OBUFDS_LVDSEXT_25 OBUFDS_TX_DATA_01(.O(DATA_TX_P[01]), .OB(DATA_TX_N[01]), .I(TX_DATA_PREBUF[01]));
OBUFDS_LVDSEXT_25 OBUFDS_TX_DATA_02(.O(DATA_TX_P[02]), .OB(DATA_TX_N[02]), .I(TX_DATA_PREBUF[02]));
OBUFDS_LVDSEXT_25 OBUFDS_TX_DATA_03(.O(DATA_TX_P[03]), .OB(DATA_TX_N[03]), .I(TX_DATA_PREBUF[03]));
OBUFDS_LVDSEXT_25 OBUFDS_TX_DATA_04(.O(DATA_TX_P[04]), .OB(DATA_TX_N[04]), .I(TX_DATA_PREBUF[04]));
OBUFDS_LVDSEXT_25 OBUFDS_TX_DATA_05(.O(DATA_TX_P[05]), .OB(DATA_TX_N[05]), .I(TX_DATA_PREBUF[05]));
OBUFDS_LVDSEXT_25 OBUFDS_TX_DATA_06(.O(DATA_TX_P[06]), .OB(DATA_TX_N[06]), .I(TX_DATA_PREBUF[06]));
OBUFDS_LVDSEXT_25 OBUFDS_TX_DATA_07(.O(DATA_TX_P[07]), .OB(DATA_TX_N[07]), .I(TX_DATA_PREBUF[07]));
OBUFDS_LVDSEXT_25 OBUFDS_TX_DATA_08(.O(DATA_TX_P[08]), .OB(DATA_TX_N[08]), .I(TX_DATA_PREBUF[08]));
OBUFDS_LVDSEXT_25 OBUFDS_TX_DATA_09(.O(DATA_TX_P[09]), .OB(DATA_TX_N[09]), .I(TX_DATA_PREBUF[09]));
OBUFDS_LVDSEXT_25 OBUFDS_TX_DATA_10(.O(DATA_TX_P[10]), .OB(DATA_TX_N[10]), .I(TX_DATA_PREBUF[10]));
OBUFDS_LVDSEXT_25 OBUFDS_TX_DATA_11(.O(DATA_TX_P[11]), .OB(DATA_TX_N[11]), .I(TX_DATA_PREBUF[11]));
OBUFDS_LVDSEXT_25 OBUFDS_TX_DATA_12(.O(DATA_TX_P[12]), .OB(DATA_TX_N[12]), .I(TX_DATA_PREBUF[12]));
OBUFDS_LVDSEXT_25 OBUFDS_TX_DATA_13(.O(DATA_TX_P[13]), .OB(DATA_TX_N[13]), .I(TX_DATA_PREBUF[13]));
OBUFDS_LVDSEXT_25 OBUFDS_TX_DATA_14(.O(DATA_TX_P[14]), .OB(DATA_TX_N[14]), .I(TX_DATA_PREBUF[14]));
OBUFDS_LVDSEXT_25 OBUFDS_TX_DATA_15(.O(DATA_TX_P[15]), .OB(DATA_TX_N[15]), .I(TX_DATA_PREBUF[15]));


endmodule

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -