奇偶校验是通信中常用的一种数据校验方式,设计一个奇偶校验位产生器,根据输入字节(8位)产生相应的奇校验位(1的个数为奇数时输出低电平)和偶校验位(1的个数为偶数时输出低电平)。
设计代码
module parity(even_numbits,odd_numbits,input_bus);
output even_numbits,odd_numbits;
input [7:0] input_bus;
assign odd_numbits = ^input_bus;
assign even_numbits=~odd_numbits;
endmodule
仿真代码
module text1();
reg[7:0] input_bus;
wire even_numbits,odd_numbits;
parameter DELAY=20;
parity il(.even_numbits(even_numbits),.odd_numbits(odd_numbits),.input_bus(input_bus));
initial
begin
input_bus = 8'b00011111 ;
#(DELAY*10) input_bus = 8'b00001111 ;
end
endmodule