久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

補碼運算Veirlog代碼——音頻Mix運算(24bit)

作者:PushForward   來源:PushForward的空間   點擊數:  更新時間:2014年06月08日   【字體:

`define N 23

module audio_mix_add_24bit (
         input       clk   ,
         input       rst   ,
         input    [`N:0] audio_a ,
         input    [`N:0] audio_b ,
         
         output reg  [`N:0] mixed_audio_out

         );

parameter NEG_ADD_MAX = 24'hFF_FFFF;
reg  [24:0] mixed_audio;
wire [23:0] neg_add_a;
wire [23:0] neg_add_b;
wire [23:0] neg_add;

////////////////////////////////////////////////////////////
////////////////// 補碼的相加運算 ///////////////////////////
////////////////////////////////////////////////////////////

assign neg_add_a   = NEG_ADD_MAX - audio_a + 1'b1;
assign neg_add_b   = NEG_ADD_MAX - audio_b + 1'b1;

always @( posedge clk , negedge rst )
 if( !rst )
  mixed_audio      <= 25'h0;
 else if( !audio_a[23] & !audio_b[23] )
  begin
   mixed_audio[23:0]  <= audio_a[23:0] + audio_b[23:0];
   mixed_audio[24]   <= 1'b0;
  end
 else if( audio_a[23] & audio_b[23] )
  begin
   mixed_audio[23:0]  <= neg_add_a + neg_add_b;      //TT  NEG_ADD_MAX - neg_add_anbn[23:1] + 1'b1;
   mixed_audio[24]   <= 1'b1;
  end
 else if( !audio_a[23] & audio_b[23] )
  if( audio_a[23:0] >= neg_add_b )
   begin
    mixed_audio[23:0]  <= audio_a[23:0] - neg_add_b;
    mixed_audio[24]   <= 1'b0;
   end
  else
   begin
    mixed_audio[23:0]  <= neg_add_b - audio_a;      //TT  NEG_ADD_MAX - neg_add_apbn[23:1] + 1'b1;
    mixed_audio[24]   <= 1'b1;
   end
 else if( audio_a[23] & !audio_b[23] )
  if( neg_add_a >= audio_b[22:0] )
   begin
    mixed_audio[23:0]  <= neg_add_a - audio_b;      //TT  NEG_ADD_MAX - neg_add_anbp[23:1] + 1'b1;
    mixed_audio[24]   <= 1'b1;
   end
  else
   begin
    mixed_audio[23:0]  <= audio_b[23:0] - neg_add_a;
    mixed_audio[24]   <= 1'b0;
   end


always @( posedge clk , negedge rst )
 if( !rst )
  mixed_audio_out <= 24'h0;
 else if( !mixed_audio[24] )
  mixed_audio_out <= { mixed_audio[24], mixed_audio[23:1] };
 else
  mixed_audio_out <= NEG_ADD_MAX - mixed_audio[23:1] + 1'b1 ;

endmodule

關閉窗口

相關文章

主站蜘蛛池模板: 亚洲a网| 亚洲天堂免费在线 | 一区二区三区在线播放 | 鲁视频 | 久草日韩 | 自拍偷拍3p| 日韩欧美一区二区三区 | 亚洲黄色av | 日韩精品一区二区三区视频播放 | 欧美日韩一区精品 | 日韩三区| 国产1区 | 久久免费精品视频 | 欧美成人久久 | 性一区| 麻豆精品久久久 | 精品国产乱码久久久 | 亚洲久久 | 国产激情免费视频 | 国产欧美在线观看 | 欧美日韩在线视频一区二区 | 亚洲精品一区二区三区 | 国产男女视频 | 国产香蕉视频在线播放 | 国产分类视频 | 久久成人精品 | 电影91久久久 | 午夜一区二区三区在线观看 | 日本成年免费网站 | 日韩日韩日韩日韩日韩日韩日韩 | 免费观看一级特黄欧美大片 | www.se91| 日本天天操| 亚洲精选一区二区 | 四虎影视免费在线 | 亚洲国产欧美91 | 精品欧美乱码久久久久久 | 精品久久久久一区二区国产 | 久久精品国产一区二区 | 九九热在线视频观看这里只有精品 | 久久久综合网 |