CN103135960A - 一种基于fpga的集成浮点运算器的设计方法 - Google Patents
一种基于fpga的集成浮点运算器的设计方法 Download PDFInfo
- Publication number
- CN103135960A CN103135960A CN2013100631644A CN201310063164A CN103135960A CN 103135960 A CN103135960 A CN 103135960A CN 2013100631644 A CN2013100631644 A CN 2013100631644A CN 201310063164 A CN201310063164 A CN 201310063164A CN 103135960 A CN103135960 A CN 103135960A
- Authority
- CN
- China
- Prior art keywords
- floating
- module
- floating point
- designing
- fpga
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000010606 normalization Methods 0.000 claims abstract description 17
- 238000007781 pre-processing Methods 0.000 abstract description 12
- 238000012356 Product development Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 1
Images
Landscapes
- Complex Calculations (AREA)
Abstract
本发明公开了一种基于FPGA的集成浮点运算器的设计方法,属于信号处理技术领域,该浮点运算器集成FPGA器件,该浮点运算器包括以下运算模块:加减法预处理模块、乘除法预处理模块、加减法模块、乘法模块、除法模块以及归一化模块,通过以上各运算模块的运算模式输入输出来控制运算器的运算方式,对浮点数据运算采用三级流水线设计完成浮点四则运算,标准浮点数都为IEEE-754标准单精度浮点数,该浮点运算器输入输出均为IEEE-754单精度浮点格式。本发明的一种基于FPGA的集成浮点运算器的设计方法和现有技术相比,以并行运算的方式工作,缩短了产品的开发周期,性能价格比大幅提高,且速度快,抗干扰性强。
Description
技术领域
本发明涉及一种信号处理技术领域,具体地说是一种基于FPGA的集成浮点运算器的设计方法。
背景技术
随着FPGA的出现以及EDA技术的成熟,采用FPGA实现数字信号处理的方法已经显示出巨大的潜力。在某些应用场合定点数不能满足信号动态范围的要求,因此需要将定点运算转化为浮点运算,但由于浮点数运算本身的一些特性,决定了其运算操作的复杂度远远超过普通定点数的运算。
发明内容
本发明的技术任务是提供一种以并行运算的方式工作,缩短了产品的开发周期,性能价格比大幅提高,且速度快,抗干扰性强的一种基于FPGA的集成浮点运算器的设计方法。
本发明的技术任务是按以下方式实现的,该浮点运算器集成FPGA器件,该浮点运算器包括以下运算模块:加减法预处理模块、乘除法预处理模块、加减法模块、乘法模块、除法模块以及归一化模块,通过以上各运算模块的运算模式输入输出来控制运算器的运算方式,对浮点数据运算采用三级流水线设计完成浮点四则运算,标准浮点数都为IEEE-754标准单精度浮点数,该浮点运算器输入输出均为IEEE-754单精度浮点格式。
加减法预处理模块与乘除法预处理模块的设计方法为:如果输入是标准浮点数,则根据加减乘除不同的运算将浮点数放到相对应的位置。方便下一步计算。
加减法模块的浮点数加法器的设计方法为:
(3)、将上面运算结果通过归一化模块归一化为单精度浮点数格式输出;
加减法模块的浮点数减法器的设计方法为:
(3)、将上面运算结果通过归一化模块归一化为单精度浮点数格式输出。
乘法模块的浮点数乘法器的设计方法为:
(1)、如果乘数A和被乘数B有一个为零,则结果置零,运算结束;
(4)、将上面运算结果通过归一化模块归一化为单精度浮点数格式输出。
除法模块的浮点数除法器的设计方法为:
(3)、阶码相减,尾数相除;
(4)、将上面运算结果通过归一化模块归一化为单精度浮点数格式输出。
本发明的一种基于FPGA的集成浮点运算器的设计方法具有以下优点:由于FPGA器件具备在线可编程能力,克服了专用处理器灵活性方面的不足,同时兼备了高速和低成本的优点,因此,基于FPGA用硬件方式实现浮点型运算器成为可能,并且用硬件实现的浮点数运算器,能够以并行运算的方式工作,可以缩短产品的开发周期,性能价格比大幅提高,且速度快,抗干扰性强。因而,具有很好的推广使用价值。
附图说明
下面结合附图对本发明进一步说明。
附图1为一种基于FPGA的集成浮点运算器的设计方法的结构框图;
附图2为一种基于FPGA的集成浮点运算器的设计方法的IEEE-754标准单精度浮点数(32bits)的格式框图。
具体实施方式
参照说明书附图和具体实施例对本发明的一种基于FPGA的集成浮点运算器的设计方法作以下详细地说明。
实施例:
本发明的一种基于FPGA的集成浮点运算器的设计方法, 该浮点运算器集成FPGA器件,该浮点运算器包括以下运算模块:加减法预处理模块、乘除法预处理模块、加减法模块、乘法模块、除法模块以及归一化模块,通过以上各运算模块的运算模式输入输出来控制运算器的运算方式,对浮点数据运算采用三级流水线设计完成浮点四则运算,标准浮点数都为IEEE-754标准单精度浮点数,该浮点运算器输入输出均为IEEE-754单精度浮点格式。如图2所示。
加减法预处理模块与乘除法预处理模块的设计方法为:如果输入是标准浮点数,则根据加减乘除不同的运算将浮点数放到相对应的位置。方便下一步计算。
加减法模块的浮点数加法器的设计方法为:
(3)、将上面运算结果通过归一化模块归一化为单精度浮点数格式输出;
加减法模块的浮点数减法器的设计方法为:
(3)、将上面运算结果通过归一化模块归一化为单精度浮点数格式输出。
乘法模块的浮点数乘法器的设计方法为:
(1)、如果乘数A和被乘数B有一个为零,则结果置零,运算结束;
(4)、将上面运算结果通过归一化模块归一化为单精度浮点数格式输出。
除法模块的浮点数除法器的设计方法为:
(3)、阶码相减,尾数相除;
(4)、将上面运算结果通过归一化模块归一化为单精度浮点数格式输出。
如图1所示:操作数A和B都为IEEE-754标准单精度浮点数,根据运算模式选择输入来确定数据进入加减法预处理模块还是乘除法预处理模块,然后根据加减乘除不同的运算将浮点数放到相对应的位置,方便下一步计算。下面以加法为例,预处理后的模块进入加法模块,根据发明内容中加法设计器的方法,将运算完的操作数送到归一化模块,将浮点数转化为IEEE-754标准单精度浮点数。最后得到结果Y。
本发明的一种基于FPGA的集成浮点运算器的设计方法,除说明书所述的技术特征外,均为本专业技术人员的已知技术。
Claims (5)
1.一种基于FPGA的集成浮点运算器的设计方法,其特征在于该浮点运算器集成FPGA器件,该浮点运算器包括以下运算模块:加减法预处理模块、乘除法预处理模块、加减法模块、乘法模块、除法模块以及归一化模块,通过以上各运算模块的运算模式输入输出来控制运算器的运算方式,对浮点数据运算采用三级流水线设计完成浮点四则运算,标准浮点数都为IEEE-754标准单精度浮点数,该浮点运算器输入输出均为IEEE-754单精度浮点格式。
2.根据权利要求1所述的一种基于FPGA的集成浮点运算器的设计方法,其特征在于加减法预处理模块与乘除法预处理模块的设计方法为:如果输入是标准浮点数,则根据加减乘除不同的运算将浮点数放到相对应的位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013100631644A CN103135960A (zh) | 2013-02-28 | 2013-02-28 | 一种基于fpga的集成浮点运算器的设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013100631644A CN103135960A (zh) | 2013-02-28 | 2013-02-28 | 一种基于fpga的集成浮点运算器的设计方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103135960A true CN103135960A (zh) | 2013-06-05 |
Family
ID=48495839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013100631644A Pending CN103135960A (zh) | 2013-02-28 | 2013-02-28 | 一种基于fpga的集成浮点运算器的设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103135960A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103631559A (zh) * | 2013-12-13 | 2014-03-12 | 广西科技大学 | 双指令多浮点操作数除运算控制器 |
CN103645879A (zh) * | 2013-12-13 | 2014-03-19 | 广西科技大学 | 浮点数除运算执行控制器 |
CN104166535A (zh) * | 2013-07-19 | 2014-11-26 | 郑州宇通客车股份有限公司 | 定点处理器及其防溢方法 |
CN104731551A (zh) * | 2013-12-23 | 2015-06-24 | 浙江大华技术股份有限公司 | 基于fpga进行除法操作的方法及装置 |
CN106020769A (zh) * | 2016-06-22 | 2016-10-12 | 上海兆芯集成电路有限公司 | 浮点除法器以及浮点除法器操作方法 |
CN109343823A (zh) * | 2018-11-01 | 2019-02-15 | 何安平 | 基于异步控制的浮点数加法器和浮点数的相加方法 |
CN113781217A (zh) * | 2021-08-31 | 2021-12-10 | 深圳华云信息系统有限公司 | 基于fpga的浮点数处理方法、装置、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2017743A2 (en) * | 2007-07-19 | 2009-01-21 | Itt Manufacturing Enterprises, Inc. | High speed and efficient matrix multiplication hardware module |
CN101794210A (zh) * | 2010-04-07 | 2010-08-04 | 上海交通大学 | 基于fpga的通用矩阵浮点乘法器 |
-
2013
- 2013-02-28 CN CN2013100631644A patent/CN103135960A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2017743A2 (en) * | 2007-07-19 | 2009-01-21 | Itt Manufacturing Enterprises, Inc. | High speed and efficient matrix multiplication hardware module |
CN101794210A (zh) * | 2010-04-07 | 2010-08-04 | 上海交通大学 | 基于fpga的通用矩阵浮点乘法器 |
Non-Patent Citations (2)
Title |
---|
周宁宁等: "基于 FPGA 技术的浮点运算器的设计与实现", 《计算机工程与设计》 * |
王冬冬: "基于FPGA的浮点运算器设计", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104166535A (zh) * | 2013-07-19 | 2014-11-26 | 郑州宇通客车股份有限公司 | 定点处理器及其防溢方法 |
CN104166535B (zh) * | 2013-07-19 | 2017-07-28 | 郑州宇通客车股份有限公司 | 定点处理器及其防溢方法 |
CN103631559A (zh) * | 2013-12-13 | 2014-03-12 | 广西科技大学 | 双指令多浮点操作数除运算控制器 |
CN103645879A (zh) * | 2013-12-13 | 2014-03-19 | 广西科技大学 | 浮点数除运算执行控制器 |
CN103631559B (zh) * | 2013-12-13 | 2016-09-14 | 广西科技大学 | 双指令多浮点操作数除运算控制器 |
CN103645879B (zh) * | 2013-12-13 | 2016-09-14 | 广西科技大学 | 浮点数除运算执行控制器 |
CN104731551A (zh) * | 2013-12-23 | 2015-06-24 | 浙江大华技术股份有限公司 | 基于fpga进行除法操作的方法及装置 |
CN104731551B (zh) * | 2013-12-23 | 2018-02-16 | 浙江大华技术股份有限公司 | 基于fpga进行除法操作的方法及装置 |
CN106020769A (zh) * | 2016-06-22 | 2016-10-12 | 上海兆芯集成电路有限公司 | 浮点除法器以及浮点除法器操作方法 |
CN106020769B (zh) * | 2016-06-22 | 2018-09-14 | 上海兆芯集成电路有限公司 | 浮点除法器以及浮点除法器操作方法 |
CN109343823A (zh) * | 2018-11-01 | 2019-02-15 | 何安平 | 基于异步控制的浮点数加法器和浮点数的相加方法 |
CN113781217A (zh) * | 2021-08-31 | 2021-12-10 | 深圳华云信息系统有限公司 | 基于fpga的浮点数处理方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106990937B (zh) | 一种浮点数处理装置和处理方法 | |
US9519460B1 (en) | Universal single instruction multiple data multiplier and wide accumulator unit | |
US10346133B1 (en) | System and method of floating point multiply operation processing | |
CN103135960A (zh) | 一种基于fpga的集成浮点运算器的设计方法 | |
EP3447634B1 (en) | Non-linear function computing device and method | |
CN102629189A (zh) | 基于fpga的流水浮点乘累加方法 | |
CN103984521B (zh) | Gpdsp中simd结构浮点除法的实现方法及装置 | |
CN106951211A (zh) | 一种可重构定浮点通用乘法器 | |
Sunesh et al. | Design and implementation of fast floating point multiplier unit | |
CN104991757A (zh) | 一种浮点处理方法及浮点处理器 | |
CN105426156A (zh) | 一种高性能非精确乘法器及其应用方法 | |
Ramesh et al. | An FPGA based high speed IEEE-754 double precision floating point multiplier using Verilog | |
Jaiswal et al. | High performance FPGA implementation of double precision floating point adder/subtractor | |
Ushasree et al. | VLSI implementation of a high speed single precision floating point unit using verilog | |
Kuang et al. | Energy-efficient multiple-precision floating-point multiplier for embedded applications | |
Gök et al. | Multi-functional floating-point MAF designs with dot product support | |
Daud et al. | Hybrid modified booth encoded algorithm-carry save adder fast multiplier | |
Lastras et al. | A logarithmic approach to energy-efficient GPU arithmetic for mobile devices | |
CN102609236B (zh) | 一种应用于gpu中的幂指数运算装置和运算方法 | |
Hsiao et al. | Design of a low-cost floating-point programmable vertex processor for mobile graphics applications based on hybrid number system | |
CN106168941A (zh) | 一种支持复数乘法的fft蝶形运算硬件实现电路 | |
Saini et al. | Efficient Implementation of Pipelined Double Precision Floating Point Multiplier | |
Gupta et al. | A high speed floating point dot product unit | |
KR102737112B1 (ko) | 컴퓨팅 장치 및 이의 동작 방법 | |
Liu et al. | An efficient floating-point multiplier for digital signal processors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130605 |
|
WD01 | Invention patent application deemed withdrawn after publication |