Skip to main content
Log in

The ArchC Architecture Description Language and Tools

  • Published:
International Journal of Parallel Programming Aims and scope Submit manuscript

Abstract

This paper presents an architecture description language (ADL) called ArchC, which is an open-source SystemC-based language that is specialized for processor architecture description. Its main goal is to provide enough information, at the right level of abstraction, in order to allow users to explore and verify new architectures, by automatically generating software tools like simulators and co-verification interfaces. ArchC’s key features are a storage-based co-verification mechanism that automatically checks the consistency of a refined ArchC model against a reference (functional) description, memory hierarchy modeling capability, the possibility of integration with other SystemC IPs and the automatic generation of high-level SystemC simulators and assemblers. We have used ArchC to synthesize both functional and cycle-based simulators for the MIPS and Intel 8051 processors, as well as functional models of architectures like SPARC V8, TMS320C62x, XScale and PowerPC.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. OSCI, SystemC Version 2.0 User’s Guide (2001)

  2. http://www.archc.org, The ArchC Resource Center.

  3. A. Fauth, J. Van Praete, and M. Freericks, Describing Instruction Set Processors using nML, In Proc. European Design and Test Conf. Paris, pp. 503–507 (March 1995), URL citeseer.nj.nec.com/fauth95describing.html.

  4. M. R. Hartoog, J. A. Rowson, P. D. Reddy, S. Desai, D. D. Dunlop, E. A. Harcourt, and N. Khullar, Generation of Software Tools from Processor Descriptions for Hardware/Software Codesign, In Proc. Design Automation Conference, pp. 303–306 (1997), URL citeseer.nj.nec.com/hartoog97generation.html.

  5. V. Zivojnovic, S. Pees, and H. Meyr, LISA—Machine Description Language and Generic Machine Model for HW/SW Co-Design, Proceedings of the IEEE Workshop on VLSI Signal Processing, San Francisco (1996), URL citeseer.nj.nec.com/zivojnovic96dsp.html.

  6. A. Hoffmann, T. Kogel, and H. Meyr, A Framework for Fast Hardware-Software Cosimulation, Proceedings of Design, Automation and Test in Europe Conference (DATE) (March 2001).

  7. A. Nohl, G. Braun, O. Schliebusch, R. Leupers, H. Meyr, and A. Hoffmann, A Universal Technique for Fast and Flexible Instruction-Set Architecture Simulation, Proceedings of Design and Automation Conference (DAC) (June 2002).

  8. A. Halambi, P. Grun, V. Ganesh, A. Khare, N. Dutt, and A. Nicolau, EXPRESSION: A Language for Architecture Exploration through Compiler/Simulator Retargetability, In Proc. European Conference on Design, Automation and Test (DATE) (March 1999).

  9. M. Reshadi, P. Mishra, and N. Dutt, Instruction Set Compiled Simulation: A Technique for Fast and Flexible Instruction Set Simulation, Proceedings of Design and Automation Conference (DAC) (2003).

  10. G. Hadjiyiannis, S. Hanono, and S. Devadas, ISDL: An Instruction Set Description Language for Retargetability, Design Automation Conference (DAC), pp. 299–302 (1997), URL citeseer.nj.nec.com/hadjiyiannis97isdl.html.

  11. G. Hadjiyiannis and S. Devadas, Techniques for Accurate Performance Evaluation in Architecture Exploration, IEEE Transactions on VLSI Systems (2002), URL citeseer.nj.nec.com/hadjiyiannis02techniques.html.

  12. J. Hennessy and D. Patterson, Computer Organization & Design: The Hardware/Software Interface, Morgan Kaufmann (1998).

  13. B. Cmelik and D. Keppel, Shade: A Fast Instruction-Set Simulator for Execution Profiling, ACM SIGMETRICS Performance Evaluation Review, 22(1):128–137 (May 1994), URL citeseer.nj.nec.com/article/cmelik93shade.html.

  14. P. Viana, E. Barros, S. Rigo, R. Azevedo, and G. Araújo, Exploring Memory Hierarchy with ArchC, Proc. of the 15th Symp. on Computer Architecture and High Performance Computing, São Paulo, (SBAC-PAD’03) (November 2003).

  15. P. Viana, E. Barros, S. Rigo, R. Azevedo, and G. Araújo, Modeling and Simulating Memory Hierarchies in a Platform-Based Design Methodology, Proc. of the Design, Automation and Test in Europe (DATE’04), Paris (February 2004).

  16. M. Reshadi, N. Bansal, P. Mishra, and N. Dutt, An Efficient Retargetable Framework for Instruction-Set Simulation, Proceedings of the 2003 International Symposium on System Synthesis (ISSS-2003), Newport Beach, California (October 2003).

  17. C. Lee, M. Potkonjak, and W. H. Mangione-Smith, Mediabench; A Tool fo Evaluating and Synthesizing Multimedia and Communications Systems, Proc. of 30th Annual International Symposium on Microarchitecture (December 1997).

  18. M. R. Guthaus, J. S. Ringenberg, D. Ernst, T. M. Austin, T. Mudge, and R. B. Brown, MiBench: A Free, Commercially Representative Embedded Benchmark Suite, IEEE 4th Annual Workshop on Workload Characterization, Austin, TX (December 2001).

  19. S. Rigo, M. Juliato, R. Azevedo, G. Araujo and P. Centoducatte. Teaching Computer Architecture Using an Architecture Description Language, Proceedings of the Workshop on Computer Architecture Education (WCAE), held in conjunction with the International Symposium on Computer Architecture (INCA), Munich (June 2004).

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Rodolfo Azevedo.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Azevedo, R., Rigo, S., Bartholomeu, M. et al. The ArchC Architecture Description Language and Tools. Int J Parallel Prog 33, 453–484 (2005). https://doi.org/10.1007/s10766-005-7301-0

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10766-005-7301-0

Keywords

Navigation