导航:首页 > 源码编译 > vhdl编译报错了

vhdl编译报错了

发布时间:2022-07-29 15:44:36

A. VHDL 程序编译报错!急!

两个地方,一个是rst='1',要加单引号,因为rst是std_logic型,而不是整型,还有一个是在process括号里面应该加上个c,还有就是c<=(others=>'0');这里面的0也应该是用单引号!!!

B. 关于VHDL的错误

process(in1,in2,in3,in4.sel) 这里面的"点"应该是“逗号” 估计是你抄错了吧

C. vhdl 分频器程序报错

从报错提示上看,是键入了非法字符。在输入符号时,要注意不要在全角(汉字)状态,要保证输入的是半角字符。

D. VHDL语法错误怎么改

你写的代码使用了 Verilog 语言,不是 VHDL 语言;
使用 Verilog 语言描述需要在工程里添加 Verilog 代码文件而不是 VHDL 代码文件;

可以尝试将 .vhd 文件后缀重命名为 .v 文件后缀,重新尝试编译工程;
如果编译不通过,请根据给出的错误信息修正代码;

E. VHDL编译错误 Error (10465)

你已经在端口声明中声明了端口goal_speed,就不能再将其声明为常数了。
另外,赋值语句并无规定要将双引号去掉。是否使用双引号,要看你的赋值类型,字符串文字才需要用双引号将其括在其中。

F. VHDL 编译报错!急!在线等……

你是想写一个分频程序吧,,错误蛮多的,variable只能用在进程中,不能在两个进程里面同时对一个信号,或者变量赋值,下面是我帮你修改的程序;
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity cf is
port(clk,trigger:in std_logic;
delclk:out std_logic);
end cf;
architecture behave of cf is
begin
process(clk,trigger)
variable count:integer range 0 to 100;
begin
if trigger='1' then
count:=0;delclk<='0';
elsif clk'event and clk='1' then
if count=100 then
count:=0;
delclk<='1';
else count:=count+1;
delclk<='0';
end if;
end if;
end process;
end behave;

G. vhdl编译出错

就是说你在你的DESIGN中已经将pn定义为一个信号或者一个逻辑IO口了,这个检查下有没重复命名的变量就行

至于"inst"检测出重复,这是你画一个.bdf文件经常会出现的问题,只需要你把.bdf文件中的所有使用元件重新命名就行,特别是名字为inst,inst0,inst1这几个元件,后面多加几个数,就能解决问题

H. vhdl编译错误呀Error (10482): VHDL error at light.vhd(40): object "t" is used but not declared

t没有定义。
注意第一个process中虽然定义了一个t,但是它是局部变量,而在40行的需要再定义一次t。

I. VHDL程序编译出错,报错can't determine definition of operator ""+"" -- found 0 possible definitions

修改后的code如下:
1:将你程序中的bit_vector改为 std_logic_vector,USE IEEE.STD_LOGIC_UNSIGNED.ALL以及USE IEEE.STD_LOGIC_SIGNED.ALL可以使得“+”两方具有不同的数据类型,但不支持bit_vector。
2:USE IEEE.STD_LOGIC_UNSIGNED.ALL以及USE IEEE.STD_LOGIC_SIGNED.ALL用一个就可以了,删除了USE IEEE.STD_LOGIC_SIGNED.ALL。

请采纳!!

library IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
use IEEE.std_logic_ARITH.all;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY ADDERCTL IS
PORT( in1 : in std_logic_vector(2 downto 0);
in2 : in std_logic_vector(2 downto 0);
cntl : in std_logic;
pout : out std_logic_vector(2 downto 0));
END entity ADDERCTL;

ARCHITECTURE FUNC OF ADDERCTL IS
BEGIN
PROCESS(cntl)
BEGIN
if (cntl='1') then pout<=in1+in2;
end if;
end process;
end ARCHITECTURE FUNC;

阅读全文

与vhdl编译报错了相关的资料

热点内容
钓鱼黑坑下什么app 浏览:938
windows软件编译为linux程序 浏览:270
方舟编译支持应用 浏览:422
华为云服务器可以远程别的电脑吗 浏览:7
单片机百度百科 浏览:230
安卓回声效果发短信怎么弄 浏览:166
windows7文件夹属性没有位置 浏览:949
单片机632什么意思 浏览:119
奢侈品哪个app买最便宜 浏览:665
编译原理意思 浏览:329
哪里下载带有加密版志愿二维码 浏览:393
python读串口 浏览:171
Pdf修改文本 浏览:660
电力行业纵向加密技术原理 浏览:49
活塞压缩机基础 浏览:706
么解手机的压缩包 浏览:767
如何开通加密货币 浏览:148
北京修理服务器云主机 浏览:204
python程序设计主要思路 浏览:897
jar包通过如何在服务器运行 浏览:378