|
EDA365欢迎您!
您需要 登录 才可以下载或查看,没有帐号?注册
x
一下是对一个模块的例化:
* |4 T; S( ]" g/ _ Lm1 #(`UART_FIFO_REC_WIDTH) m1_inst(: c, F m) v4 H9 d8 |1 P
.clk( clk ), * M! `6 L* n0 L& O1 `
..........
) k( p8 G; C D2 M8 S: B);
& W& T: h4 s& C( a E% d
0 _7 O, P4 q. _7 {) p该模块中定义的第一个参数是 parameter fifo_width = `UART_FIFO_WIDTH;5 {* N1 @. i4 x. U5 ^5 q+ d
8 k9 l" `1 X/ C2 {% @ s在另一个专门的文件里定义了:4 S# t( b! d. b3 J. a! _
`define UART_FIFO_WIDTH 8; B- w' E/ _+ D8 Q5 O
`define UART_FIFO_REC_WIDTH 111 M# m& N K2 Y4 V% O" v
& {' h; O, r3 g% S8 j
一开始我以为#(`UART_FIFO_REC_WIDTH)的意思是延时那么多,方便仿真。。。后来觉得不对,不是延时,因为又不是在做赋值。。。
) l' W4 a7 ^) T; ~" D/ p, b& K, T, i& t/ G! X% v/ |
编译后看RTL图发现,该模块UART_FIFO_WIDTH的值全部替换成了UART_FIFO_REC_WIDTH的值,到这里我大概明白这里的用意了。觉得很奇怪,以前从没遇到过。。。 |
|