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

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

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

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

數(shù)字硬件建模SystemVerilog-網(wǎng)絡(luò)

OpenFPGA ? 來(lái)源:OpenFPGA ? 作者:OpenFPGA ? 2022-05-09 09:26 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

數(shù)字硬件建模SystemVerilog(七)-網(wǎng)絡(luò)

System Verilog提供兩組通用的數(shù)據(jù)類(lèi)型:網(wǎng)絡(luò)和變量(nets 和 variables)。網(wǎng)絡(luò)和變量同時(shí)具有類(lèi)型和數(shù)據(jù)類(lèi)型特性。類(lèi)型表示信號(hào)為網(wǎng)絡(luò)或變量,數(shù)據(jù)類(lèi)型表示網(wǎng)絡(luò)或變量的值系統(tǒng),即2態(tài)或4態(tài)。為簡(jiǎn)單起見(jiàn),使用術(shù)語(yǔ)data type來(lái)表示信號(hào)的類(lèi)型和數(shù)據(jù)類(lèi)型。

軟件工具(如仿真器和綜合編譯器)使用數(shù)據(jù)類(lèi)型來(lái)確定如何存儲(chǔ)數(shù)據(jù)和處理數(shù)據(jù)上的更改。數(shù)據(jù)類(lèi)型影響操作,并在RTL建模中用于指示所需的硅行為。例如,數(shù)據(jù)類(lèi)型用于確定加法器應(yīng)基于整數(shù)還是基于浮點(diǎn),以及應(yīng)執(zhí)行有符號(hào)算術(shù)還是無(wú)符號(hào)算術(shù)。

網(wǎng)絡(luò)類(lèi)型

網(wǎng)絡(luò)用于將設(shè)計(jì)元素連接在一起,例如將一個(gè)模塊的輸出端口連接到另一個(gè)模塊的輸入端口。網(wǎng)絡(luò)在三個(gè)重要方面不同于變量:

  • 網(wǎng)絡(luò)沒(méi)有像變量一樣的臨時(shí)存儲(chǔ),相反,網(wǎng)絡(luò)反映了網(wǎng)絡(luò)驅(qū)動(dòng)器的當(dāng)前值(電容性trireg網(wǎng)絡(luò)似乎存儲(chǔ)了一個(gè)值,但實(shí)際上代表了驅(qū)動(dòng)網(wǎng)絡(luò)的電容器的行為),
  • 網(wǎng)絡(luò)可以計(jì)算多個(gè)驅(qū)動(dòng)因素的結(jié)果值,其中變量只能有一個(gè)來(lái)源(如果對(duì)一個(gè)變量進(jìn)行了多個(gè)程序賦值,則最后一個(gè)賦值是結(jié)果值,而不是解析所有賦值的結(jié)果)。
  • 網(wǎng)絡(luò)反映驅(qū)動(dòng)器值(0、1、Z或X)和驅(qū)動(dòng)器強(qiáng)度。

驅(qū)動(dòng)器的強(qiáng)度級(jí)別以0~7的步長(zhǎng)表示。每個(gè)級(jí)別由一個(gè)關(guān)鍵字表示。大多數(shù)建模構(gòu)件的默認(rèn)強(qiáng)度級(jí)別為“強(qiáng)”,即級(jí)別6。強(qiáng)度級(jí)別對(duì)于晶體管級(jí)建模很重要,但不用于RTL建模。強(qiáng)度的表示和使用超出了本文關(guān)于RTL建模的范圍。

可綜合網(wǎng)絡(luò)類(lèi)型

通過(guò)同時(shí)指定類(lèi)型和數(shù)據(jù)類(lèi)型來(lái)聲明網(wǎng)絡(luò)。類(lèi)型可以是表3-3和3-4中列出的任何關(guān)鍵字。數(shù)據(jù)類(lèi)型必須是關(guān)鍵字logic,可以顯式指定或隱式推斷。

每個(gè)SystemVerilog網(wǎng)絡(luò)類(lèi)型都有特定的語(yǔ)義規(guī)則,這些規(guī)則會(huì)影響多個(gè)驅(qū)動(dòng)程序的解析方式。雖然所有網(wǎng)絡(luò)類(lèi)型都表示硅行為,但并非所有網(wǎng)絡(luò)類(lèi)型都可以用標(biāo)準(zhǔn)ASICFPGA技術(shù)表示。表3-3列出了ASIC和FPGA綜合編譯器支持的網(wǎng)絡(luò)類(lèi)型。

表3-3:可綜合網(wǎng)絡(luò)類(lèi)型
類(lèi)型 代表
wire 使用CMOS行為解析多個(gè)驅(qū)動(dòng)器的互連網(wǎng)絡(luò)
tri wire的同義詞在所有方面都相同,可用于強(qiáng)調(diào)預(yù)期具有三態(tài)值的網(wǎng)絡(luò)
Supply0 電源強(qiáng)度級(jí)別具有恒定邏輯0的互連網(wǎng)絡(luò)??捎糜诒硎窘拥剀墸℅ND、VSS)
Supply1 在電源強(qiáng)度級(jí)別具有恒定邏輯1的互連網(wǎng)絡(luò)??捎糜诒硎竟╇娷墸╒CC、VDD)

不可綜合的網(wǎng)絡(luò)類(lèi)型。

SystemVeriIog有幾種網(wǎng)絡(luò)類(lèi)型,綜合編譯器并不普遍支持這些類(lèi)型,如表3-4(第77頁(yè))所示。

表3-4:一般不可綜合的網(wǎng)絡(luò)類(lèi)型
類(lèi)型 代表
uwire 不允許或不解析多個(gè)驅(qū)動(dòng)程序的互連網(wǎng)絡(luò)
pull0 一種互連網(wǎng)絡(luò),具有將下拉電阻器連接到網(wǎng)絡(luò)的特性
Pull1 一種互連網(wǎng)絡(luò),具有將上拉電阻器連接到該網(wǎng)絡(luò)的特性
wand 一種互連網(wǎng)絡(luò),通過(guò)對(duì)驅(qū)動(dòng)值進(jìn)行AND運(yùn)算來(lái)解析多個(gè)驅(qū)動(dòng)程序
triand wand的同義詞,在所有方面都相同;可用于強(qiáng)調(diào)預(yù)期具有三態(tài)值的網(wǎng)絡(luò)
wor 一種互連網(wǎng)絡(luò),通過(guò)對(duì)驅(qū)動(dòng)值進(jìn)行OR來(lái)解析多個(gè)驅(qū)動(dòng)程序
trior wor的同義詞,在所有方面都相同;可用于強(qiáng)調(diào)預(yù)期具有三態(tài)值的網(wǎng)絡(luò)
trireg 具有電容性的互連網(wǎng)絡(luò);如果所有驅(qū)動(dòng)器均為高阻抗,則電容反映最后解析的驅(qū)動(dòng)值
筆記

某些RTL綜合編譯器可能支持一種或多種網(wǎng)絡(luò)類(lèi)型。最佳實(shí)踐編碼風(fēng)格是不使用這些類(lèi)型,以確保RTL模型與任何綜合編譯器兼容。如果使用其中一種類(lèi)型,設(shè)計(jì)工程師應(yīng)檢查項(xiàng)目中使用的所有工具是否支持該類(lèi)型。

CMOS工藝建模。

大多數(shù)ASIC和FPGA器件采用CMOS技術(shù)實(shí)現(xiàn)。CMOS互連的行為用線(xiàn)和三網(wǎng)類(lèi)型表示。wire類(lèi)型是最常用的網(wǎng)絡(luò)類(lèi)型,也是隱式推斷網(wǎng)絡(luò)時(shí)的默認(rèn)網(wǎng)絡(luò)類(lèi)型。

單驅(qū)動(dòng)和多驅(qū)動(dòng)邏輯。

ASIC和FPGA設(shè)計(jì)中的大多數(shù)互連網(wǎng)絡(luò)將單個(gè)驅(qū)動(dòng)器連接到一個(gè)或多個(gè)接收器。例外是共享總線(xiàn),其中多個(gè)驅(qū)動(dòng)程序連接到一個(gè)或多個(gè)接收器。例如,RAM設(shè)備具有雙向數(shù)據(jù)總線(xiàn),用于將值寫(xiě)入RAM和從RAM讀取值。ASIC和FPGA設(shè)備通常具有一定數(shù)量的雙向I/O焊盤(pán),用于讀取和驅(qū)動(dòng)值。

最佳做法準(zhǔn)則3-7

當(dāng)設(shè)計(jì)意圖是具有單個(gè)驅(qū)動(dòng)器功能時(shí),使用邏輯數(shù)據(jù)類(lèi)型將設(shè)計(jì)組件連接在一起。僅當(dāng)設(shè)計(jì)意圖是允許多個(gè)驅(qū)動(dòng)器時(shí),才使用wire or tri類(lèi)型。

將互連聲明為邏輯將推斷一個(gè)變量而不是網(wǎng)絡(luò)類(lèi)型。變量只允許單個(gè)源(驅(qū)動(dòng)程序)。

盡管大多數(shù)互連網(wǎng)絡(luò)僅具有一個(gè)驅(qū)動(dòng)器;可綜合的網(wǎng)絡(luò)類(lèi)型(如wire)允許多個(gè)驅(qū)動(dòng)程序。工程師在使用網(wǎng)絡(luò)類(lèi)型時(shí)需要小心避免編碼錯(cuò)誤。網(wǎng)絡(luò)列表中的簡(jiǎn)單錯(cuò)誤可能會(huì)導(dǎo)致同一網(wǎng)絡(luò)無(wú)意中連接到多個(gè)驅(qū)動(dòng)程序。在編譯和優(yōu)化過(guò)程中不會(huì)捕獲這種類(lèi)型的錯(cuò)誤。該錯(cuò)誤會(huì)導(dǎo)致在仿真過(guò)程中檢測(cè)到功能性錯(cuò)誤。下面幾個(gè)規(guī)則可以避免一些錯(cuò)誤:

  • 使用變量而不是網(wǎng)絡(luò)連接設(shè)計(jì)塊。SystemVerilog還允許使用變量將設(shè)計(jì)元素連接在一起。變量不允許多個(gè)驅(qū)動(dòng)源。如果同一變量意外連接到多個(gè)驅(qū)動(dòng)程序,則會(huì)發(fā)生綜合錯(cuò)誤。

  • 將輸入端口聲明為變量類(lèi)型而不是網(wǎng)絡(luò)類(lèi)型。默認(rèn)情況下,輸入和輸入輸出端口推斷為網(wǎng)絡(luò)類(lèi)型,特別是wire類(lèi)型,除非網(wǎng)絡(luò)類(lèi)型指定了不同的網(wǎng)絡(luò)類(lèi)型。如果多個(gè)驅(qū)動(dòng)程序連接到同一輸入端口(或者一個(gè)值從模塊內(nèi)被反向驅(qū)動(dòng)到輸入端口),這種網(wǎng)絡(luò)類(lèi)型的推斷可能導(dǎo)致難以檢測(cè)的建模錯(cuò)誤。這些建模錯(cuò)誤在SystemVerilog中是合法的,因?yàn)榫W(wǎng)絡(luò)類(lèi)型允許多個(gè)驅(qū)動(dòng)程序。

通過(guò)將輸入端口顯式聲明為var logic類(lèi)型,可以防止輸入端口的意外多個(gè)驅(qū)動(dòng)程序。變量不允許多個(gè)驅(qū)動(dòng)源。在編譯和詳細(xì)闡述設(shè)計(jì)模塊時(shí),意外的多個(gè)驅(qū)動(dòng)程序?qū)⒈粓?bào)告為編碼錯(cuò)誤。

  • 使用uwire防止多個(gè)驅(qū)動(dòng)程序。uwire網(wǎng)絡(luò)類(lèi)型還可用于防止輸入端口的多個(gè)無(wú)意驅(qū)動(dòng)源。uwire類(lèi)型作為1364-2005 Verilog標(biāo)準(zhǔn)的一部分添加到SystemVerilog中,特別是為了使無(wú)意中的多個(gè)驅(qū)動(dòng)程序成為編譯/布線(xiàn)錯(cuò)誤。輸入端口可以明確聲明為uwire類(lèi)型,或者可以將默認(rèn)網(wǎng)絡(luò)類(lèi)型更改為uwire。uwire類(lèi)型不允許多個(gè)驅(qū)動(dòng)程序。在編譯和詳細(xì)說(shuō)明設(shè)計(jì)模塊時(shí),意外的多個(gè)驅(qū)動(dòng)程序?qū)⒈粓?bào)告為編碼錯(cuò)誤。
筆記

在編寫(xiě)本文時(shí),大多數(shù)綜合編譯器和一些仿真器尚未添加對(duì)uwire類(lèi)型的支持,盡管它自2005年以來(lái)一直是Verilog/SystemVerilog標(biāo)準(zhǔn)的一部分。當(dāng)需要多驅(qū)動(dòng)器網(wǎng)絡(luò)時(shí),本書(shū)中的示例使用wire或tri類(lèi)型。

網(wǎng)絡(luò)定義規(guī)則

通過(guò)指定網(wǎng)絡(luò)類(lèi)型和可選數(shù)據(jù)類(lèi)型來(lái)定義網(wǎng)絡(luò)。數(shù)據(jù)類(lèi)型必須是4態(tài)logic數(shù)據(jù)類(lèi)型,或從4態(tài)logic數(shù)據(jù)類(lèi)型派生的用戶(hù)定義類(lèi)型,如果未明確指定數(shù)據(jù)類(lèi)型,則隱式推斷l(xiāng)ogic數(shù)據(jù)類(lèi)型。

所有網(wǎng)絡(luò)類(lèi)型的默認(rèn)大小都是標(biāo)量(1位)。可以使用與變量相同的語(yǔ)法將網(wǎng)絡(luò)顯式聲明為任何大小的向量。但是,只有變量向量聲明可以劃分為子字段。向量不能劃分為子字段。

一些可綜合的網(wǎng)絡(luò)聲明示例如下:

91b8cbc4-cf30-11ec-bce3-dac502259ad0.png

默認(rèn)情況下,所有網(wǎng)絡(luò)類(lèi)型都是無(wú)符號(hào)的。網(wǎng)絡(luò)可以用與變量相同的方式顯式聲明為有符號(hào)或無(wú)符號(hào)。

網(wǎng)絡(luò)位和部分選擇??墒褂门c變量向量相同的語(yǔ)法從向量中選擇任何特定位或位組。常量和變量位和部分選擇都可以在網(wǎng)絡(luò)上執(zhí)行。

隱式聲明

未聲明的信號(hào)將在多個(gè)上下文中推斷網(wǎng)絡(luò)類(lèi)型:

  • 模塊input, inout or output,未明確聲明類(lèi)型或數(shù)據(jù)類(lèi)型,或從以前的端口聲明繼承
  • 顯式聲明logic or reg數(shù)據(jù)類(lèi)型或從以前的端口聲明繼承的模塊input or inout端口
  • 與模塊實(shí)例或接口實(shí)例的端口或基本實(shí)例的終端的連接
  • 連續(xù)賦值語(yǔ)句的左側(cè)

默認(rèn)情況下,推斷的隱式網(wǎng)絡(luò)類(lèi)型為網(wǎng)絡(luò)wire類(lèi)型。隱式網(wǎng)絡(luò)的向量大小基于本地上下文。如果網(wǎng)絡(luò)是從模塊端口聲明推斷出來(lái)的,那么隱式網(wǎng)絡(luò)的向量大小將是端口的大小。如果從與模塊、接口或例化實(shí)例的連接推斷網(wǎng)絡(luò),則將推斷標(biāo)量網(wǎng)絡(luò)。如果從連續(xù)賦值的左側(cè)推斷標(biāo)量網(wǎng)絡(luò),則也會(huì)推斷標(biāo)量網(wǎng)絡(luò)。示例3-1說(shuō)明了幾個(gè)隱式網(wǎng)絡(luò)聲明。

示例3-1:創(chuàng)建隱式網(wǎng)絡(luò)的未聲明標(biāo)識(shí)符示例
91d26d0e-cf30-11ec-bce3-dac502259ad0.png

上面還涉及到dot-name 和 dot-star的使用,這將在后面介紹。

更改默認(rèn)的隱式網(wǎng)絡(luò)類(lèi)型??梢允褂镁幾g器指令:

'default_nettype

更改隱式網(wǎng)絡(luò)類(lèi)型。每當(dāng)推斷出隱式網(wǎng)絡(luò)時(shí),在指令之后編譯的所有SystemVerilog代碼都將使用指定的網(wǎng)絡(luò)類(lèi)型。'default_nettype必須在模塊或接口邊界之外指定。

示例3-2將隱式網(wǎng)絡(luò)類(lèi)型定義為uwire(單驅(qū)動(dòng)源)類(lèi)型

示例3-2:更改隱式網(wǎng)絡(luò)的網(wǎng)絡(luò)類(lèi)型
`default_nettypetri1//changedefaultforimplicitnets
//`default_nettypeuwire//changedefaultforimplicitnets
`begin_keywords"1800-2012"//useSystemVerilog-2012keywords
modulemixed_rtl_and_gate_adder
(inputa,//implicituwirenet,logicdatatype
inputlogicb,//implicituwirenet,logicdatatype
inputregci,//implicituwirenet,logicdatatype
outputsum,//implicituwirenet,logicdatatype
outputlogicco//implicitvariable,logicdatatype
);
timeunit1ns/1ns;

xorg1(n1,a,b);//undeclaredn1isimplicituwirenet
xorg2(sum,n1,ci);
andg3(n2,a,b);//undeclaredn2isimplicituwirenet

assignn3=n1&ci;//undeclaredn3isimplicituwirenet

always_combbegin
co=n2|n3;
end
endmodule:mixed_rtl_and_gate_adder
`end_keywords
`default_nettypewire//resetdefaultforimplicitnets

關(guān)閉隱式網(wǎng)絡(luò)聲明。

隱式網(wǎng)絡(luò)有優(yōu)點(diǎn)也有缺點(diǎn)。大型、復(fù)雜的網(wǎng)絡(luò)表可能需要幾十個(gè)1位網(wǎng)絡(luò)來(lái)連接設(shè)計(jì)塊。顯式聲明這些多個(gè)網(wǎng)絡(luò)既繁瑣又耗時(shí),顯式聲明大量互連網(wǎng)絡(luò)也可能需要大量的鍵入,并存在需要鍵入的錯(cuò)誤風(fēng)險(xiǎn)。隱式網(wǎng)絡(luò)可以減少編寫(xiě)網(wǎng)表模型所需的時(shí)間,并減少鍵入錯(cuò)誤。

但是,隱式網(wǎng)絡(luò)的一個(gè)缺點(diǎn)是,與模塊、接口或例化實(shí)例的連接中拼寫(xiě)錯(cuò)誤的名稱(chēng)不會(huì)被檢測(cè)為連接錯(cuò)誤。不正確的名稱(chēng)將推斷出一個(gè)隱式網(wǎng)絡(luò),其結(jié)果是必須檢測(cè)、調(diào)試和糾正的功能性錯(cuò)誤。另一個(gè)缺點(diǎn)是,從實(shí)例連接推斷出的網(wǎng)絡(luò)將是一個(gè)1位網(wǎng)絡(luò),而不管該網(wǎng)絡(luò)連接到的端口大小如何。連接大小不匹配將導(dǎo)致警告消息,但仿真或綜合仍將繼續(xù)。端口大小不匹配還可能導(dǎo)致必須檢測(cè)和糾正的功能缺陷。

隱式net與顯式聲明net的優(yōu)缺點(diǎn)是Verilog和SystemVerilog工程師經(jīng)常爭(zhēng)論的話(huà)題。這實(shí)際上是用戶(hù)偏好的問(wèn)題。這兩種編碼風(fēng)格都很好地工作,并且兩種風(fēng)格都有優(yōu)點(diǎn)和缺點(diǎn)。

對(duì)于喜歡顯式聲明所有網(wǎng)絡(luò)的工程師或公司,SystemVerilog提供了一種禁用隱式網(wǎng)絡(luò)的方法。這就要求顯式聲明所有網(wǎng)絡(luò),禁用隱式網(wǎng)絡(luò)是通過(guò)設(shè)置編譯器指令來(lái)完成的:

91ef9834-cf30-11ec-bce3-dac502259ad0.png

此編譯器指令必須在模塊外部設(shè)置,并對(duì)編譯到同一編譯單元的所有后續(xù)模塊保持有效,或者直到遇到另一個(gè)'default_nettype指令。

使用隱式網(wǎng)絡(luò)或禁用隱式網(wǎng)絡(luò)通常是個(gè)人偏好,有時(shí)也是公司內(nèi)部的編碼準(zhǔn)則。本書(shū)中的示例假設(shè)啟用了隱式網(wǎng)絡(luò),默認(rèn)隱式網(wǎng)絡(luò)類(lèi)型為wire。

筆記

“default_nettype”指令可以影響多個(gè)文件。編譯器指令在編譯單元中是準(zhǔn)全局的。當(dāng)在同一編譯單元中編譯多個(gè)文件時(shí),編譯器指令對(duì)遇到該指令之前編譯的任何文件沒(méi)有影響,但會(huì)影響遇到該指令之后編譯的所有文件。

最佳做法準(zhǔn)則3-8

如果更改了默認(rèn)網(wǎng)絡(luò)類(lèi)型,請(qǐng)始終將’default_nettype”用作一對(duì)指令,第一個(gè)指令將默認(rèn)設(shè)置為所需的網(wǎng)絡(luò)類(lèi)型,第二個(gè)指令將默認(rèn)設(shè)置回wire。

在任何更改默認(rèn)值的模塊之后,將默認(rèn)網(wǎng)絡(luò)類(lèi)型設(shè)置回wire,將防止意外的副作用影響到其他預(yù)期默認(rèn)wire的文件。

網(wǎng)絡(luò)分配和連接規(guī)則

給網(wǎng)絡(luò)賦值。網(wǎng)絡(luò)可以從兩種類(lèi)型的源接收值:作為output or inout port端口的連接,以及作為連續(xù)賦值(assign語(yǔ)句)的左側(cè)。不能在程序賦值的左側(cè)使用網(wǎng)絡(luò)。

在整個(gè)仿真過(guò)程中對(duì)連續(xù)賦值進(jìn)行求值,賦值右側(cè)的任何更改都會(huì)導(dǎo)致對(duì)右側(cè)表達(dá)式進(jìn)行求值,并更新左側(cè)表達(dá)式。左側(cè)可以是變量或網(wǎng)絡(luò)。網(wǎng)絡(luò)的連續(xù)賦值可以是顯式的,也可以是隱式的。顯式連續(xù)賦值以關(guān)鍵字assign開(kāi)始。

9208610c-cf30-11ec-bce3-dac502259ad0.png

隱式連續(xù)賦值結(jié)合了網(wǎng)絡(luò)聲明和對(duì)該網(wǎng)絡(luò)的賦值。組合中未使用assign關(guān)鍵字。

9225957e-cf30-11ec-bce3-dac502259ad0.png

注意不要混淆內(nèi)嵌變量初始化和隱式連續(xù)賦值。

92441332-cf30-11ec-bce3-dac502259ad0.png

這兩個(gè)構(gòu)造的語(yǔ)法可能看起來(lái)很相似,但行為卻截然不同。在線(xiàn)變量初始化是一次評(píng)估和賦值,在前面的示例中,如果a或b的值在以后的仿真中發(fā)生變化,則不會(huì)更新變量。隱式連續(xù)賦值,顧名思義,是在整個(gè)仿真過(guò)程中不斷求值的表達(dá)式。在前面的示例中,每次仿真期間a或b的值發(fā)生變化時(shí),n1都會(huì)更新。

連接大小不匹配。網(wǎng)絡(luò)用于將設(shè)計(jì)塊連接在一起,例如將一個(gè)模塊的輸出端口連接到一個(gè)或多個(gè)其他模塊的輸入端口。通常,端口和互連網(wǎng)絡(luò)的向量寬度相同,但SystemVerilog允許向量大小不同。例如16位標(biāo)量網(wǎng)絡(luò)可以將32位寬的輸出端口連接到8位寬的輸入端口。這種尺寸不匹配可能是設(shè)計(jì)錯(cuò)誤,但在SystemVerilog中,只會(huì)生成警告。

SystemVerilog語(yǔ)言具有解決端口/連接不匹配的規(guī)則:

  • port的比特?cái)?shù)少于連接到的網(wǎng)絡(luò)或變量-值的最左邊的比特被截?cái)?,?dǎo)致值的最重要比特丟失。
  • 一個(gè)端口的比特?cái)?shù)大于連接到它的網(wǎng)絡(luò)或變量的比特?cái)?shù)-網(wǎng)絡(luò)或變量的值保持?jǐn)U展?fàn)顟B(tài),如果端口、網(wǎng)絡(luò)/變量中有一個(gè)無(wú)符號(hào),則該值為零擴(kuò)展。如果端口和網(wǎng)絡(luò)/變量都有符號(hào),則該值為有符號(hào)。

仿真器和綜合編譯器將生成連接大小不匹配的警告消息。這些警告不容忽視!連接不匹配通常是需要糾正的設(shè)計(jì)錯(cuò)誤。

審核編輯 :李倩


聲明:本文內(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)投訴
  • 驅(qū)動(dòng)器
    +關(guān)注

    關(guān)注

    54

    文章

    8935

    瀏覽量

    152235
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1665

    瀏覽量

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

    關(guān)注

    0

    文章

    615

    瀏覽量

    29281

原文標(biāo)題:SystemVerilog(七)-網(wǎng)絡(luò)

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

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    企業(yè)如何用SD-WAN節(jié)省50%網(wǎng)絡(luò)成本?揭秘數(shù)字化轉(zhuǎn)型的網(wǎng)絡(luò)新基建

    #企業(yè)如何用SD-WAN節(jié)省50%網(wǎng)絡(luò)成本?揭秘數(shù)字化轉(zhuǎn)型的網(wǎng)絡(luò)新基建>一條軟件定義的網(wǎng)絡(luò)高速公路,正在為成千上萬(wàn)企業(yè)開(kāi)辟數(shù)字化轉(zhuǎn)型的快車(chē)道
    的頭像 發(fā)表于 08-13 10:32 ?1333次閱讀
    企業(yè)如何用SD-WAN節(jié)省50%<b class='flag-5'>網(wǎng)絡(luò)</b>成本?揭秘<b class='flag-5'>數(shù)字</b>化轉(zhuǎn)型的<b class='flag-5'>網(wǎng)絡(luò)</b>新基建

    繞組開(kāi)放型永磁同步電機(jī)的建模及應(yīng)用

    :繞組開(kāi)放型永磁同步電機(jī)的建模及應(yīng)用.pdf【免責(zé)聲明】本文系網(wǎng)絡(luò)轉(zhuǎn)載,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問(wèn)題,請(qǐng)第一時(shí)間告知,刪除內(nèi)容!
    發(fā)表于 06-12 13:52

    VirtualLab Fusion應(yīng)用:Herriott池的建模

    。Herriott單元是這種系統(tǒng)的一個(gè)例子,其特點(diǎn)是使用兩個(gè)球面反射鏡,在其中一個(gè)球面反射鏡上鉆一個(gè)離軸孔,以允許光束進(jìn)出。鏡子的曲率改變了光束的方向并控制了它的發(fā)散。在此用例中,我們用光學(xué)建模和設(shè)計(jì)軟件
    發(fā)表于 06-11 08:52

    利用MATLAB對(duì)交流電機(jī)調(diào)速系統(tǒng)進(jìn)行建模和仿真

    是借助計(jì)算機(jī)及相關(guān)技術(shù),對(duì)真實(shí)系統(tǒng)的運(yùn)行過(guò)程和狀態(tài)進(jìn)行數(shù)字化模擬的技術(shù)。Simulink作為MATLAB的一個(gè)組件,能夠?qū)崿F(xiàn)對(duì)動(dòng)態(tài)系統(tǒng)的建模、仿真和綜合分析。本文在Simulink環(huán)境中建立面向電氣
    發(fā)表于 06-06 14:31

    SOLIDWORKS建模秘籍——必學(xué)的五個(gè)草圖與建模技巧

    SOLIDWORKS作為一款功能強(qiáng)大的三維CAD軟件,廣泛應(yīng)用于各種設(shè)計(jì)和產(chǎn)品開(kāi)發(fā)領(lǐng)域。掌握SOLIDWORKS的草圖與建模技巧,能夠顯著提升設(shè)計(jì)效率,減少錯(cuò)誤,并快速將創(chuàng)意轉(zhuǎn)化為現(xiàn)實(shí)。以下是五個(gè)必學(xué)的SOLIDWORKS草圖與建模技巧,幫助你成為設(shè)計(jì)高手。
    的頭像 發(fā)表于 05-26 13:17 ?655次閱讀
    SOLIDWORKS<b class='flag-5'>建模</b>秘籍——必學(xué)的五個(gè)草圖與<b class='flag-5'>建模</b>技巧

    索尼FCB-ER8530:三維建模與視覺(jué)感知的跨界融合

    數(shù)字化浪潮中,三維建模技術(shù)正重塑工業(yè)設(shè)計(jì)、文化遺產(chǎn)保護(hù)與智慧城市管理等領(lǐng)域,而索尼FCB-ER8530一體化攝像機(jī)模組憑借其4K超高清成像與智能感知能力,成為這一進(jìn)程中的關(guān)鍵硬件支撐。 三維
    的頭像 發(fā)表于 05-19 17:30 ?372次閱讀

    基于VT系統(tǒng)的MCU硬件在環(huán)建模與仿真應(yīng)用分析

    在新能源汽車(chē)行業(yè)快速發(fā)展的背景下,電機(jī)控制器(MCU)作為核心部件,其開(kāi)發(fā)和測(cè)試的重要性日益增加。為了在開(kāi)發(fā)早期階段快速驗(yàn)證應(yīng)用層算法功能及基礎(chǔ)軟件質(zhì)量,硬件在環(huán)(HIL)測(cè)試技術(shù)應(yīng)運(yùn)而生。本文分析
    的頭像 發(fā)表于 04-16 10:07 ?903次閱讀
    基于VT系統(tǒng)的MCU<b class='flag-5'>硬件</b>在環(huán)<b class='flag-5'>建模</b>與仿真應(yīng)用分析

    VirtualLab Fusion應(yīng)用:漸變折射率(GRIN)鏡頭的建模

    摘要 折射率平滑變化的漸變折射率(GRIN)介質(zhì)可用于例如:使鏡頭表面平坦或減少像差。 VirtualLab Fusion為光通過(guò)GRIN介質(zhì)的傳播提供了一種物理光學(xué)建模技術(shù)。在相同的速度下
    發(fā)表于 03-18 08:57

    VirtualLab:系統(tǒng)建模分析器

    ,系統(tǒng)建模分析器。本文檔介紹該工具的使用方法。 系統(tǒng)建模分析器 如何運(yùn)行建模分析器 系統(tǒng)建模分析器 例1:光束清理濾波器 示例 – 光束清理濾波器 光束清理濾波器 – 光源
    發(fā)表于 01-14 09:45

    ANN神經(jīng)網(wǎng)絡(luò)——器件建模

    隨著半導(dǎo)體行業(yè)的新材料、新工藝、新器件的不斷發(fā)展,人工神經(jīng)網(wǎng)絡(luò)作為一種替代方法已經(jīng)被引入器件建模領(lǐng)域。本文介紹了ANN神經(jīng)網(wǎng)絡(luò)建模的起源、優(yōu)勢(shì)、實(shí)現(xiàn)方式和應(yīng)用場(chǎng)景。 ? 隨著半導(dǎo)體行業(yè)
    的頭像 發(fā)表于 01-06 13:41 ?1375次閱讀
    ANN神經(jīng)<b class='flag-5'>網(wǎng)絡(luò)</b>——器件<b class='flag-5'>建模</b>

    VirtualLab:系統(tǒng)建模分析器

    ,系統(tǒng)建模分析器。本文檔介紹該工具的使用方法。 系統(tǒng)建模分析器 如何運(yùn)行建模分析器 系統(tǒng)建模分析器 例1:光束清理濾波器 示例 – 光束清理濾波器 光束清理濾波器 – 光源
    發(fā)表于 12-19 12:36

    VirtualLab Fusion應(yīng)用:Herriott池的建模與仿真

    。Herriott單元是這種系統(tǒng)的一個(gè)例子,其特點(diǎn)是使用兩個(gè)球面反射鏡,在其中一個(gè)球面反射鏡上鉆一個(gè)離軸孔,以允許光束進(jìn)出。鏡子的曲率改變了光束的方向并控制了它的發(fā)散。在此用例中,我們用光學(xué)建模和設(shè)計(jì)軟件
    發(fā)表于 12-09 13:14

    如何通過(guò)建模與仿真提升電力電子組件的設(shè)計(jì)與性能?

    建模過(guò)程被稱(chēng)為建模,而仿真被定義為使用模型研究實(shí)際或理論系統(tǒng)的行為和性能的過(guò)程。在仿真中,模型可以用于研究系統(tǒng)的現(xiàn)有或擬議特性。對(duì)于大型互聯(lián)系統(tǒng)的仿真,建模方法被證明是非常有效的。這篇文章介紹了解
    的頭像 發(fā)表于 11-25 11:35 ?1074次閱讀
    如何通過(guò)<b class='flag-5'>建模</b>與仿真提升電力電子組件的設(shè)計(jì)與性能?

    通信與網(wǎng)絡(luò):開(kāi)啟數(shù)字時(shí)代的新征程

    嚴(yán)峻,成為關(guān)注焦點(diǎn)。展望未來(lái),通信與網(wǎng)絡(luò)將繼續(xù)朝著高速、智能、安全的方向發(fā)展。5G 網(wǎng)絡(luò)的普及將進(jìn)一步推動(dòng)各行業(yè)的數(shù)字化轉(zhuǎn)型,6G 等新一代通信技術(shù)的研發(fā)也在緊鑼密鼓地進(jìn)行,有望帶來(lái)更高的數(shù)據(jù)傳輸速度和更低的延遲。
    的頭像 發(fā)表于 11-05 16:48 ?756次閱讀
    通信與<b class='flag-5'>網(wǎng)絡(luò)</b>:開(kāi)啟<b class='flag-5'>數(shù)字</b>時(shí)代的新征程

    常見(jiàn)的網(wǎng)絡(luò)硬件設(shè)備有哪些?國(guó)產(chǎn)網(wǎng)絡(luò)安全主板提供穩(wěn)定的硬件支持

    隨著網(wǎng)絡(luò)技術(shù)的不斷進(jìn)步,網(wǎng)絡(luò)安全問(wèn)題日益嚴(yán)重,企業(yè)和個(gè)人對(duì)網(wǎng)絡(luò)安全的重視程度不斷加深,對(duì)于網(wǎng)絡(luò)安全硬件設(shè)備的要求也越來(lái)越高,
    的頭像 發(fā)表于 10-21 10:23 ?1288次閱讀