UTDSP, a VLIW programmable DSP processor

VLIW architectures are well-suited for implementing application-specific programmable processors because of their great scalability and modularity. VLIW architectures take advantage of not only temporal parallelism found in RISC architectures but also spatial parallelism by using multiple functional units. However, the large instruction storage and bandwidth requirements have prevented VLIW architectures from being used in cost-sensitive systems. This thesis describes a VLIW DSP processor called UTDSP, which incorporates a novel and flexible instruction packing and fetching mechanism to reduce the code size and bandwidth problems plaguing other VLIW architectures. With this scheme it is possible to actually achieve some code compression while attaining significant performance speedup over a traditional architecture. The UTDSP is flexible in that additional functional units with application-specific instructions can be easily added when required for performance with little impact on its compiler. The VLSI design and implementation of the UTDSP is presented. This implementation, consisting of five pipeline stages, is capable of executing seven instructions per cycle and provides zero-overhead hardware loops that are nestable and interruptable. A GUI-based assembly debugger and architecture simulator were implemented. The UTDSP adopts a synthesis-based design methodology and a novel hierarchical CAD flow that can significantly reduce its area. ii To Hsiao-ching, Hsien-yuan, and Yu-liang iii Acknowledgements

[1]  G.C.N. Yeung,et al.  Principles of programming languages: Design, evaluation, and implementation , 1985, Proceedings of the IEEE.

[2]  Alfred V. Aho,et al.  Compilers: Principles, Techniques, and Tools , 1986, Addison-Wesley series in computer science / World student series edition.

[3]  Gerard O'Regan Texas Instruments , 1964, Nature.

[4]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .

[5]  J. Labrousse,et al.  A 500 MHz microprocessor with a very long instruction word architecture , 1990, 1990 37th IEEE International Conference on Solid-State Circuits.

[6]  Richard H. Eckhouse,et al.  An environment for research in microprogramming and emulation , 1972, CACM.

[7]  Peter Linz,et al.  An Introduction to Formal Languages and Automata , 1997 .

[8]  Richard J. Higgins,et al.  Digital signal processing in VLSI , 1990 .

[9]  B. Ramakrishna Rau,et al.  The Cydra 5 departmental supercomputer: design philosophies, decisions, and trade-offs , 1989, Computer.

[10]  Mazen A. R. Saghir,et al.  Application-Specific Instruction-Set Architectures for Embedded DSP Applications , 1998 .

[11]  Earl W. Reigel,et al.  The interpreter: a microprogrammable building block system , 1971, AFIPS '72 (Spring).

[12]  P. Jain,et al.  ANALYZING AND OPTIMIZING EMBEDDED SYSTEM-ON-A-CHIP PERFORMANCE , 1998 .

[13]  Kurt Keutzer,et al.  Getting to the bottom of deep submicron , 1998, ICCAD '98.

[14]  Steven W. K. Tjiang,et al.  SUIF: an infrastructure for research on parallelizing and optimizing compilers , 1994, SIGP.

[15]  Bruce J. MacLennan Principles of programming languages - design, evaluation, and implementation , 1987 .

[16]  Philips Components,et al.  WPM 3.3: A 50MHz Microprocessor with a Very Long Instruction Word Architecture , 1990 .

[17]  Paul Chow,et al.  Application-driven design of DSP architectures and compilers , 1994, Proceedings of ICASSP '94. IEEE International Conference on Acoustics, Speech and Signal Processing.

[18]  Donald J. Patterson,et al.  Computer organization and design: the hardware-software interface (appendix a , 1993 .

[19]  J.J. Shea LabVIEW applications and solutions , 1999, IEEE Electrical Insulation Magazine.

[20]  Bruce D. Shriver,et al.  Local Microcode Compaction Techniques , 1980, CSUR.

[21]  Bruce J. MacLennan,et al.  Principles of Programming Languages , 1983 .

[22]  장훈,et al.  [서평]「Computer Organization and Design, The Hardware/Software Interface」 , 1997 .

[23]  John L. Hennessy,et al.  The Future of Systems Research , 1999, Computer.

[24]  Nader Bagherzadeh,et al.  Pipelining and Bypassing in a VLIW Processor , 1992, [1992] Proceedings the 19th Annual International Symposium on Computer Architecture.

[25]  Michael J. Flynn,et al.  An area model for on-chip memories and its application , 1991 .

[26]  David A. Patterson,et al.  Computer Organization & Design: The Hardware/Software Interface, Second Edition , 1997 .