C6: C Compiler Chain for Custom Configurable Computers

In the C6 project (KO Sept 2005) we develop a new soft processor core and associated compiler tool chain for low-cost FPGAs (in our case the 400K gates Xilinx Spartan-3). The primary motivation for the project is the need for a simple, yet powerful soft core that allows students to program FPGAs in embedded C in some of our labs. Rather than use an existing processor architecture, our independence of legacy issues allows us to rethink the entire C-to-FPGA concept. Instead of using a legacy core with some 90's or even 80's instruction set architecture (reflecting old technology), and retargeting a C compiler to this ISA, we start top down by choosing an ISA that is at (almost) the same high level as the intermediate RTL level within the compiler, with the VHDL core being thought of as a hardware interpretor of this ISA. Although a performance price is to be paid, both the compiler backend and the soft core can be kept at a minimum. Hence, the entire soft core + ANSI C compiler can be built in terms of merely one MS project (note that this includes a range of peripheral devices and full priority interrupt capabilities). The tool chain consists of the usual tools

Apart from the tool chain, there is a special interest in applying the platform in the following two projects In addition, some of the guys are doing embedded systems research in a somewhat broader sense.

Publications

Current Students:

Alumnae: