如何识别此逻辑电路的布尔表达式?

How do I identify the Boolean Expression of this logic circuit?

提问人:Ragna Alt 提问时间:7/2/2023 更新时间:7/3/2023 访问量:102

问:

正如标题所说,给定的逻辑电路的可能布尔表达式是什么?真值表也包括在内。逻辑电路

我试图解决我自己的布尔表达式并将其编码为 verilog,但我认为这是不正确的。

逻辑运算符 表达式布尔 运算 电路 电路图

评论

0赞 Noah 7/2/2023
我认为还有另一个网站可以解决与电气相关的问题。electronics.stackexchange.com

答:

1赞 Wander Nauta 7/2/2023 #1

真值表似乎描述了 。a XOR b

无论 和 的值如何,iff 要么是 true 要么是 true(不是两者兼而有之),则为 true。s0s1aby

0赞 Mikef 7/2/2023 #2

从表中识别简化的布尔表达式是Karnaugh_map的一个用例,是一种简化布尔表达式的分析方法。

以下是问题中表格的 K 映射和由此产生的简化:

enter image description here

K-map 是一个典型的工程师面试问题,因此它很有价值,作为分析工具也很有价值。它在HDL/Verilog设计中不常使用,因为综合工具执行简化/逻辑缩减。

或者,可以在 Verilog 中将表作为 ROM 实现,而无需简化。这些工具将简化它。简化表达式会使它们更难在 Verilog 代码中阅读(与操作相反),这是在编写 Verilog 代码时大多数时候不使用 K 映射的另一个原因。

module decoder_rom (
  input wire a,
  input wire b,
  input wire s0,
  input wire s1,
  //
  output reg y
);
  
  always @* 
    case ( { a, b, s0, s1} )
      4'b0000:
        y = 0;
      // more rows
      4'b0100:
        y = 1;
      // more rows
      4'b1111:
        y = 0;
      default:
        y = 0;
    endcase
    
endmodule