Verilog代码生成的触发器数

Verilog代码生成的触发器数,verilog,fpga,hdl,digital-logic,vlsi,Verilog,Fpga,Hdl,Digital Logic,Vlsi,如何在不使用任何工具的情况下计算Verilog代码中生成或使用的触发器数量 您可以计算always@(pos/neg_边…)中非阻塞分配LHS上的位数。(非阻塞形容词是多余的,因为在@(pos/neg_边缘时钟)部分中只能有非阻塞赋值。) 以下代码生成12个寄存器: reg [7:0] my_byte1,my_byte2; ... always @(posedge clock) begin my_byte1 <= something_which_is_8_bits_wide;

如何在不使用任何工具的情况下计算Verilog代码中生成或使用的触发器数量


您可以计算always@(pos/neg_边…)中非阻塞分配LHS上的位数。(非阻塞形容词是多余的,因为在@(pos/neg_边缘时钟)部分中只能有非阻塞赋值。)

以下代码生成12个寄存器:

reg [7:0] my_byte1,my_byte2;
...
always @(posedge clock)
begin
   my_byte1     <= something_which_is_8_bits_wide;
   my_byte2[3:0]<= something_else_which_is_4_bits_wide;
end
reg[7:0]我的字节1,我的字节2;
...
始终@(posedge时钟)
开始

my_byte1您尝试了什么?对于一小段代码,时钟边缘被触发的次数,我正在计算变量的变化,这可以让我粗略计算运行代码时可能使用的触发器的数量。但是如果我们有大量的同时变化的变量,那么如何检查代码中的失败次数呢?这是不可能帮助你的,因为你没有提供任何你想要做的代码。因此,这不是一个代码编写服务,因此您需要自己提供代码和指向您正在使用的相关源的链接。对不起,先生,代码非常大,我将无法为您提供代码手动计算失败次数非常困难,特别是在大型号中。存在需要手动计算的生成块。有一些优化可能会改变失败次数。总是有复杂的障碍,很难找出结果。所以,在最好的情况下,你所有的尝试都只是一个粗略的估计。谢谢你的回复。我试试这个。