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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2529|回复: 10

[求助] 关于cadence数模混仿的connect rule

[复制链接]
发表于 2023-7-27 02:25:31 | 显示全部楼层 |阅读模式
50资产
cadence数模混仿自带了一些connect rule,且每种电压的connect rule都有full,full_fast和basic三种模式(如图)。请问这三种模式的含义是什么,对仿真有什么影响呢?我现在有一个数模混合电路,用5V_full_fast和basic数字输出没问题,但用5V_full结果就完全不对了。不知道是我电路的问题还是connect rule有啥限制,所以希望对这个有了解的大神好心解答一下。
QQ截图20230727021542.png

最佳答案

查看完整内容

大致是这样: basic: 只做0/1, 两值逻辑的转换,不考虑模拟负载效应 full: 考虑了0/1/z/x, 4种状态的转换,并且input/ouput/inout port都考虑模拟的负载效应对数字逻辑的影响 full_fast:考虑了0/1/z/x, 4种状态的转换,但只有inout port都考虑模拟的负载效应对数字逻辑的影响 这里考虑模拟负载效应该也只是一定程度的逼近,就是数字到模拟转换时,根据数字的strength类型,给信号源串上一定强度的输出阻抗来近似。 综合来说, ...
发表于 2023-7-27 02:25:32 | 显示全部楼层

大致是这样:
basic: 只做0/1, 两值逻辑的转换,不考虑模拟负载效应
full: 考虑了0/1/z/x, 4种状态的转换,并且input/ouput/inout port都考虑模拟的负载效应对数字逻辑的影响

full_fast:考虑了0/1/z/x, 4种状态的转换,但只有inout port都考虑模拟的负载效应对数字逻辑的影响
这里考虑模拟负载效应该也只是一定程度的逼近,就是数字到模拟转换时,根据数字的strength类型,给信号源串上一定强度的输出阻抗来近似。
综合来说,多数情况下用full_fast应该是可以的, 这种对速度和精度都有一定考虑

发表于 2023-7-27 08:56:12 | 显示全部楼层
connect rule的本质就是一些参数定义,这些参数会被AMS netlister获取到成为netlist的一部分,所以最直接的办法就是调用哪一个rule,就把哪一个rule读清楚,不合适的就自己改掉,另外保存为自己版本的rule,或者调用另外一个rule。仅仅凭名字和感觉来调用是有风险的,需要通读一遍rule文件。
 楼主| 发表于 2023-7-27 17:17:01 | 显示全部楼层


zixin1hao 发表于 2023-7-27 11:04
大致是这样:
basic: 只做0/1, 两值逻辑的转换,不考虑模拟负载效应
full: 考虑了0/1/z/x, 4种状态的转换 ...


感谢回复!从这个角度来看,用full应该是最准确的。那么我用5V_full的connect rule仿真得到的结果不对是否意味着是我电路本身有问题呢?
发表于 2023-7-27 18:07:17 | 显示全部楼层


czrlc 发表于 2023-7-27 17:17
感谢回复!从这个角度来看,用full应该是最准确的。那么我用5V_full的connect rule仿真得到的结果不对是 ...


可能不一定,可以试试从不对的输出开始往回追查信号,看看是不是因为某个数模边界信号不同引起的
虽然full类尝试做得跟模拟更加接近,但工具只能在一些离散的点做些估计,比如对da输出的强度,默认strong强度对应rout=200 ohm左右,pull、weak等其它强度大概对应几K到M欧姆的rout

到底这样离散的输出电阻是不是跟你实际电路一致,工具不知道的,是有可能更粗粒度的考虑(basic/full_fast类)反而跟贴近实际电路的
 楼主| 发表于 2023-7-28 01:26:41 | 显示全部楼层


zixin1hao 发表于 2023-7-27 18:07
可能不一定,可以试试从不对的输出开始往回追查信号,看看是不是因为某个数模边界信号不同引起的
虽然ful ...


好的 我明白了。多谢解答!
发表于 2024-4-3 17:04:02 | 显示全部楼层


zixin1hao 发表于 2023-7-27 02:25
大致是这样:
basic: 只做0/1, 两值逻辑的转换,不考虑模拟负载效应
full: 考虑了0/1/z/x, 4种状态的转换 ...


请问大佬,有没有对virtuoso的ams混仿比较熟,有知道:混仿时有里添加了连接的库有L2E这种,但是一个verilog代码的输出没法传输入给另外一个相同代码的输入端口,是没有D -TO-D这种设置吗?本来以为是verilog编译里面irun.log里面有nostdout,但是第一级分频器的输出又能在仿真波形那里看见,我找了几天也没找到解决办法,事情是这样的:在跑pll混仿的时候,开始都很正常,有一次加了一个新的23分频器的代码之后,就仿不成功了,几个级联的23分频器代码不能连接了,只有第一级23分频器有正确输出,从这之后的分频器在ADE L的仿真波形里都没有输出,导致整个pll环路不能正常工作,卡了好几天实在是不知道怎么改了
发表于 2024-4-3 20:54:15 | 显示全部楼层


liuzhuozhuo 发表于 2024-4-3 17:04
请问大佬,有没有对virtuoso的ams混仿比较熟,有知道:混仿时有里添加了连接的库有L2E这种,但是一个veri ...


如果前级输出是logic, 后级输入也是logic, 工具应该是直连的,都在digital domain, 不需要插入L2E -- E2L的,除非这个中间节点连了其它模拟的net (L2E --analog-- E2L)这样


发表于 2024-4-8 10:44:20 | 显示全部楼层


zixin1hao 发表于 2024-4-3 20:54
如果前级输出是logic, 后级输入也是logic, 工具应该是直连的,都在digital domain, 不需要插入L2E -- E2 ...


谢谢您的回复,还想请教一下,我的电路前级输出是logic, 后级输入也是logic,之前仿真都可以但是好像是系统自动更新或者是在我重新加了一个代码之后,就不能数字到数字的直连了,找不到是哪里出错了,还重新安装了VM和618虚拟机还是不行

发表于 2024-4-8 14:56:00 | 显示全部楼层


zixin1hao 发表于 2024-4-3 20:54
如果前级输出是logic, 后级输入也是logic, 工具应该是直连的,都在digital domain, 不需要插入L2E -- E2 ...


这是一个简单的测试,可以看出这两个代码模块的连接是没有成功的,请问您知道可以怎么修改设置吗?
6c1e0b30dd8ad580f6543cd12f485ad.png
fa2bee4a4dc79104127e02e93f6c36d.png
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-11-22 01:48 , Processed in 0.021860 second(s), 7 queries , Gzip On, Redis On.

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