使用 yosys 简化组合逻辑
Simplify combinational logic using yosys
我想知道是否可以使用 Yosys 来简化逻辑方程。
例如:
module top
(
output [31:0] cipher,
input [31:0] plain,
input [63:0] key
);
wire tmp = key[31:0];
wire tmp2 = key[63:32] & 0;
assign cipher = (tmp & plain) | tmp2;
endmodule
当我使用命令 "show" 时,它绘制了电路图:
我尝试使用 "opt" 和 "freduce" 命令,但它并没有减少等式。
您可能想使用 opt -fine
进行更细粒度的优化,而不是一次优化整个单词。这给出了预期的单个 1 位 $and
门。
或者 techmap; abc
将生成优化的门级电路。
我想知道是否可以使用 Yosys 来简化逻辑方程。
例如:
module top
(
output [31:0] cipher,
input [31:0] plain,
input [63:0] key
);
wire tmp = key[31:0];
wire tmp2 = key[63:32] & 0;
assign cipher = (tmp & plain) | tmp2;
endmodule
当我使用命令 "show" 时,它绘制了电路图:
我尝试使用 "opt" 和 "freduce" 命令,但它并没有减少等式。
您可能想使用 opt -fine
进行更细粒度的优化,而不是一次优化整个单词。这给出了预期的单个 1 位 $and
门。
或者 techmap; abc
将生成优化的门级电路。