跳转到主要内容

【Vivado那些事】Vivado下头文件使用注意事项

judy 提交于

本文转载自:<span id="profileBt"><a href="https://mp.weixin.qq.com/s?__biz=Mzg4ODA5NzM1Nw==&mid=2247490539&idx=1&…; OpenFPGA微信公众号</a></span>

并不局限于Vivado一种EDA。

头文件主要使用“文件包括”处理,所谓"文件包含"处理是一个源文件可以将另外一个源文件的全部内容包含进来,即将另外的文件包含到本文件之中。Verilog语言提供了`include命令用来实现"文件包含"的操作。

我在头文件中定义了一个全局变量如下:
<center><img src="http://xilinx.eetrend.com/files/2020-12/%E5%8D%9A%E5%AE%A2/100059877-11…; alt=""></center>

我在使用这个全局变量时,始终提示找不到这个全局变量:
<center><img src="http://xilinx.eetrend.com/files/2020-12/%E5%8D%9A%E5%AE%A2/100059877-11…; alt=""></center>

出现这个问题,主要有两方面原因:

1、头文件类型需要注意:
<center><img src="http://xilinx.eetrend.com/files/2020-12/%E5%8D%9A%E5%AE%A2/100059877-11…; alt=""></center>

其中箭头部分可以修改类型。

2、引用错误:
<pre> output reg [WIDTH-1:0] LED;</pre>

上面是错误的,正确如下:
<pre>output reg ['WIDTH-1:0] LED; </pre>

其中第一个引起出错的可能比较小,试过用其他类型(Verilog源文件类型)也不会有问题。

关于文件包含的使用注意以下几点:
<center><img src="http://xilinx.eetrend.com/files/2020-12/%E5%8D%9A%E5%AE%A2/100059877-11…; alt=""></center>