如何编写myhdl代码以在Verilog中实现一元XOR
reg [63:0] large_bus;
wire xor_value;
assign xor_value = ^large_bus;
对我不起作用。
@block
def dataVecXor(large_bus, xor_value):
@always_comb
def outputlogic():
xor_value.next = ^large_bus
return instances()
答案 0 :(得分:1)
在MyHDL的问题跟踪器上有一个solution:
large_bus = Signal(intbv(0)[128:0])
xor_value = Signal(bool(0))
@always_comb
def beh_reduction_xor():
x = large_bus[0]
for ii in range(1, len(large_bus)):
x = x ^ large_bus[ii]
xor_value.next = x
答案 1 :(得分:0)
您可以使用'for'构建所需的内容。