cocotb 中 <= 和 = 有什么区别?

What the difference between <= and = in cocotb?

看来我可以无所谓地使用<= 或= 在我的设计中设置输入信号值。 两者之间有真正的区别吗?

dut.button_in = 0

dut.button_in <= 0

我有完全相同的输出时序图。

答案可以找到here

<= 和= 没有根本区别,只是= 可以覆盖引用而<= 仅用于赋值。

AlexanderSpirin举几个例子来说明问题:

@cocotb.test()
def parallel_example(dut):
    reset_n = dut.reset
    dut.reset = 1        # OK
    dut.reset <= 1       # OK hdl-like shortcut for the next one 
    dut.reset.value = 1  # OK 
    reset_n <= 1         # OK
    reset_n.value = 1    # OK
    reset_n = 1          # Doesn't work: reference overwrite

感谢 Vinay Madupura 提供线索。