🧩 一、块名是什么
在 Verilog 中,begin : block_name ... end(或 fork : block_name ... join)
称为一个 命名块(named block)。
例子:
always @(posedge clk) begin : u1
reg [3:0] counter;
counter <= counter + 1;
end : u1
这里 u1 就是块名(block name)。
🧠 二、块名的主要作用
块名有以下 4 大用途👇:
🧩 1️⃣ 创建 层次路径(Hierarchical Path)
命名块会在设计层次中生成一个“命名层级”,
就像一个小的命名空间(scope)。
例如:
module top;
always @(posedge clk) begin : blk
reg [3:0] count;
count <= count + 1;
end
endmodule
仿真时你可以在波形或仿真器中访问:
top.blk.count
👉 这就是块名最大的用处之一:
方便调试和层次引用(hierarchical reference)。

最低0.47元/天 解锁文章
2457

被折叠的 条评论
为什么被折叠?



