-
FPGA FFT_IP
核函数的使用说明
一.
基本性能特点:
(1)
采用基
< br>-4
算法和基
-4/2
混合基算
法;采用频域抽取方式
(DIF)
的
F
FT
算法;
(2)
输入数据采用定点方式输
入
(
输入数据为
real
、
imag
,但没有
ex
ponent)
,在
运算过程中采用块浮点方式进行运算,使用
块浮点结构能够获得最大的
SNR
和最少逻辑需求之间的平衡;
输出采用指数形式输出
(
即包含
rea
l
、
imag
、
exponent)
,输出结果为:“数据”×(
2^(-<
/p>
“指数”
)
);
(3)
可以完成的
FFT
变换长度为
2^m(6
≤
m
≤
14)
,即
64
~
16384
点;数据位宽为
8
~
24b
its
;
(4)
如果输入的数据向量不够
N
点(
FFT
设置中的转换长度,例如:
1024
等),
则
FFT_IP
核函数会在输入数据的后面自动进行补
p>
0
填充,扩展成
N
点的数
据。
(5)
输入、输出数据采用有符号复数表示,都采用自然排序方式;
(6)
支持单倍输出
(Signal-
output)
和四输出
(Quad-output)
引擎
(engine)
;
(7)
多路
I/O
数据流模式:流
(Streaming)
、缓冲突发
(Buffer Burst)
、
突发
(Burst)
;
(8)
Version_2.1
.0
版本的
FFT_IP
核函数采用的
是
Atlantic Interface
接口协议;
Version_7.2
版本的
FFT_IP<
/p>
核韩式采用的是
Avalon Streaming(ST)
Interface
接
口协议。
(9)
Version_2.1
.0
版本不支持
RTL
级
Modelsim
仿真,
Version_7.2<
/p>
版本支持。也
就是说,
2.1.0
版本的
FFT_IP
核函数不能再自己新建的
工程中通过
QuartusII
调用
M
odelsim
进行
RTL
的仿真。<
/p>
二.
IP_Core
的参量设置:
(1)
Twiddle
Precision
表示的是旋转因子的位宽精度;
Data
Precision
表示的是输
入、输出数据位宽精度。
注意:旋转因子的位宽精度必须小于或等于数据的位宽精度;
(2)
在
Complex Multiplier Implemen
tation
选择栏中的
Structure
< br>列表中选择期望的
复数乘法器结构复数乘法器可以使用
4
个实数乘法器和
2
个加法/减法器完<
/p>
成,或使用
3
个乘法器、
5
个加法器和一些附加的延时单元完成。
注意:在
Stratix
II
、
Stratix GX
和
Stratix
器件中选择
4
个乘法器和
2
个加法器可
以最
大化
DSP
模块的使用并最小化逻辑单元
(LE)
的使用。
(3)
在使用
< br>FFT_IP_Core
的时候,必须指定“
FFT
MagaCore Function user
library
”。方法:“
Setting
”
?
“
Library
”
< br>?
找到
“
”然后
Add
。
注意:如果
目录下的“
< br>”文件没有添加到公
众
File
中,则需要手动添加,并且要保证此文件位于
Setting
中
File
name
框的最
顶层。
三.
FFT_IP_Core
的函数规范:
(1)
功能描述:
长度为
N
的离散傅立叶变换
(DFT)
是计算单位圆上
N
点均匀分布的离散时间
p>
序列
(k=2
π
k
/N
,
k=0
,
1
,
2
,??,
N-1
)
的取样傅立叶变换。
使用基
-r
的
FFT
算法可以将
N
点的数据分解成“
log
r
N
”级运算,每级需要
“
N/r
”个基
-r
碟形单元。
FFT_IP
核将输入序列按基
-4<
/p>
方式进行分解,若
N
是
< br>2
的奇数幂,则
FFT_IP
核
会自动的在完成转换的最后使用基
-2
算法运算
(
这就是基
-4/2
的由来<
/p>
)
。
(2)
FFT_IP
处理器引擎结构
p>
FFT_IP
核函数可以通过定制参数来使用两种不同的引擎结构:
四输出
(
Quad-
output
)或单输出(
Single-output
)引擎结构。为了增加
FFT_IP
核函数<
/p>
的总吞吐量,可以在一个
FFT_IP
核
函数中使用多个并行的引擎。
◆
四输出
FFT
引擎结构
对于需要最少转换时间的应用,四输出
FFT
引擎结构是最佳选择。四输出指
的是内部
FF
T
碟形处理器的吞吐量,这种引擎实现结构在一个单时钟周期内
计算所有四个基
-4
碟形复数输出。
复数据
x[k,m]
从内部存储器并行读出,并由变换开关
(SW)
重新排
序。紧接
着,排序后的数据由基
-4
处
理器处理并得到复数输出
G[k,m]
。由于基
-4
按频率
抽选
(DIF)<
/p>
分解方法固有的数学特点,在蝶形处理器输出上仅需要
3
个复数乘法
器完成
3
次
乘旋转因子
(
有一个旋转因子为
1
p>
,不需要乘
)
计算。为了辨别数据的
最大动态范围,四个输出由块浮点单元
(BFPU)
< br>并行估计,丢弃适当的最低位
(LS
B)
,在写入内部存储器之前对复数数值进行四舍五入并由
SW
重新排序然后输
出。
◆
单输出
FFT
引擎结构
在需要最小尺寸
FFT
函数的应用中,单输出引擎最适合。单输出也指的是内<
/p>
部
FFT
碟形处理器的吞吐量。在这种结
构中,每个时钟周期计算一个基
-4
碟
形单元的其中一个单碟形输出。这种结构只需要一个单独的复数乘法器。
(3)
I/O
数据流结构
< br>FFT_IP
核函数支持的
I/O
数据流结构选项包括:流
(Streaming)
、缓冲突发
(Buffered Brust)
和突发
(Brust)
。
◆
流
(Streaming)I/O
数据流结构
< br>流
I/O
数据流结构允许输入数据连续处理,并输出连续
的复数数据流。这个
过程不需要停止
FFT
函数数据流的进出。
◆
缓冲突发
(Buffered
Brust)I/O
数据流方式
这种
结构对输入数据进行了缓存,因而不需要等到第一个数据块的运算结果
输出完毕才开始进
行第二个数据块的数据输入。
-
-
-
-
-
-
-
-
-
上一篇:拉氏变换
下一篇:sci ei 收录期刊投稿指南