题解 | #并串转换#

并串转换

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 valid;
	reg [3:0] din;
	reg [1:0] counter;

	always @(posedge clk, negedge rst) begin

		if(!rst) begin
			counter <= 0;
			valid <= 0;
			din <= 0;
		end
		else if(counter == 3) begin
			counter <= 0;
			valid <= 1; 
			din <= d;
		end

		else begin
			counter <= counter + 1;
			din <= {din[2:0], din[3]};
			valid <= 0;
		end
	end

	assign dout = din[3];
	assign valid_in = valid;

//*************code***********//

endmodule

串并转换,就是一位一位输出多bit数据。 核心思想就是多bit数据移位。用counter表示多bit数据的位数,每次count都移位。valid信号意思是在此时接收输入信号,则我们在每次counter的最后一次接收信号,使valid为1。

全部评论

相关推荐

运营你豪哥:简历改改吧-非本、求职意向技术岗、无实习经历、内容空洞 如果简历不爆改的话,应该是会持续崩溃了 1.把你教育经历放最下面去 2.蓝底照片很奇怪哈,感觉还在高中时代,建议白底重新拍一下 3.校园经历没啥必要,收集和反馈同学们对产品的意见,解决学生和老师之间的沟通,企业招聘不看这些哈 好好思考一下简历的设计和你要表达的重点,再去投简历
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务