1. 首页
  2. 课程学习
  3. 嵌入式
  4. DSP应用中编译选项的智能选择

DSP应用中编译选项的智能选择

上传者: 2022-12-22 17:14:28上传 PDF文件 441.43 KB 热度 8次

DSP应用中编译选项的智能选择www.EETchina.com DSP应用中编译选项的智能选择作者:CEVA公司编译器项目经理Eran Balaish摘要随着DSP处理器的能力越来越强大,可采用C编译器的代码部分在不断增加。不过,没有编程人员的协助,编译器是无法生成最优化的代码。为了最大地提高性能,编程人员必须利用各种编译选项功能来调节编译器。不幸的是,在DSP应用里,没有充分利用编译器调节能力的现象相当普遍。整个应用过程中,往往只利用一组相同的编译选项来进行编译。这种方法忽略了每一项功能的特殊需求。编译选项的智能选择可以大幅提高性能,例如可以大大减少代码量。在评估产品成本时,代码量通常是主要考虑因素,因为这对所需存储量有直接的影响。本文将介绍如何减少代码的使用量以及其它重要资源的消耗量。在指令周期数和代码量之间进行权衡,满足功能级的特殊要求为了更好地了解如何利用编译选项的智能选择来节省代码量,必须熟悉指令周期数与代码量之间的权衡取舍,这方面的实例是循环展开(loop-unrolling)和软件流水(SWP)的常用编译器优化技术。这种技术通过循环体的复制来进行循环展开,利用从循环语句内部到循环语句外部的某些指令的拷贝来实现SWP。当使用带有深度管线的多事件超长指令字(VLIW)处理器时,该技术显得非常有用。这时,SWP可中断循环语句内部的许多依赖关系,而循环展开能够大幅提高指令间并行性(ILP)。这里给出了简单的乘法与累加(mac)循环语句,以阐释循环展开和SWP。for(i=0;i<960;i++)

下载地址
用户评论