0
Yosysでパスで使用できる最も有用な属性は何ですか?Yosysでのパスで使用できる有用な属性は何ですか?
また、「setattr」を使って特定のモジュール(つまり「カウンタ」)に対して 'keep_hierarchy'を設定する例を教えてもらえますか?
Yosysでパスで使用できる最も有用な属性は何ですか?Yosysでのパスで使用できる有用な属性は何ですか?
また、「setattr」を使って特定のモジュール(つまり「カウンタ」)に対して 'keep_hierarchy'を設定する例を教えてもらえますか?
README Fileには、最も顕著な属性のリストが含まれています。 (セクション「Verilogの属性と非標準の機能」)keep_hierarchy
とsetattr
について:次のサンプルコードを検討してください。
module test(input A, B, output X, Y);
test_and and_inst (.A(A), .B(B), .O(X));
test_xor xor_inst (.A(A), .B(B), .O(Y));
endmodule
module test_and(input A, B, output O);
assign O = A & B;
endmodule
module test_xor(input A, B, output O);
assign O = A^B;
endmodule
明らかに次がちょうど$and
と回路図と$xor
ゲートを表示していました:
yosys -p 'prep; flatten; opt -purge; show test' test.v
今、私たちは、細胞にkeep_hierarchy
属性を設定することにより、and_inst
を平坦化から平らに防ぐことができます。
yosys -p 'prep; setattr -set keep_hierarchy 1 test/and_inst; flatten; opt -purge; show test' test.v
また、test_and
のすべてのインスタンスがf単にモジュール自体の属性を設定するだけでラティングされます。
yosys -p 'prep; setattr -mod -set keep_hierarchy 1 test_and; flatten; opt -purge; show test' test.v