微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 综合技术问答 > EDA使用问答 > cadence仿真问题

cadence仿真问题

时间:03-15 整理:3721RD 点击:
请问大家一下,cadence仿真的时候,调用库文件仿真,结果出现:s05mixdtssa01v10.scs 6 :illegal library definition in netlist
哪位高手给予解答下啊,谢谢

搞不清楚,关注中

谁能给我解答一下啊!拜托

我也有同样的问题,顶一下!

我也有同样的问题,顶一下!AAAAAAAAAAAAAAAAAAAAAA

工艺库Model Library设置的不对。



同样的问题!小编解决了没呀?楼上的大神能不能说详细一点儿啊?



我知道这个问题怎么解决了,出现这个错误是因为你这个s05mixdtssa01v10.scs 里面既包含了TT、FT、ST等。需要把这些个不同的分开来。比如,你可以在同一个目录下新建立一个s05mixdtssa01v10_tt.scs ,内容大致如下:
include "./s05mixdtssa01v10.scs" section=TT_MOS5
include "./s05mixdtssa01v10.scs" section=TT_MOS12
include "./s05mixdtssa01v10.scs" section=TT_MOS24
include "./s05mixdtssa01v10.scs" section=TT_RES
等等。你需要改的仅仅是section=后面的值,后面的值在前面的那个.scs里面找,里面有哪些就把那些include进去。然后仿真的时候就用s05mixdtssa01v10_tt.scs文件。同理,根据需要可以搞出s05mixdtssa01v10_ft.scs、 s05mixdtssa01v10_st.scs等文件。




不错!
不过我认为实际上这是工艺库PDK做的不好。
中芯国际和台积电等成熟的工艺库,你进Analog Design Environment,选择使用的仿真器(例如默认的spectre没改)的同时,
就会自动帮你设置好,仿真模型。
在中芯国际的工艺库中,这个功能是通过一个叫做libInitCustomExit.il的文件实现的
找到你的PDK里面的对应文件,可以发现有如下的代码(或者类似的)




  1. when( isContextLoaded("schView")
  2. envSetVal("asimenv.startup" "simulator" 'string "spectre")
  3. tools = envGetAvailableTools()
  4. case( libName
  5. ( "smic18mmrf"
  6. when( member("spectre" tools)
  7. asiSetEnvOptionVal(
  8. asiGetTool('spectre) "modelFiles"
  9. list(
  10. list(strcat( libPath "/../models/spectre/ms018_v1p7_spe.lib") "tt")
  11. list(strcat( libPath "/../models/spectre/ms018_v1p7_spe.lib") "bjt_tt")
  12. list(strcat( libPath "/../models/spectre/ms018_v1p7_spe.lib") "res_tt")
  13. list(strcat( libPath "/../models/spectre/ms018_v1p7_spe.lib") "mim_tt")
  14. list(strcat( libPath "/../models/spectre/ms018_v1p7_res_spe.ckt") )
  15. list(strcat( libPath "/../models/spectre/ms018_rf_v1p5_spe.lib") "tt")
  16. list(strcat( libPath "/../models/spectre/ms018_rf_v1p5_spe.lib") "res_tt")
  17. list(strcat( libPath "/../models/spectre/ms018_rf_v1p5_spe.lib") "mim_tt")
  18. list(strcat( libPath "/../models/spectre/rf018_m6_res_spe.lib") "res_tt")
  19. list(strcat( libPath "/../models/spectre/ms018_rf_v1p5_diff_ind_spe.ckt") )
  20. list(strcat( libPath "/../models/spectre/ms018_rf_v1p5_spri_ind_spe.ckt") )
  21. list(strcat( libPath "/../models/spectre/ms018_rf_v1p5_var_spe.ckt") )
  22. )
  23. )
  24. ) ; ** when asiTool **
  25. )))


复制代码


然后你必须保证你的模型定义正确,并且确实就在上述描述的目录中,正确存在。
这样就能达到自动配置工艺库的效果了

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top