关于rs编码的理解
2024-09-27 16:29:43
1,rs编码首先是线性循环编码,所谓线性循环编码就是说编码后的码组T(x)左移或右移都必然还是有限组码组中的一组,并且T(X)码组能够被g(x)整除,g(x)为生成多项式。
2,由信息码m(x)得到T(x)的原理:
3,关于域
所指的域为伽罗华域,简写为GF(2^m)域中的每个元素都可以用a^0,a^1,a^2...a^(m-1) 的和表示。
运算法则可以参考模2运算,不过乘法运算有区别,是模N算法,N不一定是2。
4,生成多项式g(x)=(x-a)(x-a^2)(x-a^3).....(x-a^(n-k))或者减号变为加号,因为模二加法和模二减法效果相同,展开之后再结合域的元素之间的关系,得到各项系数g0,g1,g2.......
5,fpga实现原理图
至于m是在最高位输入还是在最低位输入根据原理可以知道,要算的是x^(n-k)*m(x)/g(x),那么就是在最高位输入,如果是m(x)/g(x),那么就是在低位输入。其他部分按照除数的表达式去抽头。输入顺序为由高到低。
6,上图中关键部分在于域乘法的实现,实现原理如下所示
其中m*g0=q;化简一下就可以得到。
最新文章
- Clank – 快速构建移动 APP 原型的 HTML/CSS 框架
- 46-df 显示磁盘空间的使用情况
- EF-Linq将查询结果转换为List<;string>;
- php课程---练习(发布新闻)
- JS学习笔记12_优化
- Android---用Wi-Fi来建立对等连接
- jquery之bind(),live(),delegate()
- WF编译报错
- Java 面试知识点解析(二)——高并发编程篇
- 二、Python-运算符、控制及循环语句
- DML&;&;DQL
- django中的null=true,blank=true,这个讲得清楚点
- C++ 成员函数赋值给C 的函数指针的采坑录
- arc 093 C – Traveling Plan
- [LeetCode] 95. Unique Binary Search Trees II(给定一个数字n,返回所有二叉搜索树) ☆☆☆
- git 常用操作总结
- 修改的select
- jpa-入门测试
- Node.js系列——(2)发起get/post请求
- MySQL 和 Oracle 主键自增长
热门文章
- web项目整合Shiro框架
- vue-cli Uncaught SyntaxError: Use of const in strict mode解决办法
- 安装fcitx
- bind、delegate、on的区别
- 【Error】local variable &#39;xxx&#39; referenced before assignment
- leetcode 720. Longest Word in Dictionary
- ReadWriteLock读写锁
- Linux下的ASLR(PIE)内存保护机制
- L159
- 疑问:@Autowired的作用?[待解答]