深圳市南山区住房和建设局网站,开发一个进销存app需要多少钱,wordpress显示全文,wordpress添加小说移位运算与乘法
题目描述 已知d为一个8位数#xff0c;请在每个时钟周期分别输出该数乘1/3/7/8,并输出一个信号通知此时刻输入的d有效#xff08;d给出的信号的上升沿表示写入有效#xff09; 信号示意图 波形示意图
timescale 1ns/1ns
module multi_sel(
input [7:0]d …移位运算与乘法
题目描述 已知d为一个8位数请在每个时钟周期分别输出该数乘1/3/7/8,并输出一个信号通知此时刻输入的d有效d给出的信号的上升沿表示写入有效 信号示意图 波形示意图
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;//计算0-3always(posedge clk or negedge rst)beginif(!rst)count 0;elsecount count 1;end//根据波形可以看出不能根据d的值直接给出out的值所以先对d的值进行寄存,或者使用状态机对其进行赋值reg [7:0]d1;always(posedge clk or negedge rst)beginif(!rst)beginout 11b0;input_grant 1b0;d1 8b0;endelsebegincase(count)2b00:beginout d;d1 d;input_grant 1b1;end2b01:beginout d1 {d1,1b0};input_grant 1b0;end2b10:beginout d1 {d1,1b0} {d1,2b0};input_grant 1b0;end 2b11:beginout {d1,3b0};input_grant 1b0;enddefault:beginout 11b0;input_grant 1b0;d1 8b0;endendcaseendend
//*************code***********//
endmodule知识点 移位运算符(,) 双目运算符两个操作数 移位可以实现无符号数的乘除法有符号的乘法 补零 低位补零无符号/有符号乘法 高位补零无符号数除法
拼接运算符{} a4’b1110; 则 g {a,1’b0} 5’b111100;//拼接-乘法 h {a[2:0],1’b0} 4’b1100;//拼接-乘法 i {1’b0a[3:1]} 4’b0111;//拼接-无符号数除法 j {1’b1a[3:1]} 4’b0111;//拼接-有符号数除法
注意如果表达式中有一个无符号数则所有的操作数都会被强行转换为无符号数。