首页 > 解决方案 > 您将如何编写一个将偶校验位添加到 7 位向量的 SystemVerilog 函数?

问题描述

您是否将 7 位逻辑变量作为输入并返回 8 位逻辑输出,奇偶校验位是输出的 MSB(最左侧位)?在使用偶校验的系统中,您希望输出向量中的 1 位总数是偶数,对吗?一元^运算符可以用于计算偶校验吗?

试图弄清楚那会是什么样子?

我开始这样的事情:

奇偶校验码

对不起,如果这是一个以上的问题。

标签: system-verilogdigital-logic

解决方案


我会这样做:

input logic [N-1:0] data_in;
output logic [N:0] data_out;

assign data_out = {^data_in, data_in};

归约运算符对^操作数中的所有位进行 XOR 操作。data_in(因此,如果有奇数个,它将返回 '1。 )


推荐阅读