基于高性能嵌入式处理器的H.264编码协处理器设计

基于高性能嵌入式处理器的H.264编码协处理器设计

论文摘要

随着设计工具、IP(Intellectual Property)核、设计方法学的发展,ESL设计方法越来越受重视。该设计方法利用已有的IP核,以系统级的设计和验证作为设计的起点,为以后的硬件设计提供参照模型。本文以ESL平台为载体,通过分析X.264开源编码器软件代码的时间代价,将其中处于底层、耗时久、计算量大、硬件易于实现、并行度高的部分用协处理器实现。设计了专用的协处理器指令集,包括去块效应滤波、DCT/IDCT变换、运动估计及运动补偿的部分算法。之后在系统平台下对设计进行了功能和性能的验证,并对实现后的系统性能提升进行了分析。实验表明,使用协处理器模块可以在保证功能完全正确,编码质量不受影响的情况下将编码器的运行时间节省50%以上,有效的加速了编码器的运行速度,是一种较为成功的硬件设计加速方法。

论文目录

  • 摘要
  • ABSTRACT
  • 1 绪论
  • 1.1 电子系统级设计背景
  • 1.2 介绍H.264/AVC 背景
  • 1.3 本课题研究意义
  • 1.4 本课题研究内容
  • 1.5 本文章节结构
  • 1.6 本章小结
  • 2 电子系统级设计方法(ESL)
  • 2.1 System C 语言简介
  • 2.2 ESL 设计特点
  • 2.3 ESL 设计方法
  • 2.4 ESL 设计工具的使用
  • 2.4.1 ARM ESL 在嵌入式软件开发中的应用
  • 2.4.2 ARM ESL 在软硬件协同设计中的作用
  • 2.5 本章小结
  • 3 H.264/AVC 相关技术
  • 3.1 H.264 的档次和级
  • 3.2 H.264 功能层次
  • 3.2.1 NAL 层
  • 3.2.2 VCL 层
  • 3.3 帧内预测原理
  • 3.4 帧间预测原理
  • 3.4.1 树状结构运动补偿
  • 3.4.2 运动估计
  • 3.4.3 运动矢量
  • 3.4.4 Hadamard 变换(SATD)
  • 3.5 整数变换
  • 3.6 去块效应滤波
  • 3.7 锯齿形(ZigZag)扫描和游程编码
  • 3.8 熵编码
  • 3.9 本章小结
  • 4 ARM926EJ-S 协处理器接口
  • 4.1 协处理器指令类型
  • 4.2 指令流水线分析
  • 4.3 基于ESL 平台的ARM 协处理器接口
  • 4.3.1 协处理器接口概述
  • 4.3.2 协处理器接口工作机制
  • 4.4 本章小结
  • 5 H.264 编码器协处理器架构设计
  • 5.1 H.264 开源编码器介绍
  • 5.2 X.264 编码器分析
  • 5.2.1 编码器编码流程分析
  • 5.2.2 编码器函数开销分析
  • 5.3 系统架构设计
  • 5.3.1 设计方法
  • 5.3.2 系统总体架构
  • 5.4 本章小结
  • 6 H.264 编码协处理器系统级设计
  • 6.1 ESL 平台下的架构搭建
  • 6.1.1 ARM926EJ-S 双总线结构
  • 6.1.2 协处理器的接口设计
  • 6.2 在ESL 平台下的系统设计流程
  • 6.3 协处理器模块整体设计
  • 6.3.1 协处理器模块实现的功能
  • 6.3.2 协处理器工作方式
  • 6.4 系统初始化代码设计
  • 6.4.1 散列文件的设计
  • 6.4.2 系统初始化过程
  • 6.5 通用协处理器指令设计
  • 6.6 协处理器视频编码指令设计
  • 6.6.1 存储器操作指令设计及其实现
  • 6.6.2 整数变换指令设计及其实现
  • 6.6.3 去块效应滤波指令设计及其实现
  • 6.6.4 运动估计指令设计及其实现
  • 6.7 运行结果
  • 6.7.1 功能实现
  • 6.7.2 运行性能比较
  • 6.8 系统性能分析
  • 6.8.1 总线周期精确条件下的性能提升
  • 6.8.2 性能特点分析
  • 6.8.3 性能评估的精确度
  • 6.9 本章小结
  • 7 总结与展望
  • 7.1 总结
  • 7.2 展望
  • 参考文献
  • 致谢
  • 攻读硕士学位期间已发表或录用的论文
  • 相关论文文献

    标签:;  ;  ;  

    基于高性能嵌入式处理器的H.264编码协处理器设计
    下载Doc文档

    猜你喜欢