网站目录 index.html,企业网站建设联系方式,舆情监测系统永久免费,wordpress 调用豆瓣在Verilog中#xff0c;#有2种作用。 第一种作用是指定时间延时#xff0c;如#10#xff0c;表示延时10个时间单位#xff1b; 第二种作用在模块定义时指定常量型参数的默认值#xff0c;在模块实例化时传递常量型参数的指定值。
module uart_tx
//采用#()形式定义常量型… 在Verilog中#有2种作用。 第一种作用是指定时间延时如#10表示延时10个时间单位 第二种作用在模块定义时指定常量型参数的默认值在模块实例化时传递常量型参数的指定值。
module uart_tx
//采用#()形式定义常量型参数为模块的默认值
#(parameter CLK_FRE 50, //时钟频率parameter BAUD_RATE 115200 //波特率
)
(input clk, //clock inputinput rst_n, //asynchronous reset input, low active input[7:0] tx_data, //data to sendoutput reg tx_data_ready, //send readyoutput tx_pin //serial data output
);localparam CYCLE CLK_FRE * 1000000 / BAUD_RATE;
#10 //延时10nsendmoduleuart_tx
//采用#()形式传递常量型参数不传递时模块将采用默认值传递则采用指定值
#
(
.CLK_FRE(50),
.BAUD_RATE(9600)
) uart_tx_inst
(
.clk (sys_clk ),
.rst_n (rst_n ),
.tx_data (tx_data ),
.tx_data_ready (tx_data_ready ),
.tx_pin (uart_tx )
);