skip to main content
article
Free access

Code size minimization and retargetable assembly for custom EPIC and VLIW instruction formats

Published: 01 October 2000 Publication History

Abstract

PICO is a fully automated system for designing the architecture and the microarchitecture of VLIW and EPIC processors. A serious concern with this class of processors, due to their very long instructions, is their code size. One focus of this paper is to describe a series of code size minimization techniques used within PICO, some of which are applied during the automatic design of the instruction format, while others are applied during program assembly. The design of a retargetable assembler to support these techniques also poses certain novel challenges, which constitute the second focus of this paper. Contrary to widely held perceptions, we demonstrate that it is entirely possible to design VLIW and EPIC processors that are capable of issuing large numbers of operational per cycle, but whose code size is only moderately larger than that for a sequential CISC processor.

References

[1]
ADITYA, S., RAU, B. R., AND JOHNSON, R. C. 2000. Automatic design of VLIW and EPIC instruction formats. HPL Technical Report HPL-1999-94, Hewlett-Packard Laboratories.
[2]
ADITYA, S., RAU, B. R., AND KATHAIL, V. 1999. Automatic architectural synthesis of VLIW and EPIC processors. In International Symposium on System Synthesis, ISSS'99 (San Jose, California, 1999), IEEE Computer Society, 107-113.
[3]
ARNOLD, M. AND CORPORAAL, H. 1999. Instruction set synthesis using operation pattern detection. In Fifth Annual Conference of ASCI (Heijen, The Netherlands, 1999).
[4]
BECK, G. R., YEN, D. W. L., AND ANDERSON, T. L. 1993. The cydra 5 mini-supercomputer: architecture and implementation. The Journal of Supercomputing 7, 1/2, 143-180.
[5]
COLWELL, R. P., NIX, R. P., O'DONNELL, J. J., PAPWORTH, D. B., AND RODMAN, P. K. 1988. A vliw architecture for a trace scheduling compiler. IEEE Transactions on Computers 37, 8, 967-979.
[6]
CONTE, T. M., BANERJIA, S., LARIN, S. Y., MENEZES, K. N., AND SATHAYE, S. W. 1996. Instruction fetch mechanisms for VLIW architectures with compressed encodings. In 29th International Symposium on Microarchitecture (1996), 201-211.
[7]
HANONO, S. AND DEVADAS, S. 1998. Instruction selection, resource allocation, and scheduling in the AVIV retargetable code generator. In 35th Design Automation Conference (1998), 510-515.
[8]
INTEL CORPORATION. 1999. IA-64 Application Developer's Architecture Guide.
[9]
KATHAIL, V., SCHLANSKER, M., AND RAU, B. R. 2000. HPL-PD architecture specification: Version 1.1. Technical Report HPL-93-80 (R.1), Hewlett-Packard Laboratories.
[10]
KOZUCH, M. AND WOLFE, A. 1994. Compression of embedded system programs. In IEEE International Conference on Computer Design (1994). 270-277.
[11]
LEE, C., POTKONJAK, M., AND MANGIONE-SMITH, W. H. 1997. Mediabench: A tool for evaluating and synthesizing multimedia and communication systems. In 30th Annual International Symposium on Microarchitecture (MICRO-30) (1997). ACM and IEEE Computer Society.
[12]
LIAO, S. Y., DEVADAS, S., AND KEUTZER, K. 1998. Code density optimization for embedded DSP processors using data compression techniques. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 17, 7, 601-608.
[13]
PHILIPS SEMICONDUCTORS. 1997. Trimedia TM-1 Media Processor Data Book.
[14]
RAU, B. R. 1988. Cydra 5 directed dataflow architecture. In COMPCON '88 (San Francisco, 1988), 106-113.
[15]
RAU, B. R., KATHAIL, V., AND ADITYA, S. 1999. Machine-description driven compilers for EPIC and VLIW processors. Design Automation for Embedded Systems 4, 2/3, 71-118.
[16]
SCHLANSKER, M. S. AND RAU, B. R. 2000. EPIC: Explicitly parallel instruction computing. Computer 33, 2, 37-45.
[17]
VAN PRAET, J., GOOSSENS, G., LANNEER, D., AND DE MAN, H. 1994. Instruction set definition and instruction selection for ASIPs. In 7th ACM/IEEE International Symposium on High-Level Synthesis (Niagara-on-the-Lake, Ontario, Canada, 1994). IEEE, 11-16.
[18]
WOLFE, A. AND CHANIN, A. 1992. Executing compressed programs on an embedded risc architecture. In The 25th Annual International Symposium on Microarchitecture (MICRO-25) (1992). IEEE.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Design Automation of Electronic Systems
ACM Transactions on Design Automation of Electronic Systems  Volume 5, Issue 4
Oct. 2000
86 pages
ISSN:1084-4309
EISSN:1557-7309
DOI:10.1145/362652
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Journal Family

Publication History

Published: 01 October 2000
Published in TODAES Volume 5, Issue 4

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. EPIC
  2. VLIW
  3. code size minimization
  4. custom templates
  5. design automation
  6. instruction format design
  7. noop compression
  8. retargetable assembly

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)95
  • Downloads (Last 6 weeks)23
Reflects downloads up to 04 Feb 2025

Other Metrics

Citations

Cited By

View all

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Full Access

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media