```
module single_stable(
input clk,
input rst,
input in,
output reg out
);
parameter T = 100; // 暂稳态持续时间
reg [7:0] cnt; // 计数器,用于计算暂稳态持续时间
always @(posedge clk) begin
if (rst) begin
cnt <= 0;
out <= 0;
end
else begin
if (in) begin
if (cnt == T - 1) begin
out <= 1;
end
cnt <= cnt + 1;
end
else begin
cnt <= 0;
out <= 0;
end
end
end
endmodule
```
以上代码中,我们使用一个计数器来计算暂稳态持续时间。当输入信号为高电平时,计数器开始计数,并在计数器达到T-1时输出高电平。当输入信号为低电平时,计数器清零,并输出低电平。如果需要重置单稳态电路,可以将rst信号接入模块中。