C6000系列DSP实现RS译码的经典实例

[复制链接]
4128|9
 楼主| adam02 发表于 2011-9-14 19:14 | 显示全部楼层 |阅读模式
上学的时候,做一个卫星通信的项目,其中有一个部分,想在DSP上实现一个简单的RS译码程序。刚开始做的时候,对DSP的使用不太熟悉,走了很多弯路,后来发现在TI的网站上就能找到经典的RS译码实例程序,而且专门对于C64做过优化。
   贴出来跟大家共享。
   看来网上的资源真得很丰富,大家以后不妨多在TI的网站上搜搜看,说不定能找到你想要的东东!

本帖子中包含更多资源

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

×
相见欢喜 发表于 2011-9-14 20:49 | 显示全部楼层
卫星项目用啥DSP了?
 楼主| adam02 发表于 2011-9-15 07:58 | 显示全部楼层
原来用的是6416,这款DSP在无线基站方面应用的也比较多
sqcumt123 发表于 2011-9-16 16:51 | 显示全部楼层
下载下来好好研读,谢谢楼主分享啊
blacksword 发表于 2011-9-16 17:00 | 显示全部楼层
10年了,终于又看到玩RS的人了。
加班加点 发表于 2011-9-16 22:59 | 显示全部楼层
RS是啥了?
Lxn77 发表于 2011-9-19 11:30 | 显示全部楼层
差错控制功能
通信系统必须具备发现(即检测)差错的能力,并采取措施纠正之,使差错控制在所能允许的尽可能小的范围内,这就是差错控制过程,也是数据链路层的主要功能之一。
接收方通过对差错编码(奇偶校验码或CRC码)的检查,可以判定一帧在传输过程中是否发生了差错。一旦发现差错,一般可以采用反馈重发的方法来纠正。这就要求接受方收完一帧后,向发送方反柜一个接收是否正确的信息,使发送方据此做出是否需要重新发送的决定。发送方仅当收到接收方以正确接收的反馈信号后才能认为该帧已经正确发送完毕,否则需要重发直至正确为止。
物理信道的突发噪声可能完全“淹没”一帧,即使得整个数据帧或反馈信息帧丢失,这将导致发送方永远收不到接受方发来的信息,从而使传输过程停滞。为了避免出现这种情况,通常引入计时器(Timer)来限定接收方发回方反柜消息的时间间隔,当发送方发送一帧的同时也启动计时器,若在限定时间间隔内未能收到接收方的反柜信息,即计时器超时(Timeout),则可认为传出的帧以出错或丢失,就要重新发送。
由于同一帧数据可能被重复发送多次,就可能引起接收方多次收到同一帧并将其递交给网络层的危险。为了防止防止发生这种危险,可以采用对发送的帧编号的方法,即赋予每帧一个序号,从而使接收方能从该序号来区分是新发送来的帧还是已经接受但又重发来的帧,以此来确定要不要将接收到的帧递交给网络层。数据链路层通过使用计数器和序号来保证每帧最终都能被正确地递交给目标网络层一次。

应该是上面的意思吧,卫星通信系统的用到的。
blacksword 发表于 2011-9-20 15:02 | 显示全部楼层
RS = Reed Solomon

对于突发型data corrupt有较好地纠错能力。

对于数学的要求比较高,数学上进步一小步,DSP上就省了好多优化工作。

运算主要是在galois field中进行。
zhanghqi 发表于 2011-9-20 16:07 | 显示全部楼层
有道理,经验之谈
lgm888 发表于 2011-9-22 14:34 | 显示全部楼层
都是高手呀!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

27

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部