电子发烧友App

硬声App

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

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

3天内不再提示
电子发烧友网>电子资料下载>可编程逻辑>FPGA/ASIC>探究在FPGA上实现H.264/AVC 视频编码的标准

探究在FPGA上实现H.264/AVC 视频编码的标准

2017-11-06 | rar | 0.4 MB | 次下载 | 1积分

资料介绍

 探究在FPGA上实现H.264/AVC 视频编码的标准尽管H.264/AVC承诺将此已有视频编码标准具有更高的编码效率,它仍为系统架构师、DSP 工程师和硬件设计人员带来了巨大的工程设计挑战。H.264/AVC 标准引入了自 1990 年推出 H.261 之后视频编码标准演进过程中出现的大部分重大改变和算法间断 (algorithmic discontinuities)。
  实现 H.264/AVC 编码标准所需的算法计算复杂度、数据局部性,以及算法和数据并行性,常常会直接影响系统级别的整体架构决策。这种影响又会决定在广播、视频编辑、电话会议以及消费电子领域开发H.264/AVC解决方案所需的最终开发成本。
  复杂度分析
  为了实现实时 H.264/AVC 标准清晰度 (SD) 或高清晰度 (HD) 分辩率编码解决方案,系统架构师常常需要使用多个 FPGA 和可编程 DSP。为了说明所需计算的巨大复杂度,先探讨一下 H.264/AVC 编码器的典型运行时的周期要求。H.264/AVC 编码器基于由联合视频工作组(JVT)提供的软件模型,该工作组由来自 ITU-T 的视频编码专家组 (VCEG) 和 ISO/IEC 的运动图像专家组 (MPEG) 的专家组成。
  采用Intel的VTune软件,在 Intel Pentium III 1.0 GHz 通用 CPU、512 MB 内存的平台上运行,按照主要配置编码解决方案实现 H.264/AVC SD,需要约 1,600 BOPS(每秒十亿次运算)。
  表 1 显示了基于 Pentium III 通用处理器架构的 H.264/AVC 编码器的复杂度的典型情况。请注意,在表 1 中,运动估计、宏块/块处理(包括模式决策),以及运动补偿模块是基本候选硬件加速单元。
  然而,单凭计算复杂度并不能决定一个功能模块是否应映射为硬件或是使其保持为软件。为了评估在由 FPGA、可编程 DSP或通用主处理器混合组成的平台上实现 H.264/AVC 编码标准时,软件和硬件分割的可行性,需要分析将会影响整体设计决策的大量架构问题。
  数据局部性
  在同步设计中,按照特定的顺序和粒度访问内存,同时根据延迟、总线竞争、对准、DMA 传输率以及所用内存的类型(如 ZBT 内存、SDRAM和 SRAM 等)使时钟周期数降至最小的能力至关重要。数据局部性问题主要是由数据单元和算术单元(或处理引擎)之间的物理接口体现的。
  数据并行性。
  大多数信号处理算法都是对高度并行的数据进行操作(如 FIR 滤波)。单指令多数据 (SIMD) 和向量处理器对可被并行化或做成向量格式(或长数据宽度)的数据具有较高的处理效率。
  FPGA可通过提供大量块 RAM 支持大量极高总计带宽要求来实现这一点。在新的 Xilinx Virtex-4 SX器件中,块 RAM 的数量与 Xtreme DSP的逻辑片数紧密匹配(例如,SX25具有128个块RAM,128个DSP逻辑片;SX35具有192个块 RAM,192个DSP 逻辑片;SX55具有320个块 RAM,512个DSP逻辑片)。
  信号处理算法并行机制。
  在典型的可编程 DSP 或通用处理器中,信号处理算法并行机制通常是指指令级并行 (ILP)。超长指令字 (VLIW) 处理器是此类采用ILP的机器中的一个例子,它将多条指令(ADD、MULT 及 BRA)组合起来,在一个周期内执行。处理器中高度流水线化的执行单元也是实现并行机制的典型硬件示例。现在已经有可编程DSP采用这种架构(如TI的TMS320C64x)。
  但是,并非所有算法都能使用这种并行机制。递归算法,如 IIR 滤波、MPEG 1/2/4 中的变长编码 (VLC)、上下文自适应变长编码 (CAVLC),以及 H.264/AVC 中的上下文自适应二进制算术编码 (CABAC),当映射到这些可编程 DSP 时,均无法达到最优且效率不高。这是因为数据递归阻碍了 ILP 的有效利用。作为取代方案,可在FPGA 结构中有效地构建专用硬件引擎。
  计算复杂度。
  可编程 DSP 受计算复杂度的限制,可通过处理器的时钟速率来度量。在FPGA中实现的信号处理算法通常为计算密集型算法。其中的例子有运动估计中的绝对差值和 (SAD) 引擎以及视频缩放。
  通过将这些模块映射到 FPGA 中,主处理器或可编程DSP就可有额外的周期来处理其他算法。此外,FPGA 结构还可以具有多时钟域,从而允许选择性硬件模块根据各自的计算要求使用独立的时钟速度。
下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

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

本月

  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. 未知  |  30320次下载  |  免费
  13. 7Multisim 10下载Multisim 10 中文版
  14. 0.00 MB  |  28588次下载  |  免费
  15. 8开关电源设计实例指南
  16. 未知  |  21539次下载  |  免费

总榜

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