欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

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 UDPs的語(yǔ)法說(shuō)明

ruikundianzi ? 來(lái)源: IC的世界 ? 2023-09-13 14:02 ? 次閱讀

1、UDP的使用場(chǎng)景

User-defined primitives (UDPs) 翻譯過(guò)來(lái)就是用戶(hù)自定義原語(yǔ),常常用于構(gòu)建組合邏輯模型和時(shí)序邏輯模型。

我們編寫(xiě)Verilo代碼時(shí),定義寄存器使用的是reg 和always@(*clk*),運(yùn)行VCS RTL仿真時(shí),VCS能夠識(shí)別此類(lèi)信號(hào)是寄存器,能夠模擬其行為模型。

然而在使用VCS進(jìn)行網(wǎng)表仿真時(shí),此時(shí)網(wǎng)表中寄存器名稱(chēng)是這樣的SDFF*_XXXX,其中SDFF_XXXX是每個(gè)寄存器類(lèi)型對(duì)應(yīng)的標(biāo)準(zhǔn)Cell的名稱(chēng)。

SDFF_XXXX是每個(gè)Fab廠家獨(dú)有的名稱(chēng),且在Verilog規(guī)范中并沒(méi)有相關(guān)術(shù)語(yǔ),那么VCS等EDA仿真工具是如何識(shí)別并且模擬其器件行為的呢?

實(shí)際上進(jìn)行網(wǎng)表仿真時(shí),EDA工具會(huì)讀取對(duì)應(yīng)SDFF_XXXX的UDPs模型,從而進(jìn)行SDFF_XXXX的行為模擬。

2、UDPs的語(yǔ)法說(shuō)明

2.1. 2種類(lèi)型

UDPs的分為combinational UDP(組合邏輯)和 sequential UDP(時(shí)序邏輯)。

combinational UDP用于構(gòu)建組合邏輯模型,常見(jiàn)有mux模塊.

sequential UDP用于構(gòu)建寄存器和Latch模型,sequential UDP可以是邊沿觸發(fā),也可以是電平觸發(fā)。

2.2.基本語(yǔ)法規(guī)范

UDP建模使用primitive表示建模開(kāi)始,類(lèi)似module,endprimitive表示建模結(jié)束,類(lèi)似endmodule。

UDP模型在描述層級(jí)上與module/endmodule屬于同一等級(jí),因此primitive/endprimitive不能出現(xiàn)在module/endmodule內(nèi)部,就像不能在一個(gè)模塊里出現(xiàn)module~module~endmodule~endmodule.

//語(yǔ)法錯(cuò)誤
modulexxx();


primitive


  endprimitive


endmodule

每個(gè)UDP有且只有一個(gè)輸出,并且輸出只有三種狀態(tài),0, 1, or x,不支持Z狀態(tài)。

每個(gè)UDP可以由多個(gè)輸入信號(hào),如果輸入信號(hào)為z,則當(dāng)做X對(duì)待。時(shí)序UDP至少允許9個(gè)輸入信號(hào),組合UDP至少允許10個(gè)輸入信號(hào)。

每個(gè)UDP不支持定義inout類(lèi)型的信號(hào)

時(shí)序UDP的輸出信號(hào)應(yīng)該使用reg申明。

組合UDP的輸出信號(hào)不能使用reg申明。

時(shí)序UDP可以使用initial語(yǔ)句定制仿真開(kāi)始前output信號(hào)的初始值

2.3.UDP state table(狀態(tài)表)

UDP模型使用狀態(tài)表來(lái)描述模型的行為,

狀態(tài)表中使用的各類(lèi)變量見(jiàn)表40。例如r表示上升沿,f表示下降沿。*表示數(shù)值改變。

狀態(tài)表中的每行以分號(hào)結(jié)束。

狀態(tài)表本質(zhì)上就是一個(gè)輸入信號(hào)/輸出信號(hào)組合的列表。

組合UDP狀態(tài)表中有一個(gè)冒號(hào)“:”,用于隔離輸入和輸出信號(hào)。

時(shí)序UDP狀態(tài)表中有當(dāng)前狀態(tài),還有下一個(gè)狀態(tài),因此有2個(gè)冒號(hào)“:”,用于隔離輸入、輸出(當(dāng)前狀態(tài))和下一個(gè)狀態(tài)。

組合UDP模型中,如果輸入信號(hào)狀態(tài)組合在狀態(tài)表中沒(méi)有指定,則輸出會(huì)是X。

b5a10bb2-51ea-11ee-a25d-92fbcf53809c.png

2.4.UDP結(jié)構(gòu)

本節(jié)可忽略,直接看案例

b5bf3164-51ea-11ee-a25d-92fbcf53809c.png

3、組合UDP案例

如下案例為2選1的mux,sel為1時(shí),out為in1;sel為0時(shí),out為in0。

請(qǐng)注意:信號(hào)列表中,輸出信號(hào)out在第一個(gè)。狀態(tài)表中,out處于最后一列。

b5def18e-51ea-11ee-a25d-92fbcf53809c.png

4、電平觸發(fā)時(shí)序UDPs

如下案例為一個(gè)低電平觸發(fā)的latch。

使用reg申明了一個(gè)內(nèi)部變量,表示當(dāng)前狀態(tài)q,即當(dāng)前udp的輸出狀態(tài)。

table中的q+代表的是下一個(gè)有效周期的輸出狀態(tài)。

b5f31588-51ea-11ee-a25d-92fbcf53809c.png

5、邊沿觸發(fā)時(shí)序UDP

如下所示為一個(gè)上升沿觸發(fā)寄存器的模型。

其中NOTIFIER信號(hào)用于建立時(shí)間和保持時(shí)間檢查,通過(guò)建立時(shí)間和保持時(shí)間檢查,則NOTIFIER不變,時(shí)序檢測(cè)不通過(guò)則NOTIFIER翻轉(zhuǎn),udp_dff輸出為x態(tài)。

b60f79e4-51ea-11ee-a25d-92fbcf53809c.png

6、小技巧

將primitive類(lèi)比成module,將endprimitive類(lèi)比成endmodule,將table 類(lèi)比成case,將endtable類(lèi)比成endcase,你就知道該怎么寫(xiě)UDP模型了。

7、總結(jié)

雖然使用UDP能夠構(gòu)建網(wǎng)表時(shí)序邏輯和組合的邏輯的行為模型,但是仿真終究是仿真,無(wú)法做到與實(shí)際芯片行為完全一致,特別是在部分信號(hào)為X態(tài)時(shí)。因此網(wǎng)表仿真中如果X態(tài)的出現(xiàn)導(dǎo)致仿真出現(xiàn)問(wèn)題,此時(shí)不代表電路真的存在問(wèn)題,需要仔細(xì)分析原因,其中需要重點(diǎn)分析UDP模型是怎么寫(xiě)的。

審核編輯:湯梓紅
聲明:本文內(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)投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5372

    瀏覽量

    121322
  • 仿真
    +關(guān)注

    關(guān)注

    50

    文章

    4130

    瀏覽量

    134089
  • Verilog
    +關(guān)注

    關(guān)注

    28

    文章

    1352

    瀏覽量

    110467
  • RTL
    RTL
    +關(guān)注

    關(guān)注

    1

    文章

    385

    瀏覽量

    59991

原文標(biāo)題:Verilog語(yǔ)法: 必須掌握的User-defined primitives (UDPs)

文章出處:【微信號(hào):IP與SoC設(shè)計(jì),微信公眾號(hào):IP與SoC設(shè)計(jì)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Verilog HDL的基本語(yǔ)法

    Verilog HDL的基本語(yǔ)法 .pdf
    發(fā)表于 08-15 15:06

    Verilog HDL語(yǔ)法

    Verilog HDL語(yǔ)法,要的拿
    發(fā)表于 01-24 22:53

    verilog HDL語(yǔ)法總結(jié)

    verilog HDL語(yǔ)法總結(jié)
    發(fā)表于 03-16 14:26

    Verilog基礎(chǔ)語(yǔ)法

    Verilog基礎(chǔ)語(yǔ)法
    發(fā)表于 05-27 08:00

    verilog是什么?基本語(yǔ)法有哪些?

    verilog是什么?基本語(yǔ)法有哪些?
    發(fā)表于 09-18 07:41

    可綜合的Verilog語(yǔ)法和語(yǔ)義

    可綜合的Verilog語(yǔ)法和語(yǔ)義(劍橋大學(xué),影?。?第七版
    發(fā)表于 05-21 14:50 ?27次下載
    可綜合的<b class='flag-5'>Verilog</b><b class='flag-5'>語(yǔ)法</b>和語(yǔ)義

    Verilog_HDL的基本語(yǔ)法詳解(夏宇聞版)

    Verilog_HDL的基本語(yǔ)法詳解(夏宇聞版):Verilog HDL是一種用于數(shù)字邏輯電路設(shè)計(jì)的語(yǔ)言。用Verilog HDL描述的電路設(shè)計(jì)就是該電路的
    發(fā)表于 10-08 14:48 ?0次下載
    <b class='flag-5'>Verilog</b>_HDL的基本<b class='flag-5'>語(yǔ)法</b>詳解(夏宇聞版)

    Verilog HDL實(shí)驗(yàn)練習(xí)與語(yǔ)法手冊(cè)

    Verilog HDL實(shí)驗(yàn)練習(xí)與語(yǔ)法手冊(cè)-高教
    發(fā)表于 05-11 11:30 ?0次下載

    常見(jiàn)的Verilog行為級(jí)描述語(yǔ)法

    常見(jiàn)的Verilog描述語(yǔ)句與對(duì)應(yīng)的邏輯關(guān)系;熟悉語(yǔ)法與邏輯之間的關(guān)系
    的頭像 發(fā)表于 09-15 08:18 ?1w次閱讀
    常見(jiàn)的<b class='flag-5'>Verilog</b>行為級(jí)描述<b class='flag-5'>語(yǔ)法</b>

    FPGA視頻教程之Verilog語(yǔ)法基礎(chǔ)的詳細(xì)資料說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是FPGA視頻教程之Verilog語(yǔ)法基礎(chǔ)的詳細(xì)資料說(shuō)明資料免費(fèi)下載
    發(fā)表于 03-01 11:35 ?18次下載
    FPGA視頻教程之<b class='flag-5'>Verilog</b><b class='flag-5'>語(yǔ)法</b>基礎(chǔ)的詳細(xì)資料<b class='flag-5'>說(shuō)明</b>

    Verilog HDL的基礎(chǔ)知識(shí)詳細(xì)說(shuō)明

    硬件描述語(yǔ)言基本語(yǔ)法和實(shí)踐 (1)VHDL 和Verilog HDL的各自特點(diǎn)和應(yīng)用范圍 (2)Verilog HDL基本結(jié)構(gòu)語(yǔ)言要素與語(yǔ)法規(guī)則 (3)
    發(fā)表于 07-03 17:36 ?54次下載
    <b class='flag-5'>Verilog</b> HDL的基礎(chǔ)知識(shí)詳細(xì)<b class='flag-5'>說(shuō)明</b>

    有關(guān)Verilog中的一些語(yǔ)法詳細(xì)資料說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是有關(guān)Verilog中的一些語(yǔ)法詳細(xì)資料說(shuō)明。
    發(fā)表于 07-25 17:08 ?2次下載
    有關(guān)<b class='flag-5'>Verilog</b>中的一些<b class='flag-5'>語(yǔ)法</b>詳細(xì)資料<b class='flag-5'>說(shuō)明</b>

    Verilog語(yǔ)法進(jìn)階

    Verilog語(yǔ)法進(jìn)階說(shuō)明
    發(fā)表于 05-06 16:14 ?30次下載

    Verilog HDL入門(mén)教程-Verilog HDL的基本語(yǔ)法

    Verilog HDL入門(mén)教程-Verilog HDL的基本語(yǔ)法
    發(fā)表于 01-07 09:23 ?179次下載

    Verilog語(yǔ)法中運(yùn)算符的用法

    verilog語(yǔ)法中使用以下兩個(gè)運(yùn)算符可以簡(jiǎn)化我們的位選擇代碼。
    的頭像 發(fā)表于 10-25 15:17 ?1340次閱讀
    <b class='flag-5'>Verilog</b><b class='flag-5'>語(yǔ)法</b>中運(yùn)算符的用法