国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

    文章

    2837

    瀏覽量

    53293
  • RTL
    RTL
    +關注

    關注

    1

    文章

    394

    瀏覽量

    62658
  • 結構體
    +關注

    關注

    1

    文章

    131

    瀏覽量

    11372
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    RDMA設計35:基于 SV 的驗證平臺

    設計。 FPGA IP(知識產權核)使用SystemVerilog(SV)進行驗證,主要基于其在驗證效率、代碼復用性和工程協作方面的顯著優勢。本IP采用它進行驗證以確保其可靠性。 這里主要對RoCE
    發表于 02-01 13:14

    Dual Coupler Module skyworksinc

    電子發燒友網為你提供()Dual Coupler Module相關產品參數、數據手冊,更有Dual Coupler Module的引腳圖、接線圖、封裝手冊、中文資料、英文資料,Dual
    發表于 10-28 18:34
    Dual Coupler <b class='flag-5'>Module</b> skyworksinc

    關于E203內核高性能乘法器優化(三)

    4:2壓縮器優化 一般的4:2壓縮器是由兩級3:2壓縮器串接起來的,而3:2壓縮器的實質就是全加器,其結構如下: 表達式如下: 代碼實現: module full_adder( input a
    發表于 10-23 07:43

    SV7102 低壓高速USB 2.0開關技術手冊

    電子發燒友網站提供《SV7102 低壓高速USB 2.0開關技術手冊.pdf》資料免費下載
    發表于 09-10 16:30 ?0次下載

    SV7321, SV7358, SV7324英文手冊

    電子發燒友網站提供《SV7321, SV7358, SV7324英文手冊.pdf》資料免費下載
    發表于 09-09 18:09 ?0次下載

    SV74157A英文手冊

    電子發燒友網站提供《SV74157A英文手冊.pdf》資料免費下載
    發表于 09-09 17:34 ?0次下載

    SV8541A、SV8542A、SV8544A 微功率低噪聲運算放大器技術手冊

    電子發燒友網站提供《SV8541A、SV8542A、SV8544A 微功率低噪聲運算放大器技術手冊.pdf》資料免費下載
    發表于 09-09 17:17 ?0次下載

    SV7102 低壓高速USB 2.0開關技術手冊

    電子發燒友網站提供《SV7102 低壓高速USB 2.0開關技術手冊.pdf》資料免費下載
    發表于 09-09 17:04 ?0次下載

    基于LockAI視覺識別模塊:手寫數字識別

    結果可視化 lockzhiner_vision_module::vision::Visualize(input_mat, output_image, result); 參數說明: inpu
    發表于 06-30 16:45

    嵌入式學習-飛凌嵌入式ElfBoard ELF 1板卡-input子系統之基于input子系統的按鍵驅動

    例程代碼路徑:ELF 1開發板資料包\\03-例程源碼\\03-2 驅動例程源碼\\08_input子系統\\keyboard下面以控制開發板上的K2為例進行講解。修改設備樹(一)查看原理圖和引腳
    發表于 04-16 10:57

    飛凌嵌入式ElfBoard ELF 1板卡-input子系統之基于input子系統的按鍵驅動

    例程代碼路徑:ELF 1開發板資料包\\03-例程源碼\\03-2 驅動例程源碼\\08_input子系統\\keyboard下面以控制開發板上的K2為例進行講解。修改設備樹(一)查看原理圖和引腳
    發表于 04-15 10:58

    嵌入式學習-飛凌嵌入式ElfBoard ELF 1板卡-input子系統之input子系統簡單構建流程

    _device); input_free_device(input_device); pr_info(\"Input device unregistered\\n\");} module
    發表于 04-15 10:54

    飛凌嵌入式ElfBoard ELF 1板卡-input子系統之input子系統簡單構建流程

    _device); input_free_device(input_device); pr_info(\"Input device unregistered\\n\");} module
    發表于 04-15 10:29

    STM32CubeMX PA0、PA4、PA7、PB1等類似的端口不能作為普通的GPIO_Output和GPIO_Input口使用嗎?

    用STM32G0B1RCT6芯片 用STM32CubeMX配置端口,有些端口沒有 GPIO_Output和GPIO_Input選項!比如PA0、PA4、PA7、PB1等類似的口。 這些口,不能作為
    發表于 03-14 06:52

    SV托管和IDC托管有什么區別

    SV托管和IDC托管在本質上沒有區別。實際上,“SV托管”并不是一個普遍認可或廣泛使用的術語,而“IDC托管”是行業內對服務器托管服務的一種標準稱呼。因此,當提到“SV托管”時,很可能是在指一種特定的服務器托管服務,但這種表述并
    的頭像 發表于 03-07 10:05 ?848次閱讀