0

Yosys のパスで使用できる最も便利な属性は何ですか?

また、「setattr」を使用して特定のモジュール (つまり「カウンター」) に「keep_hierarchy」を設定する例を教えていただけないでしょうか。

4

1 に答える 1

1

README ファイルには、最も顕著な属性のリストが含まれています。(セクション「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

これで、セルに属性をand_inst設定することで、flatten が平坦化されないようにすることができます。keep_hierarchy

yosys -p 'prep; setattr -set keep_hierarchy 1 test/and_inst; flatten; opt -purge; show test' test.v

test_andまたは、モジュール自体に属性を設定するだけで、 のすべてのインスタンスがフラット化されるのを防ぐことができます。

yosys -p 'prep; setattr -mod -set keep_hierarchy 1 test_and; flatten; opt -purge; show test' test.v
于 2016-05-27T12:50:40.393 に答える