0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

SV Structure作為module的input/output

芯片驗(yàn)證工程師 ? 來源:芯片驗(yàn)證工程師 ? 作者:芯片驗(yàn)證工程師 ? 2022-11-08 09:51 ? 次閱讀

在SV中可以使用結(jié)構(gòu)體作為模塊的輸入或輸出,這使得它可以更加清晰地傳遞更多的信號(hào),以簡化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

在上面的例子中,我們首先定義了一個(gè)名為“ext”的unpacked struct,然后直接作為module的output。

再聲明一個(gè)moudle top,連接到這個(gè)struct。最后打印表明這個(gè)結(jié)構(gòu)體確實(shí)完成了連接,打印相同的信息。

struct可以作為參數(shù)傳遞給task或function,前提是這個(gè)struct需要先使用typedef聲明為用戶自定義類型

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

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Module
    +關(guān)注

    關(guān)注

    0

    文章

    63

    瀏覽量

    12837
  • SV
    SV
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    13925
  • Struct
    +關(guān)注

    關(guān)注

    0

    文章

    31

    瀏覽量

    10843

原文標(biāo)題:SV Structure作為module的input/output

文章出處:【微信號(hào):芯片驗(yàn)證工程師,微信公眾號(hào):芯片驗(yàn)證工程師】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Input Filter Design for Multiple-Module DC Power Systems

    Input Filter Design for Multiple-Module DC Power Systems[/hide]
    發(fā)表于 10-12 08:54

    求助,F(xiàn)PGA,I/O口作input,輸入外部控制信號(hào)與作output有什么區(qū)別?

    FPGA的I/O口如果作為input,輸入外部控制信號(hào),電平還有其他設(shè)置等等,與作output時(shí)有什么區(qū)別?
    發(fā)表于 06-21 12:50

    使用SystemVerilog來簡化FPGA中接口的連接方式

    解釋一句:文件格式都是.sv,這是因?yàn)镾ystemVerilog的語法都是包含Verilog的?! ?b class='flag-5'>module top(  input clk,  input rst,  
    發(fā)表于 01-08 17:23

    SV Structure作為moduleinput/output

    a t i o n R e p o r t在上面的例子中,我們首先定義了一個(gè)名為“ext”的unpacked struct,然后直接作為moduleoutput。再聲明一個(gè)moudle top,連接
    發(fā)表于 11-10 15:30

    Input and Output Capacitor Sel

    ABSTRACTWhen designing with switching regulators, application requirements determine howmuch input
    發(fā)表于 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
    發(fā)表于 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
    發(fā)表于 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

    一個(gè)packed structure有很多的bits組成,這些bit在物理上連續(xù)存儲(chǔ)。packed structure只允許包含packed數(shù)據(jù)類型。
    的頭像 發(fā)表于 11-07 10:17 ?2052次閱讀

    SV Structure作為moduleinput/output

    SV中可以使用結(jié)構(gòu)體作為模塊的輸入或輸出,這使得它可以更加清晰地傳遞更多的信號(hào),以簡化RTL代碼,類似于interface。
    的頭像 發(fā)表于 11-08 09:51 ?721次閱讀

    Virtual Input/Output IP核的幾個(gè)重要參數(shù)

    大家好!今日給大家介紹下Virtual Input/Output IP 核的幾個(gè)重要參數(shù)。
    的頭像 發(fā)表于 06-01 09:18 ?1346次閱讀
    Virtual <b class='flag-5'>Input</b>/<b class='flag-5'>Output</b> IP核的幾個(gè)重要參數(shù)

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

    電子發(fā)燒友網(wǎng)為你提供ADI(ADI)MAX14906: Quad-Channel Industrial Digital Output, Digital Input Data Sheet相關(guān)產(chǎn)品參數(shù)
    發(fā)表于 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

    電子發(fā)燒友網(wǎng)為你提供ADI(ADI)MAX22195: High-Speed, Octal, Industrial Digital Input with Parallel Output Data
    發(fā)表于 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繼承過來的概念,自然地保持了它的特點(diǎn)除了作為RTL模型的外殼包裝和實(shí)現(xiàn)硬件行為, 在更高層的集成層面,模塊之間也需要通信和同步。
    的頭像 發(fā)表于 10-21 17:30 ?749次閱讀
    <b class='flag-5'>SV</b>線程的使用和控制

    verilog中inputoutput作用

    在Verilog中,inputoutput用于定義模塊的輸入和輸出端口。它們是用于通信的關(guān)鍵元素,定義了模塊與其它模塊之間的數(shù)據(jù)傳輸接口。通過inputoutput端口,模塊之間可
    的頭像 發(fā)表于 02-23 10:29 ?2551次閱讀

    inputoutput的用法

    輸入和輸出(input and output)是計(jì)算機(jī)科學(xué)中常用的術(shù)語,用于描述數(shù)據(jù)在計(jì)算機(jī)系統(tǒng)中的流動(dòng)和交互。輸入是指將數(shù)據(jù)或命令送入計(jì)算機(jī)系統(tǒng),輸出則是計(jì)算機(jī)系統(tǒng)對輸入數(shù)據(jù)進(jìn)行處理后返回的結(jié)果
    的頭像 發(fā)表于 02-23 14:04 ?1423次閱讀