【发布时间】:2015-10-28 21:56:26
【问题描述】:
我收到了 yosys 的 Can't open include file 错误。是否有用于定义包含目录的命令行参数和/或是否存在用于查找包含文件的默认目录?
【问题讨论】:
我收到了 yosys 的 Can't open include file 错误。是否有用于定义包含目录的命令行参数和/或是否存在用于查找包含文件的默认目录?
【问题讨论】:
包含目录可以作为参数传递给read_verilog:
read_verilog -Ipath/to/includes rtl/main.v
read_verilog -Ipath/to/includes rtl/stuff.v
或者,命令verilog_defaults 可用于设置所有后续调用read_verilog 的选项。例如:
verilog_defaults -add -Ipath/to/includes
read_verilog rtl/main.v
read_verilog rtl/stuff.v
默认情况下,read_verilog 在当前工作目录和包含带有`include 语句的verilog 文件的目录中查找包含文件。
编辑重新。 cmets:
我创建了以下示例:
$ cat a.v
`include "b.v"
module test;
initial $display(`message);
endmodule
$ cat b.v
`define message "Hello World!"
我可以使用yosys -p "read_verilog a.v" 和yosys a.v 成功运行此程序。请编辑问题,使其包含处理包含文件失败的示例。
【讨论】:
always @(stuff) 和 always @* 应该做同样的事情(当东西不包含任何 posedge/negedge 时),它当然不应该干扰包含文件的处理..