47、嵌入式系统编译优化与电源管理技术解析

嵌入式系统编译优化与电源管理技术解析

1. 编译器与时序分析的协调

如今,几乎所有可用的编译器都不包含时序模型。因此,实时软件的开发通常需要采用迭代方法:使用不了解任何时序信息的编译器对软件进行编译,然后使用如 aiT 这样的时序分析器对生成的代码进行分析。如果不满足时序约束,则必须更改编译器运行的某些输入,并重复该过程,这就是基于“试错”的实时软件开发方法。

这种方法存在几个问题:
- 所需的设计迭代次数最初是未知的。
- 该方法中使用的编译器是“优化”的,但除了代码大小之外,无法精确评估目标。
- 由于现代处理器复杂的时序行为,编译器编写者对其“优化”能改善代码质量的期望缺乏证据支持。
- 基于“试错”的实时软件开发要求设计者找到对编译器输入的适当修改,以使最终满足实时约束。

为避免这种“试错”方法,可以将时序分析集成到编译器中。多特蒙德工业大学开发的最坏情况执行时间感知编译器 WCC 就是基于这一目标。WCC 将时序分析器 aiT 集成到用于 TriCore 架构的实验性编译器中,其整体结构如下:

graph LR
    A[C 源代码] --> B[ICD - C 编译器基础设施]
    B --> C[高级中间表示 HL - IR]
    C --> D[优化 HL - IR]
    D --> E[代码选择器]
    E --> F[低级中间表示 LLIR]
    F --> G[LLIR2CRL 转换器]
    G --> H[aiT 时序分析器]
    H --> I[CRL2L
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值