aurora仿真使用等

IP设置

代码

aurora_8b10b aurora_8b10b_inst (
  /**********************************************************************************///axi_stream tx
  .s_axi_tx_tdata(s_axi_tx_tdata),                  // input wire [0 : 31] s_axi_tx_tdata
  .s_axi_tx_tkeep(s_axi_tx_tkeep),                  // input wire [0 : 3] s_axi_tx_tkeep
  .s_axi_tx_tlast(s_axi_tx_tlast),                  // input wire s_axi_tx_tlast
  .s_axi_tx_tvalid(s_axi_tx_tvalid),                // input wire s_axi_tx_tvalid
  .s_axi_tx_tready(s_axi_tx_tready),                // output wire s_axi_tx_tready
/**********************************************************************************///ufc no use tx frame


  .s_axi_ufc_tx_tvalid(s_axi_ufc_tx_tvalid),        // input wire s_axi_ufc_tx_tvalid
  .s_axi_ufc_tx_tdata(s_axi_ufc_tx_tdata),          // input wire [0 : 2] s_axi_ufc_tx_tdata
  .s_axi_ufc_tx_tready(s_axi_ufc_tx_tready),        // output wire s_axi_ufc_tx_tready
/**********************************************************************************///axi_stream rx


  .m_axi_rx_tdata(m_axi_rx_tdata),                  // output wire [0 : 31] m_axi_rx_tdata
  .m_axi_rx_tkeep(m_axi_rx_tkeep),                  // output wire [0 : 3] m_axi_rx_tkeep
  .m_axi_rx_tlast(m_axi_rx_tlast),                  // output wire m_axi_rx_tlast
  .m_axi_rx_tvalid(m_axi_rx_tvalid),                // output wire m_axi_rx_tvalid
/**********************************************************************************///ufc no use rx frame


  .m_axi_ufc_rx_tdata(m_axi_ufc_rx_tdata),          // output wire [0 : 31] m_axi_ufc_rx_tdata
  .m_axi_ufc_rx_tkeep(m_axi_ufc_rx_tkeep),          // output wire [0 : 3] m_axi_ufc_rx_tkeep
  .m_axi_ufc_rx_tlast(m_axi_ufc_rx_tlast),          // output wire m_axi_ufc_rx_tlast
  .m_axi_ufc_rx_tvalid(m_axi_ufc_rx_tvalid),        // output wire m_axi_ufc_rx_tvalid
/**********************************************************************************///


  .hard_err(hard_err),                              // output wire hard_err
  .soft_err(soft_err),                              // output wire soft_err
  .frame_err(frame_err),                            // output wire frame_err
/**********************************************************************************///error


  .channel_up(channel_up),                          // output wire channel_up
  .lane_up(lane_up),                                // output wire [0 : 0] lane_up
  .txp(txp),                                        // output wire [0 : 0] txp
  .txn(txn),                                        // output wire [0 : 0] txn
/**********************************************************************************///reset 


  .reset(reset),                                    // input wire reset
  .gt_reset(gt_reset),                              // input wire gt_reset
/**********************************************************************************///


  .loopback(3'b000),                              // input wire [2 : 0] loopback
  .rxp(rxp),                                        // input wire [0 : 0] rxp
  .rxn(rxn),                                        // input wire [0 : 0] rxn
/**********************************************************************************///crc


  .crc_valid(crc_valid),                            // output wire crc_valid
  .crc_pass_fail_n(crc_pass_fail_n),                // output wire crc_pass_fail_n //1 is pass ,0 is fail
/**********************************************************************************///dynamic setup


  .drpclk_in(drpclk_in),                            // input wire drpclk_in
  .drpaddr_in(drpaddr_in),                          // input wire [8 : 0] drpaddr_in
  .drpen_in(1'b0),                              // input wire drpen_in
  .drpdi_in(drpdi_in),                              // input wire [15 : 0] drpdi_in
  .drprdy_out(drprdy_out),                          // output wire drprdy_out
  .drpdo_out(drpdo_out),                            // output wire [15 : 0] drpdo_out
  .drpwe_in(1'b0),                              // input wire drpwe_in
/**********************************************************************************///power down  mode


  .power_down(1'b0),                               // input wire power_down
/**********************************************************************************///



  .tx_lock(tx_lock),                                // output wire tx_lock
  .tx_resetdone_out(tx_resetdone_out),              // output wire tx_resetdone_out
  .rx_resetdone_out(rx_resetdone_out),              // output wire rx_resetdone_out
  .link_reset_out(link_reset_out),                  // output wire link_reset_out
/**********************************************************************************///initial clk signle


  .init_clk_in(init_clk_in),                        // input wire init_clk_in
/**********************************************************************************///user clk


  .user_clk_out(user_clk_out),                      // output wire user_clk_out
  .pll_not_locked_out(pll_not_locked_out),          // output wire pll_not_locked_out
/**********************************************************************************///high en


  .sys_reset_out(sys_reset_out),                    // output wire sys_reset_out
/**********************************************************************************///pin refclk
  .gt_refclk1_p(gt_refclk1_p),                      // input wire gt_refclk1_p
  .gt_refclk1_n(gt_refclk1_n),                      // input wire gt_refclk1_n

  .sync_clk_out(sync_clk_out),                      // output wire sync_clk_out
  .gt_reset_out(gt_reset_out),                      // output wire gt_reset_out
  .gt_refclk1_out(gt_refclk1_out),                  // output wire gt_refclk1_out
  .gt0_pll0refclklost_out(gt0_pll0refclklost_out),  // output wire gt0_pll0refclklost_out
  .quad1_common_lock_out(quad1_common_lock_out),    // output wire quad1_common_lock_out
  .gt0_pll0outclk_out(gt0_pll0outclk_out),          // output wire gt0_pll0outclk_out
  .gt0_pll1outclk_out(gt0_pll1outclk_out),          // output wire gt0_pll1outclk_out
  .gt0_pll0outrefclk_out(gt0_pll0outrefclk_out),    // output wire gt0_pll0outrefclk_out
  .gt0_pll1outrefclk_out(gt0_pll1outrefclk_out)    // output wire gt0_pll1outrefclk_out
);

channel up

lane up 

在仿真的时候大概需要700us才会有效,不然数据一直处于复位状态。

ufc在每帧之后有一个周期的发送,(设置为一周期4byte,发送32bit)

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值