srio IP核无法初始化

使用SRIO生成的例子进行自环实验,在板子上把rx和tx用光纤链接起来,不知道为啥IP核一直不能初始化,即port_initialized和link_initialized一直无法拉高,IP核也给了复位信号,是连接到了板子上的复位按键,因为板子上是低电平有效,IP核是高电平有效,所以是取法送给IP核的,IP核的时钟呢,使用一个时钟芯片产生的125MHZ, sim_train_en 也置零了

`timescale 1ps/1ps
(* DowngradeIPIdentifiedWarnings = "yes" *)


module srio_example_top_srio_gen2_0 #(
    parameter SIM_VERBOSE               = 0, // 设为1时,可以利用srio_report.v模块生成不可综合的报告。为0时,此功能被屏蔽
    parameter VALIDATION_FEATURES       = 1, // 设为1时,选择例子工程中的srio_request_gen.v和srio_response_gen.v产生相应的请求事务与响应事务对IP核的功能进行测试。为0时,选择外部的用户接口由用户自己编写请求事务与响应事务的代码对IP进行测试
    parameter QUICK_STARTUP             = 1, // 设为1时,选择例子工程中的srio_quick_start.v产生相应的维护事务对IP核的配置空间进行访问。为0时,选择外部的维护接口由用户自己编写维护事务的代码对IP核的配置空间进行访问
    parameter STATISTICS_GATHERING      = 1, // 设为1时,可以利用srio_statistics.v模块搜集IP的性能细节,这个模块是可综合的,可以通过Chipscope或ILA进行访问。为0时,此功能被屏蔽
    parameter C_LINK_WIDTH              = 1
    )
   //  port declarations ----------------端口声明
   (
     input           sys_clk_p,      // Differentia system clock 200Mhz input on board
     input           sys_clk_n,
    
    // Clocks and Resets
    input            sys_clkp,              // IP核配置界面第一页的参考时钟
    input            sys_clkn,              // IP核配置界面第一页的参考时钟

    input            sys_rst,               // IP核的复位信号,高电平有效

    // high-speed IO
    input           srio_rxn0,              // 串行接收数据信号
    input           srio_rxp0,              // Serial Receive Data 



    output          srio_txn0,              // 串行发送数据信号
    output          srio_txp0,              // Serial Transmit Data

    inout           si5338_scl,          //i2c clock
    inout           si5338_sda,          //i2c data
    output          si5338_i2c_lsb,      //i2c address LSB

 //  input           sim_train_en,           // 用来减少仿真时间的控制信号,仿真时把这个信号置1可以加快仿真速度,但是代码在硬件上运行时这个信号必须赋值为0
    output  [3:0]   led0       //led指示信号,可以把port_initialized和link_initialized两个信号接到led0中,这样在硬件上执行时可以方便观察链路状态

   );
   //  ----------------------------------

wire sys_clk;

assign si5338_i2c_lsb =1'b0;
wire            sim_train_en = 1'b0;
IBUFGDS u_ibufg_sys_clk
     (
      .I  (sys_clk_p),            
      .IB (sys_clk_n),          
      .O  (sys_clk  )        
      );  

si5338# 
(
    .kInitFileName              ("si5338_i4_50_200_156_125_100.mif"            ),
    .input_clk                  (200000000                 ),
    .i2c_address                (7'b1110000               ), 
    .bus_clk                       (400000                   )
)
si5338_inst(
    .clk                         (sys_clk                  ),
    .reset                        (1'b0                     ),
    .done                        (                         ),
    .error                        (                         ),
    .SCL                         (si5338_scl               ),
    .SDA                         (si5338_sda               )
    );

//////////////////////////////////
//
srio_gen2_0  srio_gen2_0_inst
     (//---------------------------------------------------------------例化了RapidIO核
      .sys_clkp                (sys_clkp  ),
      .sys_clkn                (sys_clkn  ),
      .sys_rst                 (~sys_rst   ),
      // all clocks as output in shared logic mode

呀,被官方邀请了。
首先来讲,如果你的板子是xilinx板子,基本上使用ip核是没有任何问题。
现在初始化不成功,也只能检查时钟与复位。从你贴出来的代码来看,你的板载时钟为200M,但是srio核你使用的是125M,我没看到这个125M从何而来?