zynq-sandbox

old FPGA projects for ZYNQ
git clone http://frotz.net/git/zynq-sandbox.git
Log | Files | Refs | README

serdes_10to1_tx.sv (1184B)


      1 `timescale 1ns / 1ps
      2 
      3 module serdes_10to1_tx(
      4 	input clk,
      5 	input clkx5,
      6 	input reset,
      7 	output o_p,
      8 	output o_n,
      9 	input [9:0]i_data
     10 	);
     11 
     12 wire out, shift1, shift2;
     13 
     14 OBUFDS bufds(.I(out), .O(o_p), .OB(o_n));
     15 
     16 OSERDESE2 #(
     17 	.DATA_RATE_OQ("DDR"),
     18 	.DATA_RATE_TQ("SDR"),
     19 	.DATA_WIDTH(10),
     20 	.TRISTATE_WIDTH(1),
     21 	.SERDES_MODE("MASTER")
     22 	)serdes_lo(
     23 	.CLK(clkx5),
     24 	.CLKDIV(clk),
     25 	.D1(i_data[0]),
     26 	.D2(i_data[1]),
     27 	.D3(i_data[2]),
     28 	.D4(i_data[3]),
     29 	.D5(i_data[4]),
     30 	.D6(i_data[5]),
     31 	.D7(i_data[6]),
     32 	.D8(i_data[7]),
     33 	.OCE(1),
     34 	.OFB(),
     35 	.OQ(out),
     36 	.RST(reset),
     37 	.SHIFTIN1(shift1),
     38 	.SHIFTIN2(shift2),
     39 	.SHIFTOUT1(),
     40 	.SHIFTOUT2(),
     41 	.TBYTEIN(0),
     42 	.TBYTEOUT(),
     43 	.TCE(0),
     44 	.TFB(),
     45 	.TQ(),
     46 	.T1(0),
     47 	.T2(0),
     48 	.T3(0),
     49 	.T4(0)
     50 	);
     51 
     52 OSERDESE2 #(
     53 	.DATA_RATE_OQ("DDR"),
     54 	.DATA_RATE_TQ("SDR"),
     55 	.DATA_WIDTH(10),
     56 	.TRISTATE_WIDTH(1),
     57 	.SERDES_MODE("SLAVE")
     58 	)serdes_hi(
     59 	.CLK(clkx5),
     60 	.CLKDIV(clk),
     61 	.D1(0),
     62 	.D2(0),
     63 	.D3(i_data[8]),
     64 	.D4(i_data[9]),
     65 	.D5(0),
     66 	.D6(0),
     67 	.D7(0),
     68 	.D8(0),
     69 	.OCE(1),
     70 	.OFB(),
     71 	.OQ(),
     72 	.RST(reset),
     73 	.SHIFTIN1(0),
     74 	.SHIFTIN2(0),
     75 	.SHIFTOUT1(shift1),
     76 	.SHIFTOUT2(shift2),
     77 	.TBYTEIN(0),
     78 	.TBYTEOUT(),
     79 	.TCE(0),
     80 	.TFB(),
     81 	.TQ(),
     82 	.T1(0),
     83 	.T2(0),
     84 	.T3(0),
     85 	.T4(0)
     86 	);
     87 
     88 endmodule