在verilog中#的用法

module sine_rom(
CLK , // clock
RA , // read address
RD ); // read data
input CLK;
input [6 :0] RA;
output [7 :0] RD;
reg [7 :0] RD;
always @ (posedge CLK)
case(RA)
7 'd 0 :RD = #1 8 'b 00000000; // 0 0x0
7 'd 1 :RD = #1 8 'b 00000110; // 6 0x6
7 'd 2 :RD = #1 8 'b 00001100; // 12 0xC
7 'd 3 :RD = #1 8 'b 00010010; // 18 0x12
。。。。。。。。。。。。。。。。。。。。。
。。。。。。此处略去若干行。。。。。。。。
。。。。。。。。。。。。。。。。。。。。。
7 'd 127 :RD = #1 8 'b 11111010; // -6 0xFA
default : RD = #1 0;
endcase
endmodule

# 是延迟的意思,井号后面数字是延迟的数量,延迟的单位由`timescale控制
比如有:`timescale 1ns/1ps 意思就是时间单位为1ns,精度是1ps
那么,#10.5 就是延迟10.5ns的意思
在同步时序数字逻辑电路的verilog代码中,不能加入“#”进行延迟,这不是代码编写阶段能决定的
温馨提示:答案为网友推荐,仅供参考