#systemverilog# 关于关键字 之 参数:parameter、specparam、localparam

本文详细介绍了SystemVerilog中的三种参数:parameter、localparam和specparam。parameter作为模块参数,可以被defparam或模块实例化修改;localparam不可直接修改,但可通过parameter间接修改;specparam则主要用于时序参数,只能通过SDF反标修改。总结了它们的使用规则和差异,并提供了示例说明。

目录

一 概述

二 parameter

三 localparam

四 specparam

五 总结

六 实战

一 概述

在Verilog中,parameter既不属于变量范畴也不属于线网范畴,经常用来定义一个标志符代表一个常量,所以参数的值在仿真运行的过程中不能进行修改。但是通过使用参数,可以提高程序的可读性、可复用性和可维护性。

目前常用的参数主要分为两大类:

module参数:parameter、localparam

specify参数:specparam

在使用参数时还需要注意以下几点: 

  • parameter、specparam、localparam必须在elaboration阶段有确定的值; 
  • parameter、specparam、localparam只能声明于module、静态(任务和函数)中,不能在动态(函数和任务)、begin-end、fork-join中声明; 
  • 在module或者specify中参数的名字必须是唯一的,即不能重复声明,也不能使用已声明的变量或者线网的名字; 
  • parameter可以在elaboration过程中通过defparam进行修改或者通过命令行进行修改; 
  • specparam在elaboraion阶段被SDF中相关时序反标修改; 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

那么菜

你的鼓励和批评是我最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值