cadence ams仿真调用verilog问题
问题: 选择ncvlog ncelab ncsim作为数字部分仿真器,netlist and run之后 到elabrate这一步总是提示数字部分的底层模块unresolved,也就是没有找到,尝试在多个地方include底层模块的verilog文件,仍然无法解决,不知道要进行什么样的设置?还是必须要把verilog文件import到cadence的库环境里面来?
说得有点乱,不过熟悉的朋友应该能看懂吧?希望有朋友能够指点一下,搞了2天都没有搞定啊,没有思路的。
thanksdawsfaf
你的Config view可以看到那些unresolved的模块吗?看到的是verilog代码还是别的view?
你好,我在AMS仿真时,如果verilog内部有嵌套模块的话,也遇到了这种情况。之前我是把内部调用的verilog模块,分离出来,再单独做了个symbol。想请教一下,如何能在AMS中直接调用内嵌子模块的verilog模块?
最简单的就是把代码合并到一个文件里面。如果不能合并的话,有两种方式,1)源代码里面写明路径,这样就绕开了netlister, 2) config view的组织里面,通过netister的能够辨识的symbol传递。
你吧要调用的模块放到一个文件里,然后在config中指明这个文件的完整路径
config里面怎么指明文件路径?9
Thanks!我建一个数字模块的top级Symbol,接着在AMS simulation 的ams option中,把文件目录指向调用子模块的verilog文件地址,通过编译了,可以跑了。这是不是你提供的第二种方法,不是很确定?
Thanks!我建了个数字电路Top级的Symbol,接着在AMS Simulation中的ams option选项,把路径指向存放调用的数字verilog的文件地址。同过编译,可以跑了。 这是你建议的第二种方法吧,可以跑了。AMS HED中的symbol,似乎跟Spetre HED中的symbol不太一样?
Symbol的唯一作用就是用图形表示netlister所做的事情,仅仅是一张图而已。关键是netlister需要按照你的设计思想起作用,在各个抽象的电路层次之间拾取正确的单元,就是这么简单。不要被图形化的表示蒙混了。Simulator怎么会懂图形化的东西呢,都是最后的网表产生的矩阵起作用。搞清楚这一点,netlist是怎么生成的就不是那么神秘了,能反映设计者的意图就行!
躲在symbol之后的是CDF参数和CDF参数所调用的netlist procedure.
Thanks! Symbol的作用应该就是跟你说的一样才对。只是遇到一个现象,感觉这两者有点不一致。想请你看看,有没有问题?
在spectre仿真时,config中把模块的view改成symbol后,就好像把这个模块black block掉了;但是在ams仿真时,config中把view改成symbol,却可以继续调用里面的参数。譬如说,rpposab电阻,spectre中把view改成symbol后,tran仿真结果就好像没有这个电阻了,跟短路一样;但是,ams中把rpposab电阻的view改成symbol,通过tran仿真看,是正常的。
不同的Silumator对于相同的Cell有不同的netlist处理方式,纯粹是由于CDF本身也是分Simulator的。每个Simulator有相应的CDF参数组,他们可以看上去一样,也可以完全不一样。
谢谢啦!
各位谁有这种混仿的文档,推荐给新手看看吧,谢谢!
thanks a lot!
我是把top文件里面详细include了各个底层文件的地址,然后对顶层import进库文件中,然后他就把每个底层文件都编译了一遍,其中还有底层的最后出现的是schemetic和symbol没有底层的出现的是functional和symbol。
good job
顶一下,估计以后会用到
我也遇到了相同的问题,哥们能说详细点吗?比如把所有的模块放在一个.v文件里面,然后在导入Verilog的时候需要做哪些特殊的设置?在ADE的设置里面没有发现simulation/ams option 可以把调用子模块的地址指向路径?
哥们,你说在顶层include所有调用到的子模块,把绝对路径写清楚,那么只对顶层那个模块进行Verilog import的话,非底层的模块就同时包含schematic、symbol和Verilog吗,而且顶层各模块是通过schematic联系起来的?我也是这样做的,但是没有得到非底层的schematic,麻烦你说详细一点行吗?
高手,你好我也遇见了这个问题,但是我在config里面看不到那些unresolved的模块,这是怎么回事?
ADE Simulation->solver 中改选oss+irun,然后ams option中把库文件指向所有verilog存放目录
指定之后可以跑起来了,但是结果不对,我再看看,谢谢啦
谢谢分享,很好
谢谢了
我用你的方法,在选cell-based netlister + ncvlog时可以仿真,但使用oss+irun,就报cell unresolved的问题,请是否可图片指示是你是怎么引用library的?谢谢
我在用ams进行混合仿真的时候,怎么数字部分verilog代码的位拼接结果是相反的,{}里面的左边成了低位,右边成了高位?这是什么问题啊,求大神请教
unresolve的问题后来怎么解决的啊?