Exemplo n.º 1
0
 def __init__(self):
     super().__init__("ir")
     self.v = 0
     self.data = Signal(self, "data", 8)
     self.instr = Signal(self, "instr", 8)
     self.imm = Signal(self, "imm", 8)
     self.we = NotifySignal(self, "we", 1)
     self.oe = NotifySignal(self, "oe", 1)
Exemplo n.º 2
0
 def __init__(self):
     super().__init__("alu")
     self.a = Signal(self, "a", 9)
     self.b = Signal(self, "b", 8)
     self.out = Signal(self, "out", 9)
     self.fn = Signal(self, "fn", 1)
     self.oe = NotifySignal(self, "oe", 1)
     self.we = NotifySignal(self, "we", 1)
     self.v = 0
Exemplo n.º 3
0
 def __init__(self, n):
     super().__init__("pc " + n)
     self.v = 0
     self.addr = Signal(self, "addr", 8)
     self.data = Signal(self, "data", 8)
     self.rst = NotifySignal(self, "rst", 1)
     self.inc = NotifySignal(self, "inc", 1)
     self.we = NotifySignal(self, "we", 1)
     self.co = Signal(self, "co", 1)
Exemplo n.º 4
0
 def __init__(self):
     super().__init__("logic")
     self.a = NotifySignal(self, "a", 8)
     self.b = NotifySignal(self, "b", 8)
     self.fn = NotifySignal(self, "fn", 4)
     self.out = Signal(self, "out", 8)
     self.fi = NotifySignal(self, "fi", 4)
     self.fo = Signal(self, "fo", 4)
     self.oe = NotifySignal(self, "oe", 1)
Exemplo n.º 5
0
 def __init__(self):
     super().__init__("decoder")
     self.clk = NotifySignal(self, "clk", 1)
     self.addr = Signal(self, "addr", 6)
     self.data = Signal(self, "data", 8)
     self.we = Signal(self, "we", 1)
     self.oe = Signal(self, "oe", 1)
     self.acc = 0
     self.adreg = 0
     self.pc = 0
     self.states = 0
Exemplo n.º 6
0
    def __init__(self):
        super().__init__("decoder")

        self.clk = NotifySignal(self, "clk", 1)

        self.ram_oe = Signal(self, "ram_oe", 1)
        self.ram_we = Signal(self, "ram_oe", 1)
        self.ar_oe = Signal(self, "ar_oe", 1)
        self.ar_we = Signal(self, "ar_we", 1)
        self.ir_oe = Signal(self, "ir_oe", 1)
        self.ir_we = Signal(self, "ir_we", 1)
        self.pc_we = Signal(self, "pc_we", 1)
        self.pc_oe = Signal(self, "pc_oe", 1)
        self.pc_inc = Signal(self, "pc_inc", 1)
        self.a_oe = Signal(self, "a_oe", 1)
        self.a_we = Signal(self, "a_we", 1)
        self.a_cc = Signal(self, "a_cc", 1)
        self.x_oe = Signal(self, "a_oe", 1)
        self.x_we = Signal(self, "a_we", 1)
        self.alu_oe = Signal(self, "alu_oe", 1)
        self.alu_we = Signal(self, "alu_we", 1)
        self.idx_en = Signal(self, "idx_en", 1)

        self.carry = Signal(self, "carry", 1)
        self.z = Signal(self, "z", 1)

        self.instr = Signal(self, "instr", 3)

        self.state = 0
        self.last_clk = None
Exemplo n.º 7
0
 def __init__(self):
     super().__init__("accumulator", width=9)
     self.z = Signal(self, "z", 1)
     self.cc = NotifySignal(self, "cc", 1)
Exemplo n.º 8
0
 def __init__(self):
     super().__init__("ram_index")
     self.addr = NotifySignal(self, "addr", 12)
     self.x = NotifySignal(self, "x", 8)
     self.out = Signal(self, "out", 12)
     self.en = NotifySignal(self, "en", 1)
Exemplo n.º 9
0
    def __init__(self):
        super().__init__("decoder")
        self.instr = Signal(self, "instr", 8)
        self.flags = Signal(self, "flags", 4)
        self.clk = NotifySignal(self, "clk", 2)

        self.al_ie = Signal(self, "al_ie", 1)
        self.ah_ie = Signal(self, "ah_ie", 1)
        self.bl_ie = Signal(self, "bl_ie", 1)
        self.bh_ie = Signal(self, "bh_ie", 1)
        self.cl_ie = Signal(self, "cl_ie", 1)
        self.ch_ie = Signal(self, "ch_ie", 1)
        self.dl_ie = Signal(self, "dl_ie", 1)
        self.dh_ie = Signal(self, "dh_ie", 1)
        self.e_ie = Signal(self, "e_ie", 1)
        self.f_ie = Signal(self, "f_ie", 1)
        self.g_ie = Signal(self, "g_ie", 1)
        self.h_ie = Signal(self, "h_ie", 1)
        self.t_ie = Signal(self, "t_ie", 1)

        self.a_oe = Signal(self, "a_oe", 1)
        self.b_oe = Signal(self, "b_oe", 1)
        self.c_oe = Signal(self, "c_oe", 1)
        self.d_oe = Signal(self, "d_oe", 1)
        self.e_oe = Signal(self, "e_oe", 1)
        self.f_oe = Signal(self, "f_oe", 1)
        self.g_oe = Signal(self, "g_oe", 1)
        self.h_oe = Signal(self, "h_oe", 1)

        self.t_oe = Signal(self, "t_oe", 1)

        self.pc_inc = Signal(self, "pc_inc", 1)
        self.pc_ie = Signal(self, "pc_ie", 1)

        self.ir_ie = Signal(self, "ir_ie", 1)
        self.ir_oe = Signal(self, "ir_oe", 1)

        self.alu_fn = Signal(self, "alu_fn", 4)
        self.alu_oe = Signal(self, "alu_oe", 1)

        self.sel_cd = Signal(self, "sel_cd", 1)
        self.sel_gh = Signal(self, "sel_gh", 1)

        self.mem_ie = Signal(self, "mem_ie", 1)
        self.mem_oe = Signal(self, "mem_oe", 1)

        self.flags_ie = Signal(self, "flags_ie", 1)
        self.flags_tmp_ie = Signal(self, "flags_tmp_ie", 1)