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

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

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

3天內不再提示

Verilog HDL指定用戶定義原語UDP的能力介紹

電子工程師 ? 來源:FPGA設計論壇 ? 作者:FPGA設計論壇 ? 2021-03-05 15:30 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

用戶定義的原語

在前一章中,我們介紹了Verilog HDL提供的內置基本門。本章講述Verilog HDL指定用戶定義原語U D P的能力。

U D P的實例語句與基本門的實例語句完全相同,即 U D P實例語句的語法與基本門的實例語句語法一致。

6.1 UDP的定義

使用具有如下語法的U D P說明定義U D P。

p r i m i t i v e U D P _ n a m e (OutputName, List_of_inputs )

O u t p u t _ d e c l a r a t i o n

L i s t _ o f _ i n p u t _ d e c l a r a t i o n s

[R e g _ d e c l a r a t i o n]

[I n i t i a l _ s t a t e m e n t]

t a b l e

L i s t _ o f _ t a b e l _ e n t r i e s

e n d t a b l e

e n d p r i m i t i v e

U D P的定義不依賴于模塊定義,因此出現(xiàn)在模塊定義以外。也可以在單獨的文本文件中

定義U D P。U D P只能有一個輸出和一個或多個輸入。第一個端口必須是輸出端口。此外,輸出可以取值0、1或x(不允許取z值)。輸入中出現(xiàn)值z以x處理。U D P的行為以表的形式描述。在U D P中可以描述下面兩類行為:

1) 組合電路

2) 時序電路(邊沿觸發(fā)和電平觸發(fā))

6.2 組合電路UDP

在組合電路U D P中,表規(guī)定了不同的輸入組合和相對應的輸出值。沒有指定的任意組合輸出為x。下面以2 - 1多路選擇器為例加以說明。

p r i m i t i v e MUX2x1 (Z, Hab, Bay, Sel ) ;

o u t p u t Z;

i n p u t Hab,Bay, Sel;

t a b l e

// Hab Bay Sel : Z 注:本行僅作為注釋。

0 ? 1 : 0 ;

1 ? 1 : 1 ;

? 0 0 : 0 ;

? 1 0 : 1 ;

0 0 x : 0 ;

1 1 x : 1 ;

e n d t a b l e

e n d p r i m i t i v e

字符?代表不必關心相應變量的具體值,即它可以是0、1或x。輸入端口的次序必須與表中各項的次序匹配,即表中的第一列對應于原語端口隊列的第一個輸入 (例子中為 H a b),第二列是 B a y,第三列是 S e l。在多路選擇器的表中沒有輸入組合 0 1x項(還有其它一些項 );在這種情況下,輸出的缺省值為 x(對其它未定義的項也是如此 )。

5bd729e0-7c77-11eb-8b86-12bb97331649.png

圖6 - 1為使用2 - 1多路選擇器原語組成的4 - 1多路選擇器的示例。

如上例所示,在U D P實例中,總共可以指定 2個時延,這是由于U D P的輸出可以取值0、1或x(無截止時延)。

6.3 時序電路UDP

在時序電路U D P中,使用1位寄存器描述內部狀態(tài)。該寄存器的值是時序電路U D P的輸出值。共有兩種不同類型的時序電路U D P:一種模擬電平觸發(fā)行為;另一種模擬邊沿觸發(fā)行為。時序電路U D P使用寄存器當前值和輸入值決定寄存器的下一狀態(tài) (和后繼的輸出)。

6.3.1 初始化狀態(tài)寄存器

時序電路U D P的狀態(tài)初始化可以使用帶有一條過程賦值語句的初始化語句實現(xiàn)。形式如下:

i n i t i a l r e g _ n a m e = 0,1,or x;

初始化語句在U D P定義中出現(xiàn)。

6.3.2 電平觸發(fā)的時序電路UDP

下面是D鎖存器建模的電平觸發(fā)的時序電路 U D P示例。只要時鐘為低電平 0,數(shù)據(jù)就從輸入傳遞到輸出;否則輸出值被鎖存。

p r i m i t i v e Latch (Q, Clk, D) ;

o u t p u t Q;

r e g Q;

i n p u t Clk, D;

t a b l e

// Clk D Q(State) Q( n e x t )

0 1 : ? : 1 ;

0 0 : ? : 0 ;

1 ? : ? : - ;

e n d t a b l e

e n d p r i m i t i v e

“-”字符表示值“無變化”。注意U D P的狀態(tài)存儲在寄存器D中。

6.3.3 邊沿觸發(fā)的時序電路UDP

下例用邊沿觸發(fā)時序電路U D P為D邊沿觸發(fā)觸發(fā)器建模。初始化語句用于初始化觸發(fā)器的狀態(tài)。

表項( 0 1 )表示從0轉換到1,表項( 0 x )表示從0轉換到x,表項( ? 0 )表示從任意值( 0 , 1或x)轉換到0,表項( ? ? )表示任意轉換。對任意未定義的轉換,輸出缺省為 x。

假定D _ E d g e _ F F為U D P定義,它現(xiàn)在就能夠象基本門一樣在模塊中使用,如下面的 4位寄存器所示。

6.3.4 邊沿觸發(fā)和電平觸發(fā)的混合行為

在同一個表中能夠混合電平觸發(fā)和邊沿觸發(fā)項。在這種情況下,邊沿變化在電平觸發(fā)之前處理,即電平觸發(fā)項覆蓋邊沿觸發(fā)項。下例是帶異步清空的D觸發(fā)器的U D P描述。

6.4 另一實例

下面是3位表決電路的U D P描述。如果輸入向量中存在2個或更多的1,則輸出為1。

6.5 表項匯總

原文標題:Verilog入門-用戶定義的原語

文章出處:【微信公眾號:FPGA設計論壇】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

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

    關注

    30

    文章

    1374

    瀏覽量

    114542
  • HDL
    HDL
    +關注

    關注

    8

    文章

    332

    瀏覽量

    48986

原文標題:Verilog入門-用戶定義的原語

文章出處:【微信號:gh_9d70b445f494,微信公眾號:FPGA設計論壇】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Verilog HDL語法學習筆記

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

    RDMA設計46:RoCE v2原語功能:單邊語義

    本博文主要交流設計思路,在本博客已給出相關博文約170篇,希望對初學者有用。注意這里只是拋磚引玉,切莫認為參考這就可以完成商用IP設計。 續(xù)上,為便于查看,給出表1部分表1 RoCE v2原語功能
    發(fā)表于 03-01 23:14

    零知IDE——基于STM32與W5500的UDP通信實現(xiàn)溫濕度監(jiān)控

    本文詳細介紹了一個基于零知增強板(STM32F407VET6)和W5500以太網模塊的UDP通信溫濕度監(jiān)控系統(tǒng)。系統(tǒng)通過DHT11傳感器采集數(shù)據(jù),通過W5500實現(xiàn)UDP通信,支持遠程LED控制
    的頭像 發(fā)表于 02-28 15:26 ?1513次閱讀
    零知IDE——基于STM32與W5500的<b class='flag-5'>UDP</b>通信實現(xiàn)溫濕度監(jiān)控

    FPGA 入門必看:Verilog 與 VHDL 編程基礎解析!

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

    新突破!AI企業(yè)Anthropic將開發(fā)者工具核心能力下放至普通用戶

    電子發(fā)燒友網報道 當?shù)貢r間1月12日,AI巨頭Anthropic正式發(fā)布新工具“Cowork”,意圖將開發(fā)者工具的核心能力下放至普通用戶,重新定義人機協(xié)作邊界。 ? Claude Cowork:從
    的頭像 發(fā)表于 01-13 14:43 ?1359次閱讀

    【產品介紹】Modelsim:HDL語言仿真軟件

    概述ModelSim是業(yè)界最優(yōu)秀的HDL語言仿真軟件,它能提供友好的仿真環(huán)境,是業(yè)界唯一的單內核支持VHDL和Verilog混合仿真的仿真器。它采用直接優(yōu)化的編譯技術、Tcl/Tk技術、和單一內核
    的頭像 發(fā)表于 11-13 11:41 ?512次閱讀
    【產品<b class='flag-5'>介紹</b>】Modelsim:<b class='flag-5'>HDL</b>語言仿真軟件

    NucleiStudio如何生成.verilog文件和.dasm文件,以及對.dasm文件中自定義指令反匯編結果分析

    硬件設計需要.verilog文件來運行加NICE后的tb仿真、軟件組需要.dasm來確定自定義指令有無被正確編譯。今天,我們來分享一下NucleiStudio如何生成.verilog文件和.dasm
    發(fā)表于 10-24 06:33

    如何利用Verilog HDL在FPGA上實現(xiàn)SRAM的讀寫測試

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

    使用Simulink自動生成浮點運算HDL代碼(Part 1)

    引言 想要實現(xiàn)浮點運算功能,如果自己寫Verilog代碼,需要花費較多的時間和精力。好在Simulink HDL Coder工具箱提供了自動代碼生成技術。下圖展示了HDL Coder如何生成浮點運算
    發(fā)表于 10-22 06:48

    第五章 W55MH32 UDP示例

    本文介紹了在 W55MH32?芯片上實現(xiàn) UDP?通信及數(shù)據(jù)回環(huán)測試的方法。闡述了 UDP?協(xié)議的概念、特點、應用場景、報文傳輸流程和報文結構,展示了實現(xiàn)過程,借助網絡調試工具完成測試。
    的頭像 發(fā)表于 07-24 09:13 ?1113次閱讀
    第五章 W55MH32 <b class='flag-5'>UDP</b>示例

    HarmonyOS應用自定義鍵盤解決方案

    增強用戶輸入的安全性,避免敏感信息被截取或者泄露。本文介紹了自定義鍵盤的實現(xiàn),并結合自定義鍵盤和系統(tǒng)鍵盤的切換、自定義鍵盤的布局避讓等場景,
    的頭像 發(fā)表于 06-05 14:19 ?2416次閱讀

    HarmonyOS NEXT應用開發(fā)-Notification Kit(用戶通知服務)更多系統(tǒng)能力

    ,即指定應用的包信息。 系統(tǒng)能力: SystemCapability.Notification.Notification 類型 說明 _BundleOption 描述BundleOption信息,即指定
    發(fā)表于 06-04 15:43

    FPGA Verilog HDL語法之編譯預處理

    Verilog HDL語言和C語言一樣也提供了編譯預處理的功能?!熬幾g預處理”是Verilog HDL編譯系統(tǒng)的一個組成部分。Verilog
    的頭像 發(fā)表于 03-27 13:30 ?1454次閱讀
    FPGA <b class='flag-5'>Verilog</b> <b class='flag-5'>HDL</b>語法之編譯預處理

    一文詳解Verilog HDL

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

    ISERDESE2原語端口及參數(shù)介紹

    前面在講解HDMI接口之前,講解過IDDR、ODDR、OSERDESE2、IBUF等原語,之后一直有讀者在問什么時候更新ISERDESE2這個原語。前文講解過這些原語都在HDMI或者RGMII中使用過,但是ISERDESE2這個
    的頭像 發(fā)表于 03-17 10:52 ?2689次閱讀
    ISERDESE2<b class='flag-5'>原語</b>端口及參數(shù)<b class='flag-5'>介紹</b>