您当前的位置:首页 > 计算机论文>通信论文

第三代移动通信TD-SCDMA系统中DSCH Outer Receiver的结

2015-12-17 10:55 来源:学术参考网 作者:未知

摘 要:

关键词:

1.GENERAL

  本文重点介绍采用ASIC实现HS-DSCHOuter Receiver模块的方案。还评估了采用ASIC实现HS-DSCH Outer Receiver方案时所需的资源消耗和时序要求,并给出了输入、输出接口描述。为ASIC实现HS-DSCH Outer Receiver时提供技术参考。2. 技术背景

  由于TD-SCDMA系统中HSDPA主要业务承载信道HS-DSCH信道的编码复用方案相对固定(TTI为5ms,与一般业务的编码复用流程相比,省略了子帧分割、传输信道复用、第一次交织等步骤),因此考虑采用ASIC实现HSDPA的Outer Receiver模块。这样不仅可以充分利用ASIC/FPGA的并行处理能力,缩短Outer Receiver的处理时间,而且可以省略DMA搬运数据的时间,大大优化整个系统的时序。

  下面我们将从两个方面展开讨论:首先介绍整个HS-DSCH Outer Receiver实现方案:包括Outer Receiver模块与其他模块的结构关系,整个实现方案的性能,重点分析Memory资源消耗、时序要求等指标;其次,对Outer Receiver的各个步骤详细阐述实现方案。

2.1Outer Receiver模块与其他模块的结构关系

  图1给出了HS-DSCH Outer Receiver模块与其他模块的结构关系。图中包含两块Interface RAM:Interface RAM#1和Interface RAM#2分别用来完成16QAM解调以及HARQ重传的软信息(soft value)与Outer Receiver模块的数据交互。片外SDRAM中共存储了8个通道的HARQ软信息,每次需要根据HS-SCCH信道解析的结果,选择当前使用的通道所对应的HARQ软信息完成HARQ合并。

  以目前需要支持的2.8Mbps业务为例,、HARQ软信息的,每个TTI的RU个数为80,解调数据的,则Interface RAM#1的大小为84480bit,Interface RAM#2的大小为122832bit。

图1 Outer Receiver模块与其他模块结构关系图

  值得注意的是:QPSK不需要进行特别的解调,只需要将JD的结果按I/Q路数据顺序的读入Interface RAM#1即可。

2.2实现方案性能评估

  考虑到IC的实现复杂度及资源消耗,将HS-DSCH的Outer Receiver分为如下3部分:

Ø  De-Physical channel Mapping、De-Constellation re-arrangement for 16QAM、De-2nd Interleaving、De-Bit Scrambling和De-HARQ Bit Collection;(简称De-PhyMap-2ndInlv-BitScr-BitCol-BitCol步骤)

Ø  De-HARQ 2nd Rate Matching;(简称De-2ndRM步骤)

Ø  De-HARQ 1st Rate Matching、De-HARQ Bit Separation;(简称De-1stRM-BitSep步骤)

综上所述,HS-DSCH总共Outer Receiver总共需要的Memory资源为:

2.3  16QAM Demodulation步骤

  本步骤完成16QAM解调,具体公式如下所示:

其中表示JD解调结果的幅度均值。可以通过统计一个TimeSlot所有JD解调结果的幅度来得到。

由于HS-DSCH在一个TimeSlot中占用的RU个数()不确定,为了避免使用除法器计算 。可以采用乘法器替代除法器,每个所对应的乘数为:,然后将乘法器的结果除以。

  由于的计算必须在一个TimeSlot的结果都得到以后完成,因此可以采取以下步骤完成:

> 步骤1:从JD的输出RAM中读取第k个JD解调结果(16比特数据,高8bit存放实部,低8bit存放虚部),读地址每4个clock变化一次;

> 步骤2:采用上述公式,统计JD结果的幅度和;

> 步骤3:将步骤1产生的数据分别存入Interface RAM#1的( )个地址中;

> 步骤4:当该TimeSlot的所有JD解调结果都读出后,计算。

> 步骤5:从Interface RAM#1中读出数据进行HS-DSCH Outer Receiver操作,在输入Outer Receiver之前,需要采用上述16QAM解调的公式对读出的数据进行处理,以完成16QAM解调的操作;

2.4  De-PhyMap-2ndInlv-BitScr-BitCol步骤

  本步骤中共包含4个部分:De-Physical channel Mapping、De-Constellation re-arrangement for 16QAM、De-interleaving和De-Bit Scrambling。考虑到这4个步骤运算非常有规律,可以采用Pipeline结构完成4个部分的地址计算,最大限度的节省处理时间。

2.4.1 De-2nd-interleaving

  HS-DSCH的interleaving根据调制的方式分为两种结构,QPSK采用传统的第二次交织的交织器结构;16QAM采用两个交织器并行的结构。解交织的方法是由交织后的地址(顺序的)反推交织前的地址(乱序的)。

2.4.1.1 De-2nd-Interleaving for QPSK

  QPSK调制方式下的De-2nd-interleaving操作我们采用根据交织后的地址反推交织前地址的方法,这样可以采用简单的加法和比较操作完成De-2nd-interleaving的操作。

> 步骤1:初始化地址为Ori_2nd_addr[0] = 0;

> 步骤2:Ori_2nd_addr[i] =Ori_2nd_addr[i-1] + 30,如果Ori_2nd_addr[i]大于R(HS-DSCH一个TTI内所有的数据个数,由DSP提供),则该地址无效,跳到下一列,下一列的初始地址是第二次交织Inter-column permutation pattern中相应列的序号。总共列的数目为R2,由DSP提供。

2.4.1.2 De-2nd-interleavingfor 16QAM

16QAM调制方式下的2nd-interleaving方案由两个并行的交织器完成,因此解交织需要将数据分为2部分单独进行,具体步骤如下:

> 步骤1:判断当前数据属于哪个交织器,判断的方法是:

> 步骤2:针对每个解交织器(upper/lower),采用QPSK调制方式下的De-2nd-interleaving操作得到每个交织器交织前的地址(Ori_2nd_Addr_upper/ Ori_2nd_Addr_lower);但要注意,此时的R应该改为R/2;

> 步骤3:将两个解交织器产生的地址合并,恢复到整个2nd Interleaving交织前的地址,具体的方法是:

upper解交织器产生的地址:

2.4.2 De-Constellation re-arrangement for 16QAM

  该步骤只是针对16QAM时才生效,QPSK调制方式下,可以采用延迟一个或几个clock的方法保证时序关系与16QAM时一致。

  由于De_2nd-interleaving需要输入的数据是顺序的,本步骤的操作是根据b(由DSP提供)的取值,得到顺序输入的4个数据经过re-arrangement后的地址变换和符号变换方式。具体公式如下:

地址变换:

符号变换:

2.4.3 De-Physical channel Mapping

HS-DSCH的Physical channel Mapping根据调制方式的不同采用不同的方案。由于De-2nd-interleaving需要输入的数据是顺序的,De-Physical channel Mapping的任务就是从16QAM解调结果(Interface RAM#1)中按照De-2nd-interleaving需要的顺序读出数据。值得注意的是,当HS-DSCH的调制方式为16QAM是,还需要考虑到De-Constellation re-arrangement for 16QAM的地址 变换。

2.4.3.1 De-Physical channel Mapping for QPSK

  由于需要以Physical channel Mapping前序列的顺序读出数据,可以采用两个地址完成JD后数据的寻址:PhyCh_Base_Addr用来表示每个码道数据的基地址,PhyCh_Offset_Addr表示每个数据在对应码道的位置。

  虽然公式中存在乘法、除法等操作,但由于k是顺序变化的,因此不必进行乘法、除法操作,只需要设置物理信道计数器,随着k值递增。每次PhyCh_Base_Addr加88,当PhyCh_Cnt=Ch_Num时,重置PhyCh_Base_Addr;同理,PhyCh_Offset_Addr可以在每次PhyCh_Cnt=Ch_Num时更新()。

2.4.3.2 De-Physical channel Mapping for 16QAM

  16QAM的Physical channel Mapping公式与QPSK不同,同时需要考虑到De-Constellation re-arrangement for 16QAM的影响。同样采用PhyCh_Base_Addr和PhyCh_Offset_Addr完成De-Physical channel Mapping地址的寻址。

  与QPSK相同,也需要设置物理信道计数器,但它的值每4个k值更新一次。Re_Arr_Offset是考虑De-Constellation re-arrangement for 16QAM的影响,根据b值和k的不同,Re_Arr_Offset分别取+/-2或者0。

2.4.4 De-Bit Scrambling

  为了进行De-Bit Scrambling,必须计算加绕序列,其中,,。由于De-2nd-interleaving产生的地址是乱序的,因此可以事先产生加扰序列,存入ROM,然后根据De-2nd-interleaving产生的地址得到该数据需要的解扰比特。根据对De-2nd-interleaving产生的数据进行De-Bit Scrambling处理。

需要注意的是:由于的取值范围是-32~31,如果取反后需要进行溢出保护,以防治32的出现。

2.4.5 De-Bit Collection

  De-Bit Collection首先要区分经过De-Bit Scrambling后的数据属于system、parity#1、parity#2中的哪一个,其次再计算每个数据在各个RAM中的具体地址。为了实现上述目的,需要定义两个变量:Row_Addr和Col_Addr,分别表示Bit Collection采用的rectangular interleaver的行地址和列地址。

  Row_Addr和Col_Addr的更新公式如下:

  判断第k个数据属于system、parity#1、parity#2中的哪一个的方法如下:

  由于parity#1和parity#2是交替放入interleaver的(parity#2在前),因此只需要记录下前一次存入parity RAM的是parity#1还是parity#2,即可得到当前是parity#1还是parity#2。

  综上所述,De-PhyMap-2ndInlv-BitScr-BitCol中每个数据至少需要经过6步操作,因此完成De-PhyMap-2ndInlv-BitScr-BitCol步骤总共需要的时钟个数为或者,其中表示每个数据完成De-PhyMap-2ndInlv-BitScr-BitCol步骤所需要的确切clock数目。

2.5 De-2ndRM步骤

  本步骤完成De-HARQ 2nd Rate Matching stage的相关操作,HS-DSCH采用的Rate Matching方法与普通的传输信道的Rate Matching相同。需要复杂计算的参数如可以由DSP事先计算得到,在进行HS_DSCH Outer Receiver之前传递FPGA或者ASIC。

  定义Rd-Addr和Wr_Addr分别表示Temp RAM#1的读地址和Temp RAM#2的写地址。De-2nd RM操作就是根据e值的不同,更新Rd-Addr和Wr_Addr,并对读出的数据采取不同的策略写入Temp RAM#2中即可。具体的实现方法如下所示:

2.6 De-1stRM-BitSep步骤

  本步骤主要完成De-HARQ 1st Rate Matching stage的相关操作,1st Rate Matching只存在puncturing操作,没有repetition操作,因此可以延用De-2ndRM步骤中针对puncturing的操作。需要复杂计算的参数可以由DSP事先计算得到,在进行HS_DSCH Outer Receiver之前传递FPGA或者ASIC。

2.7 HARQ 软信息合并

  为了完成HARQ,如果当前通道的HS-DSCH传输块CRC结果不正确,需要将Temp RAM#2中的数据存入片外的SDRAM中响应的位置(对应于本通道),在下次次传送该通道数据时完成软信息的合并,提高译码输入数据的可信度。由于现有方案将Interface RAM#2和Temp RAM#2复用,这就要求在进行本次De-2nd-RM之前,必须将片外SDRAM中该通道的数据搬入Temp RAM#2中,然后将De-2nd-RM的结果与Temp RAM#2对应位置中的数据进行合并,合并后的数据再写回该地址。

  为了完成HS_DSCH进行HARQ时所要求的软信息合并,需要考虑Temp RAM#2与片外SDRAM的读写时序。考虑在进行De-PhyMap-2ndInvl-BitScr-BitCol步骤时将当前TTI中第一个编码块的软信息读入Temp RAM#2相应地址,然后进行De-2ndRM和De-1stRM-BitSep;在进行Turbo Decoding时将当前编码块合并后的软信息写入SDRAM相应地址,并且将下一个编码块的软信息读入Temp RAM#2中。以SDRAM或者SRAM的读写速度为40.96MHz、SDRAM的数据宽度为8bit、当前业务为2.8Mbps为例,基本不需要增加额外的运行时间。

相关文章
学术参考网 · 手机版
https://m.lw881.com/
首页