Source code for hwtLib.amba.axi_comp.lsu.hIOs

from hwt.hwIO import HwIO
from hwt.hwIOs.std import HwIODataRdVld, HwIOVectSignal, HwIOSignal
from hwt.hwParam import HwParam
from hwt.pyUtils.typingFuture import override
from hwtLib.amba.axi3Lite import Axi3Lite_addr, Axi3Lite_r
from hwtLib.amba.axi4s import Axi4Stream
from hwtSimApi.hdlSimulator import HdlSimulator
from ipCorePackager.constants import DIRECTION


[docs] class HwIOAxiWriteAggregatorWriteTmp(Axi4Stream): """ HwIO for tmp input register on store buffer write input :ivar cam_lookup: HwIOVectSignal with value of lookup from item cam (1 if cacheline present in store buffer) :ivar mask_byte_unaligned: HwIOSignal 1 if any byte of mask is 0 or all 1 .. hwt-autodoc:: """ @override def hwConfig(self): Axi4Stream.hwConfig(self) self.USE_STRB = True self.ADDR_WIDTH = HwParam(32) self.ITEMS = HwParam(64) @override def hwDeclr(self): self.addr = HwIOVectSignal(self.ADDR_WIDTH) Axi4Stream.hwDeclr(self) self.colides_with_last_addr = HwIOSignal() self.cam_lookup = HwIOVectSignal(self.ITEMS) self.mask_byte_unaligned = HwIOSignal()
[docs] @override def _initSimAgent(self, sim: HdlSimulator): raise NotImplementedError()
[docs] class HwIOAxiWriteAggregatorRead(HwIO): """ An interface which is used to speculatively read data from AxiWriteAggregator .. hwt-autodoc:: """ @override def hwConfig(self): self.ADDR_WIDTH = HwParam(32) self.DATA_WIDTH = HwParam(64) @override def hwDeclr(self): self.a = Axi3Lite_addr() self.r_data_available = HwIODataRdVld() self.r_data_available.DATA_WIDTH = 1 self.r = Axi3Lite_r()
[docs] @override def _initSimAgent(self, sim: HdlSimulator): raise NotImplementedError()