题解 | #移位运算与乘法#

移位运算与乘法

https://www.nowcoder.com/practice/1dd22852bcac42ce8f781737f84a3272

`timescale 1ns/1ns
module multi_sel(
input [7:0]d ,
input clk,
input rst,
output reg input_grant,
output reg [10:0]out
);
//*************code***********//
//*********计数器部分*********//
reg [1:0]count;
always@(posedge clk or negedge rst)begin
if(!rst)begin
    count<=0;
end
else begin
    count<=count+2'b01;
end
end
//******************************//
reg [7:0]d_reg;
always@(posedge clk or negedge rst)begin
    if(!rst)begin
        d_reg<=0;
        out<=0;
        input_grant<=0;
    end
    else begin
        case(count)
        2'b00:begin
            input_grant<=2'b01;
            out<=d;
            d_reg<=d;
        end
        2'b01:begin
            input_grant<=0;
            out<=d_reg+{d_reg,1'b0};//一倍加上两倍等于三倍,也即乘上三
        end
        2'b10:begin
            input_grant<=0;
            out<=d_reg+{d_reg,1'b0}+{d_reg,2'b00};
        end
        2'b11:begin
            input_grant<=0;
            out<={d_reg,3'b000};
        end
        default:begin
            input_grant<=0;
            out<=d_reg;
        end
        endcase
    end
end
//*************code***********//
endmodule

d_reg的设置还是必要的,因为从图中可以看出有一个128的d是没有被采集到的,说明这个采集d是需要再count的4个阶段都执行完的时候还能被采集到,才能算是真的有效数据,所以需要设置d_reg来储存d,而不是实时反映d,不然会报错,与题意不符。

全部评论
另外,使用增0法表示原数的2、4、8倍也要记住
点赞 回复 分享
发布于 02-15 00:05 安徽

相关推荐

11-06 10:58
已编辑
门头沟学院 嵌入式工程师
双非25想找富婆不想打工:哦,这该死的伦敦腔,我敢打赌,你简直是个天才,如果我有offer的话,我一定用offer狠狠的打在你的脸上
点赞 评论 收藏
分享
11-09 17:30
门头沟学院 Java
TYUT太摆金星:我也是,好几个华为的社招找我了
点赞 评论 收藏
分享
评论
点赞
收藏
分享
正在热议
# 25届秋招总结 #
439711次浏览 4483人参与
# 春招别灰心,我们一人来一句鼓励 #
41326次浏览 523人参与
# 阿里云管培生offer #
119584次浏览 2219人参与
# 地方国企笔面经互助 #
7908次浏览 18人参与
# 虾皮求职进展汇总 #
113287次浏览 880人参与
# 实习,投递多份简历没人回复怎么办 #
2453574次浏览 34845人参与
# 北方华创开奖 #
107217次浏览 598人参与
# 实习必须要去大厂吗? #
55548次浏览 959人参与
# 同bg的你秋招战况如何? #
75024次浏览 547人参与
# 提前批简历挂麻了怎么办 #
149746次浏览 1975人参与
# 投递实习岗位前的准备 #
1195558次浏览 18545人参与
# 你投递的公司有几家约面了? #
33165次浏览 188人参与
# 双非本科求职如何逆袭 #
661735次浏览 7392人参与
# 机械人春招想让哪家公司来捞你? #
157584次浏览 2267人参与
# 如果公司给你放一天假,你会怎么度过? #
4708次浏览 53人参与
# 如果你有一天可以担任公司的CEO,你会做哪三件事? #
11184次浏览 253人参与
# 发工资后,你做的第一件事是什么 #
12333次浏览 61人参与
# 工作中,努力重要还是选择重要? #
35493次浏览 384人参与
# 参加完秋招的机械人,还参加春招吗? #
20068次浏览 240人参与
# 实习想申请秋招offer,能不能argue薪资 #
39197次浏览 314人参与
# 我的上岸简历长这样 #
451849次浏览 8086人参与
# 非技术岗是怎么找实习的 #
155829次浏览 2120人参与
牛客网
牛客企业服务