|
技术交流 | 电路欣赏 | 工控天地 | 数字广电 | 通信技术 | 电源技术 | 测控之家 | EMC技术 | ARM技术 | EDA技术 | PCB技术 | 嵌入式系统 驱动编程 | 集成电路 | 器件替换 | 模拟技术 | 新手园地 | 单 片 机 | DSP技术 | MCU技术 | IC 设计 | IC 产业 | CAN-bus/DeviceNe |
请问关于Quartus II4.1编译时的问题 |
作者:dandan0510 栏目:EDA技术 |
显示如下 Error: Top-level design entity frequency-divider is undefined 请高手帮忙回答一下,不胜感激。 |
2楼: | >>参与讨论 |
作者: sassos 于 2006/9/18 18:23:00 发布:
?? 顶层vhd文件中frequency-divider 定义错误,看下格式 |
3楼: | >>参与讨论 |
作者: dandan0510 于 2006/9/19 15:02:00 发布:
请问高手怎样定义顶层文件 |
4楼: | >>参与讨论 |
作者: dandan0510 于 2006/9/19 15:55:00 发布:
程序如下:(我用的Quartus II4.1) library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity abc is PORT(clk:in std_logic; dout:out std_logic); end abc; architecture x of abc is signal p,q:std_logic_vector(2 downto 0); begin PROCESS(clk) begin if (clk'event and clk='1') then if p="100" then p<="000";else p<=p+1; end if;end if;end PROCESS; PROCESS(clk) begin if (clk'event and clk='0') then if q="100" then q<="000";else q<=q+1; end if;end if;end PROCESS; dout<='1' when p="000" or q="010" else '0';end x; |
5楼: | >>参与讨论 |
作者: dandan0510 于 2006/9/19 16:21:00 发布:
请高手赐教 最后面那个 end x;我改过来之后,在编译时也出现同样的error信息,请高手赐教。 |
6楼: | >>参与讨论 |
作者: sassos 于 2006/9/19 17:20:00 发布:
re 顶层文件的定义你可以看看书,你程序中定义的是entity abc,那保存时就保存为abc.vhd.还有程序最后的end |
7楼: | >>参与讨论 |
作者: sassos 于 2006/9/19 17:38:00 发布:
RE end要有,你保存的程序名是frequency-divider吧,定义实体名跟你保存的文件名要一致,还有,不用总叫人高手(: |
8楼: | >>参与讨论 |
作者: dandan0510 于 2006/9/19 17:42:00 发布:
To sassos 看起来没有什么错误啊,不知道怎么回事,编译老是过不去,而且在书上我也没有看到我这个的错误在哪里 |
9楼: | >>参与讨论 |
作者: littleou 于 2006/9/19 19:42:00 发布:
re 你的top层没有指定是哪个文件, 如果想简单就把prj的名字起成你的top层文件的名字 是 frequency-divider 吗? |
10楼: | >>参与讨论 |
作者: risher 于 2006/9/19 23:29:00 发布:
请问关于Quartus II4.1编译时的问题 这个简单,把你的文件名字该成和intity一样都行了,就是该成abc.我试过了没问题 |
11楼: | >>参与讨论 |
作者: 一尘w 于 2006/9/20 9:57:00 发布:
楼上是对的 就是那样的。top-level(建工程时)定义的名字必须和entity一样才能编译通过。 |
12楼: | >>参与讨论 |
作者: dandan0510 于 2006/9/20 11:19:00 发布:
回去试了一下,果然没有问题,多谢 |
13楼: | >>参与讨论 |
作者: dandan0510 于 2006/9/20 11:33:00 发布:
还有问题,关于仿真的 如果只是建了VHDL文件,没有schematic,先编译完毕,并且新建波形文件,但是发现没有输入和输出节点,这种情况下要怎么办呢?请帮忙。 |
14楼: | >>参与讨论 |
作者: risher 于 2006/9/20 13:03:00 发布:
请问关于Quartus II4.1编译时的问题 ?不理解你说的?? |
15楼: | >>参与讨论 |
作者: sassos 于 2006/9/21 14:51:00 发布:
re 新建一个仿真文件就可以了 |
16楼: | >>参与讨论 |
作者: dandan0510 于 2006/9/22 14:53:00 发布:
关于仿真的问题 在写程序的时候,经常会定义信号,那么在仿真的时候,这些信号的初值是我们自己仿真的时候才定义的吗?请指教 |
17楼: | >>参与讨论 |
作者: avlicht 于 2006/9/23 20:13:00 发布:
将文件名改为abc.vhd就可以了吧 |
18楼: | >>参与讨论 |
作者: dandan0510 于 2006/9/26 14:51:00 发布:
依然是仿真的问题 用verilog编写程序时,可以加上测试的代码,从而验证设计结果;那用VHDL时,也可以写测试代码吗?还是说关于信号的初值都要自己在仿真时设定呢?请帮忙回答一下。 |
19楼: | >>参与讨论 |
作者: 钰琳 于 2006/9/27 15:19:00 发布:
我要Quartus II4.1 各位,我想用Quartus II4.1软件,请问在那里可以下吗? |
20楼: | >>参与讨论 |
作者: mxjacj 于 2006/9/29 15:53:00 发布:
vv 初值是在文本里面定义的 如variable a:integer range 0 to 50 :=0; 都是在定义的时候设初值的 |
21楼: | >>参与讨论 |
作者: dandan0510 于 2006/9/29 16:04:00 发布:
那么对于这个程序,应该怎么设置初始值呢? library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity abc is PORT(clk:in std_logic; dout:out std_logic); end abc; architecture x of abc is signal p,q:std_logic_vector(2 downto 0); begin PROCESS(clk) begin if (clk'event and clk='1') then if p="100" then p<="000";else p<=p+1; end if;end if;end PROCESS; PROCESS(clk) begin if (clk'event and clk='0') then if q="100" then q<="000";else q<=q+1; end if;end if;end PROCESS; dout<='1' when p="000" or q="010" else '0';end x; |
22楼: | >>参与讨论 |
作者: 一尘w 于 2006/9/29 16:12:00 发布:
仿真 我是仿真时定的呵呵。用modelsim做的,刚学。 |
23楼: | >>参与讨论 |
作者: 一尘w 于 2006/9/29 16:14:00 发布:
q4.1 ALTERA网站会有吧。我用5.1的。license不行唉 |
|
|
免费注册为维库电子开发网会员,参与电子工程师社区讨论,点此进入 |
Copyright © 1998-2006 www.dzsc.com 浙ICP证030469号 |