所有语法均可在 Tools -> Language Templates -> verilog -> IP Integrator HDL中找到!!!
提示信息
- 专有注释均以
(* *)
分界,无需额外注释符号标识(可通过//
进行注释)- 专有注释均写在修饰对象上一行,不可隔行注释
- 所有时钟频率均以单位赫兹标识(如10MHz => 10000000)
- 总线信号多个端口均指定一个总线端口名以进行匹配
时钟复位相关
- 时钟信号
- 配置信息:
(* X_INTERFACE_INFO = "xilinx.com:signal:clock:1.0 <clock_port_name> CLK" *)
- 参数信息:
(* X_INTERFACE_PARAMETER = "ASSOCIATED_BUSIF <AXI_interface_name>, ASSOCIATED_RESET <reset_port_name>, FREQ_HZ 100000000, FREQ_TOLERANCE_HZ 0" *)
注:如果需要标识多个总线端口,各总线间使用:
分隔
- 复位信号
- 配置信息:
(* X_INTERFACE_INFO = "xilinx.com:signal:reset:1.0 <reset_port_name> RST" *)
- 参数信息:
(* X_INTERFACE_PARAMETER = "POLARITY ACTIVE_HIGH" *)
注:默认低复位
总线接口相关
- AXI-Stream
- 配置信息:
(* X_INTERFACE_INFO = "xilinx.com:interface:axis:1.0 <interface_name> TDATA" *)
(* X_INTERFACE_INFO = "xilinx.com:interface:axis:1.0 <interface_name> TKEEP" *)
(* X_INTERFACE_INFO = "xilinx.com:interface:axis:1.0 <interface_name> TLAST" *)
(* X_INTERFACE_INFO = "xilinx.com:interface:axis:1.0 <interface_name> TUSER" *)
(* X_INTERFACE_INFO = "xilinx.com:interface:axis:1.0 <interface_name> TVALID" *)
(* X_INTERFACE_INFO = "xilinx.com:interface:axis:1.0 <interface_name> TVALID" *)
- 参数信息:
(* X_INTERFACE_PARAMETER = "CLK_DOMAIN <value>,PHASE <value>,FREQ_HZ <value>,LAYERED_METADATA <value>,HAS_TLAST <value>,HAS_TKEEP <value>,HAS_TSTRB <value>,HAS_TREADY <value>,TUSER_WIDTH <value>,TID_WIDTH <value>,TDEST_WIDTH <value>,TDATA_NUM_BYTES <value>" *)
注:部分参数可自动计算,无需额外填写
- GMII
- 配置信息:
(* X_INTERFACE_INFO = "xilinx.com:interface:gmii:1.0 <interface_name> TXD" *)
input [7:0] <s_txd>, // Ethernet transmit data. (required)
(* X_INTERFACE_INFO = "xilinx.com:interface:gmii:1.0 <interface_name> TX_EN" *)
input <s_tx_en>, // Ethernet transmit enable. (required)
(* X_INTERFACE_INFO = "xilinx.com:interface:gmii:1.0 <interface_name> TX_ER" *)
input <s_tx_er>, // Ethernet transmit error. (optional)
(* X_INTERFACE_INFO = "xilinx.com:interface:gmii:1.0 <interface_name> RXD" *)
output [7:0] <s_rxd>, // Ethernet receive data. (required)
(* X_INTERFACE_INFO = "xilinx.com:interface:gmii:1.0 <interface_name> RX_DV" *)
output <s_rx_dv>, // Ethernet receive data valid. (required)
(* X_INTERFACE_INFO = "xilinx.com:interface:gmii:1.0 <interface_name> RX_ER" *)
output <s_rx_er>, // Ethernet receive error. (required)
(* X_INTERFACE_INFO = "xilinx.com:interface:gmii:1.0 <interface_name> CRS" *)
output <s_crs>, // Ethernet carrier sense. (optional)
(* X_INTERFACE_INFO = "xilinx.com:interface:gmii:1.0 <interface_name> COL" *)
output <s_col>, // Ethernet collision. (optional)
(* X_INTERFACE_INFO = "xilinx.com:interface:gmii:1.0 <interface_name> TX_CLK" *)
output <s_tx_clk>, // Ethernet transmit clock for 10/100Mb/s Ethernet speeds (optional)
(* X_INTERFACE_INFO = "xilinx.com:interface:gmii:1.0 <interface_name> GTX_CLK" *)
input <s_gtx_clk>, // Ethernet transmit clock for 1Gb/s Ethernet (optional)
(* X_INTERFACE_INFO = "xilinx.com:interface:gmii:1.0 <interface_name> RX_CLK" *)
output <s_rx_clk>, // Ethernet receive clock (optional)
- SFP
- 配置信息:
(* X_INTERFACE_INFO = "xilinx.com:interface:sfp:1.0 <interface_name> TXN" *)
input <s_txn>, // Transmit Data N of differential pair (required)
(* X_INTERFACE_INFO = "xilinx.com:interface:sfp:1.0 <interface_name> RXN" *)
output <s_rxn>, // Receive Data N of differential pair (required)
(* X_INTERFACE_INFO = "xilinx.com:interface:sfp:1.0 <interface_name> TXP" *)
input <s_txp>, // Transmit Data P of differential pair (required)
(* X_INTERFACE_INFO = "xilinx.com:interface:sfp:1.0 <interface_name> RXP" *)
output <s_rxp>, // Receive Data P of differential pair (required)
(* X_INTERFACE_INFO = "xilinx.com:interface:sfp:1.0 <interface_name> RX_LOS" *)
output <s_rx_los>, // Receiver Loss of Signal Indication (optional)
(* X_INTERFACE_INFO = "xilinx.com:interface:sfp:1.0 <interface_name> MOD_ABS" *)
output <s_mod_abs>, // Module Absent (SFP+ MOD_ABS =SFP MOD-DEF0) (optional)
(* X_INTERFACE_INFO = "xilinx.com:interface:sfp:1.0 <interface_name> SCL" *)
input <s_scl>, // Serial Interface Clock (SFP+SCL = SFP MOD-DEF1) (optional)
(* X_INTERFACE_INFO = "xilinx.com:interface:sfp:1.0 <interface_name> SDA" *)
inoutput <s_sda>, // Serial Interface Data Line (SFP+ SDA = SFP MOD-DEF2) (optional)
(* X_INTERFACE_INFO = "xilinx.com:interface:sfp:1.0 <interface_name> TX_DISABLE" *)
input <s_tx_disable>, // Transmitter Disable; Turns off transmitter laser output (optional)
(* X_INTERFACE_INFO = "xilinx.com:interface:sfp:1.0 <interface_name> TX_FAULT" *)
output <s_tx_fault>, // Module Transmitter Fault (optional)