Changeset 7818

Show
Ignore:
Timestamp:
02/24/08 12:08:20
Author:
matt
Message:

register the serdes outputs in the iobuffer flops

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • usrp2/trunk/fpga/top/u2_fpga/u2_fpga_top.v

    r7557 r7818  
    5858    
    5959   output ser_tx_clk, 
    60    output [15:0] ser_t, 
    61    output ser_tklsb, 
    62    output ser_tkmsb, 
     60   output reg [15:0] ser_t, 
     61   output reg ser_tklsb, 
     62   output reg ser_tkmsb, 
    6363 
    6464   input ser_rx_clk, 
     
    252252     end 
    253253 
    254    OFDDRRSE OFDDRRSE_inst  
     254   OFDDRRSE OFDDRRSE_gmii_inst  
    255255     (.Q(GMII_GTX_CLK),      // Data output (connect directly to top-level port) 
    256256      .C0(GMII_GTX_CLK_int),    // 0 degree clock input 
     
    263263      ); 
    264264    
     265   wire ser_tklsb_unreg, ser_tkmsb_unreg; 
     266   wire [15:0] ser_t_unreg; 
     267   wire        ser_tx_clk_int; 
     268    
     269   always @(posedge ser_tx_clk_int) 
     270     begin 
     271        ser_tklsb <= ser_tklsb_unreg; 
     272        ser_tkmsb <= ser_tkmsb_unreg; 
     273        ser_t <= ser_t_unreg; 
     274     end 
     275 
     276   assign ser_tx_clk = clk_fpga; 
     277    
     278   /* 
     279   OFDDRRSE OFDDRRSE_serdes_inst  
     280     (.Q(ser_tx_clk),      // Data output (connect directly to top-level port) 
     281      .C0(ser_tx_clk_int),    // 0 degree clock input 
     282      .C1(~ser_tx_clk_int),    // 180 degree clock input 
     283      .CE(1),    // Clock enable input 
     284      .D0(0),    // Posedge data input 
     285      .D1(1),    // Negedge data input 
     286      .R(0),      // Synchronous reset input 
     287      .S(0)       // Synchronous preset input 
     288      ); 
     289   */ 
    265290   u2_basic u2_basic(.dsp_clk           (dsp_clk), 
    266291                     .wb_clk            (wb_clk), 
     
    294319                     .ser_loopen        (ser_loopen), 
    295320                     .ser_rx_en         (ser_rx_en), 
    296                      .ser_tx_clk        (ser_tx_clk), 
    297                      .ser_t             (ser_t[15:0]), 
    298                      .ser_tklsb         (ser_tklsb), 
    299                      .ser_tkmsb         (ser_tkmsb), 
     321                     .ser_tx_clk        (ser_tx_clk_int), 
     322                     .ser_t             (ser_t_unreg[15:0]), 
     323                     .ser_tklsb         (ser_tklsb_unreg), 
     324                     .ser_tkmsb         (ser_tkmsb_unreg), 
    300325                     .ser_rx_clk        (ser_rx_clk), 
    301326                     .ser_r             (ser_r[15:0]),