基于Spring AI的智能考试系统设计实践:从架构到踩坑全记录
2026/10/20 9:37:13
module是一个模块的语法,或者说是一个电路模块的语法,然后FPGA代码中见的最多的应该就是alwsys语句了。
到处都是alwsys,那么alwayls怎么意思呢?
例如最常用的一句:
always @(posedge clk or negedge rst_n)关键字always就是一直的意思,就是上电后这个模块会一直运行下去。
@是探测变化的意思,就是小括号内的信号只要安装规定的动作变化就能被探测到。
小括号的内容就是该模块运行的条件,
关键字posedge是取上升沿的意思,posedge clk就是clk这个信号的上升沿是触发条件;negedge就是取下降沿的意思,negedge rst_n就是rst_n这个信号的下降沿是触发条件;or就是posedge clk和negedge rst_n这两个条件有一个达到这个模块就会运行。
于是乎,FPGA代码阅读就变得特别简单了。。。
always @(posedge clk or negedge rst_n) begin if (!rst_n) begin q <= 1'b0; end else begin q <= d; end end<=,模拟硬件并行更新;=,模拟硬件实时连线;always @(*)(自动敏感列表),避免漏写输入导致的综合毛刺。