[英]I got a lot of error when trying to tranfer my verilog code from modelsim to quartus
Hi guys I built a simple design in modelsim with a lot of verilog file.大家好,我在modelsim 中构建了一个简单的设计,其中包含很多verilog 文件。 I am trying to get a RTL schematic so i want to tranfer my project to quartus.
我正在尝试获取 RTL 原理图,因此我想将我的项目转移到 Quartus。 But i got a lot of errors even my code run ok on modelsim.
但是即使我的代码在modelsim上运行正常,我也遇到了很多错误。
module OR_64BITS (out, in1, in2);
input wire [63:0] in1, in2;
output wire [63:0] out;
genvar i;
generate
for (i = 0; i < 64; i = i + 1) begin
or (out[i], in1[i], in2[i]);
end
endgenerate
endmodule
i got this error Error (10644): Verilog HDL error at basic_components_2.v(9): this block requires a name on this line我收到此错误错误 (10644):basic_components_2.v(9) 处的 Verilog HDL 错误:此块需要此行上的名称
for (i = 0; i < 64; i = i + 1) begin
Please help me.请帮我。 Thank you.
谢谢你。
I have a verilog standard pdf file with the version: IEEE Std 1364-2001, 28 September 2001.我有一个 verilog 标准 pdf 文件,版本为:IEEE Std 1364-2001,2001 年 9 月 28 日。
In it, I can find the standard BNF definition for generate
- for
block:在其中,我可以找到
generate
- for
block 的标准 BNF 定义:
generate_loop_statement ::=
for ( genvar_assignment ; constant_expression ; genvar_assignment )
begin : generate_block_identifier { generate_item } end
According to it, the : generate_block_identifier
part is required.根据它,
: generate_block_identifier
部分是必需的。
You can modify your code as @David Shah suggested in comment.您可以按照@David Shah 在评论中的建议修改您的代码。 Add
: a_uniq_block_name
to that for(...)
line.添加
: a_uniq_block_name
到该for(...)
行。
EDIT:编辑:
I have this verilog-2001 standard doc only.我只有这个 verilog-2001 标准文档。 As @Matthew Taylor commented, this requirement has been removed in IEEE Std 1364-2005.
正如@Matthew Taylor 评论的那样,该要求已在 IEEE Std 1364-2005 中删除。 Maybe you can find which standard version your quartus comply with in some deep dialogs.
也许您可以在一些深入的对话框中找到您的 quartus 符合哪个标准版本。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.