节点文献

基于SDTA结构的OpenGL ES关键技术实现与研究

Research on the Design and Implementation Techniques of OpenGL ES Based on SDTA

【作者】 甘新标

【导师】 戴葵;

【作者基本信息】 国防科学技术大学 , 计算机科学与技术, 2008, 硕士

【摘要】 OpenGL ES(OpenGL for Embedded System),是嵌入式系统3D图形绘制编程接口。OpenGL ES在传统的操作触发体系结构(Operation Triggering Architecture, OTA)及其平台之间具有较好的移植性,但是针对特定体系结构和运行平台OpenGL ES库有不同的实现版本,如:Vincent OpenGL ES和J2ME-based OpenGL ES。同步数据触发体系结构(Synchronized Data Triggering Architecture,SDTA)与传统的OTA结构有着本质上的区别,它是基于传输触发体系结构(Transport Triggering Architecture, TTA)改进而发展起来的高性能数据并行体系结构。因此,面向SDTA结构研究OpenGL ES并实现其关键技术具有重要的意义。本文的研究成果主要有:1.表格驱动Cordic算法(Table-driven Cordic, T-Cordic)T-Cordic算法实质上是一种面向数据密集型的Cordic改进算法,它将经典Cordic算法的迭代转换为简单的2×2矩阵乘法。系数矩阵元素值预先计算好存放在表格中,通过查表操作可以快速获得各个元素值。基于SDTA指令集结构实现的T-Cordic算法性能提升显著。2.基于SDTA结构的OpenGL ES内置函数优化OpenGL ES内置函数是OpenGL ES库的基础和核心。基于SDTA指令集结构的指令优化技术(循环展开、强度消弱、指令归并、子字并行等)是OpenGL ES内置函数性能提升的关键技术。3. OpenGL ES底层构件的设计与优化本文提出了OpenGL ES多级结构设计模型;基于函数依赖度策略提取了OpenGL ES实现的一个核心子集,即OpenGL ES底层构件。同时,基于SDTA指令集结构的子字并行原语编程模型是OpenGL ES底层构件优化实现的关键技术。4.面向SDTA结构定制Unified Shader功能单元可编程Shader是OpenGL ES支持可编程能力的前提。本文在研究独立Vertex Shader和Fragment Shader功能单元结构的基础之上提出了面向SDTA结构的Unified Shader单元设计。它是将Vertex Shader和Fragment Shader处理单元的统一起来构造一个既能执行Vertex Shader又能执行Fragment Shader的处理单元。

【Abstract】 In order to simplify the differences of platforms, Khronos Group has organized the international standards named OpenGL ES (OpenGL for Embedded System) for embedded graphics programming. Though OpenGL ES is conditionally transplantable between traditional and popular Operation Triggering Architectures (OTA), OpenGL ES library has different implementing versions such as Vincent OpenGL ES and J2ME-based OpenGL ES for specified architectures and systems.Synchronized Data Triggering Architecture (SDTA), based on Transport Triggering Architecture (TTA), is a high-performance data parallel architecture which is different from the OTA. Therefore, SDTA-oriented research on OpenGL ES is urgent and impotant for implementation of OpenGL ES for SDTA instruction set architecture. The innovative work in this thesis can be summarized as follows.1. Table-driven Cordic(T-Cordic)T-Cordic, which has transformed iterations in classic Cordic into simple 2×2 matrix multiplication and coeffient matrix elements can be available by looking-up tables, is designed for data-intensive instruction set architecture in reality, and proved that it can achieve high-performance significantly on SDTA.2. Optimizing functions built-in OpenGL ES based on SDTAFunctions built-in OpenGL ES is the kenel of OpenGL ES library. It is particularly important to optimize and schedule the instructions for implementing the built-in functions on SDTA. The techniques of optimization include loop unrolling, strength reduction, instruction combing and sub-word parallel.3. Design and optimization of low-level component for OpenGL ESMulti-level structure model for OpenGL ES is proposed, and entity dependency for functions and data structions is defined in this thesis. The core subset of OpenGL ES distilled according to statistic entity dependency is called low-level component for OpenGL ES. Furthermore, the sub-word parallel programming model for SDTA instruction set architecture is a key technique for implementation and optimization of low-level component of OpenGL ES.4. SDTA-oriented unified shader unitProgrammable shader unit is a prerequisite for OpenGL ES supporting programmability. Unified shader, which unified the structure and function of isolated vertex shader and fragment shader, is proposed after studies on tradional vertex shader and fragment shader.

节点文献中: 

本文链接的文献网络图示:

本文的引文网络