An ADL for Functional Specification of IA32

Many architecture description languages (ADL) have been recently proposed to automate the design of new microprocessors and their related development tools. However, none of those comes close to fully describing the IA32 architecture. In this paper, we present an ADL that is custom designed for the IA32 architecture. The ADL supports the unique features of IA32 that are generally ignored by other ADLs. It features a high-level type system, simple syntax, and a well-understood computation model. The ADL is analyzable in that it preserves high-level architectural features in its descriptions. It is also executable since it has bit-accurate semantics free of ambiguity. The ADL is expected to be used as a unified IA32 description for an instruction set simulator, a functional test generator, and possibly other tools.

[1]  Edward A. Lee,et al.  Static Scheduling of Synchronous Data Flow Programs for Digital Signal Processing , 1989, IEEE Transactions on Computers.

[2]  Sharad Malik,et al.  A formal concurrency model based architecture description language for synthesis of software development tools , 2004, LCTES '04.

[3]  Mario Barbacci,et al.  Instruction set processor specifications (ISPS): The notation and its applications , 1981, IEEE Transactions on Computers.

[4]  Nikil D. Dutt,et al.  EXPRESSION: a language for architecture exploration through compiler/simulator retargetability , 1999, Design, Automation and Test in Europe Conference and Exhibition, 1999. Proceedings (Cat. No. PR00078).

[5]  S. Devadas,et al.  ISDL: An Instruction Set Description Language For Retargetability , 1997, Proceedings of the 34th Design Automation Conference.

[6]  Gjalt G. de Jong Data flow graphs: system specification with the most unrestricted semantics , 1991, EURO-DAC.

[7]  Bozena Kaminska,et al.  Scheduling of a Control and Data Flow Graph , 1993, ISCAS.

[8]  Markus Freericks,et al.  Describing instruction set processors using nML , 1995, Proceedings the European Design and Test Conference. ED&TC 1995.

[9]  Edward A. Lee,et al.  Scheduling dynamic dataflow graphs with bounded memory using the token flow model , 1993, 1993 IEEE International Conference on Acoustics, Speech, and Signal Processing.

[10]  Gilles Kahn,et al.  The Semantics of a Simple Language for Parallel Programming , 1974, IFIP Congress.

[11]  Norman Ramsey,et al.  The New Jersey Machine-Code Toolkit , 1995, USENIX.

[12]  B. Kaminska,et al.  Scheduling of a control data flow graph , 1993, 1993 IEEE International Symposium on Circuits and Systems.

[13]  赤星 博輝,et al.  A study on design support for computer architecture design , 1996 .