FAQ

From Milkymist Wiki

Jump to: navigation, search

Contents

[edit] Is DVI supported?

No. Most video projectors use VGA extension cords.

[edit] What is the maximum video resolution of the device?

This depends on the FPGA design, and the board itself should support resolutions up to 1280x1024. The FPGA design and software have only been tested at 640x480 so far, but this is surprisingly enough to produce good effects.

[edit] Do I need to know about FPGAs to participate in development?

Not at all. Once the FPGA is programmed, it contains a microprocessor which behaves like any other one. If you don't touch the FPGA at all, you can think of it as a powerful microcontroller containing graphics accelerators, which you can program using C or C++. See here for more details about what is inside the FPGA.

[edit] Do I always need to install FPGA tools?

No. If you only intend to do software development, you can download a pre-built binary bitstream and load it into your FPGA. The FPGA will then behave like any other system-on-chip or microcontroller.

[edit] What hardware do I need if I only want to do software?

A Milkymist One, a JTAG cable (optional if your board is pre-flashed) and a 3.3V serial (RS232) cable.

[edit] How do I download my software into the system-on-chip?

The first program to be executed is the BIOS (bootloader), stored in NOR Flash. You can just flash one of the supplied images ; usually you don't have to modify this part. From there, you have many options. The most flexible one is the download over the serial port using the supplied flterm program. You can also write your binary image to a memory card and the system will boot from it. The boot process is detailed in the BIOS reference manual.

[edit] What compilers are supported?

GCC 4.5.1 and above. However, GCC isn't exactly good, and we would welcome a LLVM port.

[edit] Can I port Milkymist SoC to Altera/Lattice/Actel/XXX FPGAs?

With a little effort, yes. HDL code in this project is designed to be portable. Most design elements are inferred; and you will only need to replace elements that cannot be inferred such as PLLs.

Actel FPGAs might be slow, though.

[edit] What operating system is the system-on-chip running?

There are RTEMS and Linux available. The Milkymist One devices ship with RTEMS, and here's why.

[edit] Do you intend to sell ready-for-use boards?

Yes, we are already doing so. You can buy one.

[edit] What is the license for the code?

Most of it is covered by the GNU GPL v3.

[edit] FPGA projects are not really open source, you need a proprietary toolchain!

As far as Milkymist is concerned, the source code is standard Verilog HDL (compliant with the IEEE specification 1364-2005), is designed with portability as one of the first goals, has been shown to work almost unmodified on both major FPGA vendors (Altera and Xilinx), and can be simulated with many free and open source simulators (Icarus Verilog, GPL Cver, Verilator, VCOMP). Parts of the source code have even been shown to synthesize unmodified in TSMC 90nm cells with the Synopsys ASIC tools. Milkymist isn't more "Faux-pen Source" than all other open source software is because it requires a proprietary microprocessor to run.

We are also developing a free toolchain to address this problem.

[edit] How to contact authors?

Your suggestions, bug reports, bugfixes and patches are much appreciated. Please use the mailing list instead of contacting an author directly, unless you have a good reason to do so.

Personal tools