簡體   English   中英

MyHDL:一元異或

[英]MyHDL: Unary XOR

如何編寫myhdl代碼在verilog中實現一元異或

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()

在 MyHDL 的問題跟蹤器上有一個解決方案

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

您可以使用“for”構建您想要的內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM