|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
/ B( P- Z5 W6 b, z8 ]' D& x
1 I" [ Y: u4 L% L* d, j最近出现的 FPGA设计工具和 IP有效减少了计算占用的资源,大大简化了浮点数据通路的实现。而 且,与数字信号处 理器不同, FPGA能够支持浮点和定点混合工作的 DSP数 据通路,实现的性能超过 了 100 GFLOPS。在所有信号处理算法中,对于只需要动态范围浮点算法的很多高性能 DSP应用,这 是非常重要的优点。选择 FPGA并结合浮点工具和 IP,设计人员能够灵活的处理定点数据宽度、浮点 数据精度和达到的性能等级,而这是处理器体系结构所无法实现的。 引言 引言 对于通信、军事、医疗等应用中的很多复杂系统,首先要使用浮点数据处理算法,利用 C或者 MATLAB软件进行仿真和建模。而最终实现几乎都采用定点或者整数算法。算法被仔细映射到有限动态 范围内,调整数据通路中的每一功能。这就需要很多取整 和饱和步骤,如果处理的不合适,就会对算 法性能有不利的影响。在集成过程中一般还需要进行大量的验证工作,以确保系统工作符合仿真结果。 以前,由于缺乏 FPGA工具包的支持, FPGA设计人员一般不选择浮点算法。4 Y/ R5 u# @% A2 [$ x. ?2 V+ X. h# J& i
- M* W! K( H" f, [! z& k5 ?' z
使用很多浮点 FPGA运算 符时,由于需要大量逻辑和布线资源,因此,它的另一个缺点是性能太差。 FPGA高效实现复数浮点函 数的关键是使用基于乘法器的算法,利用大量集成在 FPGA器件中的硬件乘法器资源。用于实现这些非 线性函数的乘法器必须有很高的精度,以保证乘法迭代过程中的精度要求。而且,高精度乘法器不需要 在每一次 乘法迭代中进行归一化和逆归一化处理,大大降低了对逻辑和布线的要求。 FPGA采用硬件数字信号处理 (DSP)模块,能够实现高效的 36位x36位乘法器,对于单精度浮点算 法,提供足够的位数,满足一般的单精度 24位尾数要求。这些乘法器还能够用于构建更大的乘法器, 实现高达 72位 x72位的双精度浮点算法。 由于浮点算法动态范围较大,相对于浮点仿真,大大简化了系统性能验证任务,因此,对于设计人员而 言,这种算法通常能够提高性能。在某些应用中, 定点算法是不可行的。
1 O1 v$ P+ h, Z% S5 A- A4 a1 [ |
|