91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

探討VHDL和Verilog模塊互相調用的問題

FPGA之家 ? 來源:Aries FPGA開源 ? 作者:Aries FPGA開源 ? 2021-04-30 14:06 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1、關于如何在VHDL模塊調用一個Verilog模塊

在VHDL模塊聲明一個要與調用的Verilog模塊相同名稱的元件(component),元件的名稱和端口模式應與Verilog模塊的名稱和輸入/輸出模式相同。注意Verilog區(qū)分大小寫,VHDL不區(qū)分,所以模塊名字一定要完全一致,不能搞混。

舉個例子:下面是一個VHDL模塊,在里面聲明了一個元件(component)

cb372b9a-a95f-11eb-9728-12bb97331649.png

看Verilog模塊再

cb4b3734-a95f-11eb-9728-12bb97331649.png

VHDL的模塊就是通過聲明一個元件(component)來調用這個Verilog模塊,將元件聲明提出來講,如下圖:

cb5e3e6a-a95f-11eb-9728-12bb97331649.png

對比這個Verilog模塊和VHDL中聲明的元件不難發(fā)現,模塊名/端口/輸入輸出模式完全一樣,這和VHDL自己調用用VHDL的元件(component)基本一樣。

2、關于如何在Verilog中調用VHDL模塊

在Verilog中,通過在Verilog模塊中輸入其名稱(標識符)及端口來調用VHDL實體。模塊的參數應該與實體的類型和端口的方向匹配,可以映射到Verilog模塊的VHDL端口為:in,out和inout;在某些模擬器中,不允許使用緩沖區(qū)。Verilog模塊只能使整個VHDL實體可見。

舉個例子:下圖是一個Verilog模塊調用了VHDL模塊(高亮處)

cb6f7040-a95f-11eb-9728-12bb97331649.png

下圖是一個VHDL模塊

cb7d681c-a95f-11eb-9728-12bb97331649.png

Simulator(模擬器,注:這個是英文原版使用的詞語,我的理解就是一些EDA)首先在Verilog模塊中查找,以查看是否有任何名為VHD_enty的Verilog模塊。如果找不到,模擬器將在VHDL實體中查找。當模擬器找到名稱為VHD_enty的實體時,它將該實體綁定到Verilog模塊。在代碼中,輸入a被傳遞到輸入端口x;輸入b傳遞給輸入y。VHDL實體計算輸出O1和O2;這兩個輸出分別傳遞到Verilog輸出c和d。調用VHDL模塊與調用功能或任務非常相似。

例子舉完了,下面驗證一下

驗證:在Verilog中調用VHDL模塊實體(VHDL調用Verilog考慮到比較簡單,大家用的更多是Verilog,就不舉例子了)

驗證內容:使用Verilog調用兩個VHDL寫的D觸發(fā)器模塊實現打兩拍。

cb94f78e-a95f-11eb-9728-12bb97331649.png

這個代碼是一個用VHDL語言寫的D觸發(fā)器模塊,在FIFO中也寫過。

cbcaf12c-a95f-11eb-9728-12bb97331649.png

這個代碼是Verilog寫的,在內部調用兩個由VHDL寫的D觸發(fā)器,實現兩級D觸發(fā)器。

cbd45aa0-a95f-11eb-9728-12bb97331649.png

上圖是VHDL寫的D觸發(fā)器綜合出的原理圖,注意對應的端口。

cbe2e0de-a95f-11eb-9728-12bb97331649.png

上圖是Verilog代碼綜合出來的原理圖,從代碼上看,定義了vclk、x、y三個端口,連接VHDL寫的兩個D觸發(fā)器,基本的調用過程就是這樣。

總結:兩者的互相調用過程都不復雜,舉個基礎的例子只是為了大家熟悉這個過程。在實際中難免會遇到有互相調用的地方。

編輯:jq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1660

    文章

    22423

    瀏覽量

    636693
  • vhdl
    +關注

    關注

    30

    文章

    822

    瀏覽量

    131719
  • 觸發(fā)器
    +關注

    關注

    14

    文章

    2056

    瀏覽量

    63420

原文標題:關于VHDL和Verilog模塊互相調用的問題

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Verilog HDL語法學習筆記

    Verilog HDL 語 言 最 初 是 作為 Gateway Design Automation 公 司 ( Gateway DesignAutomation 公司后來被著名的 Cadence Design Systems 公司收購)模擬器產品開發(fā)的硬件建模語言。
    的頭像 發(fā)表于 03-04 15:04 ?5402次閱讀
    <b class='flag-5'>Verilog</b> HDL語法學習筆記

    高層次綜合在FPGA設計中的價值與局限

    一條是“硬核派”,直接用 Verilog/VHDL 寫 RTL,控制信號級細節(jié),精打細算每個資源。
    的頭像 發(fā)表于 02-27 15:32 ?314次閱讀

    使用Vivado ILA進行復雜時序分析的完整流程

    在 HDL 代碼中標記待觀測信號,添加 (* mark_debug = "true" *) 屬性(Verilog)或 keep 屬性(VHDL
    的頭像 發(fā)表于 02-04 11:28 ?292次閱讀

    基于FPGA VHDL的FSK調制與解調設計

    VHDL誕生于1982年。在1987年底,VHDL被IEEE和美國國防部確認為標準硬件描述語言。
    的頭像 發(fā)表于 01-27 10:58 ?348次閱讀
    基于FPGA <b class='flag-5'>VHDL</b>的FSK調制與解調設計

    FPGA 入門必看:VerilogVHDL 編程基礎解析!

    很多開發(fā)者第一次接觸FPGA,都會有同樣的疑問:FPGA是硬件,不是軟件,怎么寫程序?答案就是用硬件描述語言(HDL),最常用的就是VerilogVHDL。今天,我們就帶你入門,搞清楚FPGA編程
    的頭像 發(fā)表于 01-19 09:05 ?490次閱讀
    FPGA 入門必看:<b class='flag-5'>Verilog</b> 與 <b class='flag-5'>VHDL</b> 編程基礎解析!

    Jumia API 調用:覆蓋非洲市場的實操指南

    一、調用前的四大核心準備(適配 Jumia 地區(qū)特性)? Jumia API 的調用準備需圍繞 “地區(qū)差異化” 展開,這是區(qū)別于其他電商 API 的關鍵前提。? 1. 開發(fā)者賬號與 API Key
    的頭像 發(fā)表于 11-25 17:12 ?759次閱讀

    使用NucleiStudio生成tb仿真需要的.verilog文件

    打開仿真頂層文件tb_top.v,存放在ITCM模塊里面的指令是通過readmemh函數讀入.verilog文件實現的: 下面通過對NucleiStudio IDE進行設置,實現將c
    發(fā)表于 11-05 07:07

    Python調用API教程

    兩個不同系統(tǒng)之間的信息交互。在這篇文章中,我們將詳細介紹Python調用API的方法和技巧。 一、用Requests庫發(fā)送HTTP請求 使用Python調用API的第一步是發(fā)送HTTP請求,通常
    的頭像 發(fā)表于 11-03 09:15 ?916次閱讀

    如何利用Verilog HDL在FPGA上實現SRAM的讀寫測試

    本篇將詳細介紹如何利用Verilog HDL在FPGA上實現SRAM的讀寫測試。SRAM是一種非易失性存儲器,具有高速讀取和寫入的特點。在FPGA中實現SRAM讀寫測試,包括設計SRAM接口模塊
    的頭像 發(fā)表于 10-22 17:21 ?4372次閱讀
    如何利用<b class='flag-5'>Verilog</b> HDL在FPGA上實現SRAM的讀寫測試

    DSP芯片與800G光模塊的核心關系:Transmit Retimed DSP、LPO與LRO方案的探討

    本文深入探討DSP芯片在800G光模塊中的核心作用,包括Transmit Retimed DSP架構與新興LPO/LRO方案的對比分析。DSP在信號均衡、誤碼控制與長距離傳輸中不可或缺,而LPO/LRO以低功耗優(yōu)勢適用于短距互聯。未來兩者將根據場景長期共存,共同推動光
    的頭像 發(fā)表于 09-10 16:32 ?2543次閱讀
    DSP芯片與800G光<b class='flag-5'>模塊</b>的核心關系:Transmit Retimed DSP、LPO與LRO方案的<b class='flag-5'>探討</b>

    為什么我選擇VHDL入門

    在群里交流提問的時候,大家總是驚訝并疑惑:為什么我要選擇 VHDL入門?因為好像 99% 搞 FPGA 開發(fā)的人都在用 Verilog。 我的選擇,是通過網上搜索的討論而做出的,為了留存,我這里水一
    的頭像 發(fā)表于 06-25 11:18 ?1227次閱讀
    為什么我選擇<b class='flag-5'>VHDL</b>入門

    verilog模塊調用、任務和函數

    在做模塊劃分時,通常會出現這種情形,某個大的模塊中包含了一個或多個功能子模塊,verilog是通過模塊調
    的頭像 發(fā)表于 05-03 10:29 ?1582次閱讀
    <b class='flag-5'>verilog</b><b class='flag-5'>模塊</b>的<b class='flag-5'>調用</b>、任務和函數

    在Vivado調用MIG產生DDR3的問題解析

    下面是調用的DDR3模塊的,模塊的倒數第二行是,模塊的時鐘輸入,時鐘源來自PLL產生的系統(tǒng)時鐘的倍頻。
    的頭像 發(fā)表于 05-03 10:21 ?1564次閱讀
    在Vivado<b class='flag-5'>調用</b>MIG產生DDR3的問題解析

    FPGA Verilog HDL語法之編譯預處理

    Verilog HDL語言和C語言一樣也提供了編譯預處理的功能?!熬幾g預處理”是Verilog HDL編譯系統(tǒng)的一個組成部分。Verilog HDL語言允許在程序中使用幾種特殊的命令(它們不是一般
    的頭像 發(fā)表于 03-27 13:30 ?1460次閱讀
    FPGA <b class='flag-5'>Verilog</b> HDL語法之編譯預處理

    一文詳解Verilog HDL

    Verilog HDL(Hardware Description Language)是一種硬件描述語言,用于從算法級、門級到開關級的多種抽象設計層次的數字系統(tǒng)建?!,F實生活中多用于專用集成電路
    的頭像 發(fā)表于 03-17 15:17 ?4323次閱讀
    一文詳解<b class='flag-5'>Verilog</b> HDL