描述
是否有Reed-Solomon编码器和Reed-Solomon解码器内核的示例?
解
在Reed-Solomon解码器数据表中有四个设计实例。
例1:
RS(255,239)是255个符号和239个8位数据符号的配置。此代码能够纠正8个符号错误,即最多64位错误。
处理延迟是204个周期,小于255,因此该配置能够连续处理。
符号宽度= 8
每块符号(n)= 255
数据符号(k)= 239
例2:
RS(255,229)是255个符号和229个8位数据符号的配置。这具有比示例1更大的纠错能力,因为可以校正13个符号或104位数据。
但是,由于处理延迟是459个周期,因此大于255,因此无法进行连续处理。
符号宽度= 8
每块符号(n)= 255
数据符号(k)= 229
如果需要连续处理,则每个符号的时钟周期数可以设置为2.通过将每个符号的时钟设置为2,处理延迟现在是230个符号周期,但每个符号周期是两个时钟周期。
因此,对于100兆符号/秒的符号率,核心需要以200MHz的频率进行计时。
例3:
要求是能够在12位数据块中检测并校正至少3%的符号并且能够连续操作。
由于这是12位数据,块中的最大符号数是4095,并且为了满足校正标准,配置将是RS(4095,3849)。
由于nk值为246,处理延迟(31369个符号周期)将是禁止的。
解决方案可能是使用缩短的代码。如果使用RS(400,376),则在400个符号块内校正3%。
处理延迟为400,因此可以使用连续的代码块。
符号宽度= 12
每块符号(n)= 400
数据符号(k)= 376
例4:
在这种情况下,需要改变块中的符号数和校验符号数。
符号宽度为8位,因此n必须设置为255。
预期的最大R_IN值为16,因此k必须设置为255-16 = 239。
这使R_IN端口宽度为5位。
因此,N_IN的值最大为255,R_IN的值最大为16。
下限定义见表3。
符号宽度= 8
每块符号(n)= 255
数据符号(k)= 239
检查可变块长度
检查可变数量的检查符号
这些答案记录附有这些示例。
附件
相关附件
名称 | 文件大小 | 文件类型 |
---|---|---|
RS_examples.zip | 16 MB | 压缩 |
没有回复内容