题解 | #使用函数实现数据大小端转换#

使用函数实现数据大小端转换

https://www.nowcoder.com/practice/74c0c19ad0c444959c436a049647a93c

`timescale 1ns/1ns
// 大端:数据的高位写左侧,低位写右侧。小端:高位写右侧,低位写左侧。
//实现N比特数的大小端转换,只需要把数据的N位赋值给0位,N-1位赋值给1位,依此类推。
module function_mod(
	input [3:0]a,
	input [3:0]b,
	
	output [3:0]c,
	output [3:0]d
);
// 函数(function):一般用于计算,或者用来代替组合逻辑。不能包含任何延迟;函数在零时间执行。函数只有input变量,虽然没有output变量,但可以通过函数名返回一个值。可以调用其他的函数,但不可以调用任务。函数不可以包含时间控制,所以可综合,多用来模块化组合逻辑,方便复用、调用。==c void struct……
	function [3:0] b_e;
	input [3:0]data_in;
	begin
		b_e[0]=data_in[3];
		b_e[1]=data_in[2];
		b_e[2]=data_in[1];
		b_e[3]=data_in[0];
	end
	endfunction
	assign c=b_e(a);
	assign d=b_e(b);
endmodule

全部评论

相关推荐

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