基于飞腾平台的GPU图形加速技术研究及应用

基于飞腾平台的GPU图形加速技术研究及应用

论文摘要

国产CPU在推动我国信息安全和现代化进程中起着非常重要的作用,然而由于国产CPU起步较晚,性能方面和国际上先进的CPU还存在较大差距,国产CPU很多时候处理大量的多任务就已经超负荷工作。因此为了提升国产飞腾平台的整体性能和图形加速效果,采用了国产飞腾CPU和GPU异构的方式。这样可以将大量消耗CPU资源的图形加速任务交给非常擅长图形数据处理的GPU来做,进而不仅CPU可以更加专注高效地处理其他任务而且图形加速性能和效果也得到了大幅度的提升。本文深入研究了图形加速子系统系统架构的底层部分和软硬件交互技术,并针对飞腾平台的图形加速特性,围绕Vivante GC600和Radeon R6XX系列GPU在飞腾平台上的应用,深入剖析了GPU工作原理和系统核内相关技术,包括帧缓冲设备、模式设置、显存空间管理、命令缓冲与命令传输机制等关键技术。首先,在飞腾平台上为片上Vivante GC600实现Xorg/EXA 2D和Mesa 3D图形加速系统。由于Vivante公司的GPU主要专注于移动终端设备,在桌面图形加速系统,特别是在Xorg系统架构的应用中并不成熟,首次将Vivante GC600应用到飞腾桌面图形加速系统中,难免会出现许多技术难题。在研究了FT1000A、飞腾桌面图形加速和GC600的基础上,针对图形加速系统结构和特点,设计并实现了GC600的显存空间管理、模式设置和帧缓冲设备,进而将GC600成功应用到了飞腾平台的桌面图形加速系统中。在实现的过程中,主要解决了FT1000A和GC600内核显存空间中存在的地址空间对齐、字节序和显存分配与管理机制,模式设置中的多分辨率与异步芯片时钟同步等技术难点,并突破了IOMMU方式的静态预留与动态分配相结合的显存管理中的关键技术。其次,增加Radeon R6XX核内/核外交互模式,并首次将R600应用到DirectFB中,从而使其更加适应图形加速技术的发展。在面向嵌入式终端设备的应用研究中,采用了DirectFB图形加速系统作为R6XX的加速框架,并且经过研究发现R6XX在技术上有很大的进步,比如采用高效的命令传输机制与PM4命令包等。因此,增加了核内/核外Radeon R600驱动的结构,并成功实现将R600应用到DirectFB图形加速系统中。在实现过程中主要研究并解决了主存地址空间分配与管理、采用命令处理器和PM4方式的命令缓冲与命令传输机制和精简的帧缓冲设备等软硬件交互的一系列技术难点。突破了主机(CPU)系统主存到GPU地址空间的映射和核内使用PM4命令包实现点划线,绘制三角形矩形,blit拷屏等基本操作相关的技术难题。最后,在对图形加速研究与实现的基础上,对基于GC600的图形加速系统和DirectFB图形加速系统进行了测试评估。选用了Vivante公司提供的测试包来测试GC600的功能完备性,在确认功能完备的基础上,然后对Xorg/EXA和Mesa图形进行了加速性能基本测试。同时,针对Direct FB系统实现,为了对比Direct FB图形加速性能,在核内实现了Blit拷屏操作来测试最接近R600物理极限的性能,然后对R600在DirectFB系统下图形加速的功能和性能进行了测试。进而验证了该图形加速系统设计与实现方案具有优良的可行性。总之,本文以GPU图形加速原理为基础,对GPU的显存地址空间、命令缓冲与命令传输机制、帧缓冲设备和模式设置等实现GPU图形加速的核心技术进行了深入研究。而更具有意义的是,将相关的研究结合应用发展需求,成功地应用到了飞腾平台上,取得了桌面图形和DirectFB在FT1000A上实现图形加速的成果,一定程度上解决了飞腾平台图形加速应用不足的问题。从而达到了理论研究和具体实践相结合,以满足应用发展需要的目标,具有重要的理论和工程意义。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 绪论
  • 1.1 课题背景及意义
  • 1.2 国内外研究现状
  • 1.3 相关工作与论文结构
  • 第二章 系统级图形加速研究
  • 2.1 图形加速原理概述
  • 2.2 显存空间管理技术
  • 2.2.1 显存组成
  • 2.2.2 显存管理中的问题
  • 2.2.3 显存管理示例
  • 2.2.4 GEM和TTM机制
  • 2.3 GPU软硬件交互技术
  • 2.3.1 Vivante GPU驱动研究
  • 2.3.2 Radeon GPU驱动研究
  • 2.4 本章小结
  • 第三章 飞腾平台的 2D与 3D图形加速技术
  • 3.1 飞腾SoC系统结构
  • 3.2 2D与 3D系统架构
  • 3.3 GC600显存空间
  • 3.4 GC600模式设置
  • 3.5 GC600帧缓冲设备
  • 3.6 本章小结
  • 第四章 飞腾平台的Direct FB图形加速技术
  • 4.1 Direct FB系统研究
  • 4.2 Direct FB核内R600驱动
  • 4.3 Radeon PM4命令包
  • 4.4 Radeon图形加速系统级交互
  • 4.5 显存地址空间与命令传输机制
  • 4.6 本章小结
  • 第五章 系统实现与测试评估
  • 5.1 2D与 3D加速系统实现
  • 5.2 片上系统GC600功能测试
  • 5.32D与 3D图形加速系统测试
  • 5.4 Direct FB图形加速系统实现
  • 5.5 Radeon内核拷屏测试
  • 5.6 Direct FB系统测试
  • 5.6.1 功能测试
  • 5.6.2 性能测试
  • 5.7 本章小节
  • 第六章 结束语和展望
  • 6.1 主要工作总结
  • 6.2 未来工作展望
  • 致谢
  • 参考文献
  • 作者在学期间取得的学术成果
  • 附录A rs780显卡驱动源代码
  • 附录B 环形缓冲管理中的寄存器描述
  • 附录C 类型3命令包描述
  • 相关论文文献

    标签:;  ;  ;  ;  ;  

    基于飞腾平台的GPU图形加速技术研究及应用
    下载Doc文档

    猜你喜欢