3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-06-22 22:03:40 +00:00

Fixed handling of parameters and localparams in functions

This commit is contained in:
Clifford Wolf 2015-11-11 10:54:35 +01:00
parent d98d99aec6
commit 34f2b84fb6
4 changed files with 39 additions and 5 deletions

View file

@ -68,7 +68,7 @@ endmodule
// -------------------------------------------------------------------
module task_func_test03( input [7:0] din_a, input [7:0] din_b, output [7:0] dout_a);
module task_func_test03(input [7:0] din_a, input [7:0] din_b, output [7:0] dout_a);
assign dout_a = test(din_a,din_b);
function [7:0] test;
input [7:0] a;
@ -80,3 +80,32 @@ module task_func_test03( input [7:0] din_a, input [7:0] din_b, output [7:0] dout
end
endfunction
endmodule
// -------------------------------------------------------------------
module task_func_test04(input [7:0] in, output [7:0] out1, out2, out3);
parameter p = 23;
function [7:0] test1;
input [7:0] i;
parameter p = 42;
begin
test1 = i + p;
end
endfunction
function [7:0] test2;
input [7:0] i;
parameter p2 = p+42;
begin
test2 = i + p2;
end
endfunction
function [7:0] test3;
input [7:0] i;
begin
test3 = i + p;
end
endfunction
assign out1 = test1(in);
assign out2 = test2(in);
assign out3 = test3(in);
endmodule