[发明专利]可重构星载计算机的正余弦函数IP核及其控制方法无效
| 申请号: | 201110107337.9 | 申请日: | 2011-04-27 |
| 公开(公告)号: | CN102156626A | 公开(公告)日: | 2011-08-17 |
| 发明(设计)人: | 潘瑞;于文进;兰盛昌;徐国栋;徐卓异;丁玉叶;马玉海;林晓辉 | 申请(专利权)人: | 哈尔滨工业大学 |
| 主分类号: | G06F7/548 | 分类号: | G06F7/548 |
| 代理公司: | 哈尔滨市松花江专利商标事务所 23109 | 代理人: | 岳泉清 |
| 地址: | 150001 黑龙*** | 国省代码: | 黑龙江;23 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 可重构星载 计算机 余弦 函数 ip 及其 控制 方法 | ||
技术领域
本发明涉及航天航空的电子技术领域。
背景技术
随着可重构技术在航天领域的应用不断开拓,基于FPGA(Field Programmable GateArray,现场可编程门阵列)的星载计算机已成为卫星电子系统的研究热点。使用以FPGA为核心的卫星电子系统可以降低微小卫星的体积、重量、功耗和成本,提高系统的功能密度。
姿态确定与姿态控制处理是星载计算机的重要功能之一,在传统的星载计算机中,多依靠调用C语言数学函数库中的标准sincos函数进行姿态控制算法的计算,其计算正余弦函数的时间高达2.5μs/次(精确到小数点后7位),可见软件计算正余弦函数的耗时很长。一般采用IP核计算正余弦函数的算法有查表法、多项式展开法、CORDIC算法及迭代法。其中查表法虽然也可以快速实现,但受限于存储设备的大小和速度;多项式展开法不受存储空间的限制,但是需要归一化后才能保证收敛,并且精度不高;CORDIC算法可以达到任意的精度,但其计算速度与计算精度有关,计算精度要求越高,结果收敛的速度就越慢;迭代法最快,但是迭代次数与计算角度有关,计算角度越大,所需的迭代次数就越多。迭代算法的原理是:对于任一输入角度θ,将其除以2N,当N足够大时,都会得到一个很小的角度α≈θ/2N。根据近似准则,可近似得到sinα≈α、cosα≈1。利用二倍角公式
sin2α=2×sinα×cosα
cos2α=(cosα+sinα)×(cosα-sinα)
迭代N次即可得到输入角度的正余弦值。
从原理可知:当角度不大时,较小的N便能满足近似赋值要求,迭代的次数较少,计算的速度很快。在迭代的过程中,可以使用两个寄存器存储计算结果,作为下次迭代的输入,而不需要额外的存储空间,并且可以同时计算出正余弦函数值。但迭代算法的初始赋值存在舍入误差,其对结果影响很大;迭代过程中保留位数有限,存在截断误差,随着迭代次数的增多,积累的误差增大;对于不同角度,需要的迭代次数不同,角度越大,需要的迭代次数越多,因此需要进一步优化。
发明内容
本发明解决为了现有迭代算法的初始赋值存在舍入误差,其对结果影响很大的问题;以及对于不同角度,需要的迭代次数不同,角度越大,需要的迭代次数越多的缺陷,而提出一种可重构星载计算机的正余弦函数IP核及其控制方法。
可重构星载计算机的正余弦函数IP核包括初始化模块1、右移N位模块2、1模块3、减法器4、加法器5、第一乘法器6、第二乘法器7、左移1位模块8、正弦值存储器9、余弦值存储器10和控制器11;初始化模块1的输入端为可重构星载计算机的正余弦函数IP核的角度η输入端,初始化模块1的两个输出端分别连接右移N位模块2的输入端和1模块3的输入端,1模块3的输出端连接余弦值存储器10的第一输入端,右移N位模块2的输出端连接正弦值存储器9的第一输入端,余弦值存储器10的输出端分别连接减法器4的第一输入端、加法器5的第一输入端和第一乘法器6的第一输入端,正弦值存储器9的输出端分别连接减法器4的第二输入端、加法器5的第二输入端和第一乘法器6的第二输入端,减法器4的输出端连接第二乘法器7的第一输入端,加法器5的输出端连接第二乘法器7的第二输入端,第二乘法器7的输出端连接余弦值存储器10的第二输入端,第一乘法器6的输出端连接左移1位模块8的输入端,左移1位模块8的输出端连接正弦值存储器9的第二输入端,正弦值存储器9的第四输出端为可重构星载计算机的正余弦函数IP核的正弦输出端,余弦值存储器10的第四输入端为可重构星载计算机的正余弦函数IP核的余弦输出端,控制器11的两个信号控制端分别连接正弦值存储器9的控制信号接收端和余弦值存储器10的控制信号接收端。
可重构星载计算机的正余弦函数IP核的控制方法的步骤如下:
步骤一:根据三角函数的周期性将角度η映射到[0,π/2]内成为输入角度θ,并设置符号位;
步骤二:进行预判断,判断输入的输入角度θ是否小于等于给定的临界角度β,是,即当β≥θ时,则直接利用sinθ=θ、cosθ=1进行赋值进入步骤四,否,即当β<θ≤π/2时,则进入步骤三;
步骤三:迭代运算:
步骤1:对输入的输入角度θ进行迭代运算,将输入角度θ除以2N,根据近似准则得到初始赋值:
sinα=θ/2N
cosα=1
n=0
其中,N表示总的迭代次数,n表示第n次迭代;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工业大学,未经哈尔滨工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110107337.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:发动机带泵结构
- 下一篇:一种压力油管及包括该油管的发动机





