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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
123
返回列表 发新帖
楼主: zhangqqi

请教前辈帮忙关于流水线乘法器的设计

[复制链接]
发表于 2010-11-14 10:10:17 | 显示全部楼层
看看,谢谢分享!!
发表于 2011-6-9 17:54:57 | 显示全部楼层
下来看看先!
发表于 2011-6-10 11:33:41 | 显示全部楼层
例2-26 用Verilog HDL实现一个4位的流水线乘法器

module mul_addtree(mul_a, mul_b, mul_out, clk, rst_n);
         parameter MUL_WIDTH = 4;
         parameter MUL_RESULT = 8;

         input [MUL_WIDTH-1 : 0] mul_a;
         input [MUL_WIDTH-1 : 0] mul_b;
         input clk;
         input rst_n;
         output [MUL_RESULT-1 : 0] mul_out;
         reg [MUL_RESULT-1 : 0] mul_out;
         reg [MUL_RESULT-1 : 0] stored0;
         reg [MUL_RESULT-1 : 0] stored1;
         reg [MUL_RESULT-1 : 0] stored2;
         reg [MUL_RESULT-1 : 0] stored3;
         reg [MUL_RESULT-1 : 0] add01;
         reg [MUL_RESULT-1 : 0] add23;

         always @ (posedge clk or negedge rst_n)
         begin
               if(!rst_n)
                   begin //初始化寄存器变量
                      mul_out <= 8'b0000_0000;
                      stored0 <= 8'b0000_0000;
                      stored1 <= 8'b0000_0000;
                      stored2 <= 8'b0000_0000;
                      stored3 <= 8'b0000_0000;
                      add01 <= 8'b0000_0000;
                      add23 <= 8'b0000_0000;
                   end
               else
                   begin //实现移位相加
                       stored3 <= mul_b[3]?{1'b0,mul_a,3'b0}: 8'b0;
                       stored2 <= mul_b[2]?{2'b0,mul_a,2'b0}: 8'b0;
                       stored1 <= mul_b[1]?{3'b0,mul_a,1'b0}: 8'b0;
                       stored0 <= mul_b[0]?{4'b0,mul_a}: 8'b0;
                       add01 <= stored1 + stored0;
                       add23 <= stored3 + stored2;
                       mul_out <= add01 + add23;
                  end
              end

endmodule
发表于 2011-6-10 19:55:37 | 显示全部楼层
呵呵,这个最简单了,按照电路写就可以了,觉得用verilog 做乘法器没什么意义
发表于 2011-6-11 13:37:03 | 显示全部楼层
顶一个~~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

X

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

GMT+8, 2025-7-3 20:31 , Processed in 0.018030 second(s), 8 queries , Gzip On, MemCached On.

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