在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 1567|回复: 12

[求助] finesim如何仿真带有verilog-a的模块

[复制链接]
发表于 2023-10-12 18:02:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
想向大佬请教一下,用finesim跑仿真时,电路有一个模块需要用Verilog-a写的一个module,请问该如何把verilog-a导入到test bench中,以及netlist该做那些处理?
发表于 2023-10-12 18:36:19 | 显示全部楼层

`include "constants.vams"
`include "disciplines.vams"
module jfet(d, g, s);
parameter real Vto = -2.0 from (-inf:inf); // Threshold voltage
parameter real Beta = 1.0e-4 from [0:inf);// Transconductance
parameter real Lambda = 0.0 from [0:inf); // Channel modulation
electrical d, g, s;
real Id, Vgs, Vds;
analog begin
Vgs = V(g,s);
Vds = V(d,s);
if (Vds <= Vgs-Vto)
Id = Beta*(1+Lambda*Vds)*Vds*(2*(Vgs-Vto)- Vds);
else if (Vgs-Vto < Vds)
Id = Beta*(1+Lambda*Vds)*(Vgs-Vto)*(Vgs-Vto);
I(d,s) <+ Id;
end
endmodule

x1 drain gate source jfet Beta=1.1e-4 lambda=0.01

以上,我直接hspice手册里面扒的,直接调用就好了啊,和调用subckt一个方式。

我自己倒没这么用过,我都是virtuoso环境下建立verilog-a的view的代码,然后存成symbol,就直接能协同仿真;hsipice没这么直接用过,但感觉应该一样。

发表于 2023-10-12 22:26:58 | 显示全部楼层
直接Library Manager里面新建一个cellView,类型选“veriloga”,确认后会自动打开内置文本编辑器,把代码贴进去,保存并编译(内置文本编辑器工具栏那个带箭头的保存按钮),代码无误编译成功后,会提示你创建symbol,然后在你的上一层schematic里面调用你刚刚生成的symbol,就跟正常画原理图一样的。
之后正常搭建tesbench进行仿真,仿真器会自动识别的
发表于 2023-10-13 08:41:38 | 显示全部楼层
在抽取netlist的时候,如果抽不出来可以在view list里面加一个veriloga,然后就可以抽出网表了。
发表于 2023-10-13 09:11:15 | 显示全部楼层


suncold 发表于 2023-10-12 22:26
直接Library Manager里面新建一个cellView,类型选“veriloga”,确认后会自动打开内置文本编辑器,把代码 ...


请问virtuoso , 电路同时有mosschematic .  也有行为模式 verilogAfile .  从上转 netlist, 如何指定某个cell verilogA  ?
Thank you

发表于 2023-10-13 09:34:17 | 显示全部楼层


andy2000a 发表于 2023-10-13 09:11
请问virtuoso 内, 如电路同时有mos的schematic .  也有行为模式 verilogAfile .  从上转 netlist, 如何指 ...


那就需要建一个config,绑定到testbench,然后在config里面给模块指定使用veriloga的view
 楼主| 发表于 2023-10-13 11:33:45 | 显示全部楼层


suncold 发表于 2023-10-12 22:26
直接Library Manager里面新建一个cellView,类型选“veriloga”,确认后会自动打开内置文本编辑器,把代码 ...


因为是用finesim仿真的,在导出网表的时候用的veriloga建成的symbol报错了
Unable to descend into any of the views defined in the view list, 'auCdl schematic', for the
instance 'I1' in cell 'esd_stimulate'. Either add one of these views to the library 'sim_wej',
cell 'esd_sim' or modify the view list to contain an existing view.


发表于 2023-10-13 13:52:59 | 显示全部楼层


Forbetter 发表于 2023-10-13 11:33
因为是用finesim仿真的,在导出网表的时候用的veriloga建成的symbol报错了
Unable to descend into any o ...


没用过finesim,不知道你是怎么用的?如果是集成到ADE里面直接仿真的话,检查一下ADE设置的“Setup - Environment”

“Environment Options”窗口的第一行“Switch View List”中,应该要有“veriloga”项,如果没有的话,自己加上去
这一行指定了生成网表时,层次化电路往下一层展开的方向
你的报错信息里面,就是告诉你,仿真器生成网表的时候,找不到展开电路的方向
发表于 2024-2-4 09:29:19 | 显示全部楼层
我记得finesim只支持verilog的代码,verilog-a,verilog-ams的应该都不支持。
发表于 2024-3-1 17:06:38 | 显示全部楼层
可以不生成symbol, 采用纯文本的方式:
首先,你需要事先写好一个verilog-a的文件,后缀为.va 例如:以二楼的例子,假设叫jfet.va
然后,在你的.sp激励文件中调用.va文件,例如:.hdl ’verilog-a文件路径/jfet.va‘
最后,按照调用子电路的方式使用该模块,例如:x1 drain gate source jfet Beta=1.1e-4 lambda=0.01
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-22 18:32 , Processed in 0.024567 second(s), 5 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表