CN102035559A - Turbo解码装置及通信装置 - Google Patents

Turbo解码装置及通信装置 Download PDF

Info

Publication number
CN102035559A
CN102035559A CN2010105094168A CN201010509416A CN102035559A CN 102035559 A CN102035559 A CN 102035559A CN 2010105094168 A CN2010105094168 A CN 2010105094168A CN 201010509416 A CN201010509416 A CN 201010509416A CN 102035559 A CN102035559 A CN 102035559A
Authority
CN
China
Prior art keywords
data base
memory
data
code signal
base structure
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
CN2010105094168A
Other languages
English (en)
Other versions
CN102035559B (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of CN102035559A publication Critical patent/CN102035559A/zh
Application granted granted Critical
Publication of CN102035559B publication Critical patent/CN102035559B/zh
Expired - Fee Related 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/27Coding, 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 using interleaving techniques
    • H03M13/276Interleaving address generation
    • 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/27Coding, 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 using interleaving techniques
    • H03M13/2771Internal interleaver for turbo codes
    • H03M13/2775Contention or collision free turbo code internal interleaver
    • 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/6522Intended application, e.g. transmission or communication standard
    • H03M13/65253GPP LTE including E-UTRA
    • 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/6566Implementations concerning memory access contentions

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

一种turbo解码装置,包括:存储单元,用于在对使用turbo码编码的编码信号进行解码的过程中所执行的交织处理中存储数据;以及访问单元,用于访问所述存储单元以读写数据。所述存储单元包括存储电路并通过耦合连接所述多个存储电路而被形成为一个存储空间。进一步地,存储电路根据所述存储电路的组合作为第一记忆库结构(通过其分配第一容量给每个记忆库)运行,或作为第二记忆库结构(通过其分配第二容量给每个记忆库)运行。此外,所述访问单元根据所述编码信号的通信方法来选择所述存储单元作为所述第一记忆库结构和所述第二记忆库结构中的哪一个运行,并根据所选择的记忆库结构访问所述存储单元。本发明还公开了一种通信装置。

Description

TURBO解码装置及通信装置
技术领域
此处讨论的实施例涉及一种turbo(快速)解码装置及通信装置。
背景技术
通常的,存在有各种方法作为用于诸如移动终端或基站的通信装置的数据发送和接收的通信方法。例如,通信方法包括LTE(Long Term Evolution,长期演进)、HSPA+(High Speed Packet Access+,高速分组接入+)等等。此外,使用LTE和HSPA+的通信装置使用turbo码作为纠错码。
使用turbo码的通信装置在对用turbo码编码的信号进行解码的过程中执行交织处理和反交织处理。在这种情况下,交织处理是一种用于对存储在存储器中的信号顺序进行再排列的处理。而且,反交织处理是一种用于对交织处理再排列的信号顺序进行恢复的处理。
进一步解释说明关于用于对turbo码编码的信号进行解码的turbo解码处理的一个示例。例如,通信装置在接收到信号(A)时对接收到的信号(A)执行解码处理,并将其结果存储在存储器中。然后,通信装置对信号(A)执行交织处理,在交织处理后对信号(b)执行解码处理,并再次将其结果存储在存储器中。然后该通信装置对信号(B)执行反交织处理,在反交织处理后对信号(C)执行解码处理,并再次将其结果存储在存储器中。在这种情况下,信号(A)和信号(C)的顺序是相同的。
在这种情况下,交织处理和反交织处理的处理方法依赖于turbo码的编码方法而不同。此外,turbo码的编码编码方法依赖于通信方法而不同。因此,例如,LTE和HSPA+执行不同的交织处理和反交织处理。例如,使用LTE的通信装置使用“QPP(Quadratic Permutation Polynomial Interleaver,二次置换多项式交织器)”。另一方面,使用HSPA+的通信装置使用“PIL(Prunable Prime Interleaver,可删性质数交织器)”。
当执行turbo解码处理时,存在一种能通过并行执行多个存储器的读写来并行执行解码处理的通信装置。例如,通信装置将信号分为多个信号,并对所分成的信号并发执行解码处理。在这种情况下,安装在并发执行解码处理的通信装置上的每个存储器的容量和存储器的数量依赖于信号的最大尺寸、交织处理和反交织处理的处理方法、通信装置并发执行的处理数量等等而不同。
例如,因为在LTE和HSPA+中的信号最大尺寸是不同的,安装在使用LTE的通信装置上的存储器和安装在使用HSPA+的通信装置上的存储器在每个存储器的容量和存储器的数量方面彼此不同。这种技术已经被公开为公知的,例如,日本特许公开号2008-135813、2008219892以及2008-118628和国际公开号WO2006/082923。
期望一种能并发执行相应于多种通信方法的解码处理的通信装置。此外,也需要该通信装置在相应于多个通信方法之后相应于用于多个通信方法的turbo解码处理。考虑到安装在并发执行解码处理的通信装置上的存储器的容量和数量依赖于通信方法而不同,需要一种安装装置来根据通信方法在其上安装各存储器。
例如,当实现相应于LTE和HSPA+的通信装置时,安装装置分别安装用于使用LTE执行turbo解码处理的存储器以及用于使用HSPA+执行turbo解码处理的存储器。
然而,这会存在一些问题,安装装置依赖于通信方法分别安装存储器,由此增加了存储器的负担。
因而,本发明一个实施例在一方面的一个目的是提供一种能减轻存储器负担的turbo解码装置及通信装置。
发明内容
根据本发明一个实施例的一个方面,turbo解码装置包括:存储单元,用于在对使用turbo码编码的编码信号进行解码的过程中所执行的交织处理中存储数据;以及访问单元,用于访问所述存储单元以读写数据。所述存储单元包括多个存储电路,通过耦合所述多个存储电路而被形成为一个存储空间,以及根据所述存储电路的组合作为第一记忆库结构运行,或作为第二记忆库结构运行,其中,通过所述第一记忆库结构分配第一容量给每个记忆库,通过所述第二记忆库结构分配第二容量给每个记忆库。所述访问单元根据所述编码信号的通信方法来选择所述存储单元作为所述第一记忆库结构和所述第二记忆库结构中的哪一个运行,并根据所选择的记忆库结构访问所述存储单元。
附图说明
图1为一阐释了根据第一实施例的turbo解码装置的结构示例的框图;
图2为一简单阐释了根据第二实施例的turbo解码装置的示例的图示;
图3为一阐释了根据第二实施例的turbo解码装置的结构示例的框图;
图4为一阐释了存储在接收数据存储器中的编码信号的示例的图示;
图5为一阐释了交织存储器包括多个存储电路的情况的图示;
图6A为一阐释了当HSPA+被用作通信方法时所形成的存储空间的图示;
图6B为一阐释了当LTE被用作通信方法时所形成的存储空间的图示;
图7A为一阐释了当使用HSPA+时记忆库结构的示例的图示;
图7B为一阐释了当使用LTE时记忆库结构的示例的图示;
图8A为一阐释了当使用HSPA+时使用多个存储电路的记忆库结构的示例的图示;
图8B为一阐释了当使用LTE时使用多个存储电路的记忆库结构的示例的图示;
图9为一阐释了用每个解码运算部件(decode arithmetic component)协作执行的turbo解码处理的图示;
图10为一阐释了用每个解码运算部件(decode arithmetic component)协作执行的turbo解码处理的图示;
图11为一阐释了根据第二实施例的转换单元的细节的图示;
图12A为一阐释了与HSPA+相关联的记忆库结构的示例的图示;
图12B为一阐释了与LTE相关联的记忆库结构的示例的图示;
图13A为一阐释了设置在使用HSPA+的每个记忆库中的ADRMINI和ADRMAX的示例的图示;
图13B为一阐释了设置在使用LTE的每个记忆库中的ADRMINI和ADRMAX的示例的图示;
图14为一阐释了根据第二实施例由物理地址计算单元执行的转换处理的细节的图示;
图15为一阐释了根据第二实施例由turbo解码装置执行的处理的流程示例的流程图;
图16为一阐释了根据第二实施例由转换单元执行的处理的流程示例的流程图;
图17为一阐释了根据第二实施例编码信号分配处理的流程示例的流程图;
图18为一阐释了根据第二实施例的记忆库结构选择处理的流程示例的图示。
具体实施方式
将参照附图对本发明的优选实施例进行阐释。本发明将不限制于如下所阐释的实施例。这些实施例能在处理内容不会彼此冲突的范围内适当地被组合。
(a)第一实施例
参考图1,将阐释根据第一实施例一种turbo解码装置100的结构示例。图1为一阐释了根据第一实施例的turbo解码装置100的结构示例的框图。图1中所阐明的示例中,turbo解码装置100包括存储单元101和访问单元102。
就用turbo码编码的编码信号进行解码的过程中所执行的交织处理而言,存储单元101存储数据。此外,存储单元101包括多个存储电路110并通过耦合多个存储电路110而作为一个存储空间来形成。进一步地,存储单元101根据存储电路110的组合而用作第一记忆库(bank)结构111(通过其分配第一容量给每个记忆库)运行,或者用作第二记忆库结构112(通过其分配第二容量给每个记忆库)运行。
访问单元102对存储单元101进行访问以读或写数据。此外,访问单元102根据编码信号的通信方法来选择第一记忆库结构111和第二记忆库结构之一来用作存储单元101运行,并根据所选择的记忆库结构访问存储单元101。
换言之,考虑到安装在并发执行解码处理的通信装置上的存储器的容量和数量依赖于通信方法而不同,turbo解码装置100包括多个被再划分的存储电路110。Turbo解码装置100根据通信方法改变存储电路110的组合,以改变每个记忆库的容量和记忆库的数量。其结果,根据第一实施例,不用依赖于通信方法准备存储器而能减轻存储器的负担。
(b)第二实施例
接下来,将阐释根据第二实施例的turbo解码装置200。下文中,在简单阐释turbo解码装置200的整个描述后,将依次阐释turbo解码装置200的结构、处理和效果。
turbo解码装置的整体描述
简单阐释turbo解码装置的整体描述。首先将参考图2简单阐释根据第二实施例的turbo解码装置200的示例。图2为一简单阐释了根据第二实施例的turbo解码装置的示例的图示。
简单阐释图2。在图2中所示的UE(User Equipment,用户设备)401是一移动终端。在图2中所示的eNB(evolutional Node B,演进型节点)402是一基站。在图2中所示的aGW(RNC)(接入网关(无线网络控制器))403是一网关装置。在图2中,UE401和eNB402经由无线通信发送并接收编码信号。此外,aGW(RNC)403在多个eNB402之间中继数据的发送和接收。这种情况下,每个UE401和eNB402包括用来发送和接收编码信号的射频(RF)单元411以及用来执行turbo解码处理的L1单元412,其中turbo解码处理为一种解码编码信号的处理。进一步地,每个UE401和eNB402包括在L2层执行处理的L2单元413、在L3层执行处理的L3单元414以及执行各种应用类型的应用单元415。
Turbo解码装置200执行turbo解码处理。换言之,在图2所示的示例中,UE401和eNB402相当于turbo解码装置200。更具体地说,turbo解码装置200被应用到包含在UE401和eNB402中的L1单元412。在图2所示的示例中,已经阐释了turbo解码装置200相当于UE401和eNB402的情况。然而,本发明不限于此。例如当aGW(RNC)403执行turbo解码处理时,aGW(RNC)403也相当于turbo解码装置200。此外,turbo解码装置200可以是任何装置,只要它是能执行turbo解码处理的装置。
简单解释由turbo解码装置200执行的turbo解码处理。当turbo解码装置200接收到编码信号(A)时,turbo解码装置200对接收到的编码信号(A)执行解码处理,并将结果存储在存储器中。然后,turbo解码装置200对编码信号(A)执行交织处理,在交织处理之后对编码信号(B)执行解码处理,并再次将结果存储在存储器中。然后turbo解码装置200对编码信号(B)执行反交织处理,在反交织处理之后对信号(C)执行解码处理,并再次将结果存储在存储器中。
此外,turbo解码装置200相应于多个通信方法。例如,turbo解码装置200相应于作为通信方法的LTE(长期演进)和HSPA+(高速分组接入+)。此外,当执行turbo解码处理时,turbo解码装置200并行对多个存储器执行读写,以并行执行解码处理。具体地,turbo解码装置200将编码信号分成多个信号,并对分成的多个信号并发执行解码处理。下文中,除非特别提及,阐释的都是turbo解码装置200并发执行16个解码处理的情况。然而,本发明不限于此。例如,turbo解码装置200可并发执行15个或者更少的解码处理,可并发执行17个或者更多的解码处理,或可并发执行数量不定的解码处理。
此外,作为对turbo解码装置200结构的阐释进行详细描述,turbo解码装置200包括多个存储器,并根据通信方法改变存储器的组合以改变每个存储器记忆库的容量和存储器记忆库的数量。其结果,turbo解码装置200能通过使用同样的存储器执行具有不同方法的交织和反交织处理。
turbo解码装置的结构
将参考图3阐释根据第二实施例的turbo解码装置200的结构示例。图3为一阐释了根据第二实施例的turbo解码装置的结构示例的框图。如图3所示的示例中,turbo解码装置200包括接收数据存储器201、交织存储器202、解码运算单元211、转换单元212、访问选择单元213以及输出控制单元214。
下文中,将作为示例阐释turbo解码装置200相应于LTE和HSPA+的情况。然而本发明不限于此。例如,turbo解码装置200可响应除了LTE和HSPA+之外的另外的通信方法。例如,turbo解码装置200可相应于LTE和HSPA+中的一个和除了LTE和HSPA+之外的一种通信方法。此外,turbo解码装置200可相应于除了LTE和HSPA+之外的多个通信方法,而不相应于LTE和HSPA+。
回到图3的阐释,接收数据存储器201连接解码运算单元211。接收数据存储器201是例如诸如RAM(随机存取存储器)或闪存的半导体存储装置。接收数据存储器201将由turbo解码装置200接收到的编码信号存储在其上。此外,存储在接收数据存储器201的编码信号被解码运算单元211获取到。
将参考图4阐释存储在接收数据存储器中的编码信号的示例。图4为一阐释了存储在接收数据存储器中的编码信号的示例的图示。在图4所示的示例中,示出了编码信号的数据尺寸是“3200字”的情况。在这种情况下,字是表示数据尺寸的单位。下文中,形成编码信号的唯一标识数据的信息被称作“逻辑地址”。换言之,在图4所示的示例中,形成3200字编码信号的数据的逻辑地址为“0”至“3199”,逻辑地址还被称作“第一标识信息”。
下文中,除非特别提及,如图4所示,阐释的是turbo解码装置200接收3200字编码信号的情况。换言之,阐释的是接收数据存储器201存储3200字编码信号的情况。下文中,进一步阐释了turbo解码装置200接收3200字编码信号的情况。然而,本发明不限于此。例如,turbo解码装置200可接收具有比3200字更大尺寸的编码信号,或者可以接收具有比3200字更小尺寸的编码信号。
由turbo解码装置200接收到的编码信号的尺寸依赖于被发送和接收的数据而不同。此外,编码信号的最大尺寸是由通信方法决定的。例如,当使用LTE执行数据的发送和接收时,编码信号的最大尺寸是“6140字”。turbo解码装置200接收“0-6400字”的编码信号。此外,例如,当使用HSPA+执行数据的发送和接收时,编码信号的最大尺寸是“5120字”。在这种情况下,turbo解码装置200接收“0-5120字”的编码信号。
回到图3的阐释,交织存储器202连接访问选择单元213和输出控制单元214。交织存储器202是例如诸如RAM或闪存的半导体存储装置。
在对编码信号进行解码的过程中执行交织处理的情况下,交织存储器202存储数据。具体地,交织存储器202包括多个存储电路,并通过耦合多个存储电路来形成为一个存储空间。
将参考图5来阐释交织存储器202包括多个存储电路的情况。图5为一阐释了交织存储器包括多个存储电路的情况的图示。图5中的每个RAM都表示一个存储电路。下文中,认为“RAM_nS”(n是自然数)具有128字的容量、“RAM_nL”(n是自然数)具有256字的容量以及“RAM_nXL”(n是自然数)具有384字的容量。另外,当在具有同样容量的存储电路中“n”为同一数字时,假设具有同一数字的存储电路为同一存储电路。
在图5所示的示例中,交织存储器202包括具有不同容量的多种存储电路。例如,交织存储器202包括“RAM_0S”至“RAM_9S”、“RAM_0L”到“RAM_2L”以及“RAM_0XL”至“RAM_1XL”。在图5所示的示例中,已经阐释了交织存储器202包括具有不同容量的多种存储电路的情况。然而,本发明不限于此。例如,交织存储器202可选择性地包括具有同样容量的存储电路。
将参考图6A和图6B阐释由耦合多个存储电路形成一个存储空间的情况。图6A为一阐释了当HSPA+被用作通信方法时所形成的存储空间的图示。图6B为一阐释了当LTE被用作通信方法时所形成的存储空间的图示。图6A和图6B中的每个RAM意谓交织存储器202的存储电路。下文中,形成在交织存储器202上的存储空间的唯一标识位置的信息被称作“物理地址”。此外,阐释了一个物理地址相应于1字数据的情况。物理地址还被称作“第二标识信息”。
当使用HSPA+时,考虑到编码信号的最大尺寸是“5120字”,如图6A所示,具有“5120字”容量的存储空间形成在交织存储器202上。换言之,如下所述,转换单元212将从“0”至“5119”的物理地址提供给存储电路,以在交织存储器202上形成具有“5120字”的容量的存储空间。例如,在图6A所示的示例中,物理地址“0”至“255”给予“RAM_0L”,并且物理地址“256”至“383”给予“RAM_0S”。
当使用LTE时,考虑到编码信号的最大尺寸是“6140字”,如图6B所示,具有“6140字”容量的存储空间形成在交织存储器202上。
此外,形成在交织存储器202上的存储空间通过使用多个记忆库形成。这些记忆库通过使用各存储电路实现。例如,在图6A中,形成在交织存储器202上的存储空间通过使用记忆库“记忆库#0”到“记忆库#9”来实现。此外,在图6A所示的示例中,“记忆库#0”通过使用RAM0L来实现,并且“记忆库#1”通过使用RAM0S和RAM1S来实现。此外,在图6B中,通过使用“记忆库#0”至“记忆库#15”来阐明所形成的存储空间的情况。
在这种情况下,记忆库通过使用各存储电路来形成,并且turbo解码装置200并行访问记忆库去读写数据。在图6A和图6B中,已经阐释了记忆库数量为20和16的情况。然而,本发明不限于此,而可以是任意数量。
此外,交织存储器202根据存储电路的组合用作第一记忆库结构(通过其分配第一容量给每个记忆库)运行,或用作第二记忆库结构(通过其分配第二容量给每个记忆库)运行。
将参考图7A和图7B阐释相应于每种通信方法的记忆库结构的示例。图7A为一阐释了当使用HSPA+时记忆库结构的示例的图示。图7B为一阐释了当使用LTE时记忆库结构的示例的图示。图7A中的标号500-505和图7B中的标号520-524表示记忆库。此外,每个记忆库的容量表示相应的记忆库。
将阐释使用HSPA+的情况。在图7A中,作为一个示例,20个记忆库形成在交织存储器202上,并且256字的容量被分配给每个记忆库。当使用HSPA+时,在很多情况下,诸如“5”、“10”或“20的数字被用作记忆库的数量。在这种情况下,考虑到如上述第二实施例中的turbo解码装置200并发执行16个解码处理,阐明了在图7A的示例中使用了比“16”更大的20个记忆库的情况。此外,分配给每个记忆库的容量是通过将在通信方法中发送和接收到的数据的最大尺寸除以记忆库的数量所获得的一个数值。例如,当记忆库的数量为20时,并且最大尺寸是“5120字”时,数值就是“5120/20=256”。
此外,将阐释使用LTE的情况。在图7B中,作为一个示例,16个记忆库形成在交织存储器202上,并且将384字的容量分配给每个记忆库。就LTE而言,考虑到在很多情况下,诸如“5”、“10”或“20”的数字不被用作记忆库的数量,turbo解码装置200能并行执行解码处理的数量“16”被用作在图7B所示的示例中的记忆库数量。在图7A和7B中,示出了记忆库数量是20和16的情况。然而本发明不限于此,它可以是任意数量。
将参考图8A和图8B阐释使用多个存储电路的记忆库结构的示例。图8A为一阐释了当使用HSPA+时使用多个存储电路的记忆库结构的示例的图示。图8A相应于图7A。图8B为一阐释了当使用LTE时使用多个存储电路的记忆库结构的示例的图示。图8B相应于图7B。图8A中的标号540至548以及图8B中的标号560和565表示记忆库。此外,图8A和图8B中的“RAM_nS”、“RAM_nL”以及“RAM_nXL”(n为自然数)分别表示包含在交织存储器202中的存储电路。
将阐释使用HSPA+的情况。换言之,将阐释图7A中所示的记忆库结构通过使用多个存储电路来实现的情况。在这种情况下,如图8A所示,例如,每个记忆库通过使用每个都具有128字容量的两个“RAM_nS”来实现。可选地,每个记忆库通过使用具有256字容量的一个“RAM_nL”来实现。
将阐释使用LTE的情况。换言之,将阐释图7B中所示的记忆库结构通过使用多个存储电路来实现的情况。在这种情况下,如图8B所示,例如,每个记忆库通过使用每个都具有128字容量的三个“RAM_nS”来实现。此外,例如,每个记忆库通过使用具有256字容量的一个“RAM_nL”和一个“RAM_nS”来实现。此外,每个记忆库通过使用具有384字容量的一个“RAM_zXL”来实现。
如图8A和图8B所示,即使使用HSPA+或者即使使用LTE,交织存储器202都使用同样的存储电路。例如,在图8A的“记忆库#0”中所使用RAM_0L和在图8B的“记忆库#0”中所使用的RAM_0L是同样的存储电路。
现在,将阐释给予每个存储电路的物理地址。如上所述,一个存储器空间通过耦合多个存储电路形成在交织存储器202上,并且将一系列的物理地址预先给予它们。具体地,在考虑turbo解码装置200所使用的记忆库结构之后,将一系列的物理地址预先给予存储电路。更具体地说,在考虑记忆库结构中的每个记忆库容量之后,一系列的物理地址被给予。在这种情况下,给予每个存储电路的物理地址是同样的,而不考虑记忆库的结构。另外,存储电路预先设置有一系列的物理地址。
现在,阐释其中每个记忆库的容量是“256字”的记忆库结构以及其中每个记忆库的容量是“256字”的记忆库结构都被使用的情况。在这种情况下,考虑到用不同的存储电路来实现记忆库,以每“256字”使用不同的存储电路以及每“384字”使用不同的存储电路的方式将一系列的物理地址给予存储电路。例如,以在256字、384字、512字(256*2)、768字(256*3或384*2)等等的等级改变存储电路的方式,将一系列物理地址给予存储电路。
就使用图5所示的示例进行的阐释而言,在交织存储器202中,将一系列物理地址顺序给予在图5中所示的存储电路中的上部存储电路至下部存储电路。更具体地说,在交织存储器202中,将物理地址“0-255”给予RAM_0L,并将物理地址“256-383”给予RAM_0S。同样地,按照RAM_1S、RAM_2S、RAM_3S、RAM_1L、RAM_4S、RAM_5S、RAM_6S、RAM_7S、RAM_2L、RAM_8S以及RAM_9S的顺序将物理地址给予存储电路。
换言之,在图5所示的示例中,给予了一系列物理地址的存储电路在256字的等级从RAM_0L变化到RAM_0S,并在384字的等级从RAM_0S变化到RAM_1S。这样,在考虑每个记忆库的容量之后,将所使用的与记忆库结构无关的一系列的物理地址给予存储电路。其结果,如在阐释转换单元212时详细被描述的,在访问交织存储器202时以同样的方式执行处理,即使记忆库结构被改变。
回到图3的阐释,解码运算单元211连接接收数据存储器201和转换单元212。解码运算单元211为,例如,诸如ASIC(Application Specific Integrated Circuit,特定用途集成电路)、FPGA(Field Programmable Gate Array,现场可编程门阵列)、CPU(Central Processing Unit,中央处理单元)或MPU(Micro Processing Unit,微处理单元)之类的电子电路。
解码运算单元211包括多个处理单元。在图3所示的示例中,解码运算单元211包括解码运算部件#0至解码运算部件#n-1。下文中,除非特别提及,阐释的是解码运算单元211包括16个解码运算部件的情况。换言之,解码运算单元211通过由16个解码运算部件并发执行处理来并行执行16个解码处理。下文中,阐释了解码运算单元211包括16个解码运算部件的情况。然而,本发明不限于此。解码运算单元211可使用任意数量的解码运算部件。
当编码信号存储在接收数据存储器201中时,解码运算单元211读出编码信号并对读出的编码信号执行turbo解码处理。具体地,解码运算单元211采用解码运算部件之间的协作来执行turbo解码处理。然后,解码运算单元211将由turbo解码处理解码出的编码信号存储在交织存储器202中。
进一步阐释采用解码运算部件之间的协作来执行turbo解码处理。图9和图10是阐释了采用解码运算部件之间的协作来执行turbo解码处理的图示。在图9中,示出了接收数据存储器201、存储在接收数据存储器201中的编码信号以及解码运算部件。此外,图9中的标号600-602表示将编码信号除以编码运算部件的数量所获得的部分(part)。换言之,当编码信号的数据容量是3200字且解码运算部件的数量是16时,每部分的尺寸是“200”。在图10中,示出了解码运算部件和交织存储器202。而且,在交织存储器202中清楚示出了记忆库。在图10所示的示例中,阐释了如图7B和8B所示的记忆库的数量是16以及每个记忆库的容量是384字的情况。此外,图10中的标号610-612表示在记忆库存储有数据的部分,以及图10中的标号620-622表示在记忆库没有存储数据的空部分。
在这种情况下,如图9所示,每个解码运算部件从接收数据存储器20 1中读1/16的编码信号(1),并且该部件并发执行解码处理。换言之,每个解码运算部件读出相应于该部件本身的一部分编码信号(1),并对读出部分执行解码处理。例如,解码运算部件#0读出部分600,并对读出部分600执行解码处理,其中部分600相应于将编码信号(1)除以16所获得的部分之一。同样地,解码运算部件#1和解码运算部件#15分别读出部分601和602,并对读出部分执行解码处理。
此外,如图10所示,在执行解码处理之后,解码运算单元211将编码信号(2)存储在交织存储器202中。具体地,在执行解码处理之后,解码运算部件将编码信号(2)并发存储在记忆库中。例如,如图10的标号610所示,解码运算部件#0将该部件自己执行解码处理的编码信号(2)的那部分存储在记忆库#0中,同样地,如图10的标号611和612所示,解码运算部件#1和解码运算部件#15分别将相应部分存储在记忆库#1和记忆库#15中。其结果,如图10所示,每个记忆库都存储有200字的数据。
此外,每个解码运算部件对存储在交织存储器202中的编码信号(2)执行交织处理。然后,在执行交织处理之后,每个解码运算部件对编码信号(3)执行解码处理,并在执行解码处理后再次将编码信号(4)存储在交织存储器202中。换言之,每个解码运算部件对存储在交织存储器202中的编码信号的顺序进行交换,然后读出其顺序被交换的编码信号(3)的1/16,并发执行解码处理。然后,每个解码运算部件将由该部件执行解码处理的编码信号(4)的那部分进行并发存储。
此外,每个解码运算部件对存储在交织存储器202中的编码信号(4)执行反交织处理。然后,在执行反交织处理之后,每个解码运算部件对编码信号(5)执行解码处理,并在执行解码处理后再次将编码信号(6)存储在交织存储器202中。换言之,每个解码运算部件读出其顺序被恢复的1/16的编码信号(5),并发执行解码处理。然后,每个解码运算部件将由该部件自身执行解码处理的编码信号(6)的那部分存储在交织存储器202中。
此外,每个解码运算部件确定交织处理和反交织处理是否重复预定的次数。在这种情况下,当确定不重复这些处理时,每个解码运算部件再次执行解码处理、交织处理、反交织处理。在另一方面,当确定重复这些处理预定次数时,每个解码运算部件终止turbo解码处理。在turbo解码处理终止的时间点,在执行turbo解码处理之后将编码信号存储在交织存储器202中。另外,每个解码运算部件,例如重复八次的交织处理和反交织处理。应注意的是,重复交织处理和反交织处理的频率不限于八次。例如,该频率可以是七次或者更少,可以是九次或者更多,或者可以是任意数量。
如图3所示,当访问交织存储器202时,解码运算单元211经由转换单元212和访问选择单元213访问交织存储器202。具体地,当解码运算单元211访问交织存储器202时,通过转换单元212将逻辑地址转换成物理地址,并且解码运算单元211访问由转换后的物理地址所标识的位置。同时,访问选择单元213以同时不对同一存储电路执行访问的方式控制访问。
回到图3的阐释,转换单元212连接解码运算单元211和访问选择单元213。转换单元212,例如,为诸如ASIC、FPGA、CPU或MPU之类的电子电路。
转换单元212包括多个转换器。在图3所示的示例中,转换单元212包括转换器#0至转换器#n-1。下文中,除非特别提及,阐释的是转换单元212包括16个转换器的情况。换言之,转换器#0至转换器#15分别连接解码运算部件#0至解码运算部件#15,并且为被连接解码运算部件执行处理。下文中,阐释了转换单元212包括16个转换器的情况。然而,本发明不限于此。转换单元212可包括任意数量的转换器。
在图3所示的示例中,已经阐释了解码运算单元211和转换单元212为分离的部件的情况。然而,本发明不限于此。例如,解码运算单元211和转换单元212可以集成在一起。
将参考图11详细阐释转换单元212。图11为一阐释了根据第二实施例的转换单元的细节的图示。在图11中,详细示出了包含在转换单元212内的部件,并且为了便于阐释一并示出了解码运算部件和访问选择单元213。在图11所示的示例中,转换单元212包括转换器301#0至转换器301#15以及地址偏移计算单元300。
地址偏移计算单元300连接每个转换器的记忆库选择单元311和物理地址计算单元312。此外,如下面所阐释的,地址偏移计算单元300选择运行第一记忆库结构还是运行第二记忆库结构。此外,地址偏移计算单元300为每个记忆库分配编码信号。
首先,将阐释在地址偏移计算单元300选择运行第一记忆库结构还是运行第二记忆库结构中的处理。地址偏移计算单元300根据编码信号的通信方法来选择交织存储器202是用作第一记忆库结构运行还是用作第二记忆库结构运行。
例如,地址偏移计算单元300预先储存每个通信方法的记忆库结构。进一步地,当用户或使用turbo解码装置200的其它设备通知了通信方法时,地址偏移计算单元300选择相应于被通知的通信方法的记忆库结构。例如,当通信方法是HSPA+时,地址偏移计算单元300选择相应于HSPA+的记忆库结构,当通信方法是LTE时选择相应于LTE的记忆库结构。
将参考图12A和图12B阐释存储在地址偏移计算单元300中的记忆库结构的示例。图12A为一阐释了与HSPA+相关联的记忆库结构的示例的图示。图12B为一阐释了与LTE相关联的记忆库结构的示例的图示。如图12A和12B所示,地址偏移计算单元300将表示初始物理地址的“地址偏移”存储在每个通信方法的每个记忆库中。在图12A和12B中,地址偏移被称作“ADROFS”。每个记忆库的ADROFS为将在先前记忆库中的最终物理地址加一所获得的值。例如,当记忆库#0的物理地址是“0-255”,记忆库#1的ADROFS是“256”。
例如,如图12A所示,作为与HSPA+相关联的记忆库结构的示例,地址偏移计算单元300存储与记忆库#0关联的ADROFS“0”,并存储与记忆库#1关联的ADROFS“256”。同样地,地址偏移计算单元300也存储与记忆库#2至记忆库#19关联的ADROFS。换言之,在图12A所示的示例中,当通信方法为“HSPA+”时,地址偏移计算单元300将给予记忆库的物理地址中的初始物理地址存储起来。例如,地址偏移计算单元300存储以“0”开始的记忆库#0的物理地址以及以“256”开始的记忆库#1的物理地址。
此外,在图12所示的示例中,作为与LTE相关联的记忆库结构的示例,地址偏移计算单元300存储与记忆库#0关联的ADROFS“0”以及存储与记忆库#1相关联的ADROFS“384”。同样地,地址偏移计算单元300也存储与记忆库#2至记忆库#15关联的ADROFS。换言之,在图12B所示的示例中,当通信方法为“LTE”时,地址偏移计算单元300将给予记忆库的物理地址中的初始物理地址存储起来。例如,地址偏移计算单元300存储以“0”开始的记忆库#0的物理地址以及以“384”开始的记忆库#1的物理地址。
在参考图12A和图12B所阐释的示例中,已经阐释了地址偏移计算单元300预先存储ADROFS的情况。然而,本发明不限于此。例如,无论何时通知通信方法,地址偏移计算单元300可计算并设置用于实现每个记忆库的ADROFS。
接下来,将阐释地址偏移计算单元300将编码信号分配给每个记忆库的处理。无论何时改变编码信号的数据尺寸,地址偏移计算单元300都执行如下所阐释的处理。换言之,无论何时改变存储在接收数据存储器201的编码信号的数据尺寸,地址偏移计算单元300都再次将编码信号分配给每个记忆库。
地址偏移计算单元300通过使用编码信号的数据尺寸和存储在接收数据存储器201中的记忆库的数量来计算分配给每个记忆库的数据尺寸,并为每个计算出的数据尺寸将编码信号分配给每个记忆库。
例如,阐释编码信号数据尺寸是“3200字”和记忆库数量是16的情况。在这种情况下,地址偏移计算单元300将数据尺寸“3200”除以记忆库数量“16”来计算分配给每个记忆库的数据尺寸“200”,然后,地址偏移计算单元300将“200字”的数据分配给16个记忆库。例如,地址偏移计算单元300将从逻辑地址“0”至逻辑地址“199”的数据分配给记忆库#0,并将从逻辑地址“200”至逻辑地址“399”的数据分配给记忆库#1。此外,地址偏移计算单元300同样分配逻辑地址“400”至“3199”的数据给记忆库。
下文中,在分配给每个记忆库的编码信号中,最小逻辑地址被称作“ADRMINI”,并且最大逻辑地址被称作“ADRMAX”。例如,阐释地址偏移计算单元300将逻辑地址“0”至逻辑地址“199”的编码信号分配给记忆库#0的情况。这种情况下,记忆库#0的“ADRMINI”为“0”,并且“ADRMAX”为“199”。换言之,地址偏移计算单元300为每个记忆库设置ADRMINI和ADRMAX,以将编码信号分配给每个记忆库。
参考图13A和13B进一步阐释了为每个记忆库设置ADRMINI和ADRMAX的示例。图13A为一阐释了在使用HSPA+时为每个记忆库设置的ADRMINI和ADRMAX的示例的图示。图13B为一阐释了在使用LTE时为每个记忆库设置的ADRMINI和ADRMAX的示例的图示。在这种情况下,图13A相应于记忆库的数量是20的情况,并且图13B相应于记忆库的数量是16的情况。
如图13A和图13B所示,地址偏移计算单元300为每个记忆库设置ADRMINI和ADRMAX。在图13A所示的示例中,地址偏移计算单元为记忆库#0设置ADRMINI“0”和ADRMAX“159”。此外,地址偏移计算单元300同样为记忆库#1设置ADRMINI“160”和ADRMAX“319”。换言之,在图13A所示的示例中,地址偏移计算单元300将逻辑地址“0”至“159”的编码信号分配给记忆库#0,并将逻辑地址“160”至“319”的编码信号分配给记忆库#1。此外,地址偏移计算单元300同样将逻辑地址“320-3199”的编码信号分配给记忆库。
在这种情况下,分配给每个记忆库的编码信号的尺寸依赖于编码信号的尺寸而不同。例如,在图13B所示的示例中,已经阐释了编码信号数据尺寸为“3200”的情况。然而,当编码信号的数据尺寸是“1600”时,地址偏移计算单元300将“100字”的数据分配给16个记忆库中的每个。换言之,地址偏移计算单元300决定被分配给每个记忆库的数据尺寸,并以将编码信号分配给所有的记忆库的方式来设定ADRMINI和ADRMAX。换言之,无论何时改变编码信号的数据尺寸,地址偏移计算单元300都会再次为每个记忆库设定ADRMINI和ADRMAX。
回到图11的阐释,转换器301#0至转换器301#15中的每个均包括记忆库选择单元311,物理地址计算单元312以及地址解码单元313。此外,转换器301#0-转换器#15并发执行相应于由解码运算部件#0-#15所执行的访问的处理。
记忆库选择单元311通过使用作为访问对象的编码信号的逻辑地址以及由地址偏移计算单元300为每个记忆库设定的ADRMINI和ADRMAX来选择交织存储器202中的一个记忆库。换言之,记忆库选择单元311选择其中存储有由逻辑地址标识的数据的记忆库。
具体地,记忆库选择单元311对一包括由地址偏移计算单元300为每个记忆库设定的介于ADRMINI和ADRMAX之间的逻辑地址的组合进行识别。换言之,记忆库选择单元311识别满足下面关系式(1)的ADRMINI和ADRMAX的组合。然后,记忆库选择单元311选择相应于被识别出的组合的记忆库。
ADRMINI#n≤(逻辑地址)≤ADRMAX #n           (1)
关系式(1)中的#n与记忆库的数字相应。例如,在图13B所示的示例中,关系式(1)中的#n相应于#0-#15中的任何一个。换言之,例如,地址偏移计算单元300确定对于每个记忆库#0-#15逻辑地址是否被包含在ADRMINI和ADRMAX之间,并识别逻辑地址被包含的记忆库。
例如,通过使用逻辑地址“240”来具体阐释。此外,通过使用图13B所示的示例来阐释。在这种情况下,记忆库选择单元311识别出相应于逻辑地址“240”的ADRMINI和ADRMAX的组合是ADRMINI“200”和ADRMAX“399”的组合。然后,记忆库选择单元311选择相应于被识别出组合的记忆库#1。
回到图11的阐释,物理地址计算单元312将逻辑地址转换为物理地址。将参考图14阐释由物理地址计算单元312所执行的转换处理。图14是一根据第二实施例阐释了由物理地址计算单元执行的转换处理的细节的图示。在图14的(1)中示出了编码信号。此外,在图14的(2)中,示出了编码信号中的分配给记忆库#0的部分和分配给记忆库#1的部分,并且示出了交织存储器202的记忆库#0和记忆库#1。
此外,图14中的标号700-702表示分配给记忆库的编码信号的部分。例如,图14的标号700是相应于逻辑地址“0-199”并分配给记忆库#0的那部分编码信号。此外,当图14中的标号700-702存储在记忆库中时,图14中的标号710和711表示空部分。例如,当图14中的标号700存储在记忆库#0中时,图14中的标号710表示记忆库#0的空部分。此外,图14中的标号720和721分别表示交织存储器202的记忆库#0和记忆库#1。
如图14的(1)所示,阐释了将逻辑地址“240”转换为物理地址的情况。在这种情况下,如上所述,记忆库选择单元311为逻辑地址“240”选择记忆库#1。之后,物理地址计算单元312计算为记忆库#1设定的从ADRMINI起哪个数字的逻辑地址是逻辑地址“240”。例如,当如图14的(1)所示的记忆库#1的ADRMINI是“200”时,如图14的(2a)所示物理地址计算单元312计算出“40”。换言之,这表明逻辑地址“240”的数据存储在记忆库#1的“第40个”位置处。物理地址计算单元312然后计算位于从记忆库#1的ADROFS起第40个位置处的逻辑地址。例如,如图14的(2b)所示,当记忆库#1的ADROFS为“384”时,物理地址计算单元312计算物理地址“384+20=424”。换言之,物理地址计算单元312将逻辑地址“240”转换为物理地址“424”。
由物理地址计算单元312执行的物理地址计算处理如下面的表达式(2):
(物理地址)=(逻辑地址)-ADRMINI #n+ADROFS #n    (2)
在表达式(2)中,#n相应于表示由记忆库选择单元311选择的记忆库的数字。例如,当记忆库选择单元311选择了记忆库#1时,ADRMINI的值和ADROFS的值被分配。更具体地说,当ADRMINI#1是“200”且ADROFS#1是“384”时,下面表达式(2)变成表达式(3)。
(物理地址)=(逻辑地址)-200+384                 (3)
回到图11的阐释,地址解码单元313从由物理地址计算单元312转换的物理地址中,产生作为表示其为哪个存储电路的信息的RAM选择信号以及表示在存储电路中的位置的存储位置信号。一般来说,物理地址的高位侧表示为哪个存储电路,且物理地址的低位侧表示在存储电路的中位置。考虑到这个事实,地址解码单元313使用物理地址中表示哪个存储电路的高位部分作为RAM选择信号,并使用表示存储器位置的低位部分作为存储位置信号。例如,当物理地址的比特数是“12”时,RAM选择信号相应于高位的4比特或5比特,存储位置信号相应于低位的8比特。
访问选择单元213连接转换单元212和交织存储器202。访问选择单元213是例如诸如ASIC、FPGA、CPU或MPU之类的电子电路。访问选择单元213接收来自每个转换器的RAM选择信号和存储位置信号,并以同时不对同一存储电路执行访问的方式控制对交织存储器202的访问。具体地,当从多个转换器中接收到同样的RAM选择信号时,访问选择单元213控制为顺序访问,而不会同时对多个存储电路访问。
此外,访问选择单元213不在记忆库的单元中而在存储电路的单元中执行访问选择。这是基于在第二实施例中用来实现记忆库的存储电路的组合依赖于通信方法而不同的事实。换言之,访问选择单元213不在记忆库的单元中而在存储电路的单元中执行访问选择,这样能使用共同的访问选择单元213,而不用为每种通信方法或用来实现记忆库的每组存储电路组合都提供访问选择单元213。
在第二实施例中,事实上,多个转换器不会同时指定同样的RAM选择信号。具体地,解码运算部件#0-#15在读写的情况下分别访问不同的记忆库。此外,通过使用各存储电路实现记忆库。由于这种理由,多个转换器不会同时指定同样的RAM选择信号。
这样,如上所述,转换单元212根据编码信号的通信方法来选择交织存储器202是用作第一记忆库结构运行还是用作第二记忆库结构运行。然后,转换单元212根据选择的记忆库结构控制对交织存储器202的访问。
具体地,在将编码信号除以记忆库数量之后,转换单元212将逻辑地址分配给用于每个被划分的编码信号的每个记忆库。然后当接收到逻辑地址时,转换单元212识别与由接收到逻辑地址标识出的数据相应的记忆库,为被识别出的记忆库将逻辑地址转换为物理地址,以及对由物理地址标识的位置进行访问。
回到图3的阐释,当由解码运算单元211所执行的turbo解码处理终止时,输出控制单元214读出存储在交织存储器202中的数据,并将读出的数据输出。在这种情况下,由输出控制单元214输出的数据的输出目的地相应于例如使用turbo解码装置200的另一装置或属于turbo解码装置200的高位层(high-order layer)的处理单元。
由turbo解码装置执行的处理
接下来,将参考图15阐释根据第二实施例由turbo解码装置200执行的处理的流程示例。图15为一阐释了根据第二实施例由turbo解码装置执行的处理的流程示例的流程图。
如图15所示,当解码信号存储在接收数据存储器201中时(步骤S101:是),解码运算单元211中的每个解码运算部件读出该部件自身相应的那部分编码信号(1)(步骤S102)。然后,每个解码运算部件对读出部分执行解码处理(步骤S103)。然后在执行解码处理之后,每个解码运算部件将编码信号(2)并发存储在交织存储器202的相应记忆库中(步骤S104)。在这种情况下,当每个解码运算部件将数据存储在交织存储器202中并读数据时,转换单元212将逻辑地址转换成物理地址。其结果,每个解码运算部件对由物理地址标识的位置写入或读出数据。
然后,每个解码运算部件对存储在交织存储器202中的编码信号(2)执行交织处理(步骤S105),并在交织处理之后对编码信号(3)执行解码处理(步骤S106)。换言之,每个解码运算部件交换存储在交织存储器202中的编码信号(2)的顺序,然后读出其顺序被交换过的1/16的编码信号(3),并发执行解码处理。然后,在执行解码处理之后每个解码运算部件将编码信号(4)并行存储在交织存储器202的相应记忆库中(步骤S107)。
然后,每个解码运算部件对存储在交织存储器202中的解码信号(4)执行反交织处理(步骤S108),并在执行反交织处理之后对编码信号(5)执行解码处理(步骤S109)。换言之,每个解码运算部件恢复存储在交织存储器202中的编码信号(4)的顺序,然后读出恢复顺序的1/16的编码信号(5),且并发执行解码处理。然后,每个解码运算部件在执行解码处理后再次将编码信号(6)并行存储在交织存储器202的相应记忆库中(步骤S110)。
在这种情况下,每个解码运算部件确定交织处理和反交织处理是否重复预定的次数(步骤S111)。换言之,每个解码运算部件确定步骤S104-S109的一系列处理是否被执行预定的次数。当确定不重复这些处理时(步骤S111:否),每个解码运算部件回到步骤S105,并再次执行步骤104-S109的一系列处理。在另一方面,当确定执行这些处理时(步骤S111:是),每个解码运算部件终止turbo解码处理,然后在turbo解码处理之后输出控制单元214输出数据(步骤S112)。
处理过程不限于上述顺序。处理过程在处理实质没有冲突的范围内可适当改变。例如,当没有执行步骤S103中的解码处理时,编码信号可存储在交织存储器202中。
转换单元的处理
接下来,将参考图16阐释根据第二实施例由转换单元12所执行的处理的流程示例。换言之,当每个解码运算部件将数据写入到交织存储器202中或读出时,将阐释转换单元212转换逻辑地址为物理地址的处理的流程。图16为一阐释了根据第二实施例由转换单元执行的处理的流程示例的流程图。由图16所阐释的处理相应于例如图15中的步骤S104、S107以及S110。
如图16所示,在访问交织存储器202时刻(步骤S201:是),转换单元212中的记忆库选择单元311选择在其中存储有由逻辑地址标识的数据的记忆库(步骤S202)。换言之,例如,记忆库选择单元311识别出包含有介于由地址偏移计算单元300为每个记忆库设定的ADRMINI和ADRMAX之间的逻辑地址的组合。然后,记忆库选择单元311选择相应于被识别出的组合的记忆库。例如,在使用图13B中所示的示例的阐释的情况下,当逻辑地址为“240”时,记忆库选择单元311选择记忆库#1。
然后,物理地址计算单元312计算物理地址(步骤S203)。换言之,例如,物理地址计算单元312计算从为记忆库#1设定的ADRMINI起哪个数字的逻辑地址是逻辑地址“240”。例如,在图14的(1)所示的示例中,物理地址计算单元312计算出“40”。物理地址计算单元312然后计算位于从记忆库#1的ADROFS起第40个位置处的物理地址。在图14的(2b)所示的示例中,物理地址计算单元312计算物理地址“384+20=424”。之后,关于由物理地址计算单元312计算出的物理地址存储或读出数据。
编码信号分配处理
接下来,将参考图17阐释根据第二实施例的编码信号分配处理的流程示例。图17为一阐释了根据第二实施例编码信号分配处理的流程示例的流程图。通过使用图17所阐释的处理,例如,优先于图16所示的一系列处理被执行。
如图17所示,当改变编码信号的尺寸时(步骤S301:是),地址偏移计算单元300计算分配给每个记忆库的数据尺寸(步骤S302)。换言之,例如,阐释了编码信数据尺寸为“3200字”且记忆库数量是16时的情况。在这种情况下,地址偏移计算单元300将数据尺寸“3200”除以记忆库的数量“16”来计算要分配给每个记忆库的数据尺寸“200”。
然后,地址偏移计算单元300为每个被计算出的数据尺寸将编码信号分配给每个记忆库(步骤S303)。换言之,例如,地址偏移计算单元300将“200字”的数据分配给16个记忆库中的每个。更具体地说,地址偏移计算单元300将逻辑地址“0”至“199”的数据分配给记忆库#0,同样地,将逻辑地址“200”至“3199”的数据分配给记忆库。换言之,地址偏移计算单元300以编码信号被分配给所有的记忆库的方式来计算要分配给每个记忆库的数据尺寸,并设定每个记忆库中的ADRMINI和ADRMAX。
应注意到的是,上述处理程序不限于该处理程序优先于图16所示的一系列处理被执行的情况。该处理程序可以与图16中所示的一系列处理并行执行。在这种情况下,执行图17中的一系列处理直至图16中所示的处理中的步骤S202被执行。
记忆库结构选择处理
接下来,将参考图18阐释根据本发明第二实施例的记忆库结构选择处理的流程示例。图18为一阐释了根据第二实施例的记忆库结构选择处理的流程示例的图示。通过使用图18所阐释的处理,例如优先于图16和17中所示的一系列处理被执行。
如图18所示,当通信方法被通知时(步骤S401:是),地址偏移计算单元300选择相应于通信方法的记忆库结构(步骤S402)。例如,地址偏移计算单元300为每个通信方法存储记忆库结构,并选择相应于被通知的通信方法的记忆库结构。例如,当通信方法为HSPA+时,地址偏移计算单元300选择相应于HSPA+的记忆库结构,当通信方法为LTE时,选择相应于LTE的记忆库结构。
应注意的是,上述处理程序不限于该处理程序优先于图16和图17所示的一系列处理被执行的情况。该处理程序可以与图16和图17中所示的一系列处理并行执行。在这种情况下,执行图18中的一系列处理直至图16中所示处理中的步骤S202和图17中所示的步骤S302被执行。
第二实施例的效果
如上所述,根据第二实施例,turbo解码装置200包括交织存储器202,并访问交织存储器202以读写数据。此外,交织存储器202包括多个存储电路,并通过耦合多个存储电路形成为一个存储空间。此外,交织存储器202根据存储电路的组合,用作第一记忆库结构(通过其分配第一容量给每个记忆库)运行,或者用作第二记忆库结构(通过其分配第二容量给每个记忆库)运行。此外,turbo解码装置200根据编码信号的通信方法,选择交织存储器202是作为第一记忆库结构和第二记忆库结构中的哪一个运行,并根据被选择的记忆库结构访问交织存储器202。其结果,根据第二实施例,因为不用为每种通信方法准备存储器,相应于多个通信方法的turbo解码装置200能减轻存储器的负担。换言之,根据第二实施例,因为不会依赖于如LTE或HSPA+的通信方法或者如QPP或PIL的turbo解码处理的处理方法而安装单独的存储器,turbo解码装置能减轻存储器的负担。
尤其是,在基带处理单元中执行turbo解码处理的部分占了约80%。根据第二实施例,因为在不同的通信方法中能共享占用了大部分基带处理单元的turbo解码处理单元,且turbo解码处理单元能以较小尺寸制造,能共享各部件,实现了低成本。
此外,turbo解码装置200将逻辑地址转换为物理地址,并访问由物理地址标识的位置。其结果,即使随着通信方法的改变而改变记忆库结构,通过使用同样的处理指定访问目的地也能共享同样的转换单元212,而不用为每个记忆库结构安装单独的转换单元212。
在第二实施例中,在考虑到每个记忆库的容量后,使用一系列物理地址而不考虑给予存储电路的记忆库结构。其结果,因为即使改变记忆库结构也不会改变由转换器执行的处理,能使用同样的转换器,而不考虑记忆库结构。
此外,turbo解码装置200为通过将编码信号除以记忆库数量所获得的每个被划分的编码信号而将逻辑地址分配给每个记忆库。然后,turbo解码装置200识别与由编码信号的逻辑地址所标识的将要被访问的数据相应的记忆库,并为被识别出的记忆库将逻辑地址转换为物理地址。Turbo解码装置200然后访问由物理地址标识的位置。其结果,因为数据并非不均衡地分布在各记忆库中,并且数据可被分散地放置在记忆库中,turbo解码装置在解码处理的情况中能并发访问多个记忆库。因此,turbo解码装置能并发执行解码处理,并能快速执行解码处理。
(c)第三实施例
直至目前,已经阐释了本发明的多个实施例。本发明还可通过除了上面描述的实施例之外的其它实施例来实现。因此,下面将阐释其它实施例。
系统结构
此外,在本发明实施例中所描述的处理中,已经自动执行的处理的一部分或整个也能手动执行。可选地,已经手动执行的处理的一部分或整个也能以公知的方法自动执行。例如,用户可手动执行通信方法的通知,或者turbo解码装置可通过从接收到的编码信号分析通信方法来识别通信方法。并且,描述在本文和附图中的处理程序、控制程序、具体标题(concrete title)以及包括各种数据和参数(图1-图8)类型的信息可任意改变,除非它们被特别提及。
附图中所示的每个装置的每个部件都是一个功能性的概念。因而,这些部件不是必须如附图中所示的物理构造。换言之,每个装置的分离/整合的具体结构不限于所示出的结构。因而,每个装置的所有或部分根据负载或操作条件的各种类型能在可选单元中进行功能性或物理性的分离或整合。例如,在使用图3所示的示例进行阐释的情况中,接收数据存储器201可构造成经由网络连接的turbo解码装置200的外部装置。
如上所述,根据本发明的一个方面,能减轻存储器的负担。

Claims (5)

1.一种turbo解码装置,包括:
存储单元,用于在对使用turbo码编码的编码信号进行解码的过程中所执行的交织处理中存储数据;以及
访问单元,用于访问所述存储单元以读写数据,其中
所述存储单元包括多个存储电路,通过耦合所述多个存储电路而被形成为一个存储空间,以及根据所述存储电路的组合作为第一记忆库结构运行,或作为第二记忆库结构运行,其中,通过所述第一记忆库结构分配第一容量给每个记忆库,通过所述第二记忆库结构分配第二容量给每个记忆库,以及
所述访问单元根据所述编码信号的通信方法来选择所述存储单元作为所述第一记忆库结构和所述第二记忆库结构中的哪一个运行,并根据所选择的记忆库结构访问所述存储单元。
2.根据权利要求1所述的turbo解码装置,其中所述访问单元将用于形成所述编码信号的唯一标识数据的第一标识信息转换成用于唯一标识在所述存储空间中的位置的第二标识信息,以及所述访问单元访问由所述第二标识信息所标识的位置。
3.根据权利要求2所述的turbo解码装置,其中所述访问单元为通过将所述编码信号除以记忆库的数量所获得的每个被划分的编码信号而将所述第一标识信息分配给每个记忆库,当接收到所述第一标识信息时识别与由所述接收到的第一标识信息所标识的数据相应的记忆库,为所识别出的记忆库而将所述第一标识信息转换为所述第二标识信息,以及访问由所述第二标识信息所标识出的位置。
4.一种turbo解码装置,包括:
存储单元,用于在对使用turbo码编码的编码信号进行解码的过程中所执行的交织处理中存储数据;以及
访问单元,用于访问所述存储单元以读写数据,其中
所述存储单元包括多个存储电路,通过耦合所述多个存储电路而被形成为一个存储空间,以及根据所述存储电路的组合作为可删性质数交织器(PIL)记忆库结构运行,或者作为二次置换多项式交织器(QPP)记忆库结构运行,其中通过所述可删性质数交织器(PIL)记忆库将在通过使用PIL执行交织处理时所使用的容量分配给每个记忆库,通过所述二次置换多项式交织器(QPP)记忆库结构将在通过使用QPP执行交织处理时所使用的容量分配给每个记忆库,以及
所述访问单元根据所述编码信号的通信方法来选择所述存储单元作为所述PIL记忆库结构和所述QPP记忆库结构中的哪一个运行,并根据所选择的记忆库结构访问所述存储单元。
5.一种通信装置,包括:
存储单元,用于在对使用turbo码编码的编码信号进行解码的过程中所执行的交织处理中存储数据;以及
访问单元,用于访问所述存储单元以读写数据,其中
所述存储单元包括多个存储电路,通过耦合所述多个存储电路而被形成为一个存储空间,以及根据所述存储电路的组合作为第一记忆库结构运行,或作为第二记忆库结构运行,其中,通过所述第一记忆库结构分配第一容量给每个记忆库,通过所述第二记忆库结构分配第二容量给每个记忆库,以及
所述访问单元根据所述编码信号的通信方法来选择所述存储单元作为所述第一记忆库结构和所述第二记忆库结构中的哪一个运行,并根据所选择的记忆库结构访问所述存储单元。
CN201010509416.8A 2009-09-30 2010-09-29 Turbo解码装置及通信装置 Expired - Fee Related CN102035559B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009228849A JP5476902B2 (ja) 2009-09-30 2009-09-30 ターボ復号装置及び通信装置
JP2009-228849 2009-09-30

Publications (2)

Publication Number Publication Date
CN102035559A true CN102035559A (zh) 2011-04-27
CN102035559B CN102035559B (zh) 2013-05-01

Family

ID=43495050

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010509416.8A Expired - Fee Related CN102035559B (zh) 2009-09-30 2010-09-29 Turbo解码装置及通信装置

Country Status (4)

Country Link
US (1) US8443253B2 (zh)
EP (1) EP2306654A3 (zh)
JP (1) JP5476902B2 (zh)
CN (1) CN102035559B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6056509B2 (ja) * 2013-01-30 2017-01-11 富士通株式会社 情報処理装置および情報処理装置の制御方法
US10567008B2 (en) * 2015-07-02 2020-02-18 Apple Inc. Stopping criteria for turbo decoder

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2506034Y (zh) * 2001-11-12 2002-08-14 上海华龙信息技术开发中心 Turbo译码器件
WO2006059280A2 (en) * 2004-12-02 2006-06-08 Koninklijke Philips Electronics N.V. Turbo decoder with stake heritage for data block redundant version decoding
CN101026439A (zh) * 2007-02-07 2007-08-29 重庆重邮信科股份有限公司 一种提高Turbo码译码速率的译码方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7302621B2 (en) * 2000-01-03 2007-11-27 Icoding Technology, Inc. High spread highly randomized generatable interleavers
US7702968B2 (en) * 2004-02-27 2010-04-20 Qualcomm Incorporated Efficient multi-symbol deinterleaver
WO2006082923A1 (ja) 2005-02-03 2006-08-10 Matsushita Electric Industrial Co., Ltd. 並列インターリーバ、並列デインターリーバ及びインターリーブ方法
US8010867B2 (en) 2006-10-12 2011-08-30 Renesas Electronics Corporation Error correction code decoding device
JP4837645B2 (ja) 2006-10-12 2011-12-14 ルネサスエレクトロニクス株式会社 誤り訂正符号復号回路
JP2008135813A (ja) 2006-11-27 2008-06-12 Fujitsu Ltd ターボ復号器及びターボ復号方法
US8065588B2 (en) * 2007-01-17 2011-11-22 Broadcom Corporation Formulaic flexible collision-free memory accessing for parallel turbo decoding with quadratic polynomial permutation (QPP) interleave
US7873893B2 (en) 2007-02-28 2011-01-18 Motorola Mobility, Inc. Method and apparatus for encoding and decoding data
US8051239B2 (en) * 2007-06-04 2011-11-01 Nokia Corporation Multiple access for parallel turbo decoder
KR101110201B1 (ko) * 2007-10-31 2012-02-15 연세대학교 산학협력단 통신시스템에서 병렬구조 라틴방진 인터리빙 방법 및 장치
US8140932B2 (en) * 2007-11-26 2012-03-20 Motorola Mobility, Inc. Data interleaving circuit and method for vectorized turbo decoder
US8572332B2 (en) * 2008-03-28 2013-10-29 Qualcomm Incorporated De-interleaving mechanism involving a multi-banked LLR buffer
GB2463011B (en) * 2008-08-26 2010-12-29 Toshiba Res Europ Ltd A data decoding device and method
TWI381653B (zh) * 2009-09-11 2013-01-01 Ind Tech Res Inst 二階重排多項式交織器位址產生裝置與方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2506034Y (zh) * 2001-11-12 2002-08-14 上海华龙信息技术开发中心 Turbo译码器件
WO2006059280A2 (en) * 2004-12-02 2006-06-08 Koninklijke Philips Electronics N.V. Turbo decoder with stake heritage for data block redundant version decoding
CN101026439A (zh) * 2007-02-07 2007-08-29 重庆重邮信科股份有限公司 一种提高Turbo码译码速率的译码方法

Also Published As

Publication number Publication date
JP2011077947A (ja) 2011-04-14
US8443253B2 (en) 2013-05-14
JP5476902B2 (ja) 2014-04-23
CN102035559B (zh) 2013-05-01
US20110078542A1 (en) 2011-03-31
EP2306654A3 (en) 2011-04-13
EP2306654A2 (en) 2011-04-06

Similar Documents

Publication Publication Date Title
CN106471485B (zh) 用于在可扩展存储器系统协议中重新排序数据包传输的系统及方法
CN103825669B (zh) 数据处理的方法和装置
CN105490776B (zh) 交织方法及交织器
US20190349002A1 (en) Encoding And Decoding Method And Terminal
US10999005B2 (en) Method and device for polar code rate matching
US7127004B1 (en) Interleaver and method for interleaving an input data bit sequence using a coded storing of symbol and additional information
CN109328443A (zh) 具有较短处理延迟和较佳解码器吞吐量效率的使用qc-ldpc码码本的无线通信
CN102035559B (zh) Turbo解码装置及通信装置
TW202116021A (zh) 用於多ru操作的具有交織器和音調映射器的聯合編碼方案
CN108631921A (zh) 一种针对sn长度进行处理的方法和设备
CN103825967A (zh) 物联网的数据传输系统
CN101800627A (zh) 一种多码率兼容的高速ldpc编码器的硬件实现
Zhang et al. A quaternary-encoding-based channel hopping algorithm for blind rendezvous in distributed IoTs
CN101188429A (zh) 一种比特交织器和进行比特交织的方法
CN102917428A (zh) 信道切换方法及装置
CN102652414A (zh) 在传感器个人区域网络中进行分组转发
CN105760310A (zh) 地址分配方法及ddr控制器
CN103516478A (zh) 信息发送方法和设备
KR102506828B1 (ko) 데이터 전송 방법 및 기기
CN102780611A (zh) 包交换电路及包交换方法
CN109150191A (zh) 信息处理的方法、装置和通信设备
EP1089440A1 (en) Interleaver and method for interleaving a data bit sequence
CN114430280A (zh) 一种译码方法及装置
TW202408185A (zh) 用於下一代wlan的bcc低編碼率設計
KR101290472B1 (ko) 이동 통신 시스템에서 병렬 복호 방법 및 장치

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130501

Termination date: 20180929

CF01 Termination of patent right due to non-payment of annual fee