コード例 #1
0
ファイル: ram.py プロジェクト: Nic30/hwtLib
 def connectPort(self, port: BramPort_withoutClk, mem: RtlSignal):
     If(self.clk._onRisingEdge() & port.en,
        If(port.we,
           mem[port.addr](port.din)
        ),
        port.dout(mem[port.addr])
     )
コード例 #2
0
ファイル: ram.py プロジェクト: mfkiwl/hwtLib
 def connect_port(clk: RtlSignal, port: BramPort_withoutClk, mem: RtlSignal):
     if port.HAS_R and port.HAS_W:
         If(clk._onRisingEdge(),
             If(port.en,
                 *RamSingleClock.mem_write(mem, port),
                 port.dout(mem[port.addr])
             )
         )
     elif port.HAS_R:
         If(clk._onRisingEdge(),
             If(port.en,
                 port.dout(mem[port.addr])
             )
         )
     elif port.HAS_W:
         If(clk._onRisingEdge(),
             If(port.en,
                *RamSingleClock.mem_write(mem, port),
             )
         )
     else:
         raise AssertionError("Bram port has to have at least write or read part")
コード例 #3
0
ファイル: ram.py プロジェクト: jesseclin/hwtLib
 def connectPort(self, port: BramPort_withoutClk, mem: RtlSignal):
     If(self.clk._onRisingEdge() & port.en,
        If(port.we, mem[port.addr](port.din)), port.dout(mem[port.addr]))