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

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

3天内不再提示

SV Structure作为module的input/output

芯片验证工程师 来源:芯片验证工程师 作者:芯片验证工程师 2022-11-08 09:51 次阅读

在SV中可以使用结构体作为模块的输入或输出,这使得它可以更加清晰地传递更多的信号,以简化RTL代码,类似于interface。

typedef struct {
 bit [7:0] intr = 'h AA;
 logic [23:0] addr = 'h FF_FF_FF;
 } ext;
 
 module SU (
 output ext extOut);
 
 assign extOut = '{intr: 8'hFF, addr:24'haa_aa_aa};
 initial begin
 #1; $display($stime,,, "extOut = %p", extOut);
 end
 endmodule
 
 module top;
 ext extIn;
 //connect extOut of 'SU' with extIn of 'top'
 SU SUInst(.extOut(extIn));
 initial begin
 #2; $display($stime,,, "extIn = %p", extIn);
 end
 endmodule

仿真log:

 1 extOut = '{intr:'hff, addr:'haaaaaa}
 2 extIn = '{intr:'hff, addr:'haaaaaa}
 V C S S i m u l a t i o n R e p o r t

在上面的例子中,我们首先定义了一个名为“ext”的unpacked struct,然后直接作为module的output。

再声明一个moudle top,连接到这个struct。最后打印表明这个结构体确实完成了连接,打印相同的信息

struct可以作为参数传递给task或function,前提是这个struct需要先使用typedef声明为用户自定义类型

typedef struct {
 logic [31:0] addr;
 logic [63:0] data;
 logic [3:0] BEnable;
 } control;
 function Dbus (input control ct1);
 ….
 endfunction


审核编辑 :李倩


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 模块
    +关注

    关注

    7

    文章

    2655

    浏览量

    47287
  • RTL
    RTL
    +关注

    关注

    1

    文章

    385

    浏览量

    59657
  • 结构体
    +关注

    关注

    1

    文章

    129

    浏览量

    10823
收藏 人收藏

    评论

    相关推荐

    请问PCM9211是否支持I2S input,SPDIF output

    我们的应用场景是想用9211实现I2s音频信号进入,然后从SPDIF输出,从Datasheet里的框图看起来I2s只能作为输出,芯片内部框图看起来似乎支持i2s输入。从pin table和一些描述来看没有很明确地说支持i2s input,请问此芯片是否支持i2s in,
    发表于 09-29 07:43

    表面贴装压控晶体振荡器 DSV221SV DSV321SV :精准频率控制的卓越之选

    表面贴装压控晶体振荡器(DSV221SV/DSV321SV):精准频率控制的卓越之选
    的头像 发表于 08-06 13:44 218次阅读
    表面贴装压控晶体振荡器 DSV221<b class='flag-5'>SV</b> DSV321<b class='flag-5'>SV</b> :精准频率控制的卓越之选

    SV-7045VP 20W SIP网络草坪音箱 室外网络广播POE供电防水石头音箱

    公园,景区,高速服务区,园区等草地场所。SV-7041VP作为网络广播播放系统的终端,可用于需要广播播放的场所。SV-7041VP设备只有网络广播功能,是
    的头像 发表于 05-16 10:11 375次阅读
    <b class='flag-5'>SV</b>-7045VP 20W SIP网络草坪音箱 室外网络广播POE供电防水石头音箱

    鸿蒙OS实战:【module的使用】

    在开发HarmonyOS应用时,默认创建的工程会有一个entry module,实际应用场景为了代码或者功能解耦,我们需要用到module来进行隔离。根据鸿蒙3.0/3.1/4.0官方指导,我们可以了解到关于module的类型,
    的头像 发表于 03-26 18:07 637次阅读
    鸿蒙OS实战:【<b class='flag-5'>module</b>的使用】

    SV-6002TP 网络对讲求助模块 sip对讲终端模块 支持POE供电

    数据,实时解码播放,还配置了麦克风输入和扬声器功放输出。SV-6002TP模块可实现对讲、广播、监听等功能,作为网络广播对讲系统的终端模块,可用于需要对讲求助、紧急报警以及环境监听的场所,例如自助银行、审讯室、教室、医院,包括停车场出入口等。
    的头像 发表于 03-22 10:26 419次阅读
    <b class='flag-5'>SV</b>-6002TP 网络对讲求助模块 sip对讲终端模块 支持POE供电

    怎样查看input/output delay是否生效

    通过get_port命令查看接口。 get_ports * 以LVDS的输入输出为例 怎样去查看outputdelay   set_output_delay -clock
    的头像 发表于 02-27 08:38 593次阅读
    怎样查看<b class='flag-5'>input</b>/<b class='flag-5'>output</b> delay是否生效

    电器上INPUT是接电源线的吗

    INPUT通常是指电器的输入端,用于连接电源线或其他电源设备。电器的INPUT通常是通过插头或插座进行连接。INPUT的目的是将电器与电源进行连接,以实现电器的正常运行。 首先,我们来看
    的头像 发表于 02-23 14:15 9009次阅读

    inputoutput的用法

    输入和输出(input and output)是计算机科学中常用的术语,用于描述数据在计算机系统中的流动和交互。输入是指将数据或命令送入计算机系统,输出则是计算机系统对输入数据进行处理后返回的结果
    的头像 发表于 02-23 14:04 1589次阅读

    output1和output2有什么区别

    在计算机科学领域,输出被认为是一个程序或系统产生的结果。output1和output2是两个常见的输出标识,它们在不同的上下文中具有不同的含义和用途。 output1的定义和用途 output
    的头像 发表于 02-23 13:45 1978次阅读

    功放机OUTPUT是什么接口

    功放机是音频系统中不可或缺的组成部分。作为信号处理与扩大音频信号的设备,功放机的OUTPUT接口在连接音频信号与外部设备之间起到了桥梁的作用。本文将详细介绍功放机的OUTPUT接口的类型、功能
    的头像 发表于 02-23 10:34 9854次阅读

    verilog中inputoutput作用

    在Verilog中,inputoutput用于定义模块的输入和输出端口。它们是用于通信的关键元素,定义了模块与其它模块之间的数据传输接口。通过inputoutput端口,模块之间可
    的头像 发表于 02-23 10:29 2771次阅读

    SV-7101VP壁挂式网络SIP播放解码器

    输出到外接功放,可实现广播播放功能。SV-7101VP作为网络SIP系统的播放终端,可用于需要广播播放的场所,例如智慧城市、连锁酒店、教室、医院,包括景区等。 SV-7101VP是一款SIP网络广播终端,主要
    的头像 发表于 02-23 09:01 352次阅读
    <b class='flag-5'>SV</b>-7101VP壁挂式网络SIP播放解码器

    安桥ONKYO TX-SV909功放维修手册

    安桥ONKYO TX-SV909功放维修手册,供维修爱好者产靠
    发表于 01-22 09:32 4次下载

    input函数会将接收的数据以什么类型返回

    车键,input函数会将用户输入的数据作为字符串类型返回。 例如,以下代码段演示了input函数的使用: name = input ( "请输入您的姓名:" ) print ( "您的
    的头像 发表于 11-30 10:09 3087次阅读

    python中input怎么输入3个值

    在 Python 中,可以使用 input() 函数来获取用户的输入。如果你想要输入多个值,可以根据具体的需求使用以下方法。 方法一:使用多个 input 函数 最简单的方法是使用多个 input
    的头像 发表于 11-23 15:31 9329次阅读