[go: up one dir, main page]

CN102201818A - 一种Turbo译码结果的输出方法及装置 - Google Patents

一种Turbo译码结果的输出方法及装置 Download PDF

Info

Publication number
CN102201818A
CN102201818A CN2011101227201A CN201110122720A CN102201818A CN 102201818 A CN102201818 A CN 102201818A CN 2011101227201 A CN2011101227201 A CN 2011101227201A CN 201110122720 A CN201110122720 A CN 201110122720A CN 102201818 A CN102201818 A CN 102201818A
Authority
CN
China
Prior art keywords
bit
data
register
shift register
parallel shift
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.)
Granted
Application number
CN2011101227201A
Other languages
English (en)
Other versions
CN102201818B (zh
Inventor
陈月强
董亮
吴枫
张彩虹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nantong Donghu International Travel Agency Co ltd
Original Assignee
ZTE Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN201110122720.1A priority Critical patent/CN102201818B/zh
Publication of CN102201818A publication Critical patent/CN102201818A/zh
Priority to PCT/CN2011/081264 priority patent/WO2012151864A1/zh
Application granted granted Critical
Publication of CN102201818B publication Critical patent/CN102201818B/zh
Withdrawn - After Issue legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/65Purpose and implementation aspects
    • H03M13/6561Parallelized implementations

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明提供了一种Turbo译码结果的输出方法及装置,所述方法包括:将以码块CB为单位存储的Turbo译码结果读取到并行移位寄存器中;根据所述CB的相关信息,选择并行移位寄存器的抽头位置,进行数据拼接;控制拼接结果的输出。本发明提供的一种Turbo译码结果的输出方法及装置,通过并行移位寄存器和数据拼接控制模块实现了对Turbo译码结果的并行处理,能够低成本、高效率地实现Turbo译码结果的输出,具有存储开销低、处理时延小和处理简单等特点,提高了系统处理能力,利于成本的降低。

Description

一种Turbo译码结果的输出方法及装置
技术领域
本发明涉及通信的译码处理技术,尤其涉及一种Turbo译码结果的输出方法及装置。
背景技术
Turbo码巧妙地将两个简单分量码通过伪随机交织器并行级联来构造具有伪随机特性的长码,Turbo码的性能远远超过其他编码方式,因此得到越来越多的关注和发展。然而,Turbo译码的处理比较复杂,所以为了提高Turbo译码的吞吐率,基带系统中多采用现场可编程门阵列(Field Programmable Gate Array,FPGA)、或专用集成电路(Application Specific Integrated Circuit,ASIC)来完成Turbo译码处理。
根据第三代合作伙伴计划(The 3rd Generation Partnership Project,3GPP)TS25.212和TS25.222中规定,当一个传输块(Transport Block,TB)的长度大于5114bit时,需要对该TB进行码块(Code Block,CB)分割,分割后的CB大小可以为40bit~5114bit之间的任意值,并且通常在第一个CB的前端附加哑元,以使每个CB的大小完全相等。由于CB的大小为40bit~5114bit之间的任意值,并且附加的哑元个数也具有任意性,所以,CB的实际有效数据的大小同样比较任意。
Turbo译码完毕后,若不进行处理以获取实际有效数据,而直接将数据输出到外部存储设备时,则外部存储设备在将译码结果交由中央处理器(Central Processing Unit,CPU)或数字信号处理芯片(Digital Signal Processor,DSP)进行后级处理时,CPU或DSP在使用该数据时,就需要针对输入数据中实际有效数据的bit位置进行数据存取处理,如此会增加处理难度。
这里,无论CPU还是DSP从外部存储设备读写数据时,均以最小单位进行处理,具体可根据系统的不同而不同;其中,所述最小单位为Word,其宽度w分别为8、16或32,可分别记为Word8、Word16或Word32。鉴于上述原因,需要在Turbo译码输出译码结果时,完成CB的Word拼接处理,以提高整体系统的处理效率。
现有的完成Word拼接处理中,一种常用的方法是设置先入先出(First In First Out,FIFO),将各CB译码结果顺序写入FIFO,输出时,根据哑元个数和CB的大小,再顺序从FIFO中每次取出w bit,完成Word拼接处理。但该方法需要使用FIFO,增加了存储开销,实现成本较高;而且只能按bit串行处理,处理延时较大,效率较低。
发明内容
有鉴于此,本发明的主要目的在于提供一种Turbo译码结果的输出方法及装置,能够低成本、高效率地实现Turbo译码结果的输出。
为达到上述目的,本发明的技术方案是这样实现的:
一种Turbo译码结果的输出方法,所述方法包括:
将以码块CB为单位存储的Turbo译码结果读取到并行移位寄存器中;
根据所述CB的相关信息,选择并行移位寄存器的抽头位置,进行数据拼接;
控制拼接结果的输出。
其中,所述将以CB为单位存储的Turbo译码结果读取到并行移位寄存器中为:
读取所述CB的第一个Word,输入到所述并行移位寄存器的第一级寄存器中;其中,所述Word的宽度w是8、16或32;
读取所述CB的下一个Word,输入到所述并行移位寄存器的第一级寄存器中,同时,将原存储在第一级寄存器中的数据并行移位到所述并行移位寄存器的第二级寄存器中。
其中,所述根据所述CB的相关信息,选择并行移位寄存器的抽头位置为:
当所述CB为Turbo译码结果的第一个CB时,则选择并行移位寄存器的抽头位置为并行移位寄存器的第二级寄存器的bit n~bit(w-1)和第一级寄存器的bit 0~bit(n-1);其中,n为所述CB的哑元个数;
当所述CB不为Turbo译码结果的第一个CB时,则根据所述CB的CB索引以及CB大小,得到上一个CB还未输出的有效数据的位数m,选择并行移位寄存器的抽头位置为第二级寄存器的bit(w-m)~bit(w-1)和第一级寄存器的bit0~bit(w-m-1)。
其中,所述进行数据拼接为:拼接得到的w bit数据从低比特位到高比特位依次为第二级寄存器的bit n~bit(w-1)和第一级寄存器的bit 0~bit(n-1)存储的数据;或,
拼接得到的w bit数据从低比特位到高比特位依次为第二级寄存器的bit(w-m)~bit(w-1)和第一级寄存器的bit 0~bit(w-m-1)存储的数据。
进一步地,所述方法还包括:
判断拼接得到的数据中有效数据的位数是否为w;
若所述有效数据的位数不为w,则进一步判断当前处理的CB是否为Turbo译码结果的最后一个CB。
其中,所述控制拼接结果的输出为:
若所述拼接得到的数据中有效数据的位数为w时,将所述拼接结果输出至外部缓存;
若所述拼接得到的数据中有效数据的位数不为w,且当前处理的CB是最后一个CB时,在所述有效数据后面补0或1,凑足w bit后输出至外部缓存;
若所述拼接得到的数据中有效数据的位数不为w,且当前处理的CB不是最后一个CB时,将所述拼接得到的数据进行搬移,将所述有效数据右移至最右端,并回写入并行移位寄存器的第一级寄存器,然后读取下一个CB的第一个Word。
一种Turbo译码结果的输出装置,所述装置包括:输入选择模块、并行移位寄存器、数据拼接控制模块、输出选择模块;其中,
输入选择模块,用于将以CB为单位存储的Turbo译码结果读取到所述并行移位寄存器中;
数据拼接控制模块,用于根据所述CB的相关信息,选择所述并行移位寄存器的抽头位置,进行数据拼接;
输出选择模块,用于控制拼接结果的输出。
进一步地,所述输入选择模块,具体用于读取所述CB的第一个Word,输入到所述并行移位寄存器的第一级寄存器中;读取所述CB的下一个Word,输入到所述第一级寄存器中,同时,将原存储在所述第一级寄存器中的数据并行移位到所述并行移位寄存器的第二级寄存器中;其中,所述Word的宽度w是8、16或32。
进一步地,所述数据拼接控制模块,具体用于当所述CB为Turbo译码结果的第一个CB时,则选择并行移位寄存器的抽头位置为并行移位寄存器的第二级寄存器的bit n~bit(w-1)和第一级寄存器的bit0~bit(n-1);其中,n为所述CB的哑元个数;当所述CB不为Turbo译码结果的第一个CB时,则根据所述CB的CB索引以及CB大小,得到上一个CB还未输出的有效数据的位数m,选择并行移位寄存器的抽头位置为第二级寄存器的bit(w-m)~bit(w-1)和第一级寄存器的bit0~bit(w-m-1)。
进一步地,所述数据拼接控制模块拼接得到的w bit数据从低比特位到高比特位依次为第二级寄存器的bit n~bit(w-1)和第一级寄存器的bit 0~bit(n-1)存储的数据;或依次为第二级寄存器的bit(w-m)~bit(w-1)和第一级寄存器的bit 0~bit(w-m-1)存储的数据。
进一步地,所述数据拼接控制模块,还用于判断拼接得到的数据中有效数据的位数是否为w;若所述有效数据的位数不为w,则进一步判断当前处理的CB是否为Turbo译码结果的最后一个CB。
进一步地,所述输出选择模块,具体用于若所述拼接得到的数据中有效数据的位数为w时,将所述拼接结果输出至外部缓存;若所述拼接得到的数据中有效数据的位数不为w,且当前处理的CB是最后一个CB时,在所述有效数据后面补0或1,凑足w bit后输出至外部缓存;若所述拼接得到的数据中有效数据的位数不为w,且当前处理的CB不是最后一个CB时,将所述拼接得到的数据进行搬移,将所述有效数据右移至最右端,并回写入并行移位寄存器的第一级寄存器,然后读取下一个CB的第一个Word。
本发明提供的一种Turbo译码结果的输出方法及装置,通过并行移位寄存器和数据拼接控制模块实现对Turbo译码结果的并行处理,如此,能够低成本、高效率地实现Turbo译码结果的输出,具有存储开销低、处理时延小和处理简单等特点,进而能提高系统处理能力,利于成本的降低。
附图说明
图1为本发明Turbo译码结果的输出方法的实现流程示意图;
图2为本发明Turbo译码结果的输出方法一具体实施例中Turbo译码结果的内部缓存格式和期望的外部缓存格式的示意图;
图3为图2所示的Turbo译码结果的输出方法的一具体实施例的实现流程示意图;
图4为图2所示的Turbo译码结果中第一个CB的第一个Word输入到寄存器的示意图;
图5为图2所示的Turbo译码结果中第一个CB的第二个Word输入到寄存器的示意图;
图6为图2所示的Turbo译码结果中的第一个CB的最后一个Word输入到寄存器的示意图;
图7为图2所示的Turbo译码结果中第一个CB的最后一个Word的回写处理时寄存器的示意图;
图8为图2所示的Turbo译码结果中第二个CB的第一个Word输入到寄存器的示意图;
图9为使用本发明的Turbo译码结果输出装置的系统结构示意图;
图10为本发明Turbo译码结果输出装置的结构示意图。
具体实施方式
本发明的基本思想为:将以码块CB为单位存储的Turbo译码结果读取到并行移位寄存器中;根据所述CB的相关信息,选择并行移位寄存器的抽头位置,进行数据拼接;控制拼接结果的输出;其中,所述CB的相关信息可以为所述CB的哑元个数、CB索引、CB大小中的一种或多种。
为使本发明的目的、技术方案和优点更加清楚明白,以下举实施例并参照附图,对本发明进一步详细说明。
图1示出了本发明Turbo译码结果的输出方法的实现流程,如图1所示,所述方法包括下述步骤:
步骤101,将以CB为单位进行存储的Turbo译码结果读取到并行移位寄存器中;
本步骤中,所述的并行移位寄存器可以为8bit、16bit、32bit的并行移位寄存器;具体地,从存储有所述Turbo译码结果的内部缓存中读取该Turbo译码结果的一个CB的第一个Word,输入到该并行移位寄存器的第一级寄存器中,然后再读取下一个Word,输入到并行移位寄存器的第一级寄存器中,原存储在第一级寄存器中的数据并行移位到第二级寄存器中;其中,所述Word的宽度w也可以为8、16或32,分别记为Word8、Word16或Word32;
步骤102,根据上述CB的相关信息,选择并行移位寄存器的抽头位置,进行数据拼接;
具体地,本步骤中,可以根据所述CB的哑元个数、CB索引、CB大小等参数的一种或多种,进行抽头位置的选择;当所述CB为Turbo译码结果的第一个CB时,则选择并行移位寄存器的抽头位置为并行移位寄存器的第二级寄存器的bit n~bit(w-1)和第一级寄存器的bit0~bit(n-1);其中,n为哑元个数;
当所述CB不为Turbo译码结果的第一个CB时,则根据CB索引以及CB大小,得到上一个CB还未输出的有效数据的位数m,选择并行移位寄存器的抽头位置为第二级寄存器的bit(w-m)~bit(w-1)和第一级寄存器的bit0~bit(w-m-1);其中:拼接得到的w bit数据从低比特位到高比特位依次为第二级寄存器的bit n~bit(w-1)和第一级寄存器的bit 0~bit(n-1)存储的数据;或,依次为第二级寄存器的bit(w-m)~bit(w-1)和第一级寄存器的bit 0~bit(w-m-1)存储的数据。
具体地,当w为8时,当CB为该Turbo译码结果的第一个CB时,可能会需要填充哑元,来保证该Turbo译码结果的每一个CB的长度相同;例如,当第一个CB的哑元个数为2时,且当并行移位寄存器的第二级寄存器已输入该CB的第一个8bit数据,第一级寄存器已输入该CB的第二个8bit数据时,第二级寄存器的前两位bit存储的数据为上述填充的哑元,不是Turbo译码结果的有效数据,因此,需要选择的并行移位寄存器的抽头位置为第二级寄存器的后六位bit的抽头和第一级寄存器前两位bit的抽头,拼接得到一个8bit的数据。
步骤103,控制拼接结果的输出;
这里,将上述拼接得到的w bit数据输出至外部缓存等,然后重复上述步骤,直至取完一个CB的最后一组数据,由于CB的大小不一定是w的整数倍,故最后一组数据中还可能包含有无效数据;
具体地,本步骤还包括:判断拼接得到的数据中有效数据的位数是否为w;若所述有效数据的位数不为w,则进一步判断当前处理的CB是否为Turbo译码结果的最后一个CB;
相应地,若所述拼接得到的数据中有效数据的位数为w时,将所述拼接结果输出至外部缓存;
若所述拼接得到的数据中有效数据的位数不为w,且当前处理的CB是最后一个CB时,可以在所述有效数据后面补0或1,凑足w bit后输出至外部缓存等;
若所述拼接得到的数据中有效数据的位数不为w,且当前处理的CB不是最后一个CB时,将所述拼接得到的数据进行搬移,将所述有效数据右移至最右端,并回写入并行移位寄存器的第一级寄存器,然后读取下一个CB的第一个Word;具体地,回写至第一级寄存器后,此时,步骤102拼接得到的w bit数据均为无效数据,舍弃即可,然后重复步骤101,读取下一个CB的第一个Word。
图2示出了本发明Turbo译码结果的输出方法一具体实施例中Turbo译码结果的内部缓存格式和期望的外部缓存格式,为了方便描述,假定3GPP中CB的最大长度为64bit,并假定当前处理的TB的长度为154bit,假定DSP/CPU系统采用Word宽度w为8,即采用Word8。根据CB分隔算法,划分得到的CB总数为3,每个CB的长度为52bit,填充的哑元为2bit,在上述条件下,Turbo译码完毕后,三个CB的内部缓存格式如图2中箭头左边所示,该Turbo译码结果期望的外部缓存格式如图2中箭头右边所示;图2中箭头左边所示的三个矩形框依次为第一个CB、第二个CB、第三个CB的硬判决结果;其中,第一个CB的硬判决结果中,第一个8bit数据的前两位为填充的哑元,每个CB的最后四位为补齐的无效数据;箭头右边所示的期望的外部缓存格式为左边CB去除无效数据后的拼接结果。
图3为对图2所示的Turbo译码结果的输出方法的具体实施例的实现流程,本实施例中,Word的宽度w为8;如图3所示,所述实施例包括下述步骤:
步骤301,读取第一个CB的第一个Word,存入并行移位寄存器的第一级寄存器中;
具体地,如图4所示,读取第一个CB的第一个8bit数据存入并行移位寄存器的第一级寄存器,此时,该并行移位寄存器的第二级寄存器还未存入数据。
步骤302,读取该CB的第二个Word,存入该并行移位寄存器的第一级寄存器中,此时,原第一级寄存器中缓存的数据移位到第二级寄存器中;
具体地,如图5所示,读取第一个CB的第二个8bit数据,输入到并行移位寄存器的第一级寄存器中,原存储在第一级寄存器中的数据并行移位到第二级寄存器中。
步骤303,根据该CB的相关信息,如哑元个数、CB索引、CB大小等参数选择第一级寄存器和第二级寄存器的抽头位置,进行数据拼接;
具体地,参照图5,由于第二级寄存器的bit0、bit1位置中的数据为填充的哑元,故选择的抽头位置为第二级寄存器的bit2~bit 7和第一级寄存器的bit0~bit 1,来进行数据拼接。
步骤304,将拼接得到的8bit数据输出至外部缓存等;
具体地,此处,拼接后输出的数据从低比特位到高比特位依次为第二级寄存器的bit2~bit 7,然后为第一级寄存器的bit0~bit 1。
步骤305,读取该CB的下一个Word,存入该并行移位寄存器的第一级寄存器中,此时,原第一级寄存器中缓存的数据移位到第二级寄存器中,并判断本步骤中根据抽头位置拼接得到的Word中有效数据的位数是否为8,若是,执行步骤304,若不是,则执行步骤306;
具体地,第一个CB的最后一个Word中有效数据的位数为4,不足8位,参见图6,当上述最后一个Word输入到第一级寄存器中,此时拼接得到的Word中有效数据的位数仍为8,故执行步骤304,将拼接得到的8bit数据输出至外部缓存,然后重复执行该步骤;
应当注意,此时暂不进行Turbo译码结果的下一个Word的读取,而是将一个随机的8bit数据存入第一级寄存器,同时将原第一级寄存器中数据并行移位至第二级寄存器,具体可参照图7,此时拼接得到的8bit数据中含有2bit的有效数据,故执行步骤306。
步骤306,判断当前处理的CB是否为Turbo译码结果的最后一个CB,若是,则执行步骤304,具体可以在不足8位的有效数据后面补0或1,凑足8bit后输出至外部缓存;若否,则执行步骤307;
具体地,参照图7,当前处理的CB并不是Turbo译码结果的最后一个CB,故执行步骤307.
步骤307,将拼接得到的8bit数据中的有效数据右移至右端,回写入第一级寄存器,原第一级寄存器中缓存的数据移位到第二级寄存器中;
具体地,参见图7,将步骤305拼接得到的8bit数据中的有效数据进行搬移,右移至最右端,利用随机数据补全到8bit后,回写入第一级寄存器。
步骤308,读取下一个CB的第一个Word,存入第一级寄存器,原第一级寄存器中含有有效数据的8bit数据移位到第二级寄存器中,然后执行步骤303,重新确定抽头位置,进行数据拼接;
具体地,参见图8,当第二个CB的第一个Word存入第一级寄存器后,此时第二级寄存器中bit6~bit7的位置为第一个CB剩余未输出的2个有效数据,因此此时,确定的抽头位置为第二级寄存器的bit6~7和第一级寄存器的bit0~5,然后重复上述步骤,直至得到如图2箭头右边所示的期望的外部缓存格式的Turbo译码结果。
图9示出了使用本发明的Turbo译码结果输出装置的系统结构示意,如图9所示,所述输出装置可以内置于ASIC/FPGA的Turbo译码处理单元中,其从内部缓存读取Turbo译码结果,通过输出装置处理后,输出给外部存储,然后提供给CPU/DSP使用。
图10示出了本发明的Turbo译码结果输出装置的结构示意,如图10所示,所述输出装置包括输入选择模块、并行移位寄存器、数据拼接控制模块、输出选择模块;其中,输入选择模块,用于将以CB为单位存储的Turbo译码结果读取到所述并行移位寄存器中;数据拼接控制模块,用于根据所述CB的相关信息,选择所述并行移位寄存器的抽头位置,进行数据拼接;输出选择模块,用于控制拼接结果的输出。
进一步地,所述并行移位寄存器包括第一级寄存器和第二级寄存器。
进一步地,所述输入选择模块,具体用于读取所述CB的第一个Word,输入到所述并行移位寄存器的第一级寄存器中;读取所述CB的下一个Word,输入到所述第一级寄存器中,同时,将原存储在所述第一级寄存器中的数据并行移位到所述并行移位寄存器的第二级寄存器中;其中,所述Word的宽度w是8、16或32,分别记为Word8、Word16或Word32。
进一步地,所述数据拼接控制模块,具体用于当所述CB为Turbo译码结果的第一个CB时,则选择并行移位寄存器的抽头位置为并行移位寄存器的第二级寄存器的bit n~bit(w-1)和第一级寄存器的bit0~bit(n-1);其中,n为所述CB的哑元个数;当所述CB不为Turbo译码结果的第一个CB时,则根据所述CB的CB索引以及CB大小,得到上一个CB还未输出的有效数据的位数m,选择并行移位寄存器的抽头位置为第二级寄存器的bit(w-m)~bit(w-1)和第一级寄存器的bit0~bit(w-m-1)。
其中,所述数据拼接控制模块拼接得到的w bit数据从低比特位到高比特位依次为第二级寄存器的bit n~bit(w-1)和第一级寄存器的bit0~bit(n-1)存储的数据;或依次为第二级寄存器的bit(w-m)~bit(w-1)和第一级寄存器的bit0~bit(w-m-1)存储的数据。
进一步地,所述数据拼接控制模块,还用于判断拼接得到的数据中有效数据的位数是否为w;若所述有效数据的位数不为w,则进一步判断当前处理的CB是否为Turbo译码结果的最后一个CB。
进一步地,所述输出选择模块,具体用于若所述拼接得到的数据中有效数据的位数为w时,将所述拼接结果输出至外部缓存;若所述拼接得到的数据中有效数据的位数不为w,且当前处理的CB是最后一个CB时,在所述有效数据后面补0或1,凑足w bit后输出至外部缓存;若所述拼接得到的数据中有效数据的位数不为w,且当前处理的CB不是最后一个CB时,将所述拼接得到的数据进行搬移,将所述有效数据右移至最右端,并回写入并行移位寄存器的第一级寄存器,然后读取下一个CB的第一个Word。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (12)

1.一种Turbo译码结果的输出方法,其特征在于,所述方法包括:
将以码块CB为单位存储的Turbo译码结果读取到并行移位寄存器中;
根据所述CB的相关信息,选择并行移位寄存器的抽头位置,进行数据拼接;
控制拼接结果的输出。
2.根据权利要求1所述的方法,其特征在于,所述将以CB为单位存储的Turbo译码结果读取到并行移位寄存器中为:
读取所述CB的第一个Word,输入到所述并行移位寄存器的第一级寄存器中;其中,所述Word的宽度w是8、16或32;
读取所述CB的下一个Word,输入到所述并行移位寄存器的第一级寄存器中,同时,将原存储在第一级寄存器中的数据并行移位到所述并行移位寄存器的第二级寄存器中。
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述CB的相关信息,选择并行移位寄存器的抽头位置为:
当所述CB为Turbo译码结果的第一个CB时,则选择并行移位寄存器的抽头位置为并行移位寄存器的第二级寄存器的bit n~bit(w-1)和第一级寄存器的bit 0~bit(n-1);其中,n为所述CB的哑元个数;
当所述CB不为Turbo译码结果的第一个CB时,则根据所述CB的CB索引以及CB大小,得到上一个CB还未输出的有效数据的位数m,选择并行移位寄存器的抽头位置为第二级寄存器的bit(w-m)~bit(w-1)和第一级寄存器的bit0~bit(w-m-1)。
4.根据权利要求3所述的方法,其特征在于,所述进行数据拼接为:拼接得到的w bit数据从低比特位到高比特位依次为第二级寄存器的bit n~bit(w-1)和第一级寄存器的bit 0~bit(n-1)存储的数据;或,
拼接得到的w bit数据从低比特位到高比特位依次为第二级寄存器的bit(w-m)~bit(w-1)和第一级寄存器的bit 0~bit(w-m-1)存储的数据。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
判断拼接得到的数据中有效数据的位数是否为w;
若所述有效数据的位数不为w,则进一步判断当前处理的CB是否为Turbo译码结果的最后一个CB。
6.根据权利要求5所述的方法,其特征在于,所述控制拼接结果的输出为:
若所述拼接得到的数据中有效数据的位数为w时,将所述拼接结果输出至外部缓存;
若所述拼接得到的数据中有效数据的位数不为w,且当前处理的CB是最后一个CB时,在所述有效数据后面补0或1,凑足w bit后输出至外部缓存;
若所述拼接得到的数据中有效数据的位数不为w,且当前处理的CB不是最后一个CB时,将所述拼接得到的数据进行搬移,将所述有效数据右移至最右端,并回写入并行移位寄存器的第一级寄存器,然后读取下一个CB的第一个Word。
7.一种Turbo译码结果的输出装置,其特征在于,所述装置包括:输入选择模块、并行移位寄存器、数据拼接控制模块、输出选择模块;其中,
输入选择模块,用于将以CB为单位存储的Turbo译码结果读取到所述并行移位寄存器中;
数据拼接控制模块,用于根据所述CB的相关信息,选择所述并行移位寄存器的抽头位置,进行数据拼接;
输出选择模块,用于控制拼接结果的输出。
8.根据权利要求7所述的装置,其特征在于,所述输入选择模块,具体用于读取所述CB的第一个Word,输入到所述并行移位寄存器的第一级寄存器中;读取所述CB的下一个Word,输入到所述第一级寄存器中,同时,将原存储在所述第一级寄存器中的数据并行移位到所述并行移位寄存器的第二级寄存器中;其中,所述Word的宽度w是8、16或32。
9.根据权利要求7或8所述的装置,其特征在于,所述数据拼接控制模块,具体用于当所述CB为Turbo译码结果的第一个CB时,则选择并行移位寄存器的抽头位置为并行移位寄存器的第二级寄存器的bit n~bit(w-1)和第一级寄存器的bit0~bit(n-1);其中,n为所述CB的哑元个数;当所述CB不为Turbo译码结果的第一个CB时,则根据所述CB的CB索引以及CB大小,得到上一个CB还未输出的有效数据的位数m,选择并行移位寄存器的抽头位置为第二级寄存器的bit(w-m)~bit(w-1)和第一级寄存器的bit0~bit(w-m-1)。
10.根据权利要求9所述的装置,其特征在于,所述数据拼接控制模块拼接得到的w bit数据从低比特位到高比特位依次为第二级寄存器的bit n~bit(w-1)和第一级寄存器的bit 0~bit(n-1)存储的数据;或依次为第二级寄存器的bit(w-m)~bit(w-1)和第一级寄存器的bit 0~bit(w-m-1)存储的数据。
11.根据权利要求7所述的装置,其特征在于,所述数据拼接控制模块,还用于判断拼接得到的数据中有效数据的位数是否为w;若所述有效数据的位数不为w,则进一步判断当前处理的CB是否为Turbo译码结果的最后一个CB。
12.根据权利要求7所述的装置,其特征在于,所述输出选择模块,具体用于若所述拼接得到的数据中有效数据的位数为w时,将所述拼接结果输出至外部缓存;若所述拼接得到的数据中有效数据的位数不为w,且当前处理的CB是最后一个CB时,在所述有效数据后面补0或1,凑足w bit后输出至外部缓存;若所述拼接得到的数据中有效数据的位数不为w,且当前处理的CB不是最后一个CB时,将所述拼接得到的数据进行搬移,将所述有效数据右移至最右端,并回写入并行移位寄存器的第一级寄存器,然后读取下一个CB的第一个Word。
CN201110122720.1A 2011-05-12 2011-05-12 一种Turbo译码结果的输出方法及装置 Withdrawn - After Issue CN102201818B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110122720.1A CN102201818B (zh) 2011-05-12 2011-05-12 一种Turbo译码结果的输出方法及装置
PCT/CN2011/081264 WO2012151864A1 (zh) 2011-05-12 2011-10-25 一种turbo译码结果的输出方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110122720.1A CN102201818B (zh) 2011-05-12 2011-05-12 一种Turbo译码结果的输出方法及装置

Publications (2)

Publication Number Publication Date
CN102201818A true CN102201818A (zh) 2011-09-28
CN102201818B CN102201818B (zh) 2015-12-16

Family

ID=44662243

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110122720.1A Withdrawn - After Issue CN102201818B (zh) 2011-05-12 2011-05-12 一种Turbo译码结果的输出方法及装置

Country Status (2)

Country Link
CN (1) CN102201818B (zh)
WO (1) WO2012151864A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012151864A1 (zh) * 2011-05-12 2012-11-15 中兴通讯股份有限公司 一种turbo译码结果的输出方法及装置
CN103475451A (zh) * 2013-09-10 2013-12-25 江苏中科梦兰电子科技有限公司 一种适合前向纠错和加密应用的数据报网络传输方法
CN104702294A (zh) * 2015-03-26 2015-06-10 中国科学院自动化研究所 一种Turbo译码器的位宽非对称仿存接口

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5789363A (en) * 1980-11-25 1982-06-03 Matsushita Electric Ind Co Ltd Digital demodulating system
CN101164242A (zh) * 2005-03-11 2008-04-16 高通股份有限公司 具有复用输出的并行turbo解码器
CN101192833A (zh) * 2006-11-28 2008-06-04 华为技术有限公司 一种低密度校验码ldpc并行编码的装置及方法
CN101957743A (zh) * 2010-10-12 2011-01-26 中国电子科技集团公司第三十八研究所 并行数字信号处理器

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090287980A1 (en) * 2008-05-16 2009-11-19 Lsi Corporation Computational Architecture for Soft Decoding
CN102201818B (zh) * 2011-05-12 2015-12-16 中兴通讯股份有限公司 一种Turbo译码结果的输出方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5789363A (en) * 1980-11-25 1982-06-03 Matsushita Electric Ind Co Ltd Digital demodulating system
CN101164242A (zh) * 2005-03-11 2008-04-16 高通股份有限公司 具有复用输出的并行turbo解码器
CN101192833A (zh) * 2006-11-28 2008-06-04 华为技术有限公司 一种低密度校验码ldpc并行编码的装置及方法
CN101957743A (zh) * 2010-10-12 2011-01-26 中国电子科技集团公司第三十八研究所 并行数字信号处理器

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012151864A1 (zh) * 2011-05-12 2012-11-15 中兴通讯股份有限公司 一种turbo译码结果的输出方法及装置
CN103475451A (zh) * 2013-09-10 2013-12-25 江苏中科梦兰电子科技有限公司 一种适合前向纠错和加密应用的数据报网络传输方法
CN104702294A (zh) * 2015-03-26 2015-06-10 中国科学院自动化研究所 一种Turbo译码器的位宽非对称仿存接口
CN104702294B (zh) * 2015-03-26 2018-04-27 北京思朗科技有限责任公司 一种Turbo译码器的位宽非对称仿存接口

Also Published As

Publication number Publication date
CN102201818B (zh) 2015-12-16
WO2012151864A1 (zh) 2012-11-15

Similar Documents

Publication Publication Date Title
CN105049061B (zh) 基于超前计算的高维基极化码译码器和极化码译码方法
US10884744B2 (en) System and method of loop vectorization by compressing indices and data elements from iterations based on a control mask
RU2009120617A (ru) Турбоперемежитель для высоких скоростей передачи данных
KR20150047547A (ko) 벡터 프로세서에서 데이터를 추출하는 시스템들 및 방법들
CN103427850B (zh) 多模维特比解码装置及其解码方法
US9502104B2 (en) Multi-level cell (MLC) non-volatile memory data reading method and apparatus
US8638244B2 (en) Encoding module, apparatus and method for determining a position of a data bit within an interleaved data stream
CN102201818B (zh) 一种Turbo译码结果的输出方法及装置
CN113222129A (zh) 一种基于多级缓存循环利用的卷积运算处理单元及系统
CN101674161B (zh) 解速率匹配方法及装置
CN105607888A (zh) 数据位宽转换方法及装置
CN110022158B (zh) 一种译码方法及装置
WO2021143634A1 (zh) 算术编码器及实现算术编码的方法和图像编码方法
CN105933090B (zh) 一种多核并行scma译码系统
CN102184214A (zh) 一种数据分组快速查找定位法
JP2011141914A (ja) Nand型フラッシュメモリの入出力制御方法及び装置
CN102857239A (zh) 基于查找表的cmmb中ldpc串行编码器和编码方法
CN101895374B (zh) 速率匹配方法及装置
US20210082082A1 (en) Data processing method and processing circuit
WO2012149741A1 (zh) 一种解速率匹配的解交织方法和装置
CN101136657B (zh) 传输格式组合指示译码装置和方法
CN112181356B (zh) 一种可配置的多进多出fifo的设计方法及装置
US9467199B1 (en) Compression using mu-law approximation
CN102751994B (zh) 一种基于两个有限群符号的短码长分组码译码器装置
CN101145789B (zh) 高速维特比译码器幸存路径管理模块

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20201106

Address after: No.8, wisdom Avenue, Donghu scenic area, Dayu Town, Rudong County, Nantong City, Jiangsu Province, 226000

Patentee after: Nantong Donghu International Travel Agency Co.,Ltd.

Address before: 518057 Nanshan District Guangdong high tech Industrial Park, South Road, science and technology, ZTE building, Ministry of Justice

Patentee before: ZTE Corp.

AV01 Patent right actively abandoned
AV01 Patent right actively abandoned
AV01 Patent right actively abandoned

Granted publication date: 20151216

Effective date of abandoning: 20250923

AV01 Patent right actively abandoned

Granted publication date: 20151216

Effective date of abandoning: 20250923