Struct mcpat_sys::system_core [] [src]

pub struct system_core {
    pub clock_rate: c_int,
    pub opt_local: c_bool,
    pub x86: c_bool,
    pub machine_bits: c_int,
    pub virtual_address_width: c_int,
    pub physical_address_width: c_int,
    pub opcode_width: c_int,
    pub micro_opcode_width: c_int,
    pub instruction_length: c_int,
    pub machine_type: c_int,
    pub internal_datapath_width: c_int,
    pub number_hardware_threads: c_int,
    pub fetch_width: c_int,
    pub number_instruction_fetch_ports: c_int,
    pub decode_width: c_int,
    pub issue_width: c_int,
    pub peak_issue_width: c_int,
    pub commit_width: c_int,
    pub pipelines_per_core: [c_int; 20],
    pub pipeline_depth: [c_int; 20],
    pub FPU: [c_char; 20],
    pub divider_multiplier: [c_char; 20],
    pub ALU_per_core: c_int,
    pub FPU_per_core: c_double,
    pub MUL_per_core: c_int,
    pub instruction_buffer_size: c_int,
    pub decoded_stream_buffer_size: c_int,
    pub instruction_window_scheme: c_int,
    pub instruction_window_size: c_int,
    pub fp_instruction_window_size: c_int,
    pub ROB_size: c_int,
    pub archi_Regs_IRF_size: c_int,
    pub archi_Regs_FRF_size: c_int,
    pub phy_Regs_IRF_size: c_int,
    pub phy_Regs_FRF_size: c_int,
    pub rename_scheme: c_int,
    pub checkpoint_depth: c_int,
    pub register_windows_size: c_int,
    pub LSU_order: [c_char; 20],
    pub store_buffer_size: c_int,
    pub load_buffer_size: c_int,
    pub memory_ports: c_int,
    pub Dcache_dual_pump: [c_char; 20],
    pub RAS_size: c_int,
    pub fp_issue_width: c_int,
    pub prediction_width: c_int,
    pub number_of_BTB: c_int,
    pub number_of_BPT: c_int,
    pub total_instructions: c_double,
    pub int_instructions: c_double,
    pub fp_instructions: c_double,
    pub branch_instructions: c_double,
    pub branch_mispredictions: c_double,
    pub committed_instructions: c_double,
    pub committed_int_instructions: c_double,
    pub committed_fp_instructions: c_double,
    pub load_instructions: c_double,
    pub store_instructions: c_double,
    pub total_cycles: c_double,
    pub idle_cycles: c_double,
    pub busy_cycles: c_double,
    pub instruction_buffer_reads: c_double,
    pub instruction_buffer_write: c_double,
    pub ROB_reads: c_double,
    pub ROB_writes: c_double,
    pub rename_accesses: c_double,
    pub fp_rename_accesses: c_double,
    pub rename_reads: c_double,
    pub rename_writes: c_double,
    pub fp_rename_reads: c_double,
    pub fp_rename_writes: c_double,
    pub inst_window_reads: c_double,
    pub inst_window_writes: c_double,
    pub inst_window_wakeup_accesses: c_double,
    pub inst_window_selections: c_double,
    pub fp_inst_window_reads: c_double,
    pub fp_inst_window_writes: c_double,
    pub fp_inst_window_wakeup_accesses: c_double,
    pub fp_inst_window_selections: c_double,
    pub archi_int_regfile_reads: c_double,
    pub archi_float_regfile_reads: c_double,
    pub phy_int_regfile_reads: c_double,
    pub phy_float_regfile_reads: c_double,
    pub phy_int_regfile_writes: c_double,
    pub phy_float_regfile_writes: c_double,
    pub archi_int_regfile_writes: c_double,
    pub archi_float_regfile_writes: c_double,
    pub int_regfile_reads: c_double,
    pub float_regfile_reads: c_double,
    pub int_regfile_writes: c_double,
    pub float_regfile_writes: c_double,
    pub windowed_reg_accesses: c_double,
    pub windowed_reg_transports: c_double,
    pub function_calls: c_double,
    pub context_switches: c_double,
    pub ialu_accesses: c_double,
    pub fpu_accesses: c_double,
    pub mul_accesses: c_double,
    pub cdb_alu_accesses: c_double,
    pub cdb_mul_accesses: c_double,
    pub cdb_fpu_accesses: c_double,
    pub load_buffer_reads: c_double,
    pub load_buffer_writes: c_double,
    pub load_buffer_cams: c_double,
    pub store_buffer_reads: c_double,
    pub store_buffer_writes: c_double,
    pub store_buffer_cams: c_double,
    pub store_buffer_forwards: c_double,
    pub main_memory_access: c_double,
    pub main_memory_read: c_double,
    pub main_memory_write: c_double,
    pub pipeline_duty_cycle: c_double,
    pub IFU_duty_cycle: c_double,
    pub BR_duty_cycle: c_double,
    pub LSU_duty_cycle: c_double,
    pub MemManU_I_duty_cycle: c_double,
    pub MemManU_D_duty_cycle: c_double,
    pub ALU_duty_cycle: c_double,
    pub MUL_duty_cycle: c_double,
    pub FPU_duty_cycle: c_double,
    pub ALU_cdb_duty_cycle: c_double,
    pub MUL_cdb_duty_cycle: c_double,
    pub FPU_cdb_duty_cycle: c_double,
    pub vdd: c_double,
    pub power_gating_vcc: c_double,
    pub predictor: predictor_systemcore,
    pub itlb: itlb_systemcore,
    pub icache: icache_systemcore,
    pub dtlb: dtlb_systemcore,
    pub dcache: dcache_systemcore,
    pub BTB: BTB_systemcore,
}

Fields

clock_rate: c_int opt_local: c_bool x86: c_bool machine_bits: c_int virtual_address_width: c_int physical_address_width: c_int opcode_width: c_int micro_opcode_width: c_int instruction_length: c_int machine_type: c_int internal_datapath_width: c_int number_hardware_threads: c_int fetch_width: c_int number_instruction_fetch_ports: c_int decode_width: c_int issue_width: c_int peak_issue_width: c_int commit_width: c_int pipelines_per_core: [c_int; 20] pipeline_depth: [c_int; 20] FPU: [c_char; 20] divider_multiplier: [c_char; 20] ALU_per_core: c_int FPU_per_core: c_double MUL_per_core: c_int instruction_buffer_size: c_int decoded_stream_buffer_size: c_int instruction_window_scheme: c_int instruction_window_size: c_int fp_instruction_window_size: c_int ROB_size: c_int archi_Regs_IRF_size: c_int archi_Regs_FRF_size: c_int phy_Regs_IRF_size: c_int phy_Regs_FRF_size: c_int rename_scheme: c_int checkpoint_depth: c_int register_windows_size: c_int LSU_order: [c_char; 20] store_buffer_size: c_int load_buffer_size: c_int memory_ports: c_int Dcache_dual_pump: [c_char; 20] RAS_size: c_int fp_issue_width: c_int prediction_width: c_int number_of_BTB: c_int number_of_BPT: c_int total_instructions: c_double int_instructions: c_double fp_instructions: c_double branch_instructions: c_double branch_mispredictions: c_double committed_instructions: c_double committed_int_instructions: c_double committed_fp_instructions: c_double load_instructions: c_double store_instructions: c_double total_cycles: c_double idle_cycles: c_double busy_cycles: c_double instruction_buffer_reads: c_double instruction_buffer_write: c_double ROB_reads: c_double ROB_writes: c_double rename_accesses: c_double fp_rename_accesses: c_double rename_reads: c_double rename_writes: c_double fp_rename_reads: c_double fp_rename_writes: c_double inst_window_reads: c_double inst_window_writes: c_double inst_window_wakeup_accesses: c_double inst_window_selections: c_double fp_inst_window_reads: c_double fp_inst_window_writes: c_double fp_inst_window_wakeup_accesses: c_double fp_inst_window_selections: c_double archi_int_regfile_reads: c_double archi_float_regfile_reads: c_double phy_int_regfile_reads: c_double phy_float_regfile_reads: c_double phy_int_regfile_writes: c_double phy_float_regfile_writes: c_double archi_int_regfile_writes: c_double archi_float_regfile_writes: c_double int_regfile_reads: c_double float_regfile_reads: c_double int_regfile_writes: c_double float_regfile_writes: c_double windowed_reg_accesses: c_double windowed_reg_transports: c_double function_calls: c_double context_switches: c_double ialu_accesses: c_double fpu_accesses: c_double mul_accesses: c_double cdb_alu_accesses: c_double cdb_mul_accesses: c_double cdb_fpu_accesses: c_double load_buffer_reads: c_double load_buffer_writes: c_double load_buffer_cams: c_double store_buffer_reads: c_double store_buffer_writes: c_double store_buffer_cams: c_double store_buffer_forwards: c_double main_memory_access: c_double main_memory_read: c_double main_memory_write: c_double pipeline_duty_cycle: c_double IFU_duty_cycle: c_double BR_duty_cycle: c_double LSU_duty_cycle: c_double MemManU_I_duty_cycle: c_double MemManU_D_duty_cycle: c_double ALU_duty_cycle: c_double MUL_duty_cycle: c_double FPU_duty_cycle: c_double ALU_cdb_duty_cycle: c_double MUL_cdb_duty_cycle: c_double FPU_cdb_duty_cycle: c_double vdd: c_double power_gating_vcc: c_double predictor: predictor_systemcore itlb: itlb_systemcore icache: icache_systemcore dtlb: dtlb_systemcore dcache: dcache_systemcore BTB: BTB_systemcore

Trait Implementations

Derived Implementations

impl Debug for system_core
[src]

fn fmt(&self, __arg_0: &mut Formatter) -> Result

Formats the value using the given formatter.

impl Copy for system_core
[src]

impl Clone for system_core
[src]

fn clone(&self) -> system_core

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)
1.0.0

Performs copy-assignment from source. Read more