电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>DSP>嵌入式程序中的指令数据存储及读取设计分析

嵌入式程序中的指令数据存储及读取设计分析

2017-10-23 | rar | 0.3 MB | 次下载 | 1积分

资料介绍

 在当今的嵌入式多媒体应用中,系统控制(通常的MCU作用)和信号处理(通常的DSP作用)之间的交互性不断增强。现在推出的一种嵌入式媒体处理器能够同时处理MCU和DSP的任务,从而将那些熟悉用MCU方式进行应用开发的C程式师带入一个新的领域,其中对代码和资料流程的智慧管理会显着提高系统的性能。这对于採用“已经掌握”的编程方法和简单的使用指令高速缓冲记忆体(cache, 简称快取记忆体)和资料快取记忆体来管理这些资料流程的程式师很有吸引力。然而,对媒体处理器的高性能直接记忆体访问(DMA)能力应认真地考虑。因爲懂得在这些应用中对使用快取记忆体和DMA进行权衡将有助于更好地理解如何编程来优化系统。
  记忆体结构——对记忆体管理的要求
  当今的媒体处理器具有分级的记忆体结构,用来平衡几种不同容量和性能等级的记忆体。通常,离核心处理器最近的记忆体(称爲“1级”或“L1”记忆体)以全时钟速率工作,通常支援单时钟周期指令的运行 了高效地利用记忆体匯流排的带宽,L1记忆体一般分爲指令段和资料段。通常,该记忆体被配置成SRAM或快取记忆体。对于那些许可权最高的应用,在一个单时钟周期内就能够访问片内SRAM。对于要求较长代码的系统,则可以提供附加的片内和片外记忆体——同时增加了等待时间。
  这种层次结构本身作用有限 了适应仅配合低速外部记忆体的大部分应用,当今的高速处理器却以很低的速度降级使用 了提高性能,程式师可以人工地选择将关键代码移入或移出内部SRAM。另外,将资料快取记忆体和指令快取记忆体加入这种结构使程式师能够更方便地人工管理外部记忆体。快取记忆体减少了将指令和资料流程送入处理器内核的人工管理传送。这样程式师无需考虑如何把资料和指令流送入处理器内核,从而极大地简化了编程模式。
  指令记忆体管理——快取记忆体还是DMA?
  对嵌入式媒体处理器市场的快速调查表明,核心处理器的速度大于或等于600 MHz。尽管这种性能可以开闢许多新应用,但只有在从内部L1记忆体中读取代码时才能达到这种最高速度。当然,理想嵌入式处理器可以具有无限容量的L1记忆体,但这不切实际。因此,程式师在爲其实际系统优化记忆体和资料流程时,必须考虑几种可选方案以充分利用置于处理器内的L1记忆体。让我们来考虑一下其中的一些方案。
  第一种方案同时也是最直接的方案,目标应用代码可以完全放入L1指令记忆体。对于这种情况,程式师只需将应用代码直接映射到该记忆体空间,无需特殊操作。这就是爲什麽包含MCU和DSP两种功能的媒体处理器必然在这种体系架构支援的代码密度方面具有独特优势的原因。
  第二种方案,採用一种快取记忆体机构允许程式师访问更大容量、较低成本的外部记忆体。根据需要,这种快取记忆体可以作爲一种将代码自动送入L1指令记忆体的方法。这种方法的主要优点是程式师无需管理代码移入和移出快取记忆体。当执行线性代码时,这种方法达到最好的效果。当执行非线性代码时,快取记忆体线可能会被替换得太频繁,以致于不能提高即时性能。
  指令快取记忆体实际上具有两个作用。第一,它以更有效率的方式从外部记忆体中预取指令。第二,由于快取记忆体一般使用某种“最近使用的指令”的演算法,所以那些用得最频繁的指令往往就被保持在快取记忆体中。这样做很有好处,因爲存在L1快取记忆体中的指令能够在一个单时钟周期内完成,就像指令在L1 SRAM中一样。也就是说,如果该代码一旦被取走,并且还没有被覆盖,即准备在下一个指令周期执行该代码。
        嵌入式程序中的指令数据存储及读取设计分析
  嵌入式程序中的指令数据存储及读取设计分析
  大多数严格的即时程式师一般不相信这种快取记忆体能带来最佳的系统性能。他们的理由是如果一系列指令在需要执行的时候却没有在快取记忆体内,将导致影响性能。採用快取记忆体锁定机构能弥补这个问题。一旦将关键的指令装入快取记忆体,快取记忆体线就被锁住,因此指令不会被覆盖。这样,程式师就能够在快取记忆体中保持他们所需指令,并且使该快取记忆体机构管理次要指令。
  最后一种方案,通过使用一个独立于处理器内核的DMA通道将代码移入或移出L1记忆体。当该处理器内核在记忆体的一个存储块运行时,该DMA将代码送入下一个存储块去执行。这种方案通常被称爲一种覆盖技术。
  虽然通过DMA将覆盖代码送入L1指令记忆体可以比快取记忆体方式提供更多的关键指令,但其代价是要增加程式师的工作量。换句话,程式师需要预先安排一种覆盖代码的方法和恰当地配置DMA通道。对于一种能够做有价值的额外管理程式的详细计划,这种性能仍然会提高。
  
下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1电子电路原理第七版PDF电子教材免费下载
  2. 0.00 MB  |  1489次下载  |  免费
  3. 2单片机典型实例介绍
  4. 18.19 MB  |  91次下载  |  1 积分
  5. 3S7-200PLC编程实例详细资料
  6. 1.17 MB  |  27次下载  |  1 积分
  7. 4笔记本电脑主板的元件识别和讲解说明
  8. 4.28 MB  |  18次下载  |  4 积分
  9. 5开关电源原理及各功能电路详解
  10. 0.38 MB  |  9次下载  |  免费
  11. 6基于AT89C2051/4051单片机编程器的实验
  12. 0.11 MB  |  4次下载  |  免费
  13. 7基于单片机和 SG3525的程控开关电源设计
  14. 0.23 MB  |  3次下载  |  免费
  15. 8基于单片机的红外风扇遥控
  16. 0.23 MB  |  3次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234313次下载  |  免费
  3. 2PADS 9.0 2009最新版 -下载
  4. 0.00 MB  |  66304次下载  |  免费
  5. 3protel99下载protel99软件下载(中文版)
  6. 0.00 MB  |  51209次下载  |  免费
  7. 4LabView 8.0 专业版下载 (3CD完整版)
  8. 0.00 MB  |  51043次下载  |  免费
  9. 5555集成电路应用800例(新编版)
  10. 0.00 MB  |  33562次下载  |  免费
  11. 6接口电路图大全
  12. 未知  |  30319次下载  |  免费
  13. 7Multisim 10下载Multisim 10 中文版
  14. 0.00 MB  |  28588次下载  |  免费
  15. 8开关电源设计实例指南
  16. 未知  |  21539次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935053次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537791次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420026次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234313次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233045次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191183次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183277次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138039次下载  |  免费