使移动无线接收器同步到无线接收信号的帧结构上的装置 【技术领域】
本发明系一种用于移动无线接收器的装置,经由这种装置使移动无线接收器可以在从基站发出并被移动无线接收器接收到的无线信号的帧结构上同步化。
背景技术
依据UMTS(Univseral Mobile Telecommunication System:通用移动通信系统)标准,基站及移动无线接收器之间的数据传输是在一个帧结构内进行。依据UMTS标准,每一个帧(frame)含有15个时隙(slot),而每一个时隙则具有2560个小片段。
基站与移动无线接收器之间的时间同步性是移动无线系统运作的一个必要条件。为此所需的移动无线接收器的同步是在接通移动无线接收器及在过渡到一个新的组件及/或请求更高的记录层级时被执行。应将时隙同步及帧同步二者加以区分。时隙同步的目地是要找出时隙界限。只要找出时隙界限,就可以执行帧同步。接着就开始进入寻找帧的过程。
时隙同步及帧同步均有由一系列小片段构成的同步编码供其支配/使用。在每一个时隙开始时这些同步编码都会被基站发送出去,并被移动无线接收器接收。被移动无线接收器接收到的同步编码会被拿来与已知的同步编码作相关分析。然后再从相关分析的结果求出时隙界限及帧界限。
由于时隙同步使用的时隙同步编码又称为”初级同步编码”(PSC:Primary Synchronization Code),因此帧同步使用的帧同步编码又可称为”二级同步编码”(SSC:Secondary Synchronization Code)
以下将详细讨论移动无线接收器在从基站发出的无线信号的帧结构上的同步。
在UMTS标准中有16个不同的帧同步编码CSSCa(a=1,2,......,16),而且每一个帧同步编码CSSCa都是由256个小片段所构成。每一个帧同步编码CSSCa都是经由将一个所形成的阿达马顺序(Hadamard-Folge)与一个所有的帧同步编码均相同的共同顺序z按位置相乘的方式所产生。这个顺序z的构造如以下所示,其中符号代表克罗内克积(Kronecker product):
z=[b,b,b,-b,b,b,-b,-b,b,-b,b,-b,-b,-b,-b,-b,]=[1,1,1,-1,1,1,-1,-1,1,-1,1,-1,-1,-1,-1,-1,]b(1)
从方程式(1)可以看出顺序z是由16个序项所构成,而且每一个序项都是由一个基本序项b乘上+1或-1而形成。基本序项b是由一个含有16个小片段的顺序产生的一个复合值,这16个小片段的值不是+1就是--1:
b=(1+j)[1,1,1,1,1,1,-1,-1,-1,1,-1,1,-1,1,1,-1] (2)
将方程式(1)及方程式(2)结合在一起就可以看出顺序z总共有256个小片段。
将顺序z按位置相乘的方式与同样具有256个小片段的16个不同的阿达马顺序(Hadamard-Folge)相乘,即可产生16个不同的帧同步编码CSSCa。
在每一个时隙开始的时候都会有一个特定的帧同步编码CSSCa从基站被发送出去。从给定的基站发送出去的帧同步编码CSSCa在每一个帧内的顺序都是一样的。在一个帧内能够被发送出去的帧同步编码CSSCa的可能的顺序取决于所谓的编码组CG(m)(m=0,1,.......,63):
CG(m)=[Cm,0,Cm,1,....,Cm,14] (3)
编码组CG(m)的元素Cm,k来自于帧同步编码CSSCa的数量:
Cm,k《{CSSC1,CSSC2,.....,CSSC16) (4)
上式中的底标k(k=0,1,.....,14)标示一个帧的15个时隙的连续编号。
总共有64个编码组CG(m)。编码组CG(m)的构造是在编码组CG(m)的数量内,一个编码组CG(m)的元素Cm,k的每一个循环移动只会发生一次。这表示一个编码组CG(m’)的元素Cm’,K的一个循环移动与另外一个编码组CG(m”)的元素Cm”,k的一个循环移动的不一致性会大于0个位置,但是小于15个位置。此外这还表示在一个编码组CG(m)内一个元素Cm,k不会有任何一个循环移动与同一个编码组CG(m)内的另外一个循环移动的一致性会是大于0个位置,但是小于15个位置。
图式1将这64个编码组CG(m)详列在一个表格中。在UMTS规格”Spreading and modulation(FDD)”,第3代Partnership projectTS 25.213 V4.3.0(2002--06)及5.2.3.2节的表格4也可以找到这64个编码组CG(m)。登记在图式1之表格中的数字代表在一个特定的时隙k开始的时候应为一个特定的编码组CG(m)发送出去的帧同步编码CSSCa的底标a。例如,如果登记在图式1之表格中的数字是”7”,也就是对应于表格中的时隙#4及编码组CG(1)的数字,代表的就是帧同步编码CSSC7。以下的说明将视图式1的表格为一个64×15的矩阵CG(m,k)(m=0,1,......,63;k=0,1,......,14)。
由于在执行帧同步的时候时隙同步通常已经结束,因此时隙界限是已知的。因此可以侦测到在时隙开始时被移动无线接收器接收到的帧同步编码的256个小片段,并拿来作为确定帧界限之用。
从每一个时隙的开始底标开始,256个扫描值首先都会被按照位置方式与复合值顺序z相乘。接着将每16个连续排列的乘积相加成一个总数。这相当于扫描值与顺序b之间的相关性,因为顺序b是构成顺序z的基础。在执行上述步骤时正负号也要加以注意,顺序b就是经由这些正负号确定其在顺序z中的位置。经过以上步骤可以为每一个时隙产生16个复合值的相关值X(i)(i=0,1,......,15)。可以将相关值X(i)合并成一个列向量如下:
X=[X(0),X(1),.......,X(15)] (5)
到目前为止只有顺序z进入相关值X(i)内。为了获得一完全的帧同步必须将阿达马顺序(Hadamard-Folge)也一并纳入,因为顺序z必须与这个阿达马顺序(Hadamard-Folge)相乘才能产生帧同步编码CSSCa。这个步骤是以阿达马变换(Hadamard-Transformation)的方式被执行。也就是将向量X与一个16×16的阿达马矩阵H16相乘以产生一个含有16个元素的列向量Y:
Y(0)Y(1)MY(15)=H16·X(0)X(1)MX(15)-------(6)]]>
阿达马矩阵H16所含的元素不是+1就是--1。向量Y(i)的16个元素定出16个帧同步编码CSSCa在相关的时隙中移动无线接收器接收到的能量。
在计算出向量Y后,将向量Y写入一个16×15的矩阵A(i,j)(i=0,1,......,15;j=0,1,......,14)的一个列。矩阵A(i,j)的15个列中的每一个列都是预留给一个帧的一个特定的时隙。接着将根据第一个被检验的时隙得出的向量Y写入列j=0,然后将根据下一个被检验的时隙得出的向量Y写入列j=1,并按照此种方式继续进行下去。
按照以上说明的过程得出的矩阵A(i,j)的元素代表的就是16个帧同步编码CSSCa在一个帧的时间内接收到的能量。
找寻帧界限的意义就等同于根据矩阵A(i,j)检查是那一个编码组CG(m)从基站被发送出去。只要找到这个编码组CG(m)就可以直接得出帧界限。
为了找出从基站被发送出去的编码组CG(m),需计算出图式1之表格中的每一个编码组CG(m)接收到的能量。这个计算必须将涉及到的编码组CG(m)内的所有可能的循环移动都考虑进去。因此这个计算过程会将帧同步编码CSSCa的所有可能的发送顺序都计算进去。
利用下式可以计算出从一个特定的编码组CG(m)及在这个编码组CG(m)内的一个移动n个位置的特定的移动中产生的被接收能量Dval(m,n):
Dval(m,n)=Σk=014A(CG(m,k),(k-n)mod15)---------(7)]]>
在计算出所有的底标m(m=0,1,......,63)及底标n(n=0,1,......,14)代表的能量值Dval(m,n)后,即可得出最大能量值Dval(mmax,nmax):
Dval(mmax,nmax)=max(Dval(m,n)) (8)
最大能量值Dval(mmax,nmax)包含两项重要的讯息。第一个重要讯息是底标mmax指出基站很可能发送出的编码组CG(mmax)。第二个重要讯息是帧是从底标nmax代表的时隙开始。
由于最大能量值Dval(mmax,nmax)的计算是以反复和”在飞行中”(onthe fly)的方式进行的,因此通常没有必要将能量值Dval(m,n)储存下来。
在执行以上描述的运算工作时,由于矩阵A(i,j)的计算非常麻烦,因此通常是经由阿达马元素(Hadamard-Bauelementen)来计算矩阵A(i,j)。计算出来的矩阵A(i,j)的元素会被传送到一个依据方程式(7)及方程式(8)计算出最大能量值Dval(mmax,nmax)的数字信号处理器。
确定从一个基站发出的编码组所需的执行时间是由要从数字信号处理器的存储器将矩阵A(i,j)读取出来所需的存储器存储次数决定。以每个帧有64个编码组、15种可能的循环移动、以及15个时隙为例,共需要64×15×15个时钟循环。
【发明内容】
本发明的目的是提出一种使移动无线接收器在所接收之无线信号的一个帧结构上同步的装置,而且这种装置能够在比目前使用的相同目的的装置短很多的时间内完成帧同步的作业。此外,本发明的装置还可以减轻移动无线接收器的数字信号处理器的负担。
使用本发明提出之具有权利要求第1项之特征的装置即可达到本发明的目的。附属于权利要求第1项之附属专利申请项盼的内容均为本发明之其它进一步改良及其它有利的实施方式。
本发明的装置是用来使移动无线接收器可以在从基站发出并被移动无线接收器接收到的无线信号的帧结构上同步化。基站会在每一个帧发送出一个移动无线接收器已知的帧同步编码的顺序,这些帧同步编码同样也是移动无线接收器已知的帧同步编码。为此一个帧会被分成N个时隙,而且N是一个事先给定的数量。
本发明的装置具有第一个单元(其任务为测定能量值)、至少两个可重复写入的中间存储器、以及第二个单元(其任务为计算无线信号的帧开始)。
第一个单元测定的能量值是每一个时隙移动无线接收器为每一个帧同步编码接收的能量值。为此需要测定N个连续时隙的能量值并存放在本发明之装置具有的至少两个中间存储器内。第二个单元会从存放在至少两个中间存储器的能量值及与已知的帧同步编码的关系计算出无线信号的帧开始。
由于可以同时对这至少两个中间存储器进行存取的动作,因此存放在中间存储器的能量值可以用极快的速率被传输至第二个单元进行处理。所以本发明的装置所需的同步过程执行时间会比使用现有技术所需的执行时间短很多。
此外,本发明的装置可以制作成固定接线电路。因此设置在移动无线接收器内的数字信号处理器就不需要再负担由本发明的装置执行的计算工作。
可以规定在一个帧内可以从基站被发送出去的帧同步编码的每一个顺序都构成一个编码组。这些编码组最好是被存放在本发明之装置具有的至少两个编码组存储器内。由于这些编码组从一开始就已经确定,因此可以将这至少两个编码组存储器设计为常数存储器。利用这至少两个编码组存储器可以将编码组的元素以极快的速率传输出去,以供进一步处理之用。
第二个单元最好也作为计算从基站发出去的编码组之用。执行这个计算需要用到存放在前述之至少两个中间存储器内的能量值及已知的编码组。依据计算出来的编码组就可以确定发送出无线信号的基站。
在本发明的装置的一种有利的实施方式中,在这至少两个编码组存储器的后面都有连接一个地址生成单元。这些地址生成单元可以利用来自这至少两个编码组存储器的编码组的元素生成地址。每一个地址都会被输入这至少两个中间存储器中的一个中间存储器。接着这至少两个中间存储器都会送出一个被前述之输入地址标示的存放于其内的能量值。
本发明的装置的另外一种有利的实施方式是具有第一个控制单元及/或第二个控制单元及/或第三个控制单元。
第一个控制单元的任务是控制从至少两个编码组存储器输出的编码组的元素,而第二个控制单元的任务则是控制地址生成单元中地址的生成。第三个控制单元的任务是控制地址向至少两个中间存储器的传输。
在本发明的装置的另外一种有利的实施方式的特征是在这至少两个中间存储器的后面有连接一个加法器,这个加法器的任务是将这至少两个中间存储器输出的能量值相加。必要时上文提及的总数至少有一个可以被能量值0取代。
最好是以第四个控制单元来控制总数向加法器的传输。
另外一种有利的方式是在加法器后面连接一个累加器,其任务是将加法器连续输出的一定数量(此数量可事先加以规定)的能量值累加在一起。
累加器累加出来的能量值可以指出移动无线接收器在一个帧期间为一个特定的编码组接收的能量。为了进一步处理的需要,应在累加器累加出来的能量值中找出最大能量值,因此最好在累加器后面连接一第三个单元。
在本发明的装置的另外一种有利的实施方式中,第四个单元可以从最大能量值计算出从基站发出的无线信号的帧开始,以及计算出从基站发出的编码组。
在本发明的装置的另外一种有利的实施方式中,存放在至少两个中间存储器内的在相应之时隙内接收的以帧同步编码为基础的能量值会被附上一个底标j加以标示。经由这种方式可以使被接收的能量值能够依据其底标j被存放到至少两个中间存储器内。
另外一种有利的方式是,每一个被接收的能量值都被准确的存放到至少两个中间存储器中的一个中间存储器内。为了避免在特定的情况下在一个时钟循环期间只会在一个中间存储器进行两倍的存取动作,可以另行规定要另外将至少一个标有一特定底标j的能量值存放在另外一个中间存储器内。
此外,编码组的元素也可以依据其涉及的时隙被附上一个底标n加以标示。这样编码组的元素就也可以依据其底标n被存放到至少两个中间存储器内。最好是将编码组的每一个元素准确的存放到至少两个编码组存储器中的一个编码组存储器内。为此本发明的装置应具有与中间存储器相同数量的编码组存储器。
另外一种有利的方式是将底标n为偶数的编码组的元素存放在第一个编码组存储器内,底标n为奇数的编码组的元素存放在第二个编码组存储器内。
在本发明的装置的另外一种有利的实施方式中,第一个单元会将接收到的帧同步编码与一个作为已知的帧同步编码的基础的共同顺序(z)进行相关性分析,然后再将相关性分析的结果以阿达马变换(Hadamard-Transformation)进行转换,以计算出能量值。
基站及移动无线接收器之间的数据传输最好是以UNTS标准为基础。
以下配合图式及实际的实施方式对本发明的装置作进一步的说明:
【附图说明】
图式1:将编码组CG(m)以表格方式列出来。
图式2:本发明的装置的一种实施方式的电路示意图。
图式3A:矩阵CG(m,n)的元素在存储器(CG_ROM_EVEN,CG_ROM_ODD)内的存放配置方式。
图式3B:矩阵A(i,j)的元素在存储器(TEMP_RAM_EVEN,TEMP_RAM_ODD)内的存放配置方式。
图式4:以表格方式显示变量j1及j2与底标n及k之间的关系。
【具体实施方式】
图式2系以示意方式显示本发明之装置(1)的一种实施方式的电路图。装置(1)系设置在移动无线接收器内,其作用为测定所接收到的从基站发出的无线信号的一个帧的开始。
装置(1)具有存储器(CG_ROM_EVEN,CG_ROM_ODD)及存储器TEMP_RAM_EVEN,TEMP_RAM_ODD)。此外,装置(1)还具有地址生成单元(CG_ADDR_CALC,AMAT_ADDR_CALC,ADDR_MAP_1,ADDR_MAP_2)、控制单元(CONTROL_MUX_1/2,CONTROL_MUX_3,CONTROL_MUX_4)、2:1-乘法器(MUX_1,MUX_2,MUX_3,MUX_4)、一个加法器(ADD)、一个累加器(ACCU)、一个单元(PEAK_DETECT)、一个单元(2)、以及一个单元(3)。
地址生成单元(CG_ADDR_CALC)与存储器(CG_ROM_EVEN,CG_ROM_ODD)的控制输入端连接。存储器(CG_ROM_EVEN)的输出端与地址生成单元(ADDR_MAP_1)的一个输入端连接。存储器(CG_ROM_ODD)的输出端后面连接地址生成单元(ADDR_MAP_2)的一个输入端。地址生成单元(ADDR_MAP_1,ADDR_MAP_2)各有另外一个输入端与地址生成单元(AMAT_ADDR_CALC)的输出端连接。
2:1-乘法器(MUX_1,MUX_2)系设置在地址生成单元(ADDR_MAP_1,ADDR_MAP_2)之后。2:1-乘法器(MUX_1,MUX_2)受到控制单元(CONTROL_MUX_1/2)的控制。
存储器(TEMP_RAM_EVEN)及2:1-乘法器(MUX_3)串联接在2:1-乘法器(MUX_1)的后面。存储器(TEMP_RAM_ODD)及2:1-乘法器(MUX_4)串联接在2:1-乘法器(MUX_2)的后面。单元(2)会向存储器(TEMP_RAM_EVEN)及存储器(TEMP_RAM_ODD)输出资料。2:1-乘法器(MUX_4,MUX_4)各有一个输入端被接通至一个0。2:1-乘法器(MUX_3)受到控制单元(CONTROL_MUX_3)的控制。2:1-乘法器(MUX_4)会从控制单元(CONTROL_MUX_4)收到控制信号。
2:1-乘法器(MUX_3,MUX_4)向加法器(ADD)输出资料,加法器(ADD)的后面依序设有累加器(ACCU)要单元(PEAK_DETEC)、以及单元(3)。
在装置(1)内部是依据方程式(9)计算被移动无线接收器接收且其根源在基站发送的一个循环移动n个位置的编码组CG(m)内的能量:
Dval(m,n)=Σk=06[A(i1(m,k),j1(n,k))+A(i2(m,k),j2(n,k))]]]>
+A(i1(m,k=7),j1(n,k=7))--------(9)]]>
在方程式(9)中,底标m(m=0,1,......,63)代表如图式1之表格中的编码组CG(m),底标n(n=0,1,......,14)代表帧同步编码CSSCa在相关的编码组CG(m)中循环移动的位置数。底标k(k=0,1,......,7)则是加法底标。
按照以下的方程式可以计算出在方程式(9)中出现的变量i1、i2、j1、以及j2:
i1(m,k)=CG(m,2k) (10)
i2(m,k)=CG(m,2k+1) (11)
j1(n,k)=(2k-n)mod15 (12)
j2(n,k)=(2k+1-n)mod15 (13)
之所以如此选择方程式(10)-(13)是为了让方程式(7)及方程式(9)的计算结果一致。不过方程式(7)及方程式(9)用于计算所需的时钟循环数是不相同的。计算方程式(7)所需的时钟循环数为15,而方程式(9)只需8个时钟循环即可完成计算。
方程式(9)的计算必须用到矩阵CG(m,n)及A(i,j)的元素。矩阵CG(m,n)的元素从一开始就是确定的,而且是存放在存储器(CG_ROM_EVEN,CG_ROM_ODD)内。矩阵A(i,j)的元素必须按照上文中的方程式(6)及关于方程式(6)的说明计而得。计算矩阵A(i,j)的元素的过程是在单元(2)中进行,接着再将单元(2)计算出的矩阵A(i,j)的元素存放在存储器(TEMP_RAM_EVEN,TEMP_RAM_ODD)内。
矩阵CG(m,n)及A(i,j)的元素在存储器(CG_ROM_EVEN,CG_ROM_ODD,TEMP_RAM_EVEN,TEMP_RAM_ODD)内的配置方式如图式3A及3B所示,并请见以下的说明。
如果n是一个偶数,则将矩阵CG(m,n)的元素存放在存储器(CG_ROM_EVEN)内;如果n是一个奇数,则将矩阵CG(m,n)的元素存放在存储器(CG_ROM_ODD)内。由于矩阵CG(m,n)从一开始就是确定的,因此存储器(CG_ROM_EVEN,CG_ROM_ODD)都可以被设计成常数存储器。
如果j是一个偶数,则将矩阵A(i,j)的元素存放在存储器(TEMP_RAM_EVEN)内;如果j是一个奇数,则将矩阵A(i,j)的元素存放在存储器(TEMP_RAM_ODD)内。此外,当j=14,则不仅将矩阵A(i,j)的元素存放在存储器(TEMP_RAM_EVEN)内,也要将矩阵A(i,j)的元素存放在存储器(TEMP_RAM_ODD)内。由于在装置(1)每一次进行运算之前都需要重新计算矩阵A(i,j),因此必须将存储器TEMP_RAM_EVEN,TEMP_RAM_ODD)设计成可重复写入的存储器。
矩阵A(i,j)的元素必须以适当的方式被存放在存储器(TEMP_RAM_EVEN,TEMP_RAM_ODD)内,以确保在任何情况下都不会出现必须为相同的底标k从同一个存储器(存储器(TEMP_RAM_EVEN)或存储器(TEMP_RAM_ODD))读取两个元素的不利情况。如果只是根据j是偶数或奇数来决定将矩阵A(i,j)的元素存放在存储器(TEMP_RAM_EVEN)或存储器(TEMP_RAM_ODD)内,则这种不利的情况是可能出现的。图式4显示按照方程式(12)及方程式(13)由底标n及k计算变量j1及j2的结果。如果没有将矩阵元素A(I,j=14)也存放在存储器(TEMP_RAM_ODD)内,则在出现图式4中以灰底标示的情况时,就必须在一个时钟循环期间对存储器(TEMP_RAM_EVEN)进行两次存取的动作。
另外要注意的一点是,存储器(CG_ROM_EVEN)及存储器(CG_ROM_ODD)是两个独立分开设置的存储器。这样做的目的是在一个时钟循环期间可以同时对存储器(CG_ROM_EVEN)及存储器(CG_ROM_ODD)进行存取的动作。同样的,存储器(TEMP_RAM_EVEN)及存储器(TEMP_RAM_ODD)也是两个独立分开设置的存储器。
方程式(9)的计算必须用到所有的底标m、n、以及k。因此需设置一个计数器(未在图式2中绘出)。
地址生成单元(CG_ADDR_CALC)依据底标(m及k)及方程式(10)及(11)计算出地址,其中变量i1及i2系存放在存储器(CG_ROM_EVEN,CG_ROM_ODD)内。也就是要从存储器(CG_ROM_EVEN)读取变量i1,从存储器(CG_ROM_ODD)读取变量i2。
地址生成单元(AMAT_ADDR_CALC)依据底标(m及k)及从方程式(12)及(13)计算出来的变量j1及j2计算出地址。
变量i1及j1会被输入地址生成单元(ADDR_MAP_1),并由地址生成单元(ADDR_MAP_1)计算出一个地址(ADDR1)。经由地址(ADDR1)就可以找到存放在存储器(TEMP_RAM_EVEN)或存储器(TEMP_RAM_ODD)内的矩阵元素A(i1,j1)。由于存储器(TEMP_RAM_EVEN)及存储器(TEMP_RAM_ODD)内存放的资料并不一定只有矩阵A(i,j)的元素,因此地址(ADDR1)还含有一个指示数p1,其作用是指出在存储器(TEMP_RAM_EVEN)或存储器(TEMP_RAM_ODD)内含有矩阵A(i,j)的元素的数据块的开始位置。从图式3B显示的矩阵元素A(i,j)在存储器(TEMP_RAM_EVEN)及存储器(TEMP_RAM_ODD)内的配置方式可得出计算地址(ADDR1)的方程式如下:
ADDR1=i1+(j1/2)*16+p1 (14)
和计算地址(ADDR1)的方式一样,变量i2及j2会被输入地址生成单元(ADDR_MAP_2),并由地址生成单元(ADDR_MAP_2)计算出一个地址(ADDR2)。经由地址(ADDR2)就可以找到存放在存储器(TEMP_RAM_EVEN)或存储器(TEMP_RAM_ODD)内的矩阵元素A(i2,j2)。同样的,地址(ADDR2)也含有一个指示数p2,其作用是指出在存储器(TEMP_RAM_EVEN)或存储器(TEMP_RAM_ODD)内含有矩阵A(i,j)的元素的数据块的开始位置。计算地址(ADDR2)的方程式如下:
ADDR2=i2+(j2/2)*16+p2 (15)
地址(ADDR1,ADDR2)并未含有显示所属的矩阵元素A(i1,j1)及A(i2,j2)是存放在存储器(TEMP_RAM_EVEN)或存储器(TEMP_RAM_ODD)内的资料。控制单元(CONTROL_MUX-1/2)会计算出矩阵元素A(i1,j1)及A(i2,j2)的存放位置,然后再根据这个数据控制2:1-乘法器(MUX_1,MUX_2)。2:1-乘法器(MUX_1,MUX_2)会根据矩阵元素A(il,j1)及A(i2,j2)的存放位置改变开关位置,以便将将地址(ADDR1,ADDR2)输入存储器(TEMP_RAM_EVEN)或存储器(TEMP_RAM_ODD)。
控制单元(CONTROL_MUX-1/2)是根据以下说明的算法来决定2:1-乘法器(MUX_1,MUX_2)的开关位置。
首先是来定变量j1是否为偶数,以及变量j1是否不等于14。这个步骤得出的结果可分为3种不同的情况。要注意的一点是,只有在底标k小于7的时候,这3种情况才会具有重要性。
第1种情况:变量j1是偶数而且不等于14,变量j2是奇数。在此情况下,控制单元(CONTROL_MUX-1/2)会将2:1-乘法器(MUX_1,MUX_2)的开关位置1接通,以便使地址(ADDR1)被输入存储器(TEMP_RAM_EVEN),而地址(ADDR2)则被输入存储器(TEMP_RAM_ODD)。
第2种情况:变量j1等于14,变量j2等于0。在此情况下,控制单元(CONTROL_MUX-1/2)会将2:1-乘法器(MUX_1,MUX_2)的逻辑路径0(也就是开关位置0)接通,使地址(ADDR1)被输入存储器(TEMP_RAM_ODD),而地址(ADDR2)则被输入存储器(TEMP_RAM_EVEN)。
第3种情况:变量j1是奇数数因此不会等于14,变量j2是偶数。在此情况下,控制单元(CONTROL_MUX-1/2)会和第2种情况一样将2:1-乘法器(MUX_1,MUX_2)的开关设定为开关位置0。
在此还必须讨论到目前为止一直被略去不谈的一种情况,也就是k=7的情况。在此情况下,只有矩阵元素A(i1,j1)是有效的,因为在k=7的时候并没有任何矩阵元素A(i2,j2)存在,原因是一个帧具有15个时隙,而且这些时隙是以成对的方式被看待。因此在k=7的时候只有一个矩阵元素。为了查明控制单元(CONTROL_MUX-1/2)产生的控制信号,在k=7的时候必须检查j1是不是偶数。检查结果可分成两种情况。
第1种情况:j1是偶数。在此情况下,控制单元(CONTROL_MUX-1/2)会将2:1-乘法器(MUX_1)的开关位置1接通,以便使地址(ADDR1)被输入存储器(TEMP_RAM_EVEN)。
第2种情况:j1是奇数。在此情况下,控制单元(CONTROL_MUX-1/2)会将2:1-乘法器(MUX_1)的开关位置0接通,以便使地址(ADDR1)被输入存储器(TEMP_RAM_ODD)。
由地址(ADDR1,ADDR2)决定的矩阵元素A(i1,j1)及A(i2,j2)会从存储器(TEMP_RAM_EVEN,TEMP_RAM_ODD)的输出端被输出。
如果底标k小于7,则矩阵元素A(i1,j1)及A(i2,j2)会被输送到加法器(ADD)。为此必须由控制单元(CONTROL_MUX_3,CONTROL_MUX_4)将2:1-乘法器(MUX_3,MUX_4)的逻辑路径1(也就是开关位置1)接通。
如果底标k等于7,则必须检查j1是不是奇数。如果j1是奇数,则控制单元(CONTROL_MUX_3)会向2:1-乘法器(MUX_3)发出控制信号0,而控制单元(CONTROL_MUX_4)则会向2:1-乘法器(MUX_4)发出控制信号1。如果j1是偶数,则控制单元(CONTROL_MUX_3)会向2:1-乘法器(MUX_3)发出控制信号1,而控制单元(CONTROL_MUX_4)则会向2:1-乘法器(MUX_4)发出控制信号0。这种接通2:1-乘法器(MUX_3,MUX_4)的方式可以确保在k=7的时候,只有在有存放矩阵元素A(i1,j1)的存储器(TEMP_RAM_EVEN)或存储器(TEMP_RAM_ODD)会与加法器(ADD)连接。在此情况下,加法器(ADD)的另外一个是被输入一个0。
加法器(ADD)会以成对的方式将同时收到的矩阵元素A(i1,j1)及A(i2,j2)及/或0相加。累加器(ACCU)会将加法器(ADD)在8个时钟循环期间的相加的结果累加在一起。这个方式就和方程式(9)经过所有的底标k所得的结果一样。因此累加器(ACCU)就会按照方程式(9)的方式将能量值Dval(m,n)输出。
接下来的步骤是计算最大能量值Dval(mmax,nmax):
Dval(mmax,nmax)=max(Dval(m,n)) (16)
单元(PEAK_DETECT)会将每一个新进来的能量值Dval(m,n)与之前出现的最大能量值Dval(mmax,nmax)作一比较,如果发现一个新进来的能量值Dval(m,n)大于之前出现的最大能量值Dval(mmax,nmax),就会以这个新进来的能量值Dval(m,n)取代之前出现的最大能量值DVal(mmax,nmax)。为了激活这个比较程序,在装置(1)开始运转时会先将最大能量值Dval(mmax,nmax)设定为0。
为了能够确定从基站发出的编码组及无线信号的帧界限,装置(1)需要一个相当于64×15×8=7680个时钟循环的执行时间。这个执行时间大约只有采用现有技术之装置所需的执行时间的一半。
此外,还有另外一种方式可以进一步缩短装置(1)所需的执行时间。这种方式是将存放供矩阵A(i,j)的元素用的存储器的数量从两个增加到4个或8个。装置(1)所需的执行时间相较于现有技术所需的执行时间的缩短倍数大约就等于所安装的这种存储器的数量。
如果除了图式1所示的存储器(TEMP_RAM_EVEN,TEMP_RAM_ODD)外还要为装置(1)再加装其它同类型的存储器,则与这些存储器串联的组件的线路配置也要作相应的增加和修改。例如可以比照存储器(TEMP_RAM_EVEN,TEMP_RAM_ODD)的方式,为加装的存储器串联供存放矩阵CG(m)的元素用的存储器及地址生成单元。