Verilog基础(五)

五、模块

5.1 基本概念

构成

 

  1. 模块的开始与结束:

模块在语言形式上是以关键词module开始、以关键词endmodule结束的一段程序,其中模块开始语句必须以分号结束。模块的开始部分包括模块名和端口列表,模块名是模块唯一的标识符,端口列表相当于引脚。

  1. 模块端口的定义:

定义端口列表中哪些是输入、输出、位宽

  1. 模块数据类型的声明

包括:wire、reg、memory、parameter等数据类型。

一般来说,module的input缺省定义为wire类型,output信号可以是wire类型,也可以是reg类型,inout一般为tri(三线型)类型,表示多个驱动源。

  1. 模块逻辑功能描述

产生各种逻辑(主要是组合逻辑和时序逻辑),包括initial语句,always语句、其他例化语句、连续赋值语句、函数和任务。

模块设计采用多种建模方式,行为描述方式、结构描述方式、混合描述方式

D触发器举例:

 5.2 端口

定义

缺省状态下,默认端口类型是wire类型,在某一端口类型的声明中,类型的声明长度必须与端口声明的长度一致。

三种端口的声明方式:

  1. 输入端口:

Input [信号位宽-1:0] 端口名 1;

  1. 输出端口

output [信号位宽-1:0] 端口名 1;

  1. 输入、输出端口

Inout  [信号位宽-1:0] 端口名 1;

模块引用时端口的对应方式

  1. 在引用时,严格按照模块定义的端口顺序来连接,不用标明源模块定义时规定的端口名。
  2. 在引用“.”标明源模块定义时规定的端口名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

花间ii

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值