论文部分内容阅读
提高应用的执行效率、增强系统的安全性以及降低系统的能量开销是嵌入式系统设计者追求的重要目标。半导体技术和计算机体系结构的快速发展,推动了嵌入式系统硬件平台性能的大幅提升。然而,为了更有效地提高应用的执行效率,还需要对嵌入式软件进行面向硬件体系结构的优化。在嵌入式应用日趋网络化的背景下,嵌入式系统也面临着巨大的安全威胁。对于构建安全的嵌入式系统来说,如何取得安全性与实时性、能量开销之间的平衡是一个具有挑战性的课题。同时,随着嵌入式移动应用和微型嵌入式系统的发展,降低系统的能量开销已经成为了嵌入式领域的一个研究热点。本论文主要对嵌入式系统性能优化中的一些具体问题展开研究。首先,我们以优化片上存储器的使用效率为切入点,对面向新型处理器和存储器结构的软件性能优化技术进行了深入的研究。然后,研究了面向嵌入式实时系统的安全优化问题。最后,以传感器网络节点为目标平台,对能量受限系统的安全扩展问题进行了研究。本论文的主要贡献有以下四个方面:(1)研究了面向多处理器片上系统(MPSoC)的变量划分和任务调度算法。首先,我们设计了一种循环数据流图模型LDFG,以描述任务对变量的访问以及循环迭代之间任务的依赖关系。然后,提出了基于变量访问频率的快速变量划分算法HAFF。通过引入“潜在关键路径”的概念,又提出了面向全局性能优化的变量划分算法GVP。最后,我们还设计了一种具有变量划分功能的旋转调度算法RSVP。该算法的优越性在于,它能够充分发挥MPSoC及其存储子系统的并行性优势,从而大幅地提高了应用的执行效率。(2)研究了面向多模块存储器结构(Multi-module Memory)的代码优化问题。提出了一种基于整数线性规划的优化方法PEOS,解决了指令调度、变量划分和存储器工作模式设置等问题。该方法的优越性在于,它可以使代码的执行效率或存储器的能量开销达到最优。在研究PEOS方法的过程中,我们提出了两个通用性的定理,解决了将“c=0 iff r=0”和“c=0 iff r=1”两类非线性条件线性化的问题。同时,为了提高PEOS的实用性,我们又提出了两种加速PEOS求解的方法:调度窗口限定法和基于可变邻域搜索的近似算法VNS-ILP。其中,调度窗口限定法能确保解的全局最优性,而VNS-ILP能在很短的计算时间内求得近似最优解。(3)研究了面向嵌入式实时系统的最优安全策略生成方法。首先,我们设计了一种安全相关的任务图模型STG,它能同时描述任务的安全需求、任务间的依赖关系以及实时性约束。其次,对多种基础安全算法的执行效率和安全强度进行了量化评估,并在此基础上建立了一种评价系统安全性的量化模型。然后,提出了一种基于ILP的最优安全策略生成方法ILPOS。该方法的特点是能确保任务的实时可调度性和安全策略的最优性。最后,针对单一路径和树形结构的STG,提出了两种多项式时间复杂度的最优安全策略生成算法DPOS-path/tree。(4)以传感器网络节点为目标平台,通过实验的方法研究了安全算法在能量受限系统中的应用。首先,我们设计了一种微功耗测量电路,并对多种安全算法在CrossBow和Ember两种节点上的能量开销进行了测量。然后,提出了降低安全算法能量开销的代码优化方法。最后,基于对能量测试结果的分析,提出了一些在传感器节点等能量受限系统中应用安全算法的原则,如算法选择、参数配置等。