第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么在編譯的時候,第二種會報warning?

為什么在編譯的時候,第二種會報warning?

用verilog寫一個module:module(A,B,C)input A;input B;input C;wire A; wire B;reg C;endmodule 和module(input A,input B, output C)wire A; wire B;reg C;endmodule 應該是一樣的吧?但是為什么在編譯的時候,第二種會報warning:Redeclaration of ansi port A, B, C is not allowed 而第一種卻不會報?我用的是xilinx 12.3
查看完整描述

2 回答

?
肥皂起泡泡

TA貢獻1829條經(jīng)驗 獲得超6個贊

每個人有自己的編程習慣啊 呵呵我就喜歡把input output的聲明寫在端口里和樓主一樣 沒什么問題;也就是說樓主的兩種寫法都可以,自己習慣,看著順眼就好。但是樓主的語法有問題,當然就報錯了;
報錯告訴你重復定義了。神馬原因涅?因為module(input A,input B, output C)中的input A,input B, output C就已經(jīng)是對信號定義了,你下面再寫wire A; wire B;reg C當然重新定義了。
你可以這樣寫
module(input A,input B, output reg C) //(輸入wire型 不用寫)
endmodule 
是不是覺得這樣寫比第一種更加簡潔明了吶~~~

查看完整回答
反對 回復 2023-02-20
?
慕的地6264312

TA貢獻1817條經(jīng)驗 獲得超6個贊

一般定義端口不在module后面()中定義,而是單獨定義,像第一種表達方式一樣。
寫法比較標準。
還有第一種寫法有錯誤,C應該是output C;
input 不能定義成reg類型

查看完整回答
反對 回復 2023-02-20
  • 2 回答
  • 0 關(guān)注
  • 135 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號