[导读]本工程设计完全符合IP核设计的规范流程,而且完成了Verilog HDL建模、功能仿真、综合、时序仿真等IP核设计的整个过程,电路功能正确。实际上,本系统在布局布线后,其系统的最高时钟频率可达80MHz。虽然使用浮点数会导致舍入误差,但这种误差很小,可以忽略。实践证明,本工程利用流水线结构,方便地实现了高速、连续、大数据量浮点数的加法运算,而且设计结构合理,性能优异,可以应用在高速信号处理系统中。
0 引言
现代信号处理技术通常都需要进行大量高速浮点运算。由于浮点数系统操作比较复杂,需要专用硬件来完成相关的操作(在浮点运算中的浮点加法运算几乎占到全部运算操作的一半以上),所以,浮点加法器是现代信号处理系统中最重要的部件之一。FPGA是当前数字电路研究开发的一种重要实现形式,它与全定制ASIC电路相比,具有开发周期短、成本低等优点。但多数FPGA不支持浮点运算,这使FPGA在数值计算、数据分析和信号处理等方面受到了限制,由于FPGA中关于浮点数的运算只能自行设计,因此,研究浮点加法运算的FPGA实现方法很有必要。
1 IEEE 754单精度浮点数标准
浮点数可以在更大的动态范围内提供更高的精度,通常,当定点数受其精度和动态范围所限不能胜任时,浮点数标准则能够提供良好的解决方案。
IEEE协会制定的二进制浮点数标准的基本格式是32位宽(单精度)和64位宽(双精度),本文采用单精度格式。图1所示是IEEE754单精度浮点数格式。图中,用于单精度的32位二进制数可分为三个独立的部分,其中第0位到22位构成尾数,第23位到第30位构成指数,第31位是符号位。
实际上,上述格式的单精度浮点数的数值可表示为:
上式中,当其为正数时,S为0;当其为负数时,S为1;(-1)s表示符号。指数E是ON255的变量,E减127可使指数在2-127到2128变化。尾数采用科学计算法表示:M=1.m22m21m20……m0。m22,m21,…,m0,mi为Mp的各位,设计时应注意尾数中隐含的整数部分1。0是一个特殊的数,0的指数位和尾数位均为0,符号位可以是1,也可以是0。
2电路的流水线结构
一般情况下,结构化设计是电路设计中最重要的设计方法之一,采用结构化设计方法可以将一个复杂的电路分割为独立的功能子模块,然后按一定的原则将各子模块组合成完整的电路,这几乎是电路设计的通用模式。这种设计方法便于设计人员分工合作、实现设计和功能测试,缩短上市时间、升级和二次开发,因而具有其它方法无法比拟的优势。
结构化设计基本上可归结为两种方法:流水线(pipeline)和握手原则。其中握手原则适用于各功能子模块内部运算比较复杂、数据运算时延(latency)不确定的设计。由于数据运算时延不确定,所以,各子模块间的时序配合必须通过握手信号的交互才能完成。握手原则设计的电路一般采用复杂的有限状态机(FSM)作为控制单元,工程设计难度大,故在设计时应慎重使用。流水线法适用于各功能子模块内部运算简单整齐、数据运算时延确定的设计。由于数据运算时延比较确定,各前后级功能子模块不需要任何交互信号就能完成时序配合,故可方便地实现数据的串行流水运算。流水线控制比较简单,一般不需要设计专门的有限状态机,而且工程设计容易,设计时可优先选用。
3 工程的FPGA实现
3.1开发环境和器件选择
本工程开发可在FPGA集成开发环境QuartusII 8.0 spl中完成。OuartusⅡ是世界著名PLD设计生产厂商——Altera公司的综合性PLD开发软件,内嵌综合器和仿真器,并有可与第三方工具协作的灵活接口,可以完成从设计输入到硬件配置的完整PLD设计流程,而且运行速度快,界面统一,功能集中,易学易用。
本设计中的器件选用Stratix IIEP2S15F484C3。Stratix II是Altera公司的高性能FPGA Stratix系列的第二代产品,具有非常高的内核性能,在存储能力、架构效率、低功耗和面市及时等方面均有优势。
本系统的顶层框图如图2所示。为了显示清楚,图2被分成两个部分显示。本工程采用异步置位的同步电路设计方法,其中clk、reset、enab分别为系统时钟、系统异步置位、系统使能信号。din_a、din_b分别为两个输入的单精度浮点数,data_out则是符合IEEE 754标准的两输入浮点数之和。
3.2浮点加法运算的实现
浮点加法运算可总结为比较、移位、相加、规范化等四个步骤,分别对应于compare、shift、sum、normalize四个模块。
(1)compare模块
本模块主要完成两输入浮点数的比较,若din_a、din_b为两个输入单精度浮点数,则在一个时钟周期内完成的运算结果如下:
◇大数指数b_exp这里的大数指绝对值的比较;
◇两浮点数的指数差sube,正数;
◇大数尾数b_ma;
◇小数尾数s_ma,该尾数已加入隐含1;
◇和符号c_sgn,为确定输出结果的符号;
◇加减选择add_sub,两输入同符号时为0(相加)、异符号时为1(相减),sum模块中使用实现加减选择。
(2)shift模块
shift模块的作用主要是根据两个输入浮点数的指数差来执行小数尾数(已加入隐含1)向右移动相应的位数,以将输入的两个浮点数指数调整为相同的数(同大数),若b_exp、sube、b_ma、s_ma、c_sgn、add_sub为输入信号(其含义见compare模块),则可输出如下运算结果(在一个时钟周期内完成):
◇大数指数(sft_bexp),将b_exp信号用寄存器延迟一个周期,以实现时序同步;
◇小数尾数(sft_sma),已完成向右移动相应的sube位;
◇大数尾数(sft_bma),将b_ma信号用寄存器延迟一个周期,以实现时序同步;
◇和符号(sft_csgn),将c_sgn信号用寄存器延迟一个周期,以实现时序同步;
◇加减选择(sft_addsub),将add_sub信号用寄存器延迟一个周期,以实现时序同步;
(3)sum模块
本模块可根据加减选择(sft_addsub(信号完成两输入浮点数尾数(已加入隐含1)的加减,若sft_bexp、sft_sma、sft_bma、sft_csgn、sft_addsub为输入信号(其含义见shift模块),则可输出如下运算结果(在一个时钟周期内完成):
◇大数指数(sum_bexp),将sft_bexp信号用寄存器延迟一个周期,以实现时序同步;
◇尾数和(sum_ma),为大数尾数与移位后小数尾数的和,差(两尾数已加入隐含1);
◇和符号(sum_csgn),将sft_csgn信号用寄存器延迟一个周期,以实现时序同步;
(4)normalize模块
normalize模块的作用主要是将前三个模块的运算结果规范为IEEE 754单精度浮点数标准,若sum_bexp、sum_ma、sum_csgn为输入信号(其含义见sum模块),则其输出的运算结果(在一个时钟周期内完成)只有一个和输出(data_out),也就是符合IEEE754浮点数标准的两个输入浮点数的和。
4系统综合与仿真
由于本工程是由compare、shift、sum、normalize四个模块组成的,而这四个模块通过串行方式进行连接,每个模块的操作都在一个时钟周期内完成,因此,整个浮点数加法运算可在四个时钟周期内完成。这使得工程不仅有确定的数据运算时延(latency),便于流水线实现,而且方便占用的时钟周期尽可能减少,从而极大地提高了运算的实时性。
4.1工程综合结果
经过Quartus II综合可知,本设计使用的StratixⅡEP2S15F484C3芯片共使用了641个ALUT(高级查找表)、188个寄存器、0位内存和可达到80 MHz的时钟频率,因此可证明,本系统利用合理的资源实现了高速浮点数加法运算。
4.2工程仿真结果
本工程仿真可使用Quartus II 8.0内嵌式仿真工具来编写Matlab程序,以生成大量随机单精度浮点数(以便于提高仿真代码覆盖率,提高仿真的精确度),然后计算它们相加的结果,并以文本形式存放在磁盘文件中。编写Matlab程序可产生作为仿真输入的*.vec文件,然后通过时序仿真后生成*.tbl文件,再编写Matlab程序提取其中有用的结果数据,并与先前磁盘文件中的结果相比较,以验证设计的正确性。
图3所示是其仿真的波形图。
从图3可以看出表1所列的各种运算关系。表2所列为其实际的测试数据。
表中“A+B实数表示(M)”指Matlab计算的结果;“误差”指浮点处理器计算结果与Matlab计算结果之差。
综上所述,本工程设计的浮点加法器所得到的运算结果与Matlab结果的误差在10-7左右,可见其精度完全能够符合要求。
5 结束语
本工程设计完全符合IP核设计的规范流程,而且完成了Verilog HDL建模、功能仿真、综合、时序仿真等IP核设计的整个过程,电路功能正确。实际上,本系统在布局布线后,其系统的最高时钟频率可达80MHz。虽然使用浮点数会导致舍入误差,但这种误差很小,可以忽略。实践证明,本工程利用流水线结构,方便地实现了高速、连续、大数据量浮点数的加法运算,而且设计结构合理,性能优异,可以应用在高速信号处理系统中。
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
摘要:电动设备的传统力矩测控技术测量精度不高,所依赖器件长期稳定性差,为了实现小干扰、高灵敏度的检测要求,提出了相敏电子式交流感应电机力矩检测与控制技术,该方法包括电压和电流采样、信号处理、力矩控制三部分。根据理论研究,...
关键字:
小干扰
稳定性
精度
(全球TMT2022年6月28日讯)2022年6月28日,国微思尔芯面向全球客户正式发布芯神瞳自动原型编译软件Player Pro-7(PPro-7)。新版本针对大规模芯片设计提供了有效的解决方案,拥有更高的编译效率和...
关键字:
PLAYER
编译软件
时序
BSP
摘要:机床是机械加工常用的设备,由于工作时间较长且工作量较大,机床加工误差问题的出现在所难免。如果机床加工误差问题迟迟得不到解决,则会对零件的使用造成影响。现通过对普通机床加工误差问题进行分析,提出了提高精度的措施。
关键字:
机床
加工误差
精度
上海2022年5月16日 /美通社/ -- 热爱绣花,向往绣花?每次看到别人晒出来的绣花成品就蠢蠢欲动?如今越来越多商铺、个人爱好者开始尝试商用绣花机。作为商铺,可以使用Br...
关键字:
绣花机
BSP
精度
触摸屏
(全球TMT2022年4月22日讯)新思科技(Synopsys, Inc.)近日宣布与Ansys联合开发的电压时序签核解决方案已获三星采用,用以加速开发其具有理想功耗、性能和面积(PPA)的高能效比设计。该联合解决方案...
关键字:
三星
时序
电压
新思科技
工厂自动化应用中的精度取决于许多因素,例如精度、温度漂移和噪声。但是,在最初设计系统时,您可能忽略了另外两个关键因素:安全性和可重复性。
关键字:
自动化
精度
BSP
浪涌电流
从功能上来看,数字集成电路内部可以分为数据通路(Data-path,也称为数据路径)和控制逻辑两大部分。这两大部分都是由大量的时序逻辑电路集成的,而且绝大部分都是同步的时序电路,因为时序电路被多个触发器或寄存器分成若干节...
关键字:
时序
电路
触发器
贴标机是自动瓶装生产线的主要设备之一,适用于制药、食品、化工等行业的玻璃瓶、塑料瓶或类似物体的贴标,能完成自动分瓶、送示带、分离标签、贴标等功能。其生产效率的高低和贴标质量的好坏直接关系着公司的生产效益。
关键字:
英威腾
精度
电子
齿轮
工业和医疗设计推动产品的精度和速度日益提高。模拟集成电路行业总体能够跟上速度的发展要求,但在精度要求上却有所不足。许多系统都竞相迈入1ppm精度之列,特别是如今,1ppm的线性ADC日益普遍。本文将介绍运算放大器的精度局...
关键字:
精度
运算放大器
PPM
偏置电流
本文来源:全迹UbiTraq015G精准定位技术1.5G精准定位现状根据2020年3GPP冻结的最新版本5GR16的技术指标,5G精准定位可以达到1~3米的精度。未来的5GR17版本,甚至更远的5.5G(5G-Advan...
关键字:
定位技术
5G
精度
集成
本月初,华为心声社区发布了一篇《父亲是钱三强的学生,他入职不到一年,带领团队把这项技术应用到数千万台华为手机上》的文章,由华为220万年薪的“天才少年”钟钊讲述,分享了他的成长之路,以及入职华为一年后的研究成果。研究Au...
关键字:
华为
精度
人工智能
RS
NA-25X火控系统NA-25X是一型火控系统,能够控制防空和对海作战中的中口径火炮,以及CIWS中的小口径火炮,多达3支不同口径的火炮可以由其计算机单元控制。NA-25X是一型基于ORIONRTN-25X海军跟踪雷达的...
关键字:
精度
火控系统
1.需要对原有架构、规格、关键电路非常熟悉。多次实践证明不清楚原有设计的情况下做出的方案,往往只会越改越烂。判断是否熟悉的标准是能够讲清楚整个模块代码->能够自己画出整个微架构->能够提出有效的PPA优化方案。其实这一条...
关键字:
时序
蝴蝶振翼传感器精确检测到气体流量那么牛!它是谁?(点击揭晓)欧姆龙差压传感器D6F-PHD6F系列传感器拥有引以为傲的高灵敏度,如蝴蝶振翼产生的微小气流,在规格书所标的环境温度和压力范围下,也能准确检测。D6F系列传感器...
关键字:
传感器
精度
摘 要:针对WSN中锚节点部署方式对DV-Hop定位所产生的误差问题进行了研究。通过对锚节点以随机、正方形、均匀、交叉等不同部署方式对定位误差所产生的影响进行了仿真、比较和分析,若锚节点以正方形或均匀的方式部署,其对DV...
关键字:
无线传感器网络
锚节点
部署方式
DV-Hop算法
精度
研究
(全球TMT2021年9月28日讯)德州仪器 (TI)(NASDAQ代码:TXN)推出尺寸更小、精度更高的1.5W隔离式直流/直流偏置电源模块UCC14240-Q1。UCC14240-Q1使用专有集
关键字:
偏置电源
隔离
精度
RNSS服务的5个空间信号如下,本文来自《北斗卫星导航系统公开服务性能规范3.0》,需要全文40页PDF版的请发送关键词:0918,会有准备好的文档直接下载或者进入北斗官方网站自行下载。北斗信号射频特征B1C信号:中心频...
关键字:
信号
射频
精度
精度更高、品质更好,产量更大、成本更低是制造业不变的追求,但是面对越来越开放的市场,越来越激烈的竞争,如何才能始终保持核心竞争力?关键仍然在于技术创新!GF加工方案是全球领先的机床、自动化解决方案和服务提供商,面向工模具...
关键字:
精度
关注、星标公众号,直达精彩内容来源:网络素材整理:李肖遥随着UWB技术不断完善,市场需求增加,室内定位公司迎来春天。UWB定位系统是目前业界精度最高的商用无线定位系统,可实现较高的实时定位精度与定位容量,通常能够在现实环...
关键字:
UWB
精度
点击上方「嵌入式云IOT技术圈」,选择「置顶公众号」第一时间查看嵌入式笔记!前面我们介绍了一些MIPILCD的基础知识以及LCD初始化序列的配置:LinuxMIPIDSILCD设备驱动开发调试细节学习笔记(一)Linux...
关键字:
MIPI
调试
时序