题解 | #使用子模块实现三输入数的大小比较#

使用子模块实现三输入数的大小比较

https://www.nowcoder.com/practice/bfc9e2f37fe84c678f6fd04dbce0ad27

`timescale 1ns/1ns
module main_mod(
	input clk,
	input rst_n,
	input [7:0]a,
	input [7:0]b,
	input [7:0]c,
	
	output [7:0]d
);
wire		[7:0]		data_min_t1 ;
wire		[7:0]		data_min_t2 ;

wire		[7:0]		data_a ;
wire		[7:0]		data_b ;
wire		[7:0]		data_c ;
		

//
data_compare U_DATA_COMPARE_U1
(
	.clk(clk),
	.rst_n(rst_n),
	.data_a(a),
	.data_b(b),
	.data_min(data_min_t1)
);
data_compare U_DATA_COMPARE_U2
(
	.clk(clk),
	.rst_n(rst_n),
	.data_a(b),
	.data_b(c),
	.data_min(data_min_t2)
);
data_compare U_DATA_COMPARE_U3
(
	.clk(clk),
	.rst_n(rst_n),
	.data_a(data_min_t1),
	.data_b(data_min_t2),
	.data_min(d)
);
endmodule
module data_compare(
	input clk,
	input rst_n,
	input [7:0]data_a,
	input [7:0]data_b,

	output reg[7:0]data_min
);
always @(posedge clk or negedge rst_n) begin
	if(!rst_n) begin
		data_min <= 8'b0 ;
	end
	else if(data_a >= data_b) begin
		data_min <= data_b ;
	end
	else begin
		data_min <= data_a ;
	end
end
endmodule

全部评论
学到了,大佬就是大佬
点赞 回复 分享
发布于 2023-05-28 20:30 广东
楼主这个思路真秀 啊
点赞 回复 分享
发布于 2023-05-28 20:36 上海

相关推荐

牛客765689665号:没有实习是硬伤,央国企看学历
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务