Я использую Yosys синтезировать мой дизайн RTL, который включает в себя несколько буквенных констант, таких как связаны порты вывода, как показано в следующем коде:Создайте ячейки TIE с помощью Yosys?
module my_module (
input a,
input b,
output c,
output d);
assign c = a & b;
assign d = 1'b1;
endmodule
В этом случае выход d
будет, очевидно, всегда будет логическим , Используемый мной поток включает вызов abc -liberty my_stdcells.lib
для сопоставления комбинаторной логики со стандартными ячейками, предоставляемыми библиотекой, а затем вызовы clean
и write_verilog
.
Я использую также библиотеку ячеек TIELO
и TIEHI
, но синтезированный список соединений Verilog не включает в себя никаких экземпляров этих ячеек, но вместо этого все еще показывает литеральные константы, как в приведенном выше примере.
Я мог бы написать сценарий для последующей обработки синтезированного списка соединений заменить эти литералы TIE*
экземпляров клеток из библиотеки, но мне интересно, если я мог бы получить Yosys, чтобы сделать это для меня как-то, в результате чего-то вроде
TIEHI tiehi_d_inst(.Y(d));
для assign d = 1'b1
строка в коде выше.