原创 【博客大赛】我在无线通信芯片验证中的那些事

2012-5-26 16:20 3045 10 21 分类: FPGA/CPLD

       实验室的UWB演示系统是国家某重大专项,在超宽带的试验网上也算走在国内前列,数年前小弟对FPGA了解不多,却有幸能参与其中,接受历练,如今芯片就要回来了,回顾这些日子里的生活,感触良多。刚好馬上就要找工作了,也算是给自己攒人品吧,跟大家分享一点自己在无线通信芯片的实现和验证中的那点事吧。

         我们演示系统是类似于无线个域网的多点传输系统。主要由RF、基带、MAC、PC侧应用四个部分组成。RF主要完成信号的调制解调及高频信号的发送与接收,传输频率在4GHZ,信号带宽为1G,2Ghz的采样率(赖奎斯特采样)。基带部分主要完成同步及编解码功能。MAC则主要是完成时隙管理及分配、MAC帧的拆组帧、物理帧的拆组帧、误码校验、数据缓存等等功能。PC侧应用主要是摄像头的实时采集压缩、高清视频的生成与播放,此外还包括很多的无线应用,如无线打印机等等各种实际应用器件。个人主要完成MAC部分的实现、验证以及整个系统的联调。

         我们FPGA主要是Altera的 stratix 1\2\3,方案的设计与各功能块的具体实现是整个项目的重点,不过由于系统联合测试是个人觉得最为恶心的部分,也可能是大家最有共性的部分,所以仅就此扒一扒当初的那些苦逼的点点滴滴中少许收获。

         首先,是对繁多的模块的正常工作的监控。由于各个模块的负责人对接口的理解可能有偏差,所以某些模块的不正常工作可是常事。而往往一个问题,就会使得整个系统的数据传输完全乱成一团,定位费时费力,大家都知道逻辑分析仪的每次重新绑定都要重新编绎,而我们总的程序又很大,编绎一跑下来就是半个小时,压力肯定山大。为此,我们设计了监控模块,对各个模块的关键信号进行统计并计数,统计结果组成IP包,通过嵌入数据接收包内,传输到PC机侧。修改应用程序面板,识别我们做过标记的IP包,实时显示各个关键数据,如同步位,帧标志位、误码误帧结果等等。这一下就省心多了,有一种坐在驾驶座前的感觉,面对各项指标有了了然于胸的轻松。

         第二,误码。这个时候,其实数据流已经可以对传了,在信道衰减40dB下,双向高清视频的开启还是很流畅的,但是时不时出现的馬赛克着实让人揪心,除去BER,各项指标还挺正常。不跑高清跑测试数据吧,BER立马就下来了,完全搞不清问题在哪,连在发送节点还是接收节点都不能确定。我们只好在底层保持高清数据流的产生,维持其突发性,但偷偷把数据替换成从我们配置好的ROM里读出来的数据。再用matlab默默的仿真出其在加各种头,以及编解码后的结果。再在程序各个位置加误码统计功能模块。对每10的8次方字节的数据进行统计,并保持其历史最高值,连信道里波形都用示波器抓下来看了。最终成功的把错误找出来了。

         事实上,在应用DSP中断、SDRAM、USB68013、DDR2及各类时序约束和各模块调试等等上我们都绕了挺多弯路,也遇到很多问题。比如,我们最初的代码里的FIFO都是showahead模式的,不过由于后仿实现中normal模式的更简单可靠,我们不得不花不少时间重新修改并调试,如果这些知识在最初就知道,就不会有这么折腾的事发生了。不过,上面两个是我觉得不理性最容易出问题的地方,但愿各位和我一样懵懂的同学,能有点启示。

         自我注册四年以来,还真没有在EDN上写过什么东西,主要就是看看大家的分享,深感惭愧。希望以后能和版上各位多多认识,深切交流。

         PS:附近件呢,是我们流片的合作院系给出的代码规范,我觉得适合刚入手硬件编程的同学看看。新手其实实现代码不难,是一个必然的过程,有一个良好的代码规范还是相当重要的。最后,祝福各位在FPGA应用上都能更加精熟,也祝自己下学期能找个好工作,~\~。

文章评论11条评论)

登录后参与讨论

用户1700732 2015-4-13 11:00

欢迎欢迎

T.b.K 2015-4-13 08:41

欢迎来EDN分享交流

用户192767 2012-5-29 18:09

这个是纵向项目,暂时没有合作企业,PC侧的应用比如高清视频传输、无线打印机、无线投影仪什么的应用实验室已经有一些了,至于未来会不会商用、怎么商用,我只是基层人员,不知道啊

用户377235 2012-5-25 21:51

博主很幸福,可以有项目做。你们这个演示系统打算以后用在哪里呢?

ashly0903_595850101 2012-5-25 14:29

真正做一个项目,而且又专注其中的人是值得佩服的,希望LZ找到好工作!

用户279089 2012-5-23 19:35

看过了LZ的代码风格,我本人深感惭愧,同是通信类专业,差距如此之大,感叹LZ实验室有那么好的平台,能有这么多的项目机会,LZ这篇文章写得非常细致,概念理的很清晰,不失为一篇好的博文,希望LZ继续加油

用户192767 2012-5-23 18:17

你是?回复别太水了吧,就事论事。

用户377235 2012-5-22 10:46

委座,问题出在哪

用户192767 2012-5-20 20:53

嗯,有机会还希望能相互学习。

用户394057 2012-5-20 14:53

挺好的,如果能把遇到问题的细节及处理方式写的更详细些就更好了。我们也在做流片方面的工作,希望多交流。
相关推荐阅读
用户192767 2012-06-04 10:58
zz求知的n个等级
1. 模仿,知其然不知其所以然 2. 开始知其所以然,开始觉得自己很强大 3. 发现自己做的被很多人做过了,开始高速学习 4. 偶尔能有些好主意,发现没有人做过,欣喜若狂 5. 睡觉都在前沿,随便...
用户192767 2012-05-30 12:02
主流手机CPU的演进(总结自sina新闻)
   随着智能手机越来越普及,消费者在选购手机的时候也越来越理性化,除了关心价格和外观之外,手机的性能也成为了人们最关心的因素,大家都知道, 处理器是影响手机性能的最关键的因素,像德州仪器、高通、...
用户192767 2012-05-25 10:06
评论:@fpgalearner's Blog 博客中提到的“时序约束系统学习”
我觉得还挺全面的,不过细节上,还需要我们自己多多实践才能真正有提高。...
我要评论
11
10
关闭 站长推荐上一条 /2 下一条