CN202281998U - 一种标量浮点运算加速器 - Google Patents
一种标量浮点运算加速器 Download PDFInfo
- Publication number
- CN202281998U CN202281998U CN 201120395432 CN201120395432U CN202281998U CN 202281998 U CN202281998 U CN 202281998U CN 201120395432 CN201120395432 CN 201120395432 CN 201120395432 U CN201120395432 U CN 201120395432U CN 202281998 U CN202281998 U CN 202281998U
- Authority
- CN
- China
- Prior art keywords
- scalar floating
- point operation
- main control
- interface
- function
- 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.)
- Expired - Lifetime
Links
Images
Abstract
本实用新型公开了一种标量浮点运算加速器,目的在于解决现有技术所存在的单片机或嵌入式系统硬件电路实现函数计算时所实现函数单一、过多占用系统资源等技术问题,提供一种标量浮点运算加速器,它采用分段可变参数曲线拟合方式使所有函数运算通过硬件电路实现,它包括主控处理器,运算器,接口控制电路,接口寄存器,指令部件,接口控制电路连接接口寄存器,指令部件连接接口寄存器,运算器连接接口寄存器,主控处理器连接接口控制电路。
Description
技术领域
本实用新型涉及一种运算器,尤其涉及一种使用硬件电路实现标量浮点数运算的运算器。
背景技术
所谓标量浮点数是指一个浮点数,而不是一组浮点数(一组浮点数一般称为向量浮点数)。标量浮点运算是计算程序中经常使用的,主要有浮点四则运算、三角函数运算、指数计算以及一些比较运算等。这些计算在传统计算机中一般采用高级语言的函数库做处理,处理起来运算时间长。因此,在单片机或嵌入式系统中为加快运算速度往往使用硬件电路完成此类计算。为节省这类运算电路占用的系统资源和芯片空间,一般只采用少数几种种函数的运算电路,然而在嵌入式系统中的高端应用领域,像工业控制、POS机、网络设备、图像处理等应用中,要求有较强的数据处理能力,导致较多的硬件运算电路需求,致使处理器芯片面积增加、占用处理器硬件资源增加。
公开日为2011年04月20日、公开号为CN102023839A的专利文献公开了这样的技术方案,一种运算器,包括两个3通道选1通道选择器、一加法器、一减法器、两个乘法器、三个锁存器、一二进制转十进制器、一循环移位器;所述3通道选1通道选择器用于实现并行输入转串行功能;所述加法器、减法器、乘法器用于实现运算功能X=(X1*C+X2*(A-C))/A,所述锁存器用于实现串行转并行输出;所述二进制转十进制和循环移位寄存器用于实现控制输入和输出,有效地减小了大量芯片面积。该方案不足之处是运算函数单一,对于单变量多次函数及多变量函数计算无法实现。
发明内容
本实用新型主要是解决现有技术所存在的单片机或嵌入式系统硬件电路实现函数计算时所实现函数种类少、过多占用系统资源等技术问题,提供一种标量浮点运算加速器,它采用分段可变参数曲线、曲面拟合技术使所有函数运算通过硬件电路实现,在硬件连接上该标量浮点运算加速器被视为一个存储器与单片机连接。
本实用新型针对现有技术问题主要是通过下述技术方案得以解决的,一种标量浮点运算加速器,包括主控处理器,运算器,其特征在于:还包括接口控制电路,接口寄存器,指令部件,所述接口控制电路连接接口寄存器,指令部件连接接口寄存器,运算器连接接口寄存器,主控处理器连接接口控制电路。运算器对于单变量函数使用一元二次曲线拟合处理、对于双变量函数采用二元二次曲面拟合处理,拟合处理时对函数进行分段拟合。
其中,接口控制电路处理指令、数据传输的时序控制及状态指示,接口寄存器保存有多个操作数及指令、计算结果和状态寄存器,指令部件根据不同的指令产生相应的控制逻辑,运算器执行函数计算。
该方案为主控处理器配置一个标量浮点运算加速器,以提高科学计算的能力。标量浮点运算加速器将C语言的数学库硬件化,相当于有一个硬件数学库连接在主控处理器上,在连接时主控处理器将标量浮点运算加速器作为一个外部存储器进行连接。
因为C语言数学库的函数种类很多,而且每种函数的计算都非常复杂。如果针对每种函数设计一套硬件逻辑实现,那硬件设计会非常复杂,甚至到了无法实现的地步。所以本方案采用分段式拟合方式即利用分段曲线、曲面拟合的方法来实现各种函数。对于单变量函数,如求平方根、三角函数等,使用一元二次曲线拟合;对于双变量函数,如除法,采用二元二次曲面拟合。通过分段拟合计算最后得到计算结果。
拟合处理时单变量函数为一元二次函数:
Y=a0+a1*x+a2*x2=a0+x*(a1+a2*x)
拟合处理时双变量函数为二元二次函数:
Yz=a0+a1*x+a2*x2+a3*y+a4*y2+a5*x*y
=a0+x*(a1+a2*x)+a0+y*(a1+a2*y)+a5*x*y
其中a0,a1,a2,a3,a4,a5是参数,不同的分段采用不同的参数,以提高函数拟合的精确度。
在拟合函数式中有一个通用的计算式,形式是(a1+a2*x),是通用的乘、加模式。
拟合函数中的参数先由计算机计算,再通过加载参数指令从主控处理器传送到标量浮点运算加速器参数表中。计算函数时先根据变量值所在的区域在参数表中查找相应段内的各个参数,然后利用这些参数做拟合函数的计算,最后得到计算结果。
作为优选,接口控制电路与主控处理器之间采用存储器总线连接。采用通用的存储器总线进行指令、数据传输,占用主控处理器资源少、传输速率高、可靠性高、使用方便、通用性好。
作为优选,接口控制电路设置有忙闲状态信号线,完成中断信号线,忙闲状态信号线、完成中断信号线分别连接到主控处理器。主控处理器在使用标量浮点运算加速器之前先看其忙闲标志是否为空闲,如果为空闲,则可以使用标量浮点运算加速器,否则要等待。标量浮点运算加速器计算结束后主动向主控处理器发送一个完成中断信号,主控处理器也可以通过忙闲状态信号线查询标量浮点运算加速器忙闲状态,如果处于空闲状态,就说明计算结束。
作为优选,主控处理器是单片机。本方案采用单片机作为主控处理器,标量浮点运算加速器通过存储器总线与单片机连接。
作为优选,运算器包括参数表、一多路选择器,一乘法器,一加法器,一多路选择器、一乘法器、一加法器连接成为乘加模式运算器。拟合函数式中的通用计算式(a1+a2*x)是通用的乘、加模式,因此,使用乘加模式运算器即可满足要求。由计算机计算出的参数存放在参数表中,根据选用的一元二次函数式Y=a0+x*(a1+a2*x)或二元二次函数式Yz=a0+x*(a1+a2*x)+a0+y*(a1+a2*y)+a5*x*y,将操作数通过多路选择器输入乘法器,根据操作数在参数表中选择出对应的参数值送入乘法器、加法器,再将乘法器的计算结果送入加法器等操作,最后计算出结果值。
本实用新型带来的有益效果是,采用分段可变参数曲线拟合技术使所有类型的标量浮点计算式统一,大大简化了标量浮点运算加速器的设计复杂性,大幅提高了科学计算速度,采用分段拟合方式降低了拟合误差,采用存储器总线方式连接使标量浮点运算加速器接口通用性强、占用主控处理器资源少、使用方便。
附图说明
图1是标量浮点运算加速器的一种结构框图;
图2是单片机与标量浮点运算加速器的一种连接框图;
图3是运算器的一种结构框图。
图中:1是接口控制电路,2是接口寄存器,3是指令部件,4是运算器,5是单片机,6是标量浮点运算加速器,7是存储器总线,8是忙闲状态信号线,9是完成中断信号线,10是参数表,11是乘法器,12是加法器,13是多路选择开器。
具体实施方式
下面通过实施例,并结合附图,对本实用新型的技术方案作进一步具体说明。
实施例:如图1、图2所示,本实用新型是一种标量浮点运算加速器,包括单片机5,运算器4,接口控制电路1,接口寄存器2,指令部件3,接口控制电路1连接接口寄存器2,指令部件3连接接口寄存器2,运算器4连接接口寄存器2,单片机5连接接口控制电路1,运算器4对于单变量函数使用一元二次曲线拟合处理、对于双变量函数采用二元二次曲面拟合处理,拟合处理时对函数进行分段拟合,一元二次函数采用Y=a0+x*(a1+a2*x),二元二次函数采用Yz=a0+x*(a1+a2*x)+a0+y*(a1+a2*y)+a5*x*y,变量操作数存放在接口寄存器中,参数存放在运算器4的参数表中。
标量浮点运算加速器6与单片机5之间连接存储器总线7进行指令和数据传输;忙闲状态信号线8用于单片机5查询标量浮点运算加速器6处于忙状态还是空闲状态;标量浮点运算加速器6在计算任务完成时,通过完成中断信号线9通知单片机5。
图3所示为运算器4的结构框图,参数表10中存放根据拟合函数由计算机计算出的参数,计算时依据变量所处的分段从中读取参数,多路选择器13控制操作数、中间结果的选择输入及输入时序,乘法器11、加法器12对选定的拟合函数(Y=a0+x*(a1+a2*x)或Yz=a0+x*(a1+a2*x)+a0+y*(a1+a2*y)+a5*x*y)进行计算,最终计算结果送往接口寄存器2。
所以本实用新型具有使用分段可变参数曲线拟合技术使所有类型的标量浮点计算式统一,大大简化了标量浮点运算加速器的设计复杂性,大幅提高了科学计算速度,采用分段拟合方式降低了拟合误差,采用存储器总线方式连接使标量浮点运算加速器接口通用性强、占用主控处理器资源少、使用方便等特征。
Claims (5)
1.一种标量浮点运算加速器,包括主控处理器,运算器,其特征在于:还包括接口控制电路,接口寄存器,指令部件,所述接口控制电路连接接口寄存器,指令部件连接接口寄存器,运算器连接接口寄存器,主控处理器连接接口控制电路。
2.根据权利要求1所述一种标量浮点运算加速器,其特征在于:所述接口控制电路与主控处理器之间采用存储器总线连接。
3.根据权利要求1或2所述一种标量浮点运算加速器,其特征在于:所述接口控制电路设置有忙闲状态信号线,完成中断信号线,所述忙闲状态信号线、完成中断信号线分别连接到主控处理器。
4.根据权利要求1或3所述一种标量浮点运算加速器,其特征在于:所述主控处理器是单片机。
5.根据权利要求1所述一种标量浮点运算加速器,其特征在于:所述运算器包括参数表、一多路选择器,一乘法器,一加法器,所述一多路选择器、一乘法器、一加法器连接成为乘加模式运算器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201120395432 CN202281998U (zh) | 2011-10-18 | 2011-10-18 | 一种标量浮点运算加速器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201120395432 CN202281998U (zh) | 2011-10-18 | 2011-10-18 | 一种标量浮点运算加速器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN202281998U true CN202281998U (zh) | 2012-06-20 |
Family
ID=46228156
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201120395432 Expired - Lifetime CN202281998U (zh) | 2011-10-18 | 2011-10-18 | 一种标量浮点运算加速器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN202281998U (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109871952A (zh) * | 2017-12-01 | 2019-06-11 | 阿比特电子科技有限公司 | 电子装置、加速器、神经网络的加速方法及加速系统 |
CN117369707A (zh) * | 2023-12-04 | 2024-01-09 | 杭州米芯微电子有限公司 | 一种数字信号监测电路及芯片 |
-
2011
- 2011-10-18 CN CN 201120395432 patent/CN202281998U/zh not_active Expired - Lifetime
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109871952A (zh) * | 2017-12-01 | 2019-06-11 | 阿比特电子科技有限公司 | 电子装置、加速器、神经网络的加速方法及加速系统 |
CN117369707A (zh) * | 2023-12-04 | 2024-01-09 | 杭州米芯微电子有限公司 | 一种数字信号监测电路及芯片 |
CN117369707B (zh) * | 2023-12-04 | 2024-03-19 | 杭州米芯微电子有限公司 | 一种数字信号监测电路及芯片 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104915322B (zh) | 一种卷积神经网络硬件加速方法 | |
CN103150146B (zh) | 基于可扩展处理器架构的专用指令集处理器及其实现方法 | |
CN102629189B (zh) | 基于fpga的流水浮点乘累加方法 | |
CN103049241B (zh) | 一种提高cpu+gpu异构装置计算性能的方法 | |
CN102184092A (zh) | 基于流水线结构的专用指令集处理器 | |
CN106406810A (zh) | 微处理器及其方法 | |
CN104111816A (zh) | Gpdsp中多功能simd结构浮点融合乘加运算装置 | |
US20120203814A1 (en) | Computer for amdahl-compliant algorithms like matrix inversion | |
CN102339217B (zh) | 一种浮点数乘加器融合处理装置及方法 | |
CN102360281B (zh) | 用于微处理器的多功能定点乘加单元mac运算装置 | |
CN101211256A (zh) | 一种专用双流水线risc指令系统及其操作方法 | |
CN107544942A (zh) | 一种快速傅里叶变换的vlsi设计方法 | |
CN100409259C (zh) | 可缩放大规模二维卷积电路 | |
CN202281998U (zh) | 一种标量浮点运算加速器 | |
CN102693118A (zh) | 一种标量浮点运算加速器 | |
CN102945148A (zh) | 一种并行指令集的实现方法 | |
CN107092462B (zh) | 一种基于fpga的64位异步乘法器 | |
CN112784970A (zh) | 一种硬件加速器、数据处理方法、系统级芯片及介质 | |
CN103761213A (zh) | 基于循环流水计算的片上阵列系统 | |
CN203746056U (zh) | 多操作数四则混合定点算术运算控制器 | |
CN103645887B (zh) | 双指令多浮点操作数加/减、乘、除运算控制器 | |
CN101615113A (zh) | 一条指令完成一次蝶形运算的微处理器实现方法 | |
CN103677742B (zh) | 多浮点操作数加/减运算控制器 | |
CN103677735B (zh) | 一种数据处理装置及数字信号处理器 | |
CN114117896A (zh) | 面向超长simd管线的二值规约优化实现方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20170117 Address after: 410000 Hunan province Changsha Kaifu District, the 31 Avenue Washington route 2910 Patentee after: Hunan Lugu Feiteng Microelectronic Co., Ltd. Address before: Eswell road 215163 high tech Zone in Suzhou City, Jiangsu province No. 2 garden room M1-203 micro system Patentee before: Suzhou Galaxy Electronic Technology Co., Ltd. |
|
CX01 | Expiry of patent term | ||
CX01 | Expiry of patent term |
Granted publication date: 20120620 |