微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 请问Verilog 的 include的编写

请问Verilog 的 include的编写

时间:10-02 整理:3721RD 点击:
我在include_text下面建了两个文件:include_text.v 和led_key.v
8个按键和LED灯,按下按键,对应的LED灯亮。主要是 想看一下include_text如何用.
include_text.v 为:
`include"led_key.v"
module include_text(LED, KEY);
input [7:0] KEY;
output [7:0] LED;
reg [7:0] LED;
led_key my_include_text(LED, KEY);
endmodule
led_key.v为:
module led_key(LED, KEY);
input [7:0] KEY;
output [7:0] LED;
reg [7:0] LED;
always @(KEY)
begin
case(KEY)
8'b0000_0001ED=8'b0000_0001;
8'b0000_0010ED=8'b0000_0010;
8'b0000_0100ED=8'b0000_0100;
8'b0000_1000:LED=8'b0000_1000;
8'b0001_0000:LED=8'b0001_0000;
8'b0010_0000:LED=8'b0010_0000;
8'b0100_0000:LED=8'b0100_0000;
8'b1000_0000:LED=8'b1000_0000;
default:LED=8'b1111_1111;
endcase
end
endmodule
我一编译,就出现以下错误:
Error (10228): Verilog HDL error at led_key.v(1): module "led_key" cannot be declared more than once
还有想问一下,怎样调用led_key里的程序啊。
望各位赐教。

放在一个文件里就行

你的include_text.v文件相当于如下:module led_key(LED,KEY);
....
endmodule
module include_text(LED,KEY);
....
endmodule
module led_key(LED,KEY);
....
endmodule

led_key这个module被declare了2次。`include "file.v"这个语句相当于把file.v这个文件的内容原封不动的贴在这里。

编译include_text.v就行了

跟着学到了,谢谢



    请问你的问题解决了没啊?我也遇到了同样的问题!

模块里调用了led_key就不用写这句了`include"led_key.v"

要么分两个文件写
要么不使用include
两者不可并存

被声明了2次。不能同名

如果子文件在工程文件夹中 或者 子文件已经被包括在工程中,就不需要再使用include。这是在quartus2的编译环境下

跟个贴。我也遇到了同样的问题。
首先TOP-level 应该设置成那个 module?
其次是·include 为什么会出错。

你是写软件的吧!需要思考一下模块的例化与函数的调用的区别!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top