以下代码获得输入A的偶校验。(如果A包含0 1或偶数1,则奇偶校验= 1)
reg [7:0] A;
wire parity;
assign parity = ~^A;
如何在程序块中使用for循环来获得相同的函数
答案 0 :(得分:1)
这样的事情应该有效。基本上你想要做的是从向量的一端开始,然后按照自己的方式进入另一端。每当你发现'1'时翻转奇偶校验位。如果你没有发现任何一个,则奇偶校验是1.如果你发现偶数#,奇偶校验也将是1。
integer i;
reg parity;
always (*) begin
// Default values
parity = 1'b1;
for (i = 0; i < 8; i++)
if (A[i])
parity = ~parity;
end