题解 | #数据串转并电路#

数据串转并电路

https://www.nowcoder.com/practice/6134dc3c8d0741d08eb522542913583d

`timescale 1ns/1ns

module s_to_p(
	input 				clk 		,   
	input 				rst_n		,
	input				valid_a		,
	input	 			data_a		,
 
 	output	reg 		ready_a		,
 	output	reg			valid_b		,
	output  reg [5:0] 	data_b
);

	reg [5:0]	temp;
	reg [2:0]	cnt;

	always@(posedge clk,negedge rst_n)begin
		if(!rst_n)
			temp <= 'd0;
		else if(valid_a && ready_a)
			temp <= {data_a,temp[5:1]};
	end

	always@(posedge clk,negedge rst_n)begin
		if(!rst_n)
			ready_a <= 'd0;
		else
			ready_a <= 'd1;
	end

	always@(posedge clk,negedge rst_n)begin
		if(!rst_n)
			cnt <= 'd0;
		else if(valid_a && ready_a)begin
			if(cnt == 'd5)
				cnt <= 'd0;
			else
				cnt <= cnt + 'd1;
		end
	end

	always@(posedge clk,negedge rst_n)begin
		if(!rst_n)
			valid_b <= 'd0;
		else if(cnt == 'd5 && valid_a && ready_a)
			valid_b <= 'd1;
		else
			valid_b <= 'd0;
	end

	always@(posedge clk,negedge rst_n)begin
		if(!rst_n)
			data_b <= 'd0;
		else if( cnt == 'd5 && valid_a && ready_a)
			data_b <= {data_a,temp[5:1]};
	end



endmodule

全部评论

相关推荐

不愿透露姓名的神秘牛友
06-25 19:15
点赞 评论 收藏
分享
后来123321:别着急,我学院本大二,投了1100份,两个面试,其中一个还是我去线下招聘会投的简历,有时候这东西也得看运气
无实习如何秋招上岸
点赞 评论 收藏
分享
lllllkin:感觉可以精简到一页简历,有些排版感觉不是必须的。 时间线越早的,你自己越熟悉的放前面。描述可以更精简些,一些问题解决感觉可以不用写具体技术栈,卖个关子,等面试官问。
点赞 评论 收藏
分享
06-26 10:08
门头沟学院 C++
北京Golang实习,一个月4700,吃住都不报,公司位置在海淀。请问友友怎么看呢?如果要租房的话有什么建议吗
码农索隆:租房肯定是合租了,剩下的钱,差不多够正常吃饭了,看看能不能学到东西吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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