当前位置: 首页 > news >正文

CPULOAD建模设计

背景:
1.中断周期的建模
在单片机中中断和任务是两类处理数据的主要形式,中断的形式主要分为周期和时间两类。比如,LIN中断是根据调度表的周期去响应的,滚轮这种则是根据外部事件响应的。
2.响应时间的建模
中断的响应时间建模和任务的响应时间的建模。

设计:

  1. 实际测量或者理论估算。其中实际测量则是两次最短的事件周期,理论估算可用于更为严谨的计算。
  2. 中断的的响应事件建模
    ① 测量中断的WCET
    ② 根据中断类型 Cat1/Cat2 计算Effective WCET,一般Cat1会设计成2us,Cat2则是4us,当然这些参数取决于使用的操作系统。Cat2因为涉及到os调度时间会长于Cat1
    ③ ResponseTime的时间建模:
    ⅠWCET时间
    Ⅱ阻塞时间 max(B, I),其中B为critical section区域的最大阻塞时间,这个可以根据实际测量去设置.I为所有优先级低于目标任务的其他任务抢占和延迟目标任务的总时间。注意critical section一般会被封装供应用调用。
    Ⅲ高优先级抢占时间,即高优先级任务的Effective WCET
  3. 任务的响应时间建模
    ① 任务的WCET
    ② 当前任务的响应时间被除所有优先级高于目标任务的其他任务的周期时间,值再乘以其他任务的WCET时间。可理解为能被抢占的次数乘以抢占的时间。
    ③ 把所有中断的占比乘以当前任务的WCET作为中断的裕量

结论:
基于标准RTA的迭代公式我们可以将复杂的场景抽象,计算出可视化的cpuload数据,帮助我们在实际工程项目中分析问题优化架构。

\[R_i = B_i + C_i + \sum_{J \in HP(i)} C_j \cdot \left\lceil \frac{R_i}{P_j} \right\rceil \]

R Response time
B Blocking time
C Execution time
p Period
HP() Higher priority than
i,j Task indices

不一定完全遵循该式,但是计算的数学模型可以依据具体项目参考优化。

http://www.jsqmd.com/news/29360/

相关文章:

  • C 文件操作全解速览
  • Java记录类:简化数据载体的新选择
  • 第二次算法作业
  • NOIP 2025 游记 退役记
  • 一个万古常青的、小而美的输入法
  • 开始学深度学习!
  • 守护线程--daemon
  • 换一个思维解决问题:希望在转角
  • 条件表达式中的赋值问题
  • csp2025 总结
  • 2025 CSP
  • Jenkins-CICD项目自动化部署
  • 使用Stream API重构你的数据处理
  • js实现页面弹框,每天没个浏览器只在第一次访问会有弹框
  • [省选联考]追忆——题目背景美化
  • 多线程封装
  • 线程优先级
  • 使用 GeckoCircuits 设计 Buck 电源环路
  • 第k小的数的分治算法
  • Day29-C:\Users\Lenovo\Desktop\note\code\JavaSE\Basic\src\com\reflect
  • k8s-Pod中的网络通信(3)
  • 一个灵感:思维的断章
  • 第十届中国大学生程序设计竞赛 哈尔滨站(CCPC 2024 Harbin Site)
  • CSP-S 回顾
  • https://heylink.me/tizihacks/
  • 2025CSP-J游记
  • 通达信:引用函数 - Leone
  • 20231427田泽航第七周预习报告
  • CSP总结
  • AI泡沫再思考:技术革命与投资狂潮的真相