def __init__(self):
     self.busy = pybfms.lock()
     self.ack_ev = pybfms.event()
     self.addr_width = 0
     self.data_width = 0
     self.reset_ev = pybfms.event()
     self.is_reset = False
 def __init__(self):
     self.ADR_WIDTH = 0
     self.DAT_WIDTH = 0
     self.RD_CYCLES = 0
     self.RW_CYCLES = 0
     self.busy = pybfms.lock()
     self.ack_ev = pybfms.event()
     self.reset_ev = pybfms.event()
     self.is_reset = False
     self.read_data = 0
 def __init__(self):
     self.data_width = 0
     self.addr_width = 0
     self.endian = 0
     self.lock = pybfms.lock()
     self.ack_ev = pybfms.event()
     self.read_data = None
     self.mem = []
Beispiel #4
0
    async def recv(self):
        ev = pybfms.event()

        def cb(data):
            nonlocal ev
            ev.set(data)

        self.add_recv_cb(cb)
        await ev.wait()
        self.del_recv_cb(cb)

        return ev.data
Beispiel #5
0
    def __init__(self):
        super().__init__(32, 32, True)
        self.busy = pybfms.lock()
        self.is_reset = False
        self.reset_ev = pybfms.event()
        
        self.en_disasm = True
        
        self.window_mgr = CallframeWindowMgr(
            8,
            self._set_func_s,
            self._clr_func,
            lambda t : self._set_tid_s(t.tid))
        
        self.regs = [0]*32
        
        self.last_instr = 0
        
        self.sp_l = set()
        self.last_sp = 0x00000000
        
        self.last_limit = 0

        self.trace_level : RiscvDebugTraceLevel = RiscvDebugTraceLevel.All
Beispiel #6
0
 def __init__(self):
     self.busy = pybfms.lock()
     self.ack_ev = pybfms.event()
     self.data_width = 0
Beispiel #7
0
 def __init__(self):
     self.data_width = 0
     self.recv_cb = []
     self.have_reset = False
     self.reset_ev = pybfms.event()
Beispiel #8
0
 def __init__(self):
     self.recv_cb = []
     self.tx_busy = pybfms.lock()
     self.tx_ev = pybfms.event()
     pass