SystemVerilog高手看过来。怎样将generate语句产生的一组interface传到program里。
时间:10-02
整理:3721RD
点击:
假设我有一组interface,数量由parameter spi_count决定。
在顶层是这样例化的:
- genvar i;
- generate for (i=0;i<spi_count;i++)
- begin:gen
- spi_interface spi_if (.clk(clk));
- end
- endinterface
现在有两个问题
1)我想把这一组spi_if全都传到一个program里去,请问program里该怎么写?
2)我想访问某个spi_if内部的东西,该怎样写?试了下,直接明确地写数字gen[0].spi_if.xxx是可以的,但是如果使用一个变量gen[k].spi_if.xxx就不认。
变量只能用在generate里面,如果你只有一个program,但需要遍历所有的element,你可能需要把generate插进programl里面。做一两个试试先,然后再写成generate。
