题意整理

1、简单理解奇偶校验

奇校验:原始码流+校验位 总共有奇数个1

偶校验:原始码流+校验位 总共有偶数个1

2、计算奇偶校验的方法  按位求异或得到奇校验结果,对其求反得到偶校验结果

3、连续进行异或 odd = ^bus  对bus进行异或位操作

题解主体

通过异或计算得到结果,对数据进行位运算。

根据激励方程和输出方程以及思路整理,关键电路如下:


将电路转换成Verilog代码描述如下

wire odd;

assign odd = ^bus;

assign check = sel?odd:~odd;



因此实现方式为如下的电路,综合得到:

参考答案

`timescale 1ns/1ns
module odd_sel(
input [31:0] bus,
input sel,
output check
);

wire odd;
assign odd = ^bus;
assign check = sel?odd:~odd;

endmodule