FPGA Graphics

Genode FX is a composition of hardware and software components that enable the creation of fully fledged graphical user interfaces as system-on-chip solutions using commodity FPGAs.

Genode FX on the Xilinx Spartan3A Starter Kit

Genode FX executes a full GUI software stack on a soft core CPU implementation (e.g., Microblaze) or on a hard wired CPU (e.g., PPC core as featured by Virtex4 FPGAs). For interfacing input devices and the display to the system, the CPU core is complemented by custom peripheral components.

At the current stage, Genode FX consists of the following components:

  • Display controller for VGA and DVI output

  • PS/2 controller for mouse and keyboard input

  • GUI software stack

  • Ready-to-use demonstration projects for Spartan3A Starter Kit boards and Virtex5-based ML507 boards

We develop both the peripheral device components and the GUI software stack in a coordinated fashion. As reference platform, we facilitate the use of the Xilinx Spartan3A Starter Kit with the Microblaze soft core. This cost-effective platform is widely available, for example at Trenz Electronic.

In addition to supporting the Spartan3A Starter Kit, we have implemented Genode FX for other platforms including Virtex4-based FPGA platforms, the ML507, and the Euterpe FPGA board. Furthermore, there exist reference designs for the Trenz Electronic TE0300 + TE0304 FPGA platform, which facilitates the use of industrial FPGA modules for implementing embedded graphics solutions.

Genode FX running on the Spartan3e-based TE0300 industrial module hosted on the TE0304 demo carrier board. (image courtesy of Trenz Electronic)

Project website and community resources

Prior its official release in August 2008, the Genode FX project was conducted by Matthias Alles who was focused on the hardware and Norman Feske who developed the GUI software stack. Since August 2008, the project development is conducted as an open-source community project. The project's resources and the source code are available at the official project website:

Project website at Sourceforge

https://sourceforge.net/projects/genode-fx

The best way for getting involved with the project is joining our mailing lists. The discussion mailing list called Genode-FX-main is the right place for getting in touch with the Genode FPGA graphics developer community, posting propositions for the development, and for requesting help.

The announcements mailing list called Genode-FX-announce is a read-only low-traffic mailing list, which informs you about the progress of the project.

Publications

Genode FX: an FPGA-based GUI with Bounded Output Latency and Guaranteed Responsiveness to User Input
Norman Feske and Matthias Alles

Technical Report, Genode Labs, May 2009

Genode FX: eine FPGA-basierte grafische Benutzerschnittstelle
Norman Feske

Tagungsband, 10. Workshop Mikrocontroller-Applikation, Mittweida, 14. Mai 2009

License

Both the hardware models and software components of Genode FX are available under two flavours of licenses, an open-source license and commercial licensing.

Open-source license

The primary license used for the distribution of Genode FX is the GNU General Public License Version 2 (GNU GPL). The GNU GPL grants everybody the rights to

  • Use Genode FX without paying any license fee

  • Freely distribute the software and hardware

  • Modify the source code and distribute modified versions of the software and the hardware models

In return, the GNU GPL requires any modifications and derived work to be published under the same license. See the full text of the GNU General Public License Version 2 in the LICENCE file provided with the Genode FX distribution.

Commercial licenses

For applications that require more permissive licensing conditions than granted by the GNU GPL, Genode Labs offers commercial licensing options and support. If you consider the Genode FX for the use in your product, please contact us.

Email

licensing@genode-labs.com

Commercial support

For facilitating the practical application of Genode FX, we offer commercial services including

  • Assistance in planning your project using Genode FX

  • The adaption of Genode FX to different FPGA boards

  • The support for other display and input devices than those already supported

  • The extension and customization of the GUI software stack, for example by adding new GUI elements

  • Visual customizations of the GUI

  • The development of application software based on Genode FX

postal address:

  Genode Labs GmbH
  Dammweg 2
  D-01097 Dresden

visiting address:

  Genode Labs GmbH
  Friedrichstr. 26
  D-01067 Dresden

phone:

  +49 351 3282613

email:

  info@genode-labs.com