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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 14382|回复: 21

[求助] 瞬态仿真中caculator导不出数据的问题

[复制链接]
发表于 2012-7-9 10:45:40 | 显示全部楼层 |阅读模式

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

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

x
大家好,
    小弟最近在做ADC的瞬态仿真,当仿真结束后,想用caculator的tabular results display功能来导出某个时间范围内的数据,比如说ADC输出D9~D0在0us~1000us范围内,每隔3.3333us的数据,但是会报错,错误如下:

-warning-
<calculator>
Evaluation error(ERROR: ("Insufficient virtual memory" 18 t nil ("*ERROR* Insufficient virtual memory. Malloc failed" nil ))).
  Expression: Error

-warning-
<calculator>
  Expression error(does not evaluate to a number). Expression: Error.

      按照表面意思来看,应该是虚拟内存不足,但是我把取点数设置的只有10个点也不行,还是报错!   
      请问有谁碰到过这样或者类似的问题,如何解决?

    谢谢各位了!!
发表于 2012-7-9 11:06:14 | 显示全部楼层
这有可能是Cadence 用自身带的很旧版本的Java的结果。

可以尝试装一下最新版的Java和Jre,然后让Cadence找到这个最新的Java并运行,就应该解决这个问题了。如果是IC6.1 版本,在$CDS_INST_DIR/tools/dfII/bin/viva中,改动

MAXHEAP=-Xmx${CDS_WAVESCAN_MAXHEAP:=1024M}

到256M就可以。
发表于 2012-7-9 11:08:03 | 显示全部楼层
看看。。。。。
 楼主| 发表于 2012-7-9 11:18:29 | 显示全部楼层
回复 2# amodaman


    我用的是Cadence IC5141版本,您所说的Java和Jre这个我不懂,呵呵,请问应该怎么做?

   谢谢您了!
发表于 2012-7-9 11:29:50 | 显示全部楼层
那要补很多IT/UNIX的课哦,才能摆弄这个东西起来的.
 楼主| 发表于 2012-7-9 11:45:50 | 显示全部楼层
本帖最后由 duke2050 于 2012-7-9 11:49 编辑

回复 5# amodaman


    额,那请问您有没有简单的方法可以把ADC的数据导出来啊??谢谢您了!!
  
   另外,之前我仿真了256个点和512个点的时候,有时候能够导出数据,有时候就报错,但是过很长时间后,又能把数据导出来,不知道是为什么??
发表于 2012-7-9 12:18:25 | 显示全部楼层
你可以试着关掉现在的Cadence session, 然后在命令行打 wavescan ,只启动最小的部分。然后从Result Browser中装载你前面运行过的仿真数据,然后再照原样输出成表格。 如果这个不行的话,用简单的 printf 命令,每隔几个微秒打印一次到文件中,也是可以的,这样就彻底绕过了wavescan和Java了。你会用OCEAN不?这个需要打几行最基本的OCEAN命令,让系统找到你的ResultDir, 然后用
myfile=outfile("mydata.txt" "w")
for(n 0 1000000
prTime=n*3e-6
fprintf(myfile, "%f  %.5f\n" prTime value(VT("/my_output_nde") prTime))
) ;; for n
close(myfile)
 楼主| 发表于 2012-7-9 22:48:16 | 显示全部楼层
回复 7# amodaman


    amodaman 牛人啊!

   按照您说的第一种方法,在terminal中输入wavescan,启动Result Browser,装载仿真数据,再用caculator就可以输出了,但是输出了D9~D5时,D4就导不出来了,然后我就又重新在terminal中输入wavescan,重复步骤,导出D4~D0,呵呵!
    请问这种方法的原理是什么??呵呵,很是不懂!

    另外,您所说的第二种方法我没尝试,因为不会ocean语言,呵呵,希望您能详细的讲解下,免得第一种方法不行的时候使用第二种方法,呵呵!!

    真心感谢您!!
发表于 2012-7-9 23:07:24 | 显示全部楼层
回复 8# duke2050

第一种方法就是绕过了wavescan 程序自带的java所认为的内存不够的问题。
 楼主| 发表于 2012-7-9 23:10:36 | 显示全部楼层
回复 9# amodaman


    呵呵,谢谢您的指教!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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

GMT+8, 2025-2-1 22:56 , Processed in 0.021363 second(s), 7 queries , Gzip On, Redis On.

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