集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 1841|回复: 2

新手请教用task写的代码为何在quartus中编译时出错,多谢解答

[复制链接]
lvhao 发表于 2011-9-3 15:15:14 | 显示全部楼层 |阅读模式
module sort4(ra,rb,rc,rd,a,b,c,d);
input [3:0] a,b,c,d;
output [3:0] ra,rb,rc,rd;
reg [3:0] ra,rb,rc,rd;
reg [3:0] va,vb,vc,vd;

always @(a or b or c or d);
begin
        {va,vb,vc,vd}={a,b,c,d};
        sort2(va,vc);
        sort2(vb,vd);
        sort2(va,vb);
        sort2(vc,vd);
        sort2(vb,vc);
        {ra,rb,rc,rd}={va,vb,vc,vd};
end



task sort2;
inout [3:0] x,y;
reg [3:0] temp;

//begin
        if(x>y)
                begin
                        temp=y;
                        y=x;
                        x=temp;
                end
//end
endtask
endmodule
 楼主| lvhao 发表于 2011-9-3 15:29:11 | 显示全部楼层
哦,多了分号,明白了,太大意了
xpy0601 发表于 2011-9-5 15:45:17 | 显示全部楼层
在实际的FPGA开发中,可综合的Verilog代码基本上是没有Task,Function以及For语句的,这些语法基本上是在仿真的时候才会用到。
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2025-6-24 10:46 , Processed in 0.063382 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表