打印
[STM32F4]

ucosIII 的浮点任务相关

[复制链接]
2017|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ticomi|  楼主 | 2015-4-20 09:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我现在的系统中有多个任务,但是只有一个任务是需要浮点运算的,其余任务均不需要。不知道这样是否可以?我现在的问题总是出现在浮点运算中,偶尔出现浮点运算失败,也就是出现运算乱码的情况,分析下来就是浮点运算任务中的问题。

请问ucosiii中可以这样设计吗?

非常感谢!
沙发
戈卫东| | 2015-4-20 09:14 | 只看该作者
也许还有其他任务使用了FPU只不过你不知道

使用特权

评论回复
板凳
ticomi|  楼主 | 2015-4-20 09:23 | 只看该作者
戈卫东 发表于 2015-4-20 09:14
也许还有其他任务使用了FPU只不过你不知道

这个倒是非常有可能!这样的设计理论上有没有问题呢?假设其它任务都不使用浮点寄存器的话?

非常感谢!!

使用特权

评论回复
地板
aozima| | 2015-4-20 09:26 | 只看该作者
线程切换上下文时,根据 lazy 特性只对使用了FPU的线程进行压栈

使用特权

评论回复
5
ticomi|  楼主 | 2015-4-20 09:39 | 只看该作者
aozima 发表于 2015-4-20 09:26
线程切换上下文时,根据 lazy 特性只对使用了FPU的线程进行压栈

也就是这样设计是可以的,但是在OSIII中需要指定每个任务是否需要压栈FPU的,如果在一个任务中不小心使用了FPU而又没有设计为压栈的话,肯定会出现错误的,我想是这样的。

我现在的任务中偶然出现浮点计算错误的问题,非常头疼!不知道原因在哪里?

谢谢!

使用特权

评论回复
6
qbasicljx| | 2015-4-20 09:46 | 只看该作者
都入栈了

使用特权

评论回复
7
aozima| | 2015-4-20 11:05 | 只看该作者
ticomi 发表于 2015-4-20 09:39
也就是这样设计是可以的,但是在OSIII中需要指定每个任务是否需要压栈FPU的,如果在一个任务中不小心使用 ...

lazy 啥意思您查过没?ARM对应的文档看过没?
浮点还要求栈8字节对齐。

使用特权

评论回复
8
ticomi|  楼主 | 2015-4-20 11:27 | 只看该作者
aozima 发表于 2015-4-20 11:05
lazy 啥意思您查过没?ARM对应的文档看过没?
浮点还要求栈8字节对齐。

初步看了下资料,真的不是特别了解,但是我采用的是官方提供的移植版本,我刚刚采用查看的方式看到真不是浮点寄存器的问题,是原始采集数据出现了混乱导致的。

还是非常感谢!

使用特权

评论回复
9
mmuuss586| | 2015-4-20 12:15 | 只看该作者
ticomi 发表于 2015-4-20 11:27
初步看了下资料,真的不是特别了解,但是我采用的是官方提供的移植版本,我刚刚采用查看的方式看到真不是 ...

:loveliness:
即使原始数据出现问题,那也不该是乱码啊;
估计你程序基本的限制都没做吧;

使用特权

评论回复
10
mmuuss586| | 2015-4-20 12:15 | 只看该作者
ticomi 发表于 2015-4-20 11:27
初步看了下资料,真的不是特别了解,但是我采用的是官方提供的移植版本,我刚刚采用查看的方式看到真不是 ...

:loveliness:
即使原始数据出现问题,那也不该是乱码啊;
估计你程序基本的限制都没做吧;

使用特权

评论回复
11
ticomi|  楼主 | 2015-4-20 12:25 | 只看该作者
mmuuss586 发表于 2015-4-20 12:15
即使原始数据出现问题,那也不该是乱码啊;
估计你程序基本的限制都没做吧; ...

是DMA的buffer中数据出现混乱,有限制,采用了多个状态机等辅助判断系统状态等。主要出现现在系统提高了外部ADC的转换速率后,DMA则很容易出现这个问题。非常头疼!

使用特权

评论回复
12
fyliuxue| | 2015-4-20 13:00 | 只看该作者
全部入栈,要不很难把握

使用特权

评论回复
13
ticomi|  楼主 | 2015-4-20 13:10 | 只看该作者
fyliuxue 发表于 2015-4-20 13:00
全部入栈,要不很难把握

是有些难以把握,不过再次测试发现问题不是浮点寄存器等造成的问题。只有一处涉及浮点运算,其余均不设计浮点功能。所以问题点还是不在这个FPU上。

使用特权

评论回复
14
zh113214| | 2015-4-21 20:51 | 只看该作者
感觉不是很好做。。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

50

主题

852

帖子

4

粉丝