Verilog——参数化定义

目录

前言

这个专栏会专门讲一些Verilog的知识,后续会慢慢更新,欢迎关注
Verilog专栏

参数化定义 #( )

定义

verilog 复制代码
module Reg #(WIDTH = 1, RESET_VAL = 0) (  
//位宽默认为1 , 复位值默认为0
  input clk,  //时钟
  input rst,  //复位信号
  input [WIDTH-1:0] din,  //输入值
  output reg [WIDTH-1:0] dout,  //输出值
  input wen
);
  always @(posedge clk) begin
    if (rst) dout <= RESET_VAL;
    else if (wen) dout <= din;
  end
endmodule

实例化

verilog 复制代码
Reg #(8, 255) my_reg (
  .clk(clk),
  .rst(rst),
  .din(data_in),
  .dout(data_out),
  .wen(write_enable)
);
  • WIDTH被设置为8,因此dindout都是8位宽。
  • RESET_VAL被设置为255,所以在复位时,dout的初值为255。
  • 如果实例化时没有传入参数,则使用默认值,即WIDTH=1RESET_VAL=0
相关推荐
LaughingZhu6 分钟前
Product Hunt 每日热榜 | 2025-12-26
人工智能·经验分享·深度学习·神经网络·产品运营
是小菜呀!7 分钟前
基于深度学习的图像检索系统项目实践
笔记
就是蠢啊25 分钟前
51单片机——TFTLCD显示器(一)
嵌入式硬件·计算机外设·51单片机
qq_448011161 小时前
嵌入式中IO、GPIO、专用IO
单片机·嵌入式硬件
奕辰杰2 小时前
Netty私人学习笔记
笔记·学习·netty·网络通信·nio
xingzhemengyou12 小时前
STM32 Boot0 与 Boot1 [当 Flash 被误操作锁死或 SWD/JTAG 无法连接时,很有用]
stm32·单片机·嵌入式硬件
恒锐丰小吕2 小时前
屹晶微 EG27710 600V耐压、高性能、快速开关的半桥驱动芯片技术解析
嵌入式硬件·性能优化·硬件工程
一路往蓝-Anbo2 小时前
【第05期】数据的微观世界 (五) —— 浮点数 vs 定点数:MCU的数学课
linux·stm32·单片机·嵌入式硬件·物联网
De-Alf3 小时前
Megatron-LM学习笔记(6)Megatron Model Attention注意力与MLA
笔记·学习·算法·ai
polarislove02143 小时前
9.2 自制延迟函数-嵌入式铁头山羊STM32笔记
笔记·stm32·嵌入式硬件