chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

Verilog HDL指定用戶定義原語(yǔ)U D P的能力

FPGA之家 ? 來(lái)源:FPGA之家 ? 作者:FPGA之家 ? 2021-04-08 10:43 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

用戶定義的原語(yǔ)

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

U D P的實(shí)例語(yǔ)句與基本門的實(shí)例語(yǔ)句完全相同,即 U D P實(shí)例語(yǔ)句的語(yǔ)法與基本門的實(shí)例語(yǔ)句語(yǔ)法一致。

6.1 UDP的定義

使用具有如下語(yǔ)法的U D P說(shuō)明定義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)在模塊定義以外。也可以在單獨(dú)的文本文件中

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

1) 組合電路

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

6.2 組合電路UDP

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

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

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

b7494e7c-92eb-11eb-8b86-12bb97331649.png

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

b75b3c86-92eb-11eb-8b86-12bb97331649.png

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

6.3 時(shí)序電路UDP

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

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

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

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

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

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

下面是D鎖存器建模的電平觸發(fā)的時(shí)序電路 U D P示例。只要時(shí)鐘為低電平 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

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

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

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

b76b5486-92eb-11eb-8b86-12bb97331649.png

表項(xiàng)( 0 1 )表示從0轉(zhuǎn)換到1,表項(xiàng)( 0 x )表示從0轉(zhuǎn)換到x,表項(xiàng)( ? 0 )表示從任意值( 0 , 1或x)轉(zhuǎn)換到0,表項(xiàng)( ? ? )表示任意轉(zhuǎn)換。對(duì)任意未定義的轉(zhuǎn)換,輸出缺省為 x。

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

b7796b3e-92eb-11eb-8b86-12bb97331649.png

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

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

b78611ae-92eb-11eb-8b86-12bb97331649.png

6.4 另一實(shí)例

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

b791fb4a-92eb-11eb-8b86-12bb97331649.png

6.5 表項(xiàng)匯總

b7a02184-92eb-11eb-8b86-12bb97331649.png

責(zé)任編輯:lq

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

    關(guān)注

    30

    文章

    1373

    瀏覽量

    114388
  • 變量
    +關(guān)注

    關(guān)注

    0

    文章

    615

    瀏覽量

    29450
  • 選擇器
    +關(guān)注

    關(guān)注

    0

    文章

    111

    瀏覽量

    15096

原文標(biāo)題:Verilog入門-用戶定義的原語(yǔ)

文章出處:【微信號(hào):zhuyandz,微信公眾號(hào):FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

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

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

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

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

    C語(yǔ)言指針p、*p、&amp;p、*&amp;p、&amp;*p分別代表什么

    結(jié)果可以看出*p打印的是a的值,也就是p指向變量的值,這點(diǎn)是毋庸置疑的,想必大家也都知道,那我們一起來(lái)看看其他的變量分別代表什么意思吧! p:指針變量名。在定義指針變量時(shí),需要
    發(fā)表于 01-07 07:34

    探索TLE493D-P3XX-MS2GO 3D 2Go套件:開(kāi)啟3D磁傳感器評(píng)估之旅

    Technologies TLE493D-P3XX-MS2GO 3D 2Go評(píng)估套件.pdf 套件概述 TLE493D-P3XX-MS2GO 3D 2Go套件旨在讓
    的頭像 發(fā)表于 12-18 17:15 ?659次閱讀

    【產(chǎn)品介紹】Modelsim:HDL語(yǔ)言仿真軟件

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

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

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

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

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

    使用Simulink自動(dòng)生成浮點(diǎn)運(yùn)算HDL代碼(Part 1)

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

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

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

    FPGA Verilog HDL語(yǔ)法之編譯預(yù)處理

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

    FA20-220S48P2D4 FA20-220S48P2D4

    電子發(fā)燒友網(wǎng)為你提供AIPULNION(AIPULNION)FA20-220S48P2D4相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有FA20-220S48P2D4的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,F(xiàn)A20-220S48P2D4真
    發(fā)表于 03-24 18:55
    FA20-220S48<b class='flag-5'>P2D</b>4 FA20-220S48<b class='flag-5'>P2D</b>4

    一文詳解Verilog HDL

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

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

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

    淺談Verilog和VHDL的區(qū)別

    Verilog和VHDL是兩種廣泛使用的硬件描述語(yǔ)言(HDL),它們用于描述和模擬數(shù)字電路系統(tǒng)的行為和結(jié)構(gòu)。這兩種語(yǔ)言的主要作用是幫助工程師設(shè)計(jì)、仿真和驗(yàn)證集成電路(IC)和系統(tǒng)級(jí)芯片(SoC)中的硬件模塊。
    的頭像 發(fā)表于 02-17 14:20 ?3183次閱讀
    淺談<b class='flag-5'>Verilog</b>和VHDL的區(qū)別

    如何快速創(chuàng)建用戶定義Board和App工程

    概述自HPM_SDKv1.7.0發(fā)布開(kāi)始,在HPM_ENV中新增了user_template文件夾,以方便用戶快速創(chuàng)建自定義的Board和App工程。user_template是用戶模板工程,
    的頭像 發(fā)表于 02-08 13:38 ?1287次閱讀
    如何快速創(chuàng)建<b class='flag-5'>用戶</b>自<b class='flag-5'>定義</b>Board和App工程