记录一个奇怪的现象:
Xilinx的一些IP核例程总会使用这种写法来添加是否添加ila的参数, 以Aurora 64B66B IP核的例程为例:
module aurora_64b66b_0_exdes #
(
parameter USE_CORE_TRAFFIC = 1,
parameter USR_CLK_PCOUNT = 9'd255,
parameter EXAMPLE_SIMULATION = 0
//pragma translate_off
| 1
//pragma translate_on
,
parameter USE_LABTOOLS = 1
//pragma translate_off
& 0
//pragma translate_on
)
(
RESET,
// Error Detection Interface
HARD_ERR,
SOFT_ERR,
DATA_ERR_COUNT,
// Status
LANE_UP,
CHANNEL_UP,
// System Interface
INIT_CLK_P,
INIT_CLK_N,
PMA_INIT,
//70MHz DRP clk for Virtex-6 GTH
DRP_CLK_IN,
// GTX Reference Clock Interface
GTHQ3_P,
GTHQ3_N,
GTHQ5_P,
GTHQ5_N,
// GTX Serial I/O
RXP,
RXN,
TXP,
TXN
);
其中,参数 EXAMPLE_SIMULATION 表示是否为仿真模式,USE_LABTOOLS 表示是否添加vio ila以进行测试。
经过实验测试,这种写

这篇博客揭示了Xilinx IP核例程中使用特殊语法来控制仿真和测试模块的添加,通过pragmatranslate开关实现不同环境下的行为。理解并利用这一技巧可以帮助优化Vivado和ModelSim的配置。
最低0.47元/天 解锁文章
687

被折叠的 条评论
为什么被折叠?



