coreblocks.func_blocks.fu.lsu package
Submodules
coreblocks.func_blocks.fu.lsu.dummyLsu module
- class coreblocks.func_blocks.fu.lsu.dummyLsu.LSUComponent
Bases:
FunctionalComponentParams
- get_optypes() set[coreblocks.arch.optypes.OpType]
- class coreblocks.func_blocks.fu.lsu.dummyLsu.LSUDummy
Bases:
FuncUnit
,Elaboratable
Very simple LSU, which serializes all stores and loads. It isn’t fully compliant with RiscV spec. Doesn’t support checking if address is in correct range. Addresses have to be aligned.
- __init__(gen_params: GenParams, bus: BusMasterInterface) None
- Parameters
- gen_paramsGenParams
Parameters to be used during processor generation.
- busBusMasterInterface
An instance of the bus master for interfacing with the data bus.
coreblocks.func_blocks.fu.lsu.lsu_requester module
- class coreblocks.func_blocks.fu.lsu.lsu_requester.LSURequester
Bases:
Elaboratable
Bus request logic for the load/store unit. Its job is to interface between the LSU and the bus.
- Attributes
- issueMethod
Issues a new request to the bus.
- acceptMethod
Retrieves a result from the bus.
- __init__(gen_params: GenParams, bus: BusMasterInterface, depth: int = 4) None
- Parameters
- gen_paramsGenParams
Parameters to be used during processor generation.
- busBusMasterInterface
An instance of the bus master for interfacing with the data bus.
- depthint
Number of requests which can be send to memory, before it provides first response. Describe the resiliency of LSURequester to latency of memory in case when memory is fully pipelined.
coreblocks.func_blocks.fu.lsu.pma module
- class coreblocks.func_blocks.fu.lsu.pma.PMAChecker
Bases:
Elaboratable
Implementation of physical memory attributes checker. It may or may not be a part of LSU. This is a combinational circuit with return value read from result output.
- Attributes
- addrSignal
Memory address, for which PMAs are requested.
- resultView
PMAs for given address.
- class coreblocks.func_blocks.fu.lsu.pma.PMALayout
Bases:
StructLayout
- __init__()
- class coreblocks.func_blocks.fu.lsu.pma.PMARegion
Bases:
object
Data class for physical memory attributes contiguous region of memory. Region of memory includes both start and end address.
- Attributes
- startint
Defines beginning of region, start address is included in the region.
- endint
Defines end of region, end address is included in the region.
- mmiobool
Value True for this field indicates that memory region is MMIO.