Struct gpcas_cpu_model::CPUModel [−][src]
pub struct CPUModel {
pub max_vector_size: usize,
pub execution_latencies: InstructionLatencies,
pub fetch_config: FetchConfig,
pub memory_controller_config: MemoryControllerConfig,
pub caches: Vec<CacheConfig>,
pub decoder_count: usize,
pub reg_file_config: RegisterFileConfig,
pub schedulers: Vec<SchedulerConfig>,
pub pipelines: Vec<PipelineConfig>,
}
Expand description
The configuration of an abstract CPU model.
Fields
max_vector_size: usize
The maximum supported vector size of the model in bits.
execution_latencies: InstructionLatencies
The ALU latency of each instruction class.
fetch_config: FetchConfig
Configuration for the fetch stage of the front end.
memory_controller_config: MemoryControllerConfig
Configuration for the memory controller.
caches: Vec<CacheConfig>
Caches of the memory hierarchy.
decoder_count: usize
The amount of parallel decoders.
reg_file_config: RegisterFileConfig
Configuration of the register file.
schedulers: Vec<SchedulerConfig>
Configuration of schedulers.
pipelines: Vec<PipelineConfig>
Configuration for each pipeline from front end to the last stage.
Implementations
Trait Implementations
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
A string used as identifier in every file of this type.
The current file version.
A slice of compatible file versions, along with a pointer to a function that deserializes the inner data of a GPCAS file into this type. Read more