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

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

进一步明确函数的写法:
function<返回值类型or范围>(函数名or端口说明语句);//函数名就是函数的返回值
            <端口说明>                                                       //至少有一个输入
            <变量类型说明>                                               //这里返回reg类型变量

              begin                                                                  //一个function中只能有一个begin end 
           <功能描述>
            函数名=***;//函数名就是输出变量
            end

endfunction
`timescale 1ns/1ns
module function_mod(
    input clk,
    input rst_n,
	input [3:0]a,
	input [3:0]b,
	
	output  [3:0]c,
	output  [3:0]d
);
   
    
    //函数名 reverse ,返回值4位的reg类型,function中只能有一个begin end
    function [3:0]reverse;
        input [3:0]data_in;
        reg [3:0]reverse;
        integer i;
        begin        
            for(i=0;i<4;i=i+1)
                reverse[i]=data_in[3-i];
        end
    endfunction
        
    assign c=reverse(a);
    assign d=reverse(b);  
    
endmodule



全部评论

相关推荐

07-18 18:09
门头沟学院 Java
点赞 评论 收藏
分享
能干的三文鱼刷了10...:公司可能有弄嵌入式需要会画pcb的需求,而且pcb能快速直观看出一个人某方面的实力。看看是否有面试资格。问你问题也能ai出来,pcb这东西能作假概率不高
点赞 评论 收藏
分享
Gaynes:查看图片
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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