您当前的位置: 首页 >  面试

FPGA硅农

暂无认证

  • 0浏览

    0关注

    282博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

数字IC面试手撕代码(四)

FPGA硅农 发布时间:2022-03-07 19:31:23 ,浏览量:0

奇偶校验

奇偶校验,意思是判断一个向量的若干比特中,1的个数是奇数个还是偶数个,所谓奇校验,是指加上校验位后,使得整个数据中1的个数为奇数个,而偶数校验是指加上校验位之后,整个数据中1的个数为偶数个。因此,奇偶校验的关键就是判断一个向量中,1的个数的奇偶性。 我们来看一个3位的向量101,它的1的个数是偶数个(2个),因此,如果是偶校验,那么校验位应该是0,如果是奇校验,校验位应该是1,而我们发现: 0=1^ 0 ^1 (偶校验) 1=~(1^ 0 ^ 1)(奇校验) 这不是巧合,而是一个普遍规律,因此,我们可以得到奇校验和偶校验校验位的计算公式: parity=^a (偶校验) parity=~(^a) (奇校验)

verilog描述

奇校验

module odd_parity(
input logic [7:0] data,
output logic parity
);
assign parity=~(^data);
endmodule

偶校验

module even_parity(
input logic [7:0] data,
output logic parity
);
assign parity=^a;
endmodule
关注
打赏
1658642721
查看更多评论
立即登录/注册

微信扫码登录

0.0391s