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
相关推荐
virtual_k1smet3 小时前
梧桐·鸿鹄- 大数据assistant-level
大数据·笔记
yuezhilangniao3 小时前
信创问题:从CPU到外设的统一- 拥抱 RISC-V
嵌入式硬件·risc-v
TeleostNaCl4 小时前
以广东移动 IPTV 为例制作属于自己的节目单 .m3u 文件
经验分享·智能路由器·电视盒子·智能电视·tv·电视·智能tv
一条咸鱼¥¥¥5 小时前
【运维经验】服务器磁盘做镜像的方法
运维·服务器·windows·经验分享
星轨初途7 小时前
郑州轻工业大学2025天梯赛解题
c++·经验分享·笔记·算法·链表·剪枝
阿波罗8号7 小时前
《一本书读懂支付》
笔记
顽强卖力8 小时前
第二章:什么是数据分析师?
笔记·python·职场和发展·学习方法
逼子格8 小时前
初入职场亦深耕创作:我的2025硬件工程师成长与分享之旅
嵌入式硬件·嵌入式·硬件工程师·硬件·博客之星·硬件工程师成长之路·硬件学习
￴ㅤ￴￴ㅤ9527超级帅9 小时前
4、stm32异常与中断
stm32·单片机·嵌入式硬件
北岛寒沫10 小时前
北京大学国家发展研究院 经济学辅修 经济学原理课程笔记(第十五章 劳动力市场)
经验分享·笔记·学习