OpenCL is a newly emerging FPGA development tool which offers the ability to describe parallel algorithms to be implemented on FPGA at a much higher level of abstraction than hardware description languages such as VHDL and Verilog. OpenCL program is written in Standard C with annotations to specify parallelism and memory architecture, which can be automatically transformed in dedicated and deeply pipelined FPGA circuits by OpenCL-to-FPGA compiler. The use of OpenCL flow provides a significant time to market advantage compared to traditional FPGA development using low level hardware description languages, while enabling software engineers who have no FPGA knowledge and experience to easily use FPGA to accelerate their program.

The project deliverables are:

  • Study of an imaging processing module.
  • Implementation of the imaging processing module in FPGA using OpenCL.


  • ​Basic C programming skill
  • Singapore citizens only
  • Not a recipient of a scholarship with a specified bond obligation