欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    《汇编语言优化》PPT课件.ppt

    • 资源ID:5541241       资源大小:1.50MB        全文页数:57页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《汇编语言优化》PPT课件.ppt

    BIT/TI,第八讲 汇编语言优化,1,第八讲 汇编语言优化,BIT/TI,第八讲 汇编语言优化,2,学习内容,描述各种优化方法使用字访问优化点积代码使用软件流水手工优化汇编循环,BIT/TI,第八讲 汇编语言优化,3,题目,一、优化方法简介二、并行指令三、填充延迟间隙四、展开循环五、字长优化(使用LDW)六、各优化方法小结七、软件流水八、软件流水步骤九、各种优化总结,BIT/TI,第八讲 汇编语言优化,4,一、优化方法简介,使用并行指令用有用的指令(取代NOP)填充延迟间隙循环展开字长优化(使用LDW)软件流水,BIT/TI,第八讲 汇编语言优化,5,二、使用并行指令,BIT/TI,第八讲 汇编语言优化,6,使用并行指令,哪些指令可以并行?,BIT/TI,第八讲 汇编语言优化,7,并行指令,哪些指令可以并行?两条取指令并行:放“|”在第二个ldh前.d1改为.d2,A改为B,BIT/TI,第八讲 汇编语言优化,8,并行注意的问题,例如:ADD使用原来的A4值如果在循环中:循环之前清A4 不要忘记最后的累加,BIT/TI,第八讲 汇编语言优化,9,并行指令小结,首先使代码正确执行,然后试图用并行指令。并行代码执行速度快,但必须小心确保代码按所期望执行。在循环代码中,使用软件流水可执行并行指令。,BIT/TI,第八讲 汇编语言优化,10,并行优化结果,BIT/TI,第八讲 汇编语言优化,11,三、填充延迟间隙,BIT/TI,第八讲 汇编语言优化,12,填充延迟间隙,NOP:相当于未优化为了消除NOP,如何调整指令顺序?,BIT/TI,第八讲 汇编语言优化,13,填充延迟间隙,Sub和b指令移到ldh指令后:LD的nop由4降为2B的nop被消除,BIT/TI,第八讲 汇编语言优化,14,填充延迟间隙优化结果,BIT/TI,第八讲 汇编语言优化,15,四、展开循环,BIT/TI,第八讲 汇编语言优化,16,循环代码举例,BIT/TI,第八讲 汇编语言优化,17,例1,去掉了第四次循环开销,BIT/TI,第八讲 汇编语言优化,18,例2,循环次数减少一半,BIT/TI,第八讲 汇编语言优化,19,例3,消除了所有循环开销,BIT/TI,第八讲 汇编语言优化,20,循环展开举例小结,BIT/TI,第八讲 汇编语言优化,21,五、字长优化(使用字访问半字数据),BIT/TI,第八讲 汇编语言优化,22,使用LDH的点积,BIT/TI,第八讲 汇编语言优化,23,使用LDW进行优化,BIT/TI,第八讲 汇编语言优化,24,使用LDW/MPYH,BIT/TI,第八讲 汇编语言优化,25,乘法指令小结,操作数可以是有符号的,也可以是无符号的乘法指令需一个延迟间隙4种基本乘法指令:,BIT/TI,第八讲 汇编语言优化,26,六、各种优化方法小结,BIT/TI,第八讲 汇编语言优化,27,七、软件流水,BIT/TI,第八讲 汇编语言优化,28,软件流水,产生高性能循环代码 执行并行指令 填充延迟间隙 功能单元使用最大化由开发工具产生 由编译器选项-o2或o3引入 汇编优化器(输入文件使用.sa扩展名 而不是.asm)产生,BIT/TI,第八讲 汇编语言优化,29,为什么学习软件流水?,知道开发工具是如何产生优化代码的 读懂开发工具的输出代码 检查开发工具效率手工优化汇编代码了解软件流水的工作情况,BIT/TI,第八讲 汇编语言优化,30,代码举例,这个循环执行5次需要多少周期?(不考虑延迟间隙)周期,BIT/TI,第八讲 汇编语言优化,31,非流水代码,BIT/TI,第八讲 汇编语言优化,32,流水代码,BIT/TI,第八讲 汇编语言优化,33,软件流水中的术语,填充(建立循环)循环(单周期循环3次迭代)排空(完成最后操作),BIT/TI,第八讲 汇编语言优化,34,流水代码,BIT/TI,第八讲 汇编语言优化,35,八、软件流水步骤,BIT/TI,第八讲 汇编语言优化,36,软件流水步骤,.用C语言实现算法并验证.写C6x线性汇编代码.画相关图.分配功能单元和寄存器.建编排表.将编排表转换为C6x汇编代码,BIT/TI,第八讲 汇编语言优化,37,第一步:用C语言实现算法并验证,BIT/TI,第八讲 汇编语言优化,38,第二步:写C62xx线性汇编代码,线性汇编不需要指出和考虑:功能单元寄存器延迟间隙并行指令,BIT/TI,第八讲 汇编语言优化,39,简单估计,BIT/TI,第八讲 汇编语言优化,40,第三步:画相关图,相关图中的名词术语,BIT/TI,第八讲 汇编语言优化,41,画相关图步骤:,、画节点(包括:指令、结果、通路)、在通路旁标出父指令执行周期、安排功能单元 安排必须的功能单元 节点分配到A、B两侧 对所有节点分配功能单元,平分.D、.S、.M最小化交叉通路平衡功能单元仲裁,BIT/TI,第八讲 汇编语言优化,42,画点积相关图1.画节点(1),BIT/TI,第八讲 汇编语言优化,43,画点积相关图1.画节点(2),循环传递通路,BIT/TI,第八讲 汇编语言优化,44,画点积相关图1.画节点(3),BIT/TI,第八讲 汇编语言优化,45,画点积相关图2.标出父指令执行周期,BIT/TI,第八讲 汇编语言优化,46,画点积相关图3.安排功能单元(1),BIT/TI,第八讲 汇编语言优化,47,画点积相关图3.安排功能单元(2),BIT/TI,第八讲 汇编语言优化,48,画点积相关图3.安排功能单元(3),BIT/TI,第八讲 汇编语言优化,49,第四步:分配功能单元,根据功能单元和交叉通路的使用,可在单周期循环内编排这些指令。,BIT/TI,第八讲 汇编语言优化,50,第四步:分配寄存器,BIT/TI,第八讲 汇编语言优化,51,第五步:建编排表(1),BIT/TI,第八讲 汇编语言优化,52,循环填充长度,抽出最长数据通路计算长度:5+2+1=8周期编排表列出0-7周期填充:第0-6周期循环:第7周期,编排周期057,BIT/TI,第八讲 汇编语言优化,53,填写指令建议,从最长数据通路开始尽可能早开始(第0周期)一旦确定指令执行的周期,在这以后的周期内,连续发生各次迭代倒推跳转和循环计数指令的发生周期,BIT/TI,第八讲 汇编语言优化,54,第五步:建编排表(2),BIT/TI,第八讲 汇编语言优化,55,第六步:写C62xx汇编代码,执行40次,BIT/TI,第八讲 汇编语言优化,56,九、各种优化总结,BIT/TI,第八讲 汇编语言优化,57,小结,学习了五种优化方:使用并行指令填充延迟间隙展开循环字长优化软件流水手工实现软件流水过程,使用并行指令填充延迟间隙,

    注意事项

    本文(《汇编语言优化》PPT课件.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开