马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
本帖最后由 lovol 于 2025-4-30 23:32 编辑
初学Cadence数模混合仿真,按照网上的教程操作(如:https://zhuanlan.zhihu.com/p/8280687951)
进行到最后一步ADE netlist and run时报错数千条,全都是关于verilog文件的,以此帖求助并作为记录。
看了以后发现可以归纳为几类错误:
【1】Unexpected quote character "`". 和 Expression is missing a terminating quote character.
对应代码使用“·define”定义参数的部分
【2】Unexpected end of line.
对应模块端口部分的代码:
module xxx (
input a,
input b,
......
【3】`input' is a no independent source value specified. Set to zero. 和 `o' (first char of `output') is not a valid SPICE element type.
分别对应模块端口定义部分的多位输入和输出代码:
module xxx (
input [3:0] a,
output b,
......
【4】Not enough nodes - require an even number.
对应网线变量同时定义奇数个变量的情况:
wire a, b, c;
【5】Expected 2 controlling nodes, but found 1.
对应网线变量同时定义多个变量且换行的情况:
wire a, b, c, d,
e, f, g, h;
或者always块里的if语句的else行:
else a <= b;
【6】`a' (first char of `assign') is not a valid SPICE element type.
对应连续赋值语句:
assign a = b;
咦,难道我建立cellview的时候就设置错了?
【7】Unexpected character `;' in netlist. 和 Expression is missing a terminating quote character.
对应连续赋值中的多重条件判断语句:
assign a = (b)? c : (d)? e : f ;
或者always块里对一个变量赋多bit的常数:
a <= 4'b0000;
【8】.clk_sample is not recognised as a valid SPICE control card.
对应子模块调用的代码:
moduleA u_module(
.clk_sample(clk_sample),
.b(b),
......
【9】Illegal node name: [reg_clk_sam[1:0]
对应always块里的拼接赋值语句:
always@(posedge clk)begin
a <= {reg_clk_sam[1:0], b};
......
【10】`if' is a no independent source value specified. Set to zero.
对应always块里的if语句:
always@(posedge clk)begin
if(a)
......
【11】Expected 1 controlling voltage sources, but found 0.
对应always块里的赋值语句:
a <= 0;
我感觉自己应该犯了一个很蠢的错误,但是菜鸟实在不知道是什么,求大佬解惑。
另外求系统学习AMS仿真的教学资源,拜托了
|