Virtex-Linux is a Small linux distro, suitable for use on the embedded powerpc-405 processor of the virtex-II FPGA. The XUP-V2P plataform is initially supported. The goal is to build a debian-like system, or to directly use debian repositories.
History:
New 13/4/2009: I have successfuly compiled 2.6.29 kernel using uartlite, xsysace and emaclite drivers with XPS 10.1 sp3. Instructions are here: http://code.google.com/p/virtex-linux/wiki/LinuxV2
As part of the required courses for my PHD in Computer Science in ITBA (Instituto Tecnologico de Buenos Aires), I spent the second semester of 2007 researching and using the FPGA technology to build custom digital hardware. One of the task that i completed during that period was this small Linux distro, to use it as a little server when I'm not using it in my evil projects (AKA research thesis).
Turns out that the PowerPC 405 that comes with the Virtex II-Pro is not slow at all and can easily run almost all the standard unix applications. I started compiling and installing stuff and made a pretty complete system. It's still based on Busybox but has a lot of real applications on it, like Python, Vim, Bash, qemu, etc. In the beginning I was cross-compiling but once I got GCC native working on the board, things were much easier.
I have putted together this distro following the steps in the BYU Linux on FPGA page:
http://splish.ee.byu.edu/projects/LinuxFPGA/index.htm
You will need a Compact Flash memory of about 512 Megabytes.
Virtex-linux V 0.1 contains:
Syntethized hardware:
- PowerPC 405 300 Mhz (Just one processor used, can't use the other one because the board lacks a cache-coherency circuit)
- 16550 Serial (115200 8n1 default)
- 100 Megabits Ethernet MAC
- System ACE Flash (Up to 4 Gigabytes?, tested with 2 Gigabytes)
- 512 MB DDR Controller (Works with a bigger 1 GB Dimm but only will see 2 banks, 512 MB)
Software:
- Montavista Linux kernel 2.4 for ppc (Free edition)
- BusyBox 1.61 (Fairly complete installation)
- OpenSSH 4.6 (Including sftp-server)
- Bash 3.02
- Tor 0.1.2.17
- OpenSSL 0.98e
- Python 2.5
- Vim 7.2
- Links browser 2.1pre28 (SSL,ZLIB,JavaScript)
- Qemu 0.8.2 (Tested running an i386 OpenBSD 4.3 image, works fine!)
- GCC/G++ 4.02 native (from http://www.kdvelectronics.eu/ml403/ppc405_native_gcc.html)
- A couple of development libraries: zilb,readline, etc.
The final goal is to make this distribution as small as possible, and convert it to use the debian ppc repositories (Hint: The debian etch PowerPC packages work even if the don't support ppc-405, I installed qemu that way)
For pictures, follow this link to my homepage: http://ortegaalfredo.googlepages.com/fpgas
Note: No vga output is included. You must access the system via serial or ssh.
This project is released under the GNU General Public License v2
Copyright 2007-2008 Ortega Alfredo Adrian ortegaalfredo@gmail.com