Font Size: a A A

Research Of FPGA Heterogeneous Computing Method Based On OpenCL

Posted on:2018-08-30Degree:MasterType:Thesis
Country:ChinaCandidate:F ZhouFull Text:PDF
GTID:2348330518999513Subject:Circuits and Systems
Abstract/Summary:PDF Full Text Request
Nowadays,with the continuous development of social digital information,our demand for efficient computing systems is also increasing,so the development of high-performance products in different areas has become the trend of the growth of the current times.From the earliest single-core CPU's serial operation to today's heterogeneous computing.Open CL is a standard programming language designed for heterogeneous platforms that can be used to build efficient heterogeneous computing systems.In 2012,Altera introduced an Open CL SDK on FPGA,which combines the FPGA's powerful parallel architecture and the Open CL parallel programming model,and is used to develop Open CL on FPGA.At this point the FPGA's application turns to a new field,high-performance heterogeneous computing and massive data processing.And people who use FPGA are no longer these traditional hardware engineers,but some programmers who develop software for their own work.This thesis is based on So C-FPGA platform for Open CL development and research,mainly using DE0-Nano-So C and DE1-So C development board.Through the detailed analysis of the FPGA's Open CL implementation mechanism and the two different FPGA's architectures that can implement Open CL,it is found that using FPGA to develop Open CL has a natural superiority.The ARM hard-core processor and FPGA computing devices in So C-FPGA platform is equivalent to a chip to achieve heterogeneous platform,and the acceleration effect is more obvious,and they exchange data through the AXI bus.The thesis describes the Open CL on the So C-FPGA platform in detail,not only its environment configuration,but also some implementation methods and the optimization of Open CL.In order to verify the effects of these optimization methods,the thesis selects the vector addition algorithm with high parallelism and simplicity and the high-order multiplication algorithm needed in any algorithm.The thesis analyzes the parallelism in it,and uses this as the basis to write the corresponding host program and kernel code.The basic realization of the algorithm is completed through the board debugging.Then the algorithm is processed by accessing the storage optimization method,and next the specific algorithm is optimized by multi-pipeline,vectorization and other methods.The corresponding kernel execution time,ARM hard-core execution time and throughput are obtained,and then some classification comparisons are made to analyze the acceleration effect.In order to verify the limitation of the specific optimization method,the Open CL solution of the generalized inverse of the matrix is designed and implemented.According to the results of the experiments,the performance of Open CL parallel computation on FPGA platform is much higher than the serial computation on ARM hard core,and the performance of the algorithm is multiplied after the relevant optimization strategy,but this is also at the cost of the hardware resource.When the on-chip resources are limited,it is necessary to find the appropriate parameters.In fact,if FPGA does not use the optimization method,only produces the most basic computing unit,even no parallel.It mainly relies on the latter part of the compiler to optimize the instruction to copy the circuit,as much as possible to use more on-chip resources to make full use of FPGA's parallel ability.In other words,the key to use Open CL to develop FPGA is using a reasonable compilation optimization method.
Keywords/Search Tags:Heterogeneous, Parallel, OpenCL, SoC-FPGA, Optimize
PDF Full Text Request
Related items