一种卷积编码方法及卷积编码器的制作方法

文档序号:7614343阅读:456来源:国知局
专利名称:一种卷积编码方法及卷积编码器的制作方法
技术领域
本发明属于移动通信领域,尤其涉及一种WCDMA通信系统中使用的卷积编码方法及卷积编码器。
背景技术
卷积编码具有较高的编码处理增益的同时,具有译码实现较简单的特点,在各种信道编码中得到了广泛的应用。在WCDMA(Wideband Code DivisionMultiple Access,宽带码分多址)中作为一种重要的编码方法被采用,主要应用于对处理延时较敏感的业务,如语音业务等。
如图1所示,在3GPP2 25.212协议中,卷积编码包括1/2卷积编码和1/3卷积编码。1/2卷积编码和1/3卷积编码对每个输入比特的处理时间不一样,对于1/2卷积编码,1个输入比特对应2个输出比特,对于1/3卷积编码,1个输入比特对应3个输出比特。
卷积编码的每个输出比特是对移位寄存器中的某几个寄存器做模2加(异或)操作,通常的做法是把对应抽头位置的寄存器直接做异或。例如分别用D0,D1,D2......D7表示移位寄存器每个寄存器的内容,对于1/2卷积编码,2个输出比特可以分别表示为(输入+D1+D2+D3+D7)MOD 2和(输入++D0+D1+D2+D4+D6+D7)MOD 2。对于1/3卷积编码,3个输出比特可以分别表示为(输入+D1+D2+D4+D5+D6+D7)MOD 2、(输入+D0+D2+D3+D6+D7)MOD 2和(输入+D0+D1+D4+D7)MOD 2。
图2示出了现有技术中同时支持1/2和1/3卷积编码的卷积编码器的结构,输入到移位寄存器201的数据通过模2加运算器202进行异或操作,为了同时支持1/2卷积编码和1/3卷积编码,模2加运算器202中有5套模2加运算单元(1~5),分别完成1/2卷积编码2个输出比特和1/3卷积编码3个输出比特的计算,多路选择器203根据编码模式(1/2编码还是1/3编码)和对应编码模式下的输出比特次序选择输出某个运模2加运算单元的比特。
由上可见,现有的卷积编码器需要比较多的模2加运算单元,并且每个模2加运算单元都是根据特定多项式固化的,如果支持其他的多项式计算,需要修改硬件。

发明内容
本发明的目的在于解决现有技术在实现卷积编码过程中存在的耗用较多的模2加运算单元,而且仅能支持特定的多项式,不能灵活配置的问题。
为了实现上述目的,本发明提供了一种卷积编码方法,对输入比特进行卷积编码运算,输出多个输出比特,根据编码速率和输出比特个数配置多个多项式,所述多项式的系数与每个输出比特相对应;所述方法包括下述步骤接收输入比特,将输入比特以及寄存器中的数据合并,输出第一结果;根据编码速率和输出比特的次序选择对应的多项式系数,输出第二结果;对所述第一结果和第二结果做按位与运算,输出第三结果;对所述第三结果的比特内部做位异或运算,输出编码结果。
所述编码速率为1/2和1/3编码。
所述按位与运算为将所述第一结果与第二结果的比特数据做对应比特的逻辑与操作。
所述多项式系数为9比特,最低位用于控制输入比特。
为了更好地实现发明目的,本发明进一步提供了一种卷积编码器,用于对输入比特进行卷积编码运算,输出多个输出比特,所述卷积编码器包括根据编码速率和输出比特个数配置多个多项式的多项式存储单元,所述多项式的系数与每个输出比特相对应;
接收输入比特,将输入比特以及寄存器中的数据合并,输出第一结果的移位寄存器;根据编码速率和输出比特的次序选择对应的多项式系数,输出第二结果的多项式选择单元;对所述第一结果和第二结果做按位与运算,输出第三结果的位与运算单元;以及对所述第三结果的比特内部做位异或运算,输出编码结果的模2加运算单元。
所述编码速率为1/2和1/3编码。
所述移位寄存器为8比特。
所述按位与运算为将移位寄存器输出的比特数据与多项式选择单元输出的比特数据做对应比特的逻辑与操作。
所述多项式系数为9比特,最低位用于控制输入比特。
本发明可以同时支持1/2和1/3编码,并可以通过软件灵活配置多项式,支持各种编码速率的编码运算,实现简单。


图1是1/2和1/3卷积编码器的一般构成图;图2是现有技术中卷积编码器的结构图;图3是本发明提供的卷积编码器的结构图。
具体实施例方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明对现有技术中的卷积编码运算处理进行优化,根据不同的编码速率和输出比特个数配置相应的多项式,每个多项式系数对应一个特定的输出比特,多项式由软件进行配置,灵活支持各种多项式系数的改变。
在对每个输出比特进行编码输出时,首先,选择一个与该输出比特对应的多项式系数,用这个多项式系数的对应比特和移位寄存器(包括输入比特)的对应比特做“按位与”操作,得到中间结果。其次,对第一步得到的中间结果内的所有比特做“模2加”(异或)操作。因此,本发明只需要1个位与运算单元和1个模2加运算单元就可以完成1/2或1/3卷积编码的运算,简化了现有卷积编码器的结构。
1/2卷积编码和1/3卷积编码都是对移位寄存器中的结果进行模2加,只是每个输出抽头上参加运算的寄存器不一样。对于3GPP2 25.212协议里规定的1/2卷积编码,第一比特输出参加运算的寄存器分别是第1、2、3、7等4个寄存器;第二比特输出参加运算的寄存器分别是第0、1、2、4、6、7等5个寄存器。对于1/3卷积编码,第一比特输出参加运算的寄存器分别是1、2、4、5、6、7;第二比特输出参加运算的寄存器分别是0、2、3、6、7;第三比特输出参加运算的寄存器分别是0、1、4、7。因此在本发明中,对于1/2卷积编码和1/3卷积编码,设计成共用同一套8比特移位寄存器。
图3示出了本发明提供的卷积编码器的结构,包括移位寄存器301、多项式存储单元302、多项式选择单元303、位与运算单元304和模2加运算单元305。
移位寄存器301包括8个寄存器,对输入比特依次进行移位操作,每输入一比特,移位寄存器301移位一次。移位寄存器301输出的数据是把输入比特以及8个寄存器的内容合并成一个9比特的数据,输入比特,0号寄存器、1号寄存器......7号寄存器分别对应输出数据的第0位,第1位、第2位......和第8位。
多项式存储单元302存储多个多项式,多项式系数与比特输出参加运算的寄存器有关,包括五个多项式系数(1~5),分别对应1/2卷积编码的第一比特输出、第二比特输出和1/3卷积编码的第一比特输出、第二比特输出和第3比特输出。多项式系数有默认值,对应3GPP2 25.212协议规定的1/2卷积编码和1/3卷积编码的多项式系数,同时在本发明中,多项式可以由软件进行配置,可以支持协议对多项式系数的改变。
为了支持输入比特也可以被选择参加模2加运算,多项式系数设计成9比特,最低位用于控制输入比特。相应的,对于1/2卷积编码的第一比特输出和第二比特输出对应的多项式系数分别为200011201和120201111。对于1/3卷积编码的第一比特输出、第二比特输出和第三比特输出对应的多项式系数分别为111201201、120012011和200200111。多项式系数中每位的值表示对应寄存器位置是否有抽头,1表示有抽头,0表示无抽头。第0比特表示输入比特处是否有抽头、第1比特表示移位寄存器301中的第0个寄存器处是否有抽头......第8比特表示移位寄存器301中的第7个寄存器处是否有抽头。
多项式选择单元303根据当前的编码速率(1/2卷积编码还是1/3卷积编码)以及输出比特的次序选择相应的多项式系数。在1/2卷积编码中,如果当前需要输出第一比特,选择多项式1的系数;如果需要输出第二比特,选择多项式2的系数。在1/3卷积编码中,如果当前需要输出第一比特,选择多项式3的系数;如果需要输出第二比特,选择多项式4的系数;如果需要输出第三比特,选择多项式5的系数。
位与运算单元304对移位寄存器301输出的结果和多项式选择单元303输出的多项式系数做“按位与”运算,并将运算结果输出到模2加运算单元305。这里所说的“按位与”运算是指对移位寄存器301输出的9比特数据A[8:0]和多项式选择单元303输出的9比特数据B[8:0]做对应比特的“逻辑与”操作,即A的第0比特A
和B的第0比特B
做“逻辑与”,A的第1比特A[1]和B的第1比特B[1]做“逻辑与”,......A的第8比特A[8]和B的第8比特B[8]做“逻辑与”。
模2加运算单元305对位与运算单元304输出的结果进行9比特内部的“位异或”操作,并将运算结果输出。这里所说的“位异或”操作是指把9比特数据进行模2加运算。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种卷积编码方法,对输入比特进行卷积编码运算,输出多个输出比特,其特征在于,根据编码速率和输出比特个数配置多个多项式,所述多项式的系数与每个输出比特相对应;所述方法包括下述步骤接收输入比特,将输入比特以及寄存器中的数据合并,输出第一结果;根据编码速率和输出比特的次序选择对应的多项式系数,输出第二结果;对所述第一结果和第二结果做按位与运算,输出第三结果;对所述第三结果的比特内部做位异或运算,输出编码结果。
2.如权利要求1所述的卷积编码方法,其特征在于,所述编码速率为1/2和1/3编码。
3.如权利要求1所述的卷积编码方法,其特征在于,所述按位与运算为将所述第一结果与第二结果的比特数据做对应比特的逻辑与操作。
4.如权利要求1所述的卷积编码方法,其特征在于,所述多项式系数为9比特,最低位用于控制输入比特。
5.一种卷积编码器,用于对输入比特进行卷积编码运算,输出多个输出比特,其特征在于,所述卷积编码器包括根据编码速率和输出比特个数配置多个多项式的多项式存储单元,所述多项式的系数与每个输出比特相对应;接收输入比特,将输入比特以及寄存器中的数据合并,输出第一结果的移位寄存器;根据编码速率和输出比特的次序选择对应的多项式系数,输出第二结果的多项式选择单元;对所述第一结果和第二结果做按位与运算,输出第三结果的位与运算单元;以及对所述第三结果的比特内部做位异或运算,输出编码结果的模2加运算单元。
6.如权利要求5所述的卷积编码器,其特征在于,所述编码速率为1/2和1/3编码。
7.如权利要求5所述的卷积编码器,其特征在于,所述移位寄存器为8比特。
8.如权利要求5所述的卷积编码器,其特征在于,所述按位与运算为将移位寄存器输出的比特数据与多项式选择单元输出的比特数据做对应比特的逻辑与操作。
9.如权利要求5所述的卷积编码器,其特征在于,所述多项式系数为9比特,最低位用于控制输入比特。
全文摘要
本发明适用于移动通信领域,提供了一种卷积编码方法和卷积编码器,对输入比特进行卷积编码运算,输出多个输出比特,根据编码速率和输出比特个数配置多个多项式,所述多项式的系数与每个输出比特相对应;所述方法包括下述步骤接收输入比特,将输入比特以及寄存器中的数据合并,输出第一结果;根据编码速率和输出比特的次序选择对应的多项式系数,输出第二结果;对所述第一结果和第二结果做按位与运算,输出第三结果;对所述第三结果的比特内部做位异或运算,输出编码结果。本发明可以同时支持1/2和1/3编码,并可以通过软件灵活配置多项式,支持各种编码速率的编码运算,实现简单。
文档编号H04Q7/20GK1855733SQ200510034519
公开日2006年11月1日 申请日期2005年4月29日 优先权日2005年4月29日
发明者张家佶 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1