System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及通信领域,尤其涉及一种符合5g标准的ldpc译码器的fpga实现方法。
技术介绍
1、在无线通信技术中,由于无线信道中存在大量干扰,极易使得信号在传输中发生错误。在实际应用中,可以利用编码技术,在发射端增加一个编码模块给传输信息增加冗余,在接收端添加一个译码模块利用冗余信息检测和纠正信息中的错误。
2、目前最新的第五代移动通信系统(5g)要面对更多的用户数量,更高的通信速率,更低的时延,按照协议要求,5g系统的上行峰值速率将达到10gbit/s,下行峰值速率将达到20gbit/s。
3、2016年10月14日在里斯本召开的3gpp rani会议上,ldpc码的优良性能和易于在硬件上实现使其脱颖而出,被选定为5g系统的信道编码方案。经过特殊设计的ldpc码还可以做到码率灵活可变。
4、在小型、轻量化系统中,由于资源相对较少,如果使用现有ldpc译码ip核,往往有着资源占用量巨大、功耗控制不理想等缺点。
5、因此,有必要提供一种符合5g标准的ldpc译码器的fpga实现方法解决上述技术问题。
技术实现思路
1、为解决上述技术问题,本专利技术提供一种高速、低延迟、资源占用少,可控性高、使用灵活的一种符合5g标准的ldpc译码器的fpga实现方法。
2、本专利技术提供的一种符合5g标准的ldpc译码器的fpga实现方法,包括以下步骤:
3、s1,结束复位后,控制器发出允许设置信号;
4、s2,
5、s3,给出译码器准备好信号,此时用户可以为译码器输入128bit的数据信号,以vld和eop信号标记数据是否有效和结束,数据量由用户保证,ldpc核暂未做相应检查;
6、s4,用户发出eop信号后,译码器准备好将会在下一个时钟周期结束,控制器将会发出开始迭代信号;
7、s5,控制器发出开始迭代信号;
8、s6,数据节点和校验节点存储器收到来自迭代器的数据后,将数据分离成16流,每个流对应一个存储端口,写入数据,将eop信号延迟一排输出作为写入完毕信号;
9、s7,输出缓存模块收到来自迭代器的数据;
10、s8,当h矩阵生成器生成完毕z行数据后,会等待来自数据和校验节点的数据写入完毕信号,再开始新的z行数据生成计算,以此避免可能发生的数据写后读冲突,生成完毕整个矩阵后,会再次发出允许设置信号和迭代完成信号,不过此信号仅持续2clk,如果在2clk中没有新设置被输入,h矩阵生成器将会按照原有设置准备下一轮生成;
11、s9,h矩阵生成器再次发出允许设置信号和迭代完成信号;
12、s10,收到输出使能信号后,输出缓存将会按顺序依次读取nbit数据并转换为128bit。
13、优选的,在步骤s1中,包括如下步骤:
14、s11,用户此时可以发送设置,设置缓存满后,控制器不再发出允许设置信号并缓存设置内容;此时用户给出的设置项不会生效;
15、s12,h矩阵生成模块给出允许设置信号并等待有效的设置项;
16、s13,输出缓存模块给出允许设置信号,由于输出缓存不需要进行初始化,仅需要通过设置获取包长等信息,因此直接给出允许设置信号。
17、优选的,在步骤s2中,包括如下步骤:
18、s21,控制器将会等待h矩阵生成模块给出允许设置信号后,将发送缓存的设置项到需要的模块,待各被设置子模块取消允许设置信号后,控制器将会给出译码器准备好信号;
19、s22,h矩阵生成模块设置有效后,将会按照设置信息对地址计数器和计数器最大值等进行设置,以准备读取指定的h矩阵数据,并等待允许开始信号;
20、s23,输出缓存模块设置有效后,将会按照设置信息对最大包长等进行设置,并等待输入数据包。
21、优选的,在步骤s5中,包括如下步骤:
22、s51,h矩阵生成器将会一次连续生成n行数据节点和校验节点的地址,以sop,vld,eop信号为指示;数据将被分别送入数据节点存储器和校验节点存储器,到指定地址读取数据后,地址、数据和控制信号将被送入时序对齐模块对齐时序并直接输出;
23、s52,迭代器组将会开始从时序对齐模块接收数据进行迭代。
24、优选的,在步骤s7中,包括如下步骤:
25、s71将数据分离为n流,取符号位取反的值作为硬判决结果,按地址存入缓存,大于数据包长的比特将被丢弃;如果进行了多轮译码,先前的数据将会被新的数据覆盖,
26、s72输入的数据将按流数进行校验,也就是符号位取反后进行连续异或,如果最终结果为0,则认为本次校验通过;只有当所有行的检查结果都为0时,输出缓存模块才会给出检查通过的信号。
27、优选的,在步骤s9中,包括如下步骤:
28、s91,控制器将会停止输出开始迭代信号;
29、s92,控制器将会检查当前来自输出缓存的校验通过信号,如果没有通过,则再次输出开始迭代信号继续迭代,直到达到上限;
30、s93如果通过或达到上限,则控制器会给出输出使能信号,直到输出缓存模块给出输出完毕信号;同时控制器将会检查设置缓存是否有可用的设置项,如果有,控制器将会取出可用的下一个设置项分发给各子模块,同时输出校验节点初始化信号,并在各子模块准备好后输出译码器准备好信号以接收新数据;若设置缓存没有可用设置项,控制器将会等待用户给出新的可用设置。
31、优选的,在步骤s52中,包括如下步骤:
32、s521,依次读取数据节点地址和校验节点地址,存储进fifo;
33、s522依次读取数据节点和校验节点,计算数据节点-校验节点的值并计数后存入fifo;
34、s523,在计算出lq_mj的同时,计算对lq_mj取绝对值后截取低6bit的值;
35、s524,依次比较6bit绝对值数据,得到最小值,最小值索引和次小值;
36、s525,在存入fifo前,使用lq_mj数据计算校验值;
37、s526,所有数据输入完毕后,非最小值位置对应的r_mj使用最小值乘以α的结果更新,最小值处使用次小值乘以α后的结果更新;
38、s527,将数据节点更新为lq_mj加减更新后的r_mj,加或减取决于校验结果与当前lq_mj值得正负性,将校验节点更新为更新后的r_mj;
39、s本文档来自技高网...
【技术保护点】
1.一种符合5G标准的LDPC译码器的FPGA实现方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的符合5G标准的LDPC译码器的FPGA实现方法,其特征在于,在步骤S1中,包括如下步骤:
3.根据权利要求1所述的符合5G标准的LDPC译码器的FPGA实现方法,其特征在于,在步骤S2中,包括如下步骤:
4.根据权利要求1所述的符合5G标准的LDPC译码器的FPGA实现方法,其特征在于,在步骤S5中,包括如下步骤:
5.根据权利要求1所述的符合5G标准的LDPC译码器的FPGA实现方法,其特征在于,在步骤S7中,包括如下步骤:
6.根据权利要求1所述的符合5G标准的LDPC译码器的FPGA实现方法,其特征在于,在步骤S9中,包括如下步骤:
7.根据权利要求4所述的符合5G标准的LDPC译码器的FPGA实现方法,其特征在于,在步骤S52中,包括如下步骤:
【技术特征摘要】
1.一种符合5g标准的ldpc译码器的fpga实现方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的符合5g标准的ldpc译码器的fpga实现方法,其特征在于,在步骤s1中,包括如下步骤:
3.根据权利要求1所述的符合5g标准的ldpc译码器的fpga实现方法,其特征在于,在步骤s2中,包括如下步骤:
4.根据权利要求1所述的符合5g标准的ldpc译码器的fpga实现方法,...
【专利技术属性】
技术研发人员:周启航,
申请(专利权)人:陕西烽火电子股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。