【Verilog】模块的结构、数据类型、变量和基本运算符号

本文深入解析Verilog编程中的模块结构,包括端口定义和内容描述,重点阐述数据类型如reg、wire、integer和parameter,以及常量、变量的使用,如数字、x和z值。此外,还介绍了always块在逻辑功能定义中的作用。
摘要由CSDN通过智能技术生成

本文为 Verilog 学习总结,讲解模块的结构、数据类型、变量和基本运算符号。

模块的结构

一个模块由两部分组成,一部分描述接口,一部分描述逻辑功能(即输入是如何影响输出的)。

模块的端口定义

在引用时用“.”符号,将端口名与被引用模块的端口一一对应,不用考虑定义顺序,提高了程序的可读性和可移植性。

模块内容

I/O 说明的格式

I/O 说明可以写在端口声明语句中,格式如下:

module module_name(input port1,…,output port1);

内部信号说明

使用 wire 和 reg 类型变量声明。

功能定义

有 3 种方法可在模块中产生逻辑:用 assign 声明语句,用实例元件,用 always 块。

下面为一个带有异步清除端的 D 除法器:

always @(posedge clk or posedge clr);
begin
	if(clr) q<=0;
	else if(en) q<=d;
end

always 块也成为过程块,多个 always 模块间并行,模块内部顺序执行

许多 C 语言类似的语句只能出现在过程块中。只有连续赋值语句 assign 和实例引用语句可以独立

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值