”VHDL语言帮助

S

saywhatsaywhat

Guest
我已经收到此错误
, 当我编译。谁能帮助我?

#**错误:file1.vhd(157):类型错误解决中缀表达式"<=".
#**错误:file1.vhd(157):无法读取输出“差异”。
#**错误:file1.vhd(157):靠近"<=":期待:';'

代码:

使用work.own_types.all;-锁相环

图书馆电机及电子学工程师联合会;

使用IEEE.std_logic_1164.all;

使用IEEE.std_logic_arith.all;

使用IEEE.std_logic_unsigned.all;

使用IEEE.numeric_bit.all;

使用IEEE.numeric_std.all;

-使用IEEE.numeric_std.signed;图书馆新跃;

使用UNISIM.VComponents.all;-图书馆textutil; - Synposys文本I / O包

-使用textutil.std_logic_textio.all;实体比较是端口(

时钟:在锁相环;

复位:在锁相环;

数据:std_logic_vector(0到31);

iv_ready:在锁相环; -四发送数据将在下一个周期开始

sv_ready:在锁相环; -希沃特发送数据将在下一个周期开始

data_valid在锁相环:; -电流输入的数据有效

comp_ready:出锁相环; -在比较的结果是好

差异:出std_logic_vector(0到31)); -绝对差的累积

完比较;建筑的行为是比较

不断DP_NUM:整数:= 14; -数据点的数量

信号diff_sum:std_logic_vector(0到31); -总结的差异

信号dp_count:std_logic_vector(0到15); -数据点计数器

信号sig_count:std_logic_vector(0到15); - sigature载体计数器

信号四:std_logic_vector(0到31); -四(从内存读取)

信号希沃特:std_logic_vector(0到31); -希沃特(延迟数据)

信号comp:锁相环; -可以断言比较签字向量时不为0

型comparator_state是(闲置,rec_data,rec_sig,做,冲洗);

信号动向:comparator_state; -国家的比较

信号瑛:锁相环; -不写使能的SRAM

信号地址:std_logic_vector(15 downto 0); - SRAM的地址

开始-行为-这个过程产生的信号西沃特和comp。

-在比较中rec_sig状态,SV是延迟

-输入数据。
如果输入的SV是不为零,则在COMP是

-延迟data_valid。
一个周期延迟是因为插入

-在第四,当读取SRAM中指出,延迟一个时钟周期。

delay_sv:过程(时钟,重置)

动工

如果复位= '1',那么

希沃特“=(其他=”'0');

comp“= '0';

ELSIF rising_edge(时钟),然后

中频(动向= rec_sig)则

希沃特“=数据;

中频(conv_integer(数据)= 0)则

comp“= '0';

其他的

comp“= '1';

完中频;

其他的

希沃特“=(其他=”'0');

comp“= '0';

完中频;

完中频;

结束进程;
-这个过程产生的信号diff_sum

-当比赛(比较启用)是1,那么diff_sum是积累

-绝对的第四和SV之间的不同

acc_diff:过程(时钟,重置)

动工

如果复位= '1',那么

diff_sum“=(其他=”'0');

ELSIF rising_edge(时钟),然后

如果(comp = '1'),然后

如果(希“四)然后

diff_sum“= conv_std_logic_vector(conv_integer(diff_sum) conv_integer(SV)的- conv_integer(四),32);

其他的

diff_sum“= conv_std_logic_vector(conv_integer(diff_sum) conv_integer(四) - conv_integer(希),32);

完中频;

ELSIF(动向= rec_data)则

diff_sum“=(其他=”'0');

完中频;

完中频;

结束进程;
-这个过程描述了比较密克罗尼西亚。
它也产生信号

- dp_count,sig_count和comp_ready。

- dp_count指示IV数据的数量已收到

- sig_count表明德国SV已收到的数据。

-请参阅的详细资料,家庭作业

-密克罗尼西亚。

工艺(时钟,重置)

动工

如果复位= '1',那么

动向“=闲置;

dp_count“=(其他=”'0');

sig_count“=(其他=”'0');

comp_ready“= '0';

ELSIF rising_edge(时钟),然后

案例SM是当系统的闲置=“

dp_count“=(其他=”'0');

sig_count“=(其他=”'0');

中频iv_ready = '1',那么

动向“= rec_data;

comp_ready“= '0';

完中频;当完成=“当rec_data =“当rec_sig =“当冲洗=“动向”=工作;

当别人=“动向”=工作;

完案例;

完中频;

结束进程;-如果在rec_data比较状态和输入数据是有效的,那么

- SRAM的写使能是断言,让四数据可以存储

-在SRAM瑛“=

--当在rec_data比较器的状态,(写)地址

- SRAM的等于dp_count。
当比较器是在rec_sig

-国家,(读)的SRAM的地址等于sig_count。地址(15 downto 0)“=-输出差异等于diff_sum

差异“= diff_sum;-静态存储器0

ram0:sram64kx8港口地图(

ncs1 =“'0',

二硫化碳=“'1',

地址=“地址,

data_in =“数据(0到7),

data_out =“四(0到7),

瑛=“瑛,

诺埃=“'0',

时钟=“时钟

);- SRAM的1

ram1:sram64kx8港口地图(

ncs1 =“'0',

二硫化碳=“'1',

地址=“地址,

data_in =“数据(8至15),

data_out =“四(8至15),

瑛=“瑛,

诺埃=“'0',

时钟=“时钟

);-静态存储器2

ram2:sram64kx8港口地图(

ncs1 =“'0',

二硫化碳=“'1',

地址=“地址,

data_in =“数据(16至23),

data_out =“四(16至23),

瑛=“瑛,

诺埃=“'0',

时钟=“时钟

);-静态存储器3

ram3:sram64kx8港口地图(

ncs1 =“'0',

二硫化碳=“'1',

地址=“地址,

data_in =“数据(24至31),

data_out =“四(24至31),

瑛=“瑛,

诺埃=“'0',

时钟=“时钟

);
完行为;

 
嗨,

尝试删除....这样,它更好地调试代码冗长的意见...但任何如何看看这些行???

我看到瑛以及地址不与任何值分配..是真的吗??

-如果在rec_data比较状态和输入数据是有效的,那么
- SRAM的写使能是断言
, 让四数据可以存储
-在SRAM

瑛“=
-

-当在rec_data比较器的状态,(写)地址
- SRAM的等于dp_count。当比较器是在rec_sig
-国家,(读)的SRAM的地址等于sig_count。

地址(15 downto 0)“=

如果U也没有发现它....后与行号代码。

关心,
dcreddy1980

 
Certanly问题已经存在:

saywhatsaywhat说:

我已经收到此错误,当我编译。
可以

代码:瑛“=

--当在rec_data比较器的状态,(写)地址

- SRAM的等于dp_count。
当比较器是在rec_sig

-国家,(读)的SRAM的地址等于sig_count。地址(15 downto 0)“=-输出差异等于diff_sum

差异“= diff_sum;

 

Welcome to EDABoard.com

Sponsor

Back
Top