#yosys
#yosys
Вопрос:
Я думал, что techmap
это будет сделано без каких-либо аргументов, но это не так. вероятно, я не понимаю, что означает «логический синтез».
базовый пример:
AND_GATE.v:
module AND_GATE( input A, input B, output X);
assign X = A amp; B;
endmodule
yosys> read_verilog AND_GATE.v
yosys> synth
....................
Number of wires: 3
Number of wire bits: 3
Number of public wires: 3
Number of public wire bits: 3
Number of memories: 0
Number of memory bits: 0
Number of processes: 0
Number of cells: 1
$_AND_ 1
yosys> abc -g AND,NAND,OR,NOR,XOR,XNOR
........................
3.1.2. Re-integrating ABC results.
ABC RESULTS: AND cells: 1
ABC RESULTS: internal signals: 0
ABC RESULTS: input signals: 2
ABC RESULTS: output signals: 1
Removing temp directory.
yosys> clean
Removed 0 unused cells and 3 unused wires.
yosys> write_verilog net.v
net.v
module AND_GATE(A, B, X);
(* src = "AND_GATE.v:1" *)
input A;
(* src = "AND_GATE.v:1" *)
input B;
(* src = "AND_GATE.v:1" *)
output X;
assign X = B amp; A;
endmodule
Ответ №1:
Использование чего-то вроде synth; abc -g AND,NAND,OR,NOR,XOR,XNOR
will map для базового набора элементов, эквивалентных примитивам Verilog — techmap
само по себе вы тоже далеко не уйдете — но серверная часть Yosys verilog не имеет возможности использовать встроенные примитивы, она всегда записывает элементы в качестве их выражения.
Комментарии:
1. спасибо, но
write_verilog
все равно создаю тот же файл.