Reed Solomon编解码器的可编程逻辑实现编译器
发布时间:2007/9/11 0:00:00 访问次数:503
摘要:
本文阐述了专为可编程逻辑优化的Reed Solomon编译码器的使用及其结果。详细地描述了几种不同编译码器的设计,并分析了它们资源需求和编译码性能。
1.简介
本文所述的Reed Solomon编译码器编译器能够产生多种代码形式的Reed Solomon的宏编码器和译码器,这些代码形式在参数部分详细说明,一旦确定了代码,可以对顶层HDL代码以Altera 10K器件进行编译。通常,编码器编译包括装配和布线不超过一分钟,而译码器编译也只要五分钟。这个应用程序也能够产生测试代码,可以验证所生成内核的功能。
有三种Reed Solomon 编译码器的宏单元,一个是编码器,另两个是译码器它们是为不同规模/性能要求而优化的。性能较低的译码器,也依据分立译码器,接收一个码字,计算差错位置和值,写回纠正后的码字。性能较高的译码器,或流译码器,连续读取和写回码字。流译码器或多或少地多使用一些逻辑,但需要更多的存储空间,由于译码模块之间进行流水线作业因此性能有很大程度的改善。
2.参数
以下参数定义了Reed Solomon码字。
A.每个码字的符号总数
每个码字有多达2m-1个符号,也就是N。对Reed Solomon编译器,N必须大于3,受最小的R+1限制。
B.校验符号数目
编译器支持4到40个校验符号,或者R,受最大N-1校验符号限制。
C.每个符号的位数
虽然Reed Solomon码字可以为每个符号定义任意位数m,但编译器的有效范围从4到8比特。
D.不可约域多项式
域多项式,或域(field),指定了有限域中元素的级数。域的大于由m给定,每个域大小仅受限于有效域多项式数目。域多项式通常由系统规范确定,但是对于给定的m,编译器能够使用任何有效的域多项式。另外FIELD.EXE应用程序可以根据任意m计算所有有效的域。
E.生成多项式的第一个根
域多项式描述的符号内各位之间的关系,而生成多项式则描述了符号之间的关系。生成多项式在编码期间生成校验符号。编译器支持0到2m-1-R之间的genstart。
3.设计流程
使用第二节中描述的参数,DOS应用程序将生成用于HDL结构框架设计的插件。用于生成编码器的应用程序是ENCRSV3,生成译码器的应用程序是DECRSV3。可以按第二节所列的参数顺序调用这两个应用程序。应用程序会检验并确认参数处于有效范围内,确认这些参数组合能够生成有效的RS码。应用程序还可以为这个RS编译码产生测试代码,马上就可以进行功能测试了。
程序运行之后,就能够以独立的设计或作为更大系统设计的一部分编译所需功能的顶层HDL。
4.资源要求
所需资源的数量主要取决于m和R。每个码字的符号数目不会影响译码器所需逻辑,因为接收的符号存储在Altera 10K器件的嵌入存储块中。
编码器需要很少的逻辑单元,而不需要存储块。编码器的规模随m和R线性变化。图1为当m=8时,编码器规模和R的关系。
虽然对给定的m的R,分立和流式译码器之间有大略的线性关系,但它们的规模随m和R呈几何增长。除了逻辑之外,分立译码器需要两个嵌入存储块,而流式译码器需要五个存储块。若生成多项式的第一个根大于零,那么需要更多的存储块。图2为m=8时,译码器规模和R的关系。
摘要:
本文阐述了专为可编程逻辑优化的Reed Solomon编译码器的使用及其结果。详细地描述了几种不同编译码器的设计,并分析了它们资源需求和编译码性能。
1.简介
本文所述的Reed Solomon编译码器编译器能够产生多种代码形式的Reed Solomon的宏编码器和译码器,这些代码形式在参数部分详细说明,一旦确定了代码,可以对顶层HDL代码以Altera 10K器件进行编译。通常,编码器编译包括装配和布线不超过一分钟,而译码器编译也只要五分钟。这个应用程序也能够产生测试代码,可以验证所生成内核的功能。
有三种Reed Solomon 编译码器的宏单元,一个是编码器,另两个是译码器它们是为不同规模/性能要求而优化的。性能较低的译码器,也依据分立译码器,接收一个码字,计算差错位置和值,写回纠正后的码字。性能较高的译码器,或流译码器,连续读取和写回码字。流译码器或多或少地多使用一些逻辑,但需要更多的存储空间,由于译码模块之间进行流水线作业因此性能有很大程度的改善。
2.参数
以下参数定义了Reed Solomon码字。
A.每个码字的符号总数
每个码字有多达2m-1个符号,也就是N。对Reed Solomon编译器,N必须大于3,受最小的R+1限制。
B.校验符号数目
编译器支持4到40个校验符号,或者R,受最大N-1校验符号限制。
C.每个符号的位数
虽然Reed Solomon码字可以为每个符号定义任意位数m,但编译器的有效范围从4到8比特。
D.不可约域多项式
域多项式,或域(field),指定了有限域中元素的级数。域的大于由m给定,每个域大小仅受限于有效域多项式数目。域多项式通常由系统规范确定,但是对于给定的m,编译器能够使用任何有效的域多项式。另外FIELD.EXE应用程序可以根据任意m计算所有有效的域。
E.生成多项式的第一个根
域多项式描述的符号内各位之间的关系,而生成多项式则描述了符号之间的关系。生成多项式在编码期间生成校验符号。编译器支持0到2m-1-R之间的genstart。
3.设计流程
使用第二节中描述的参数,DOS应用程序将生成用于HDL结构框架设计的插件。用于生成编码器的应用程序是ENCRSV3,生成译码器的应用程序是DECRSV3。可以按第二节所列的参数顺序调用这两个应用程序。应用程序会检验并确认参数处于有效范围内,确认这些参数组合能够生成有效的RS码。应用程序还可以为这个RS编译码产生测试代码,马上就可以进行功能测试了。
程序运行之后,就能够以独立的设计或作为更大系统设计的一部分编译所需功能的顶层HDL。
4.资源要求
所需资源的数量主要取决于m和R。每个码字的符号数目不会影响译码器所需逻辑,因为接收的符号存储在Altera 10K器件的嵌入存储块中。
编码器需要很少的逻辑单元,而不需要存储块。编码器的规模随m和R线性变化。图1为当m=8时,编码器规模和R的关系。
虽然对给定的m的R,分立和流式译码器之间有大略的线性关系,但它们的规模随m和R呈几何增长。除了逻辑之外,分立译码器需要两个嵌入存储块,而流式译码器需要五个存储块。若生成多项式的第一个根大于零,那么需要更多的存储块。图2为m=8时,译码器规模和R的关系。
上一篇:欧洲设备安装总线(EIB)概述
上一篇:提高电子系统设计自动化的一种方法
深圳服务热线:13692101218 13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)

深圳市碧威特网络技术有限公司
付款方式