[发明专利]一种基于GPP和SIMD技术的信道编译码的数据格式转换方法有效
申请号: | 201310729424.7 | 申请日: | 2013-12-26 |
公开(公告)号: | CN103746771A | 公开(公告)日: | 2014-04-23 |
发明(设计)人: | 牛凯;丁忆南;贺志强 | 申请(专利权)人: | 北京邮电大学 |
主分类号: | H04L1/00 | 分类号: | H04L1/00 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 夏宪富 |
地址: | 100876 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 gpp simd 技术 信道 译码 数据格式 转换 方法 | ||
1.一种基于通用处理器GPP和单指令多数据流SIMD技术的信道编码前的数据格式转换方法,其特征在于:先将字长为n个字节的输入数据流A0A1A2...An-1封装为s个长度为M的SIMD格式数据,使其数据格式并行化,能够适用于SIMD指令而对其执行并行的“映射”操作:将输入数据流的每个字节复制为8个字节,即将其转换为第一中间数据流E0E1...E8n-1;再对第一中间数据流E0E1...E8n-1执行并行的“与”操作,提取各个比特信息后,将其转换为第二中间数据流F0F1...F8n-1;最后对第二中间数据流F0F1...F8n-1执行并行的“选取较小值”操作,将各个比特信息移到其所在的字节的最低位,生成字长为8n个字节的输出数据流B0B1B2...B8n-1;其中,字节长度n=M×s,自然数M和s分别是SIMD封装数据的长度和个数。
2.根据权利要求1所述的方法,其特征在于:所述方法包括下列操作步骤:
(1)执行并行的“映射”SIMD指令,完成数据复制操作:
依次对s个SIMD封装数据使用“映射”SIMD指令,“映射”SIMD指令的X输入的SIMD封装数据为AtM+0,AtM+1,...,AtM+M-1,且每个X输入数据都要参与8次内层循环;其中,t为执行“映射”SIMD指令外层循环的操作次数序号,其取值范围是[0,s-1];u为执行“映射”SIMD指令内层循环的操作次数序号,其取值范围是[0,7];则第t次外层循环的第u次内层循环的“映射”SIMD指令的Y输入的SIMD封装数据为:
E8tM+uM+0,E8tM+uM+1,...,E8tM+uM+M-1;
(2)执行并行的“与”SIMD指令,完成提取比特位的操作:
依次对8s个封装数据执行并行的“与”SIMD指令,该“与”SIMD指令的X输入的SIMD封装数据为第一中间数据流Z:ErM+0,ErM+1,...,ErM+M-1,“与”SIMD指令的Y输入的SIMD封装数据为:
{1,2,4,8,16,32,64,128,1,2,4,8,16,32,64,128,...,1,2,4,8,16,32,64,128};其中,r为执行“与”SIMD指令的操作次数序号,其取值范围是[0,8s-1];则完成该“与”SIMD指令后,得到的第二中间数据流Z为:FrM+0,FrM+1,...,FrM+M-1;
(3)执行并行的“选取较小值”SIMD指令,完成将有效比特位移到其所在字节的最低位操作:
依次对8s个SIMD封装数据执行“选取较小值”SIMD指令,“选取较小值”SIMD指令的X输入的SIMD封装数据为FjM+0,FjM+1,...,FjM+M-1,再设置“选取较小值”SIMD指令的Y输入的SIMD封装数据为{1,1,...,1};其中,j为执行“选取较小值”SIMD指令的操作次数序号,其取值范围是[0,8s-1];则完成该“选取较小值”SIMD指令后,得到的最终输出数据流Z为:BjM+0,BjM+1,...,BjM+M-1。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学,未经北京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310729424.7/1.html,转载请声明来源钻瓜专利网。