Re: [問題] Verilog inout 高阻抗 下線合成問題
其實你這個問題非常好 這是最近很久沒看到的專業問題了
(當然還加上野狼大的回答)
我就補充一下吧
建議是不做Tri-state類的東西
有如下的理由(照順序來)
1. Synthesis
2. STA
3. DFT
4. Long wire
1. 主要是你在做的時後要設定一堆東西
2. Timing 你的所有線都要特別寫隔開
3. 要一組一組分開來做
4. 這接近無解 (如果你是直接一丟就走人那種)
能做的理由 一般都是為了省面積才做
省多少嘛.... 這有辦法算的 但根據經驗上來說要在某區間才能做
很久以前我在做某案子時是要10~30之間才有利 不然也沒搞頭
如果是IO就跟野狼大講的一樣 用叫的就好了
FPGA裡是可以這樣搞
但真實跑出來時它是用一堆MUX跟CB類的東西去做
也有類似STA的問題
另一種做法就是直接設一個類似clock gating/power gating的東西去關了
※ 引述《q684351852 (都是好吃的)》之銘言:
: 標題: [問題] Verilog inout 高阻抗 下線合成問題
: 時間: Fri Dec 21 15:19:20 2018
:
: 大家好,小弟觀念不是很好,虛心求教:
:
: 請問verilog中宣告inout,當in的時候如果等於1'bz(高阻抗)請問這樣可以要下線合成嗎
: ?(fpga是可以,但下線做成ic我看cic的書說高阻抗Z的訊號會變成don’t care)還是說
: 需要怎麼修改呢?謝謝!
:
: 範例的程式碼如下:
: module test(
: inout wire IO
: inupt ctrl
: );
:
: reg a;
:
: assign IO= ctrl?a:1'bz;
:
: endmodule
:
: 就是說我要讀的時候把inout設成高阻抗當input,我要output的時候接到我要output的地
: 方,請問這樣可以下線嗎?
: 還是說inout要當input的時候,程式應該怎麼寫?
:
: --
: ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.200.201.170
: ※ 文章網址: https://www.ptt.cc/bbs/Electronics/M.1545376762.A.C91.html
: ※ 編輯: q684351852 (1.200.201.170), 12/21/2018 17:52:31
: → wildwolf: tri-state buffer 在自動佈局繞線的時候很難處理, 12/21 19:49
: → wildwolf: 而且你就用兩個port一個輸入,一個輸出就好了,幹嘛合併 12/21 19:50
: → wildwolf: 如果這是I/O pad,那就選用有 Bidirectional I/O pad 12/21 19:51
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 69.124.126.13
※ 文章網址: https://www.ptt.cc/bbs/Electronics/M.1545401534.A.6F5.html
※ 編輯: mmonkeyboyy (69.124.126.13), 12/21/2018 22:13:02
推
12/22 11:19,
7年前
, 1F
12/22 11:19, 1F
→
12/22 11:20,
7年前
, 2F
12/22 11:20, 2F
推
12/22 11:23,
7年前
, 3F
12/22 11:23, 3F
→
12/22 11:23,
7年前
, 4F
12/22 11:23, 4F
→
12/22 12:27,
7年前
, 5F
12/22 12:27, 5F
→
12/22 12:27,
7年前
, 6F
12/22 12:27, 6F
→
12/22 12:28,
7年前
, 7F
12/22 12:28, 7F
→
12/22 12:29,
7年前
, 8F
12/22 12:29, 8F
推
12/22 12:40,
7年前
, 9F
12/22 12:40, 9F
推
12/22 13:43,
7年前
, 10F
12/22 13:43, 10F
推
12/23 02:21,
7年前
, 11F
12/23 02:21, 11F
→
12/23 06:12,
7年前
, 12F
12/23 06:12, 12F
→
12/23 06:13,
7年前
, 13F
12/23 06:13, 13F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):