打印

chipscope 采到的数与ISE仿真的数据对不上

[复制链接]
1441|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ldx521|  楼主 | 2013-3-6 00:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
module(clk.,
                  reset,
                 rdy_in,
                rdy_out,
                din,
                 dout
        );
input     clk;
input     reset;
input     rdy_in;
input  [20:0]  din;
output    [20:0] dout;
reg rdy_out;
reg  [23:0]    left;
reg  [23:0]    right;
reg  [20:0]  dout;
reg  [20:0] din_delay [16:0];
always @(posedge clk)
     begin
         din_delay[16]<=din;
        din_delay[15]<=din_delay[16];
        din_delay[15]<=din_delay[16];
din_delay[14]<=din_delay[15];
din_delay[13]<=din_delay[14];
din_delay[12]<=din_delay[13];
din_delay[11]<=din_delay[12];
din_delay[10]<=din_delay[11];
din_delay[9]<=din_delay[10];
din_delay[8]<=din_delay[9];
din_delay[7]<=din_delay[8];
din_delay[6]<=din_delay[7];

din_delay[5]<=din_delay[6];
din_delay[4]<=din_delay5];
din_delay[3]<=din_delay[4];
din_delay[2]<=din_delay3];
din_delay[1]<=din_delay2];

din_delay[0]<=din_delay[1];
     end


always @(posedge clk)
   begin
       if(reset==0)

           begin
                    rdy_out<=0;
                    left<=0;
                   right<=0;
             end
         else if(rdy_in==1)
           begin
                      left<=din_delay[0]+din_delay[1]+din_delay[2]+din_delay[3]+din_delay[4]+din_delay[5]+din_delay[6]+din_delay[7];
                     right<=din_delay[9]+din_delay[10]+din_delay[11]+din_delay[12]+din_delay[13]+din_delay[14]+din_delay[15]+din_delay[16];
                       if(left>right)
                                     begin
                                                 dout<=left>>3;
                                                   rdy_out<=1;
                                    end
                      else

                                     begin
                                                 dout<=right>>3;
                                                   rdy_out<=1;
                                    end



          end

end
endmodule


这是程序。程序实现功能,外部输入8192个数据(数据是随机的,没有规律),在rdy_in=1 时,数据有效。
ISE仿真 可以实现设计功能。但是用chipscope  却一直输出left>>3的值,与ISE仿真结果不一致。
请大家帮我分析一下,这事有什么原因造成的?先谢谢各位了      

相关帖子

沙发
ldx521|  楼主 | 2013-3-6 10:03 | 只看该作者
请各位帮帮我。小弟先谢谢各位了

使用特权

评论回复
板凳
qin552011373| | 2013-3-6 19:42 | 只看该作者
不会用m仿真的飘过  静等高手

使用特权

评论回复
地板
ldx521|  楼主 | 2013-3-6 21:28 | 只看该作者
ai

使用特权

评论回复
5
GoldSunMonkey| | 2013-3-6 23:17 | 只看该作者
上。关键信号的方针图和CHipscope抓数的图

使用特权

评论回复
6
ldx521|  楼主 | 2013-3-7 11:06 | 只看该作者
找到问题了,always块里的数据延迟的问题。只要有这个块就会出错。但是还必须的这样延迟

使用特权

评论回复
7
GoldSunMonkey| | 2013-3-7 15:16 | 只看该作者
ldx521 发表于 2013-3-7 11:06
找到问题了,always块里的数据延迟的问题。只要有这个块就会出错。但是还必须的这样延迟 ...

好的,结帖吧

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:自强不息  传铁人精神

6

主题

97

帖子

1

粉丝