The Delft Reconfigurable VLIW Processor

In this paper, we present the rationale and design of the Delft reconfigurable and parameterized VLIW processor called ρ-VEX. Its architecture is based on the Lx/ST200 ISA developed by HP and STMicroelectronics. We implemented the processor on an FPGA as an open-source softcore and made it freely available. Using the ρ-VEX, we intend to bridge the gap between general-purpose and application-specific processing through parameterization of many architectural and organizational features of the processor. The parameters include: instruction set (number and type of supported instructions), the number and type of functional units (FUs), issue-width (number of slots), register file size, memory bandwidth. The parameters can be set in a static or dynamic manner in order to provide the best performance or the best utilization of available resources on the FPGA. A complete toolchain including a C compiler and a simulator is freely available. Any application written in C can be mapped to the ρ-VEX processor. This VLIW processor is able to exploit the instruction level parallelism (ILP) inherent in an application and make its execution faster compared to a RISC processor system. This project creates research opportunities in the domain of softcore embedded VLIW processor prototyping, as well as designs that can be used in high-performance applications.

[1]  Joseph A. Fisher,et al.  Trace Scheduling: A Technique for Global Microcode Compaction , 1981, IEEE Transactions on Computers.

[2]  Eduardo Sanchez,et al.  Spyder: a reconfigurable VLIW processor using FPGAs , 1993, [1993] Proceedings IEEE Workshop on FPGAs for Custom Computing Machines.

[3]  Geoffrey Brown,et al.  Lx: a technology platform for customizable VLIW embedded processing , 2000, ISCA '00.

[4]  Jürgen Teich,et al.  A high performance VLIW processor for finite field arithmetic , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[5]  A. Lodi,et al.  A VLIW processor with reconfigurable instruction set for embedded applications , 2003, 2003 IEEE International Solid-State Circuits Conference, 2003. Digest of Technical Papers. ISSCC..

[6]  Paolo Faraboschi,et al.  Embedded Computing: A VLIW Approach to Architecture, Compilers and Tools , 2004 .

[7]  Woody Lichtenstein,et al.  The multiflow trace scheduling compiler , 1993, The Journal of Supercomputing.

[8]  Alex K. Jones,et al.  An FPGA-based VLIW processor with custom hardware execution , 2005, FPGA '05.

[9]  Patrick Akl,et al.  Customizing the Datapath and ISA of Soft VLIW Processors , 2007, HiPEAC.

[10]  Fan Yang,et al.  A modular VLIW Processor , 2007, 2007 IEEE International Symposium on Circuits and Systems.

[11]  Weng Fook Lee VLIW microprocessor hardware design : for ASIC and FPGA , 2008 .

[12]  Geoffrey Brown,et al.  ρ-VEX: A reconfigurable and extensible softcore VLIW processor , 2008, 2008 International Conference on Field-Programmable Technology.

[13]  Geoffrey Brown,et al.  A hardware compilation flow for instance-specific VLIW cores , 2008, 2008 International Conference on Field Programmable Logic and Applications.

[14]  Stephan Wong,et al.  Dynamically reconfigurable register file for a softcore VLIW processor , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).