FPGA综合工具中可综合的代码结构

来源:互联网 发布:js原型链 编辑:程序博客网 时间:2024/06/06 02:45
不同厂商的综合工具所支持的可综合子集可能有所不同。本文所说的是ISE的综合工具XST
在Verilog中综合时XST综合工具支持的结构有:
     1、线网类型wire、tri、supply1、supply0等
     2、寄存器类型reg、integer、time等
     3、连续赋值
     4、门原型和模块例化
     5、always模块、用户定义的task和function
     6、input、output和inout端口
     7、所有的运算符,其中  /   和   %   运算符只适合于能得到整数结果的常量
     8、行为语句,如if else   case   casex  casez  for  repeat  while  forever  begin end  fork join
     9、过程赋值语句,包括阻塞与非阻塞
     10、编译器指令,如define  ifdef  else  endif  include  undef 
     11、其他:在本地“begin end” 模块中,赋值语句的左端和右端可以对向量进行可变参数的索引。

XST不支持的Verilog结构
     1、线网类型:trireg  wor  trior  wand  triand  tri0  tri1  strenth
     2、寄存器类型 real
     3、单向和双向开关、pull-up  pull-down
     4、行为语句deassign  wait
     5、命令的事件(Event)和事件触发
     6、UDP和specify模块
     7、force、release和层次化的Net名称(仅用于仿真)

XST忽略的Verilog结构
     1、delay  delay控制、驱动强度
     2、标量化、向量化(scalared、vectored)
     3、initial模块
     4、除了define  ifdef  else  endif  include  undef之外的编译指令
     5、对系统task和系统function的调用(仅用于仿真)
原创粉丝点击