verilog如何將模組reg變數在例化時賦值到頂

2021-03-04 00:00:15 字數 1128 閱讀 2447

1樓:褐雨黑桐

在頂層呼叫模組中的reg變數x,需要在頂層定義一個變數y是wire型來傳遞x變數的值,再把y給其他reg,或者直接用y

2樓:匿名使用者

把那個reg變數作為子模組輸出到頂層模組去就可以了

verilog中wire一般什麼時候應用?

3樓:光環國際

有幾種情況變數需要定義成wire:

第一:assign 語句

例如:reg a,b;

wire and_result;

...assign and_result =a&&b;

你可以試試把wire定義成reg。

綜合器會報錯。

第二:元件例化時候的輸出必須用wire

例如:wire dout;

ram u_ram

(....out(dout)

...);

wire按照國外教材上面的定義:

wire為無邏輯連線。只做連線,wire本身是不帶邏輯性的,所以輸入什麼輸出就是什麼。所以你嘗試著用always語句對wire變數賦值。綜合器就會報錯。

那麼你可能會問。assign c

=a&&b不是就是對wire的賦值嗎?其實並非如此。綜合器綜合時將a&&b綜合成ab經過一個與門。而c只是連線到與門輸出的線。正真綜合出與門的是&&。而不是c。

4樓:

wire就是導線啊. verilog中有顯性定義和隱性定義的區別. 好比protel裡畫電路, 有些導線上你標了d0, d1, ...

有些導線你沒標, 自動賦了n03781096, 不宣告不等於它不需要或不存在, 事實上大量存在. 在verilog裡面, 你可以用wire 宣告特定的導線名稱, 多用於testbench互聯(即無寄存的直連). 我以前用它(alias)做倒序轉化後賦值給一組reg, 可以精簡**.

5樓:手機使用者

要在always模組裡賦值,必須是暫存器變數。要用assign賦值,必須是wire型。output自動就是wire型。不知道說清楚了麼

6樓:手機使用者

輸出變數如果沒有特別宣告,預設是wire型;

如何將PDF轉為呢,如何將PDF轉為TXT文件呢

樓主你好,有很多方法的,下面給您介紹幾款 1.用solid converter pdf professional 可以在pdf與word互相轉換,也就可以編輯了 2.用adreamsoft pdf toword以轉換成word,就可以編輯了 3.漢王pdf converter,免費軟體,可以讓pdf...

如何將pdf檔案合併,如何將PDF檔案合併

把多個pdf檔案合併到一起要先確定好檔案的合併順序。然後開啟pdf合併軟體,把要合併的pdf文件都新增到合併列表中。最後按順序調整好pdf檔案位置。設定好就可以點合併按鈕進行合併了。pdf檔案怎麼合併?pdf怎麼合併?怎樣將幾個pdf檔案合併?在日常工作中,我們可能需要會將多個pdf文件合併在一起,...

如何將mlg換算成mg如何將mlg換算成mgkg

這兩個單位不能直接換算,對於藥劑來說需要知道濃度,才可以換算。假設是 濃度是0.1mg ml。單位換算過程如下 1ml g 0.1mg g 1000x0.1mg 1000g 100mg kg。如果是普通的物體,需要知道密度,毫升與毫克才可以換算。擴充套件資料 國際標準 按照國際標準,物理量q的量綱記...