📄 xilinx_pci_exp_dsport.v
字号:
//------------------------------------------------------------------------------//--//-- This file is owned and controlled by Xilinx and must be used solely//-- for design, simulation, implementation and creation of design files//-- limited to Xilinx devices or technologies. Use with non-Xilinx//-- devices or technologies is expressly prohibited and immediately//-- terminates your license.//--//-- Xilinx products are not intended for use in life support//-- appliances, devices, or systems. Use in such applications is//-- expressly prohibited.//--//-- **************************************//-- ** Copyright (C) 2001, Xilinx, Inc. **//-- ** All Rights Reserved. **//-- **************************************//--//------------------------------------------------------------------------------//-- Filename: XILINX_PCI_EXP_EP.v//--//-- Description: PCI Express Endpoint Core Reference Design Wrapper.//-- //--//------------------------------------------------------------------------------//`include "board_common.v"module `XILINX_PCI_EXP_DSPORT ( // PCI Express Fabric Interface pci_exp_txp, pci_exp_txn, pci_exp_rxp, pci_exp_rxn, // Transaction (TRN) Interface trn_clk, trn_reset_n, trn_lnk_up_n, cfg_trn_pending_n, // Tx trn_td, trn_trem_n, trn_tsof_n, trn_teof_n, trn_tsrc_rdy_n, trn_tdst_rdy_n, trn_tsrc_dsc_n, trn_terrfwd_n, trn_tdst_dsc_n, trn_tbuf_av, // Rx trn_rd, trn_rrem_n, trn_rsof_n, trn_reof_n, trn_rsrc_rdy_n, trn_rsrc_dsc_n, trn_rdst_rdy_n, trn_rerrfwd_n, trn_rnp_ok_n, trn_rbar_hit_n, trn_rfc_nph_av, trn_rfc_npd_av, trn_rfc_ph_av, trn_rfc_pd_av, trn_rfc_cplh_av, trn_rfc_cpld_av, // Host (CFG) Interface cfg_do, cfg_rd_wr_done_n, cfg_di, cfg_byte_en_n, cfg_dwaddr, cfg_wr_en_n, cfg_rd_en_n, cfg_err_cor_n, cfg_err_ur_n, cfg_err_ecrc_n, cfg_err_cpl_timeout_n, cfg_err_cpl_abort_n, cfg_err_cpl_unexpect_n, cfg_err_posted_n, cfg_err_tlp_cpl_header, cfg_interrupt_n, cfg_interrupt_rdy_n, cfg_turnoff_ok_n, cfg_to_turnoff_n, cfg_pcie_link_state_n, cfg_pm_wake_n, cfg_bus_number, cfg_device_number, cfg_function_number, cfg_status, cfg_command, cfg_dstatus, cfg_dcommand, cfg_lstatus, cfg_lcommand, // System (SYS) Interface sys_clk_p, sys_clk_n, sys_reset_n ); //synthesis syn_noclockbuf=1 //------------------------------------------------------- // 1. PCI Express Fabric Interface //------------------------------------------------------- // Tx output [(`PCI_EXP_LINK_WIDTH - 1):0] pci_exp_txp; output [(`PCI_EXP_LINK_WIDTH - 1):0] pci_exp_txn; // Rx input [(`PCI_EXP_LINK_WIDTH - 1):0] pci_exp_rxp; input [(`PCI_EXP_LINK_WIDTH - 1):0] pci_exp_rxn; wire [(`PCI_EXP_CFG_CFG_WIDTH - 1):0] cfg_cfg; //------------------------------------------------------- // 2. Transaction (TRN) Interface //------------------------------------------------------- // Common output trn_clk; output trn_reset_n; output trn_lnk_up_n; // Tx input [(64 - 1):0] trn_td; input [(8 - 1):0] trn_trem_n; input trn_tsof_n; input trn_teof_n; input trn_tsrc_rdy_n; output trn_tdst_rdy_n; input trn_tsrc_dsc_n; input trn_terrfwd_n; output trn_tdst_dsc_n; output [(`PCI_EXP_TRN_BUF_AV_WIDTH - 1):0] trn_tbuf_av; // Rx output [(64 - 1):0] trn_rd; output [(8 - 1):0] trn_rrem_n; output trn_rsof_n; output trn_reof_n; output trn_rsrc_rdy_n; output trn_rsrc_dsc_n; input trn_rdst_rdy_n; output trn_rerrfwd_n; input trn_rnp_ok_n; output [(`PCI_EXP_TRN_BAR_HIT_WIDTH - 1):0] trn_rbar_hit_n; output [(`PCI_EXP_TRN_FC_HDR_WIDTH - 1):0] trn_rfc_nph_av; output [(`PCI_EXP_TRN_FC_DATA_WIDTH - 1):0] trn_rfc_npd_av; output [(`PCI_EXP_TRN_FC_HDR_WIDTH - 1):0] trn_rfc_ph_av; output [(`PCI_EXP_TRN_FC_DATA_WIDTH - 1):0] trn_rfc_pd_av; output [(`PCI_EXP_TRN_FC_HDR_WIDTH - 1):0] trn_rfc_cplh_av; output [(`PCI_EXP_TRN_FC_DATA_WIDTH - 1):0] trn_rfc_cpld_av; //------------------------------------------------------- // 3. Host (CFG) Interface //------------------------------------------------------- output [(`PCI_EXP_CFG_DATA_WIDTH - 1):0] cfg_do; input [(`PCI_EXP_CFG_DATA_WIDTH - 1):0] cfg_di; input [(`PCI_EXP_CFG_DATA_WIDTH/8 - 1):0] cfg_byte_en_n; input [(`PCI_EXP_CFG_ADDR_WIDTH - 1):0] cfg_dwaddr; output cfg_rd_wr_done_n; input cfg_wr_en_n; input cfg_rd_en_n; input cfg_err_cor_n; input cfg_err_ur_n; input cfg_err_ecrc_n; input cfg_err_cpl_timeout_n; input cfg_err_cpl_abort_n; input cfg_err_cpl_unexpect_n; input cfg_err_posted_n; input cfg_interrupt_n; output cfg_interrupt_rdy_n; input cfg_turnoff_ok_n; output cfg_to_turnoff_n; input cfg_pm_wake_n; input cfg_trn_pending_n; output [(`PCI_EXP_LNK_STATE_WIDTH - 1):0] cfg_pcie_link_state_n; input [(`PCI_EXP_CFG_CPLHDR_WIDTH - 1):0] cfg_err_tlp_cpl_header; output [(`PCI_EXP_CFG_BUSNUM_WIDTH - 1):0] cfg_bus_number; output [(`PCI_EXP_CFG_DEVNUM_WIDTH - 1):0] cfg_device_number; output [(`PCI_EXP_CFG_FUNNUM_WIDTH - 1):0] cfg_function_number; output [(`PCI_EXP_CFG_CAP_WIDTH - 1):0] cfg_status; output [(`PCI_EXP_CFG_CAP_WIDTH - 1):0] cfg_command; output [(`PCI_EXP_CFG_CAP_WIDTH - 1):0] cfg_dstatus; output [(`PCI_EXP_CFG_CAP_WIDTH - 1):0] cfg_dcommand; output [(`PCI_EXP_CFG_CAP_WIDTH - 1):0] cfg_lstatus; output [(`PCI_EXP_CFG_CAP_WIDTH - 1):0] cfg_lcommand; //------------------------------------------------------- // 4. System (SYS) Interface //------------------------------------------------------- input sys_clk_p; input sys_clk_n; input sys_reset_n; genvar i; wire sys_clk_c; wire sys_reset_n_c; wire trn_clk_c; wire trn_reset_n_c; wire trn_lnk_up_n_c; wire trn_tsof_n_c; wire trn_teof_n_c; wire trn_tsrc_rdy_n_c; wire trn_tdst_rdy_n_c; wire trn_tsrc_dsc_n_c; wire trn_terrfwd_n_c; wire trn_tdst_dsc_n_c; wire [(64 - 1):0] trn_td_c; wire [(8 - 1):0] trn_trem_n_c; wire [(`PCI_EXP_TRN_BUF_AV_WIDTH - 1):0] trn_tbuf_av_c; wire trn_rsof_n_c; wire trn_reof_n_c; wire trn_rsrc_rdy_n_c; wire trn_rsrc_dsc_n_c; wire trn_rdst_rdy_n_c; wire trn_rerrfwd_n_c; wire trn_rnp_ok_n_c; wire [(64 - 1):0] trn_rd_c; wire [(8 - 1):0] trn_rrem_n_c; wire [(`PCI_EXP_TRN_BAR_HIT_WIDTH - 1):0] trn_rbar_hit_n_c; wire [(`PCI_EXP_TRN_FC_HDR_WIDTH - 1):0] trn_rfc_nph_av_c; wire [(`PCI_EXP_TRN_FC_DATA_WIDTH - 1):0] trn_rfc_npd_av_c; wire [(`PCI_EXP_TRN_FC_HDR_WIDTH - 1):0] trn_rfc_ph_av_c; wire [(`PCI_EXP_TRN_FC_DATA_WIDTH - 1):0] trn_rfc_pd_av_c; wire [(`PCI_EXP_TRN_FC_HDR_WIDTH - 1):0] trn_rfc_cplh_av_c; wire [(`PCI_EXP_TRN_FC_DATA_WIDTH - 1):0] trn_rfc_cpld_av_c; wire [(`PCI_EXP_CFG_DATA_WIDTH - 1):0] cfg_do_c; wire [(`PCI_EXP_CFG_DATA_WIDTH - 1):0] cfg_di_c; wire [(`PCI_EXP_CFG_ADDR_WIDTH - 1):0] cfg_dwaddr_c; wire [(`PCI_EXP_CFG_DATA_WIDTH/8 - 1):0] cfg_byte_en_n_c; wire [(`PCI_EXP_CFG_CPLHDR_WIDTH - 1):0] cfg_err_tlp_cpl_header_c; wire cfg_wr_en_n_c; wire cfg_rd_en_n_c; wire cfg_rd_wr_done_n_c; wire cfg_err_cor_n_c; wire cfg_err_ur_n_c; wire cfg_err_ecrc_n_c; wire cfg_err_cpl_timeout_n_c; wire cfg_err_cpl_abort_n_c; wire cfg_err_cpl_unexpect_n_c; wire cfg_err_posted_n_c; wire cfg_interrupt_n_c; wire cfg_interrupt_rdy_n_c; wire cfg_turnoff_ok_n_c; wire cfg_to_turnoff_n; wire cfg_pm_wake_n_c; wire cfg_trn_pending_n_c; wire [(`PCI_EXP_LNK_STATE_WIDTH - 1):0] cfg_pcie_link_state_n_c; wire [(`PCI_EXP_CFG_BUSNUM_WIDTH - 1):0] cfg_bus_number_c; wire [(`PCI_EXP_CFG_DEVNUM_WIDTH - 1):0] cfg_device_number_c; wire [(`PCI_EXP_CFG_FUNNUM_WIDTH - 1):0] cfg_function_number_c; wire [(`PCI_EXP_CFG_CAP_WIDTH - 1):0] cfg_status_c; wire [(`PCI_EXP_CFG_CAP_WIDTH - 1):0] cfg_command_c; wire [(`PCI_EXP_CFG_CAP_WIDTH - 1):0] cfg_dstatus_c; wire [(`PCI_EXP_CFG_CAP_WIDTH - 1):0] cfg_dcommand_c; wire [(`PCI_EXP_CFG_CAP_WIDTH - 1):0] cfg_lstatus_c; wire [(`PCI_EXP_CFG_CAP_WIDTH - 1):0] cfg_lcommand_c; // Clock Pad Instance GT11CLK_MGT sys_clk_mgt (
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -