一种数字音频广播接收机中的fft处理器的制作方法

文档序号:7686322阅读:130来源:国知局
专利名称:一种数字音频广播接收机中的fft处理器的制作方法
技术领域
本发明涉及一种数字音频广播接收机,具体来讲,涉及其中的FFT处理器。
背景技术
数字处理技术的发展使得广播从模拟方式向数字方式过渡成为一种趋势。 目前,部分无线广播已经采用了数字传输,其它的正准备采用数字传输方式。 数字音频广播采用了正交频分多路复用(OFDM)技术,其中采用的FFT处理 器可以处理长度为256、 512、 1024、 2048四种数字音频广播(DAB)信号。
传统的FFT处理器根据不同长度DAB信号,采用不同的数据地址产生算法 和蝶形运算算法,这样的处理方式会导致实现很复杂。
通常,用基2算法来处理长度为2"的DAB信号的FFT运算,如256、 512、 1024、 2048等;用基4的算法来处理长度为4n的DAB信号的FFT运算,如256、 1024等。基2算法和基4算法相比,运算速度慢。但是,基4算法不能处理长 度为512、 2048等非4U的数据。为了解决这个问题,混合基算法被提出。常用 的是混合基2和基4的算法,混合基仍然存在实现复杂的问题。
为解决上述问题,现有技术中,如2004年08月11日公开的,公开号为 CN1520071A,名称为"含有FFT处理器的数字音频广播接收器及其操作方法" 的中国发明专利申请公开说明书公开了一种含FFT处理器的数字音频广播接收 器,如图1所示,包括地址发生器,用于生成预定个数的写地址和读地址;快 速FFT处理器,用于重复FFT模式的数据,生成预定个数的数据,并利用预定 个数的数据实现快速FFT;以及控制器,用于根据FFT处理器的操作,控制地 址发生器生成写地址和读地址。预定个数是4096个,并且FFT处理器使用4096 个数据来实现快速付里叶变换。这样,利用重复FFT模式的数据生成的4096个 数据来实现基于基4的运算,对于204S、 1024、 256和512不同长度的DAB信 号可以用结构相同的FFT处理器进行处理,从而简化了它的硬件结构和FFT的 运算控制。

发明内容
本发明的目的在于提供一种不同的能够处理不同长度的DAB信号的FFT处 理器。
为了达到上述发明目的,本发明的FFT处理器包括
控制器,用于控制整个FFT处理器的工作,当有输入数据需要处理时,控 制器发出控制信号;
地址产生器,用于接收来自控制器的控制信号,收到控制器传来的控制信 号后,产生4096个数据地址,传递给块浮点单元和FFT单元;
模式判定器,收到控制器发来的控制信号后,对输入传输模式进行判定, 获得当前需要进行处理的输入数据的长度,将长度值传递给块浮点单元和FFT 单元;
FFT单元用于根据模式判定器传来的长度值接收相应长度的输入数据,按 照地址产生器传来的地址将数据存放在对应的地址单元中;
块浮点单元用于根据模式判定传来的长度及地址产生单元传来的地址,从 FFT单元的对应地址中取出相应长度的输入数据进行补零操作,生成4096点数 据,然后将4096点数据返回给FFT单元;
FFT单元对补零后生成的4096点数据进行FFT计算,计算完成后,块浮点 单元根据模式判定器传来的长度值,对4096点的FFT计算结果数据进行截取, 得到对应长度的FFT计算结果,将截取的FFT计算结果返回给FFT单元并输出。
本发明的FFT处理器将不同长度的DAB信号,即FFT处理器输入数据通 过简单的补零方式,都补充为满足4n长度的4096点,然后用同一长度,即4096 点长度的FFT单元对补零后生成的4096点数据进行FFT计算,然后通过数理 推导关系,从FFT计算结果中获取输入数据长度的FFT结果。这样,就实现了 用同一种长度,即4096点长度的FFT单元实现了多种长度模式2048、 256、 512、 1024长度的输入数据的FFT计算,从而简化了 FFT算法的实现复杂度。


图1是本发明FFT处理器结构图2是输入数据补零前后时域关系示意图; . 图3是输入数据补零前后频域关系示意图4是长度为512点输入数据的FFT变换的抽取示意图。
具体实施例方式
为更好地理解本发明,下面结合具体实施方式
对本发明进行更为详细的描 述。需耍提醒注意的是,尽管相似部件出现在不同附图中,但它们被赋予相似 的附图标记。在以下的描述中,当采用的己知功能和设计的详细描述也许会淡 化本发明的主题内容时,这些描述在这儿将被忽略。
图1是本发明FFT处理器结构图。图中
(1) 控制器200控制整个FFT处理器的工作,当有输入数据需要处理时, 控制器200发出控制信号。
(2) 地址产生器300收到控制信号后,产生4096个数据地址,传递给块 浮点单元500和FFT单元600。
(3) 模式判定器400收到控制器200发来的信号后,对输入传输模式进行 判定,获得当前需耍进行处理的输入数据的长度。在本实施例中,传输模式的 值为l、 2、 3、 4,分别表示输入数据的长度值为2048、 512、 256、 1024。模式 判定器400把长度值传递给块浮点单元500和FFT单元600。
(4) FFT单元600根据模式判定器400传来的长度值接收相应长度的输入 数据,按照地址产生器300传来的地址将数据存放。
(5) 块浮点单元500根据模式判定器400传来的长度及300传来的地址, 从FFT单元600的对应地址中取出相应长度的输入数据进行补零操作,生成4096 点数据,然后将4096点数据返回到FFT单元600。
(6) FFT单元600开始进行FFT计算;
(7) 当FFT单元600计算完成后,块浮点单元500根据模式判定器400传 来的长度值,对4096点的FFT计算结果数据进行截取,得到对应长度的FFT 计算结果,将截取的FFT计算结果返回给FFT单元600。
(8) FFT单元600输出最终的计算结果。
在本实施例中,FFT处理器需要实现通过计算预设长度的FFT达到计算
2048、 512、 256、 1024四种长度的FFT或IFFT。采用补零的方式,首先判定需 要做FFT处理的输入数据,即DAB信号的长度,然后将2048、 512、 256、 1024 四种长度的DAB信号,补零达到预设长度,预设长度为4096点。这里只给出 补零前后数据的FFT值的关系
设x(w), "=0,1,......,1,为输入数据序列,其DFT为
<formula>formula see original document page 6</formula>(l)
将x(")补(r-l)7V个零,r为正整数,得到WV点序列?("),艮卩
<formula>formula see original document page 6</formula>则x'(w)的DFT为:
<formula>formula see original document page 6</formula>用Z(Q来表示I'(^:),有:
<formula>formula see original document page 6</formula>其中S(m,A) = J]e
w=0
e一争sin[;rO附-"/r] sin [;r(, — A:) / /W]
显然,当nw=A:时,X '(it) =,艮卩,X'( ) = Z(附)
故,当用4096点的FFT单元600实现长度为2048、 512、 256、 1024点输 入数据的FFT时,分别需要补充1个、7个、15个以及3个输入数据长度的0 数据。故,补零前后数据的FFT有如下关系
(1)实现2048点FFT时,r=2,所以,补零前后FFT的关系为
Z(m) = X'(2m)
(2) 实现512点FFT时,产8,所以,补零前后FFT的关系为
JTO) = X'(8w)
(3) 实现256点FFT时,r=16,所以,补零前后FFT的关系为
(4) 实现1024点FFT时,r=4,所以,补零前后FFT的关系为
XO) = Z'(4w)
因此,当用4096点的FFT单元实现/ 2048、 512、 256、 1024四种长度DAB 信号的FFT计算后,分别按照上面的四种关系式对4096个FFT计算结果数据 进行截取得到对应长度的FFT变换值。
图2是输入数据补零前后时域关系示意图。图中示意的为2048点的输入数 据补零情况,图中,A为输入数据补零前的时域示意图,B为输入数据补零后的 时域示意图,我们可以看出,当用4096点的FFT单元600实现长度为2048点 输入数据的FFT时,需要补充l个输入数据长度的O数据。
图3是输入数据补零前后频域关系示意图。图中,A为补零后的4096点数 据的FFT变换结果,B为从4096点中抽取原输入数据长度2048点FFT结果示 意图。由于2048点补充为4096点需要补1个数据长度的零数据,即r=2,所以, 在抽取的时候按照式X(m—JT(2w)进行抽取,即间隔一个抽取一个值。
图4是长度为512点输入数据的FFT变换的截取示意图。从图4中我们可 以看出,512点输入数据x("), n=0,l,......,511补7个512长度的零,变成4096
点的补零后的数据,艮口
「x(w) w = 0,l"."511
lO w = 512,513, .."8x512-1
x'(")在FFT单元600中经过6级Stagel Stage6的FFT变换后整序得到其FFT 计算结果数据义'Ot),》0,1,......,4095。对4096点的FFT计算结果数据Z'("按以
下公式进行截取
X(m) = X'(8w), m=0,l,......,511。艮卩
X(0) = X'(0);
邻)"'(8) X(2) = Z'(16)
X(511) = X'(4088)
尽管上面对本发明说明性的具体实施方式
进行了描述,但应当清楚,本发 明不限于具体实施方式
的范围,对本技术领域的普通技术人员来讲,只要各种 变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而 易见的, 一切利用本发明构思的发明创造均在保护之列。
权利要求
1、一种数字音频广播接收机中的FFT处理器,其特征在于,包括控制器,用于控制整个FFT处理器的工作,当有输入数据需要处理时,控制器发出控制信号;地址产生器,用于接收来自控制器的控制信号,收到控制器传来的控制信号后,产生4096个数据地址,传递给块浮点单元和FFT单元;模式判定器,收到控制器发来的控制信号后,对输入传输模式进行判定,获得当前需要进行处理的输入数据的长度,将长度值传递给块浮点单元和FFT单元;FFT单元用于根据模式判定器传来的长度值接收相应长度的输入数据,按照地址产生器传来的地址将数据存放在对应的地址单元中;块浮点单元用于根据模式判定传来的长度及地址产生单元传来的地址,从FFT单元的对应地址中取出相应长度的输入数据进行补零操作,生成4096点数据,然后将4096点数据返回给FFT单元;FFT单元对补零后生成的4096点数据进行FFT计算,计算完成后,块浮点单元根据模式判定器传来的长度值,对4096点的FFT计算结果数据进行截取,得到对应长度的FFT计算结果,将截取的FFT计算结果返回给FFT单元并输出。
2、 根据权利要求1所述的数字音频广播接收机中的FFT处理器,其特征在 于,对4096点的FFT计算结果数据进行整序后,再进行截取。
全文摘要
本发明公开了一种数字音频广播接收机中的FFT处理器,本发明的FFT处理器将不同长度的DAB信号,即FFT处理器输入数据通过简单的补零方式,都补充为满足4<sup>n</sup>长度的4096点,然后用同一长度,即4096点长度的FFT单元对补零后生成的4096点数据进行FFT计算,然后通过数理推导关系,从FFT计算结果中获取输入数据长度的FFT结果。这样,就实现了用同一种长度,即4096点长度的FFT单元实现了多种长度模式2048、512、256、1024长度的输入数据的FFT计算,从而简化了FFT算法的实现复杂度。
文档编号H04H40/18GK101355393SQ200810045969
公开日2009年1月28日 申请日期2008年9月2日 优先权日2008年9月2日
发明者霍永青 申请人:四川虹微技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1