文章目录
- 前言
- 一、IP核配置
- 二、设计框图
- 三、上板效果
- 总结
前言
前面我们基于GT 64B66B设计了自定义PHY层,并且也介绍过了基于AURORA8B18B IP核的使用,AURORA8B18B IP核的使用可以说是与AURORA8B18B IP核完全一致,可参考前文:https://blog.csdn.net/m0_56222647/article/details/137261729?spm=1001.2014.3001.5502
一、IP核配置
与8B10B大题是一样,接口也类似
二、设计框图
设计框图与8B10B一致,模块功能也是一样的,大部分模块都直接使用example design当中的即可,只有aurora_64b66b_0_CLOCK_MODULE模块进行了简单的修改,将INIT_CLK的双端转单端放到了顶层模块。
module aurora64b66b_module(input i_init_clk_100M ,input i_rst ,input gt_refclk_p ,input gt_refclk_n ,output [1 :0] gt_txp ,output [1 :0] gt_txn ,input [1 :0] gt_rxp ,input [1 :0] gt_rxn ,input [63:0] s_axi_tx_0_tdata ,input [7 :0] s_axi_tx_0_tkeep ,input s_axi_tx_0_tlast ,input s_axi_tx_0_tvalid ,output s_axi_tx_0_tready ,output [63:0] m_axi_rx_0_tdata ,output [7 :0] m_axi_rx_0_tkeep ,output m_axi_rx_0_tlast ,output m_axi_rx_0_tvalid ,output o_hard_err_0 ,output o_soft_err_0 ,output o_channel_up_0 ,output o_lane_up_0 ,input [2 :0] i_loopback_0 ,output o_user_clk_0 ,output o_user_rst_0 ,input [63:0] s_axi_tx_1_tdata ,input [7 :0] s_axi_tx_1_tkeep ,input s_axi_tx_1_tlast ,input s_axi_tx_1_tvalid ,output s_axi_tx_1_tready ,output [63:0] m_axi_rx_1_tdata ,output [7 :0] m_axi_rx_1_tkeep ,output m_axi_rx_1_tlast ,output m_axi_rx_1_tvalid ,output o_hard_err_1 ,output o_soft_err_1 ,output o_channel_up_1 ,output o_lane_up_1 ,input [2 :0] i_loopback_1 ,output o_user_clk_1 ,output o_user_rst_1 );IBUFDS_GTE2 IBUFDS_GTXE2_CLK1
(.O (i_gtref_clk ),.ODIV2 ( ),.CEB (1'b0 ),.I (gt_refclk_p ),.IB (gt_refclk_n )
);aurora_64b66b_0_gt_common_wrapper gt_common_support
(.gt_qpllclk_quad1_out (gt_qpllclk_quad1_in ),.gt_qpllrefclk_quad1_out (gt_qpllrefclk_quad1_in ),.GT0_GTREFCLK0_COMMON_IN (i_gtref_clk ), //----------------------- Common Block - QPLL Ports ------------------------.GT0_QPLLLOCK_OUT (gt0_qplllock_in ),.GT0_QPLLRESET_IN (gt0_qpllreset_out ),.GT0_QPLLLOCKDETCLK_IN (i_init_clk_100M ),.GT0_QPLLREFCLKLOST_OUT (gt0_qpllrefclklost_in ),//---------------------- Common DRP Ports ----------------------.qpll_drpaddr_in (0),.qpll_drpdi_in (0),.qpll_drpclk_in (0),.qpll_drpdo_out (), .qpll_drprdy_out (), .qpll_drpen_in (0), .qpll_drpwe_in (0)
);aurora64b66b_channel aurora64b66b_channel_u0(.i_init_clk_100M (i_init_clk_100M ),.i_rst (i_rst ),.i_gtref_clk (i_gtref_clk ),.gt_txp (gt_txp[0] ),.gt_txn (gt_txn[0] ),.gt_rxp (gt_rxp[0] ),.gt_rxn (gt_rxn[0] ),.s_axi_tx_tdata (s_axi_tx_0_tdata ),.s_axi_tx_tkeep (s_axi_tx_0_tkeep ),.s_axi_tx_tlast (s_axi_tx_0_tlast ),.s_axi_tx_tvalid (s_axi_tx_0_tvalid ),.s_axi_tx_tready (s_axi_tx_0_tready ),.m_axi_rx_tdata (m_axi_rx_0_tdata ),.m_axi_rx_tkeep (m_axi_rx_0_tkeep ),.m_axi_rx_tlast (m_axi_rx_0_tlast ),.m_axi_rx_tvalid (m_axi_rx_0_tvalid ),.o_hard_err (o_hard_err_0 ),.o_soft_err (o_soft_err_0 ),.o_channel_up (o_channel_up_0 ),.o_lane_up (o_lane_up_0 ),.i_loopback (i_loopback_0 ),.o_user_clk (o_user_clk_0 ),.o_user_rst (o_user_rst_0 ),.gt0_qplllock_in (gt0_qplllock_in ),.gt0_qpllrefclklost_in (gt0_qpllrefclklost_in ),.gt0_qpllreset_out (gt0_qpllreset_out ),.gt_qpllclk_quad1_in (gt_qpllclk_quad1_in ),.gt_qpllrefclk_quad1_in (gt_qpllrefclk_quad1_in )
);aurora64b66b_channel aurora64b66b_channel_u1(.i_init_clk_100M (i_init_clk_100M ),.i_rst (i_rst ),.i_gtref_clk (i_gtref_clk ),.gt_txp (gt_txp[1] ),.gt_txn (gt_txn[1] ),.gt_rxp (gt_rxp[1] ),.gt_rxn (gt_rxn[1] ),.s_axi_tx_tdata (s_axi_tx_1_tdata ),.s_axi_tx_tkeep (s_axi_tx_1_tkeep ),.s_axi_tx_tlast (s_axi_tx_1_tlast ),.s_axi_tx_tvalid (s_axi_tx_1_tvalid ),.s_axi_tx_tready (s_axi_tx_1_tready ),.m_axi_rx_tdata (m_axi_rx_1_tdata ),.m_axi_rx_tkeep (m_axi_rx_1_tkeep ),.m_axi_rx_tlast (m_axi_rx_1_tlast ),.m_axi_rx_tvalid (m_axi_rx_1_tvalid ),.o_hard_err (o_hard_err_1 ),.o_soft_err (o_soft_err_1 ),.o_channel_up (o_channel_up_1 ),.o_lane_up (o_lane_up_1 ),.i_loopback (i_loopback_1 ),.o_user_clk (o_user_clk_1 ),.o_user_rst (o_user_rst_1 ),.gt0_qplllock_in (gt0_qplllock_in ),.gt0_qpllrefclklost_in (gt0_qpllrefclklost_in ),.gt0_qpllreset_out (),.gt_qpllclk_quad1_in (gt_qpllclk_quad1_in ),.gt_qpllrefclk_quad1_in (gt_qpllrefclk_quad1_in )
);endmodule
三、上板效果
数据收发一切正常
总结
整体设计与8B10B完全一致,完整工程代码可参考:https://github.com/shun6-6/AURORA64B66B_Pro