RT,否则警告Warning: Tri-state node(s) do not directly drive top-level pin(s),会利用或门代替中间的扇出fan-out.

原因:在进行FPGA设计时,对于FPGA内部的信号不能出现被赋值为高阻的状态,只有顶层的信号,即输出的信号才可以赋值为高阻态。

找出这个信号,然后把赋值为x'bz改为x'b0或x'b1(具体是改为x'b0还是x'b1要根据实际情况确定,x也行)。

CAUSE: The design contains tri-state nodes that drive non-tri-state logic, but the chip does not support internal tri-states. As a result, the Quartus II software converts all the tri-state nodes feeding internal logic to an equivalent logic.

ACTION: Avoid this warning by either removing the non-tri-state fan-outs of the affected tri-state nodes or replacing the tri-state nodes with non-tri-state logic.

实例:

module tri_state (input oe1, data1, in, output out, output bidir);

wire tribuf;

assign tribuf = oe1 ? data1 : 1'bz;

and(out, in, tribuf);

assign bidir = tribuf;

endmodule

Warning: Tri-state node(s) do not directly drive top-level pin(s)

       Warning: Converted the fan-out from the tri-state buffer "tribuf" to the node "comb" into an OR gate

RTL视图:

Technology Map Viewer:

CAUSE:The specified tri-statebuffer feeds internal logic in addition to  feeding tri-statelogic, but the chip does not support internal tri-states. As a result, the  Quartus II software converts the non-tri-statefan-out(s) of the tri-statebuffer to an  ORgate.

Consider the following design:
module test1 (input oe1, data1, in,  output out, inout bidir); 
wire tribuf, tmp; 
assign tribuf = oe1 ? data1  : 1'bz; 
and(tmp, in, tribuf); 
assign bidir = tribuf; 
assign out =  tmp; 
endmodule 
Here, the tri-statebuffer  tribufhas fan-outs to both the tri-stateand non-tri-statenodes. As a  result, the fan-out to the non-tri-statenode is converted to !oe1 +  data1.
Note that an inversion also counts as non-tri-statelogic. So, the  node tribufin the design test2is also converted to  an ORgate.
module test2 (input oe1, data1, output out,  inout bidir); 
wire tribuf; 
assign tribuf = oe1 ? data1 : 1'bz; 
assign bidir = tribuf; 
assign out = !tribuf; 
endmodule 
Additionally, a tri-statebuffer feeding the output enable signal of  another tri-statebuffer is also converted to logic.
Consider the following Verilog  design:
module test3 (input oe1, data1, data2, inout bidir); 
wire  tribuf1, tribuf2; 
assign tribuf1 = oe1 ? data1 : 1'bz; 
assign tribuf2 =  tribuf1 ? data2 : 1'bz; 
assign bidir = tribuf2; 
endmodule 
Here, the tri-statebuffer tribuf1is converted to an  ORgate.

ACTION:Avoid this warning by either removing the non-tri-statefan-out of the  tri-statebuffer or  replacing the tri-statebuffer with non-tri-statelogic.

FPGA内部信号避免高阻态的更多相关文章

  1. FPGA中的INOUT接口和高阻态

    除了输入输出端口,FPGA中还有另一种端口叫做inout端口.如果需要进行全双工通信,是需要两条信道的,也就是说需要使用两个FPGA管脚和外部器件连接.但是,有时候半双工通信就能满足我们的要求,理论上 ...

  2. gpio高阻态

    配置gpio为高阻态:将gpio设为GPIO_INPUT,GPIO_NO_PULL即可

  3. 关于 FPGA 内部信号扇入扇出

    扇入.扇出系数 扇入系数是指门电路允许的输入端数目.一般门电路的扇入系数为1—5,最多不超过8.扇出系数是指一个门的输出端所驱动同类型门的个数,或称负载能力.一般门电路的扇出系数为8,驱动器的扇出系数 ...

  4. FPGA引脚锁定 注意err和高阻状态

    1.fpga没有用的的管脚一定要设置成高阻状态设置路径如下: Assignmen->Device->Device&Pin Option->Unused pins->As ...

  5. FPGA内部动态可重置PLL讲解(一)

    SDRAM驱动需要两个时钟,一个是控制时钟,一个是驱动时钟,这两个时钟有一个相位差,如何产生高精度的时钟是SDRAM能够正常工作的关键,采用FPGA内部动态可重置PLL生成SDRAM所需要的时钟频率. ...

  6. FPGA 内部详细架构你明白了吗?

    FPGA 芯片整体架构如下所示,大体按照时钟域划分的,即根据不同的工艺.器件速度和对应的时钟进行划分: FPGA 内部详细架构又细分为如下六大模块: 1.可编程输入输出单元(IOB)(Input Ou ...

  7. FPGA内部IP核DDS

    项目当中需要正弦信号与余弦信号,首先想到了DDS芯片,例如AD9833.AD9834.由于还需要用FPGA   做一些数据处理,后来干脆直接用FPGA 内部的DDSIP核,同时根据IP核内部的相位累加 ...

  8. FPGA内部硬件结构简介

    我们知道FPGA内部有很多可供用户任意配置的资源,其中包括:可编程逻辑.可编程I/O.互连线.IP核等资源,很多学过数字电路的人都知道与或非门可以构成几乎所有的数字电路,但是FPGA内部最基本的主要单 ...

  9. 【转】FPGA内部小数计算

    FPGA内部计算小数  [转载] 谓定点小数,就是小数点的位置是固定的.我们是要用整数来表示定点小数,由于小数点的位置是固定的,所以就没有必要储存它(如果储存了小数点的位置,那就是浮点数了).既然没有 ...

随机推荐

  1. WWF3控制流程类型活动<第二篇>

    一.顺序工作流 顺序活动是WWF工作流中最基本.最简单的容器类型的活动.顺序活动可以作为很多其他活动的分支. 代码: private void CodeExecute1(object sender, ...

  2. CSS渲染速度改善的十个方法与建议

    由于不同浏览器对HTML标签的解释有差异,所以最终的网页效果在不同的浏览器中可能是不一样的,为了消除这方面的风险 一.*{} #zishu *{} 尽量避开 由于不同浏览器对HTML标签的解释有差异, ...

  3. C++ Builder技巧集锦

    /* 调用DOS程序时不显示窗口 使 用 ShellExecute调 用 DOS程 序 时 可 以 不 显 示 窗 口 , 如 :*/ ShellExecute(, "open", ...

  4. 网络基础知识、ASP.NET 核心知识(1)*

    为什么要写网络? 我原本的计划是这样的,连续两天梳理ASP.NET开发的核心知识.说到这呢,有人问了.“不是说好了做ASP.NET笔记吗?为啥要写网络基础知识?是不是傻?” 原因是这样的.作为网站开发 ...

  5. css的#和.的区别

    css的#和.的区别, css的#和.的区别 2009-03-04 14:43fyws  分类:Html/Css | 浏览 1911 次 css的#和.的区别如:#home #h3 { padding ...

  6. Jquery调用Webservice传递Json数组

    Jquery由于提供的$.ajax强大方法,使得其调用webservice实现异步变得简单起来,可以在页面上传递Json字符串到Webservice中,Webservice方法进行业务处理后,返回Js ...

  7. asp 301跳转代码

    <%    Response.Status="301 Moved Permanently"     Response.AddHeader "Location&quo ...

  8. Entity Framework 5问题集锦

    ORM框架万万千,一直都使用NHibernate,没用过其他的.最近闲来学习下微软自家的Entity Framework,记录一些我学习过程中遇到的头疼问题.(不断更新中...) 教程:http:// ...

  9. App Store最新审核指南(2015年3月更新版)

    苹果近日更新了App Store审核指南的相关章节,对此前版本进行了修改和完善.除了增加应用截图.预览等限制外,使用Apple Pay进行定期付款的应用程序必须展示每个阶段所需款额,费用归属以及如何取 ...

  10. 在Activity中设置new出来的TextView属性

    //创建一个TextView---->textView TextView textView = new TextView(this);   // 第一个参数为宽的设置,第二个参数为高的设置 te ...