首页 / 专利库 / 资料储存系统 / 大容量存储 / 只读存储器 / 一种PRACH基带信号的DFT实现系统及实现方法

一种PRACH基带信号的DFT实现系统及实现方法

阅读:63发布:2020-05-08

专利汇可以提供一种PRACH基带信号的DFT实现系统及实现方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种PRACH基带 信号 的DFT实现结构及实现方法,该结构为现场可编程 门 阵列FPGA结构,包括ROM1、ROM2和ROM3, 相位 一索引号计算模 块 、相位二索引号计算模块、加法器一、求模模块和乘法器,ROM1的输出端分别与相位一索引号计算模块和ROM3的输入端连接,加法器一的输入为相位一索引号计算模块和相位二索引号计算模块的输出,加法器一的输出端与求模模块的输入端连接,求模模块的输出端与ROM2的输入端连接,乘法器的输入为ROM2和ROM3的输出;ROM1、ROM2和ROM3分别用于存储1/umodNZC、和Xu(0)的值,相位一索引号计算模块和相位二索引号计算模块分别用于计算z(k)和序列的相位索引号。本发明充分利用ZC序列的特殊性,简化了信号生成过程中DFT的计算,进而简化整个信号生成过程。,下面是一种PRACH基带信号的DFT实现系统及实现方法专利的具体信息内容。

1.一种PRACH基带信号的离散傅里叶变换DFT实现系统,该系统为现场可编程阵列FPGA结构,其特征在于,包括只读存储器ROM1、ROM2和ROM3,相位一索引号计算模、相位二索引号计算模块、加法器一、求模模块和乘法器,ROM1的输出端分别与相位一索引号计算模块和ROM3的输入端连接,加法器一的输入为相位一索引号计算模块和相位二索引号计算模块的输出,加法器一的输出端与求模模块的输入端连接,求模模块的输出端与ROM2的输入端连接,乘法器的输入为ROM2和ROM3的输出;只读存储器ROM1、ROM2和ROM3的输入均为读地址;
ROM1用于存储1/umodNZC的值,ROM2用于存储 的值,ROM3用于存储Xu(0)的值,其中,u为ROM1的输入,NZC为ZC序列的长度,
相位一索引号计算模块用于计算z(k)序列的相位索引号;相位二索引号计算模块的输入为计算前导时的时域偏移量Cv,用于计算 序列的相位索引号,其中,相位索引号是指公式 中的θ, 求模模块用于对NZC求模。
2.根据权利要求1所述的一种PRACH基带信号的离散傅里叶变换DFT实现系统,其特征在于,相位一索引号计算模块包括相位索引号差计算子模块、初始相位索引号计算子模块、加法器二和相位索引号计算子模块,相位索引号差计算子模块和初始相位索引号计算子模块的输入均为ROM1的输出,加法器二的输入为相位索引号差计算子模块和初始相位索引号计算子模块的输出,加法器二的输出端与相位索引号计算子模块的输入端连接;
相位索引号差计算子模块用于计算zz(k)序列的相位索引号差,初始相位索引号计算子模块用于计算zz(k)序列的相位索引号初始值,相位索引号计算子模块用于对加法器二的输出进行处理得到z(k)序列的相位索引号,其中,
3.根据权利要求2所述的一种PRACH基带信号的离散傅里叶变换DFT实现系统,其特征在于,求模模块包括减法器、判断器和选择器,选择器有三个输入端,减法器的输出端与判断器的输入端连接,判断器的输出端与选择器的顶端输入端连接,选择器的第一个数输入和第二个数输入分别为减法器的输出和减法器的输入;
减法器用于将其输入值减去NZC;判断器用于判断减法器的输出是否大于等于0,是则输出为1,否则输出为0;选择器的顶端输入为1时输出第一个数,为0时输出第二个数。
4.根据权利要求3所述的一种PRACH基带信号的离散傅里叶变换DFT实现系统,其特征在于,相位二索引号计算模块和相位索引号差计算子模块均为一阶反馈结构,该一阶反馈结构包括一个加法器、一个求模模块和一个延时器,该加法器的输入为该一阶反馈结构的输入和延时器的输出,该加法器的输出端与该求模模块的输入端连接,该求模模块的输出端与延时器的输入端连接,延时器用于延时一个时钟周期。
5.根据权利要求4所述的一种PRACH基带信号的离散傅里叶变换DFT实现系统,其特征在于,相位索引号计算子模块包括一个求模模块和一个一阶反馈结构,相位索引号计算子模块的输入即为该求模模块的输入,该求模模块的输出端与该一阶反馈结构的输入端连接。
6.根据权利要求5所述的一种PRACH基带信号的离散傅里叶变换DFT实现系统,其特征在于,初始相位索引号计算子模块包括两个加法器、一个求模模块、一个乘法器、一个取整器、一个求模器和一个选择器,该选择器具有三个输入端,第一个加法器的输出端与该求模模块的输入端连接,该求模模块的输出端分别与该乘法器和该求模器的输入端连接,该乘法器的输出端与该取整器的输入端连接,该取整器的输出端与第二个加法器的输入端连接,该求模器的输出端与该选择器的顶端输入端连接,该选择器的第一个数输入和第二个数输入分别为第二个加法器的输出和第二个加法器的输入;
第一个加法器用于将初始相位索引号计算子模块的输入值加1;该乘法器用于将其输入值乘以0.5;该求模器用于将其输入值对2求模;第二个加法器用于将其输入值加420;该选择器的顶端输入取值只能为1或0,为1时输出第一个数,为0时输出第二个数。
7.一种PRACH基带信号的离散傅里叶变换DFT实现方法,该方法通过现场可编程门阵列FPGA硬件平台实现,包括三个只读存储器ROM1、ROM2和ROM3,ROM1用于存储1/umodNZC的值,ROM2用于存储 的值,ROM3用于存储Xu(0)的值,其中,u为ROM1的输入,NZC为ZC序列的长度, 这三个只读存储器
的输入均为读地址,其特征在于,该方法包括:
通过相位一索引号计算模块计算z(k)序列的相位索引号,相位一索引号计算模块的输入为ROM1的输出,其中,相位索引号是指公式 中的θ,
通过相位二索引号计算模块计算 序列的相位索引号,相位二索引号计算模块的输入为计算前导时的时域偏移量Cv;
通过加法器一将相位一索引号计算模块和相位二索引号计算模块的输出进行求和;
通过求模模块将加法器一的输出对NZC求模;
分别获取ROM2和ROM3中相应地址存储的值,并通过乘法器将ROM2的输出与ROM3的输出相乘,ROM2的输入为求模模块的输出,ROM3的输入为ROM1的输出。
8.根据权利要求7所述的一种PRACH基带信号的离散傅里叶变换DFT实现方法,其特征在于,相位一索引号计算模块计算z(k)序列的相位索引号的方法包括:
通过相位索引号差计算子模块计算zz(k)序列的相位索引号差,其中,
通过初始相位索引号计算子模块计算zz(k)序列的相位索引号初始值,相位索引号差计算子模块和初始相位索引号计算子模块的输入均为ROM1的输出;
通过加法器二将相位索引号差计算子模块和初始相位索引号计算子模块的输出进行求和;
通过相位索引号计算子模块对加法器二的输出进行处理得到z(k)序列的相位索引号。

说明书全文

一种PRACH基带信号的DFT实现系统及实现方法

技术领域

[0001] 本发明涉及通信领域,尤其涉及一种PRACH(Physical Random Access Channel,物理随机接入信道)基带信号的DFT(Discrete Fourier Transform,离散傅里叶变换)实现系统及实现方法。

背景技术

[0002] LTE协议中,PRACH信道上时间连续的随机接入信号s(t)由下式定义:
[0003]
[0004] 其中t表示时间,0≤t<TSEQ+TCP,TSEQ、TCP取值与前导格式有关,见表1。k0表示PRACH占用的RB起始位置,k表示占用带宽内的RB索引,K表示随机接入前导与上行数据之间的子载波间隔差别,βPRACH表示PRACH信号发射功率系数,n表示ZC序列索引,TCP表示循环前缀长度,fRA表示随机接入子载波间隔, 表示资源中随机接入前导的频域位置,NZC表示ZC序列长度,其取值与前导格式有关,其取值见表2。
[0005] 表1随机接入前导参数
[0006]
[0007] 表2随机接入参数
[0008]
[0009] ZC序列定义如下:
[0010] xu,v(n)=xu((n+Cv)modNZC)                     (2)
[0011]
[0012] Cv是计算前导时的时域偏移量,为与v有关的一个变量,此处将其看做是一个独立的变量,取值范围为0≤Cv≤NZC-1。
[0013] 基带信号离散形式
[0014] 在公式(1)中,省略βPRACH,并设采样时间为Ts=1/30.72MHz,将t=iTs代入s(t)中,有
[0015]
[0016] 其中TCP=NCPTs。
[0017] 格式0--3
[0018] 将ΔfRA=1250代入公式(2)中并省去Ts有
[0019]
[0020] 其中
[0021]
[0022] 公式(6)为一DFT变换。
[0023] 格式4
[0024] 将ΔfRA=7500代入公式(2)中并省去Ts有,
[0025]
[0026] 其中
[0027]
[0028] 公式(8)为一DFT变换。
[0029] 由公式(5)和公式(7)可知,该离散信号基带信号分为DFT变换、IDFT变换、载波搬移以及添加CP等过程,其生成流程如图1所示。图1中,对于格式0--3,M=839,N=24576,完成PRACH基带信号生成需要一个839点的DFT变换和一个24576点的IDFT变换。对于格式4,M=139,N=4096,完成PRACH基带信号生成需要一个139点的DFT变换和一个4096点的IDFT变换。
[0030] DFT/IDFT变换是很复杂的运算,直接使用公式变换时复数乘法运算量与点数平方成正比,因此对于上述点数的DFT/IDFT变换尤其是格式0--3时的DFT/IDFT变换不宜直接计算,使用DFT/IDFT变换快速算法库利图基(cooley-tukey)算法可以大大降低DFT/IDFT变换的计算量,但库利图基(cooley-tukey)算法是一般信号DFT/IDFT变换的快速算法,若在生成PRACH信道的基带信号时直接使用该算法,则没有充分利用ZC序列的特殊性;而且DFT运算是素数点DFT运算(839点或139点),不宜使用库利图基(cooley-tukey)算法进行分解;IDFT在格式0--3时是24576点,在格式4时是4096点,尤其在格式0--3时是大点数IDFT运算,使用库利图基(cooley-tukey)算法仍有很大运算量。

发明内容

[0031] 本发明所要解决的技术问题是:针对现有技术存在的问题,本发明提供一种PRACH基带信号的DFT实现系统及实现方法,充分利用ZC序列的特殊性,简化信号生成过程中DFT的计算,进而简化整个信号生成过程。
[0032] 本发明提供的一种PRACH基带信号的离散傅里叶变换DFT实现系统,该系统为现场可编程阵列FPGA结构,包括只读存储器ROM1、ROM2和ROM3,相位一索引号计算模块、相位二索引号计算模块、加法器一、求模模块和乘法器,ROM1的输出端分别与相位一索引号计算模块和ROM3的输入端连接,加法器一的输入为相位一索引号计算模块和相位二索引号计算模块的输出,加法器一的输出端与求模模块的输入端连接,求模模块的输出端与ROM2的输入端连接,乘法器的输入为ROM2和ROM3的输出;只读存储器ROM1、ROM2和ROM3的输入均为读地址;
[0033] ROM1用于存储1/umodNZC的值,ROM2用于存储 的值,ROM3用于存储Xu(0)的值,其中,u为ROM1的输入,NZC为ZC序列的长度,
[0034] 相位一索引号计算模块用于计算z(k)序列的相位索引号;相位二索引号计算模块的输入为计算前导时的时域偏移量Cv,用于计算 序列的相位索引号,其中,相位索引号是指公式 中的θ, 求模模块用于对NZC求模。
[0035] 进一步,相位一索引号计算模块包括相位索引号差计算子模块、初始相位索引号计算子模块、加法器二和相位索引号计算子模块,相位索引号差计算子模块和初始相位索引号计算子模块的输入均为ROM1的输出,加法器二的输入为相位索引号差计算子模块和初始相位索引号计算子模块的输出,加法器二的输出端与相位索引号计算子模块的输入端连接;
[0036] 相位索引号差计算子模块用于计算zz(k)序列的相位索引号差,初始相位索引号计算子模块用于计算zz(k)序列的相位索引号初始值,相位索引号计算子模块用于对加法器二的输出进行处理得到z(k)序列的相位索引号,其中,
[0037] 进一步,求模模块包括减法器、判断器和选择器,选择器有三个输入端,减法器的输出端与判断器的输入端连接,判断器的输出端与选择器的顶端输入端连接,选择器的第一个数输入和第二个数输入分别为减法器的输出和减法器的输入;
[0038] 减法器用于将其输入值减去NZC;判断器用于判断减法器的输出是否大于等于0,是则输出为1,否则输出为0;选择器的顶端输入为1时输出第一个数,为0时输出第二个数。
[0039] 进一步,相位二索引号计算模块和相位索引号差计算子模块均为一阶反馈结构,该一阶反馈结构包括一个加法器、一个求模模块和一个延时器,该加法器的输入为该一阶反馈结构的输入和延时器的输出,该加法器的输出端与该求模模块的输入端连接,该求模模块的输出端与延时器的输入端连接,延时器用于延时一个时钟周期。
[0040] 进一步,相位索引号计算子模块包括一个求模模块和一个一阶反馈结构,相位索引号计算子模块的输入即为该求模模块的输入,该求模模块的输出端与该一阶反馈结构的输入端连接。
[0041] 进一步,初始相位索引号计算子模块包括两个加法器、一个求模模块、一个乘法器、一个取整器、一个求模器和一个选择器,该选择器具有三个输入端,第一个加法器的输出端与该求模模块的输入端连接,该求模模块的输出端分别与该乘法器和该求模器的输入端连接,该乘法器的输出端与该取整器的输入端连接,该取整器的输出端与第二个加法器的输入端连接,该求模器的输出端与该选择器的顶端输入端连接,该选择器的第一个数输入和第二个数输入分别为第二个加法器的输出和第二个加法器的输入;
[0042] 第一个加法器用于将初始相位计算子模块的输入值加1;该乘法器用于将其输入值乘以0.5;该求模器用于将其输入值对2求模;第二个加法器用于将其输入值加420;该选择器的顶端输入取值只能为1或0,为1时输出第一个数,为0时输出第二个数。
[0043] 本发明另一方面提供的一种PRACH基带信号的离散傅里叶变换DFT实现方法,该方法通过现场可编程门阵列FPGA硬件平台实现,包括三个只读存储器ROM1、ROM2和ROM3,ROM1用于存储1/umodNZC的值,ROM2用于存储 的值,ROM3用于存储Xu(0)的值,其中,u为ROM1的输入,NZC为ZC序列的长度, u=1,2,3,...,NZC-1,m=0,1,2,...,NZC-1,这三个只读存储器的输入均为读地址,该方法包括:
[0044] 通过相位一索引号计算模块计算z(k)序列的相位索引号,相位一索引号计算模块的输入为ROM1的输出,其中,相位索引号是指公式 中的θ,
[0045] 通过相位二索引号计算模块计算 序列的相位索引号,相位二索引号计算模块的输入为计算前导时的时域偏移量Cv;
[0046] 通过加法器一将相位一索引号计算模块和相位二索引号计算模块的输出进行求和;
[0047] 通过求模模块将加法器一的输出对NZC求模;
[0048] 分别获取ROM2和ROM3中相应地址存储的值,并通过乘法器将ROM2的输出与ROM3的输出相乘,ROM2的输入为求模模块的输出,ROM3的输入为ROM1的输出。
[0049] 进一步,相位一索引号计算模块计算z(k)序列的相位索引号的方法包括:
[0050] 通过相位索引号差计算子模块计算zz(k)序列的相位索引号差,其中,[0051] 通过初始相位索引号计算子模块计算zz(k)序列的相位索引号初始值,相位索引号差计算子模块和初始相位索引号计算子模块的输入均为ROM1的输出;
[0052] 通过加法器二将相位索引号差计算子模块和初始相位索引号计算子模块的输出进行求和;
[0053] 通过相位索引号计算子模块对加法器二的输出进行处理得到z(k)序列的相位索引号。
[0054] 与现有技术相比,本发明充分利用ZC序列的特殊性,整个DFT运算只需要一个复数乘法以及一些加法(减法)、比较、选择等简单运算和3个ROM寄存器,结构简单,计算量小,易于在FPGA上实现。附图说明
[0055] 本发明将通过例子并参照附图的方式说明,其中:
[0056] 图1为本发明背景技术中的基带信号生成流程图
[0057] 图2为本发明实施例给出的839点DFT实现结构图;
[0058] 图3为本发明实施例给出的139点DFT实现结构图。

具体实施方式

[0059] 本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
[0060] 本说明书中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
[0061] 本发明的DFT算法原理如下。
[0062] 为了便于说明,记公式 中的θ为相位索引号。
[0063] 公式(6)和公式(8)是DFT变换公式,只是NZC取值不同,合并在一起分析。将公式(2)代入公式(6)中有
[0064]
[0065] 其中
[0066]
[0067] 将公式(3)代入公式(10),有
[0068]
[0069] 由于
[0070]
[0071] 故公式(11)可简化为:
[0072]
[0073] 代入公式(9)中,有
[0074]
[0075] 由公式(13)和公式(9)知,ZC序列的DFT运算,可以简化为一个常值Xu(0)与另一个ZC序列相乘。为了进一步减少计算量,Xu(0)可以事先计算好,存放在ROM3中。复指数序列NZC=839的值也存放在一个ROM2中,通过计算其地址输出序列,与Xu(0)相乘,得到最后DFT结果。可通过相位一索引号计
算模块和相位二索引号计算模块分别计算 序列和 序列的相位索引
号,然后将这两个序列的相位索引号相加,由于其和值有可能大于ZC序列的长度NZC,故还需要通过一个求模模块将该和值对NZC求模,求模后的值作为ROM2的输入,从ROM2中读取序列的值,再与ROM3中的Xu(0)值相乘,即可得到X(k)。由于在
计算复指数地址中存在对839的求模运算,采用递归的方式可以避免求模运算,且不存在乘法运算,只有加法、比较、选择等简单运算。
[0076] 在公式(13)中,令
[0077]
[0078] 则
[0079]
[0080] 令
[0081]
[0082] 则
[0083]
[0084] 由公式(17)可知,zz(k)序列相位以1/umodNZC线性递增,而z(k)每次递增的相位正好为zz(k)的相位,因此可用两个一阶反馈系统级联完成ZC序列的生成。为了避免计算1/umodNZC,可以将该值也使用一个ROM1储存起来。可通过一个相位索引号差计算子模块对ROM1中的1/umodNZC值进行处理得到zz(k)序列的相位索引号差,并通过一个初始相位索引号计算子模块对ROM1中的1/umodNZC值进行处理得到zz(k)序列的相位索引号初始值,然后将相位索引号初始值与相位索引号差相加即可得到zz(k)序列的相位索引号,zz(k)序列的相位索引号经过一个相位索引号计算子模块处理即可得到z(k)序列的相位索引号。
[0085] 优选地,求模模块包括减法器、判断器和选择器,选择器有三个输入端,减法器的输出端与判断器的输入端连接,判断器的输出端与选择器的顶端输入端连接,选择器的第一个数输入和第二个数输入分别为减法器的输出和减法器的输入;减法器用于将其输入值减去NZC;判断器用于判断减法器的输出是否大于等于0,是则输出为1,否则输出为0;选择器的顶端输入为1时输出第一个数,为0时输出第二个数。
[0086] 优选地,相位二索引号计算模块和相位索引号差计算子模块均为一阶反馈结构,该一阶反馈结构包括一个加法器、一个求模模块和一个延时器,该加法器的输入为该一阶反馈结构的输入和延时器的输出,该加法器的输出端与该求模模块的输入端连接,该求模模块的输出端与延时器的输入端连接,延时器用于延时一个时钟周期。
[0087] 优选地,相位索引号计算子模块包括一个求模模块和一个一阶反馈结构,相位索引号计算子模块的输入即为该求模模块的输入,该求模模块的输出端与该一阶反馈结构的输入端连接。
[0088] 优选地,初始相位索引号计算子模块包括两个加法器、一个求模模块、一个乘法器、一个取整器、一个求模器和一个选择器,该选择器具有三个输入端,第一个加法器的输出端与该求模模块的输入端连接,该求模模块的输出端分别与该乘法器和该求模器的输入端连接,该乘法器的输出端与该取整器的输入端连接,该取整器的输出端与第二个加法器的输入端连接,该求模器的输出端与该选择器的顶端输入端连接,该选择器的第一个数输入和第二个数输入分别为第二个加法器的输出和第二个加法器的输入;第一个加法器用于将初始相位索引号计算子模块的输入值加1;该乘法器用于将其输入值乘以0.5;该求模器用于将其输入值对2求模;第二个加法器用于将其输入值加420;该选择器的顶端输入取值只能为1或0,为1时输出第一个数,为0时输出第二个数。
[0089] 本发明实施例给出的839点DFT实现结构如图2所示,图2中,u为输入,取值为1-838,ROM1为长度838的存储器,用于存储1/umodNZC的值,NZC=839;ROM2为长度839的复数存储器,用于存储 的值,m=0,1,2,...,838;ROM3为长度838的复数存储器,用于存储Xu(0)的值,
[0090] 三个ROM的输入均为读地址,ROM大小为838时,地址从1开始,大小为839时,地址从0开始。选择器有三个输入,顶端输入取值只能为1或0,为1时输出第一个数,为0时输出第二个数,延时器D表示延时一个时钟周期。由图2可以看出,整个结构只需要一个复数乘法器。
[0091] 本发明实施例给出的139点DFT实现结构如图3所示,图3中,u为输入,取值为1-138,ROM1为长度138的存储器,用于存储1/umodNZC的值,NZC=139;ROM2为长度139的复数存储器,用于存储 的值,m=0,1,2,...,138;ROM3为长度138的复数存储器,用于存储Xu(0)的值,
[0092] 三个ROM的输入均为读地址,ROM大小为138时,地址从1开始,大小为139时,地址从0开始。选择器有三个输入,顶端输入取值只能为1或0,为1时输出第一个数,为0时输出第二个数,延时器D表示延时一个时钟周期。由图3可以看出,整个结构只需要一个复数乘法器。
[0093] 本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈