初等函数的硬件实现系统的制作方法
- 国知局
- 2024-07-31 22:46:53
本发明涉及物联网,尤其是涉及一种初等函数的硬件实现系统。
背景技术:
1、近年来,物联网领域即iot领域得到了飞速发展,iot设备的数量增长的同时也面临着更高的计算能力需求。常见的iot设备需要初等函数运算能力以应对包含图像处理、生物信号处理等应用场景的工作任务。
2、目前常用软件的方式来实现初等函数的运算,但是完全依托于软件实现的初等函数的运算过程需要多个时钟周期完成运算,因此计算效率较低,而且需要消耗较多的计算资源。
技术实现思路
1、针对以上至少一个技术问题,本发明实施例提供一种初等函数的硬件实现系统。
2、本发明实施例提供的初等函数的硬件实现系统包括:
3、解码器,用于对控制指令进行解析,得到坐标系类型、坐标旋转数字计算方法的表示方式和待实现初等函数,根据所述坐标系类型确定第一控制信号,根据所述表示方式确定第二控制信号,根据所述待实现初等函数确定初始参数;其中,所述坐标系类型包括圆形坐标系和双曲坐标系,所述表示方式包括旋转表示方式和向量表示方式;
4、运算器,与所述解码器连接,且用于将所述解码器输出的所述第一控制信号和所述第二控制信号作为至少两个电路组件的片选信号,在所述初始参数的基础上,使所述至少两个电路组件中的每一个电路组件根据自己的片选信号从自己的多路输入信号中选择输出信号,并将所述至少两个电路组件输出的信号进行逻辑运算,以实现所述待实现初等函数对应的计算逻辑;其中,所述至少两个电路组件包括选择器和加减器。
5、在一个实施例中,所述运算器中包括旋转方向选择电路、步长迭代电路和坐标值迭代电路,其中:
6、所述旋转方向选择电路,与所述解码器连接,用于将所述第二控制信号作为片选信号输出所述表示方式对应的第i次旋转方向;i为整数,i的取值范围为[0,n-1],i的初始值为0,n为旋转总次数;
7、所述角度迭代电路,连接至所述旋转方向选择电路和所述解码器,用于经过n次迭代过程后输出第n次旋转对应的旋转角度,且第i+1次迭代过程基于所述第一控制信号、所述第i次旋转方向和第i次迭代过程输出的旋转角度而输出第i+1次迭代过程对应的旋转角度;其中,一个迭代过程对应坐标点在坐标系中的一次旋转;第0次迭代过程输出的旋转角度为预设初始角度,所述预设初始角度属于所述初始参数;
8、所述坐标值迭代电路,连接至所述解码器和所述旋转方向选择电路,用于经过n次迭代过程后输出坐标点经过n次旋转后在坐标系中的坐标位置,且第i+1次迭代过程基于所述第一控制信号、所述第i次旋转方向以及第i次迭代过程后输出的坐标位置而输出第i+1次迭代过程对应的坐标位置;第0次迭代过程输出的坐标位置为所述坐标点的初始坐标位置,所述初始坐标位置属于所述初始参数。
9、在一个实施例中,所述旋转方向选择电路包括第一非门和第一选择器,其中:
10、所述第一选择器的片选控制信号为所述第二控制信号;
11、所述第一选择器的第一路输入信号为sgn(yi);
12、所述第一选择器的第二路输入端与所述第一非门的输出端连接,且所述第一非门的输入信号为sgn(θi);
13、所述第一选择器用于:若所述第二控制型号为第一值,则将所述第一路输入信号输出;若所述第二控制信号为第二值,则将所述第二路输入端的输入信号输出;
14、其中,θi为所述角度迭代电路在第i次迭代过程输出的旋转角度;yi为所述坐标值迭代电路在第i次迭代过程输出的坐标位置中的y坐标,sgn()为符号函数。
15、在一个实施例中,所述角度迭代电路包括第二选择器、第一寄存器、第三选择器和第一加减器,其中:
16、所述第二选择器的第一路输入信号为预设初始角度,所述第二选择器的第二路输入信号为上一次迭代过程输出的旋转角度,所述第二选择器用于:在第一次迭代过程中将所述第二选择器的第一路输入信号输出,在除了第一次之外的其他迭代过程中将所述第二选择器的第二路输入信号输出;
17、所述第一寄存器,与所述第二选择器连接,用于存储所述第二选择器的输出信号;
18、所述第三选择器的第一路输入信号为上一次迭代过程对应的第一旋转步长,所述第三选择器的第二路输入信号为上一次迭代过程对应的第二旋转步长,所述第一旋转步长为从圆形坐标系对应的旋转步长查找表中查询到的旋转步长,所述第二旋转步长为从双曲坐标系对应的旋转步长查询表中查询到的旋转步长;所述第三选择器的片选控制信号为所述第一控制信号;所述第三选择器用于:若所述第一控制信号为第一值,则输出所述第一旋转步长;若所述第一控制信号为第二值,则输出所述第二旋转步长;其中,所述圆形坐标系对应的旋转步长查找表维护arctan(2-i),所述双曲坐标系对应的旋转步长查询表维护arctanh(2-i-1);
19、所述第一加减器连接至所述旋转方向选择电路、所述第一寄存器和所述所述第三选择器,所述第一加减器的第一路输入信号为从所述第一寄存器中获取到的所述第二选择器的输出信号,所述第一加减器的第二路输入信号为所述第三选择器输出的旋转步长,所述第一加减器的片选控制信号为所述旋转方向选择电路在本次迭代过程输出的旋转方向;
20、所述第一加减器用于:若所述第一加减器的片选控制信号为正方向,则将所述第一加减器的两路输入信号相加后输出;若所述第一加减器的片选控制信号为负方向,则将所述第一加减器的两路输入信号相减后输出;所述第一加减器的输出信号为所述第一加减器在本次迭代过程输出的旋转角度。
21、在一个实施例中,所述坐标值迭代电路中包括方向选择单元、x坐标迭代单元和y坐标迭代单元;其中:
22、所述方向选择单元,连接至所述解码器和所述旋转方向选择电路,用于根据所述第一控制信号和所述旋转方向选择电路在本次迭代过程输出的旋转方向,输出方向信号;
23、所述x坐标迭代单元,连接至所述方向选择单元和所述y坐标迭代单元,用于:将所述第一控制方向和所述方向信号作为片选信号,经过n次迭代过程后输出最终x坐标,所述最终x坐标为坐标点经过n次旋转后在坐标系中的x坐标;
24、所述y坐标迭代单元,连接至所述x坐标迭代单元,用于:将所述第一控制方向和所述旋转方向选择电路在本次迭代过程输出的旋转方向的反方向作为片选信号,经过n次迭代过程后输出最终y坐标,所述最终y坐标为坐标点经过n次旋转后在坐标系中的y坐标。
25、在一个实施例中,所述方向选择单元中包括第二非门和第四选择器;其中:
26、所述第四选择器的第一路输入信号为所述旋转方向选择电路输出的第i次旋转方向,所述第四选择器的第二路输入端与所述第二非门连接,所述第二非门的输入信号为所述旋转方向选择电路输出的第i次旋转方向;所述第四选择器的片选控制信号为所述第一控制信号;所述第四选择器用于:若所述第一控制信号为第一值,则将所述第四选择器的第一路输入信号输出;若所述第二控制信号为第二值,则将所述第四选择器的第二路输入信号输出。
27、在一个实施例中,所述x坐标迭代单元包括第五选择器、第二寄存器、第一移位操作器、第二移位操作器、第六选择器和第二加减器;其中:
28、所述第五选择器的第一路输入信号为所述初始坐标位置中的x坐标,所述第五选择器的第二路输入信号为上一次迭代过程输出的x坐标;所述第五选择器用于:在第一次迭代过程中将所述第五选择器的第一路输入信号输出,在除了第一次之外的其他迭代过程中将所述第五选择器的第二路输入信号输出;
29、所述第二寄存器,与所述第五选择器连接,用于对所述第五选择器的输出信号进行存储;
30、所述第一移位操作器与所述y坐标迭代单元连接,用于将所述y坐标迭代单元在上一次迭代过程输出的y坐标进行移位操作,且移位距离为本次迭代对应的迭代次数i;
31、所述第二移位操作器,与所述第一移位操作器连接,用于将所述第一移位操作器输出的移位结果进行移位操作,且移位距离为1;
32、所述第六选择器连接至所述第一移位操作器和所述第二移位操作器,所述第六选择器的第一路输入信号为所述第一移位操作器的输出信号,所述第六选择器的第二路输入信号为所述第二移位操作器的输出信号,所述第六选择器的片选控制信号为所述第一控制信号,所述第六选择器用于:若所述第一控制信号为第一值,则输出所述第六选择器的第一路输入信号;若所述第一控制信号为第二值,则输出所述第六选择器的第二路输入信号;
33、所述第二加减器连接至所述第二寄存器、所述第六选择器和所述方向选择单元,所述第二加减器的第一路输入信号为所述第二寄存器中存储的所述第五选择器的输出信号,所述第二加减器的第二路输入信号为所述第六选择器的输出信号,所述第二加减器的片选控制信号为所述方向选择单元的输出信号;所述第二加减器用于:若所述第二加减器的片选控制信号为正方向,则将所述第二加减器的两路输入信号相加后输出;若所述第二加减器的片选控制信号为负方向,则将所述第二加减器的两路输入信号相减后输出;所述第二加减器的输出信号为所述x坐标迭代单元在本次迭代过程输出的x坐标。
34、在一个实施例中,所述y坐标迭代单元包括第七选择器、第三寄存器、第三移位操作器、第四移位操作器、第八选择器和第三加减器;其中:
35、所述第七选择器的第一路输入信号为所述初始坐标位置中的y坐标,所述第七选择器的第二路输入信号为上一次迭代过程输出的y坐标;所述第七选择器用于:在第一次迭代过程将所述第七选择器的第一路输入信号输出,在除了第一次之外的其他迭代过程中将所述第七选择器的第二路输入信号输出;
36、所述第三寄存器,与所述第七选择器连接,用于对所述第七选择器的输出信号进行存储;
37、所述第三移位操作器,与所述x坐标迭代单元连接,用于将所述x坐标迭代单元在上一次迭代过程输出的x坐标进行移位操作,且移位距离为本次迭代对应的迭代次数i;
38、所述第四移位操作器,与所述第三移位操作器连接,用于将所述第三移位操作器输出的移位结果进行移位操作,且移位距离为1;
39、所述第八选择器连接至所述第三移位操作器和所述第四移位操作器,所述第八选择器的第一路输入信号为所述第三移位操作器的输出信号,所述第八选择器的第二路输入信号为所述第四移位操作器的输出信号,所述第八选择器的片选控制信号为所述第一控制信号,所述第八选择器用于:若所述第一控制信号为第一值,则输出所述第八选择器的第一路输入信号;若所述第一控制信号为第二值,则输出所述第八选择器的第二路输入信号;
40、所述第三加减器连接至所述第三寄存器和所述第八选择器,所述第三加减器的第一路输入信号为所述第八选择器的输出信号,所述第三加减器的第二路输入信号为所述第三寄存器中存储的所述第七选择器的输出信号,所述第二加减器的片选控制信号为所述旋转方向选择电路针对上一次迭代过程输出的旋转方向的反方向;所述第三加减器用于:若所述第三加减器的片选控制信号为正方向,则将所述第三加减器的两路输入信号相加后输出;若所述第三加减器的片选控制信号为负方向,则将所述第三加减器的两路输入信号相减后输出;所述第三加减器的输出信号为所述y坐标迭代单元在本次迭代过程输出的y坐标。
41、在一个实施例中,所述解码器具体用于:若坐标系类型为圆形坐标系,则所述第一控制信号为第一值;若所述坐标系类型为双曲坐标系,则所述第一控制信号为第二值;若所述表示方式为向量表示方式,则所述第二控制信号为所述第一值,若所述表示方式为旋转表示方式,则所述第二控制信号为所述第二值。
42、在一个实施例中,所述待实现初等函数包括如下至少一项:
43、在圆形坐标系下且基于向量表示方式的正弦sin函数和余弦cos函数;
44、在圆形坐标系下且基于旋转表示方式的反正切arctan函数;
45、在双曲坐标系下且基于向量表示方式的双曲正弦sinh函数和双曲正切cosh函数;
46、在双曲坐标系下且基于旋转表示方式的自然对数ln和平方根sqrt函数。
47、本发明实施例提供的初等函数的硬件实现系统,系统中包括解码器和运算器,解码器对控制指令解析后可以得到坐标系类型、坐标旋转数字计算方法的表示方式和待实现初等函数,从而根据所述坐标系类型确定第一控制信号,根据所述表示方式确定第二控制信号,根据所述待实现初等函数确定初始参数,将确定的第一控制信号、第二控制信号和初始参数输入到运算器中。运算器中包括选择器和加减器等多个电路组件,将第一控制信号、第二控制信号作为电路组件的片选信号,在多路输入信号中选择输出信号,再将多个电路之间的输出信号进行逻辑运算,至此可以实现待实现初等函数的计算逻辑。运算器在上述逻辑运算中以所述初始参数为基础进行运算。本发明实施例通过硬件实现电路来代替软件的方式实现初等函数,可以避免软件方式的缺点,提高运算效率,减少消耗的计算资源。
本文地址:https://www.jishuxx.com/zhuanli/20240730/194551.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。