一种宽带码分多址搜索中多径提取的方法和系统 【技术领域】
本发明涉及电通信技术,尤其涉及一种宽带码分多址(WCDMA)搜索中多径提取的方法和系统。
背景技术
在WCDMA系统中,源传输信号被障碍物如建筑物和山等反射,接受机就会接受到多个不同时延的拷贝信号,通过解调模块的RAKE合并技术把这些不同时延的信号相加得到最大信号增益。而这些不同信号的时延特性就是上面所说的多径信息,8个多径就相当于8个不同时延的拷贝信号。因此多径的提取是WCMDA系统的关键技术,没有它就不能正确有效地合并接收信号,WCDMA的优势也就荡然无存。一般一个小区中某个扇区中的多径的数据选自两个天线的最大的几个值来做RAKE合并,但是当某个扇区中的某个天线突然由于种种原因失效的时候,就需要从另外一个天线获取所有的多径信息。
现有的技术方案中,通常采用先把累加算法RAM的内容搬到多径RAM中,然后逐个读出多径RAM的值进行比较,读完一遍后,找到一个最大地值就是第一个多径,并记录下这个多径的位置和能量值,然后往这个地址以及左右各3个地址回写0,屏蔽这个最大值以及周围共7个值;然后再一次逐个读出RAM的值并进行比较找到第2个多径,依次类推找到8个多径;最后再统一输出这8个多径的位置和能量值,实现8个信道的多径提取。
如图1所示,每2个信道共用一块累加算法RAM和多径RAM,一个搜索子芯片有8个信道,因此总共有4块累加算法RAM和4块多径RAM,而能量值比较模块是8个信道复用的。当每帧的累加算法作完后,即累加算法RAM中的值稳定了,就把累加算法RAM中的值搬移到对应的多径RAM中;然后逐个读出多径RAM的值进行比较,读完一遍后,找到一个最大的值就是第一个多径,并记录下这个多径的位置和能量值,然后往这个地址以及左右各3个地址共7个RAM地址单元回写一个0,然后再一次逐个读出多径RAM的值并进行比较找到第2个多径,由于第1个多径的位置被写入了0,所以此次找到的最大值是第2个多径,依次类推找到8个多径。最后再统一输出这8个多径的位置和能量值。
由于算法上的要求,当前帧的累加算法RAM的值是要给后一帧做累加算法时当历史值用的,因此不能直接往累加算法RAM中回写数据。所以图1的方案用多径RAM来复制每帧累加算法RAM稳定的数据来进行每帧一次的多径提取。
这种现有技术方案的缺点如下:
1)加算法RAM稳定后,都要将数据搬移到对应的多径RAM中才可以开始多径的提取,额外增加了数据搬移时序,为后面的接口逻辑的设计带来了难度。
2)现有的方案由于每2个信道复用一块多径RAM,而本芯片共40个信道,因此就需要用20块RAM,大小为768x52bit,所以总共需要的RAM的比特数为:768*52*20=798720(bits),资源的耗费极大。
【发明内容】
本发明的目的在于提供一种数据搬移时序简单且资源耗费小的WCDMA搜索中多径提取的方法和系统。
本发明所采用的WCDMA搜索中多径提取的方法,其特征在于:它采用如下步骤:
A.多径指示标志寄存器组单元(3)根据单天线的奇/偶序列标志和写寄存器控制信号产生提取状态信号;
B.能量值比较单元(2)根据提取状态信号选择是否从累加算法随机存贮器单元(1)中读入数据,并将读入的数据进行比较得出最大值及其对应的地址;
C.能量值比较单元(2)输出最大值,同时产生新的写寄存器控制信号并输入多径指示标志寄存器组单元(3),在下次比较时屏蔽已经输出的最大值。
累加算法随机存贮器单元(1)中的每个数据分别与多径指示标志寄存器组单元(3)中的寄存器相对应。多径指示标志寄存器组单元(3)根据能量值比较单元(2)得到最大值时输出的写寄存器控制信号而产生的提取状态信号使累加算法随机存贮器单元(1)中的该最大值不输入能量值比较单元(2)中。
步骤A中多径指示标志寄存器组单元(3)是根据单天线的奇/偶序列标志和写寄存器控制信号中的移位使能信号产生提取状态信号;
所述的多径指示标志寄存器组单元(3)通过移位寄存器组和相应的组合逻辑使相关的提取状态信号在相邻多径的4个相位之间保持一致。
本发明采用的提取多径的系统,包括累加算法随机存贮单元(1)、能量值比较单元(2)和多径指示标志寄存器组单元(3);多径指示标志寄存器组单元3产生提取状态信号,并送入能量值比较单元2,能量值比较单元2根据提取状态信号从累加算法随机存贮单元1读入数据,并进行比较得出最大值及其对应的地址,同时产生写寄存器控制信号,并将其输入多径指示标志寄存器组单元3。
所述多径指示标志寄存器组单元(3)包括反映天线各相位值提取状态的多径指示标志寄存器组(31)、用于取得寄存器中某一比特地址的译码逻辑电路(32)、输出奇偶序列标志的选择电路(33),以及使提取状态信号在相邻多径的4个相位之间保持一致的组合逻辑电路(34);能量值比较单元(2)产生的写寄存器控制信号输入组合逻辑电路(34)和译码逻辑电路(32);译码逻辑电路(32)与寄存器组(31)相连,用于取得寄存器中某一比特的地址;选择电路(33)根据寄存器组(31)的输入向组合逻辑电路(34)输出单天线的奇/偶序列标志,组合逻辑电路(34)则根据根据单天线的奇/偶序列标志和写寄存器控制信号产生提取状态信号,并送给能量值比较单元(2)。
所述的多径指示标志寄存器组(31)中寄存与累加算法随机存贮器单元(1)中的数据一一相对应。
所述的输出奇偶序列标志的选择电路(33)包括两个取得同一个单天线的偶序列标志和奇序列标志的192:1选择器和取得单天线偶序列标志和单天线奇序列标志的偶序列2:1选择器和奇序列的2:1选择器。
所述的组合逻辑电路(34)包括移位寄存器组和逻辑运算器,单天线偶序列标志和单天线偶序列标志分别输入相应的移位寄存器,移位寄存器的输出再经过逻辑运算器得到相应的控制信号,该控制信号再分别与寄存器控制信号经过逻辑运算得到提取状态信号。
所述的组合逻辑电路(34)包括9个移位寄存器(D1)、(D2)、(D3)、(D4)、(D5)、(D6)、(D7)、(D8)、(D9),其中,单天线偶序列标志经过5个移位寄存器(D1)、(D3)、(D5)、(D7)、(D9),单天线奇序列标志经过4个移位寄存器(D2)、(D4)、(D6)、(D8),移位寄存器组经写寄存器控制信号中所反映的移位使能信号触发,移位寄存器(D3)、(D4)、(D5)、(D6)、(D7)和(D8)的输出经过逻辑或得信号(M),该信号(M)分别与移位寄存器(D2)、(D9)的输出经过逻辑或非,得到相应的控制信号,控制信号分别与移位使能信号经过逻辑与得到提取状态信号。
所述的提取状态信号分别对应一个随机存贮单元(1)的奇偶两个相位的值。
所述的提取状态信号分别作为触发信号输至两个触发器,所述的两个触发器位于能量值比较单元(2)的输入端。
本发明的有益效果为:在本发明中,利用每个天线384个寄存器指示标志再加上简单逻辑使得多径提取只要等累加算法的值稳定就可以马上开始进行有关数值比较,而不必象现有技术方案中需要额外的RAM之间的数据搬移,为后续的设计极大地节约了时序,通过这种方法,可以简化2块RAM之间数据搬移带来的时序紧张;而且,通过简单的计算可以发现,现有技术方案总共需要20块多径RAM大小为768x52bit,总共需要的RAM的比特数为:768*52*20=798720(bits),按照RAM比特折算成寄存器比特1∶10的比例,相当于总共需要花费79872个寄存器,而在本发明中增加的寄存器比特数为:(384*2+11)*5=3895(bits),资源耗费节省了20多倍,资源的耗费相对来说小得多,因此,本发明数据搬移时序简单且资源耗费小;提取状态信号fngr_ind_l、fngr_ind_h分别对应一个随机存贮器(RAM)单元的奇偶两个相位的值,因此每读一次RAM就能得到两个相位值进行比较,增加了处理速度。
【附图说明】
图1为现有的多径提取方案的结构示意图;
图2为本发明的多径提取方案的原理示意图;
图3为本发明的多径提取方案的方框示意图;
图4为本发明多径指示标志寄存器组单元结构示意图;
图5为组合逻辑电路示意图。
【具体实施方式】
下面根据附图对本发明作进一步详细说明:
如图2所示,本发明包括累加算法随机存贮单元1、能量值比较单元2和多径指示标志寄存器组单元3。多径指示标志寄存器组单元3产生提取状态信号fngr_ind_l、fngr_ind_h,并送入能量值比较单元2,能量值比较单元2根据提取状态信号从累加算法随机存贮单元1读入数据,并进行比较得出最大值及其对应的地址,同时产生写寄存器控制信号indication_write_address,并将其输入多径指示标志寄存器组单元3。然后多径指示标志寄存器组单元3再根据写寄存器控制信号indication_write_address,如此反复循环,寻找出所有需要提取的数据。
如图3所示,多径指示标志寄存器组单元3包括多径指示标志寄存器组31、译码逻辑电路32、选择电路33和组合逻辑电路34,寄存器组31对应从累加算法随机存贮器单元1读出的384*2个值,译码逻辑电路32用于取得寄存器中某一比特(对应于最大值的位置)的地址,选择电路33根据寄存器组31的输入向组合逻辑电路34输出单天线的奇/偶序列标志,组合逻辑电路34则根据根据单天线的奇/偶序列标志和写寄存器控制信号中所反映的天线标志ant_flag产1生提取状态信号,并送给能量值比较单元2,能量值比较单元2再根据提取状态信号重复进行读入数据、搜寻并输出最大值和产生写寄存器控制信号indication_write_address,并输入组合逻辑电路34和译码电路32,如此循环以寻找出所有需要提取的数据。
在上述过程中,能量值比较单元2根据组合逻辑电路34产生的提取状态信号来选择是从累加算法随机存贮器单元1中读入数据,还是使读入数据为0输入(即使得输入的数据为最小值),然后进行比较得出最大值及其对应的地址并输出最大值,同时产生写寄存器控制信号并输入多径指示标志寄存器组单元3中的译码逻辑电路32和组合逻辑电路34,在下次比较时屏蔽已经输出的最大值,这样,能量值比较单元2根据组合逻辑电路34产生的相应的提取状态信号对相应的相位值进行比较,取得并输出8个具有最大值的多径的位置和能量信息。
如图4所示,寄存器组31对应从累加算法随机存贮器单元1读出的384*2个值,译码逻辑电路32用于取得寄存器中某一比特(对应于最大值的位置)的地址。其中寄存器组31包括384*2个寄存器,第0_383个寄存器对应第0个天线的累加算法随机存贮器RAM单元1读出的384个值,第384~767个寄存器对应第1个天线的累加算法随机存贮器RAM单元1读出的384个值。寄存器组31的输入是固定的常数:0或者1,选择哪个值是由译码逻辑电路32的信号确定的。
能量值比较单元2产生的写寄存器控制信号indication_write_address包括天线标志ant_flag和移位使能信号,组合逻辑电路34则根据单天线的奇/偶序列标志和写寄存器控制信号中所反映的天线标志ant_flag产生提取状态信号,并送给能量值比较单元2,这样,多径指示标志寄存器组单元3通过移位寄存器组和相应的组合逻辑使相关的提取状态信号在相邻多径的4个相位之间保持一致,使提取状态信号在相邻多径的4个相位之间保持一致。
输出奇偶序列标志的选择电路33包括两个取得同一个单天线的偶序列标志和奇序列标志的192:1选择器和取得单天线偶序列标志和单天线奇序列标志的偶序列2:1选择器和奇序列的2:1选择器。
是否两个天线合并输出8个多径还是单个天线输出8个多径是由天线标志来决定的,多径指示标志寄存器组单元3中的多径指示标志寄存器组31输出经过两路192:1选择器,取得同一个单天线的偶序列标志和奇序列标志,即对应于0天线和1天线的偶序列标志和奇序列标志。该标志再分别经过偶序列和奇序列的2:1选择器,根据写寄存器控制信号indication_write_address中所反映的天线标志ant_flag,偶序列选择器和奇序列的选择器分别向逻辑电路34中的移位寄存器组输入单天线偶序列标志和单天线奇序列标志,图4中显示了同一个天线的寄存器标志,另一个天线以相同的方式相同,产生偶序列标志和奇序列标志信号,并接入2:1选择器。
如图5所示,组合逻辑电路34包括9个移位寄存器D1、D2、D3、D4、D5、D6、D7、D8、D9,其中,单天线偶序列标志经过5个移位寄存器D1、D3、D5、D7、D9,单天线奇序列标志经过4个移位寄存器D2、D4、D6、D8,移位寄存器组经写寄存器控制信号indication_write_address中所反映的移位使能信号触发,移位寄存器D3、D4、D5、D6、D7和D8的输出经过逻辑或得信号M,该信号M分别与移位寄存器D2、D9的输出经过逻辑或非,得到相应的控制信号L、H,控制信号L、H分别与移位使能信号经过逻辑与得到提取状态信号fngr_ind_1、fngr_ind_h,如图4和图5所示,通过移位寄存器组和写寄存器控制信号indication_write_address中所反映的移位使能信号,各移位寄存器的输出经过逻辑或、逻辑或非和逻辑与的逻辑运算得到提取状态信号fngr_ind_1、fngr_ind_h,这样,多径指示标志寄存器组单元3通过移位寄存器组和相应的组合逻辑使相关的提取状态信号fngr_ind_1、fngr_ind_h在相邻多径的4个相位之间保持一致,实现相邻多径之间的相位间距必须保持4个相位的宽度。
本发明的多径提取具体过程如图2所示,在初始状态多径指示标志寄存器组单元3输出的提取状态信号fngr_ind_1、fngr_ind_h信号为1,所以从RAM读出的数据都可以送入进行比较,当每读完一次累加算法RAM的384个值并比较得到一个最大值和其相应位置时,能量值比较单元2输出写寄存器控制信号indication_write_address并经译码逻辑电路32得到384个寄存器中某一比特(对应于最大值的位置)的地址,并向这一比特写1′bl;在进行第2次最大值提取的时候,当读到第1次得到的最大值的时候,由于那个对应寄存器的值为1′b1,使得fngr_ind_1或者fngr_ind_h的输出为1′b0,从而屏蔽了上一次得到的RAM输出最大值的输入,所以这次比较得到的最大值其实就是第2大的值,也就是第2个多径;当进行第3个多径的提取的时候,由于第1、第2个多径的相应的fngr_ind_1和fngr_ind_n为1′b0,因此这两个RAM输出的最大值就被屏蔽了,所以这次得到的是第3个大的值,即第3个多径。这里可以注意到,如图4和图5所示,在对第1个多径进行搜索的时候,单天线偶序列标志和单天线奇序列标志都为0,因此提取状态信号fngr_ind_h和fngr_ind_1变成了1,如图2所示使得累加算法随机存贮器RAM单元1的读出数据就可以进入能量值比较单元2进行比较得到第1个多径,然后在相应的单天线多径标志指示寄存器组的对应多径位置置1;在对第2个多径进行搜索的时候,除了第1个多径相位以及前后各3个相位的提取状态信号fngr_ind_1和fngr_ind_h为0之外其他相位时刻都为1,即允许除第1个多径相位及其前后个3个相位之外的其他累加算法随机存贮器RAM单元1读出数据进入能量值比较单元2进行多径提取;剩余多径的搜索办法以此类推直到找到8个多径的位置和能量。
在本发明中,提取状态信号fngr_ind_1、fngr_ind_h分别对应一个随机存贮器RAM单元的奇偶两个相位的值,分别作为触发信号输至两个触发器,如图2所示,两个触发器位于能量值比较单元2的输入端。