在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 10521|回复: 4

[求助] 用quartus做lms算法。期间遇到的clk的问题。请高手帮忙!

[复制链接]
发表于 2012-7-13 15:33:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 苦寻爱 于 2012-7-13 15:34 编辑

用的aitera公司DE2的板子。因为没有ADC。所以只能将我要的数据存入到片内rom中。现在是我写的verilog程序。。
关键部分如下。
module lms(Clk,Enable,Error_out);

   input
Clk,Enable;

           output
signed [15:0] Error_out;(这个是经过自适应后的输出)

           wire signed [15:0] Data_in,Desired_in;(前者是噪声的输入,后者是信号+噪声的输入)

        reg [9:0] cnt = 10'd0;//0~1023

always @(posedge Clk)

begin

cnt <= cnt + 10'd1;

end



reg Reset = 1'b0;

always @(posedge Clk)

begin

if(cnt == 10'd1)

Reset <= 1'b0;

else if(cnt == 10'd2)

Reset <= 1'b1;

else if(cnt == 10'd3)

Reset <= 1'b0;

else

Reset <= Reset;

end                                                   (这一部分是做reset的功能)


reg [9:0] addra = 10'd0;

always @ (posedge Clk)

begin

if(Reset)

addra <= 10'd0;

else

addra <= addra + 10'd1;

end




noise rom2 (.clock(Clk),

           .address(addra),

  .q(Data_in)

          );                                              (这一部分是做噪声信号存入rom中,调用模块)




reg [9:0] addrb = 10'd0;

always @ (posedge Clk)

begin

if(Reset)

addrb <= 10'd0;

else

addrb <= addrb + 10'd1;

end


mix rom1 (.clock(Clk),

          .address(addrb),

.q(Desired_in)

          );                                                (这一部分是做信号+噪声存入了rom中,调用模块提供输入波形)




……………………………………………………………………………………………………………………(剩下的是其余lms的算法,那些模块都没问题。)

经过上面我写的东西。。。。quartus爆出警告。Warning (332060): Node: Clk was determined to be a clock but was found without an associated clock assignment.        (我已经将clk接了晶振的引脚了,但为什么说Clk被确定为一个钟,但是时没有发现一个关联的时钟赋值。)


                                               核心警告。Critical Warning (332168): The following clock transfers have no clock uncertainty assignment. For more accurate results, apply clock uncertainty assignments or use the derive_clock_uncertainty command.

Critical Warning (332169): From altera_reserved_tck (Rise) to altera_reserved_tck (Rise) (setup and hold)

Critical Warning (332169): From altera_reserved_tck (Rise) to altera_reserved_tck (Fall) (setup and hold)

Critical Warning (332169): From altera_reserved_tck (Fall) to altera_reserved_tck (Fall) (setup and hold)

而且这个问题就是在写了。。。。。。rom模块调用后。出现的警告!这里的调用我写错了????????
求各位高手。帮忙看看额~~~~~~~不知道是不是我的代码写错了啊???????????还是怎么了????????
发表于 2012-7-13 20:36:15 | 显示全部楼层
因为没有SDC时序约束文件。综合一次后,可进TimeQuest用向导一步步生成一个简单的SDC文件,保存成【工程名】.sdc放在工程目录下再综合一遍即可。
发表于 2012-7-17 08:26:36 | 显示全部楼层
这个可能是因为你的晶振引脚没有接在fpga的时钟专用引脚上,是硬件电路的问题,不过一般没有什么问题,我估计你这个lms算法也就是运行在100MHz左右,对时钟没什么大的影响,不必关心。
发表于 2012-7-17 08:28:35 | 显示全部楼层
fpga的引脚分为普通的用户IO,时钟专用io,电源和地,一般设计的时候为了保证时钟特性,大部分会将晶振的引脚接在fpga的时钟专用引脚上,但是很多初学者在画板子的时候没主意这个问题。当fpga的运行频率不是很高的时候,这个问题是个小问题,除非你用在比如pcie等高速接口的时候才必须主意这一点。
发表于 2018-11-28 14:16:51 | 显示全部楼层
学习中。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-15 07:58 , Processed in 0.017757 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表