Difference between revisions of "CPU Models"

From gem5
Jump to: navigation, search
 
Line 1: Line 1:
* [[SimpleCPU]] - The SimpleCPU models.  A good place to start learning about how to fetch, decode, execute, and complete instructions in M5.
+
* [[SimpleCPU]] - A good place to start learning about how to fetch, decode, execute, and complete instructions in M5.
* [[DetailedCPU]] - The DetailedCPU model.  Specific documentation on how all of the pipeline stages work, and how to modify and create new CPU models based on it.
+
* [[DetailedCPU]] - Specific documentation on how all of the pipeline stages work, and how to modify and create new CPU models based on it.
* [[Checker]] - The Checker.  Details how to use it in your CPU model.
+
* [[Checker]] - Details how to use it in your CPU model.
  
 
==Supporting classes==
 
==Supporting classes==
* [[StaticInst]] - The StaticInst class.  Used to hold static information about specific binary instructions, such as addq's or subq's.
+
* [[StaticInst]] - Used to hold static information and methods about specific binary instructions, such as addq's or subq's.
* [[DynInst]] - The DynInst class.  Used to hold dynamic information about instructions in the pipeline, such as the PC or predicted target.
+
* [[DynInst]] - Used to hold dynamic information about instructions in the pipeline, such as the PC or predicted target.
 +
* [[ThreadState]] - Used to store thread information that is generic across CPU models.
 +
 
 +
==Interfaces==
 +
* [[ThreadContext]] - The ThreadContext class.  Used to provide an interface for objects outside of the CPU to access the specific thread state.
 +
* [[ExecContext]] - The ExecContext interface.  An implicit interface that is used by the ISA in order to access the CPU's architected state.

Revision as of 11:12, 13 June 2006

  • SimpleCPU - A good place to start learning about how to fetch, decode, execute, and complete instructions in M5.
  • DetailedCPU - Specific documentation on how all of the pipeline stages work, and how to modify and create new CPU models based on it.
  • Checker - Details how to use it in your CPU model.

Supporting classes

  • StaticInst - Used to hold static information and methods about specific binary instructions, such as addq's or subq's.
  • DynInst - Used to hold dynamic information about instructions in the pipeline, such as the PC or predicted target.
  • ThreadState - Used to store thread information that is generic across CPU models.

Interfaces

  • ThreadContext - The ThreadContext class. Used to provide an interface for objects outside of the CPU to access the specific thread state.
  • ExecContext - The ExecContext interface. An implicit interface that is used by the ISA in order to access the CPU's architected state.