Design of a low-resource 2D graphics engine for FPGAs

dc.contributor.advisorWilkinson, Andrew
dc.contributor.advisorGinsberg, Samuel
dc.contributor.authorTolmie, Donald Francois
dc.date.accessioned2019-05-10T11:57:41Z
dc.date.available2019-05-10T11:57:41Z
dc.date.issued2018
dc.date.updated2019-05-07T10:54:30Z
dc.description.abstractThis study focused on the design and implementation of a low-resource graphics engine, MicroGE, which can be implemented on an FPGA. MicroGE uses a minimal amount of FPGA resources when compared to other graphics engines. After researching existing graphics engines, it was discovered that most make use of a memory space to store frame buffer data. Because of the restrictions that were imposed on the design of MicroGE, it could not incorporate a large enough memory space to store a frame buffer. It was specified that MicroGE should be able to fit on low-resource FPGAs, without any external memory components. Also, MicroGE should be able to fit on modern, high-resource, FPGAs without using a significant amount of those FPGAs’ resources. These goals were achieved by designing MicroGE according to an architecture which differs from the ones of existing graphics engines. MicroGE only renders parts of the video frame, which can be stored in a small memory space, before those parts are transmitted to an HDMI or DVI monitor. After the design was completed, MicroGE, along with other components, was implemented in a VHDL design. Hardware was developed, which contained a Spartan-6 LX25 FPGA, to verify this VHDL. Other verification methods, including the use of VHDL test benches, were also used to verify the VHDL design. A software library, MGAPI, was developed on an Arduino Due microcontroller board. This software library allowed the Arduino Due to display graphics on an HDMI monitor via MicroGE. The Arduino Due was able to update the display of 1000 graphics primitives within 111 ms. The internal FPGA RAM resource usage of MicroGE, 792 kb, was found to be significantly lower than the amount of memory required for a frame buffer. Even though these results were satisfactory, there are still many improvements that can be made to MicroGE. These improvements include increasing the number of rendering capabilities, optimisation of power usage, and increasing the control and video output interfaces.
dc.identifier.apacitationTolmie, D. F. (2018). <i>Design of a low-resource 2D graphics engine for FPGAs</i>. (). ,Engineering and the Built Environment ,Department of Electrical Engineering. Retrieved from http://hdl.handle.net/11427/30042en_ZA
dc.identifier.chicagocitationTolmie, Donald Francois. <i>"Design of a low-resource 2D graphics engine for FPGAs."</i> ., ,Engineering and the Built Environment ,Department of Electrical Engineering, 2018. http://hdl.handle.net/11427/30042en_ZA
dc.identifier.citationTolmie, D.F. 2018. Design of a low-resource 2D graphics engine for FPGAs. . ,Engineering and the Built Environment ,Department of Electrical Engineering. http://hdl.handle.net/11427/30042en_ZA
dc.identifier.ris TY - Thesis / Dissertation AU - Tolmie, Donald Francois AB - This study focused on the design and implementation of a low-resource graphics engine, MicroGE, which can be implemented on an FPGA. MicroGE uses a minimal amount of FPGA resources when compared to other graphics engines. After researching existing graphics engines, it was discovered that most make use of a memory space to store frame buffer data. Because of the restrictions that were imposed on the design of MicroGE, it could not incorporate a large enough memory space to store a frame buffer. It was specified that MicroGE should be able to fit on low-resource FPGAs, without any external memory components. Also, MicroGE should be able to fit on modern, high-resource, FPGAs without using a significant amount of those FPGAs’ resources. These goals were achieved by designing MicroGE according to an architecture which differs from the ones of existing graphics engines. MicroGE only renders parts of the video frame, which can be stored in a small memory space, before those parts are transmitted to an HDMI or DVI monitor. After the design was completed, MicroGE, along with other components, was implemented in a VHDL design. Hardware was developed, which contained a Spartan-6 LX25 FPGA, to verify this VHDL. Other verification methods, including the use of VHDL test benches, were also used to verify the VHDL design. A software library, MGAPI, was developed on an Arduino Due microcontroller board. This software library allowed the Arduino Due to display graphics on an HDMI monitor via MicroGE. The Arduino Due was able to update the display of 1000 graphics primitives within 111 ms. The internal FPGA RAM resource usage of MicroGE, 792 kb, was found to be significantly lower than the amount of memory required for a frame buffer. Even though these results were satisfactory, there are still many improvements that can be made to MicroGE. These improvements include increasing the number of rendering capabilities, optimisation of power usage, and increasing the control and video output interfaces. DA - 2018 DB - OpenUCT DP - University of Cape Town KW - Engineering LK - https://open.uct.ac.za PY - 2018 T1 - Design of a low-resource 2D graphics engine for FPGAs TI - Design of a low-resource 2D graphics engine for FPGAs UR - http://hdl.handle.net/11427/30042 ER - en_ZA
dc.identifier.urihttp://hdl.handle.net/11427/30042
dc.identifier.vancouvercitationTolmie DF. Design of a low-resource 2D graphics engine for FPGAs. []. ,Engineering and the Built Environment ,Department of Electrical Engineering, 2018 [cited yyyy month dd]. Available from: http://hdl.handle.net/11427/30042en_ZA
dc.language.rfc3066eng
dc.publisher.departmentDepartment of Electrical Engineering
dc.publisher.facultyFaculty of Engineering and the Built Environment
dc.subjectEngineering
dc.titleDesign of a low-resource 2D graphics engine for FPGAs
dc.typeMaster Thesis
dc.type.qualificationlevelMasters
dc.type.qualificationnameMSc
Files
Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
thesis_ebe_2018_tolmie_donald_francois.pdf
Size:
10.03 MB
Format:
Adobe Portable Document Format
Description:
License bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
license.txt
Size:
0 B
Format:
Item-specific license agreed upon to submission
Description:
Collections