[Verilog][初学]语法基础(2)参数、位选择

做一些关于Verilog的简要笔记,方便日后快速复习,如有错漏希望您能够不吝赐教

首先说下module,module是层次化设计的基本构件,逻辑描述放在module内部。
下面是其框架:

module 模块名 (a,b,c,d);		//括号内为端口名

	//确定端口输入输出
	
	//端口信号类型说明
	
	//功能定义
endmodule

以上仅为大致解读,之后随着学习深入会加深对于模块的理解。下面我们继续前进。

  1. 参数
    参数是一个常量,是一个局部量,仅在当前模块中有效,所以应当注意parameter与’define之间的异同。
    如何定义参数?
    parameter <list_of_assignment>;
    下面举例:
module mod1(out, in1, in2);
...
 //参数定义
parameter WORD_WIDTH = 8,ADDR_WIDTH = 8;
...
wire [WORD_WIDTH-1 : 0] in1,in2;
...
endmodule
  1. 位选择
    下面举例说明吧
reg 	[31:0] A;
wire 	[31:0] B;

A[31:16] = B[15:0 ];
A[15:0 ] = B[31:16];

需要注意:
1.整数不能作为位向量访问,例如integer B。解决办法可为将该整数变量赋值给reg类型的变量,然后读出相应位。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值