请教:generate block,DC综合会报syntax Error,这是什么原因
时间:10-02
整理:3721RD
点击:
verilog写法:
generate begin if(PARAMETER1)begin
a = ……;
b = ……;
end
else begin
a = ……;
b = ……;
end
endendgenerate
DC 报错 syntax error on a obsolute verilog 2001 construct standalone generate block (VER-946)
请高手指点
最后应该是endgenerate......
不是这个原因,我只是在论坛上没写全,compile是没有问题的!
确实没写全,比如赋值还没有assign。不如你先写全了吧。
定义成register不用写assign,在always里面也是这么写的, 你说的事情不是DC报错的原因,我只是搞不清楚那个错误信息代表什么意思
你用什么命令读取RTL?
Anyway ,PLS refer to [12.4.2 Conditional generate ]@VERilog IEEE STD(1364-2005)
请教,您说的是指什么意思?DC不支持某些写法么?
dc的通用脚本,每次只要根据设计改约束就行
我使用过generate语法。在DC中,read_verilog无法读取包含generate的RTL,只有read_sverilog才能正常读取。
read_sverilog应该是对应system verilog吧,公司的顶层脚本应该不允许改的,不过我的code不是每一个generate block,DC都会报错,只会某些会报错,很奇怪! 不过还是谢谢你~
generate块的begin-end必须有块名,不知道你写了没。
还有dc读verilog2001代码最好用analyze+elaborate,不要用read_verilog。
还是不要用这样的语法吧
