coreblocks.frontend package
Submodules
coreblocks.frontend.frontend module
- class coreblocks.frontend.frontend.CoreFrontend
Bases:
Elaboratable
Frontend of the core.
- Attributes
- consume_instr: Method
Consume a single decoded instruction.
- resume_from_exception: Method
Resume the frontend from the given PC after an exception.
- resume_from_unsafe: Method
Resume the frontend from the given PC after an unsafe instruction.
- stall: Method
Stall and flush the frontend.
- __init__(*, gen_params: GenParams, instr_bus: BusMasterInterface)
coreblocks.frontend.frontend_params module
- class coreblocks.frontend.frontend_params.FrontendParams
Bases:
object
- fb_addr(pc: amaranth.hdl._ast.Value | int | enum.Enum | amaranth.hdl._ast.ValueCastable) Value
Returns the fetch block address of a given PC.
- fb_instr_idx(pc: amaranth.hdl._ast.Value | int | enum.Enum | amaranth.hdl._ast.ValueCastable) Value
Returns the index of an instruction in a fetch block for a given instruction PC.
- pc_from_fb(fb_addr: amaranth.hdl._ast.Value | int | enum.Enum | amaranth.hdl._ast.ValueCastable, fb_instr_idx: int | amaranth.hdl._ast.Value) Value
For a given fetch block address and an instruction index, returns the instruction’s PC.