原创 HDL综合保留属性

2023-9-5 12:29 757 5 5 分类: FPGA/CPLD 文集: QuartusII
使用ALTERA器件和其编译软件设计逻辑电路的时候,经常会遇到逻辑单元被综合优化掉的事情。这时候可以通过添加综合“保留”属性来将不希望被综合优化掉的信号节点保留下来。具体做法对于VHDL来说是这样的:
  1. signal a_sig,b_sig,regout:std_logic_vector(511 downto 0);
  2. attribute keep:boolean;
  3. attribute keep of a_sig: signal is true;
  4. attribute keep of b_sig: signal is true;

而对于Verilog而言,如果信号为wire型,则
  1. wire w1 /*synthesis syn_keep*/;

如果信号为reg型,则
  1. reg r1 /*synthesis syn_preserve*/ ;

或者
  1. reg r1 /*synthesis syn_noprune*/ ;
当前在使用VHDL添加综合保留属性的时候遇到一个问题,即同样的代码在QII13.0+CycloneVGX时候没有问题,但是在Quartus Prime 22.4 + Cyclone10GX的时候失去了效果,给出下述警告信息的同时将这些节点全部综合优化掉了。
Warning(14284): Synthesized away the following node(s): 
Warning(14285): Synthesized away the following node(s) of type LCELL buffer: 
Warning(14320): Synthesized away node "inst18" 
Warning(14320): Synthesized away node "inst19" 
Warning(14320): Synthesized away node "inst3|u_TDL_CC_Top|a_sig[511]" 
Warning(14320): Synthesized away node "inst3|u_TDL_CC_Top|a_sig[510]" 
........................................................................................................................................

作者: coyoo, 来源:面包板社区

链接: https://mbb.eet-china.com/blog/uid-me-1010859.html

版权声明:本文为博主原创,未经本人允许,禁止转载!

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
5
关闭 站长推荐上一条 /1 下一条