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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2523|回复: 7

[讨论] 请教这个程序主要是实现什么功能的啊

[复制链接]
发表于 2011-11-25 12:10:35 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 summuy 于 2011-11-25 15:02 编辑

仿真的波形图

仿真的波形图
module dso_sinc_mult(clk,reset, x_in,datain,endata_out,sum);

/*y_out1,y_out2,y_out3,y_out4,y_out5,y_out6,y_out7,y_out8,y_out9,y_out10,*/

input clk,reset;
input signed [7:0] x_in;
input signed [7:0] datain;


output  signed [16:0] sum;
output   endata_out;

//output  signed [16:0] y_out1,y_out2,y_out3,y_out4,y_out5,y_out6,y_out7,y_out8,y_out9,y_out10;
//reg signed [16:0] y_out1,y_out2,y_out3,y_out4,y_out5,y_out6,y_out7,y_out8,y_out9,y_out10;


reg [4:0] count;
reg       endata_out ;//, ena_io
reg     signed [16:0] dataout; // temp sum                    
reg     signed [7:0]  ibuf [0:10];
reg     signed [16:0] sum; // temp sum         
parameter             IL = 9;



/////////////////////////////////////////////////////////////////////////////

always @(posedge reset or posedge clk)
  begin : FSM  // Control the system and sample at clk rate
    if (reset)              // Asynchronous reset
      count <=5'b0;
    else begin
      if (count ==5'b10011)  
        count <=5'b0;
      else
        count <= count +5'b1;
    end
  end
/*always @(posedge clk)  
begin  
if (count == 0)
        ena_io <= 1;
      else
        ena_io <= 0;
  end*/

  always @(posedge clk)
  begin          // set the enable signal for the TAP lines   
      case (count)
       1,3,5,7,9,11,13,15,17,19: endata_out <= 1;
        default : endata_out <= 0;
      endcase
      
end

always @(posedge clk)      
  begin :  INPUTMUX
  integer I;  
      begin
        ibuf[0] <= x_in;
           for (I=0; I<=IL; I=I+1)
               ibuf[I+1] <= ibuf[I];      
                    
      end
  end



///////////**************************************************************/////////////
always @(posedge clk) // Compute sum-of-products for f0
  begin :  OUPUTMUX
reg     signed [16:0] p [0:9];
integer I;
    begin
     dataout = p[0];
       for (I=0; I<=IL; I=I+1) // Infer L+1  multiplier
              begin
               p[I] = ibuf[I]*datain  ;
               dataout= dataout + p[I];
               sum  <=  dataout ;
              end
end
end
//******************************************************************************************//


endmodule
 楼主| 发表于 2011-11-25 12:41:10 | 显示全部楼层
本帖最后由 summuy 于 2011-11-25 15:02 编辑

怎么没人看看呢
 楼主| 发表于 2011-11-25 15:03:36 | 显示全部楼层
哪位仁兄帮帮忙,看看哦
发表于 2011-11-28 13:11:56 | 显示全部楼层
8位有符号数的乘法....
PS:这是学软件的人写的代码吧....
 楼主| 发表于 2011-11-28 15:59:57 | 显示全部楼层
不是乘加啊?卷积
发表于 2011-11-28 16:05:18 | 显示全部楼层
回复 5# summuy


      这个代码不是RTL级的,你要这个代码干什么?测试吗
发表于 2011-11-28 17:20:50 | 显示全部楼层
的确不是RTL的,看起来象是测算验证用的代码
 楼主| 发表于 2011-11-28 17:31:56 | 显示全部楼层
回复 7# zhanqing1215


    验证我做的东西啊。其实我是想做个插值算法。看见别的书上有个这样的代码,然后修改了一点。但是仿真的时候好像结果不太对。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-11-23 04:38 , Processed in 0.034641 second(s), 10 queries , Gzip On, Redis On.

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