如何使用 submod 命令将顶级模块分成 2 个子模块?
How to partition a top module into 2 sub-module using submod command?
我在使用 submod 命令对顶级模块进行分区时遇到问题。
我有一个简单的计数器(我有一个 4 位计数器的行为代码)。其中包含以下单元格:
yosys> select -list
counter
counter/$procmux_Y
counter/$add$counter.v:10_Y
counter/[=10=]\count[3:0]
counter/count
counter/en
counter/rst
counter/clk
counter/$procdff
counter/$procmux
counter/$procmux
counter/$add$counter.v:10
现在我想将以下单元格放入子模块中:
counter/$procdff
counter/$procmux
我不知道如何使用 select
、setattr
、submod
来做到这一点。非常感谢任何帮助。
谢谢
我的计数器的 verilog 代码:
module module counter (clk, rst, en, count);
input clk, rst, en;
output reg [3:0] count;
always @(posedge clk)
if (rst)
count <= 4'd0;
else if (en)
count <= count + 4'd1;
endmodule
我想通了:
首先我 select 单元格,然后将它们放入我想要的分区中:
yosys> select counter/$procmux
yosys*> select -add counter/$procmux
yosys*> select -add counter/$add$counter.v:10
yosys*> submod -name sub_2
yosys> select counter/$procmux_Y
yosys*> select -add counter/$add$counter.v:10_Y
yosys*> select -add counter/[=10=]\count[3:0]
yosys*> select -add counter/count
yosys*> select -add counter/$procdff
submod -name sub_1
如果有更好的方法请告诉我。
谢谢
我在使用 submod 命令对顶级模块进行分区时遇到问题。
我有一个简单的计数器(我有一个 4 位计数器的行为代码)。其中包含以下单元格:
yosys> select -list
counter
counter/$procmux_Y
counter/$add$counter.v:10_Y
counter/[=10=]\count[3:0]
counter/count
counter/en
counter/rst
counter/clk
counter/$procdff
counter/$procmux
counter/$procmux
counter/$add$counter.v:10
现在我想将以下单元格放入子模块中:
counter/$procdff
counter/$procmux
我不知道如何使用 select
、setattr
、submod
来做到这一点。非常感谢任何帮助。
谢谢
我的计数器的 verilog 代码:
module module counter (clk, rst, en, count);
input clk, rst, en;
output reg [3:0] count;
always @(posedge clk)
if (rst)
count <= 4'd0;
else if (en)
count <= count + 4'd1;
endmodule
我想通了:
首先我 select 单元格,然后将它们放入我想要的分区中:
yosys> select counter/$procmux
yosys*> select -add counter/$procmux
yosys*> select -add counter/$add$counter.v:10
yosys*> submod -name sub_2
yosys> select counter/$procmux_Y
yosys*> select -add counter/$add$counter.v:10_Y
yosys*> select -add counter/[=10=]\count[3:0]
yosys*> select -add counter/count
yosys*> select -add counter/$procdff
submod -name sub_1
如果有更好的方法请告诉我。 谢谢