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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

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

[求助] 如何对比两个相同目的程序的效率

[复制链接]
发表于 2011-5-5 20:36:55 | 显示全部楼层 |阅读模式

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

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

x
就是我和我同学都针对一个例子写了程序 实现相同的功能。

但是在quartus里面编译以后 生成的.sof和.pof文件是一样大的。

看不出来谁的代码效率高。

请问各位高手 该怎么办?
发表于 2011-5-5 21:35:33 | 显示全部楼层
好冷清啊。。。
发表于 2011-5-5 22:34:28 | 显示全部楼层
"生成的.sof和.pof文件是一样大的",FPGA最后的烧写文件和FPGA的型号有关系,而和你写的程序没一点关系都没有。只要FPGA型号是一样的,最后生成的文件都是一样大的。
你要比较程序的效率,最好通过仿真,定量的分析。比如耗费多少个时钟周期,综合最快可以跑到多少时钟频率啊。这些作为指标。
发表于 2011-5-6 08:56:35 | 显示全部楼层
1.看综合布线后的log:资源大小、频率
2.仿真看时序参数:输入输出延迟
3.测试看算法性能:输入数据上下限、输出和理论值偏差、异常输入的处理方式、模块强壮性。。。
发表于 2011-5-6 10:11:08 | 显示全部楼层
LS讲得不错,代码写得如何,是测出来的,通过上板或仿真,还可以通过nlint等工具进行代码检视,看是否符合相关规范。
 楼主| 发表于 2011-5-10 08:43:37 | 显示全部楼层
回复 4# jackertja


    我是个菜鸟 请问这些东西哪里能查得出来?谢谢
 楼主| 发表于 2011-5-10 08:46:49 | 显示全部楼层
回复 5# eaglelsb


    程序比较简单 仿真和上板看不出什么区别 。怎么办?
发表于 2011-5-10 13:32:27 | 显示全部楼层
大哥,你为什么一定要比出个高下来呢?大家的程序都能用,都OK,不更好吗?很多东西并不是一定能够比的,如果你想比,那参照下招标吧,列出几个项来,各自打分,然后加起来,你71,他69,就能证明你们之间谁更好吗?
 楼主| 发表于 2011-5-16 10:54:29 | 显示全部楼层
回复 8# eaglelsb


    呵呵 你误解我的意思了。 我的目的是为了对同样为实现同一目的的两种方法(比如滤波等)进行效率的对比,看看哪种更节省资源 效率更高

是为了做分析,而不是要比一个高下。见谅见谅。
发表于 2011-5-16 13:23:26 | 显示全部楼层
回复 9# 咖啡十三

那就看你的应用场合了,就拿滤波器来说,从那个公式上去看,有很多打拍的操作,如果你的RAM资源充足,可以用RAM然后读地址不断增加的方式来实现打拍;如果你的寄存器资源很充足,可以直接把输入的数据打N拍,使用d1, d2, d3...这种方法。

如果你的乘法器资源很充足,可以大量使用你的乘法器资源,随便用;如果乘法器紧张,那得考虑下复用的问题。


如果你的数据位宽很大而时序很高造成时序不满足,那做加法运算时得考虑流水线,或者在计算中途就去中间的低位进行四舍五入掉,;或者使用假周期约束等。

所以一切都看你的应用场景,什么资源短缺,那这个的优先级就最高,一切都为了这个转;如果什么都充足,架构简单点,以后要修改参数或复用方便,写代码的和维护代码的都方便省心。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-11-6 17:21 , Processed in 0.021672 second(s), 7 queries , Gzip On, Redis On.

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