Go Back

Source code


Name: rtf_sprite_controller
Created: Feb 2, 2013
Updated: May 15, 2015
SVN Updated: May 15, 2015

Other project properties

Category: Video controller
Language: Verilog
Development status: Alpha
Additional info:
WishBone Compliant: No
License: LGPL


This core provide hardware cursor / sprite capabilities. It supports alpha blending in the 32k color mode. The cursor characteristics are completely programmable. The core has been updated to reflect larger amounts of memory and resources available in newer devices.


- parameterized number of sprites/cursors 1,2,4,6,8,14, or 32
- 4kB sprite image cache buffers
- each image cache is capable of holding multiple sprite images
- cache may be accessed like a memory by the processor
- an embedded DMA controller may also be used for sprite reload
- programmable image offset within cache
- programmable sprite width,height, and pixel size
- sprite width and height may vary from 1 to 256 pixels as long
as the product doesn't exceed 2048.
- pixels may be programmed to be 1 to 16 video clocks
both height and width are programmable
- programmable sprite position
- 8 or 16 bits for color
eg 32k color + 1 bit alpha blending indicator (1,5,5,5)
- fixed display and DMA priority sprite 0 highest, sprite 31 lowest


The core is currently being tested on an Atlys board and appears to be working.
The core is being tested with a Nexys4ddr board at present.