erick 发表于 2015-6-29 09:24 如果仅有0.2dB的差别的话,那就说明你的代码很可能已经是正确的了,原因如下: 仔细对比大赛材料52页参考性能和14页的曲线,可以观察到有大约0.2dB的差别。这是因为信噪比折算不同:14页的曲线信噪比是按照码率1/2进行折算的,而52页的参考曲线根据51页中给出的公式,实际折算信噪比时的码率是略低于1/2的。 |
erick 发表于 2015-6-29 09:24 如果性能差别在0.1dB以内,就可以接受了。 |
erick 发表于 2015-6-27 21:47 非adaptive的 ![]() 如果是adaptive的List译码,时延在很大程度上取决于信噪比。 |
uestcdongjun 发表于 2015-6-28 23:08 会提高很多,但与参考还是有些差距。 |
erick 发表于 2015-6-27 21:47 问下您,您加上CRC之后的性能与不加CRC性能提高很多吗?你的曲线图和楼主差不多吗?感觉和比赛的参考有点差距 |
Chris 发表于 2015-6-5 10:01 您的20ms是aCA的,还是CA的? |
我仿真的也和楼主差不多,楼主原因找到了吗 |
楼主的是什么原因导致结果出错的啊? |
一次SC译码,除去地址计算,一共只需要N*log2N次的加法(G节点)或者查表(F节点)操作,相应这个是非常快的。 那么如果是list译码,最多只需要L*N*log2N次加法或者查表。如果仅仅是L=4,也不会明显增加复杂度。 List译码时,多出来的部分无非是路径的排序和复制。 排序的话,由于L很小,复杂度也不高。 路径复制确属难题,但在路径复制的时候可以使用“lazy copy”机制大大减少运算量。 |
还有那个曲线在L=4的时候已经现在开始接近官方给的结果了 |
哦,我已经优化过好几遍了,一开始用递归函数来写花的时间更长,要1070ms,现在全部用C展开了,我感觉已经不好再优化。版主你是怎么优化的?对了我是用VS来编译的。 |
李舒燕 发表于 2015-6-5 09:13 刚才测试了一下N=1024 L=4的情况,2.47ms ![]() 据我的感觉,如果好好优化一下,再快10倍应该问题不大。不过,本次比赛主要是看FPGA实现,仿真代码只要性能优秀即可~ |
我现在的仿真代码译这个码,L=32的时候译每一帧也不到20ms哦(只统计译码,没有开任何降复杂度的算法开关,仿真PC是3G主频、4G内存)。用C写的代码。如果用SSE/AVX优化的话,肯定可以在10ms以内。 |
额,信噪比公式计算是用的官方给的计算公式,CRC应该没问题,在使用之前已经测试过了,SCL路径度更新时两种比特位都已更新,译码程序正在检查对,能再问一下这个仿真程序处理速度有多快? 我在N=1024,L=4的时候处理一帧要30~40ms。我电脑是2G主频,8G内存的。 |
这个算法已经经过国内外数十个团队独立验证了的,具体可以查阅相关参考文献![]() 请仔细检查代码,是否和算法完全一致,我这里只能给出一些调试建议和猜测: 1. SCL路径度量更新时,除了信息比特位置以外,固定比特位置也是需要更新路径度量的; 2. CRC模块是否正确?一个简单的方法是,你可以直接拿正确序列与SCL译码所得的list中各个路径逐个比对,查看正确路径是否存留在最后的list里面; 3. 信噪比计算是否正确?不过从你提供的曲线的相对增益看,应该是在译码程序上有问题,但这块也应该要特别注意一下的。 |
@littlecrab @HW_chenlei @mengmeng202 @Chris @marymaryzhao |
Powered by Discuz! X3
© 2001-2013 Comsenz Inc.