Get 20M+ Full-Text Papers For Less Than $1.50/day. Start a 14-Day Trial for You or Your Team.

Learn More →

A general framework to build new CPUs by mapping abstract machine code to instruction level parallel execution hardware

A general framework to build new CPUs by mapping abstract machine code to instruction level... Abstract machines bridge the gap between a programming language and real machines. This paper proposes a general purpose tagged execution framework that may be used to construct a CPU. The CPU may accept code written in any (abstract or real) machine instruction set, and produce tagged machine code after data conflicts are resolved. This requires the construction of a tagging unit, which emulates the sequential execution of the program using tags rather than actual values. The tagged instructions are then sent to an execution engine that maps tags to values as they become available and sends ready-to-execute instructions to arithmetic units. The process of mapping tag to value may be performed using the Tomasulo scheme, or a register scheme with the result of instructions going to registers specified by their destination tags, and waiting instructions receiving operands from registers specified by their source tags.The tagged execution framework is suitable for any instruction architecture from RISC machines to stack machines. We will illustrate with an example of a Java ILP processor using a VLIW execution engine. Some related implementing issues are discussed. http://www.deepdyve.com/assets/images/DeepDyve-Logo-lg.png ACM SIGARCH Computer Architecture News Association for Computing Machinery

A general framework to build new CPUs by mapping abstract machine code to instruction level parallel execution hardware

Loading next page...
 
/lp/association-for-computing-machinery/a-general-framework-to-build-new-cpus-by-mapping-abstract-machine-code-e5yHTNi90O

References (12)

Publisher
Association for Computing Machinery
Copyright
Copyright © 2005 by ACM Inc.
ISSN
0163-5964
DOI
10.1145/1105734.1105750
Publisher site
See Article on Publisher Site

Abstract

Abstract machines bridge the gap between a programming language and real machines. This paper proposes a general purpose tagged execution framework that may be used to construct a CPU. The CPU may accept code written in any (abstract or real) machine instruction set, and produce tagged machine code after data conflicts are resolved. This requires the construction of a tagging unit, which emulates the sequential execution of the program using tags rather than actual values. The tagged instructions are then sent to an execution engine that maps tags to values as they become available and sends ready-to-execute instructions to arithmetic units. The process of mapping tag to value may be performed using the Tomasulo scheme, or a register scheme with the result of instructions going to registers specified by their destination tags, and waiting instructions receiving operands from registers specified by their source tags.The tagged execution framework is suitable for any instruction architecture from RISC machines to stack machines. We will illustrate with an example of a Java ILP processor using a VLIW execution engine. Some related implementing issues are discussed.

Journal

ACM SIGARCH Computer Architecture NewsAssociation for Computing Machinery

Published: Nov 1, 2005

There are no references for this article.