题解 | #并串转换#

并串转换

https://www.nowcoder.com/practice/296e1060c1734cf0a450ea58dd09d36c

`timescale 1ns/1ns
module huawei5(
	input wire clk  ,
	input wire rst  ,
	input wire [3:0]d ,
	output wire valid_in ,
	output wire dout
	);

//*************code***********//
reg [3:0]buff;
reg [7:0]cnt;
always@(posedge clk or negedge rst)begin
	if(!rst)
	buff<=0;
	else if((cnt==3)|(cnt==7))   //实在不懂为什么复位后4个周期再输出,垃圾牛客
	buff<=d;
	else buff<=buff;
end
always@(posedge clk or negedge rst)begin
	if(!rst)
	 cnt<=0;
	 else if(cnt==7)
	 cnt<=4;
	 else cnt<=cnt+1;
end
reg dout_r;
reg valid_in_r;
always@(cnt)
begin if(!rst)
	begin dout_r=0;
	valid_in_r=0; end 
case(cnt)
4:begin dout_r=buff[3]; valid_in_r=1;end
5:begin dout_r=buff[2]; valid_in_r=0;end
6:begin dout_r=buff[1]; valid_in_r=0;end
7:begin dout_r=buff[0]; valid_in_r=0;end
endcase
end
assign dout=dout_r;	
assign valid_in=valid_in_r;
//*************code***********//

endmodule

全部评论

相关推荐

01-24 12:50
门头沟学院 C++
投票
菜狗二号:还有啥想的 指定国有行啊,去了就开始幸福美满的生活了,选华子不是折腾自己么,最终财富积累度是差不多的,但是幸福指数是相差甚远的
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

更多
牛客网
牛客企业服务