Talks and Poster Presentations (with Proceedings-Entry):
F. Brandner, V. Pavlu, A. Krall:
"Execution models for processors and instructions";
Talk: Norchip 2010,
- 2010-11-16; in: "Proceedings of the 28th Norchip Conference",
Modeling the execution of a processor and its instructions is a challenging problem, in particular in the presence of long pipelines, parallelism, and out-of-order execution. A naive approach based on finite state automata inevitably leads to an explosion in the number of states and is thus only applicable to simple minimalistic processors. During their execution, instructions may only proceed forward through the processor´s datapath towards the end of the pipeline. The state of later pipeline stages is thus independent of potential hazards in preceding stages. This also applies for data hazards, i. e., we may observe data by-passing from a later stage to an earlier one, but not in the other direction. Based on this observation, we explore the use of a series of parallel finite automata to model the execution states of the processor´s resources individually. The automaton model captures state updates of the individual resources along with the movement of instructions through the pipeline. A highly flexible synchronization scheme built into the automata enables an elegant modeling of parallel computations, pipelining, and even out-of-order execution. An interesting property of our approach is the ability to model a subset of a given processor using a sub-automaton of the full execution model.
simulation execution model adl
"Official" electronic version of the publication (accessed through its Digital Object Identifier - DOI)
Electronic version of the publication:
Project Head Andreas Krall:
Optimale Code Erzeugung für explizit parallele Prozessoren
Created from the Publication Database of the Vienna University of Technology.