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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 5258|回复: 17

[讨论] 验证到每一种情况,不知天高地厚的人

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

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

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

x
不知道大家对FEC校验有没有概念。这边就简单的介绍一下。
以FEC(255,223)为例做介绍。
FEC(255,223)可以在255bytes中纠正任意(1~16)bytes的错误。
((1~16)bytes可以是1~16任意选一个数,下面(1~8)意思相同)
每个bytes可以是(1~8)bits的错误。


有人认为他有能力把每一种情况都验证到,我真不知道是他的数学能力不行还是对自己太有自信了,居然能把每一种情况都验证到。

大家有兴趣可以计算一下这是一个什么样的数据。(提示一下,我的服务器上跑一种情况要0.074s, 你要觉得你们公司的服务器比这快很多的话,你就适当的修改一下这个参数)
发表于 2017-9-7 11:48:18 | 显示全部楼层
“FEC(255,223)可以在255bytes中纠正任意(1~16)bytes的错误”
这句话是准确的吗?感觉有点夸张啊。会不会使下面2种情况之一?
1.任意的16bytes
2.任意的连续的(1~16)bytes
 楼主| 发表于 2017-9-7 15:36:38 | 显示全部楼层
回复 2# jimbo1006


   任意的,连续,不连续都可以。只要错误在16bytes以内就可以。
发表于 2017-9-7 22:08:36 | 显示全部楼层
这种方法,用穷尽形式验证小模块,理论上可以全部覆盖到。。应该是你眼观只在动态仿真上,少了数学理论的验证知识。不要用自己的眼界去决定别人所做的可能性。还是要虚心请教别人。。




还是一句话:IC没啥前途,早改行才是出路。。。
 楼主| 发表于 2017-9-8 09:20:37 | 显示全部楼层
回复 4# A1985


你说的没有错。

我这边只讨论一下动态的验证,那个人没有那么牛,只是太自负了而已。
 楼主| 发表于 2017-9-8 09:56:07 | 显示全部楼层
回复 4# A1985


   因为我们这边没有人做过形式验证,所以我这边有一个疑问请您帮忙解答一下。
前仿真,(假如时间限制不考虑的话)我可以保证每一种都能验到,并确定其算法是对的。




如果前仿真不做,只用穷尽法形式验证,是可以的遍历每一种情况,时间肯定会比动态仿真用的少,但他怎么保证其每一种都是正确的呢?
发表于 2017-9-8 10:24:20 | 显示全部楼层
回复 6# zlyld


https://baike.baidu.com/item/形式验证/10075710?fr=aladdin
发表于 2017-9-8 10:55:25 | 显示全部楼层
现实的形式验证本身就是“不完整”的验证,所以自然没办法保证每一种情况都是对的。
首先,假设验证的所有功能点是一个圆:
1.正常的验证就是在这个圆里面一个点一个点的验,虽然慢但是只要时间够,迟早可以验完这个完整的圆
2.形式验证就是借助各种方法,将这个点变成一个矩形(这个矩形必须被圆包含)。虽然验起来快多了,但是不管矩形的宽在小,不管你用多少个矩形,你都填不满这个圆。
 楼主| 发表于 2017-9-13 09:48:37 | 显示全部楼层
我这边做一个最后结论吧。
以RS(255,223)为例。 FEC有能力纠错任意16bytes的错误。
其中一种组合(即每次都错16bytes,且每个byte的每个bit都错)结果有C(255,16)=9448829626895919257468625 ≈9.4e+24,
如果每种错误都要遍历一遍的话,那结果会远远大于9.4e+24个。

FEC RX 验证环境跑100个codeword 用时7.4s(关掉了dump fsdb , 打印信息也关掉了)。
粗略估计,
一天能跑1167568(116万)个codeword.
一个月能跑35027027(3502万)个codeword.
一年能跑420324324≈4.2e+8(4.2亿)个codeword.

全部跑完需要的时间是 9.4e+24 / 4.2e+8 ≈2.2e+16年
所以要遍历一遍需要的时间是非常惊人的,不知到用咱们国家的神威太湖之光要多久才能完成。

之前有楼上有位大神说形式验证可以做到,因为我没有涉及到形式验证,所以也没有办法告诉大家怎么去完成。有兴趣的人可以给大家科普一下。
 楼主| 发表于 2017-9-13 09:54:02 | 显示全部楼层
我这边做一个动态仿真的总结。
以RS(255,223)为例。 FEC有能力纠错任意16bytes的错误。
其中一种组合(就是每次都错16bytes,每个byte的每个bit都错)的结果有C(255,16)=9448829626895919257468625 ≈9.4e+24种,
如果每种错误都要跑到的话,那结果会远远大于9.4e+24个codeword。

FEC RX 验证环境跑100个codeword 用时7.4s(关掉了dump fsdb , 打印信息也关掉了)。
粗略估计,
一天能跑1167568(116万)个codeword.
一个月能跑35027027(3502万)个codeword.
一年能跑420324324≈4.2e+8(4.2亿)个codeword.

全部跑完需要的时间是 9.4e+24 / 4.2e+8 ≈2.2e+16年
所以要遍历一遍需要的时间是非常惊人的,不知道用神威太湖之光要跑多久。

之前楼上有位大神说用形式验证可以做到,因为我没有涉及过形式验证,所以无法就此种方法做个总结。
有人有兴趣的话可以给大家科普一下。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

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

GMT+8, 2024-12-23 02:41 , Processed in 0.020801 second(s), 7 queries , Gzip On, Redis On.

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