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. Objective-C的基础语法总结

    1.NSLog(@“hello world!”);//打印语句的函数,需要打印的字符串放在@之后. NSLog(@“are %d and %d different?%@”,4,4,@”YES”); 2 ...

  2. Oracle笔记 十二、PL/SQL 面向对象oop编程

    ------------------------抽象数据类型----------- --创建地址类型,一定要加as object,还可以在类型中加过程或方法 create or replace typ ...

  3. WP8__从windowsphone app store 中根据app id获取应用的相关信息(下载网址及图片id等)

    windows phone 官网应用商店地址 http://www.windowsphone.com/zh-cn/store/featured-apps------------------------ ...

  4. 为何要使用Linux

    摈弃 Windows 低效率的工作方式,发掘 Linux 身上的 UNIX 气质 我已经半年没有使用 Windows 的方式工作了.Linux 高效的完成了我所有的工作. GNU/Linux 不是每个 ...

  5. wifi热点共享 3G网络

    本文描述一些iptables的基础知识和使用方法.最后记录一个wifi共享3G上网,以及禁止wifi内某个IP通过3G联网的例子. 一. 在Linux系统中,防火墙,网址转换(NAT),数据包记录以及 ...

  6. float:left居中对齐

    <div class="M1180"><div class="services"> <div class="serv_c ...

  7. app.config *.exe.config 和*.vshost.exe.config基础学习

    一.问题描述 在使用config文件来保存一些参数,便于下次启动程序时自动加载上次设置的参数的功能时, 碰到个问题,vs2010下调试运行程序始终无法实现config记录上次参数值,而直接运行exe程 ...

  8. Dynamic Web Project创建及版本修改的问题

    java项目中,若切换服务器,经常会涉及到动态web模块版本的问题.      比如:新建了web项目,开始使用tomcat服务器,但是后来使用jboss服务器,就会出现:Project facet ...

  9. postgresql 入门(含java、scala连接代码)

    1.下载安装包 官网:http://www.postgresql.org/download/ 按自己需求,下载安装包, 我下载的windows版32位的.http://get.enterprisedb ...

  10. ThinkPHP之中的事务回滚

    小李子 获取thinkphp之中执行的SQL: 1.用调试模式的追踪trace功能: 2.代码: $user_type=D('user_type'); $datass=array('school_id ...