soc.fu.alu package¶
Subpackages¶
Submodules¶
soc.fu.alu.alu_input_record module¶
-
class
soc.fu.alu.alu_input_record.
CompALUOpSubset
(name=None)¶ Bases:
soc.fu.base_input_record.CompOpSubsetBase
a copy of the relevant subset information from Decode2Execute1Type needed for ALU operations. use with eq_from_execute1 (below) to grab subsets.
soc.fu.alu.input_stage module¶
-
class
soc.fu.alu.input_stage.
ALUInputStage
(pspec)¶ Bases:
soc.fu.common_input_stage.CommonInputStage
-
elaborate
(platform)¶
-
ispec
()¶
-
ospec
()¶
-
soc.fu.alu.main_stage module¶
-
class
soc.fu.alu.main_stage.
ALUMainStage
(pspec)¶ Bases:
nmutil.pipemodbase.PipeModBase
-
elaborate
(platform)¶
-
ispec
()¶
-
ospec
()¶
-
-
soc.fu.alu.main_stage.
calc_ov
(msb_a, msb_b, ca, msb_r)¶
soc.fu.alu.output_stage module¶
-
class
soc.fu.alu.output_stage.
ALUOutputStage
(pspec)¶ Bases:
soc.fu.common_output_stage.CommonOutputStage
-
elaborate
(platform)¶
-
ispec
()¶
-
ospec
()¶
-
soc.fu.alu.pipe_data module¶
-
class
soc.fu.alu.pipe_data.
ALUInputData
(pspec)¶ Bases:
soc.fu.pipe_data.IntegerData
-
regspec
= [('INT', 'ra', '0:63'), ('INT', 'rb', '0:63'), ('XER', 'xer_so', '32'), ('XER', 'xer_ca', '34,45')]¶
-
-
class
soc.fu.alu.pipe_data.
ALUOutputData
(pspec)¶ Bases:
soc.fu.pipe_data.IntegerData
-
regspec
= [('INT', 'o', '0:63'), ('CR', 'cr_a', '0:3'), ('XER', 'xer_ca', '34,45'), ('XER', 'xer_ov', '33,44'), ('XER', 'xer_so', '32')]¶
-
-
class
soc.fu.alu.pipe_data.
ALUPipeSpec
(id_wid)¶ Bases:
soc.fu.pipe_data.CommonPipeSpec
-
opsubsetkls
¶
-
regspec
= ([('INT', 'ra', '0:63'), ('INT', 'rb', '0:63'), ('XER', 'xer_so', '32'), ('XER', 'xer_ca', '34,45')], [('INT', 'o', '0:63'), ('CR', 'cr_a', '0:3'), ('XER', 'xer_ca', '34,45'), ('XER', 'xer_ov', '33,44'), ('XER', 'xer_so', '32')])¶
-
soc.fu.alu.pipeline module¶
-
class
soc.fu.alu.pipeline.
ALUBasePipe
(pspec)¶ Bases:
nmutil.singlepipe.ControlBase
-
elaborate
(platform)¶ handles case where stage has dynamic ready/valid functions
-