作者mmonkeyboyy (great)
看板Electronics
标题Re: [问题] Verilog inout 高阻抗 下线合成问题
时间Fri Dec 21 22:12:12 2018
其实你这个问题非常好 这是最近很久没看到的专业问题了
(当然还加上野狼大的回答)
我就补充一下吧
建议是不做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://webptt.com/cn.aspx?n=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://webptt.com/cn.aspx?n=bbs/Electronics/M.1545401534.A.6F5.html
※ 编辑: mmonkeyboyy (69.124.126.13), 12/21/2018 22:13:02
1F:推 r901042004: 问一下monkey大,如果是要做SPI类那种bidirectional 12/22 11:19
2F:→ r901042004: 的I/O Pad,在做合成的时候需要多做什麽设定吗? 12/22 11:20
3F:推 r901042004: 还是直接在RTL内直接接好I/O Pad 12/22 11:23
4F:→ r901042004: 再直接丢下去合成就好 12/22 11:23
5F:→ mmonkeyboyy: 如果你的tool有支援 就没什麽问题 有的会dont care 12/22 12:27
6F:→ mmonkeyboyy: 很怪 (但那是很多年前了) 如果是 FPGA上 可以加 12/22 12:27
7F:→ mmonkeyboyy: dont touch 一般这个有问题的会是DFT 12/22 12:28
8F:→ mmonkeyboyy: 如野狼大说的 IO就没什麽了 选一下就好 12/22 12:29
9F:推 r901042004: 合成用的是DC,那我了解了,谢谢monkey大 12/22 12:40
10F:推 q684351852: 谢谢解说! 12/22 13:43
11F:推 hsucheng: 我记得我在写AXI BUS好像有用到类似的东西... 12/23 02:21
12F:→ mmonkeyboyy: 楼上 所以那个做好就是放一边dont touch 12/23 06:12
13F:→ mmonkeyboyy: bus类一定会有的啊 12/23 06:13