GPU is an image processing chip with geometric programming and pixel processing abilities. A Streaming Multiprocessors is the basic arithmetic unit in GPU. The design of Streaming Multiprocessors is crucial to the overall performance of GPU. In the application of aerospace, processing the remote sensing image is very time-consuming due to its nature as being computationally intensive. Consequently, it is very important and potential to design a GPU soft core consisting of Streaming Multiprocessors that has high performance and low power consumption in FPGA. This thesis carry out research on the design techniques of Streaming Multiprocessors in GPU. The main contents of this thesis are listed as follows: Firstly, this thesis give a comprehensive introduction of the history and recent advancement on the research of GPU architecture. Specifically, the characteristics of the architecture, the development platform for GPU programming and the main application areas of GPU are introduced. According to the urgent demands for parallelly processing of remote sensing image, this thesis address the significance of the research on the architecture design for Streaming Multiprocessors in GPU. Moreover, in-depth analysis of the architecture for NVIDIA G80/GT200 and AMD R600 are provided. Subsequently, the instruction set of NVIDIA PTX and AMD R600 are summarized and analyzed. Secondly, a basic architecture design of Streaming Multiprocessors in GPU based on the GPU of NVIDIA G80 is given, including the design of pipelining and storage system. In-depth research and thorough realization are conducted to solve the problem of warp divergence and thread switch when instructions are execuated in the Streaming Multiprocessors. Thirdly, a basic instruction set for the Streaming Multiprocessors is designed. The design document of the instruction set is also provided. Detailed explanation are given on the encoding format, the addressing mode, the definitions of registers, the definitions of the program status word and the condition code of the instruction set. Also, the format, the encoding and the function of all instructions are explained. Finally, to verify the function of the designed Streaming Multiprocessors, simulation of the designed Streaming Multiprocessors is conducted. The simulation waveforms are detailed explains and analysis. The simulation results show that the Streaming Multiprocessors run smoothly and the design approach i...
修改评论