函数处理电路的构建方法、函数处理电路和硬件加速器与流程
- 国知局
- 2024-07-31 23:14:29
本技术涉及数据处理,特别是涉及一种函数处理电路的构建方法、函数处理电路和硬件加速器。
背景技术:
1、超越运算函数是数学计算的基础,也是计算机进行复杂计算的前提。正余弦函数作为一类最基本的超越运算函数,它在数字信号处理、图像处理、坐标轴转换以及科学计算中都有广泛的应用。因此,基于硬件电路的正余弦函数计算方法得到了快速发展,已经被广泛应用于处理器的设计、硬件加速等领域中。
2、传统上一般采用通过cordic(coordinate rotation digital computer,坐标旋转数字计算方法)构建正余弦函数进行处理(即计算)的硬件电路;然而,这种方法存在迭代次数大的缺点,进而导致构建的硬件电路在处理正余弦函数时存在收敛周期长、吞吐量受限的缺点。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种能够提高构建的函数处理电路的收敛速度和吞吐量的函数处理电路的构建方法、函数处理电路和硬件加速器。
2、第一方面,本技术提供了一种函数处理电路的构建方法,包括:
3、对目标函数进行连续二阶函数转换处理,得到所述目标函数的第一子函数;其中,所述目标函数为正弦函数或余弦函数;
4、对所述目标函数进行插值处理,得到所述目标函数的第二子函数;其中,所述第一子函数和所述第二子函数之积表征所述目标函数;
5、根据所述第一子函数、所述第二子函数,以及所述第一子函数和所述第二子函数之积对应的连接乘法器,构建所述目标函数对应的函数处理电路。
6、在其中一个实施例中,所述第一子函数包括第一一次项函数和第一二次项函数;
7、相应的,所述对目标函数进行连续二阶函数转换处理,得到所述目标函数的第一子函数,包括:
8、对所述目标函数进行连续二阶函数转换处理,得到第一一次项系数和第一二次项系数;
9、将所述第一一次项系数和所述目标函数中的角度变量的乘积,作为第一一次项函数;
10、将所述第一二次项系数和所述目标函数中的角度变量的平方的乘积,作为第一二次项函数;
11、将所述第一一次项函数和所述第一二次项函数之差,作为所述第一子函数。
12、在其中一个实施例中,所述对所述目标函数进行插值处理,得到所述目标函数的第二子函数,包括:
13、采用预设数量个插值间隔,在所述目标函数的定义域范围内,对所述目标函数进行分段插值处理,得到各插值间隔对应的插值信息;其中,所述插值信息包括插值间隔对应的插值变量、起点值和终点值;
14、根据各插值间隔对应的插值信息,构建所述目标函数在各插值间隔对应的第二子函数。
15、在其中一个实施例中,所述第二子函数包括零次项系数、第二一次项函数和第二二次项函数;
16、相应的,所述根据各插值间隔对应的插值信息,构建所述目标函数在各插值间隔对应的第二子函数,包括:
17、针对每一插值间隔,将所述目标函数和第一子函数之间的比值,作为中间函数;
18、根据所述中间函数和所述插值间隔对应的插值信息,确定所述插值间隔对应的零次项系数、第二一次项函数和第二二次项函数;
19、将所述第二一次项函数和所述零次项系数之间的和,与所述第二二次项函数作差,得到所述目标函数在所述插值间隔对应的第二子函数。
20、在其中一个实施例中,所述根据所述中间函数和所述插值间隔对应的插值信息,确定所述插值间隔对应的零次项系数、第二一次项函数和第二二次项函数,包括:
21、根据所述中间函数和所述插值间隔的起点值,确定零次项系数;
22、根据所述起点值、所述终点值和所述中间函数,确定中间系数;
23、根据所述中间系数、所述零次项系数、所述起点值、所述终点值和所述中间函数,确定第二二次项系数;
24、将所述中间系数和所述第二二次项系数之和,作为第二一次项系数;
25、将所述第二一次项系数和所述插值变量之间的乘积,作为所述第二一次项函数;
26、将所述第二二次项系数和所述插值变量的平方的和,作为所述第二二次项函数。
27、在其中一个实施例中,所述根据所述第一子函数、所述第二子函数,以及所述第一子函数和所述第二子函数之积对应的连接乘法器,构建所述目标函数对应的函数处理电路,包括:
28、根据所述第一子函数,构建第一子函数电路;
29、根据所述第二子函数,构建第二子函数电路;
30、将所述第一子函数电路的输出端和所述连接乘法器的第一输入端连接,以及将所述第二子函数电路的输出端和所述连接乘法器的第二输入端连接,得到所述目标函数对应的函数处理电路;其中,所述函数处理电路的输入端为所述第一子函数电路和所述第二子函数电路的输入端,所述函数处理电路的输出端为所述连接乘法器的输出端。
31、在其中一个实施例中,所述据所述第一子函数,构建第一子函数电路,包括:
32、根据所述第一子函数,确定用于构建所述第一子函数电路的第一处理器件;其中,所述第一处理器件包括第一平方器、第一减法器和平移器;
33、将所述第一平方器和所述平移器的输出端,分别与所述第一减法器的输入端连接,得到所述第一子函数电路;
34、其中,所述第一子函数电路的输入端为所述第一平方器和所述平移器的输入端,所述第一子函数电路的输出端为所述第一减法器的输出端。
35、在其中一个实施例中,所述根据所述第二子函数,构建第二子函数电路,包括:
36、根据所述第二子函数,确定用于构建所述第二子函数电路的第二处理器件;其中,所述第二处理器件包括第一存储器、第二存储器、第三存储器、第一乘法器、加法器、第二减法器、第二乘法器和第二平方器;
37、将所述第一乘法器的第二输入端连接所述第二存储器的输出端,将所述第一乘法器的输出端连接所述加法器的第一输入端,将所述加法器的第二输入端与所述第一存储器的输出端连接,将所述加法器的输出端与所述第二减法器的第一输入端连接,将所述第二减法器的第二输入端与所述第二乘法器的输出端连接,将所述第二乘法器的第一输入端与所述第三存储器的输出端连接,以及将所述第二乘法器的第二输入端与所述第二平方器的输出端连接,得到所述第二子函数电路;
38、其中,所述第二子函数电路的输入端为所述第一存储器、所述第二存储器、所述第三存储器、所述第二平方器的输入端,以及第一乘法器的第一输入端;所述第二子函数电路的输出端为所述第二减法器的输出端。
39、在其中一个实施例中,所述方法还包括:
40、获取原始函数;
41、对所述原始函数中的角度变量进行压缩处理,得到目标函数;其中,所述目标函数的定义域和值域均在[0,1)之间。
42、第二方面,本技术还提供了一种函数处理电路,由第一方面所述的函数处理电路的构建方法构建。
43、第三方面,本技术还提供了一种硬件加速器,包括第二方面所述的函数处理电路。
44、第四方面,本技术还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,处理器执行计算机程序时实现上述第一方面的方法的步骤。
45、第五方面,本技术还提供了一种计算机可读存储介质,其上存储有计算机程序,处理器执行计算机程序时实现上述第一方面的方法的步骤。
46、第六方面,本技术还提供了一种计算机程序产品,包括计算机程序,处理器执行计算机程序时实现上述第一方面的方法的步骤。
47、上述函数处理电路的构建方法、函数处理电路和硬件加速器,通过对目标函数(即正弦函数或余弦函数)进行连续二阶函数转换处理,得到目标函数的第一子函数;并对目标函数进行插值处理,得到目标函数的第二子函数;由于第一子函数和第二子函数之积可以准确表征目标函数,所以,根据第一子函数、第二子函数,以及第一子函数和第二子函数之积对应的连接乘法器,构建的目标函数对应的函数处理电路可以精准处理目标函数。此外,由于第一子函数和第二子函数通过连接乘法器连接,所以,第一子函数和第二子函数在函数处理电路中属于并行计算,降低了函数处理电路的执行时间,进而提高了构建的函数处理电路的收敛速度和吞吐量。
本文地址:https://www.jishuxx.com/zhuanli/20240730/196595.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。