CN109196781B - 使用极化码时的分段码率匹配系统和方法 - Google Patents
使用极化码时的分段码率匹配系统和方法 Download PDFInfo
- Publication number
- CN109196781B CN109196781B CN201780033716.3A CN201780033716A CN109196781B CN 109196781 B CN109196781 B CN 109196781B CN 201780033716 A CN201780033716 A CN 201780033716A CN 109196781 B CN109196781 B CN 109196781B
- Authority
- CN
- China
- Prior art keywords
- bits
- information sequence
- codeword
- range
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/63—Joint error correction and other techniques
- H03M13/635—Error control coding in combination with rate matching
- H03M13/6362—Error control coding in combination with rate matching by puncturing
- H03M13/6368—Error control coding in combination with rate matching by puncturing using rate compatible puncturing or complementary puncturing
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/63—Joint error correction and other techniques
- H03M13/635—Error control coding in combination with rate matching
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/63—Joint error correction and other techniques
- H03M13/635—Error control coding in combination with rate matching
- H03M13/6362—Error control coding in combination with rate matching by puncturing
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/65—Purpose and implementation aspects
- H03M13/6502—Reduction of hardware complexity or efficient processing
- H03M13/6505—Memory efficient implementations
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/65—Purpose and implementation aspects
- H03M13/6508—Flexibility, adaptability, parametrability and configurability of the implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0067—Rate matching
- H04L1/0068—Rate matching by puncturing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0067—Rate matching
- H04L1/0068—Rate matching by puncturing
- H04L1/0069—Puncturing patterns
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
Abstract
公开了用于在使用极化码时执行码率匹配的系统和方法。在一项实施例中,在极化编码器处接收多个比特。获得对应于以下项中至少一项的值:传输所述多个比特所要使用的码率和传输所述多个比特所要使用的已编码比特的数量。确定所述值所属的值范围,并获得对应于所述值所属的所述范围的信息序列。根据所述信息序列将所述多个比特映射到输入向量的位置的子集中。将所述输入向量的其余位置设置为解码器已知的冻结值。然后,在所述极化编码器中对所述输入向量进行编码以生成码字。
Description
相关申请案交叉申请
本申请要求2016年6月17日递交的发明名称为“使用极化码时的分段码率匹配系统和方法(Systems and Methods for Piece-Wise Rate Matching When Using PolarCodes)”的第62/351,438号美国临时专利申请案以及2017年5月29日递交的发明名称为“使用极化码时的片段码率匹配系统和方法(Systems and Methods for Piece-Wise RateMatching When Using Polar Codes)”的第15/607,591号美国专利申请案的在先申请优先权,这两个在先申请的内容以引入的方式并入本文本中。
技术领域
本申请涉及差错控制编码和码率匹配,更具体而言,涉及使用通用极化码时的码率匹配
背景技术
在通信系统中,信息通过信道从发射器传输到接收器。例如,在无线通信系统中,移动设备中的发射器可以通过无线信道向基站中的接收器传输信息。
信道可能会在通过信道传输的信息中引入差错。可以使用差错控制编码来检测和/或纠正这种差错。例如,待从发射器传输到接收器的k个信息比特可以先由发射器中的编码器进行编码以获得具有Nb个比特长度的码字,其中,Nb>k。然后,该码字可以通过信道进行传输。进而,接收到的码字由接收器中的解码器进行解码以做出关于传输k个比特的决定。因传输比特长度为Nb>k的码字而增加的冗余会使得在接收器处正确解码k个比特的可能性增大,即使码字中因信道中的噪声引入了一些差错。
存在不同类型的检错码和纠错码。E.Arιkan在IEEE信息理论学报(2009年7月)第55卷第7期上发表的论文“信道极化:一种构造对称二进制输入无记忆信道的容量可达代码的方法(Channel Polarization:A Method for Constructing Capacity-AchievingCodes for Symmetric Binary-Input Memoryless Channels)”中公开了一种纠错码,称为Arikan极化码。Arikan极化码是一种二进制极化码,这意味着Arikan极化码仅对二进制符号字母表执行差错控制编码。使用Arkian极化码编码的k个比特表示k个信息符号。k个信息符号中的每一个只能取两个值中的一个。
而且,Arikan极化码中的每个码字的比特长度Nb必须是2的幂,即Nb=2n,其中,n是自然数。然而,由于码率要求,可以实际传输到信道中的码字长度可能不完全是比特长度Nb=2n。
发明内容
公开了可以在使用极化码时作为码率匹配的一部分来执行的系统和方法。
在一项实施例中,提供了一种在发射器处执行的方法。所述方法包括在极化编码器处接收多个比特。所述方法还可以包括获得对应于以下项中至少一项的值:传输所述多个比特所要使用的码率和传输所述多个比特所要使用的已编码比特的数量。所述方法还可以包括确定所述值所属的值范围。所述方法还可以包括获得对应于所述值所属的所述范围的信息序列。所述方法还可以包括根据所述信息序列将所述多个比特映射到输入向量的位置的子集中。所述方法还可以包括将所述输入向量的其余位置设置为解码器已知的冻结值。所述方法还可以包括在所述极化编码器中对所述输入向量进行编码以生成码字。
在任一前述实施例中,获得对应于所述范围的所述信息序列可以包括从存储器中检索得到对应于所述范围的已存储信息序列。
在任一前述实施例中,对应于所述范围的所述信息序列可以是基于所述范围内的一个代表值所确定的信息序列。所述代表值可以距所述范围的一端比距所述范围的另一端更近。所述代表值可以等于处于或接近于所述范围的所述端的值。
在任一前述实施例中,所述方法还可以包括根据打孔模式对所述码字进行打孔以获得打孔码字。所述打孔码字的比特长度等于所述传输所述多个比特所要使用的已编码比特的数量。在一些实施例中,根据所述打孔模式对所述码字进行打孔包括对所述码字进行截短。在一些实施例中,所述码字的比特长度为Nb,所述打孔码字的比特长度为M,所述打孔模式是指对所述码字的前(Nb-M)个比特进行打孔。也可以使用其它打孔模式。
在任一前述实施例中,所述多个比特可以是第一多个比特,所述值可以是第一值,所述信息序列可以是第一信息序列,所述输入向量可以是第一输入向量,所述码字可以是第一码字,所述打孔码字可以是第一打孔码字。然后,所述方法还可以包括在所述极化编码器处接收第二多个比特。所述方法还可以包括获得对应于以下项中至少一项的第二值:传输所述第二多个比特所要使用的码率和传输所述第二多个比特所要使用的第二打孔码字的比特长度。所述方法还可以包括确定所述第二值所属的值范围。所述方法还可以包括获得对应于所述第二值所属的所述范围的第二信息序列。所述方法还可以包括根据所述第二信息序列将所述第二多个比特映射到第二输入向量的位置的子集中。所述方法还可以包括将所述第二输入向量的其余位置设置为所述解码器已知的冻结值。所述方法还可以包括在所述极化编码器中对所述第二输入向量进行编码以生成第二码字。所述方法还可以包括根据打孔模式对所述第二码字进行打孔以获得所述第二打孔码字。在一些实施例中,所述第一打孔码字的比特长度不同于所述第二打孔码字的比特长度。在一些实施例中,所述第二值所属的所述范围与所述第一值所属的所述范围相同。在一些实施例中,所述第一信息序列与所述第二信息序列相同。在一些实施例中,所述第二值所属的所述范围与所述第一值所属的所述范围不同。在一些实施例中,所述第一信息序列与所述第二信息序列不同。
在任一前述实施例中,所述多个比特中的至少一些可以表示多个q元符号,其中,q>2。
在任一前述实施例中,所述多个比特可以表示多个q元符号,其中,q>2,并且所述码字可以包括以比特表示的q元符号。
在任一前述实施例中,对所述输入向量进行编码可以包括使用至少一个极化编码器内核对所述输入向量进行编码以生成所述码字。所述编码可以包括在所述极化编码器内核处接收以比特表示的一组输入q元符号。所述编码可以包括根据所述极化编码器内核的种子矩阵变换所述一组输入q元符号,以产生以比特表示的一组输出q元符号。
在另一项实施例中,提供了一种具有用于接收多个比特的极化编码器的发射器。所述发射器还可以包括信息序列发生器(例如,包括在所述极化编码器中或作为所述极化编码器的一部分)。所述信息序列生成器可以用于获得对应于以下项中至少一项的值:传输所述多个比特所要使用的码率和传输所述多个比特所要使用的已编码比特的数量。所述信息序列生成器还可以用于:确定所述值所属的值范围,并获得对应于所述值所属的所述范围的信息序列。所述发射器还可以包括输入向量形成器(例如,包括在所述极化编码器中或作为所述极化编码器的一部分)。所述输入向量形成器可以用于根据所述信息序列将所述多个比特映射到输入向量的位置的子集中。所述输入向量形成器还可以用于将所述输入向量的其余位置设置为解码器已知的冻结值。所述极化编码器还可以用于对所述输入向量进行编码以生成码字。
在任一前述实施例中,所述发射器还可以包括存储器。所述信息序列生成器可以用于通过从所述存储器中检索得到对应于所述范围的已存储信息序列来获得对应于所述范围的所述信息序列。
在任一前述实施例中,对应于所述范围的所述信息序列可以是基于所述范围内的一个代表值所确定的信息序列。所述代表值可以距所述范围的一端比距所述范围的另一端更近。所述代表值可以接近于或处于所述范围的一端。
在任一前述实施例中,所述发射器还可以包括打孔器,所述打孔器用于根据打孔模式对所述码字进行打孔以获得打孔码字。所述打孔码字的比特长度等于所述传输所述多个比特所要使用的已编码比特的数量。在一些实施例中,所述打孔器用于通过对所述码字进行截短来根据所述打孔模式对所述码字进行打孔。在一些实施例中,所述码字的比特长度为Nb,所述打孔码字的比特长度为M,所述打孔模式是指对所述码字的前(Nb-M)个比特进行打孔。也可以使用其它打孔模式。
在任一前述实施例中,所述多个比特可以是第一多个比特,所述值可以是第一值,所述信息序列可以是第一信息序列,所述输入向量可以是第一输入向量,所述码字可以是第一码字,所述打孔码字可以是第一打孔码字。所述极化编码器还可以用于接收第二多个比特。所述信息序列生成器还可以用于获得对应于以下项中至少一项的第二值:传输所述第二多个比特所要使用的码率和传输所述第二多个比特所要使用的第二打孔码字的比特长度。所述信息序列生成器还可以用于确定所述第二值所属的值范围。所述信息序列生成器还可以用于获得对应于所述第二值所属的的所述范围的第二信息序列。所述输入向量形成器还可以用于根据所述第二信息序列将所述第二多个比特映射到第二输入向量的位置的子集中。所述输入向量形成器还可以用于将所述第二输入向量的其余位置设置为所述解码器已知的冻结值。所述极化编码器还可以用于对所述第二输入向量进行编码以生成第二码字。所述打孔器还用于根据打孔模式对所述第二码字进行打孔以获得所述第二打孔码字。在一些实施例中,所述第一打孔码字的比特长度不同于所述第二打孔码字的比特长度。在一些实施例中,所述第二值所属的所述范围与所述第一值所属的所述范围相同。在一些实施例中,所述第一信息序列与所述第二信息序列相同。在一些实施例中,所述第二值所属的所述范围与所述第一值所属的所述范围不同。在一些实施例中,所述第一信息序列与所述第二信息序列不同。
在任一前述实施例中,所述多个比特中的至少一些可以表示多个q元符号,其中,q>2。
在任一前述实施例中,所述多个比特可以表示多个q元符号,其中,q>2,并且所述码字包括以比特表示的q元符号。
在任一前述实施例中,所述极化编码器可以通过使用至少一个极化编码器内核对所述输入向量进行编码来对所述输入向量进行编码以生成所述码字。所述编码可以包括在所述极化编码器内核处接收以比特表示的一组输入q元符号。所述编码可以包括根据所述极化编码器内核的种子矩阵变换所述一组输入q元符号,以产生以比特表示的一组输出q元符号。
附图说明
此处仅作为示例,结合附图描述了实施例。
图1为根据一项实施例的通信系统的方框图;
图2示出了使用种子矩阵G2产生克罗内克积矩阵的方法;
图3为示出根据一项实施例的使用二进制极化码来生成码字的流程图;
图4为Arikan内核示意图;
图5和图6分别为实现图3步骤208中的示例的结构示意图;
图7示出了示例通用内核;
图8示出了基于里德-所罗门(Reed-Solomon,RS)的内核;
图9和图10分别为n=2,即16个符号时的RS(4)极化编码器结构的示意图;
图11示出了根据另一项实施例的通信系统的方框图;
图12和图13分别示出了考虑打孔时使用2层RS(4)内核生成的32比特码字的解码器的一个示例;
图14示出了CRC辅助极化解码的误帧率(frame error rate,FER)曲线;
图15为根据一项实施例的由发射器执行的方法的流程图;
图16示出了发射器内的存储器中所存储的查找表(look up table,LUT);
图17示出了根据一项实施例的示出分段长度匹配的概念的三个码字;
图18为根据另一项实施例的由发射器执行的方法的流程图;
图19至图22示出了不同的FER曲线;
图23为根据另一项实施例的由发射器执行的方法的流程图;
图24示出了示例通信系统;以及
图25和图26示出了可以实现本文所述功能和/或实施例的示例设备。
具体实施方式
出于说明性目的,下文将结合附图更详细地解释具体示例实施例。
图1为根据一项实施例的通信系统122的方框图。通信系统122包括发射器124和接收器126,发射器124和接收器126通过信道128进行通信。发射器124包括极化编码器130,接收器126包括极化解码器132。
极化编码器130以及发射器124的其它数据/信号处理功能,例如,稍后描述的打孔器,可以由执行指令的处理器来执行,以使得处理器执行极化编码器130和发射器124的部分或全部操作。或者,极化编码器130以及发射器124的其它数据/信号处理功能可以以硬件或电路(例如,在一个或多个芯片组、微处理器、专用集成电路(application-specificintegrated circuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)、专用电路或它们的组合)形式来执行,并且用于执行极化编码器130和发射器124的操作。尽管未示出,但是发射器124可以包括调制器、放大器、天线和/或发射链路的其它模块或组件,或者可以用于与单独的(射频(Radio-Frequency,RF))传输模块连接,使得码字可以按照本文所述而产生,并可以直接进行传输或通过单独的传输单元或模块进行传输。发射器124还可以包括非瞬时性计算机可读介质(未示出),该非瞬时性计算机可读介质包括用于(例如由处理器或如上所述的一些其它电路)执行以下操作的指令:执行和/或控制极化编码器130和发射器124的操作,和/或控制本文所述功能和/或实施例的执行。一些实施例可以仅通过硬件来实施。在一些实施例中,由处理器执行的指令可以以软件产品的形式来体现。这些软件产品可以存储在非易失性或非瞬时性存储介质/存储器中,该非易失性或非瞬时性存储介质/存储器可以是只读光盘(compact disc read-only memory,CD-ROM)、通用串行总线(universal serial bus,USB)闪存盘或移动硬盘等。
类似地,极化解码器132以及接收器126的其它数据/信号处理功能可以由执行指令的处理器来执行,以使得处理器执行极化解码器132和接收器126的部分或全部操作。或者,极化解码器132以及接收器126的其它数据/信号处理功能可以以硬件或电路(例如,在一个或多个芯片组、微处理器、ASIC、FPGA、专用电路或它们的组合中)形式来执行,并且用于执行极化解码器132和接收器126的部分或全部操作。尽管未示出,但是接收器126可以包括天线、解调器、放大器和/或接收链的其它模块或组件,或者可选地可以用于与单独的(射频(Radio-Frequency,RF))接收模块连接,以基于由接收器126从单独的接收单元或模块直接或间接接收的极化码的码字对字进行处理和/或解码。接收器126还可以包括非瞬时性计算机可读介质(未示出),该非瞬时计算机可读介质包括用于(例如由如上所述的处理器或一些其它电路)执行以下操作的指令:执行和/或控制极化解码器132和接收器126的操作,和/或控制本文所述功能和/或实施例的执行。一些实施例可以仅通过硬件来实施。在一些实施例中,由处理器执行的指令可以以软件产品的形式来体现。该软件产品可以存储在非易失性或非瞬时性存储介质或存储器中,该非易失性或非瞬时性存储介质或存储器可以是CD-ROM、USB闪存盘或移动硬盘等。
在操作中,极化编码器130对一组m个比特进行编码以获得码字长度等于Nb个比特的对应码字x,其中,Nb>m。尽管极化编码器130接收的是比特,但是在极化编码器130中,比特可以表示一个q元字母表中的符号。词语“符号”的使用并不是指代调制星座图中的符号,而是指一个q元字母表中的元素。例如,4元字母表可以有四个符号,使用符号“0”、“1”、“2”和“3”表示,分别用比特00、01、10和11表示。
由极化编码器130输出的码字x通过信道128进行传输,并在接收器126的极化解码器132处被接收。极化解码器132执行解码以做出关于传输一组m个比特的决定。如果极化解码器132所解码的m个比特与原来传输的m个比特相匹配,则视为解码成功。如果信道128有噪声并且在码字x中引入太多差错,则极化解码可能无法纠正所有差错。
图2示出了使用种子矩阵产生克罗内克积矩阵G2的方法。图2所示为2次克罗内克积矩阵142和3次克罗内克积矩阵144。克罗内克积方法可进行迭代以产生n次克罗内克积矩阵对于码字长度为N=2n的二进制极化码,克罗内克积矩阵G是极化码的生成矩阵,并且
图3为根据一项实施例的示出使用二进制极化码来生成码字的流程图。点状气泡中示出了比特长度为Nb=8的码字的二进制极化码的具体示例,即具有生成矩阵的二进制极化码。在步骤202中,获得要传输到接收器126的k个信息比特。在该示例中,k=4个比特标记为b1b2b3b4。可选地,在步骤204中,将循环冗余校验(cyclic redundancycheck,CRC)比特等辅助比特或差错检测码(error-detecting code,EDC)比特添加到k个比特中(以产生m个信息比特)以辅助解码。应当理解,在一个码字内可以使用一个以上EDC。还应当理解,另外或可选地,还可以使用其它类型的EDC,例如,校验码、Fletcher码、散列码或其它奇偶校验码。一些EDC也可以用作纠错码(Error-Correction Code,ECC),并且可以用于针对列表解码的路径选择,以提高极化码性能等。
例如,CRC比特基于k个信息比特而生成,并且通常放置在输入向量中较可靠的位置。然而,根据这些CRC比特的预期目的(例如,用于差错检测或差错纠正或同时用于差错检测和差错纠正),CRC比特还可以分布或放置在输入向量中的其它位置。在该示例中,从k个信息比特开始,计算CRC并将CRC添加到k个信息比特中以产生包括k个信息比特和CRC比特的m个信息比特。
在图3的示例中,若在步骤204中不添加任何EDC比特,则k=m。将m个比特输入到极化编码器130中。在步骤206中,极化编码器130通过将m个比特中的每一个映射到输入向量中Nb个位置中的一个相应位置,然后将“冻结”比特放置在输入向量u中的其余位置,从而获得比特长度为Nb的输入向量u。冻结比特的值和位置对于极化编码器130和极化解码器132都是已知的。根据支持极化码构造的信道极化理论,输入向量u中的部分位置能够被正确解码的可靠性比输入向量u中的其它位置能够被正确解码的可靠性高。在极化码结构中,试图将m个比特置于输入向量u中的较可靠位置,并且将冻结比特置于输入向量u中的较不可靠位置。在图3的示例中,Nb=8,并且位置u4、u6、u7和u8是输入向量u中的较可靠位置。因此,将m个比特放置在位置u4、u6、u7和u8中。尽管通常可以将冻结比特设置为极化编码器130和极化解码器132两者已知的其它值,但是每个冻结比特的值为零。
极化编码器130可以使用内核来执行输入向量u与发生器G的乘法运算,例如,执行图3中的步骤208。图4是执行输入[u v]与种子矩阵的乘法运算的内核148的示意图。内核的种子矩阵有时还称为内核生成矩阵。内核148是二进制内核,具体是Arikan二进制内核。也可以是其它类型的二进制内核。Arikan二进制内核148接收两个输入u和v,并输出u+v和v,这两个输出表示乘法运算[u v]的输出。圆圈加符号表示模2加法。
图5是实现图3步骤208中的示例的示例结构的示意图,该示例即矩阵乘法运算图5中的每个内核148与图4所示的内核相同,因此使用相同的参考编号148表示。图5中还以字母“A”表示每个内核,因为它是Arikan二进制内核。使用了三个编码层,标记为L1、L2和L3,并且每个编码层具有四个二进制内核。编码层也可以称为编码阶段。
极化编码可以使用比特反转或不使用比特反转来执行。图5的示例结构不使用比特反转。图6中示出了执行步骤208的另一示例结构。图6中的示例执行比特反转。一般而言,极化编码器的输出可以表示为其中,在不使用比特反转的情况下,是一个N×N生成矩阵,且N=2n,n≥1。例如,若n=1,则G2=F。若使用比特反转,则其中,BN是一个N×N比特反转置换矩阵。
通用极化码
上述基于种子矩阵的二进制极化码限于二进制符号字母表。通用极化码可以被构造成对q元字母表中的符号进行编码,其中,q≥2。使用生成矩阵G对输入向量u进行编码以产生码字x。输入向量u具有m个信息符号,每个信息符号使用log2q个信息比特来表示。输入向量u中的其余位置是冻结位置,即对于极化编码器130和极化解码器132都是已知的。输入向量u与生成矩阵G的乘法运算可以使用内核层来执行,其中,每个内核在伽罗华域GF(q)中执行有限域运算,以便执行与生成矩阵G的种子矩阵Gs的乘法运算。图7中示出了示例通用内核121。内核121执行运算x=uGs,其中,u=[u1 u2 … uq-1 uq],并且x=[x1 x2… xq-1 xq]。u和x两者都是符号的向量,每个符号以log2q个比特表示。二进制内核是通用内核121在q=2时的一个特例。
例如,可以定义一个通用极化码,对4元符号进行编码,即q=4。每个输入符号是四个可能值中的一个,它们分别用符号0、1、∝和∝2表示。在执行时使用两个比特来表示每个可能的符号值:00、01、10和11。下面是可以使用的种子矩阵Gs的一个示例:
其中,定义了以下有限域运算:1+∝=∝2、1+∝2=∝、1+0=1、∝+0=∝、∝2+0=∝2、∝+∝2=1、1+1=0、∝+∝=0、∝2+∝2=0、0+0=0、∝∝2=1、∝1=∝、∝∝=∝2、0×∝=0、0×∝2=0、0×1=0、0×0=0、∝2×1=∝2、∝2∝2=∝和1×1=1。相对应的内核称为基于里德-所罗门(Reed-Solomon,RS)的内核,并且在图8中使用参考编号150示出。符号“RS(4)”用于指示内核150是对4元符号进行编码的基于RS的内核。更一般地,“RS(q)”内核是对q元符号进行编码的基于RS的内核。基于RS的内核可以具有很多性能优势,其中一些优势将在下文进一步详细描述。非二进制RS内核只是一个示例。也可以使用其它非二进制内核,例如,厄米特内核。
4元符号的码字长度限于Nb=2×4n个比特,其中,n是自然数。
图9为n=2即16个符号时的RS(4)极化编码器结构的示意图。由于每个4元符号以2个比特表示,因此码字长度为Nb=2×16=32比特。使用两个编码层L1和L2,每个编码层具有四个RS(4)内核。每个RS(4)内核接受4个4元符号即8个比特的输入,并产生4个4元符号即8个比特的输出。类似于具有二进制内核的极化编码器结构,RS(4)极化编码器结构可以具有符号索引置换,也可以不具有符号索引置换。图9示出了具有符号索引置换的结构。图10示出了不具有符号索引置换的结构。对于具有符号索引置换的结构(图9),生成矩阵是置换矩阵乘以不具有符号索引置换的编码结构的生成矩阵。本文所公开的实施例可以使用符号索引置换来实现,也可以不使用符号索引置换来实现。
对于8元字母表,内核执行矩阵乘法运算x=uGs,其中,u是8个符号的输入向量,Gs是8×8种子矩阵。执行伽罗华域GF(8)中的有限域运算。由于使用三个比特来表示每个输入符号,因此内核的输入应为八个8元符号,即24个比特。内核的输出应为八个8元符号,即24个比特。
通常,极化编码器130可以被构造成通过进行以下乘法运算来生成比特长度为Nb的码字x:x=uG,其中,x和u二都表示相应的q元符号的相应向量。每个向量x和u的符号长度Ns=qn,对应于一个比特长度Nb=log2q×qn。n个编码层中的每一层具有qn-1个内核,每个内核具有q个输入和q个输出。
下文是使用基于RS的代码等非二进制通用极化码的可能优点。由于使用相同的码字长度,可以降低解码器中给定列表大小的误帧率(frame error rate,FER),或者可以减小在给定FER时解码器中的列表大小。使用较小的列表大小可以降低实现复杂度并提高解码吞吐量,例如,可以减小用于复制、移动和排序时与列表相关的内存。
码率/长度匹配
码率R被定义为R=kb/Nb,其中,kb是信息比特的数量,Nb是与kb个信息比特对应的生成码字的比特长度。当发射器124要向接收器126传输kb个比特时,可以基于带宽等可用网络资源等要求发射器124使用可随时间变化的特定码率R/码长。
极化码限制了Nb的值。例如,当仅使用二进制内核进行极化编码时,以比特为单位的码字长度Nb被限制为2的幂,即:Nb=2n个比特。下表总结了码字长度Nb以及相对应的编码层数n,对于n的不同取值,最大可为n=12:
再如,当仅使用RS(4)内核进行极化编码时,码字长度Nb限于Nb=2×4n个比特。下表总结了码字长度Nb以及相对应的编码层数n,对于n的不同取值,最大可为n=7:
n | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
<![CDATA[N<sub>b</sub>]]> | 8 | 32 | 128 | 512 | 2048 | 8192 | 32768 |
再如,当仅使用RS(8)内核进行极化编码时,码字长度Nb限于Nb=3×8n个比特。下表总结了码字长度Nb以及相对应的编码层数n,对于n的不同取值,最大可为n=6:
n | 1 | 2 | 3 | 4 | 5 | 6 |
<![CDATA[N<sub>b</sub>]]> | 24 | 192 | 1536 | 12288 | 98304 | 786432 |
如果发射器124要以码率R进行传输,并且发射器124要传输kb个比特,则极化编码器130所使用的以比特为单位的码字长度在理想情况下应该是Nb=kb/R。但是,由于极化码的使用对Nb带来的限制可能无法使Nb的值恰好等于kb/R,即难以使得Nb=kb/R。例如,当仅使用二进制内核进行极化编码时,Nb限于2的幂。如果发射器124要传输kb=700个比特,并且发射器124必须使用的码率R为R=1/3,则理想情况下,个比特。然而,使用二进制内核无法生成恰好为Nb=2100个比特的码字长度。因此,发射器124通过对码字进行填充(延长)或打孔(截短)使码字长度恰好为M=2100个比特来进行码率匹配。因此,码率匹配通过长度匹配来执行,即,修改码字的长度以满足码率。
图11示出了根据另一实施例的图1中的通信系统122。发射器124还包括打孔器152。极化编码器130具体包括输入向量形成器147、信息序列生成器149和一个或多个内核层151。发射器124还可以包括非瞬时性计算机可读介质(未示出),该非瞬时性计算机可读介质包括用于(例如由处理器或如上所述的一些其它电路)执行以下操作的指令:执行和/或控制极化编码器130和/或打孔器152和/或发射器124的操作,和/或控制本文所述功能和/或实施例的执行。一些实施例可以仅通过硬件来实施。在一些实施例中,由处理器执行的指令可以以软件产品的形式来体现。该软件产品可以存储在非易失性或非瞬时性存储介质或存储器中,该非易失性或非瞬时性存储介质或存储器可以是CD-ROM、USB闪存盘或移动硬盘等。
接收器126中的极化解码器132具体包括比特对数似然比(log-likelihoodratio,LLR)计算机154、比特LLR到符号LLR转换器156以及解码器158。接收器126还可以包括非瞬时性计算机可读介质(未示出),该非瞬时性计算机可读介质包括用于(例如由如上所述的处理器或一些其它电路)执行以下操作的指令:执行和/或控制极化解码器132和接收器126的操作,和/或控制本文所述功能和/或实施例的执行。一些实施例可以仅通过硬件来实施。在一些实施例中,由处理器执行的指令可以以软件产品的形式来体现。该软件产品可以存储在非易失性或非瞬时性存储介质或存储器中,该非易失性或非瞬时性存储介质或存储器可以是CD-ROM、USB闪存盘或移动硬盘等。
图11可以包括未示出的其它组件,例如发射器124中的调制器和接收器126中的解调器。可以使用调制和对应的解调来计算LLR。发射器124中的其它组件还可以包括放大器、天线和/或发射链的其它模块或组件,或者可选地,发射器124可以用于与单独的(RF)传输模块连接,使得码字可以按照本文所述而产生,并可以直接进行传输或通过单独的传输单元或模块进行传输。接收器126中的其它组件可以包括天线、放大器和/或接收链路的其它模块或组件,或者可选地,接收器126可以用于与单独的(RF)接收模块连接,从而基于由接收器126直接或间接从单独的接收单元或模块接收的极化码的码字来对码字进行处理和/或解码。
在操作中,在极化编码器130处接收kb个比特。输入向量形成器147将kb个比特映射到输入向量u中的特定位置。将输入向量u中的其余位置设置为冻结位置。信息序列155指示输入向量u中的哪些位置用于接收kb个比特中的每一个以及输入向量u中的哪些位置用于接收冻结值。信息序列155由信息序列发生器149基于发射器124传输kb个比特所要使用的码率R、信道128的噪声或基于码率和编码长度的预定义工作SNR等因素而生成(在线生成或者从存储器读取)。信息序列生成器149生成信息序列155,从而尝试将输入向量u中的较可靠位置上的kb个比特和冻结值置于输入向量u中的较不可靠位置。
已知的是,信息序列155等有序序列表示子信道具有相对“可靠性”,其中,子信道是指极化过程之后的合成信道。换言之,一些子信道容量较高,一些子信道容量较低。再换言之,一些子信道的信噪比(Signal-to-Noise Ratio,SNR)较高,另一些子信道的信噪比较低。这些度量是可用于对子信道的“可靠性”进行量化或分类的特征的示例。还可以使用其它度量来指示子信道的可靠性。子信道选择基于子信道的可靠性,并且通常选择可靠性最高的子信道作为用于承载信息比特的信息子信道。
对于通用极化码,信息序列155可以是符号位置序列或者是比特位置序列。对于使用q元内核的具有Nb个比特的码字,符号位置序列的全长为Nb/log2(q),而比特位置序列的全长为Nb。以RS(4)极化码为例。对于符号位置序列,根据符号来选择放置信息比特的位置,即,表示要编码的一个符号的相邻2个比特应该都是信息比特或者都是冻结比特;而对于比特位置序列,表示一个符号的相邻两个比特可以容纳零个、一个或两个信息比特。在一些实施例中,至少在精灵辅助序列生成方法下,使用符号位置序列可以获得相比使用比特位置序列更好的纠错性能。这是因为当使用基于符号的内核时,使用符号位置序列可以更好地利用极化增益。符号位置序列实际上是比特位置序列的特例,其意义在于,符号位置序列等同于具有约束的比特位置序列,即相邻两个比特位置2*i和2*i+1(0≤i<Nb/2)都可以是信息比特位置或者冻结比特位置。因此,出于通用性考虑,以下文本中的信息序列全部指比特位置序列。
可以针对码长Nmax计算子信道中单独的、嵌套的、与SNR无关的有序序列155,其中,从较长的Nmax序列中选择码长N较短的有序序列。或者,可以根据不同母码长度Ni计算多个有序序列,并且可以基于优选码长针对特定代码选择其中一个母码长度序列。另一可能选择包括:根据SNR值计算多个有序序列,并且基于测量的SNR选择有序序列。
信息序列生成器149可以以多种不同方式执行有序序列的计算。例如,可以进行在线计算,从而产生可以基于观测到的信道条件等进行动态调整或重新计算的有序序列。可选地,还可以(例如预先)进行离线计算以产生可以在随后的编码操作过程中进行存储和检索或从存储器读取的预先计算的(并且为静态的)有序序列。在另一替代方案中,可以部分进行在线计算,部分进行离线计算。
从输入向量形成器147输出的输入向量u通过一个或多个内核层151进行编码,每个内核层包括至少一个内核,以产生比特长度为Nb的对应码字x。输入向量u在与内核层一起操作之前应当变换成一个q元符号的向量(表示为us),并且比特长度为Nb的码字x应当从一个q元符号(表示为xs)的输出向量变换而来。一个或多个内核层151执行运算xs=usG。虽然xs和us都是符号,但是它们硬件中仍然以比特表示。
极化编码器130实施极化码,其中,Nb超过根据码率R实际能够传输的比特数M=kb/R。因此,比特长度为Nb的码字x由打孔器152进行打孔以根据打孔模式153移除比特,从而产生M个比特。然后通过信道128传输M个比特。本文使用的“打孔”是指从码字中移除比特。当执行打孔时,码字长度减小。词语“截短”有时用于指从码字中移除的每个比特具有解码器已知的值的特定情况,例如,如果从码字中移除的比特是冻结比特的线性组合,则可能是这种情况。本文所使用的“打孔”包含“截短”以及从码字中移除的一个、部分或全部比特中的每一个比特具有解码器未知的值的其它实施方式。指示从码字中移除比特的任何模式都称为打孔模式。打孔模式包含将码字的位置子集截短为缩短长度的截短模式。打孔模式还包括其它类型的对比特进行打孔但不是截短模式的模式。
承载M个比特的接收信号在极化解码器132处进行处理。比特LLR计算机154先计算M个比特中每一个的比特LLR。然后,通过将每个打孔比特的比特LLR设置为0来执行去打孔,如160处所示。然后,比特LLR到符号LLR转换器156将比特LLR转换为以M个比特表示的符号的对应符号LLR。如果极化编码器130仅使用二进制内核,则每个比特表示一个符号,因此每个比特LLR是一个符号LLR,并且不需要进行比特LLR到符号LLR转换。然后,符号LLR值由解码器158进行处理以生成关于传输哪些kb比特的决定。由解码器158执行的示例解码算法是基于符号的连续消除(successive cancellation,SC)或连续消除列表(successivecancellation list,SCL)解码。图12示出了使用具有符号索引置换的2层RS(4)内核生成的32比特码字的解码器158的一个示例,其中,已对码字的前7个比特进行打孔。如160处所示,通过将7个打孔比特中的每一个的比特LLR值设置为零来执行去打孔。图13示出了解码器158的另一示例,在该示例中,同一打孔模式(即,对码字的前7个比特进行打孔)还应用于使用RS(4)内核层但不需要符号索引置换的解码器。
回到图11,打孔模式153用于对码字x的各比特进行打孔,使得码字x的Nb个比特缩减为M<Nb个比特。打孔模式153指示应对哪些比特进行打孔,即具体地应对码字x的哪些比特进行移除。当使用通用极化码对q元字母表中的符号进行编码时,其中,q>2,打孔必须考虑到各组比特表示不同符号的情况。
决定使用哪种打孔模式153与哪个信息序列155是相互关联的。一种方法是在给定固定信息序列155的情况下获得最优打孔模式153。例如,首先确定信息序列155,然后在给定信息序列155中指示的冻结位置(即,“冻结集”)的情况下生成最优打孔模式153。例如,信息序列155可以指示将kb个比特放置在输入向量u中的后kb个比特位置,因为信息序列生成器149已经确定输入向量u中的后kb个比特位置是在给定信道中的噪声和码率R的情况下的最可靠位置。然后,可以基于该特定信息序列155来计算打孔模式153,以尝试对码字x中最匹配冻结值的比特进行打孔。
另一种方法是首先选择打孔模式153,然后基于打孔模式153生成最优信息序列155。例如,在给定打孔模式153的情况下,可以优化冻结集,即优化信息序列155中的冻结位置。可以使用通过高斯近似的密度演化方法或使用模拟的精灵辅助方法来确定最优冻结集。当基于所选择的打孔模式来确定最优冻结集时,对信息序列生成器149进行修改,从而基于信道噪声(或工作SNR)和码率R等来生成信息序列155,同时还基于所选择的打孔模式153来生成信息序列155。例如,可以选择打孔模式153来简单地对码字x中的前P=Nb-M个比特进行打孔。然后,由信息序列生成器149生成最优信息序列155,以便将输入向量u中的冻结位置确定为最匹配码字x中的打孔比特的位置。
可选地,可以执行联合优化方法,在该方法中,信息序列155和打孔模式153一起生成以联合优化信息序列155和打孔模式153。可以在进行联合优化时对搜索空间进行穷尽搜索或智能还原。
图14示出了进行CRC辅助的SCL极化解码时的FER曲线,其中,Nb=2048比特,kb=600比特,R=1/3。因此,若M=1800比特,则对248个比特进行打孔。信息序列的冻结位置基于打孔模式进行优化。在进行列表大小为L=1的SC解码时,在Arikan内核上使用RS(4)内核的性能增益为:在FER=0.1时为0.45dB,在FER=0.01时为0.5dB。在进行列表大小为L=8的SCL解码时,在FER=0.1时性能增益为0.15dB,在FER=0.01时性能增益为0.17dB。
图15是由发射器124执行的方法的实施例的流程图,在该方法中,首先选择打孔模式153,然后生成信息序列155。在步骤222中,发射器124确定要在信道128上传输的比特长度M。例如,比特长度M可以按M=kb/R计算。在步骤224中,发射器124通过构造对码字x的前P=Nb-M个比特进行打孔的打孔模式来产生或确定打孔模式153。
在步骤224中,对前P=Nb-M个比特进行打孔仅是一个示例。可以根据另一打孔模式对另一组P=Nb-M个比特进行打孔(例如截短)。步骤224中的打孔模式可以包括截短模式,该截短模式确定将哪个码字比特的子集截短到所要缩短的长度。在一些实施例中,可以考虑除M之外的其它参数,例如,信息块长度K和/或码率R,来生成或确定打孔模式。例如,为了获得更好的纠错性能,在码率R低和中等的情况下可以对前Nb-M个比特进行打孔,而在码率高的情况可以使用基于块的截短或比特反转(Bit Reversal,BIV)截短。在其它实施例中,可以通过从多个可用打孔模式中选择一个打孔模式(例如,基于上述参数中的一个或多个)来确定打孔模式153。在步骤226中,发射器142向信息序列生成器149发送确定的打孔模式或使确定的打孔模式对信息序列生成器149可用。可选地,信息序列生成器149可以独立获得确定的打孔模式153。在步骤228中,信息序列生成器149部分基于打孔模式153生成信息序列155。
在一些实施例中,步骤228包括:通过每个码字x的打孔模式153以及部分或全部以下附加参数中来计算该码字x的信息序列155:(i)输入向量u的长度,等于Nb个比特;(ii)信息比特kb的数量;(iii)信道128的信噪比(signal-to-noise ratio,SNR)(或工作SNR)和(iv)要传输的比特长度M。例如,可以执行密度演进的高斯近似以在输入向量u中找到最优冻结位置,从而生成信息序列155。然而,在步骤228中执行计算可能会增加计算复杂度和时延。具体而言,当使用通用极化码对一个q元字母表中的符号进行编码时,其中,q>2,在发射器124的操作过程中以在线方式执行步骤228可能不切实际。另一可替代选项是离线预先计算、并在发射器124中存储所有可能的M值的所有信息序列。然而,这可能需要很大一部分内存来存储所有预先计算的信息序列。发射器124上的存储器限制,例如存储器空间和/或存储器存取时间,可能不允许存储所有预先计算的信息序列。
因此,在一项实施例中,如图16所示,将查找表(look up table,LUT)302存储在发射器124的存储器304中。LUT 302可以对应于特定打孔模式。LUT 302指示M所属的各个范围使用的信息序列。对于每个范围,针对该范围内的M的代表值离线计算单个信息序列,然后将该信息序列用于该范围内M的任何值。例如,若范围为MA≤M<MB,则选择代表块长度MRep,其中,MA≤MRep<MB。针对MRep离线计算该信息序列并将该信息序存储在LUT 302中。然后,在操作过程中,只要M值在范围MA≤M<MB内,就使用对应于范围MA≤M<MB的LUT 302中存储的信息序列。具体而言,若任何M值在该范围MA≤M<MB内,则选择K个最可靠的比特位置以匹配由该范围的相对应的信息序列(即,针对MRep所产生的信息序列)所指示的K个信息比特。当M大于MRep时,可以选择跳过一个或一些因大于MRep进行额外打孔而被强制作为冻结位置的比特位置。由于将M划分成多个范围并且每个范围仅存储一个信息序列,而不是对M的每个可能值存储信息序列,因此LUT会大幅缩短。
图17示出了三个码字312、314和316。若M略小于MB,则以码率R传输码字312。若M等于MRep,以码率R传输码字314。若M等于MA,则以码率R传输码字316。对于每个码字,要打孔的比特数(P=Nb-M)是不同的,但是可以使用对应于MRep的相同信息序列。在图17的示例中,示出了值MU和ML,其中,MU=MB-MRep,并且ML=MRep-MA。MU是MRep与MB之间的范围的一部分,ML是MA与MRep之间的范围的一部分,且MU大于ML。虽然不一定要使MU大于ML,但是在执行时MU可能比ML大得多。使用小于MRep的M值需要对大于MRep的部分进行额外打孔,这会导致码率变高,可用于差错检测和/或纠错的信息减少,从而可能会导致解码失败,性能进一步降低。因此,可能需要MA更接近于MRep,即ML小于MU,如图17所示。然而,使用大于MRep的M值不会导致对大于MRep的部分进行额外打孔,因此可以保存大部分重要的编码信息,损失很小。因此,可能不需要使MB接近于MRep,即MU可以大于ML,如图17所示。
图18是根据一项实施例的由发射器124执行的方法的流程图。在步骤242中,发射器124确定要在信道128上传输的比特长度M。例如,比特长度M可以按M=kb/R计算。在步骤244中,发射器124通过构造对码字x的前P=Nb-M个比特进行打孔的打孔模式来生成或确定打孔模式153。在步骤246中,发射器142向信息序列生成器149发送M值或使M值对信息序列生成器149可用。可选地,信息序列生成器149可以独立计算M值。在步骤248中,信息序列生成器149通过从LUT 302读取对应于包含M值的范围的信息序列155来生成信息序列155。图18的方法可以称为分段离线码率/长度匹配方案,因为用于代表值MRep的信息序列也用于包含在指定范围中的M的相邻值。
在步骤244中,对前P=Nb-M个比特进行打孔仅是一个示例。可以根据另一打孔模式对另一组P=Nb-M个比特进行打孔(例如截短)。步骤244中的打孔模式可以包括截短模式,该截短模式确定将要截短的码字比特的子集。在一些实施例中,可以考虑除M之外的其它参数,例如,信息块长度K和/或码率R,来生成或确定打孔模式。例如,为了获得更好的纠错性能,在码率R低和中等的情况下可以采用对前Nb-M个比特进行打孔,而在码率高的情况可以使用基于块的截短或比特反转(Bit Reversal,BIV)截短。在其它实施例中,可以通过从多个可用打孔模式中选择一个打孔模式(例如,基于上述参数中的一个或多个)来确定打孔模式。在一些实施例中,确定打孔模式包括确定打孔集,包括要打孔的子信道的数量和索引。而且,关于图16至18所述的分段方法也适用于对码字中的连续比特进行打孔的打孔模式和不对码字中的连续比特进行打孔的打孔模式。
在步骤248中,如果考虑不同的打孔模式,例如,每个打孔模式对应于相应的LUT,则可以使用不同的LUT。不同的LUT可能包含不同数量的M所属的范围和相关的代表序列。例如,在图16中,如果考虑基于块的截短或BIV截短而不是对前几个比特进行打孔,则M所属的范围的数量可能会随着可能的不同范围边界(例如M′1≤M<M′2、M′2≤M<M′3等)而改变。此外,对于相同的M值,LUT可以包含不同的代表序列(例如,对于满足M1≤M<M2和M′1≤M<M′2的M,可以在一个LUT中使用序列#1,可以在另一个LUT中可以使用不同于序列#1的序列#1')。此外,尽管在一些实施例中,每一个已存储序列的长度为Nb,但是在其它实施例中,序列中的一个、部分或全部的长度可以不是母码块长度,即2的幂。相反,若满足M所对应的范围,可以存储长度小于Nb但不小于M2的序列,其中,M2是M所对应的范围的上限。
在一些实施例中,M所属的不同范围(例如,图16中的序列#1、序列#2等)的不同信息序列可以分别对应于相同的母码长度Nb。在其它实施例中,M所属的不同范围的不同信息序列可对应于不同的母码长度(例如,图16中的每个信息序列/M的范围可对应于各自不同的母码长度)。
图18中的流程图指示序列的选择或序列生成取决于特定的打孔模式以及传输的码块长度M。
与图18的方法相关的可能优点如下所述。通过适当地划分编码比特长度间距并选择代表块长度MRep,每个范围代表一个块长度,极化编码/解码的性能可以与极化编码器计算每个M值的不同信息序列的性能相当。也可以离线生成信息序列,这可以降低实施复杂度,因为在操作过程中访问LUT 302,而不是在操作过程中计算信息序列。存储器要求可能会降低,因为信息序列是针对每个块长度值范围存储的,而不是针对每个可能的块长度值M存储的。图18的方法适用于仅使用Arikan极化码等二进制极化码的编码器以及使用基于RS的极化码等非二进制通用极化码的编码器。
上述实施例描述了基于M值所属的范围来生成或选择信息序列155,例如,通过LUT302。可选地,该范围也可以基于码率R。也就是说,码率R的不同值范围可以各自具有代表码率RRep。只要码率属于以RRep表示的范围内时,就可以使用对应于RRep的信息序列。而且,在可替代实施例中,可以预定具有母码块长度的信息序列,根据该预定的信息序列针对码块长度为M或码率为R的范围生成或确定公共打孔集。
图19至图22示出了不同的FER曲线。Nb=2048比特和kb=600比特。若代表编码比特RRep=1/3,则比特。使用列表大小L来进行SCL解码。在对应于图19和图20的模拟中使用RS(4)极化码,并且在对应于图21和图22的模拟中使用二进制极化码。绘制了不同列表大小L和不同M值的FER。从图19中可以看出,当使用比MRep小100比特的M值相比使用比MRep大100比特的M值时,FER相对于MRep=1800比特的变化更大。
图23是根据一项实施例的由发射器124等发射器执行的方法的流程图。在步骤402中,在极化编码器处接收多个比特。在步骤404中,获得对应于以下项中至少一项的值:传输多个比特所要使用的码率和传输多个比特所要使用的已编码比特的数量。在步骤406中,发射器确定该值所属的范围。该值所属的范围称为对应范围,因为它是包含该值的范围,因此是与该值对应的范围。获得该对应范围的信息序列。在步骤408中,根据信息序列将多个比特映射到输入向量的位置的子集中。在步骤410中,将输入向量中的其余位置设置为解码器已知的冻结值。在步骤412中,在极化编码器中对输入向量进行编码以生成码字。
在一些实施例中,获得对应范围的信息序列包括从存储器中检索得到对应范围的已存储信息序列。在一些实施例中,对应范围的信息序列是基于对应范围内的一个代表值所确定的信息序列。在一些实施例中,代表值距对应范围的一端比距对应范围的另一端更近。
在一些实施例中,该方法还包括根据打孔(例如截短)模式对码字进行打孔以获得打孔(例如截短)码字。打孔(例如截短)码字的比特长度等于传输多个比特所要使用的已编码比特的数量。
在一些实施例中,母码字的比特长度为Nb,打孔(例如截短)码字的比特长度为M,打孔模式是对码字的前(Nb-M)个比特进行打孔。
在一些实施例中,所述多个比特是第一多个比特,所述值是第一值,所述信息序列是第一信息序列,所述输入向量是第一输入向量,所述码字是第一码字,所述打孔码字是第一打孔码字;并且该方法还包括:(1)在极化编码器处接收第二多个比特;(2)获得对应于以下项中至少一项的第二值:传输第二多个比特所要使用的码率和传输第二多个比特所要使用的第二打孔码字的比特长度;(3)确定第二值所属的值范围,并获得对应于第二值所属的范围的第二信息序列;(4)根据第二信息序列将第二多个比特映射到第二输入向量的位置的子集中;(5)将第二输入向量中的其余位置设置为解码器已知的冻结值;(6)在极化编码器中对第二输入向量进行编码以生成第二码字;以及(7)根据打孔(例如截短)模式对第二码字进行打孔(例如截短)以获得第二打孔(例如截短)码字。
在一些实施例中,第一打孔(例如截短)码字的比特长度不同于第二打孔(例如截短)码字的比特长度。在一些实施例中,包含第二值的对应范围与包含第一值的对应范围相同,并且第一信息序列与第二信息序列相同。在其它实施例中,包含第二值的对应范围不同于包含第一值的对应范围,并且第一信息序列不同于第二信息序列。
在一些实施例中,多个比特中的至少一些表示多个q元符号,其中,q>2。例如,多个比特可以全部表示多个q元符号,并且码字可以包括以比特表示的q元符号。
在一些实施例中,对所述输入向量进行编码包括:使用至少一个极化编码器内核对输入向量进行编码以生成码字。上述编码可以包括:在极化编码器内核处接收以比特表示的一组输入q元符号;以及根据极化编码器内核的种子矩阵变换该组输入q元符号,以产生以比特表示的一组输出q元符号。q可能大于或等于2。极化编码器内核的种子矩阵有时也称为内核生成矩阵。
图24示出了可以实施本发明实施例的示例通信系统1300。通常,系统1300能够使多个无线或有线元件传送数据和其它内容。系统1300的目的可以是通过广播、窄播、用户设备到用户设备等来提供内容(语音、数据、视频、文本)。系统1300可以通过共享带宽等资源来高效操作。
在本示例中,通信系统1300包括电子设备(electronic device,ED)1310a至1310c、无线电接入网络(radio access networks,RAN)1320a和1320b、核心网1330、公共交换电话网络(public switched telephone network,PSTN)1340、因特网1350和其它网络1360。尽管在图24中示出了特定数量的这些组件或元件,但是任何合理数量的这些组件或元件都可以包括在系统1300中。
ED 1310a至1310c以及基站1370a和1370b是可用于实施部分或全部本文所述功能和/或实施例的通信设备示例。例如,ED 1310a至1310c以及基站1370a和1370b中的任一个可用于实施上述编码或解码功能(或同时实施编码和解码功能)。在另一个示例中,ED1310a至1310c以及基站1370a和1370b中的任一个可以包括上述发射器124、接收器126或同时包括发射器124和接收器126。
ED 1310a至1310c用于在系统1300中进行操作、通信或同时进行操作和通信。例如,ED 1310a至1310c用于通过无线或有线通信信道进行传输、接收或同时进行传输和接收。ED1310a至1310c中的每一个表示用于无线操作的任何合适的终端用户设备,并且可以包括(或可以称为)以下设备:用户设备/设备(user equipment/device,UE)、无线发射/接收单元(wireless transmit/receive unit,WTRU)、移动台、固定或移动用户单元、蜂窝电话、工作站(station,STA)、机器类型通信(machine type communication device,MTC)设备、个人数字助理(personal digital assistant,PDA)、智能电话、笔记本电脑、计算机、触摸板、无线传感器或消费电子设备。
在图24中,RAN 1320a和RAN 1320b分别包括基站1370a和1370b。基站1370a和1370b中的每一个用于与ED 1310a至1310c中的一个或多个进行无线连接,以能够访问基站1370a和1370b、核心网1330、PSTN 1340、互联网1350和/或其它网络1360中的任何一个。例如,基站1370a和1370b可以包括(或可以是)若干熟知的设备中的一个或多个,例如基站收发信台(base transceiver station,BTS)、Node-B(NodeB)、演进型基站(evolved NodeB,eNodeB)、家庭NodeB、gNodeB(有时称为“千兆”NodeB)、传输点(transmission point,TP)、站点控制器、接入点(access point,AP)或无线路由器。ED 1310a至1310c中的任一个可以可选地或共同地用于与基站1370a和1370b、互联网1350、核心网1330、PSTN 1340、其它网络1360或上述几项的任何组合进行连接、访问或通信。可选地,该系统可以包括RAN,例如RAN1320b,其中,对应基站1370b通过因特网1350访问核心网1330,如图所示
在图24所示的实施例中,基站1370a构成RAN 1320a的一部分,该RAN 1320a可以包括其它基站、基站控制器(base station controlle,BSC)、无线网络控制器(radionetwork controller,RNC)、中继节点、元件和/或设备。基站1370a和基站1370b中的任一个可以是如图所示的单个元件,或者是分布在对应RAN中的多个元件,等等。而且,基站1370b构成RAN 1320b的一部分,该RAN 1320b可以包括其它基站、元件和/或设备。基站1370a和基站1370b中的每一个可以用于操作以在特定地区或区域(有时称为“小区”)内传输和/或接收无线信号。小区可以进一步划分成小区扇区,并且基站1370a和基站1370b可以例如使用多个收发器来向多个扇区提供服务。在一些实施例中,基站1370a和基站1370b可以建立无线接入技术所支持的微微小区或毫微微小区。在一些实施例中,可以采用多入多出(multiple-input multiple-output,MIMO)技术,以使每个小区有多个收发器。所示的RAN1320a和RAN 1320b的数量仅是示例性的。在设计系统1300时可以考虑任何数量的RAN。
基站1370a和基站1370b使用RF、μWave、IR等无线通信链路通过一个或多个空口1390与ED 1310a至1310c中的一个或多个进行通信。空口1390可以使用任何合适的无线接入技术。例如,系统1300可以在空口1390中实施一个或多个信道接入方法,例如码分多址接入(code division multiple access,CDMA)、时分多址接入(time division multipleaccess,TDMA)、频分多址接入(frequency division multiple access,FDMA)、正交FDMA(orthogonal FDMA,OFDMA)或者单载波FDMA(single-carrier FDMA,SC-FDMA)。
基站1370a和基站1370b可以实施通用移动电信系统(Universal MobileTelecommunication System,UMTS)陆地无线电接入(Terrestrial Radio Access,TRA)以使用宽带CDMA(wideband CDMA,WCDMA)来建立空口1390。这样,基站1370a和基站1370b可以实施HSPA、HSPA+等可选地包括HSDPA、HSUPA或同时包括HSDPA和HSUPA的协议。可选地,基站1370a和基站1370b可以使用LTE、LTE-A和/或LTE-B建立具有演进型UTMS陆地无线接入(Evolved UTMS Terrestrial Radio Access,E-UTRA)的空口1390。预期系统1300可以使用多个信道接入功能,包括如上所述的那些方案。其它用于实施空口的无线技术包括IEEE802.11、802.15、802.16、CDMA2000、CDMA2000 1X、CDMA2000EV-DO、IS-2000、IS-95、IS-856、GSM、EDGE和GERAN。当然,可以使用其它多址方案和无线协议。
RAN 1320a和RAN 1320b与核心网1330通信以向ED 1310a至1310c提供各种服务,例如语音、数据和其它服务。可以理解,RAN 1320a和RAN 1320b和/或核心网1330可以与一个或多个其它RAN(未示出)进行直接或间接通信,这些其它RAN可以或不可以直接由核心网1330提供服务,并且可以或不可以使用与RAN 1320a、RAN 1320b或与RAN 1320a和RAN1320b两者相同的无线接入技术。核心网1330还可以用作(i)RAN 1320a和1320b或ED 1310a至1310c或者RAN 1320a和RAN 1320b与ED 1310a至ED 1310c两者,以及(ii)其它网络(例如PSTN 1340、互联网1350和其它网络1360)之间的网关接入。另外,ED 1310a至1310c中的部分或全部可包括用于使用不同的无线技术和/或协议通过不同无线链路与不同无线网络通信的功能。代替无线通信(或者除此之外),ED 1310a至1310c还可以通过有线通信信道与服务提供商或交换机(未示出)以及与互联网1350通信。PSTN 1340可以包括用于提供传统电话业务(plain old telephone service,POTS)的电路交换电话网络。互联网1350可以包括计算机网络或子网(内联网)或者同时包括计算机网络和子网,并且包括IP、TCP、UDP等协议。ED 1310a至1310c可以是能够根据多种无线接入技术操作的多模设备,并且包括支持这些设备所必需的多个收发器。
图25和图26示出了可以实施上述功能和/或实施例的示例设备。具体而言,图25示出了示例ED 1310,图26图示了示例基站1370。这些组件可以用在系统1300中或者用在任何其它合适的系统中。
如图25所示,ED 1310包括至少一个处理单元1400。处理单元1400执行ED 1310的各种处理操作。例如,处理单元1400可以执行信号编码、数据处理、功率控制、输入/输出处理或使ED 1310能够在系统1300中操作的任何其它功能。处理单元1400还可以用于实施部分或全部上述功能和/或实施例。每个处理单元1400包括用于执行一个或多个操作的任何适当的处理或计算设备。每个处理单元1400可以包括微处理器、微控制器、数字信号处理器、现场可编程门阵列或专用集成电路等。
ED 1310还包括至少一个收发器1402。收发器1402用于调制数据或其它内容,以通过至少一个天线或网络接口控制器(NIC,Network Interface Controller)1404进行传输。收发器1402还用于解调通过至少一个天线1404接收的数据或其它内容。每个收发器1402包括用于生成用于无线或有线传输的信号和/或处理无线或有线接收的信号的任何合适的结构。每个天线1404包括用于传输和/或接收无线或有线信号的任何合适的结构。一个或多个收发器1402可以用在ED1310中,并且一个或多个天线1404可以用在ED1310中。虽然收发器1402以单个功能单元示出,但是收发器1402也可以使用至少一个发射器和至少一个单独的接收器来实现。在一些实施例中,收发器1402可以实现先前描述的发射器124和/或接收器126。
ED 1310还包括一个或多个输入/输出设备1406或接口(例如连接到互联网1350的有线接口)。输入/输出设备1406促进与网络中的用户或其它设备(网络通信)的交互。每个输入/输出设备1406包括用于向用户提供信息或从用户接收/提供信息的任何合适的结构,例如扬声器、麦克风、小键盘、键盘、显示器或触摸屏,包括网络通信接口。
此外,ED 1310包括至少一个存储器1408。存储器1408存储由ED 1310使用、生成或收集的指令和数据。例如,存储器1408可以存储软件指令或模块,这些软件指令或模块用于实施上述以及由处理单元1400执行的部分或全部功能和/或实施例中。每个存储器1408包括任何适当的易失性和/或非易失性存储和检索设备。可以使用任何合适类型的存储器,例如随机存取存储器(random access memory,RAM)、只读存储器(read only memory,ROM)、硬盘、光盘、用户识别模块(subscriber identity module,SIM)卡、记忆棒、安全数码(secure digital,SD)存储卡等。
如图26所示,基站1370包括至少一个处理单元1450、至少一个发射器1452(其可以与先前描述的发射器124相同或不同)、至少一个接收器1454(其可以与先前描述的接收器126相同或不同)、一个或多个天线1456、至少一个存储器1458以及一个或多个输入/输出设备或接口1466。可以使用未示出的收发器来代替发射器1452和接收器1454。调度器1453可以耦合到处理单元1450。调度器1453可包括在基站1370内或与基站1370分开操作。处理单元1450实施基站1370的各种处理操作,例如信号编码、数据处理、功率控制、输入/输出处理或任何其它功能。处理单元1450还可以用于实施部分或全部上述详细描述的功能和/或实施例。每个处理单元1450包括用于执行一个或多个操作的任何适当的处理或计算设备。每个处理单元1450可以包括微处理器、微控制器、数字信号处理器、现场可编程门阵列或专用集成电路等。
每个发射器1452包括用于生成信号以对一个或多个ED或其它设备进行无线或有线传输的任何合适的结构。每个接收器1454包括用于处理从一个或多个ED或其它设备无线或有线接收的信号的任何合适的结构。尽管至少一个发射器1452和至少一个接收器1454以独立组件示出,但是可以将至少一个发射器1452和至少一个接收器1454合并为收发器。每个天线1456包括用于传输和/或接收无线或有线信号的任何合适的结构。尽管本文示出的公共天线1456耦合到发射器1452和接收器1454两者,但是可以将一个或多个天线1456耦合到发射器1452,并且可以将一个或多个单独的天线1456耦合到接收器1454。每个存储器1458包括任何合适的易失性和/或非易失性存储和检索设备,例如上面结合ED 1310所述的那些设备。存储器1458存储由基站1370使用、生成或收集的指令和数据。例如,存储器1458可以存储软件指令或模块,这些软件指令或模块用于实施部分或全部上述并由处理单元1450执行的功能和/或实施例。
每个输入/输出设备1466促进与网络中的用户或其它设备(网络通信)的交互。每个输入/输出设备1466包括用于向用户提供信息或从用户接收/提供信息的任何合适的结构,包括网络通信接口。
尽管已经参考本发明的特定特征和实施例描述了本发明,但是可以在不脱离本发明的情况下对本发明做出各种修改和组合。说明书和附图仅被视为所附权利要求书所定义的本发明一些实施例的说明并且考虑属于本说明书的范围内的任何和所有修改、变体、组合或等效物。因此,虽然已详细地描述了本发明及其优点,可以在不脱离如所附权利要求书所界定的本发明的情况下对本发明做出各种改变、替代和更改。此外,本发明的范围并不局限于说明书中所述的过程、机器、制造、物质组分、构件、方法和步骤的特定实施例。所属领域的一般技术人员可从本发明中轻易地了解,可根据本发明使用现有的或即将开发出的,具有与本文所描述的相应实施例实质相同的功能,或能够取得与所述实施例实质相同的结果的过程、机器、制造、物质组分、构件、方法或步骤。相应地,所附权利要求范围旨在包括这些流程、机器、制造、物质组分、构件、方法或步骤。
此外,本文中举例说明的执行指令的任何模块、组件或设备都可以包括用于存储信息的非瞬时性计算机/处理器可读存储介质或对该非瞬时性计算机/处理器可读存储介质进行访问,这些信息包括例如计算机/处理器可读指令、数据结构、程序模块和/或其它数据。非瞬时性计算机/处理器可读存储介质的非穷尽示例列表包括磁带盒、磁带、磁盘存储或其它磁存储设备、只读光盘(compact disc read-only memory,CD-ROM)、数字视频光盘或数字多功能光盘(digital versatile disc,DVD)、蓝光光盘TM或其它光存储等光盘、以任何方法或技术、随机存取存储器(random-access memory,RAM)、只读存储器(read-onlymemory,ROM)、电可擦除可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、闪存或其它存储器技术实现的易失性和非易失性可移动和不可移动介质。任何这样的非瞬时性计算机/处理器存储介质都可以是可对其访问或可与其连接的设备的一部分。本文所述的任何应用或模块都可以使用计算机/处理器可读/可执行指令来实现,这些指令可以存储/保存在这种非瞬时性计算机/处理器可读存储介质中。
Claims (29)
1.一种在发射器处执行的方法,包括:
在极化编码器处接收多个比特;
获得对应于以下项中至少一项的值:传输所述多个比特所要使用的码率和传输所述多个比特所要使用的已编码比特的数量;
确定所述值所属的值范围,并获得对应于所述值所属的所述范围的信息序列,所述信息序列用于所述范围内的任何值,所述信息序列用于指示所述多个比特的输入向量的位置的子集;
根据所述信息序列将所述多个比特映射到所述输入向量的位置的子集中;
将所述输入向量的其余位置设置为解码器已知的冻结值;以及
在所述极化编码器中对所述输入向量进行编码以生成码字。
2.根据权利要求1所述的方法,其特征在于,获得对应于所述范围的所述信息序列包括:
从存储器中检索得到对应于所述范围的已存储信息序列。
3.根据权利要求1或2所述的方法,其特征在于,对应于所述范围的所述信息序列是基于所述范围内的一个代表值所确定的信息序列。
4.根据权利要求3所述的方法,其特征在于,所述代表值距所述范围的一端比距所述范围的另一端更近。
5.根据权利要求1至4中任一项所述的方法,其特征在于,还包括:根据打孔模式对所述码字进行打孔以获得打孔码字,其中,所述打孔码字的比特长度等于所述传输所述多个比特所要使用的已编码比特的数量。
6.根据权利要求5所述的方法,其特征在于,根据所述打孔模式对所述码字进行打孔包括对所述码字进行截短。
7.根据权利要求5或6所述的方法,其特征在于,所述码字的比特长度为Nb,所述打孔码字的比特长度为,其中,所述打孔模式是指对所述码字的前(Nb-M)个比特进行打孔。
8.根据权利要求5至7中任一项所述的方法,其特征在于,所述多个比特是第一多个比特,所述值是第一值,所述信息序列是第一信息序列,所述输入向量是第一输入向量,所述码字是第一码字,并且所述打孔码字是第一打孔码字;所述方法还包括:
在所述极化编码器处接收第二多个比特;
获得对应于以下项中至少一项的第二值:传输所述第二多个比特所要使用的码率和传输所述第二多个比特所要使用的第二打孔码字的比特长度;
确定所述第二值所属的值范围,并获得对应于所述第二值所属的所述范围的第二信息序列;
根据所述第二信息序列将所述第二多个比特映射到第二输入向量的位置的子集中;
将所述第二输入向量的其余位置设置为所述解码器已知的冻结值;
在极化编码器中对所述第二输入向量进行编码以生成第二码字;以及
根据打孔模式对所述第二码字进行打孔以获得所述第二打孔码字。
9.根据权利要求8所述的方法,其特征在于,所述第一打孔码字的比特长度不同于所述第二打孔码字的比特长度。
10.根据权利要求8或9所述的方法,其特征在于,所述第二值所属的所述范围与所述第一值所属的所述范围相同,并且所述第一信息序列与所述第二信息序列相同。
11.根据权利要求8或9所述的方法,其特征在于,所述第二值所属的所述范围与所述第一值所属的所述范围不同,并且所述第一信息序列与所述第二信息序列不同。
12.根据权利要求1至11中任一项所述的方法,其特征在于,所述多个比特中的至少一些表示多个q元符号,其中,q>2。
13.根据权利要求1至11中任一项所述的方法,其特征在于,所述多个比特表示多个q元符号,其中,q>2,并且所述码字包括以比特表示的q元符号。
14.根据权利要求12或13所述的方法,其特征在于,对所述输入向量进行编码包括:
使用至少一个极化编码器内核对所述输入向量进行编码以生成所述码字,所述编码包括:
在所述极化编码器内核处接收以比特表示的一组输入q元符号;以及
根据所述极化编码器内核的种子矩阵变换所述一组输入q元符号,以产生以比特表示的一组输出q元符号。
15.一种发射器,包括:
极化编码器,用于接收多个比特;
信息序列生成器,用于:
获得对应于以下项中至少一项的值:传输所述多个比特所要使用的码率和传输所述多个比特所要使用的已编码比特的数量;以及
确定所述值所属的值范围,并获得对应于所述值所属的所述范围的信息序列,所述信息序列用于所述范围内的任何值,所述信息序列用于指示所述多个比特的输入向量的位置的子集;
输入向量形成器,用于:
根据所述信息序列将所述多个比特映射到所述输入向量的位置的子集中;
将所述输入向量的其余位置设置为解码器已知的冻结值;以及
所述极化编码器还用于对所述输入向量进行编码以生成码字。
16.根据权利要求15所述的发射器,其特征在于,还包括存储器,其中,所述信息序列生成器用于通过从所述存储器中检索得到对应于所述范围的已存储信息序列来获得对应于所述范围的所述信息序列。
17.根据权利要求15或16所述的发射器,其特征在于,对应于所述范围的所述信息序列是基于所述范围内的一个代表值所确定的信息序列。
18.根据权利要求17所述的发射器,其特征在于,所述代表值距所述范围的一端比距所述范围的另一端更近。
19.根据权利要求15至18中任一项所述的发射器,其特征在于,还包括打孔器,所述打孔器用于根据打孔模式对所述码字进行打孔以获得打孔码字,其中,所述打孔码字的比特长度等于所述传输所述多个比特所要使用的已编码比特的数量。
20.根据权利要求19所述的发射器,其特征在于,所述打孔器用于通过对所述码字进行截短来根据所述打孔模式对所述码字进行打孔。
21.根据权利要求19或20所述的发射器,其特征在于,所述码字的比特长度为Nb,所述打孔码字的比特长度为M,其中,所述打孔模式是指对所述码字的前(Nb-M)个比特进行打孔。
22.根据权利要求19至21中任一项所述的发射器,其特征在于,所述多个比特是第一多个比特,所述值是第一值,所述信息序列是第一信息序列,所述输入向量是第一输入向量,所述码字是第一码字,并且所述打孔码字是第一打孔码字;以及
所述极化编码器还用于接收第二多个比特;
所述信息序列生成器还用于:
获得对应于以下项中至少一项的第二值:传输所述第二多个比特所要使用的码率和传输所述第二多个比特所要使用的第二打孔码字的比特长度;以及
确定所述第二值所属的值范围,并获得对应于所述第二值所属的所述范围的第二信息序列;
所述输入向量形成器还用于:
根据所述第二信息序列将所述第二多个比特映射到第二输入向量的位置的子集中;以及
将所述第二输入向量的其余位置设置为所述解码器已知的冻结值;
所述极化编码器还用于对所述第二输入向量进行编码以生成第二码字;以及
所述打孔器还用于根据打孔模式对所述第二码字进行打孔以获得所述第二打孔码字。
23.根据权利要求22所述的发射器,其特征在于,所述第一打孔码字的比特长度不同于所述第二打孔码字的比特长度。
24.根据权利要求22或23所述的发射器,其特征在于,所述第二值所属的所述范围与所述第一值所属的所述范围相同,并且所述第一信息序列与所述第二信息序列相同。
25.根据权利要求22或23所述的发射器,其特征在于,所述第二值所属的所述范围与所述第一值所属的所述范围不同,并且所述第一信息序列与所述第二信息序列不同。
26.根据权利要求15至25中任一项所述的发射器,其特征在于,所述多个比特中的至少一些表示多个q元符号,其中,q>2。
27.根据权利要求15至25中任一项所述的发射器,其特征在于,所述多个比特表示多个q元符号,其中,q>2,并且所述码字包括以比特表示的q元符号。
28.根据权利要求26或27所述的发射器,其特征在于,所述极化编码器用于通过以下操作来对所述输入向量进行编码:
使用至少一个极化编码器内核对所述输入向量进行编码以生成所述码字,所述编码包括:
在所述极化编码器内核处接收以比特表示的一组输入q元符号;以及
根据所述极化编码器内核的种子矩阵变换所述一组输入q元符号,以产生以比特表示的一组输出q元符号。
29.一种计算机可读介质,其特征在于,所述计算机可读介质存储有指令,发射机在执行所述指令时,执行如权利要求1-14中任意一项所述的方法。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662351438P | 2016-06-17 | 2016-06-17 | |
US62/351,438 | 2016-06-17 | ||
US15/607,591 US10567011B2 (en) | 2016-06-17 | 2017-05-29 | Systems and methods for piece-wise rate matching when using polar codes |
US15/607,591 | 2017-05-29 | ||
PCT/CN2017/087351 WO2017215494A1 (en) | 2016-06-17 | 2017-06-06 | Systems and methods for piece-wise rate matching when using polar codes |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109196781A CN109196781A (zh) | 2019-01-11 |
CN109196781B true CN109196781B (zh) | 2023-05-12 |
Family
ID=60661460
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780033716.3A Active CN109196781B (zh) | 2016-06-17 | 2017-06-06 | 使用极化码时的分段码率匹配系统和方法 |
Country Status (8)
Country | Link |
---|---|
US (1) | US10567011B2 (zh) |
EP (1) | EP3459180B1 (zh) |
JP (1) | JP6803932B2 (zh) |
KR (1) | KR102103264B1 (zh) |
CN (1) | CN109196781B (zh) |
BR (1) | BR112018076250A2 (zh) |
CA (1) | CA3028013C (zh) |
WO (1) | WO2017215494A1 (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10312946B2 (en) * | 2017-02-06 | 2019-06-04 | Mitsubishi Electric Research Laboratories, Inc. | Soft-output decoding of codewords encoded with polar code |
CN108809334B (zh) | 2017-05-05 | 2021-07-20 | 中兴通讯股份有限公司 | 序列确定方法及装置、设备 |
GB2563418B (en) * | 2017-06-15 | 2020-04-22 | Accelercomm Ltd | Polar encoder, communication unit, integrated circuit and method therefor |
GB2563419B (en) * | 2017-06-15 | 2020-04-22 | Accelercomm Ltd | Polar decoder, communication unit, integrated circuit and method therefor |
CN107342846B (zh) | 2017-06-27 | 2023-01-13 | 华为技术有限公司 | 一种编码方法、无线设备和芯片 |
CN111034074B (zh) * | 2017-08-11 | 2021-11-30 | 中兴通讯股份有限公司 | 用于处理极化码的系统和方法 |
CN109391353B (zh) * | 2017-08-11 | 2021-09-14 | 华为技术有限公司 | 一种速率匹配的方法和装置 |
US11031958B2 (en) * | 2018-06-25 | 2021-06-08 | Qualcomm Incorporated | Hybrid polar code design for ultra-reliable low latency communications (URLLC) |
CN110661533B (zh) * | 2018-06-28 | 2023-05-16 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 优化译码器存储极化码译码性能的方法 |
KR20200084687A (ko) * | 2019-01-03 | 2020-07-13 | 삼성전자주식회사 | 비이진 폴라 코드를 수신하는 장치 및 이의 디코딩 방법 |
WO2020160172A1 (en) * | 2019-01-29 | 2020-08-06 | Idac Holdings, Inc. | Methods and procedures for polar encoding and decoding with low latency |
US11681577B2 (en) * | 2020-01-31 | 2023-06-20 | The Regents Of The University Of California | Non-stationary polar codes for resistive memories |
CN111865492B (zh) * | 2020-06-19 | 2021-12-14 | 北京邮电大学 | 中继系统中的信息传输方法、装置、设备及存储介质 |
CN115208514B (zh) * | 2022-06-24 | 2023-09-05 | 中国人民解放军海军航空大学 | 基于对偶空间的极化码参数识别方法、装置及计算机设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102694625A (zh) * | 2012-06-15 | 2012-09-26 | 北京邮电大学 | 一种循环冗余校验辅助的极化码译码方法 |
CN104539393A (zh) * | 2015-01-07 | 2015-04-22 | 北京邮电大学 | 一种基于极化码的信源编码方法 |
WO2015066925A1 (zh) * | 2013-11-11 | 2015-05-14 | 华为技术有限公司 | 一种Polar码编码方法、装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103023618B (zh) | 2013-01-11 | 2015-04-22 | 北京邮电大学 | 一种任意码长的极化编码方法 |
US9007241B2 (en) * | 2013-09-16 | 2015-04-14 | Seagate Technology Llc | Reduced polar codes |
US10135460B2 (en) * | 2013-10-01 | 2018-11-20 | Texas Instruments Incorporated | Apparatus and method for multilevel coding (MLC) with binary alphabet polar codes |
-
2017
- 2017-05-29 US US15/607,591 patent/US10567011B2/en active Active
- 2017-06-06 WO PCT/CN2017/087351 patent/WO2017215494A1/en unknown
- 2017-06-06 CA CA3028013A patent/CA3028013C/en active Active
- 2017-06-06 JP JP2018565693A patent/JP6803932B2/ja active Active
- 2017-06-06 EP EP17812605.8A patent/EP3459180B1/en active Active
- 2017-06-06 BR BR112018076250-4A patent/BR112018076250A2/pt unknown
- 2017-06-06 CN CN201780033716.3A patent/CN109196781B/zh active Active
- 2017-06-06 KR KR1020197001010A patent/KR102103264B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102694625A (zh) * | 2012-06-15 | 2012-09-26 | 北京邮电大学 | 一种循环冗余校验辅助的极化码译码方法 |
WO2015066925A1 (zh) * | 2013-11-11 | 2015-05-14 | 华为技术有限公司 | 一种Polar码编码方法、装置 |
CN104539393A (zh) * | 2015-01-07 | 2015-04-22 | 北京邮电大学 | 一种基于极化码的信源编码方法 |
Non-Patent Citations (1)
Title |
---|
Non-Binary Polar Codes using Reed- Solomon Codes and Algebraic Geometry Codes;Ryuhei Mori等;《2010 IEEE Information Theory Workshop》;20100930;摘要、正文第Ⅱ-Ⅲ节 * |
Also Published As
Publication number | Publication date |
---|---|
EP3459180B1 (en) | 2022-09-21 |
JP6803932B2 (ja) | 2020-12-23 |
US20170366205A1 (en) | 2017-12-21 |
CA3028013A1 (en) | 2017-12-21 |
CA3028013C (en) | 2022-04-19 |
EP3459180A4 (en) | 2019-05-01 |
WO2017215494A1 (en) | 2017-12-21 |
CN109196781A (zh) | 2019-01-11 |
KR102103264B1 (ko) | 2020-04-22 |
JP2019518388A (ja) | 2019-06-27 |
BR112018076250A2 (pt) | 2019-03-26 |
US10567011B2 (en) | 2020-02-18 |
KR20190017040A (ko) | 2019-02-19 |
EP3459180A1 (en) | 2019-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109196781B (zh) | 使用极化码时的分段码率匹配系统和方法 | |
CN109314600B (zh) | 用于在使用通用极化码时进行速率匹配的系统和方法 | |
CN109314524B (zh) | 使用通用极化码时通过异构内核进行速率匹配的系统和方法 | |
CN109716692B (zh) | 用于并行极化码编码/解码的方法和设备 | |
US10554223B2 (en) | Apparatus and methods for polar code construction | |
US11418220B2 (en) | Method, system, and apparatus for a segmented polarization-adjusted convolutional (PAC) code | |
WO2014044072A1 (zh) | 混合极性码的生成方法和生成装置 | |
WO2018032986A1 (en) | Reduced-stage polar decoding | |
CN110663189B (zh) | 用于极化编码的方法和装置 | |
CN111386664B (zh) | 极化编码方法及装置 | |
WO2016172937A1 (zh) | 一种利用多元极化码进行数据传输的方法、装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |