- 主题:有谁介绍一下RTOS编程的精髓
现在用新的mcu就不需要考虑实不实时的问题,力大砖飞,用典型的160Mhz risc-v想不实时都很难。
实时只是一个相对概念,高并发的用FPGA就不讨论了,用mcu的话,100us以内我都认为是实时的。对于现在mcu主频来说太轻易了。
用FreeRTOS就行了,因为现在mcu主频太高了,基本上程序瞎写也不会慢,不需要做什么优化。
【 在 Qlala 的大作中提到: 】
:
: 1 如果用了RTOS,是不是软件自动就RT了,剩下只需要不要把单个操作搞得太耗时?
: 2 Free RTOS /Vx /RTLinux 这几种分别适合用在什么场景
: 3 RT Linux的开源实现 主流是哪个 preempt-rt?可用度如何,实时性如何
#发自zSMTH@LYA-AL00
--
FROM 113.70.182.*
要看是什么ARM核,如果是M核和R核的多核,可以在RTOS里指定线程使用哪个核心,你一个程序又不是每个任务都要求高实时性,把要求高实时的任务定高优先级,合理分配到其中1个核上跑就行了。
四核以上的MCU一般用的是A核,A核是超标量处理器架构了,包括了指令多发射,乱序执行,分支预测和CACHE的命中率问题,架构上就不是实时的。CPU单元是在CACHE里随机抽几条指令来执行,但指令用到的数据又不一定在CACHE里,一但D-CACHE没命中,主内存又跑在异步上,那数据就可能要等上二十几个周期,所以A核跑实时程序要看1% LOW和0.1% LOW。但还是那句话,力大砖飞,只要A核和内存的频率够高,就算CACHE没命中,等上50个周期,0.1% LOW照样能在100us里跑出来,那也是实时的。
ARM为了处理低频MCU力不够大的问题,设计了TCM,可以把实时性要求高的任务放到TCM里跑,其它低实时性的放CACHE里跑,或者大小核架构,一个A核带一个M核。
你要是在13代酷睿上跑linux,8核5GHz,根本不用考虑实时性,怎么跑都是实性的。
【 在 Qlala 的大作中提到: 】
: 多核并行效果如何
: 双核四核arm 貌似很普及了
--
FROM 14.223.163.*
采样和主题是同一个问题?
【 在 dismoon 的大作中提到: 】
: 哦?那你精准采样试试力大砖飞?
:
--
FROM 14.212.78.*
采样需CPU参与吗?你用旧MCU中断信号单点采样,完全是因为内存不够,我力大砖飞可以连续采样,传感器采样,经过ADC后的采样数据是DMA直接全部搬到内存缓冲里,cpu足够快甚至可以处理所有的采样信号。用RISC架构只是处理数据滞后,连续采样的时间精度比中断信号采样高得多。
【 在 teleheart 的大作中提到: 】
:
: 精准采样要求时间精度高,大力飞砖不一定赶得上那个时间点
:
: 【 在 Oriphia 的大作中提到: 】
: : 采样和主题是同一个问题?
#发自zSMTH@LYA-AL00
--
FROM 112.96.102.*