查看: 4027|回复: 12

奇怪的verilog问题

[复制链接]
发表于 2009-8-17 16:02:42 | 显示全部楼层 |阅读模式
关键词: verilog
reg  [17:0] test_data=0;//18'h0; 这样正常

这个verilog的写法,用注释中的写法cpld就不工作了,奇怪!

reg  [17:0] test_data18'h0; 这样就出问题了。
 楼主| 发表于 2009-8-17 16:10:41 | 显示全部楼层
原来的想法,是系统上电,test_data=0,
可是,系统上电,竟然还保持上次掉电的数据!
乱套了。
如果增加复位引脚,还得增加额外的电路,而且,管脚相当紧张。
搞过verilog的帮忙看看。
 楼主| 发表于 2009-8-17 16:11:31 | 显示全部楼层
还有不少其他的变量,都是这样赋值的,如果这样有问题,那
必须得增加复位功能了。麻烦透了。
 楼主| 发表于 2009-8-17 16:14:15 | 显示全部楼层
always@(posedge spck)// or negedge erd)
  begin
    if (spck_cnt==15) //after clock 15,will have a delay
    begin
            ext_in_wr <= 1'b1;//ext_in data to ext_in FIFO
            ext_in_wdata[17:0] <= {ea0,1'b0,ext_in_buf[14:0],mosi};//{ea0,1'b0,ext_in_buf[14:0],mosi};
            test_data[17:0]<= test_data[17:0]+1'b1;//{ea0,1'b0,ext_in_buf[14:0],mosi};//{ea0,1'b0,ext_in_buf[14:0],mosi};
    end
    else
    begin
            ext_in_wr<=0;
            ext_in_buf[14:0]<={ext_in_buf[13:0],mosi};
    end                               
//   if (ea0==ea0_old)
//           spck_cnt<=0;
//   else
      spck_cnt<=spck_cnt+1;  
    ea0_old<=ea0;
  end
 楼主| 发表于 2009-8-17 16:14:58 | 显示全部楼层
这是程序源码,就是一个spi接收而已。
发表于 2009-8-18 16:48:08 | 显示全部楼层
语法错误吧,,reg  [17:0] test_data=18'h00000;
 楼主| 发表于 2009-8-19 09:50:48 | 显示全部楼层
经过昨天和今天的测试,确实无论那种写法,确实是掉电数据保持!
看来,只能增加复位电路或者逻辑。
或许,这是actel 这款电路的特性吧。郁闷。
发表于 2009-8-19 16:21:57 | 显示全部楼层
不懂,帮不上忙~
以前挺喜欢FPGA CPLD设计的,一直没机会,现在也没感觉了,过了劲儿了
发表于 2009-8-25 22:09:59 | 显示全部楼层
verilog最后实现的电路都是触发器和逻辑门,对于reg可类似于触发器的Q吧,用7474是大家都会把复位和置位端接到有效电平,我想cpld也应该不例外吧,上电没有有效复位的话,应该处于不定值,你定义变量reg = 0,但verilog的执行语句为always,assign,task,fuction;而reg = 0并没有在上述语句中,所以并没有被执行,可以把cpld的全局复位变量接出来吧,楼主不会把全局复位变量都用来做其他了吧?
 楼主| 发表于 2009-8-25 23:00:10 | 显示全部楼层
没有接硬件复位电路。不得多站一个IO吗?
发表于 2009-8-26 20:21:18 | 显示全部楼层
如果在fpga里, 掉电丢失的原因,reg  [17:0] test_data=18'h00000;上电时test_data初始值应该为0;
在spck_cnt<= 0处 同时test_data=18'h00000;可行不,这样只可能出现上电的那一次误码!
发表于 2010-11-10 10:23:01 | 显示全部楼层
发表于 2010-11-10 10:23:26 | 显示全部楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表