0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Verilog端口连接规则

冬至子 来源:行走的BUG永动机 作者:行走的BUG永动机 2023-05-26 16:42 次阅读

端口

端口是模块与外界交互的接口,对外部环境而言,模块内部是不可见的,对模块的调用只能通过端口连接进行

端口基本语法约定如下:

端口必须被声明

端口声明不可重复

端口声明既可在端口列表内也可在列表外

模块间的数据只能通过端口进行

端口声明

根据端口的方向,端口类型有3种:输入(input)、输出(output)和双向端口(inout)

  • input 和 output 只能是wire
  • output 既可以是 wire 也可以是 reg
    • 需要保存数值时,用reg
    • 不需要保存数值时,用wire

reg类型是用于保存数值的,而输入端只能反映与其相连的外部信号的变化,并不能保存这些信号的值

端口连接规则

1.jpg

对于inpuoutput我是这样理解的,内部是reg外部就应该是wire

就比如input这一端,外部是reg,内部是wire,在这个一端,已经有一个reg类型可以用来保存数据,不需要用到两个reg来保存数值

端口连接方式

端口连接的方式有两种:按位置连接按名称连接

  1. 按位置连接
    调用模块的端口名必须与被调用模块端口列表中的位置保持一致
    //调用模块
    module name(……);
        //端口定义
        //端口描述
    
    
        /*a, b, c, d分别对用调用模块
           中的in1, in2, sel, dout*/
        mux u1(a, b, c, d);
    
    endmodule
    
    
    //调用模块
    module mux (in1, in2, sel, dout);
        //端口定义
        //端口描述
        //逻辑描述
    endmodule
    
  2. 按名称连接
    格式为:
    模块名 模块实例化名 (.被调用模块端口名(调用模块端口名));
    其中,模块实例化名 是自己随意定的一个名字,方便记忆就好
    //调用模块
    module name(……);
        //端口定义
        //端口描述
    
        //模块调用,也叫实例化
        //对应方式和上一个相同
        mux u1(.in1(a), .in2(b), .sel(c), .dout(d));
    endmodule
    
    //被调用模块
    module mux(in1, in2, sel, dout);
        //端口定义
        //端口描述
        //逻辑描述
    endmodule
    
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Verilog设计
    +关注

    关注

    0

    文章

    20

    浏览量

    6514
  • verilog接口
    +关注

    关注

    0

    文章

    2

    浏览量

    4493
收藏 人收藏

    评论

    相关推荐

    使用Verilog/SystemVerilog硬件描述语言练习数字硬件设计

    在实例化模块时,使用Verilog时有两种常用的方式来进行模块端口的信号连接:按端口顺序以及按端口名称
    的头像 发表于 09-08 09:04 1551次阅读

    SDI_OUT端口与屏幕连接后显示噪音该怎么办?

    mvisdi_viodc_2VP7.bit从'viodc_sdi_verilog \ Bit Files'目录复制到fpga芯片。但它不起作用。板的SDI-IN端口与视频信号连接,SDI_OUT
    发表于 08-14 07:15

    Verilog 模块与端口

    :输入、输出端口可以采用向量的方式表示,例如:4输入端a0,a1,a2,a3,与4输入端b0,b1,b2,b3, 一一对应相与,其结果赋给对应的c0,c1,c2,3;Verilog 的描述如下
    发表于 07-23 23:08

    如何把硬件不规则端口IO映射到一个规则的软件端口中?

    如何把硬件不规则端口IO映射到一个规则的软件端口中?
    发表于 10-15 09:25

    Verilog代码命名六大黄金规则

    电子发烧友网核心提示: 关于Verilog代码中命名的六大黄金规则。 1. 系统级信号的命名。 系统级信号指复位信号,置位信号,时钟信号等需要输送到各个模块的全局信号;系统信号以字
    发表于 09-04 14:40 6101次阅读

    模块和端口介绍

    verilog的相关学习和介绍,主要介绍模块和端口
    发表于 11-10 10:21 0次下载

    Verilog HDL的基础知识详细说明

    硬件描述语言基本语法和实践 (1)VHDL 和Verilog HDL的各自特点和应用范围 (2)Verilog HDL基本结构语言要素与语法规则 (3) Verilog HDL组
    发表于 07-03 17:36 54次下载
    <b class='flag-5'>Verilog</b> HDL的基础知识详细说明

    verilog端口类型有哪三种_verilog语言入门教程

    本文主要阐述了verilog端口的三种类型及verilog语言入门教程。
    发表于 08-27 09:29 1.1w次阅读

    Verilog系统函数和边沿检测

    “ 本文主要分享了在Verilog设计过程中一些经验与知识点,主要包括Verilog仿真时常用的系统任务、双向端口的使用(inout)、边沿检测”
    的头像 发表于 03-15 13:34 2301次阅读

    System Verilog的概念以及与Verilog的对比

    Verilog模块之间的连接是通过模块端口进行的。 为了给组成设计的各个模块定义端口,我们必须对期望的硬件设计有一个详细的认识。 不幸的是,在设计的早期,我们很难把握设计的细节。 而且
    的头像 发表于 06-12 10:05 1400次阅读

    SWD端口无法连接如何排查

    大家在调试GD32 MCU的时候是否也碰到过SWD调试端口无法连接的情况?SWD端口无法连接的原因有很多,有时候排查没有思路,可能会耽误大家的时间,下面小编为大家介绍常见的SWD无法
    的头像 发表于 01-10 10:46 2101次阅读
    SWD<b class='flag-5'>端口</b>无法<b class='flag-5'>连接</b>如何排查

    verilog双向端口的使用

    Verilog硬件描述语言中,端口是指连接模块(Module)与其他模块、寄存器或是物理设备的输入或输出接口。单向端口可以作为输入或输出使用,而双向
    的头像 发表于 02-23 10:18 1286次阅读

    verilog调用模块端口对应方式

    Verilog是一种硬件描述语言(HDL),广泛应用于数字电路设计和硬件验证。在Verilog中,模块是构建电路的基本单元,而模块端口对应方式则用于描述模块之间信号传递的方式。本文将介绍
    的头像 发表于 02-23 10:20 1626次阅读

    verilog端口类型有哪三种

    Verilog 中,端口类型有三种:输入端口(input)、输出端口(output)和双向端口(inout)。 输入
    的头像 发表于 02-23 10:28 1900次阅读

    Verilog表达式的位宽确定规则

    很多时候,Verilog中表达式的位宽都是被隐式确定的,即使你自己设计了位宽,它也是根据规则先确定位宽后,再扩展到你的设计位宽,这常常会导致结果产生意想不到的错误。
    的头像 发表于 10-22 15:41 237次阅读
    <b class='flag-5'>Verilog</b>表达式的位宽确定<b class='flag-5'>规则</b>