题解 | #多功能数据处理器#

多功能数据处理器

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

`timescale 1ns/1ns
module data_select(
	input clk,
	input rst_n,
	input signed[7:0]a,
	input signed[7:0]b,
	input unsigned[1:0]select,
	output reg signed [8:0]c
);
	always@(posedge clk or negedge rst_n)begin
	if(!rst_n)begin
		c<=0;
	end
	else begin
		case(select)
		2'd0:begin
			c <= a;
		end
		2'd1:begin
			c <= b;
		end
		2'd2:begin
			c <= {1'b0,a}+{1'b0,b};
		end
		2'd3:begin
			c <= {1'b0,a}-{1'b0,b};
		end
		endcase
	end

	end
endmodule

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务