摘要 | 第5-6页 |
ABSTRACT | 第6页 |
第一章 绪论 | 第10-25页 |
1.1 研究背景及意义 | 第10-11页 |
1.1.1 研究背景 | 第10-11页 |
1.1.2 研究意义 | 第11页 |
1.2 国内外现状及发展趋势 | 第11-23页 |
1.2.1 Open Graphics Project | 第12-13页 |
1.2.2 Theia GPU | 第13-15页 |
1.2.3 ORSoC Graphics accelerator | 第15-17页 |
1.2.4 GPGPU-sim | 第17-20页 |
1.2.5 Attila | 第20-23页 |
1.2.6 总结 | 第23页 |
1.3 本文的研究的主要内容及结构安排 | 第23-25页 |
第二章 相关技术介绍 | 第25-33页 |
2.1 GPU | 第25-26页 |
2.2 OpenGL标准 | 第26-27页 |
2.3 OpenCL标准 | 第27-29页 |
2.4 Nyuzi Processor开源软核 | 第29-31页 |
2.5 Nyuzi Processor编译器 | 第31-32页 |
2.6 本章小结 | 第32-33页 |
第三章 嵌入式多核GPU软核分析 | 第33-45页 |
3.1 GPU内部整体结构 | 第33页 |
3.2 执行流水线 | 第33-38页 |
3.3 L2 cache子系统 | 第38-40页 |
3.3.1 L1/L2 cache互联 | 第38页 |
3.3.2 L2 cache | 第38-39页 |
3.3.3 cache一致性 | 第39-40页 |
3.3.4 同步读/写 | 第40页 |
3.4 内存布局 | 第40-42页 |
3.4.1 分配内存 | 第41页 |
3.4.2 IO设备寄存器 | 第41-42页 |
3.5 Nyuzi Processor多核启动 | 第42-44页 |
3.6 本章小结 | 第44-45页 |
第四章 Rendering Engine几何阶段的设计与实现 | 第45-55页 |
4.1 几何变换 | 第45-46页 |
4.1.1 齐次坐标系 | 第45页 |
4.1.2 平移变换 | 第45-46页 |
4.1.3 放缩变换 | 第46页 |
4.1.4 旋转变换 | 第46页 |
4.2 投影变换 | 第46-49页 |
4.2.1 正交投影 | 第47-48页 |
4.2.2 透视投影 | 第48-49页 |
4.3 模型视图投影矩阵 | 第49页 |
4.4 几何阶段的设计与实现 | 第49-54页 |
4.4.1 Rendering Engine几何阶段中线程的任务分配 | 第50-51页 |
4.4.3 三角形建立 | 第51-52页 |
4.4.4 背面剔除 | 第52-53页 |
4.4.5 三角形包围盒 | 第53-54页 |
4.5 本章小结 | 第54-55页 |
第五章 Rendering Engine像素阶段的设计与实现 | 第55-75页 |
5.1 tile定义 | 第55-56页 |
5.2 快速剔除三角形 | 第56-58页 |
5.3 tile光栅化 | 第58-66页 |
5.3.1 block拒绝测试 | 第61-63页 |
5.3.2 block接受测试 | 第63-64页 |
5.3.3 接受测试向量操作 | 第64-65页 |
5.3.4 接受测试结果合并 | 第65页 |
5.3.5 subblock测试 | 第65-66页 |
5.3.6 pixel mask测试 | 第66页 |
5.4 深度缓冲 | 第66-69页 |
5.5 alpha混合 | 第69-71页 |
5.6 颜色缓冲 | 第71-72页 |
5.7 Rendering Engine像素阶段中线程的任务分配 | 第72-73页 |
5.8 双缓冲 | 第73-74页 |
5.9 本章小结 | 第74-75页 |
第六章 Rendering Engine渲染流水线测试 | 第75-84页 |
6.1 测试环境 | 第75-76页 |
6.1.1 NyuziToolchain | 第75-76页 |
6.1.2 Nyuzi Processor | 第76页 |
6.2 流水线功能测试 | 第76-83页 |
6.2.1 几何变换测试 | 第76-79页 |
6.2.2 像素操作测试 | 第79-83页 |
6.3 本章小结 | 第83-84页 |
第七章 总结与展望 | 第84-86页 |
7.1 总结 | 第84页 |
7.2 工作展望 | 第84-86页 |
致谢 | 第86-87页 |
参考文献 | 第87-90页 |