coreblocks.func_blocks.fu.common package
Submodules
coreblocks.func_blocks.fu.common.fifo_rs module
coreblocks.func_blocks.fu.common.fu_decoder module
- class coreblocks.func_blocks.fu.common.fu_decoder.Decoder
Bases:
ElaboratableModule responsible for instruction decoding.
- Attributes:
- decode_fn: Signal
- exec_fn: View
- class coreblocks.func_blocks.fu.common.fu_decoder.DecoderManager
Bases:
objectClass responsible for instruction management.
- get_decoder(gen_params: GenParams) Decoder
Method returning auto generated instruction decoder.
- Parameters:
- gen_params: GenParams
Generation parameters passed to a decoder contructor.
- Returns:
- returnDecoder
Instance of Decoder class.
- get_function() Value
Method returning Signal Object for decoder, called function in FU blocks
- Returns:
- returnValue
Signal object.
coreblocks.func_blocks.fu.common.func_base module
coreblocks.func_blocks.fu.common.rs module
coreblocks.func_blocks.fu.common.rs_func_block module
- class coreblocks.func_blocks.fu.common.rs_func_block.RSBlockComponent
Bases:
BlockComponentParams- __init__(func_units: ~collections.abc.Collection[~coreblocks.params.fu_params.FunctionalComponentParams], rs_entries: int, rs_number: int = -1, rs_type: type[~coreblocks.func_blocks.fu.common.rs.RSBase] = <class 'coreblocks.func_blocks.fu.common.rs.RS'>) None
- func_units: Collection[FunctionalComponentParams]
- class coreblocks.func_blocks.fu.common.rs_func_block.RSFuncBlock
Bases:
FuncBlock,ElaboratableModule combining multiple functional units with single RS unit. With input interface of RS and output interface of single FU.
- Attributes:
- insert: Method
RS insert method.
- select: Method
RS select method.
- update: Methods
RS update methods.
- get_result: Method
Method used for getting single result out of one of the FUs. It uses layout described by FuncUnitLayouts.
- __init__(gen_params: GenParams, func_units: Iterable[tuple[FuncUnit, set[OpType], bool]], rs_entries: int, rs_number: int, rs_type: type[RSBase])
- Parameters:
- gen_params: GenParams
Core generation parameters.
- func_units: Iterable[FuncUnit]
Functional units to be used by this module.
- rs_entries: int
Number of entries in RS.
- rs_number: int
The number of this RS block. Used for debugging.
- rs_type: type[RSBase]
The RS type to use.