The BYU Linux on FPGA Project

Revision Date: 14 November 2005


FPGA boards containing PowerPC CPU's are now widely available and present an interesting target for Linux-based embedded systems development.  These include boards based on Virtex-II Pro as well as Virtex-4 FPGA's.

The Linux on FPGA project at Brigham Young University in the Configurable Computing Laboratory is focusing on the development of software, methodologies, and instructions for porting and using Linux on FPGA-based platforms.

The point of this work is to pull together information from a variety of sources to create the infrastructure to aid individuals wishing to make use of Linux on these platforms.  Our initial motivation for this work was educational - we wanted to make available the information required for our own students to work in this area for a variety of class and research projects.  

Table of Contents

To comment on or make corrections/suggestions to this project , please send mail to:

 linuxfpga a  t


The project lead is Dr. Brent Nelson with associated faculty and students: Dr. Michael Wirthlin, Brad Baillio, Mike Martineau, and Gabe Black.

Links to Project Documents

Configuring and Installing Linux on Xilinx FPGA Boards

This document covers:

  1. Creating a hardware design for XUP2VP board suitable for use with Linux.
  2. Creating a cross compilation environment for the board on a Linux box.
  3. Configuring/compiling/booting Linux on the XUP2VP board.
  4. Creating an open-source root file system for the board.
  5. Configuring the board for networking.
  6. Configuring the board for obtaining its root file system via compact flash or NFS.

We have found that a large part of these instructions are applicable to other boards so you may find the information applicable to other boards you are working with as well.  As we gain experience with what parts are most widely applicable we will document those.

Installing and Using OpenSSH on a LinuxFPGA Platform

This document describes the steps required to cross-compile and install the OpenSSH server on a LinuxFPGA platform.  It is not yet complete but is a start based on some early work by Brad Baillio.  We welcome comments/contributions.

Links to Other Interesting/Related Work

The small amount of work we have done to date is only a tiny fraction of the interesting work going on out there.  Below are some links to related work.  We welcome submission of additional references.

A Native gcc for the Xilinx ML403
This page by Koen De Vleeschauwer describes a number of interesting things: (1) how to extend the size of the Xilinx root file system without rebuiling it, (2) how to NFS-mount that root file system, and (3) how to create a native gcc that will run on the ML403 board.

The Microblaze uClinux Project
This project focuses on producing a SnapGear distribution of Linux for the Microblaze CPU on Xilinx parts.

Indexing Keywords: Linux, Xilinx, Virtex-II Pro, Virtex-4, XUPV2P