为并行turbo解码确定蝴蝶网络的控制位的制作方法_2

文档序号:8270221阅读:来源:国知局
过开关网络反复地访问存储空间的任何数学运算中。因此,在 turbo解码操作的背景下的以下实例是不受限制的。关于turbo解码操作的细节被进一步 详细描述为解决控制开关/蝴蝶网络的各个开关的控制位。
[0042] 图IA和IB示出了蝴蝶网络的一个示例性开关100,由于在图IA和IB中施加的 不同的控制位值,所以该网络的两个输入不同地耦合至其两个输出。开关100是双刀双掷 型,因此,最少由单个位控制;图IA示出了零值控制位的极互连(pole interconnection), 而图IB示出了用于单值控制位的极互连。具体地,开关100是在输入极和输出极之间内 部连接到相反连接的双刀双掷开关。该开关具有直通或交叉连接的两对极。在图IA的第 一掷出位置中,输入1和2可操作地耦接至相应的输出1和2,示出为直接连接(straight connection)。在图IB的相对的第二掷出位置中,输入1和2可操作地耦接至相应的输出2 和1,示出为交叉连接。对于任何给定的开关100, 一个输入在一个上,且在任何给定时刻, 只有一个输出。在蝴蝶网络中,每个开关没有方向;数据可以从在左边的极(标记为输入) 传递到在右边的极(标记为输出),如在图IA至图B中的箭头所示;或者数据可以从右边 极传递到左边极。
[0043] 蝴蝶网络的其他实现方式可以利用三刀双掷或者更一般而言利用X刀双掷开关, 每个开关依然由单个控制位控制,该控制位管理开关的双掷。对于具有多掷开关的实现方 式,每个开关最少具有y个控制位,其中,掷出的数量是2y或者更小(X和y是正整数)。一 些开关网络甚至可以使用具有不同数量的极和/或掷的开关的混合。为了简化描述,示例 性而非限制性的蝴蝶网络由12个双刀双掷开关构成,每个开关由单个位控制。
[0044] 如上所述,US-B-8051239解决了给定的多访问函数,并且通过该函数,可以解决蝴 蝶网络开关的控制位。这些教导内容的turbo解码实现方式采用了一种不同的方法,直接 解决线性(上升)和交错访问顺序以及给定程度的并行处理/并行访问的蝴蝶网络的控制 位,而无需所谓的多路访问函数。这可以被视为本发明的实施方式的第一部分,其中,第二 部分涉及使用新方案代替原始的多路访问方案,与在US-B-8051239中详细说明的技术相 t匕,新方案能够更快速并且更简单地解决第一部分的控制位。新的多路访问方案可以用于 为turbo交错器推导出新的有效表示。该第二部分具有大量用途,不仅仅是turbo编码。
[0045] 相对于在第一部分中解决控制位,考虑图2A的实例蝴蝶网络,其中,由标记为0-7 的8个总线203访问turbo解码器202的并行8元组访问功能。该turbo解码器202使用 所示出的8元组蝴蝶网络204,以用来在解码器202与标识为RAM0-RAM7的8个存储器206 之间的8个总线0-7上路由数据。在8元组蝴蝶网络204内,是被标识为k到b η的12个 开关,每个开关在功能上与在图IA至图B中所示的开关100相同。为了解决这12个开关 的12个控制位,存在逐个列地连续解决这些控制位的算法:
[0046] 第一步用于解决在左列204a上的4个位I3tTb3;
[0047] 第二步用于解决在中间列204b上的4个控制位b4_b7;
[0048] 第三步骤用于解决在右列204c上的4个位b8_bn。
[0049] 发明人已知的其他解决方案未直接处理蝴蝶网络的控制位,而是应用多路访 问函数的概念。这些其他解决方案首先解决多路访问函数,然后才解决控制位,如上面 US-B-8051239中所述。上面概述的并且在下文具体说明的直接解决算法极大地简化了控制 位解决处理。
[0050] 尽管本描述就开关的列而言,但是实际上,包含蝴蝶网络的半导体芯片不需要将 各种开关设置为如图2A所示的有序的物理列。控制各开关中的函数关系,而非相对于彼此 的物理设置。在功能上规定,图2A的标记的左列204a由输入没有直接连接至蝴蝶网络的 其他开关的输出的所有开关组成,图2A的标记的右列204c由输出没有直接连接至蝴蝶网 络的其他开关的输入的所有开关组成,并且图2A的标记的中间列204b由直接连接至位于 左列中的开关以及位于右列中的开关的所有开关组成。"直接连接"表示没有中间开关。如 在本文中使用的,术语"开关的函数列"表示在开关中的以上直接互连,而无论这种开关在 半导体芯片或其他实现介质中是如何物理设置的。
[0051] 当然,这些实例的原理可以扩展到任何整数y (函数)列的开关。使用变量X来索 弓I 1到y ;列X = 1是左上列,并且列X = y是右上列,然而,任何中间的第X列由输入直接 连接至第χ-1列中的开关的输出且输出直接连接至第χ+1列中的开关的输入的所有开关组 成。对于在相反的右至左方向上移动的数据(见图2A),以上术语颠倒,从而左边成为右边, 反之亦然,因此,输入成为输出,反之亦然。
[0052] 2"个开关的y列的蝴蝶网络具有2y个输入引脚、2y个输出引脚以及具有y*2H位 宽的控制信号的y*2〃个开关,每个开关一个控制位。2 y元组蝴蝶网络能够一次置换2 数据总线。可能置换的总数是2% z = y*2y'
[0053] 图3A以足够通用的术语示出了处理流程图,关于反映以下实施方式解决的问题 陈述,即,如何将可能存在于turbo解码器202内的给定的turbo交错器转换为简化的交 错器310以及转换为简化的解交错器312。如果需要额外的存储空间来处理该数据,那么 turbo交错器可以被扩展302。无论如何,应用多路访问方案304,以便在框306处产生简化 的交错器310和简化的解交错器312,反映了该多路访问方案应用的并行访问和交错访问, 以对各存储空间206内的数据重新排序。图3B示出了根据这些教导内容多路访问方案如 何进行操作。
[0054] 简化的交错器310和简化的解交错器312可以是与turbo解码器202本身的存储 器分开的存储器,并且在这种情况下,甚至在为turbo解码器通电之前,可以为并行和交错 访问实施本发明的一个实施方式。在这些教导内容在与所服务的turbo解码器202的存储 空间分开的简化的交错器310和简化的解交错器312的存储空间206上进行操作的更实际 的实现方式中,turbo解码器202解码先前根据这些教导内容访问的数据,而简化的交错器 310或简化的解交错器312在下一个访问问题(假设下一个turbo交错器不同)上操作。
[0055] 现在,使图3A的简化的交错器310和简化的解交错器312被设置为图3B中示出 的处理的起点,框314示出了多路访问方案通过逐个列地解决蝴蝶网络204(图2A)的控制 位而进行操作。一组控制位以升序(或者更一般而言,线性顺序)多路访问320放置(put) 数据,而不同的一组控制位以交错顺序多路访问322放置数据。
[0056] 图3C示出了一个处理图,所述处理图示出了如何将简化的交错器310映射到 turbo解码器的物理地址单元。物理地址单元通常形成总体turbo解码器的一部分,但是其 他单独的实施是可能的。在框330处,从简化的交错器310中去除总线指数,将物理地址发 送给turbo解码器202的地址单元202B (图3C)。还将升序320以及交错顺序322的控制 位发送给turbo解码器地址单元202A,该单元将控制位应用于蝴蝶网络204,从而使适当的 数据值以适当的顺序回读到turbo解码器202内。
[0057] 下面进一步详细说明用于获得逐列控制位的一个示例性实现方式。一旦获得那 些位,它们就被分配(assert)到蝴蝶网络204的相应的开关,从而以升序和交错的顺序访 问存储空间206内的数据,如图2A中所不。为此,使用了在后文中表不为T的turbo受错 器300 (图3A)、在后文中表不为T 1的反向turbo受错器以及多路访问方案。turbo受错 器T的长度被表示为N。多路访问方案仅仅描述了那些数据以上升(线性)顺序和在交错 顺序被同时访问/读取。多路访问方案在应用蝴蝶网络204以在turbo解码器202与2 3 =8RAM个存储器206 (具有多个存储器2%其中,y是整数)之间路由数据值的数据路径之 前,即,在8元组蝴蝶网络204之前的在图2A中的点203处是有效的。如果引导至蝴蝶网 络204的8个总线203由整数变量j表示,其中,j = 0, 1,…,7,那么每个第j个总线与地 址函数3」(1〇相关联,其中,1^ = 0,1,"、以8-1;地址函数&」(1〇从集合{0,1,2,..,以8-1} 映射到RAM 206的逻辑地址空间{0, 1,2,. .,N-1},并且具有不相交的图像:对于i尹j,i,j =0, 1,2, · ·,7,且 k = 0, 1,2,…,N/8-1,ai (k)尹 a』(k)。
[0058] 然后,升序8元组访问然后是具有以下(逻辑)地址的数据值的向量,(逻辑):
[0059] a〇 (k), B1 (k), a2 (k), a3 (k), a4 (k), a5 (k), a6 (k), a7 (k)
[0060] 其中,k = 0, I, 2, ...,Ν/8-l。
[0061] 对应的交错顺序8元组访问是在RAM 206中具有以下(逻辑)地址数据值的向 量:
[0062] T (a〇 (k)), T (k)), T (a2 (k)), T (a3 (k)), T (a4 (k)), T (a5 (k)), T (a6 (k)), T (a7 (k)),
[0063] 其中 k = 0, I, 2, ...,Ν/8-l。
[0064] 需要两个不同的8元组访问的原因在于turbo代码的结构:将数据位编码两次,一 次以升序,另一次以交错顺序。因此,turbo解码器202必须以这两个不同的顺序处理软数 据值。
[0065] 现在,谈论第二部分,其中,给定的多路访问方案由另一个方案代替,使得结果提 供一种实际有效的算法来解决控制位。RAM存储空间206的每个存储空间地址函数满足唯 一的关系:
[0066] aj(k)对应于(k,j),其中,j = 0,
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1