Пример #1
0
    def __init__(self):
        self.submodules.dut = LASMIcon(sdram_phy, sdram_geom, sdram_timing)
        self.submodules.xbar = lasmibus.Crossbar([self.dut.lasmic], self.dut.nrowbits)
        self.submodules.logger = DFILogger(self.dut.dfi)

        masters = [self.xbar.get_master() for i in range(6)]
        self.initiators = [Initiator(my_generator(n), master)
            for n, master in enumerate(masters)]
        self.submodules += self.initiators
Пример #2
0
 def __init__(self):
     self.submodules.ctler = LASMIcon(sdram_phy, sdram_geom, sdram_timing)
     self.submodules.xbar = lasmibus.Crossbar([self.ctler.lasmic],
                                              self.ctler.nrowbits)
     self.submodules.logger = DFILogger(self.ctler.dfi)
     self.submodules.bridge = wishbone2lasmi.WB2LASMI(
         l2_size // 4, self.xbar.get_master())
     self.submodules.initiator = wishbone.Initiator(my_generator())
     self.submodules.conn = wishbone.InterconnectPointToPoint(
         self.initiator.bus, self.bridge.wishbone)
Пример #3
0
    def __init__(self):
        self.submodules.ctler = LASMIcon(sdram_phy, sdram_geom, sdram_timing)
        self.submodules.xbar = lasmibus.Crossbar([self.ctler.lasmic], self.ctler.nrowbits)
        self.submodules.logger = DFILogger(self.ctler.dfi)
        self.submodules.writer = dma_lasmi.Writer(self.xbar.get_master())

        self.comb += self.writer.address_data.stb.eq(1)
        pl = self.writer.address_data.payload
        pl.a.reset = 255
        pl.d.reset = pl.a.reset*2
        self.sync += If(self.writer.address_data.ack,
            pl.a.eq(pl.a + 1),
            pl.d.eq(pl.d + 2)
        )
        self.open_row = None