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

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

    关注

    0

    文章

    67

    浏览量

    12840
  • SV
    SV
    +关注

    关注

    0

    文章

    6

    浏览量

    13932
  • Struct
    +关注

    关注

    0

    文章

    31

    浏览量

    10857

原文标题:SV Structure作为module的input/output

文章出处:【微信号:芯片验证工程师,微信公众号:芯片验证工程师】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Input Filter Design for Multiple-Module DC Power Systems

    Input Filter Design for Multiple-Module DC Power Systems[/hide]
    发表于 10-12 08:54

    求助,FPGA,I/O口作input,输入外部控制信号与作output有什么区别?

    FPGA的I/O口如果作为input,输入外部控制信号,电平还有其他设置等等,与作output时有什么区别?
    发表于 06-21 12:50

    使用SystemVerilog来简化FPGA中接口的连接方式

    解释一句:文件格式都是.sv,这是因为SystemVerilog的语法都是包含Verilog的。  module top(  input clk,  input rst,  
    发表于 01-08 17:23

    SV Structure作为moduleinput/output

    a t i o n R e p o r t在上面的例子中,我们首先定义了一个名为“ext”的unpacked struct,然后直接作为moduleoutput。再声明一个moudle top,连接
    发表于 11-10 15:30

    Input and Output Capacitor Sel

    ABSTRACTWhen designing with switching regulators, application requirements determine howmuch input
    发表于 11-16 17:05 36次下载

    LTM8001: 36VIN, 5A μModule (Power Module) Regulator with 5-Output Configurable LDO Array Data Sheet

    LTM8001: 36VIN, 5A μModule (Power Module) Regulator with 5-Output Configurable LDO Array Data Sheet
    发表于 01-28 10:26 1次下载
    LTM8001: 36VIN, 5A μ<b class='flag-5'>Module</b> (Power <b class='flag-5'>Module</b>) Regulator with 5-<b class='flag-5'>Output</b> Configurable LDO Array Data Sheet

    LTM4656/LTM4656-1: Synchronous Boost μModule Regulator with Input-Output Short Protection Data Sheet

    LTM4656/LTM4656-1: Synchronous Boost μModule Regulator with Input-Output Short Protection Data Sheet
    发表于 01-29 14:47 1次下载
    LTM4656/LTM4656-1:  Synchronous Boost μ<b class='flag-5'>Module</b> Regulator with <b class='flag-5'>Input-Output</b> Short Protection Data Sheet

    SystemVerilog中的Packed Structure

    一个packed structure有很多的bits组成,这些bit在物理上连续存储。packed structure只允许包含packed数据类型。
    的头像 发表于 11-07 10:17 2137次阅读

    SV Structure作为moduleinput/output

    SV中可以使用结构体作为模块的输入或输出,这使得它可以更加清晰地传递更多的信号,以简化RTL代码,类似于interface。
    的头像 发表于 11-08 09:51 753次阅读

    Virtual Input/Output IP核的几个重要参数

    大家好!今日给大家介绍下Virtual Input/Output IP 核的几个重要参数。
    的头像 发表于 06-01 09:18 1451次阅读
    Virtual <b class='flag-5'>Input</b>/<b class='flag-5'>Output</b> IP核的几个重要参数

    MAX14906: Quad-Channel Industrial Digital Output, Digital Input Data Sheet MAX14906: Quad-Channel Industrial Digital Output, Digital Input D

    电子发烧友网为你提供ADI(ADI)MAX14906: Quad-Channel Industrial Digital Output, Digital Input Data Sheet相关产品参数
    发表于 10-13 18:44
    MAX14906: Quad-Channel Industrial Digital <b class='flag-5'>Output</b>, Digital <b class='flag-5'>Input</b> Data Sheet MAX14906: Quad-Channel Industrial Digital <b class='flag-5'>Output</b>, Digital <b class='flag-5'>Input</b> D

    MAX22195: High-Speed, Octal, Industrial Digital Input with Parallel Output Data Sheet MAX22195: High-Speed, Octal, Industrial Digital Input

    电子发烧友网为你提供ADI(ADI)MAX22195: High-Speed, Octal, Industrial Digital Input with Parallel Output Data
    发表于 10-17 19:15
    MAX22195: High-Speed, Octal, Industrial Digital <b class='flag-5'>Input</b> with Parallel <b class='flag-5'>Output</b> Data Sheet MAX22195: High-Speed, Octal, Industrial Digital <b class='flag-5'>Input</b>

    SV线程的使用和控制

    module (模块)作为SV从Verilog继承过来的概念,自然地保持了它的特点除了作为RTL模型的外壳包装和实现硬件行为, 在更高层的集成层面,模块之间也需要通信和同步。
    的头像 发表于 10-21 17:30 807次阅读
    <b class='flag-5'>SV</b>线程的使用和控制

    verilog中inputoutput作用

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

    inputoutput的用法

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