Verilog HDL、通信、控制及图像处理系统架构解析
1. Verilog HDL 中的通信与控制
在 Verilog HDL 中,模块的启动和运行常常依赖于触发信号。例如,有如下代码片段:
ackB <= 1;
end
end
always @ (posedge clock, posedge reset) begin: B
if (reset) ack <= 0;
//reset the status
else @ (ackB) begin
//monitor the trigger
$display(“B”);
//arbitrary statements
ackC <= 1;
end
end
always @ (posedge clock, posedge reset) begin: C
if (reset) ack <= 0;
//reset the status
else @ (ackC) begin
//monitor the trigger
$display(“C”);
end
end
endmodule
第一个模块由来自另一个模块的触发信号启动,而进程则由同一模块中其他进程的触发信号启动。这种计算有多种变化形式,包括触发信号的形状、执行次数、使用事件敏感或电平敏感控制,以及条件语句等。
当状态或过程块过大,无法用上述方式设计时,就需要使用模块进行设计。在大型系统中,控制结构也需扩展为模块控制,主要有以下两种方式:
- 数据路径方法 :控制单元从每个模块接收状态,确定下一个状态,然后向模块发
超级会员免费看
订阅专栏 解锁全文
2049

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



