玻璃钢厂家
免费服务热线

Free service

hotline

010-00000000
玻璃钢厂家
热门搜索:
技术资讯
当前位置:首页 > 技术资讯

基于FPGA的自然对数变换器的设计与实现

发布时间:2020-07-21 18:35:20 阅读: 来源:玻璃钢厂家

摘要:本文利用CORD IC算法在FPGA上实现了自然对数运算器。实验结果表明该对数运算器的输出误差为10-4数量级,最高频率可达到80MHz。该运算器适用于高速大数据量的数据处理。

本文引用地址:关键词:对数运算;CORD IC算法;FPGA;对数变换器

*国家自然科学基金项目(No.60174032,60674111)2008年4月28日收到本文。李刚:教授,从事信号检测与处理、智能仪器仪表的研究。

引言

在需要硬件实现对数运算的场合[1],其精度和速度是必须考虑的问题。目前硬件实现对数变换的方法主要有查表法、泰勒公式展开法和线性近似法。查表法[2]所需要的存储单元随着精度的增加或输入值范围的增大而成指数增加;泰勒公式展开法[3]需要乘法器,面积大不易实现;线性近似法[4]的精度有限,且需要误差校正电路,实现较难。

本文利用CORD IC算法在FPGA上实现了高速自然对数变换器。CORD IC算法即坐标旋转数字计算方法最初由lder[5]于1959年提出,其基本思想是用一系列与运算基数相关的角度的不断偏摆从而逼近所需旋转的角度。1971年lter[6]提出统一的CORD IC算法,把圆周旋转、直线旋转和双曲旋转统一到同一个CORD IC迭代方程里,为同一硬件实现多功能运算提供了前提。由于它将许多复杂的算术运算化成简单的加法和移位操作,在不影响运算速度和精度的情况下,极大的降低了硬件设计的复杂性,节约了硬件资源。利用CORD IC算法可以直接实现乘法、除法、正余弦函数,反正切函数、双曲函数等,对输入进行适当的初始化可以实现正切、双曲正切、对数和指数等函数。

在数字信号处理领域用的较多的是DSP和FPGA。DSP的优势源于多数信号处理算法的乘-累加运算(MAC)都是非常密集的。FPGA通过多极流水线架构也能够用来实现MAC单元,并且FPGA技术可以通过一个芯片上的多级MAC单元来提供更多的带宽,速度可以比数字信号处理芯片快,并且功耗较低。CORD IC算法完全由移位和加法操作完成,因此利用FPGA可以实现更高的运算速度。本文采用流水线结构在FPGA上实现基于CORD IC的对数变换,可以达到80MHz的处理速度。

CORD IC算法实现自然对数运算

CORD IC算法最初是用于计算三角函数的,后来由于其算法的简单、硬件易于实现等多种优势,而被广泛的用于多种初等函数的运算中(包括三角函数、乘除法运算、指数运算、对数运算等)。本文主要利用CORD IC算法的双曲旋转法实现自然对数运算。

在双曲坐标系下,CORD IC算法的迭代方程为:

由于 ,所以迭代序列必须从n=1开始,为保证迭代序列收敛,因此迭代序列n的取值从第4项开始每隔3n+1项必须重复一次,即n=1,2,3,4,4,5,…,40,40,…。

在向量模式下,经n次迭代后的输出方程为:

因为

所以令x=t+1,y=t-1

所以对于t,如果我们要求lnt,只要做如下初始化:

X=t+1,y=t-1,z=0

则输出z=0.5ln(t),只需要在CORD IC之后做一次左移即可。

如(2)式所示,为保证迭代序列的收敛,|tanh-1(y0/x0)|≤1.1182,因此|y/x|max≈0.8069,n→∞,反双曲正切的定义域为(-1,1),可见函数的输入范围受到了限制。解决的方法是增加n为负数的迭代,改进的算法公式为:

当n≤0时

当n>0时

收敛的范围变成

tanh-1(y/x)|≤θmax

其中

当M=5时,θmax=12.4264,函数tanh-1的范围是[-12.4264,12.4264]。也就是说此时y/x可以接近于[-1,1],几乎覆盖tanh-1的整个定义域。因此硬件实现过程中可以从-5开始迭代。

对数运算的FPGA实现

CORD IC算法完全由移位和相加完成,很容易在硬件上实现。由于FPGA具有并行处理能力,利用FPGA实现对数变换,速度可以比数字信号处理芯片快,以满足某些高速处理的要求。本文采用的FPGA芯片是Altera公司的cyclone系列芯片EP1C6Q240C8。该芯片内部共有逻辑单元5980个,支持近12万门的设计,内部嵌有约12Kbyte的RAM,包含2个生成时钟的锁相环,最大用户I/O数185个,满足设计要求。

锁相环相关文章:锁相环原理

西宁碧莲盛植发

太原碧莲盛

济南碧莲盛官网

乌鲁木齐碧莲盛好吗

相关阅读